From 90a49722dd3691e78496cc03fc86c4ee77b51514 Mon Sep 17 00:00:00 2001 From: ALim Aidrus Date: Mon, 4 Aug 2025 15:11:24 +0800 Subject: [PATCH] Test pre-commit hook --- .gitattributes | 45 + .gitignore | 45 + .metadata | 45 + README.md | 16 + analysis_options.yaml | 28 + android/.gitignore | 14 + android/app/build.gradle.kts | 50 + android/app/src/debug/AndroidManifest.xml | 7 + android/app/src/main/AndroidManifest.xml | 77 ++ .../MainActivity.kt | 52 + .../res/drawable-v21/launch_background.xml | 12 + .../main/res/drawable/launch_background.xml | 12 + .../src/main/res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 6908 bytes .../src/main/res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 3701 bytes .../src/main/res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 11272 bytes .../main/res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 22987 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 39033 bytes .../app/src/main/res/values-night/styles.xml | 18 + android/app/src/main/res/values/styles.xml | 18 + .../app/src/main/res/xml/device_filter.xml | 8 + android/app/src/profile/AndroidManifest.xml | 7 + android/build.gradle.kts | 21 + android/gradle.properties | 3 + .../gradle/wrapper/gradle-wrapper.properties | 5 + android/settings.gradle.kts | 25 + assets/icon2.png | Bin 0 -> 5854 bytes assets/icon3.png | Bin 0 -> 33125 bytes assets/icon4.png | Bin 0 -> 12197 bytes assets/icon_1_512x512.png | Bin 0 -> 280219 bytes assets/icon_2_512x512.png | Bin 0 -> 274696 bytes assets/icon_3_512x512.png | Bin 0 -> 275169 bytes ios/.gitignore | 34 + ios/Flutter/AppFrameworkInfo.plist | 26 + ios/Flutter/Debug.xcconfig | 1 + ios/Flutter/Release.xcconfig | 1 + ios/Runner.xcodeproj/project.pbxproj | 616 ++++++++++++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/WorkspaceSettings.xcsettings | 8 + .../xcshareddata/xcschemes/Runner.xcscheme | 101 ++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/WorkspaceSettings.xcsettings | 8 + ios/Runner/AppDelegate.swift | 13 + .../AppIcon.appiconset/Contents.json | 122 +++ .../Icon-App-1024x1024@1x.png | Bin 0 -> 630848 bytes .../AppIcon.appiconset/Icon-App-20x20@1x.png | Bin 0 -> 927 bytes .../AppIcon.appiconset/Icon-App-20x20@2x.png | Bin 0 -> 2735 bytes .../AppIcon.appiconset/Icon-App-20x20@3x.png | Bin 0 -> 5206 bytes .../AppIcon.appiconset/Icon-App-29x29@1x.png | Bin 0 -> 1633 bytes .../AppIcon.appiconset/Icon-App-29x29@2x.png | Bin 0 -> 4931 bytes .../AppIcon.appiconset/Icon-App-29x29@3x.png | Bin 0 -> 9473 bytes .../AppIcon.appiconset/Icon-App-40x40@1x.png | Bin 0 -> 2735 bytes .../AppIcon.appiconset/Icon-App-40x40@2x.png | Bin 0 -> 8319 bytes .../AppIcon.appiconset/Icon-App-40x40@3x.png | Bin 0 -> 16722 bytes .../AppIcon.appiconset/Icon-App-50x50@1x.png | Bin 0 -> 3864 bytes .../AppIcon.appiconset/Icon-App-50x50@2x.png | Bin 0 -> 12041 bytes .../AppIcon.appiconset/Icon-App-57x57@1x.png | Bin 0 -> 4761 bytes .../AppIcon.appiconset/Icon-App-57x57@2x.png | Bin 0 -> 15246 bytes .../AppIcon.appiconset/Icon-App-60x60@2x.png | Bin 0 -> 16722 bytes .../AppIcon.appiconset/Icon-App-60x60@3x.png | Bin 0 -> 34494 bytes .../AppIcon.appiconset/Icon-App-72x72@1x.png | Bin 0 -> 6908 bytes .../AppIcon.appiconset/Icon-App-72x72@2x.png | Bin 0 -> 22987 bytes .../AppIcon.appiconset/Icon-App-76x76@1x.png | Bin 0 -> 7692 bytes .../AppIcon.appiconset/Icon-App-76x76@2x.png | Bin 0 -> 25428 bytes .../Icon-App-83.5x83.5@2x.png | Bin 0 -> 29920 bytes .../LaunchImage.imageset/Contents.json | 23 + .../LaunchImage.imageset/LaunchImage.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/LaunchImage@2x.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/LaunchImage@3x.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/README.md | 5 + ios/Runner/Base.lproj/LaunchScreen.storyboard | 37 + ios/Runner/Base.lproj/Main.storyboard | 26 + ios/Runner/Info.plist | 49 + ios/Runner/Runner-Bridging-Header.h | 1 + ios/RunnerTests/RunnerTests.swift | 12 + lib/auth_provider.dart | 223 +++++ lib/bluetooth/bluetooth_manager.dart | 284 ++++++ lib/bluetooth/utils/converter.dart | 38 + lib/bluetooth/utils/crc_calculator.dart | 19 + lib/bluetooth/utils/parameter_helper.dart | 185 ++++ .../widgets/bluetooth_device_list_dialog.dart | 44 + lib/collapsible_sidebar.dart | 301 ++++++ lib/home_page.dart | 105 ++ lib/main.dart | 269 +++++ lib/models/in_situ_sampling_data.dart | 144 +++ lib/models/river_in_situ_sampling_data.dart | 164 +++ lib/models/tarball_data.dart | 83 ++ lib/screens/air/air_home_page.dart | 164 +++ .../continuous/air_continuous_dashboard.dart | 42 + lib/screens/air/continuous/entry.dart | 62 ++ lib/screens/air/continuous/overview.dart | 17 + lib/screens/air/continuous/report.dart | 39 + .../air_investigative_dashboard.dart | 42 + lib/screens/air/investigative/entry.dart | 61 ++ lib/screens/air/investigative/overview.dart | 17 + lib/screens/air/investigative/report.dart | 39 + .../air/manual/air_manual_dashboard.dart | 42 + lib/screens/air/manual/data_status_log.dart | 32 + lib/screens/air/manual/image_request.dart | 61 ++ lib/screens/air/manual/manual_sampling.dart | 61 ++ lib/screens/air/manual/report.dart | 39 + lib/screens/forgot_password.dart | 61 ++ lib/screens/login.dart | 195 ++++ lib/screens/logout.dart | 62 ++ lib/screens/marine/continuous/entry.dart | 61 ++ .../marine_continuous_dashboard.dart | 42 + lib/screens/marine/continuous/overview.dart | 17 + lib/screens/marine/continuous/report.dart | 39 + lib/screens/marine/investigative/entry.dart | 60 ++ .../marine_investigative_dashboard.dart | 42 + .../marine/investigative/overview.dart | 17 + lib/screens/marine/investigative/report.dart | 39 + .../marine/manual/data_status_log.dart | 407 ++++++++ lib/screens/marine/manual/image_request.dart | 61 ++ .../marine/manual/in_situ_sampling.dart | 149 +++ .../marine/manual/info_centre_document.dart | 58 ++ .../manual/marine_manual_dashboard.dart | 42 + lib/screens/marine/manual/pre_sampling.dart | 60 ++ lib/screens/marine/manual/report.dart | 39 + .../marine/manual/tarball_sampling.dart | 156 +++ .../marine/manual/tarball_sampling_step1.dart | 319 ++++++ .../marine/manual/tarball_sampling_step2.dart | 330 ++++++ .../tarball_sampling_step3_summary.dart | 260 +++++ .../widgets/in_situ_step_1_sampling_info.dart | 443 +++++++++ .../widgets/in_situ_step_2_site_info.dart | 248 +++++ .../widgets/in_situ_step_3_data_capture.dart | 500 ++++++++++ .../widgets/in_situ_step_4_summary.dart | 225 +++++ lib/screens/marine/marine_home_page.dart | 166 ++++ lib/screens/profile.dart | 357 +++++++ lib/screens/register.dart | 224 +++++ lib/screens/river/continuous/entry.dart | 61 ++ lib/screens/river/continuous/overview.dart | 17 + lib/screens/river/continuous/report.dart | 39 + .../river_continuous_dashboard.dart | 42 + lib/screens/river/investigative/entry.dart | 61 ++ lib/screens/river/investigative/overview.dart | 17 + lib/screens/river/investigative/report.dart | 39 + .../river_investigative_dashboard.dart | 42 + lib/screens/river/manual/data_status_log.dart | 351 +++++++ lib/screens/river/manual/image_request.dart | 61 ++ .../river/manual/in_situ_sampling.dart | 142 +++ lib/screens/river/manual/report.dart | 39 + .../river/manual/river_manual_dashboard.dart | 42 + .../river/manual/triennial_sampling.dart | 69 ++ .../river_in_situ_step_1_sampling_info.dart | 440 ++++++++ .../river_in_situ_step_2_site_info.dart | 238 +++++ .../river_in_situ_step_3_data_capture.dart | 494 +++++++++ .../widgets/river_in_situ_step_4_summary.dart | 229 +++++ lib/screens/river/river_home_page.dart | 164 +++ lib/screens/settings.dart | 344 +++++++ lib/serial/serial_manager.dart | 522 ++++++++++ lib/serial/utils/converter.dart | 34 + lib/serial/utils/crc_calculator.dart | 19 + lib/serial/utils/parameter_helper.dart | 185 ++++ .../widget/serial_port_list_dialog.dart | 27 + lib/services/air_api_service.dart | 13 + lib/services/api_service.dart | 346 +++++++ lib/services/base_api_service.dart | 134 +++ lib/services/in_situ_sampling_service.dart | 153 +++ lib/services/local_storage_service.dart | 368 +++++++ lib/services/location_service.dart | 71 ++ lib/services/marine_api_service.dart | 226 +++++ lib/services/river_api_service.dart | 135 +++ .../river_in_situ_sampling_service.dart | 160 +++ lib/services/settings_service.dart | 42 + lib/services/telegram_service.dart | 113 +++ lib/theme.dart | 46 + linux/.gitignore | 1 + linux/CMakeLists.txt | 128 +++ linux/flutter/CMakeLists.txt | 88 ++ linux/flutter/generated_plugin_registrant.cc | 15 + linux/flutter/generated_plugin_registrant.h | 15 + linux/flutter/generated_plugins.cmake | 24 + linux/runner/CMakeLists.txt | 26 + linux/runner/main.cc | 6 + linux/runner/my_application.cc | 130 +++ linux/runner/my_application.h | 18 + macos/.gitignore | 7 + macos/Flutter/Flutter-Debug.xcconfig | 1 + macos/Flutter/Flutter-Release.xcconfig | 1 + macos/Flutter/GeneratedPluginRegistrant.swift | 24 + macos/Runner.xcodeproj/project.pbxproj | 705 +++++++++++++ .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/xcschemes/Runner.xcscheme | 99 ++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + macos/Runner/AppDelegate.swift | 13 + .../AppIcon.appiconset/Contents.json | 68 ++ .../AppIcon.appiconset/app_icon_1024.png | Bin 0 -> 102994 bytes .../AppIcon.appiconset/app_icon_128.png | Bin 0 -> 5680 bytes .../AppIcon.appiconset/app_icon_16.png | Bin 0 -> 520 bytes .../AppIcon.appiconset/app_icon_256.png | Bin 0 -> 14142 bytes .../AppIcon.appiconset/app_icon_32.png | Bin 0 -> 1066 bytes .../AppIcon.appiconset/app_icon_512.png | Bin 0 -> 36406 bytes .../AppIcon.appiconset/app_icon_64.png | Bin 0 -> 2218 bytes macos/Runner/Base.lproj/MainMenu.xib | 343 +++++++ macos/Runner/Configs/AppInfo.xcconfig | 14 + macos/Runner/Configs/Debug.xcconfig | 2 + macos/Runner/Configs/Release.xcconfig | 2 + macos/Runner/Configs/Warnings.xcconfig | 13 + macos/Runner/DebugProfile.entitlements | 12 + macos/Runner/Info.plist | 32 + macos/Runner/MainFlutterWindow.swift | 15 + macos/Runner/Release.entitlements | 8 + macos/RunnerTests/RunnerTests.swift | 12 + pubspec.lock | 939 ++++++++++++++++++ pubspec.yaml | 67 ++ test/widget_test.dart | 30 + web/favicon.png | Bin 0 -> 917 bytes web/icons/Icon-192.png | Bin 0 -> 5292 bytes web/icons/Icon-512.png | Bin 0 -> 8252 bytes web/icons/Icon-maskable-192.png | Bin 0 -> 5594 bytes web/icons/Icon-maskable-512.png | Bin 0 -> 20998 bytes web/index.html | 38 + web/manifest.json | 35 + windows/.gitignore | 17 + windows/CMakeLists.txt | 108 ++ windows/flutter/CMakeLists.txt | 109 ++ .../flutter/generated_plugin_registrant.cc | 26 + windows/flutter/generated_plugin_registrant.h | 15 + windows/flutter/generated_plugins.cmake | 28 + windows/runner/CMakeLists.txt | 40 + windows/runner/Runner.rc | 121 +++ windows/runner/flutter_window.cpp | 71 ++ windows/runner/flutter_window.h | 33 + windows/runner/main.cpp | 43 + windows/runner/resource.h | 16 + windows/runner/resources/app_icon.ico | Bin 0 -> 33772 bytes windows/runner/runner.exe.manifest | 14 + windows/runner/utils.cpp | 65 ++ windows/runner/utils.h | 19 + windows/runner/win32_window.cpp | 288 ++++++ windows/runner/win32_window.h | 102 ++ 234 files changed, 18471 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 .metadata create mode 100644 README.md create mode 100644 analysis_options.yaml create mode 100644 android/.gitignore create mode 100644 android/app/build.gradle.kts create mode 100644 android/app/src/debug/AndroidManifest.xml create mode 100644 android/app/src/main/AndroidManifest.xml create mode 100644 android/app/src/main/kotlin/com/example/environment_monitoring_app/MainActivity.kt create mode 100644 android/app/src/main/res/drawable-v21/launch_background.xml create mode 100644 android/app/src/main/res/drawable/launch_background.xml create mode 100644 android/app/src/main/res/mipmap-hdpi/ic_launcher.png create mode 100644 android/app/src/main/res/mipmap-mdpi/ic_launcher.png create mode 100644 android/app/src/main/res/mipmap-xhdpi/ic_launcher.png create mode 100644 android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 android/app/src/main/res/values-night/styles.xml create mode 100644 android/app/src/main/res/values/styles.xml create mode 100644 android/app/src/main/res/xml/device_filter.xml create mode 100644 android/app/src/profile/AndroidManifest.xml create mode 100644 android/build.gradle.kts create mode 100644 android/gradle.properties create mode 100644 android/gradle/wrapper/gradle-wrapper.properties create mode 100644 android/settings.gradle.kts create mode 100644 assets/icon2.png create mode 100644 assets/icon3.png create mode 100644 assets/icon4.png create mode 100644 assets/icon_1_512x512.png create mode 100644 assets/icon_2_512x512.png create mode 100644 assets/icon_3_512x512.png create mode 100644 ios/.gitignore create mode 100644 ios/Flutter/AppFrameworkInfo.plist create mode 100644 ios/Flutter/Debug.xcconfig create mode 100644 ios/Flutter/Release.xcconfig create mode 100644 ios/Runner.xcodeproj/project.pbxproj create mode 100644 ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata create mode 100644 ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings create mode 100644 ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme create mode 100644 ios/Runner.xcworkspace/contents.xcworkspacedata create mode 100644 ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings create mode 100644 ios/Runner/AppDelegate.swift create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-50x50@1x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-50x50@2x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@1x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@2x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@1x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@2x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png create mode 100644 ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json create mode 100644 ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png create mode 100644 ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png create mode 100644 ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png create mode 100644 ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md create mode 100644 ios/Runner/Base.lproj/LaunchScreen.storyboard create mode 100644 ios/Runner/Base.lproj/Main.storyboard create mode 100644 ios/Runner/Info.plist create mode 100644 ios/Runner/Runner-Bridging-Header.h create mode 100644 ios/RunnerTests/RunnerTests.swift create mode 100644 lib/auth_provider.dart create mode 100644 lib/bluetooth/bluetooth_manager.dart create mode 100644 lib/bluetooth/utils/converter.dart create mode 100644 lib/bluetooth/utils/crc_calculator.dart create mode 100644 lib/bluetooth/utils/parameter_helper.dart create mode 100644 lib/bluetooth/widgets/bluetooth_device_list_dialog.dart create mode 100644 lib/collapsible_sidebar.dart create mode 100644 lib/home_page.dart create mode 100644 lib/main.dart create mode 100644 lib/models/in_situ_sampling_data.dart create mode 100644 lib/models/river_in_situ_sampling_data.dart create mode 100644 lib/models/tarball_data.dart create mode 100644 lib/screens/air/air_home_page.dart create mode 100644 lib/screens/air/continuous/air_continuous_dashboard.dart create mode 100644 lib/screens/air/continuous/entry.dart create mode 100644 lib/screens/air/continuous/overview.dart create mode 100644 lib/screens/air/continuous/report.dart create mode 100644 lib/screens/air/investigative/air_investigative_dashboard.dart create mode 100644 lib/screens/air/investigative/entry.dart create mode 100644 lib/screens/air/investigative/overview.dart create mode 100644 lib/screens/air/investigative/report.dart create mode 100644 lib/screens/air/manual/air_manual_dashboard.dart create mode 100644 lib/screens/air/manual/data_status_log.dart create mode 100644 lib/screens/air/manual/image_request.dart create mode 100644 lib/screens/air/manual/manual_sampling.dart create mode 100644 lib/screens/air/manual/report.dart create mode 100644 lib/screens/forgot_password.dart create mode 100644 lib/screens/login.dart create mode 100644 lib/screens/logout.dart create mode 100644 lib/screens/marine/continuous/entry.dart create mode 100644 lib/screens/marine/continuous/marine_continuous_dashboard.dart create mode 100644 lib/screens/marine/continuous/overview.dart create mode 100644 lib/screens/marine/continuous/report.dart create mode 100644 lib/screens/marine/investigative/entry.dart create mode 100644 lib/screens/marine/investigative/marine_investigative_dashboard.dart create mode 100644 lib/screens/marine/investigative/overview.dart create mode 100644 lib/screens/marine/investigative/report.dart create mode 100644 lib/screens/marine/manual/data_status_log.dart create mode 100644 lib/screens/marine/manual/image_request.dart create mode 100644 lib/screens/marine/manual/in_situ_sampling.dart create mode 100644 lib/screens/marine/manual/info_centre_document.dart create mode 100644 lib/screens/marine/manual/marine_manual_dashboard.dart create mode 100644 lib/screens/marine/manual/pre_sampling.dart create mode 100644 lib/screens/marine/manual/report.dart create mode 100644 lib/screens/marine/manual/tarball_sampling.dart create mode 100644 lib/screens/marine/manual/tarball_sampling_step1.dart create mode 100644 lib/screens/marine/manual/tarball_sampling_step2.dart create mode 100644 lib/screens/marine/manual/tarball_sampling_step3_summary.dart create mode 100644 lib/screens/marine/manual/widgets/in_situ_step_1_sampling_info.dart create mode 100644 lib/screens/marine/manual/widgets/in_situ_step_2_site_info.dart create mode 100644 lib/screens/marine/manual/widgets/in_situ_step_3_data_capture.dart create mode 100644 lib/screens/marine/manual/widgets/in_situ_step_4_summary.dart create mode 100644 lib/screens/marine/marine_home_page.dart create mode 100644 lib/screens/profile.dart create mode 100644 lib/screens/register.dart create mode 100644 lib/screens/river/continuous/entry.dart create mode 100644 lib/screens/river/continuous/overview.dart create mode 100644 lib/screens/river/continuous/report.dart create mode 100644 lib/screens/river/continuous/river_continuous_dashboard.dart create mode 100644 lib/screens/river/investigative/entry.dart create mode 100644 lib/screens/river/investigative/overview.dart create mode 100644 lib/screens/river/investigative/report.dart create mode 100644 lib/screens/river/investigative/river_investigative_dashboard.dart create mode 100644 lib/screens/river/manual/data_status_log.dart create mode 100644 lib/screens/river/manual/image_request.dart create mode 100644 lib/screens/river/manual/in_situ_sampling.dart create mode 100644 lib/screens/river/manual/report.dart create mode 100644 lib/screens/river/manual/river_manual_dashboard.dart create mode 100644 lib/screens/river/manual/triennial_sampling.dart create mode 100644 lib/screens/river/manual/widgets/river_in_situ_step_1_sampling_info.dart create mode 100644 lib/screens/river/manual/widgets/river_in_situ_step_2_site_info.dart create mode 100644 lib/screens/river/manual/widgets/river_in_situ_step_3_data_capture.dart create mode 100644 lib/screens/river/manual/widgets/river_in_situ_step_4_summary.dart create mode 100644 lib/screens/river/river_home_page.dart create mode 100644 lib/screens/settings.dart create mode 100644 lib/serial/serial_manager.dart create mode 100644 lib/serial/utils/converter.dart create mode 100644 lib/serial/utils/crc_calculator.dart create mode 100644 lib/serial/utils/parameter_helper.dart create mode 100644 lib/serial/widget/serial_port_list_dialog.dart create mode 100644 lib/services/air_api_service.dart create mode 100644 lib/services/api_service.dart create mode 100644 lib/services/base_api_service.dart create mode 100644 lib/services/in_situ_sampling_service.dart create mode 100644 lib/services/local_storage_service.dart create mode 100644 lib/services/location_service.dart create mode 100644 lib/services/marine_api_service.dart create mode 100644 lib/services/river_api_service.dart create mode 100644 lib/services/river_in_situ_sampling_service.dart create mode 100644 lib/services/settings_service.dart create mode 100644 lib/services/telegram_service.dart create mode 100644 lib/theme.dart create mode 100644 linux/.gitignore create mode 100644 linux/CMakeLists.txt create mode 100644 linux/flutter/CMakeLists.txt create mode 100644 linux/flutter/generated_plugin_registrant.cc create mode 100644 linux/flutter/generated_plugin_registrant.h create mode 100644 linux/flutter/generated_plugins.cmake create mode 100644 linux/runner/CMakeLists.txt create mode 100644 linux/runner/main.cc create mode 100644 linux/runner/my_application.cc create mode 100644 linux/runner/my_application.h create mode 100644 macos/.gitignore create mode 100644 macos/Flutter/Flutter-Debug.xcconfig create mode 100644 macos/Flutter/Flutter-Release.xcconfig create mode 100644 macos/Flutter/GeneratedPluginRegistrant.swift create mode 100644 macos/Runner.xcodeproj/project.pbxproj create mode 100644 macos/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme create mode 100644 macos/Runner.xcworkspace/contents.xcworkspacedata create mode 100644 macos/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 macos/Runner/AppDelegate.swift create mode 100644 macos/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json create mode 100644 macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png create mode 100644 macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png create mode 100644 macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_16.png create mode 100644 macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_256.png create mode 100644 macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_32.png create mode 100644 macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_512.png create mode 100644 macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_64.png create mode 100644 macos/Runner/Base.lproj/MainMenu.xib create mode 100644 macos/Runner/Configs/AppInfo.xcconfig create mode 100644 macos/Runner/Configs/Debug.xcconfig create mode 100644 macos/Runner/Configs/Release.xcconfig create mode 100644 macos/Runner/Configs/Warnings.xcconfig create mode 100644 macos/Runner/DebugProfile.entitlements create mode 100644 macos/Runner/Info.plist create mode 100644 macos/Runner/MainFlutterWindow.swift create mode 100644 macos/Runner/Release.entitlements create mode 100644 macos/RunnerTests/RunnerTests.swift create mode 100644 pubspec.lock create mode 100644 pubspec.yaml create mode 100644 test/widget_test.dart create mode 100644 web/favicon.png create mode 100644 web/icons/Icon-192.png create mode 100644 web/icons/Icon-512.png create mode 100644 web/icons/Icon-maskable-192.png create mode 100644 web/icons/Icon-maskable-512.png create mode 100644 web/index.html create mode 100644 web/manifest.json create mode 100644 windows/.gitignore create mode 100644 windows/CMakeLists.txt create mode 100644 windows/flutter/CMakeLists.txt create mode 100644 windows/flutter/generated_plugin_registrant.cc create mode 100644 windows/flutter/generated_plugin_registrant.h create mode 100644 windows/flutter/generated_plugins.cmake create mode 100644 windows/runner/CMakeLists.txt create mode 100644 windows/runner/Runner.rc create mode 100644 windows/runner/flutter_window.cpp create mode 100644 windows/runner/flutter_window.h create mode 100644 windows/runner/main.cpp create mode 100644 windows/runner/resource.h create mode 100644 windows/runner/resources/app_icon.ico create mode 100644 windows/runner/runner.exe.manifest create mode 100644 windows/runner/utils.cpp create mode 100644 windows/runner/utils.h create mode 100644 windows/runner/win32_window.cpp create mode 100644 windows/runner/win32_window.h diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..c028ca5 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,45 @@ +# Normalize all text files to LF line endings +* text=auto eol=lf + +# Treat Dart, YAML, XML, Swift, and other source files as text +*.dart text +*.yaml text +*.yml text +*.xml text +*.swift text +*.java text +*.kt text +*.gradle text +*.properties text +*.json text +*.html text +*.css text +*.js text +*.ts text +*.md text +*.txt text + +# Flutter platform-specific files +*.pbxproj text +*.xcconfig text +*.cmake text +*.cc text +*.h text + +# Binary files (no line ending normalization) +*.png binary +*.jpg binary +*.jpeg binary +*.gif binary +*.ico binary +*.pdf binary +*.ttf binary +*.otf binary +*.mp3 binary +*.mp4 binary +*.zip binary + +# Lock files and build artifacts +pubspec.lock text +*.lock text +*.log text \ No newline at end of file diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..79c113f --- /dev/null +++ b/.gitignore @@ -0,0 +1,45 @@ +# Miscellaneous +*.class +*.log +*.pyc +*.swp +.DS_Store +.atom/ +.build/ +.buildlog/ +.history +.svn/ +.swiftpm/ +migrate_working_dir/ + +# IntelliJ related +*.iml +*.ipr +*.iws +.idea/ + +# The .vscode folder contains launch configuration and tasks you configure in +# VS Code which you may wish to be included in version control, so this line +# is commented out by default. +#.vscode/ + +# Flutter/Dart/Pub related +**/doc/api/ +**/ios/Flutter/.last_build_id +.dart_tool/ +.flutter-plugins +.flutter-plugins-dependencies +.pub-cache/ +.pub/ +/build/ + +# Symbolication related +app.*.symbols + +# Obfuscation related +app.*.map.json + +# Android Studio will place build artifacts here +/android/app/debug +/android/app/profile +/android/app/release diff --git a/.metadata b/.metadata new file mode 100644 index 0000000..36e0aa1 --- /dev/null +++ b/.metadata @@ -0,0 +1,45 @@ +# This file tracks properties of this Flutter project. +# Used by Flutter tool to assess capabilities and perform upgrades etc. +# +# This file should be version controlled and should not be manually edited. + +version: + revision: "b25305a8832cfc6ba632a7f87ad455e319dccce8" + channel: "stable" + +project_type: app + +# Tracks metadata for the flutter migrate command +migration: + platforms: + - platform: root + create_revision: b25305a8832cfc6ba632a7f87ad455e319dccce8 + base_revision: b25305a8832cfc6ba632a7f87ad455e319dccce8 + - platform: android + create_revision: b25305a8832cfc6ba632a7f87ad455e319dccce8 + base_revision: b25305a8832cfc6ba632a7f87ad455e319dccce8 + - platform: ios + create_revision: b25305a8832cfc6ba632a7f87ad455e319dccce8 + base_revision: b25305a8832cfc6ba632a7f87ad455e319dccce8 + - platform: linux + create_revision: b25305a8832cfc6ba632a7f87ad455e319dccce8 + base_revision: b25305a8832cfc6ba632a7f87ad455e319dccce8 + - platform: macos + create_revision: b25305a8832cfc6ba632a7f87ad455e319dccce8 + base_revision: b25305a8832cfc6ba632a7f87ad455e319dccce8 + - platform: web + create_revision: b25305a8832cfc6ba632a7f87ad455e319dccce8 + base_revision: b25305a8832cfc6ba632a7f87ad455e319dccce8 + - platform: windows + create_revision: b25305a8832cfc6ba632a7f87ad455e319dccce8 + base_revision: b25305a8832cfc6ba632a7f87ad455e319dccce8 + + # User provided section + + # List of Local paths (relative to this file) that should be + # ignored by the migrate tool. + # + # Files that are not part of the templates will be ignored by default. + unmanaged_files: + - 'lib/main.dart' + - 'ios/Runner.xcodeproj/project.pbxproj' diff --git a/README.md b/README.md new file mode 100644 index 0000000..ac9b912 --- /dev/null +++ b/README.md @@ -0,0 +1,16 @@ +# environment_monitoring_app + +A new Flutter project. + +## Getting Started + +This project is a starting point for a Flutter application. + +A few resources to get you started if this is your first Flutter project: + +- [Lab: Write your first Flutter app](https://docs.flutter.dev/get-started/codelab) +- [Cookbook: Useful Flutter samples](https://docs.flutter.dev/cookbook) + +For help getting started with Flutter development, view the +[online documentation](https://docs.flutter.dev/), which offers tutorials, +samples, guidance on mobile development, and a full API reference. diff --git a/analysis_options.yaml b/analysis_options.yaml new file mode 100644 index 0000000..0d29021 --- /dev/null +++ b/analysis_options.yaml @@ -0,0 +1,28 @@ +# This file configures the analyzer, which statically analyzes Dart code to +# check for errors, warnings, and lints. +# +# The issues identified by the analyzer are surfaced in the UI of Dart-enabled +# IDEs (https://dart.dev/tools#ides-and-editors). The analyzer can also be +# invoked from the command line by running `flutter analyze`. + +# The following line activates a set of recommended lints for Flutter apps, +# packages, and plugins designed to encourage good coding practices. +include: package:flutter_lints/flutter.yaml + +linter: + # The lint rules applied to this project can be customized in the + # section below to disable rules from the `package:flutter_lints/flutter.yaml` + # included above or to enable additional rules. A list of all available lints + # and their documentation is published at https://dart.dev/lints. + # + # Instead of disabling a lint rule for the entire project in the + # section below, it can also be suppressed for a single line of code + # or a specific dart file by using the `// ignore: name_of_lint` and + # `// ignore_for_file: name_of_lint` syntax on the line or in the file + # producing the lint. + rules: + # avoid_print: false # Uncomment to disable the `avoid_print` rule + # prefer_single_quotes: true # Uncomment to enable the `prefer_single_quotes` rule + +# Additional information about this file can be found at +# https://dart.dev/guides/language/analysis-options diff --git a/android/.gitignore b/android/.gitignore new file mode 100644 index 0000000..be3943c --- /dev/null +++ b/android/.gitignore @@ -0,0 +1,14 @@ +gradle-wrapper.jar +/.gradle +/captures/ +/gradlew +/gradlew.bat +/local.properties +GeneratedPluginRegistrant.java +.cxx/ + +# Remember to never publicly share your keystore. +# See https://flutter.dev/to/reference-keystore +key.properties +**/*.keystore +**/*.jks diff --git a/android/app/build.gradle.kts b/android/app/build.gradle.kts new file mode 100644 index 0000000..b9b720c --- /dev/null +++ b/android/app/build.gradle.kts @@ -0,0 +1,50 @@ +plugins { + id("com.android.application") + id("kotlin-android") + // Flutter plugin must be applied last + id("dev.flutter.flutter-gradle-plugin") +} + +android { + namespace = "com.example.environment_monitoring_app" + compileSdk = flutter.compileSdkVersion + ndkVersion = "27.0.12077973" + + compileOptions { + sourceCompatibility = JavaVersion.VERSION_11 + targetCompatibility = JavaVersion.VERSION_11 + } + + kotlinOptions { + jvmTarget = JavaVersion.VERSION_11.toString() + } + + defaultConfig { + applicationId = "com.example.environment_monitoring_app" + minSdk = 21 + targetSdk = 35 + versionCode = 1 + versionName = flutter.versionName + } + + signingConfigs { + create("release") { + storeFile = file("upload-keystore.jks") + storePassword = "0nly1kn0wthep@5sw0rd" + keyAlias = "upload" + keyPassword = "0nly1kn0wthep@5sw0rd" + } + } + + buildTypes { + getByName("release") { + signingConfig = signingConfigs.getByName("release") + isMinifyEnabled = false + isShrinkResources = false + } + } +} + +flutter { + source = "../.." +} \ No newline at end of file diff --git a/android/app/src/debug/AndroidManifest.xml b/android/app/src/debug/AndroidManifest.xml new file mode 100644 index 0000000..399f698 --- /dev/null +++ b/android/app/src/debug/AndroidManifest.xml @@ -0,0 +1,7 @@ + + + + diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml new file mode 100644 index 0000000..184f8c9 --- /dev/null +++ b/android/app/src/main/AndroidManifest.xml @@ -0,0 +1,77 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/android/app/src/main/kotlin/com/example/environment_monitoring_app/MainActivity.kt b/android/app/src/main/kotlin/com/example/environment_monitoring_app/MainActivity.kt new file mode 100644 index 0000000..1eb2b73 --- /dev/null +++ b/android/app/src/main/kotlin/com/example/environment_monitoring_app/MainActivity.kt @@ -0,0 +1,52 @@ +package com.example.environment_monitoring_app + +import android.app.PendingIntent +import android.content.Context +import android.content.Intent +import android.hardware.usb.UsbDevice +import android.hardware.usb.UsbManager +import io.flutter.embedding.android.FlutterActivity +import io.flutter.embedding.engine.FlutterEngine +import io.flutter.plugin.common.MethodChannel + +class MainActivity: FlutterActivity() { + // This channel name must match the one used in your Dart code (e.g., in the InSituSamplingService). + private val CHANNEL = "com.example.environment_monitoring_app/usb" + private val ACTION_USB_PERMISSION = "com.example.environment_monitoring_app.USB_PERMISSION" + + override fun configureFlutterEngine(flutterEngine: FlutterEngine) { + super.configureFlutterEngine(flutterEngine) + + MethodChannel(flutterEngine.dartExecutor.binaryMessenger, CHANNEL).setMethodCallHandler { call, result -> + // This block listens for method calls from your Flutter app. + if (call.method == "requestUsbPermission") { + val manager = getSystemService(Context.USB_SERVICE) as UsbManager + var deviceToRequest: UsbDevice? = null + + // Get the Vendor ID and Product ID sent from the Dart code. + val vid = call.argument("vid") + val pid = call.argument("pid") + + // Find the matching USB device connected to the phone. + manager.deviceList.values.forEach { device -> + if (device.vendorId == vid && device.productId == pid) { + deviceToRequest = device + } + } + + deviceToRequest?.let { + // If the device is found, create an intent and request permission from the user. + // The 'usb_serial' package in Flutter will listen for the result of this permission request. + val usbPermissionIntent = PendingIntent.getBroadcast(this, 0, Intent(ACTION_USB_PERMISSION), PendingIntent.FLAG_IMMUTABLE) + manager.requestPermission(it, usbPermissionIntent) + result.success(true) // Inform Dart that the request was successfully sent. + } ?: run { + // If the device is not found, send an error back to Dart. + result.error("DEVICE_NOT_FOUND", "Specified USB device not found.", null) + } + } else { + result.notImplemented() + } + } + } +} diff --git a/android/app/src/main/res/drawable-v21/launch_background.xml b/android/app/src/main/res/drawable-v21/launch_background.xml new file mode 100644 index 0000000..f74085f --- /dev/null +++ b/android/app/src/main/res/drawable-v21/launch_background.xml @@ -0,0 +1,12 @@ + + + + + + + + diff --git a/android/app/src/main/res/drawable/launch_background.xml b/android/app/src/main/res/drawable/launch_background.xml new file mode 100644 index 0000000..304732f --- /dev/null +++ b/android/app/src/main/res/drawable/launch_background.xml @@ -0,0 +1,12 @@ + + + + + + + + diff --git a/android/app/src/main/res/mipmap-hdpi/ic_launcher.png b/android/app/src/main/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..831300cc1c9585a175441d3b06c5d86cf2fb2113 GIT binary patch literal 6908 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 T_*{#T00000NkvXXu0mjf7dAHb literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png b/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..ea0122508f38694da960d04646f9e9d899dd6bb3 GIT binary patch literal 11272 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 S{ZAkO000060q&doI4Geg>UA=9HuN;_sYsFk0{r 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 + + + + + + diff --git a/android/app/src/main/res/values/styles.xml b/android/app/src/main/res/values/styles.xml new file mode 100644 index 0000000..cb1ef88 --- /dev/null +++ b/android/app/src/main/res/values/styles.xml @@ -0,0 +1,18 @@ + + + + + + + diff --git a/android/app/src/main/res/xml/device_filter.xml b/android/app/src/main/res/xml/device_filter.xml new file mode 100644 index 0000000..5de1814 --- /dev/null +++ b/android/app/src/main/res/xml/device_filter.xml @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/android/app/src/profile/AndroidManifest.xml b/android/app/src/profile/AndroidManifest.xml new file mode 100644 index 0000000..399f698 --- /dev/null +++ b/android/app/src/profile/AndroidManifest.xml @@ -0,0 +1,7 @@ + + + + diff --git a/android/build.gradle.kts b/android/build.gradle.kts new file mode 100644 index 0000000..89176ef --- /dev/null +++ b/android/build.gradle.kts @@ -0,0 +1,21 @@ +allprojects { + repositories { + google() + mavenCentral() + } +} + +val newBuildDir: Directory = rootProject.layout.buildDirectory.dir("../../build").get() +rootProject.layout.buildDirectory.value(newBuildDir) + +subprojects { + val newSubprojectBuildDir: Directory = newBuildDir.dir(project.name) + project.layout.buildDirectory.value(newSubprojectBuildDir) +} +subprojects { + project.evaluationDependsOn(":app") +} + +tasks.register("clean") { + delete(rootProject.layout.buildDirectory) +} diff --git a/android/gradle.properties b/android/gradle.properties new file mode 100644 index 0000000..f018a61 --- /dev/null +++ b/android/gradle.properties @@ -0,0 +1,3 @@ +org.gradle.jvmargs=-Xmx8G -XX:MaxMetaspaceSize=4G -XX:ReservedCodeCacheSize=512m -XX:+HeapDumpOnOutOfMemoryError +android.useAndroidX=true +android.enableJetifier=true diff --git a/android/gradle/wrapper/gradle-wrapper.properties b/android/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..ac3b479 --- /dev/null +++ b/android/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,5 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-8.12-all.zip diff --git a/android/settings.gradle.kts b/android/settings.gradle.kts new file mode 100644 index 0000000..ab39a10 --- /dev/null +++ b/android/settings.gradle.kts @@ -0,0 +1,25 @@ +pluginManagement { + val flutterSdkPath = run { + val properties = java.util.Properties() + file("local.properties").inputStream().use { properties.load(it) } + val flutterSdkPath = properties.getProperty("flutter.sdk") + require(flutterSdkPath != null) { "flutter.sdk not set in local.properties" } + flutterSdkPath + } + + includeBuild("$flutterSdkPath/packages/flutter_tools/gradle") + + repositories { + google() + mavenCentral() + gradlePluginPortal() + } +} + +plugins { + id("dev.flutter.flutter-plugin-loader") version "1.0.0" + id("com.android.application") version "8.7.3" apply false + id("org.jetbrains.kotlin.android") version "2.1.0" apply false +} + +include(":app") diff --git a/assets/icon2.png b/assets/icon2.png new file mode 100644 index 0000000000000000000000000000000000000000..381466425e98f31a02b16f635ee84d5943e1f93b GIT binary patch literal 5854 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≤fVw3{*O)9DpoEEd%rQZky7xChB?pL{YOZoBPn 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 literal 0 HcmV?d00001 diff --git a/assets/icon4.png b/assets/icon4.png new file mode 100644 index 0000000000000000000000000000000000000000..1a984c8786ab8d874ed72acf08b47375786c1d66 GIT binary patch literal 12197 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 Q>*$f>rB$S=B}_m3FBIOZjQ{`u literal 0 HcmV?d00001 diff --git a/assets/icon_1_512x512.png b/assets/icon_1_512x512.png new file mode 100644 index 0000000000000000000000000000000000000000..f1305e00e66419c3c904948430fa406a09d303b8 GIT binary patch literal 280219 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�)YB$FLEYat7j<*#k%_ zdi?n96ulb{s1;eA?_9UEmKG5MykQ2wkNLE+u%A!t9M-DILeeZMs0BES8#ux^gz2YG z>Pj-Bj@to@Dq-2Mq3q5>{xEPN|pC#L@oUDE* z$c|fn)E-jGI4`bFalt;)>#y zZg5IOuJFw~^B2t@{J(nr`HZc->u8%)C1B$N|lck%^1HMbHEiS5N{g zB%2J_FdZs7I!abqf!x?gBt?D7H}3g*|0o$rYDyO#Ut*sD>XikG$66`MWVt3tT~AZ2 zp(_C^Az+_?Now7%k2Q{d&I4NU`Gt>HgDdOlx~^Vlk^>zJF0rA`vb?KKq6ENaFb`LZ zzxkag_VsP?JrbIRL<6bKRFeaKOlk7bMa>eaOBAV0n?=xCQ8jMUkDIDc^05M{ZdS3m zrY{ipW3i}T%wrMk<6h+0NYby((kGdp1?>vFLbGHo^w)Jwf{LPhL}d5WiF1SaY7V=4 zHaWmv*LU#JvfYjxhfS$H%DEF7&M{A+R z9OK8n6WML`r1q2axR9e*R)as{_Yp$m|<{cpDD{ePsy#_hHtV^ zN`?>`Jdr=HpNI+Xrk`enAYxp|bpPR4LXTBftDh=>=I@_{uhB~colHn95XGK=1i`X` zn_A95WFkplEL%iMPz32QgHsx2fGo*RX)JIX@pT?wf}qtcx?nN0HKgM}7KRj{J1n(` z)14+=a74%j*dD07mv4Zs&f!UpV@3oM9-K;LNn;4yP=h7tVy|9Md`Ie0)*16=CXsy% zW%AVLFo+mKpp?w-j#v=ofiS6v;_CoTBYN>>rzNAK?$ZuaseXx#N>#j=35@Ti_x2o& zoIdq&DIjnuyH%FzGDi-SGm;S|#l%ullqx3W_Co}OL~gb!TKXQK?_-U^^tR>P5OPXC z{d_EC1&BvSj5ZY+B=;~Sjn;Flkuw8B1b{?xkZ!N6?!@B}GpM^nd6XyR1-+Wyy}F@z z#a1~KwwfV#p9w<@;IFhn;A>_A?RRKY;YZ^LIZEte)OE4wx+fsM^_hKCn7yAV)MBy3 z;$g&24V;TTF5>(56{^kTs_~oziOEEWjF5ulV==5uT3iH#hdhyU++mLmZfTjIKL=na zUHKb~{OMb6yk&!opqC^?X{Kc+qi&F+quV&~DqsnWcVQ-wrsLENNp7m99p%I%l^nA# z0sM_)yiuvz>wxs`7{Y~m#O9e&2@oI4ey~S`My&^_VS6llc_8*|G9*EcUF4#4b?g?T z>{SCAvoG&KG&Tn^?-64P_N9*1fF|HmTbaF=oeW{Teyx&mVrcD71F)3bzM!^YjX*pA zh`^3BaHaP3Lo||L7T_)QeEi`JM1xcIKPfz(kH)6jptr7~=YubtJKwZMKuR3s<5>mG zON_K1W#ER90)_s{hT%j<8vSj4k6|$AN(WtWl3f*qG7;lgNRJEVi7Y!MQ)z!M;yd6Xqzy2?J^kY!V%GU zZ)BOzheb&!CF4*6T$F9t;CN^;QYlw=46c@VTdISMx~LZ9>3aX2Pd{XrXLxo~FG1LRtS4sFmTaCM)6Fc72C9R+>qpaP zM}AA6P86-3+rPQQQ4oxnV(`rBSS>{>Nkt6rneM^yJb03y_=DBB%2AdRV#1fPty*_} z6S`I+P#gbaTo~3_yqYEX11sS;Sz&+iKuZ1PT4DlaY*_Xr#wN)uCe1HtD;}Sb*Tx24 zle?%Sd{pZf3Q8Ju#YQ>rBP?3V3v1lj7cpxg99n~fhfQN3Q80AkPFH5qN|4FdbZI3> zhm6Ts;j(7hX|ZEKZvh)#CN8do+~hHMR_Iv=BN8wrpPbrcd zk91&GWEHlGT9CNHk48m+mL|AeNQmwS=2D@L$*+9weOX&h+L#|rpU$o-G^Hmj!tEdf z6rE*KN&`6Ngglg%r$+nD@jHkY6pAwm62wsa2EFQ7%BEGfHMm_lU=94m*8;K&^DS3K zWr6}tY(TPpa`~u+hjaoD3QJ#!t4JpkfP6yXAcG)+aA-xHd7V4ElB6ZCi$S8G%3>V| zFck=$Wj7XXo3hQ9-Fh?ftc_kb)n#qA-f%H@A}| zE~~@^X23)9YU-kiZ!wonj|}p2nS1i%GT||^AHpq#O%$CP z#t`49rdo8$u%4KbnR^dVYS*#D`npCf;f4zi_Et;B200e}9EAGwktO;{7BfjHRZjyE z2IQQr=DzoEA7E3Z;`I0!gHLsL7Hy5fucDDg?=d9Lu*hluZa^0|llELuM1?8+kGJ zQ+8P_;zE*3fDrz09E{2GHms6~i zkp^q|f*9*%qQ*gC>XRf%HM(Ub(^Cv!MObOK& zYFS9tLW5XpTc2@3^&KUAj){s;ze`L>t76`rN7580dyaEsRU61aPlBs{nSHoBY0C;i zpYOR26ZB<19EN#QL5amDIxj%Tf=J*C;n|OLbf?;9Jf1VAd1>JU%YJ=*UI{n_nA}jt zzQa$GUWw^%EH6ccz@L-7$T)qimFZ%TjZ?JZWWb+tOKH+vVECSFM_X0MdYXyCOMY>_hM|1dV5XslZCi%0LQ>*Zu-LZd(m8 zjBMPGl0ES_A)TC&`i!S$MA?thdYU4?M~0%v;KO4MU9kiEuy6?QM8<%S?6XKnkp{K; z>CPq&&`gR57H{~8KF{y&yz#PvLs%7%QLBjC7E!y+C}G&ra)+03KG6vD5w>XL4ny)SeVc;|f+Ss3DB zh$@T;MMFOE^)4CKXw1=_tIS8wLGm*!`8b7B1y=7ZZ`NXP>{%b{e8qgln3Y^#NuT%r z?Yaoi*-y>t#43$!WD=d~;EbhY=R??d8Z+zc+i$%nq2cwY1I^u<%g?=yAr_Fu_{|TFp1jOHL zrm>_FxaOReKsgTO%T)%LLu4&H(90w$jCh|@0EYw}43LA70;MuiPKHUal@isFKn;2- zoJjr~)Jb(+ zDPqrENj?@lnq8amxHNo;ZoC$dj?H7Htn_5+6b>1>F%l*C7}~lBnaJ>;f13uvC3~RK zYsu!(4bNf>3CseC3^TN1ohf>Ow_~7Yh~!8@3b65WA3zEl7^COIv+9P;sp{6iphQoUvA$3V(o}+&Kj=SY5pdpQ7Q4O~600 z9~4q-WIJ8BdO46Smk-K87%Ahr^6pX9ypziV)i{$XbZ92>x@=T!a5!7Q&%{M^@+-wh zDe)>>c1IHO>oiAL)?+I-aYw;oqR{Edi2|**JG2zexZ0qxH0YIQzZ0)4&57Bf2Ra4q zxw7LvQB&m`A$p4<`u=5dK}C=L1T%*ap;;xB_jLFhp=uC#%)m*!>|aGLC3w0MOKRMO zQm!F|!A6b;$3QL4#ms@H*KNr6$Tyb_E& z@HvoXqY&39Z>L8Q>yeQ(HCoZsDQCsh7ZG7j?@pQX1^$%Okj7)$$PWoTr6hBUPXLAH zt#Gazs*xqIr2Q0{N-$ooKxYy4+-^3JE*{yIo}aqYIG&WjNvXWmdg1 zkPfn4ev}o!Yx+w6m3#a<<(}}ckS3`*=BFW62xmDc@8>fXH284aT$q6eDOxY@GOA%f zk)a_0W|)CTo5&tAIDjgLylJ$sqTp{qjV>og@ZU;49tNyDOtdY&SNNcjwc~Rx4HThQ zqYUe_mQ4~@0g4AXPQJ8^W|{5-QHMd%+ezt~-2a16*ML(Og!_MowtKyWtE zzblK=Ft6r8WB;WUDb-649$Yi9G7;3juj`DU6F-=Gc4Y6=4A)W{&Ty7xV{#s$ zz?g9uW#565!-le8#sJ&3Ap((9GH-KZo)no$Mlg*o{c1Cr$!SkH#pJ;P58-#Qttj{N z3=FAVPl$Yjr{7*u=1!h8F{Ij9UOo!~$QT3`Ogw3vB(C!fHDOBDgm>O+Bgez=oc&_2 zTAieTXGk>!li&=-z*Qdo{0P4x7Pk`_mk9VS${4Xu@){$~! zqYjC0+FkWDE$6VnxX~YciHKNQuEbIQGJFgF4?$^gx8Os3|CC9{$JgOXLqS86eIGK4Hav3EHOuA| z%$wnuL?lHw?4$*tiVie+rF{@NtEptgnCu4<^_tN^;&(E zBs`6`OpQXRIA+b#2`g+5V>r4H2=ss5X1t%aA`gOUsYk0oQ|7$(x)O?t+{;!CP#}~X zLxzhPZ2QFu-v7hr1&bbV-pW2>4+k$MR9GI-pX7T#Cc#RRWD+Q})ut(la!P zmc4lzJ~PYD%m+{c>+*?&9mI=6QL+)rP-OYf6+%HGwph@{w=$C7uIDdLDvRZA7~S|= zTn*anK_#2C8q{YQBpN3GDfm%XLVOh-HP7;WzopVLOsR9jTsjbd!AXWi3C$}OYjUK< zwOp{}4ccp%fUwz+L2p^xb{R=&V|#ivXRfhfa$GzktL*?gg(G&WmQ*)d`ci>ro8TUwIRoWMUE%=wT zTmNl`0x4cWHE}yRXQ}q3NJ#vc57W<0VN=#VVvv*7xl`?9HIaxHW$DwQ0Uk4RSiS?u z>2P}-A4n8&A!L(v92LneSj3oE)pByBQohjtN?y{>OA-y2J#RX46-zj!Xo4)s557zg zWz#_qMRD{Ru7IzY<=S|b!Io!}Lj&jo>^#7jrE~@L>w?GN%~o%$;!w*{*^;(Jz>V8m z)OFbr@=Vg|^w%@qwheta|Es&w0rV;c30B>i*jPdOH6B4Sa+G2R1EPwM_$9?3%@2th zrLpqE$$}D3g&~&^+2M!>60Q8LZ0>+mo=eP0-d&_J_Q`bfcd7Q5gA)aQ6|K96Y+MPH z=5e)w`?by;)Tcps3rzH~H-U+>x`vD^CIaxk~t=#P#p!kc? z8Ua>c5xiYUE^C>hhh;OTP;GViycLmhDThfdr`Kr`dK%+7AKyC=__?HY-L~_4eIur6 z$#j_ZWU^~Ou8mY~7~y!MD32HKAPId8I*Go84t8BEWiS|JjL%=sy=vuHZXV{Y>qk8f z*6|#70<`imDLo`mRnoDOJ1RaF0Vp@6$EE%I-2-1_647V(hq3 zlKV(Fk#T<(&>j^w_$g^0!I!~7>zgnai!#doq4D4tCaj$|1uR{e9T{p%TQ*N3r2sgb z4;O;TN9_a$Y9BHZ>jG*TG(_pvBK^X**%9n-2As}&m}aE@=D*?m%z*jVI9B*+%CKON zFI&=8K1)xLvpzU&AdCo{C%H(yJg#)-A4D*=_d`|89v8Sm$#f+MuUJgVY^9Aoh>^L= znKU#<6~rbwrE|!uIwtzEZ}SHbYLJkNHBLx!zWPsEOF#wW28R!#9=qY>mQpXklFET&^dj?PV3Bi77K;o5u1>Ul->9 zG$sRSV0~vQ)15LMgRX>3T(-Gp=`xNdh=uGV`WV=%Jo7mR(b$}Xau51y7sx~f#9KOR zk|c|(7M&%{t3j+ch)R~vcIY}Er|Q-n-I(IQN%l}-7Xa3yR;t$$t<_SvkC6da>3F4& zWEKtC?<#FlFAZ9x9H5z42qXs%AQx9SI&gKRBPr6jK1@NxcBf-$6e45`yza}|Utxrx zH2E+pS8P8HX5_1iCplynZXC-!4*Z?h?EAACB&vWNwfyyS8hx^c62`saLW-Q zo;Q87Sj%3EV%)h#E;{xm#onUR;zycSth*zalA0&1p+Oo17b5D~#5#)b`#Qw0u{eBZgAi{>IcC&*2bh8|?D~XIUIrG7l8xG&2>fl#M(w5n* zECQtxXbggh8Ty2fWrnZO-dKn%w=DZF*z&P~0HL~xRk&$Cq-4v&_)-kCO3g8r&M@sh zN>x!+#`titZY~uiIG3S<_*zjNKjW?~u0E`7gj^N?O@U;-c<9yr?NWP9eY%mL{Q|Z3A4O~pVlx;k zo-(({%_Jctl2!>?1MviHrmF<#cp@O{MGIexF*Tfjsno^hp-`4zBXLagB5TWBf|ppdpdOZsJDz)mhle2d{+kyo#V8;AB~8I29XsSqmBhU{v^n zeh&=R0a-*Jv-2ND>w5`|UN@vF>(E4zMiA=RKqN|<<$BF=#!s4EHg;ff@<|$fR05UJ zn8LoaTFMWspmFxtTrB+`m!W3$3Jd;1ts0#-DCKdMyg`}LL z{ZRH64k;rD51;6WfGhY$=ImuTgXm-&8PH0IZlFa#6xIttZ;T-8-Gb~I31xc7uztyOpFuiiz_rzWl8qv`V6KPhMztiGUM`A`AFJP z#A4?vtDr>)@m%$>r{Nb>Be;!Y+d?9a-@^<@2**q1rqI^Q^QpVESLR#{m-;(d`h5+V z*xH0h0Dl5zZUht(1MlK;IoYUe474{SJW+vo$ehzQ#G7~s79}4hi1;NmDT>-gB(PqQ zkUj?+%k2VsGMNVrJDRf34HJu5XHd}xX(S2&xp5~z5cwHxRft0M@#uPc;eis+`kn>v zjyDP|mhmXi<^cV>?}kpjTAwugupBSIO-vEOW5iyGbo~S``^C!$1+?s&%c-c!f!z#; zHL(WR?mvE7oVHY#t6IsJ5@Ol$JarL(jBT_Bmy!47-|9NMGbZHUD+t1j(GVi>!Y@0Z z0Ys~_8Ty2imF}ffHpcO45CQt)a|NYnD(=i#NvZ5nLaU?~i0$Bx2!RM&!ovh~MDX&Q zb%BKn@VasKosZQs{Hrrznyph2k?3}~bN%I@&4{2dMF1}OhuuQ`{`dqeZol*cO}Qpl zWfg|S75OLg7TJ69-548#b`nVmTp18YI9r1^^=rg&A@QV;D~>@`p{$YMO96i7MQ?BVbrDDZtQa%-r2c zj6w=->FFUnzpade&ael7_NVod7+FnzONFrOib!UoPKV?*fFfrZ3EsRFgtJgLc5#~7 zuzXzUfhItNr+H=eDs;<{fM>2k2GVD4xqcL=8A3sTef&2Kz*^+U!Di5h9psEZvv^&K z&%X{nzX;Zh{`6pQGP%;6KN*lD`;g?>K`LQywDP>3Z9rUw14FqSrKB(304lY=0uXNZ zIp>J(4YYmPNTHa+O8QuRmXiR}njdp1RqM}DeQmST9gp{R5OSU=RAC6n{=Lybufj>l zgBmU>F&VsNkjNOID}oF4P>rhS%P$;MTP;S&{vCvw@A?@7G_PbW9xofvq?J;S9x<`$ zf4d8-?IFtBN@*pV3IiI~X&^Z~>>A-6+V+&;;d8y_DgzgbEMNz=Ku{%a0ZFonGAmAq>9P{qrKqxIk-cqW8LxbTUN4`~TDdG+ z#m`*wvc7}nf|$ji3Kbzjqb^?XsHOjkyRY^kS~PzLG89?}(Gs{5U!5F27sFIp_3^6w zquHy4A*39IHb*b)XpK`EfU$;cC*pcTzoSYu61|*o`7#c&kQMnUb@M8pE&@pf zuCT+$da^Ms+Gm(V=$*-RbI8_8|B_kqz$1=3j>V}ZmFnx(g?DrA#Wd9iH!u>PS@bS* zH}GH}Cfv<5SzJ?`9cJ9Udy2bv&v3dwV4i2RxnZ7d#@`f88#a^JY-hq|ny@?C;P_~V zjx(#~5mzVV9i-(F5SFEA>M&R>W;222tex#hML9dQX`(kQFzwA8{ zct5o^x}WrKCM}vwjdSy`21@FaLJMFXDpY{UmJQ5~_z4xR=`ki1>VlS>IcH1@@I2q| z70}6-9a;dED*K&v8NoMk7=B#2cmH7lk?lh2C1cDBntcLNbnVPpER11tDb8CYVz7l7 zTF>(wp~fS{wBmf6k z>b^#^ekvpGhu{uZ(p)^#6?UrRhHFe^%9&>PxSvt9XAg>{`I z`WleN5?<=xWgzx&m|$Z~%fs38g0Z!-CX0T!Dxw{egGL%_oOh?4jTBbPPZO=^pO_At z!A20U0G+`tU)-gHVFH~1^}EfAl7>lVaby#`vfL`#GDqjRp2vos09tDu&tqLJVplH` zE;^qqhfK<(*#BC5$r1Bk?zYOb_VKD81!SHN>LqV~EG?^Y*_j)>%|3l8082CIf|3lT z!{C6%D?r)il$|pyvJw;OEwktqi4#@Pe<-#lJ4F|fNzm0wfmhQd#=u(?RHQLxc(tKA zz_UVK9>|0%XmZCEAUCk^7TiinBxDPjtp_CuV6~thY>-^DQ+RpFB`Pj6N%_P&tFkPl zUUN<*glFxGIRMdB^~Kke7*dx=&cj*0AV#KTk`YN(!IMAhvR zo_paIUVQ0g>`zazgP@7v>;Sxc_kb5}p5nQi_we$a175td$KBHd_D%cj|Db51I62y2 z62Zlj9j;y6;{MAgc;M<09=Lprs~2}T-t{uxz5R^S!wkiQOBasuzu^iOgX^@s#~~6WSDga>zKuN9n-;|Mi-u(gsq&8Mvh+O=i5D#T6$R+BuT@<- z80=`+|UF^dzQX8q=dTc21edda)xxmeb!7!wOi zQNhv@;(VDgF+cg|bx$#0Q6?Hd-hTN?{8}G}!y%^XoK1wd2+%@-{$2gjh=?V7R4Akg zbn>#`h^Jmg>f?-zgW3c=$@3Wdif5Xe)f6XeCcIuHyg}4;rW|q_{g(2@yXBK!mmAd z8#iw4p{-#f6D}NWaOJ`dC%Y|-q8Yq)i`@4QUF<&$GPdf!Dn z@$h9l@$e-)dfz2nIuf+jaOdoRSru0x0&zyJm|qKS+m_V#G)(T!@T z5GTiGU)JARS}@87;#lA!GCv*UB|{?0m2W?~Sf+`~txrjLB$6P$g$hvdD#RREKG+X@ z*OGZdiFsCEIUEjoSpe@CYEys&u_$Zn#T1=r0?>?(i=O)|vUQ+0=LvfoIF6vAu z8cbiaX)PTKlAgc5T;UzkIu-kVBn}j4DGL=Mj2)U+T2SQUftUd)smkm;fBTGjOsP3A zVlf^CJ7qbOZKNG^*%ZBxwGB2@QUNI$NFd8_;@rc8>{~_fTK-+Ue|Lkyo{%wejfX~ zXJ}3F-0eL+@YKtA&nIr+=^MAPKPWC8Z}8ByOL)VB7xCo7SMbPvm+{cGi@0{>1Sdxu z9BsGQh|$&*hq+;HihHLA+`4y$mu{cpg_rN*spoIuIvTT znoIcN$L_aZ}%8kH-MjVlIZHF7>nEcQwzus*rzRB2~1K7$iBh7S8NpeT5Qp78@7v~6DbAT{V z>#?t@Gu;*NYW;Rxn2BFh(M?FANkoZ4BTft$R?f2K$<1TQ6Ih8pc}y{EC>K+w_S;Ns zU09q(>m~{jzVu0W&8s-&888-?;##L&Dx%lrtq}>mV-}6@A>=Y|%1x}XuHwaLH`#}T zK*1M44)Y-%s^*y~%XwkjqqP?stil}~HVuyiIga4=Bd7{UDbdgl(ln%~Zx&wmEfPB` zWH*JkMCYKz*QU`(?3+8lBv5c-qnl9_Oy1S;fs1MuUV-bd35P&3C(aOAN8 z?j+L_spA{atOGmEF)IEhrHXPNHTwd8R27@e1jvNXfBq#r{p@o%yLS&a?>2nk>6`e4 zPrQJSKYJ6WrwtEXImVL@U%{Iny^c4%<{BQo{}QfUKE}yz*Y^lm0x{V-y@=%90rngX zF{SuzgYD38@AM2W-8se6FWkn5Kl>uy`>E&gndffd-oD|1t4Db9kt_J}H{6f6yzUyV zT|C0Qvpr@2k34VQF=eXtTt zsNGnB=;zG|7rwd{CSg4Ix3mGw2NL|^IW!I{|LMEZ*s^o2qSY9P?Y>D{5@v}&5KxF~SUa&zLEVuBBSZOjJ^l&rJ2P2s} z935bC_6O`=2;O5sT8tMV>K2k*N2Tb-JTJcU^(j^xW0++Zqlvh>w*KyG>WJ%koqG(d zZk+-O;zcMqTaY1(49=xAkFiQ0ri}>X!}WlHsrL^#M|@g?zFD`FF;_}h%(a)+SRN#A zF{0`VU9!VS3M1YY$u9zLVRsGGLC2O0jnR&a31b|1HE33&qgDxw0q2D~7oywv@jgOU zGN_vdEAqD!+wBIoZr{U4KmJ+Vy>%OR?#=j_kH3hY{K)6=`IqnEWHaH74`0ETy#9WC z>Fe*q>mRs+ODD&DgWe>NX@lJ~VY8huZ6-{UU?YNQ0>oe2rhUNH6p98_L7V%=zO#A8 zJX`Q-4Rf1u`|chefA(ek+((|q2R`!>Ubu6LD;JLOnrkO`^J7==Rd0L%uYd3&_WLu; zvcYQ~eGm^laJ4TB%rh`enE(LmiIf8g=3tVl>LclfbFs4=cgge^GFuCJa5X9ON#)5MhA*GDN0C)cQ)pO_TO&XGBj5gv8U( zeNdd2l`%(88h>Ocs6Ng4iC@RJz^;c6^39bABj53q<=91-t^JLA!ZhVH-maIUInP49 zF69s*eh}BW73Ji_%sH7C;)kPTSM9K@3G}-FvWz3n+e(z85fg#KFc(ZkpBSM}ns=$4WO$$j(!#rqGAi+&y}P z$er1>^{il%ETu#qJ8XL{Jn)w18nFDrU{YT^j_-ef42jI(aK14nh7h4X`t5|p@u}pE zkRYf!!kc;GA`H@q-!;8-xJufk7}8*N1-MP$s%vV?F-Jq^^~%a={VnneefL1OnI_0I z;S-;J22XwZY23Wq@a|8&h!@U!^&PkbIXPiH)M`2wz-Z1MVsF5zpQydO_KauM^~aD3?k-tfAIaCEf8 zd^i{`Pk}R&@f~{wIoOBj9DotP#t7K&wyCNN^~3Bx*AzW^kU3G(?Yk&gy>+E z<+V#6_StXT_dmJ|=y$lZxMHeoB2XY8gJql8Mnq(PL%<=w zlpMZfPaagz0bOAa+0ax#e4Hs4$Pi%`4-OKscU@;-ODFTbH3Y;NSRY$MFiR_AeycLZ zG7ztq#W~GByIwPxvb_$GkmTlCW5XGCU$}zpXf3yg)CLo@amq#%A0ur(d4b7xbp1gp zZXa>wupU>OT9A)7TK}vi75qb{k*^1D;8Xz;08O{@47mH9)oR4e(8U zht_a7%-GK}_WRbsP!-SKxP^cID^KC4KK2|o03N%35f`=_Ja+#D{Khvwj5j@c37954 z_~3Os{NS~^Hz0^G!MV+cs7Ya|BC-i3#rCeo)G-56KQXF@pC^Ffy4nty?71eM^QFzZ zfl^>w^uy6=@F;TQyr(?%hptJn7|MK?LgQt3Co zJACItX2y*)^ThWaH#%}97i+a@P6T|3lw*q-NzP15jOl+A(h^7=e`G!!lsB66ECC6W z(J>2=%g;8*C>Z4Lv8*Ge*?7IIi#@D~Gf(fO3oTwbOnt{bqmo50gG6ATvZ)WqEhJ2L zF0~9Wx*67lENGN$kCb=*N9bG4v9tf=DIHByFXIw{{mmzsF+G(cali;s2#Q!%)}!LP z1Mqm><-I8TR~o`({1W;%=udkMyB;a2Wuk#yXNOA0<7d>6uPOVvMYSogo@N>5_^Cb# zAUHnS;&`|1W&Yg;+wFwyw6PMu*u#75edp6;PmPtt;ej?!g(JtPU=8(Z?f&hh0nBr*PL%Ut0HU zKT(M1uj9S}Lozj6nle#mB;!uG$>A4@IJ1zVfGWMwNk4U%4`Yf#l>1{_5nx}0yjB->Uy6We*9Gd6 zFx7*ygiy2lbxT|^5ex<93fSdBE(Kzx{h&Z_@Zl-~gTo+~S5Qn+tEKM@lE}?_=AnJK zq*t8cQd*EWS9jso5trsyX>)KnpZXNaa@|YGVP5&OVl`nJ9&{0*Vd=a;9ixNL`K9$- zOvZ|A0Pq;TY~q1oC1@w*0M#DD{Fi-=@yo!oDP-yo)p_6hKZ>9E#gF1AKK2rR;i;Fg zl?^T)Z}26ry^eq9%U_4b?z@Z`6SkWTj*mCkY&O`6U=o}4+sq$8uK?IXf+i?rf<1+E zf-nDv3$!jD4ZStY6u?ybLx*Nn=-jLtFk?SA9QHE~GjR8Gj|mO)JmV)m^f~2`+6nINDD5O>cP^U-#zwao_z{@W^W(#L3YX^W3_<+044wj-1(Ryr{xwZ+OI)sD(+kpLLYSW6h`d&$;r=neC>)=%b~Mwbcw6ApI3?K z#24d(AQj>Bvqe%;NRyORI023AOKb1|biOYGzI><=xRl!lgC)1$-$JE@tChP-8zx=FM?%iB_FZKfk0wRUgM5g*h2Ga{Y)$^;}E~%Z{=rDrY z3CkhK^ci@cX-}I8^ZtMzd)IsLLqGiyyz7&C&2;v3%lF#h!?9s;HbN5?x{ zy>N`(wtqj`ZE$q7?f3Q{Z?M~Ldf8tDn{D4mu-Wvd{7sYCu74?#XcqOgX)pKB4fEV* z{fGI0{k}gs_%Qc%|HEO%VOGp@PZIon0f)Ka?tYK`UU9OW@QKge!1w?BC-Jf8Z{yO@ z29I1k!SPP;nrkQc=C6D$zT!;}@-gg*%C!O|s*rt^ zwoF?gvWPPOs^K!TNs^5R=S4S(-W4K^@3=ZKiYL?SkwwxpNhhv{j8m|?07`j)n$iqD zj5;#7d{(lv7so?I?~!*QkS;=$n(c+_V zH(tkuD_8OGLsxL|!VxZ>>~P`Y5sr^{eSLqL&H?TJ?LKO^3GNRKr>6((_cKmU54dw@ zkGpqHac6(P>Af@T4~l~}9Oi~25!^mK#XtP{U&H&KzJcvD;dl}}bm<7ky9vMP%@5(X z{p(NQi8nrq&29^AE!Nk&%pKbuS9B4u{8KbrOwI%BEAvOOm~7BH6K*vK2CL6`DA=?r z&~dD#ucU#k_c4};i^mL5iQyQ}8fCl&=XnZ;GyAQG&Bnc|Qsuw_T$|>L3v2wWQkL8p z82blYUV*iFMS4~8TWXw6gKf}c7D^~|pQoT4Nl%cVYf>o5D$8rET$&^X97*)+B=Rz_ zi&;6>D)EbBg3B+CTb5BOwIUF^+b3x1?*bs9wTyY|LBnlaGV&N9p4k>A$fb$_N;++Y z`dp(L-W|lF=Pz$F`YY!rKxR!YP|o;he7Zb1@bkmGJp0376dZVm9x@ms0(?;<14wb$ zb4CrTtOh)oIJoQ-creJIV%NC(JpdgM6V;f7;je(EC@C#Bz?}!~K+c@zUXWxeJ{m~C$I=X-- zUULm!`KE{Qes&sI!#bj_@fDYKLYPziAlJoJQuR2;OW3w_hyt8>y9>oA4&;sMjRhwA}dB3O!=ivq=F` zb7L>R`rQ~Sn+(IuJyBRqX1P=2d$2Q}ZHZk&a8kOcwwvt6XsXz3xA^#{p1~jZFaHLf zy?Maz{g$u6Z~n?B@wH#}20U>60>+Pencj!-EMJ^n$=uH4)>^z7I9@xB;as#e0FQzF z_)16n{frl0yo;xveGyMT^CE7(bQ^Db_b2fSpLr1vT)l)16jzQWoXv{MM-%>Uzx_+` zZ~fLU!$En%K>AqFl-5}MlHyT98AY4GAVIx=e^wj!TdGE@sh{-NwcghtA;8xINE>W@ zacz#lW0tZ%_YK024#p!D@BvqGk!f9t3qY=ux7bI)4zLVgMA*`9gfKPQkG?I)Ww)-^ z&YIR8!z}UQ%M=|LYX`q&Fj|`~3@ZTTz^Jd#kDx4NM??ynoam~4Oo^a;!l3u#$4w^| zKhhLN3oMfLt2>1DM*)*DYH!GS-qMEF0&fB&qJ1^oEXg}sF+)|j{F+G!@}1;`9|wR6 z1Tm@|=Vb_o58tDZLBW(}B@pGY-2Muf^yAA-cS&1LN;9E?@)}giBfBgSV-*;pL`^4C z)S)r3o;aQ0HM_3knm4cASx^!H^2r(lmopM#g_bmgWa#C#1eq1stVcqxN%e>;VK;G+ zJ6cjE7;MhY#LB9Wl^b9;YF9e)Hj?xttKH6~NpSbxJ$&!me+CyWUcvADrmw)IlcTu! z&;)a9*iLr8zWZX#jtZWwf6}%7)jqE>hM#jj{dT%ibyMKwoA>b9XKvtc{_|hKKltg7 z;@(-qr3*Vec=ZG_ZE*AE9sFN^`O}F*-J)73~OOgYTAr zNUV<{E&e^C)N-a<@S6{muGXeA1CYd!;=q~49L=(q$??=Ktakzw$|9O&EL&feT{ko0 z!YU3_rzYH3a>V1g9KHK|WWE34p0WdO=lvOWu&J)PvBZ;t>?_3XeHb$d3vuyEY|-&&**CzFP2ZH<42Zgc zC$;XSE)AnBDM%=Q$EmQRW1sPLaUkW&WpUbz;QjL39#efugAku4gWvkKIGY^{j{;>cf#ViIfEA=tR$lE*UA`^_@ATwjSrtYL!JnW|! z8UG+Ev=uz!^C{QrXWir?BG$4z;SR%2Jn@u9UyYr?Jx2+mIpm|^Rk`uIIYNPiGeStAAuUAV{obwD^LL^+5f+vnzrA^H+-GW*{4JY&foGy<)+E9rue z!I=zAIP?~kHL-EMt=D0P7Sp=?eU?B=-z!6GLfn;steb@(W^u)T!YDWk zG>RQi2)wJzY{a@2VHjal6+vXX7=KNvK$dY_@X=OR6zUx1`fljY6+niPV{?_k`AxJ- zlj0zzr~)LR7qtyDed4M1=@cmi<-91&!UQ1A5Z=m~C9@}*3ShEaeJrNijcDMjRvlK* zfq5(7=O;K&EMb&X6~RRem7ah81wa)?M@JBQRIiBLuP=gW+Sp@yd%~~=;z`jt0q6_) ze4&?GJLhFEiA8tJGk_YbHIL2Oun~!u5&gmkKa0QegYU*a`MHndr5EqwhyVQV#y5QR z7vXGwz;-j$3Y-6tB@2E0q=tR0pf%H!4OYZsKrU%7Y9OAQ(;ARvjz*T8eX^ zhYII}naf^#yP5-YpsAJ9^pzE$Vmemttz;}%1gVkDbIxZO-K=>GT7ptps2u}Qomg~l zVU6M2{^hc_x+ElRrel)ki{w0;r==T4&l0G`C=EPb)*(GEEaq)w+9RR_oc_`P09Gcl_l) zgfDx`p-52!K2V1Y1SQzz1gu`aq^tUVyly@C@{MmUE1@#BP!Ak? z>i(s^fzrAfrsTDL5O7;2lZpRHRe2E->4rrXkGcm)cZQV>v_XETaAZ%YdkI*?cAoY+ z@c2+hQBOJ@t4&6V+(&`#1D(%iI88BTJ{-#ahb$R@)@>{PI#x4+ z+&f;_t^ykG22e32b79f>=F&gSn0*aUQ?cXTfaRSED78P;Bltm#;ZRj;6*<@n>r4>oKz8{EBj4>xYy zz{$ylzQ%7e|NfAkslP&0x;{6y1iUnnI60jn4Ky9Tz~ z?n(d4kNqnC)<1bSzWa~-J9yLM4`H6?c-vq2IobP?<1iFn1xT0;JXq(H6Rq>jnfwaw zTSgQCFVp5@3j7Wu#ClPgxd*rigXk)+Y}pmB*60N)sFHgyR}>41RIKqb?X~lXz~}VQ zkw3OtvT+bT#(3e=MTvHaCPvlMujs&ie8=Hz<3G!0aq(ete+eikM;GW{A|4X{j-`lr zDV0`Q^J%h9rOPdOSg-Ez#I@fForP-}XOsv9qPPp73)Dk1m8XvV)cwnZPCTibv`(^5Bf@@4LDMz#B&gS6i2pibY`6C_DN=)qjOK6d+zi7vAvru zHk*x=`=`DPAREAff2{_*dWc=}@`Zo?rLH~aA_kaqo3Ae3*H2T0w*G*m8@JBz>8C!A zFaP4lFtz3)mlAyf`Z+GKs0aY%_Je3=y+m1?OFjdA<(Q3IcB}Flnll~07RpXX@eb&E z+Ty$16R<+gf>a8<;v2%&XXZ}GGE=XnRF*G_fuiUp5A$y+rM8;%i}f+OZv_@6tG>2# zlrak{?StV$s54qI9ggK#W0_X{ek4aqsL5C&$MS5p4VWd2ROJHvsyYf4sCuUOfRgFX(=up9OgTt9H27=f6}R z{nf*}O$Wl+H?n8sT#UCiZe^zey>g?nX<_K7y4bk`s)236omUgax$c(}Bqqe~CK{80 zcQc!QR|s$XTf_BQ!lpl~34fis zMzyvqKT~*Kp|31;QtWfWRa}4^M^NHMZ)9JLl!tg!0sZ&)SuB z;=C&;c1eHqzP$-lo91h(y&uB=NwRMnz}F!A70ZC10vFST>q-M_HU1M*sE~p^7{^8s z7d|8y4u};k!G8>9Y`Xc&O)-O&8

g%P(Cqb*7npc%Qj3YedUBpUsz8P~V#JDP6GB zQP!to#$Yu=mn4X1-}jJxq{9^KAyyiVlgB;9aCw(#nv6)di2@b_qDFbPa3|5wIm{s_ zkx)R<$cEggmq@B`AZTGbsTCG-cDB@(m~GKHm4SA2Af>LVby<&^BWnYuX@k3W@8b5I z+t_V4$h{PRU;=bXKnazuM+_alR~r81K8tJrWjiF|{#EGV0I=O{&>%S7_m>MD+8iOO z0JbOmML>2;2EZrWiR;P!LkUXKrAp)IX6!GMwNf&xRbg-^<9Xo#G@e#UMBJXW8ipNm zP8}bDBojt|RWRcNJ1`v&9{p6k0>iJa3kHpWUHj2R+#j z_*2D*k>7%^$%ZZ+Zf`@cnW ziS-okSlHeJ$-u=#e=Wn3Y@I%@A(W&aL|lek_cxb5=bCOX;dJy#@NrNbo3mrqsH@VQECz4?V6-k*H7$lFm{(0lZ4Qw`jy+6wOg8nu> z@yCZ~|7-ZR1`=zrUx}_k3M+UNkZ_FT_xQ|_u;v(!0ZtFYsehaR$1+5gw~K5)G$2dBa|667K;*R z<|84~D1WJ8H7}2`r%O4KzTL05y zj=!;IDOrTpJzNYy>Uc|;M*62_AHjWtO|i(vT4Hj!&a0~9(qWF_6s3ey6RG#KYiG0U z@d6N2f5*%)kly>m!An)5fp30L^fge8F(lT(gP45u;8*=I^m`z}#ZvQooXw=dAZBT^D0 z$sTFU*cJkj1cnm()KB;FVQ(&lxPBeU(E9T?5PB&*<9!cw@zh3sN$)7M5#;!R|EQ

youBO8Md2kfMKn&z-w=` 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 Xxlm#DCK>mW00000NkvXXu0mjf2QieE literal 0 HcmV?d00001 diff --git a/ios/.gitignore b/ios/.gitignore new file mode 100644 index 0000000..7a7f987 --- /dev/null +++ b/ios/.gitignore @@ -0,0 +1,34 @@ +**/dgph +*.mode1v3 +*.mode2v3 +*.moved-aside +*.pbxuser +*.perspectivev3 +**/*sync/ +.sconsign.dblite +.tags* +**/.vagrant/ +**/DerivedData/ +Icon? +**/Pods/ +**/.symlinks/ +profile +xcuserdata +**/.generated/ +Flutter/App.framework +Flutter/Flutter.framework +Flutter/Flutter.podspec +Flutter/Generated.xcconfig +Flutter/ephemeral/ +Flutter/app.flx +Flutter/app.zip +Flutter/flutter_assets/ +Flutter/flutter_export_environment.sh +ServiceDefinitions.json +Runner/GeneratedPluginRegistrant.* + +# Exceptions to above rules. +!default.mode1v3 +!default.mode2v3 +!default.pbxuser +!default.perspectivev3 diff --git a/ios/Flutter/AppFrameworkInfo.plist b/ios/Flutter/AppFrameworkInfo.plist new file mode 100644 index 0000000..7c56964 --- /dev/null +++ b/ios/Flutter/AppFrameworkInfo.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + App + CFBundleIdentifier + io.flutter.flutter.app + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + App + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0 + CFBundleSignature + ???? + CFBundleVersion + 1.0 + MinimumOSVersion + 12.0 + + diff --git a/ios/Flutter/Debug.xcconfig b/ios/Flutter/Debug.xcconfig new file mode 100644 index 0000000..592ceee --- /dev/null +++ b/ios/Flutter/Debug.xcconfig @@ -0,0 +1 @@ +#include "Generated.xcconfig" diff --git a/ios/Flutter/Release.xcconfig b/ios/Flutter/Release.xcconfig new file mode 100644 index 0000000..592ceee --- /dev/null +++ b/ios/Flutter/Release.xcconfig @@ -0,0 +1 @@ +#include "Generated.xcconfig" diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj new file mode 100644 index 0000000..b98b448 --- /dev/null +++ b/ios/Runner.xcodeproj/project.pbxproj @@ -0,0 +1,616 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 54; + objects = { + +/* Begin PBXBuildFile section */ + 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; }; + 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 331C807B294A618700263BE5 /* RunnerTests.swift */; }; + 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; }; + 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; }; + 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; + 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; + 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + 331C8085294A63A400263BE5 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 97C146E61CF9000F007C117D /* Project object */; + proxyType = 1; + remoteGlobalIDString = 97C146ED1CF9000F007C117D; + remoteInfo = Runner; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXCopyFilesBuildPhase section */ + 9705A1C41CF9048500538489 /* Embed Frameworks */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + ); + name = "Embed Frameworks"; + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = ""; }; + 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = ""; }; + 331C807B294A618700263BE5 /* RunnerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RunnerTests.swift; sourceTree = ""; }; + 331C8081294A63A400263BE5 /* RunnerTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = RunnerTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = ""; }; + 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = ""; }; + 74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = ""; }; + 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = ""; }; + 9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = ""; }; + 97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; }; + 97C146FB1CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; + 97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; + 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; + 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 97C146EB1CF9000F007C117D /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 331C8082294A63A400263BE5 /* RunnerTests */ = { + isa = PBXGroup; + children = ( + 331C807B294A618700263BE5 /* RunnerTests.swift */, + ); + path = RunnerTests; + sourceTree = ""; + }; + 9740EEB11CF90186004384FC /* Flutter */ = { + isa = PBXGroup; + children = ( + 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */, + 9740EEB21CF90195004384FC /* Debug.xcconfig */, + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */, + 9740EEB31CF90195004384FC /* Generated.xcconfig */, + ); + name = Flutter; + sourceTree = ""; + }; + 97C146E51CF9000F007C117D = { + isa = PBXGroup; + children = ( + 9740EEB11CF90186004384FC /* Flutter */, + 97C146F01CF9000F007C117D /* Runner */, + 97C146EF1CF9000F007C117D /* Products */, + 331C8082294A63A400263BE5 /* RunnerTests */, + ); + sourceTree = ""; + }; + 97C146EF1CF9000F007C117D /* Products */ = { + isa = PBXGroup; + children = ( + 97C146EE1CF9000F007C117D /* Runner.app */, + 331C8081294A63A400263BE5 /* RunnerTests.xctest */, + ); + name = Products; + sourceTree = ""; + }; + 97C146F01CF9000F007C117D /* Runner */ = { + isa = PBXGroup; + children = ( + 97C146FA1CF9000F007C117D /* Main.storyboard */, + 97C146FD1CF9000F007C117D /* Assets.xcassets */, + 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */, + 97C147021CF9000F007C117D /* Info.plist */, + 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */, + 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */, + 74858FAE1ED2DC5600515810 /* AppDelegate.swift */, + 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */, + ); + path = Runner; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 331C8080294A63A400263BE5 /* RunnerTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 331C8087294A63A400263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */; + buildPhases = ( + 331C807D294A63A400263BE5 /* Sources */, + 331C807F294A63A400263BE5 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 331C8086294A63A400263BE5 /* PBXTargetDependency */, + ); + name = RunnerTests; + productName = RunnerTests; + productReference = 331C8081294A63A400263BE5 /* RunnerTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; + 97C146ED1CF9000F007C117D /* Runner */ = { + isa = PBXNativeTarget; + buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */; + buildPhases = ( + 9740EEB61CF901F6004384FC /* Run Script */, + 97C146EA1CF9000F007C117D /* Sources */, + 97C146EB1CF9000F007C117D /* Frameworks */, + 97C146EC1CF9000F007C117D /* Resources */, + 9705A1C41CF9048500538489 /* Embed Frameworks */, + 3B06AD1E1E4923F5004D2608 /* Thin Binary */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = Runner; + productName = Runner; + productReference = 97C146EE1CF9000F007C117D /* Runner.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 97C146E61CF9000F007C117D /* Project object */ = { + isa = PBXProject; + attributes = { + BuildIndependentTargetsInParallel = YES; + LastUpgradeCheck = 1510; + ORGANIZATIONNAME = ""; + TargetAttributes = { + 331C8080294A63A400263BE5 = { + CreatedOnToolsVersion = 14.0; + TestTargetID = 97C146ED1CF9000F007C117D; + }; + 97C146ED1CF9000F007C117D = { + CreatedOnToolsVersion = 7.3.1; + LastSwiftMigration = 1100; + }; + }; + }; + buildConfigurationList = 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */; + compatibilityVersion = "Xcode 9.3"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = 97C146E51CF9000F007C117D; + productRefGroup = 97C146EF1CF9000F007C117D /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 97C146ED1CF9000F007C117D /* Runner */, + 331C8080294A63A400263BE5 /* RunnerTests */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 331C807F294A63A400263BE5 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 97C146EC1CF9000F007C117D /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */, + 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */, + 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */, + 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXShellScriptBuildPhase section */ + 3B06AD1E1E4923F5004D2608 /* Thin Binary */ = { + isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + "${TARGET_BUILD_DIR}/${INFOPLIST_PATH}", + ); + name = "Thin Binary"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin"; + }; + 9740EEB61CF901F6004384FC /* Run Script */ = { + isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "Run Script"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build"; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 331C807D294A63A400263BE5 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 97C146EA1CF9000F007C117D /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */, + 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + 331C8086294A63A400263BE5 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 97C146ED1CF9000F007C117D /* Runner */; + targetProxy = 331C8085294A63A400263BE5 /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin PBXVariantGroup section */ + 97C146FA1CF9000F007C117D /* Main.storyboard */ = { + isa = PBXVariantGroup; + children = ( + 97C146FB1CF9000F007C117D /* Base */, + ); + name = Main.storyboard; + sourceTree = ""; + }; + 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */ = { + isa = PBXVariantGroup; + children = ( + 97C147001CF9000F007C117D /* Base */, + ); + name = LaunchScreen.storyboard; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + 249021D3217E4FDB00AE95B9 /* Profile */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = iphoneos; + SUPPORTED_PLATFORMS = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Profile; + }; + 249021D4217E4FDB00AE95B9 /* Profile */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + ENABLE_BITCODE = NO; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.example.environmentMonitoringApp; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Profile; + }; + 331C8088294A63A400263BE5 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = com.example.environmentMonitoringApp.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; + }; + name = Debug; + }; + 331C8089294A63A400263BE5 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = com.example.environmentMonitoringApp.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; + }; + name = Release; + }; + 331C808A294A63A400263BE5 /* Profile */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = com.example.environmentMonitoringApp.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; + }; + name = Profile; + }; + 97C147031CF9000F007C117D /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = AppIcon; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + MTL_ENABLE_DEBUG_INFO = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 97C147041CF9000F007C117D /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = AppIcon; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = iphoneos; + SUPPORTED_PLATFORMS = iphoneos; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 97C147061CF9000F007C117D /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + ENABLE_BITCODE = NO; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.example.environmentMonitoringApp; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Debug; + }; + 97C147071CF9000F007C117D /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + ENABLE_BITCODE = NO; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.example.environmentMonitoringApp; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 331C8087294A63A400263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 331C8088294A63A400263BE5 /* Debug */, + 331C8089294A63A400263BE5 /* Release */, + 331C808A294A63A400263BE5 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 97C147031CF9000F007C117D /* Debug */, + 97C147041CF9000F007C117D /* Release */, + 249021D3217E4FDB00AE95B9 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 97C147061CF9000F007C117D /* Debug */, + 97C147071CF9000F007C117D /* Release */, + 249021D4217E4FDB00AE95B9 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 97C146E61CF9000F007C117D /* Project object */; +} diff --git a/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..919434a --- /dev/null +++ b/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 0000000..f9b0d7c --- /dev/null +++ b/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,8 @@ + + + + + PreviewsEnabled + + + diff --git a/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme new file mode 100644 index 0000000..e3773d4 --- /dev/null +++ b/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -0,0 +1,101 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ios/Runner.xcworkspace/contents.xcworkspacedata b/ios/Runner.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..1d526a1 --- /dev/null +++ b/ios/Runner.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 0000000..f9b0d7c --- /dev/null +++ b/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,8 @@ + + + + + PreviewsEnabled + + + diff --git a/ios/Runner/AppDelegate.swift b/ios/Runner/AppDelegate.swift new file mode 100644 index 0000000..6266644 --- /dev/null +++ b/ios/Runner/AppDelegate.swift @@ -0,0 +1,13 @@ +import Flutter +import UIKit + +@main +@objc class AppDelegate: FlutterAppDelegate { + override func application( + _ application: UIApplication, + didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? + ) -> Bool { + GeneratedPluginRegistrant.register(with: self) + return super.application(application, didFinishLaunchingWithOptions: launchOptions) + } +} diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 0000000..d36b1fa --- /dev/null +++ b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,122 @@ +{ + "images" : [ + { + "size" : "20x20", + "idiom" : "iphone", + "filename" : "Icon-App-20x20@2x.png", + "scale" : "2x" + }, + { + "size" : "20x20", + "idiom" : "iphone", + "filename" : "Icon-App-20x20@3x.png", + "scale" : "3x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@1x.png", + "scale" : "1x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@2x.png", + "scale" : "2x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@3x.png", + "scale" : "3x" + }, + { + "size" : "40x40", + "idiom" : "iphone", + "filename" : "Icon-App-40x40@2x.png", + "scale" : "2x" + }, + { + "size" : "40x40", + "idiom" : "iphone", + "filename" : "Icon-App-40x40@3x.png", + "scale" : "3x" + }, + { + "size" : "60x60", + "idiom" : "iphone", + "filename" : "Icon-App-60x60@2x.png", + "scale" : "2x" + }, + { + "size" : "60x60", + "idiom" : "iphone", + "filename" : "Icon-App-60x60@3x.png", + "scale" : "3x" + }, + { + "size" : "20x20", + "idiom" : "ipad", + "filename" : "Icon-App-20x20@1x.png", + "scale" : "1x" + }, + { + "size" : "20x20", + "idiom" : "ipad", + "filename" : "Icon-App-20x20@2x.png", + "scale" : "2x" + }, + { + "size" : "29x29", + "idiom" : "ipad", + "filename" : "Icon-App-29x29@1x.png", + "scale" : "1x" + }, + { + "size" : "29x29", + "idiom" : "ipad", + "filename" : "Icon-App-29x29@2x.png", + "scale" : "2x" + }, + { + "size" : "40x40", + "idiom" : "ipad", + "filename" : "Icon-App-40x40@1x.png", + "scale" : "1x" + }, + { + "size" : "40x40", + "idiom" : "ipad", + "filename" : "Icon-App-40x40@2x.png", + "scale" : "2x" + }, + { + "size" : "76x76", + "idiom" : "ipad", + "filename" : "Icon-App-76x76@1x.png", + "scale" : "1x" + }, + { + "size" : "76x76", + "idiom" : "ipad", + "filename" : "Icon-App-76x76@2x.png", + "scale" : "2x" + }, + { + "size" : "83.5x83.5", + "idiom" : "ipad", + "filename" : "Icon-App-83.5x83.5@2x.png", + "scale" : "2x" + }, + { + "size" : "1024x1024", + "idiom" : "ios-marketing", + "filename" : "Icon-App-1024x1024@1x.png", + "scale" : "1x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..179d18c5fa2a3acc88821a6f3fd7c2a007f231a1 GIT binary patch literal 630848 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

ETSf%i>!^_z;aC1VHO#;8H|b#a6mvV> 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 z%0DTbrGlLSvM%7WA(*DrBR_!MZ(30;n4Ilh9=`#s-!RRyW3nl=9{T+wbFH-My94E0 zkIX+Z>#|vj>BAAYCd?OWm9Fpk@dZ43exla*pkFHHPYWJu6SbeR1!zXf`TrX$0FxdN z-@mw8z&l6V@XpZ=9PUjtj38CHZcy^kl;KXdzmy4jZwOms)NqbrYqC<>{u&v5GoHfa zMc3MDVdogE1waa8F>KXvmUt&%vY3n>#aKPWUp`EB%XK(btT4mlM)e3%CJAJ`QA2;V ztl?@Um0vtE>}X;>D6~-Ea)EIt$_BD0mk)5w_r zaI%D@Nn<+hX<>pLDV|Y)>aj>K7+k%c<9u(7)PY`41ehEMjT)sN|Aa(^ANu6k4xhiUqcEK(MBN|*kRl@nXzbB1>+mJ z0OTa;zI5 z@7{B2#}aVO8zh7@RW40@Fv|}1AYM0ygpAJl-1-rTxAPY#VEp;#5O-gvaeMi7D#4e) zcC4`NL89FaUTYlJF5}?$w=2;FiGwkokB-eZG?;p<%(kA&~C(&+$)r8`@-PpNJTtwbngn~x=gAElq3FijrW zAr#!Ujf4c!Y1?aX)&+v~o914n2_%Zi0O@@Hg>8r4LFT_GtU-ZwE3g&@ES5mi$Bw%U z8GS}Pb0V7Gr?nm(hzaZ)91Nk)Blq>^zv*vfVl`C8Ul-#5%vJRN3EV#1g8l6=jE8+c z`hQ1sW5-Ge#r(fM#~^wa@c6~43Py?XD0pf=jWdMu7bl?v2?wZLZD^3iY7LjO1#FEE z;V1VF;AnRWy(RH&i$msq@|=S~^sX%}?rX?I-Ijf^|EEwGrv=Bk2`(jzc z@k|SB&~*KVvIG#8>9^T2*dP$z5u5=QJ*qReYm>wXAdshWH*JV{I8)@HnHMLOEQFz#F^09a8_PLsvMxNB{X zO7*!pE#c-?4|YeT5)9CIR+I&zk$>ni8kvy`iTUKde+%_XNbJ~{?$~sG+nUe5lexq1 z+g-)#?=&icl}wOi?et}nIz;SFbFzuenF3wD0G%{PZIKYz|L%g3>Nce*!vF;Q&} z^f1;zFsSVy=a@79?eJUYASj*$EH(J)35gD#+`NSaGeE_+9g1##uerjgd9%Pcx@ z{LhK!NlGfc!&=vT1GFBK2Rxu)TMhXuiC-FEkb*@JmL|%7QNYFg94;5<@WrE#;mgOL zz_-sog_q|KRqDFEsZMiM%R10#1!y@qY;4QX;hX|9!^}rZB0M#kkiWwtX&PH5%67lF zhKu(x`i=0Uct%LG2DOk1577-@Qx`;=IZTh%w2BDYZLzM=@{0rcH!p! z7F-o2%ob}K^vnT9(g~l)Rw>}v2slG-3|)e@+-d2-!d(J*HUI#p>GxoDr-TT3 zd~1>{g8jhDgfr{o9JjS;ojOfF022V1k`!HE=bG1lQM-;&|KERSUs(W9bxm@o$aPLi z%amey4Ep!g{g?3U_(J*auMMMsxPtQBgMk&9nc4`BNI0-IKL667XJrLbOSrK&g`a<`lPuha(=(~nwU^v$1{zjRL+O?=UF`vK=z`_0#Ifm(B;AMk@U4R?~Ey16jH> ztpQ<`-W%5MKYdn4C!fU!+7*C=tyZ)oG=905>lhSd~AK-W2{73lPPyRiu>lsvX4%5*V>~HNWKY#Rt6B=zUuOaX;g zk>-QiA0&2>fsf!^@LP`24#U@cj5vF)NiZ<)`3(U>FI~n9_Y6 z@!wehDCm{OSu>V5_P5{{AKX!Y?Rblf@IG;D%4C6fd~M7GhLFg$qi8gVknu0Zkl8gR z9NbZLBCLlNl8Af4@i|985k5?`k?Mwdy)puiy4DP*_8qUyM=ECe+?efGQjtT7<^Q?AafqmU?SZkgO4Wq zudgZ<7vOYW!kwMIavedJfI-2>Ego()4j8LI3gy1=;F%sGw$ zYQhJ-!cH*7yGX?@O1URR!y??&s`RXt7OJ_p2*UH{??N{ul{q5fR=jhItf}aSVA)7k zYMv`No$0;4V*~*A_6E@JX=?xs8b~o2AX=sA9qRq&^VMpePR;WOP*juK(v9}EcW$?Etl?brCn%ZQ!W;icu>7z}jwe#h#U>S9pG}Uxa=Nn|S zT(cyj zCdXIHb9ngb8#ulCrA?ctHS~OJI!w4}P7}yF+khwvxOKD(zx?nX)ZaaYC&$mASByan z2Ue3Wm^R01%}qTkv;wGVSX7lVadqjrjG3%)1?U;g91?(-bGkGHWzC2QVxBGYuQC_7 zX#d2-+vgMzP-*%dY&EbwOPYM9nIj7Uem{=#Ut2=HU`)A-;_qTG=wi}t9uiUj#RD+q z0Ybq52?Rv2-kAk~ztq?lI+;RB!8Jev9IjcH{JtqyDb0Fi0_^GFo|yXYXnzXt-PsGG z|Ht%owAI*N$G&R~Xaz5hwFSWG#SBJ+QjP0s?Sc-H#f4%5i1Dv#FXbQBi!KVd=7#+e zCI{Pa`)~*D9AWhTzO`a-=GQT7sXoM4v{T(&kefxO4u9$#EY=&r^6PE}t=8MdVjvd? z^PCZs(qnM>`Q#q}&h3Py%rxsQ#YEK>7Gm^`AjVi^=y(jM^(Xfqt#Q^-|pDQ&zz;weFlh7Gmp_jdcr660)E8EcX7HFu6vEr^c>J>7@X zna+A~I$tYBbkZ-B6~dq=Y|eXH%gRay{ry+ky5Ve5!`Zx20ubWqX^z7bnS6KBuwB{~zb0=B{iFBxQPZy^{VnPV;yIDZ$3s8+!Fur-jvL0sh5( zjKZRaCo4Fc*Kj!P!QrF_lYvli0;F`7hbc>r7I4$|LgtZ*w9;kmv%wV<4ErWANMcko zzf*Tp6lUs4@YE}qfCoLxd_;3Q{yEuJzL8|iJjr98hPuLi7Mwo> zZF3qxeu?nwCd@#3*>t0c1tTuldmaVS^g5T&T!*Dem+0F2e93M#2qwDoO7qv*;onwk z=tf%QBki{e{WPed}lk{_>-H@Z|U$ z>iGiXXrO(kr8e~q`z_3RQ`%b;0@PXvfPuF9HXDHSn14(QsLj3&v&?kEwHZiZB6rs; z^`HLjvPLNP1pq$uaAsjq50u zfH1IGOCK&wU;*NQ_JtP>T>9sP*A+VbWrY8PC!mUbww<2L zn5fNj6jsdUD>&R9!_oExZXa#K-5WdFWk5x5Bs>_k8|6hRnAlD8TvZ(|zA!L9e4qI&F1jf_!R5A5_{;WPDL$ zPYgf#deb^8P0&wlOKJS+JZH?D9T%2T4z>4~h7QvL+KrRJ^Flbhv^~(;V`SomSXtK* z3P8%4QpqZ#w1L7fal>>NjfEr+=HuJ7IBn zaSHYtPzPjMa+tXVYt}8dp^a9?$8otizOnfVvfu^n3BkCVlz&m8K}qND2J69R6Jr9> z3IM{Y+N7zq5-*27igPlgU!?j_8)mBISeL zz)xkFz9h3KLgXD2{&79&8{sJAYmxb%Nzl{d>=kZmZi7p-t-~PrmVMsPe*3-;xZy5W z)M%Ucc{OOc7@a~7lWb?tMwe_s|CC~eFo27KZdRGj{3NC zfIJ(3A+x-S{Z@p@1RzX1HxGBV@aa5A0o<3Nufk%v7*FBpq?c z(Oe^;CY_+bruZ|kdY0f6{7*Vxd}Puw_}|TgEx2{K4F|gu#rzAybT$PR^FRPL4gm1# zy_G>fN%4fcEKJ#ni8@@8nNb|2M210Sj(r>vP?V(m#b%C zquZfa3%HI@%U&9W-0npPkOj5H?#ZaZ&{Bj2at&3S;rHNju19)rsBt&_Kx=^SUoYTt zRjF7Id!rKe$7Q$r69;JX?rxzIJ01AJInHCg1Y;@F7^bPpjjvXgq_I%Cwj5oby&A}P zem7gM$8;p>XaOi%1|gleLG}e7luZ|yTL3AUN3U5B6eY=Ggk4ZP5@?6SLQ{w18guvt zGJAuy=6y@op1ZD`g%#{?uAJAF zV5$f6l=^NpUI_)Fp9LTdeODaX*7xLd!Rt@YpPOH>CFAFD3vqkG`?gtsy1bF9BlF&7 zw;`r{+rhHqY6JkNUB+DWI(46f@1A`QfBUchUIqL6?!{-YH`!Ak8#P&J=ql5^i0cKy zW0@5q!XF6?WSOf(DG}U>@S;CFxx*kfZBDO@9DZzuBYr9Qm<8IyIY156+0{9m%`V{8 z*)w?l`mwUe*qQDHxtd!MsD+Oh0%11$&4V2nkB0CMfA|W816GtiyS5z5hn3!Vyy;f~2;nZ3S0FL%1@L&Dxt}_3({?3{6qmd-) za2Q8)3fJ`Vb69A1kAl5W8^&4r%rCXiyb6+Mm^RcTFN}G46{Mo0x#auX(WV|ZXBcL) zUaXMJ^}rtc!o`{ZUVmUk1MFNPp+RBRaVePK%T}XpQn;mwUG5=6PEqth=y6b*c+475 z!`@h@jkB&H4CxE&(=M%s9!HJL-(arPyjCBf&2S8+`( zjkQS0>LWWVOP(^k)$NKQbL&O~H_7cpx>q^e<_lSc5&dwkVkxXun#i;H8h&y(go8;h zV%|hzA2!16A?8hc*|9u34`fh+vk7{x-9Bw=*r#Xn9FhIrcJ3#hJGzCRF`JDSt3MRUn zH{WW9r6~$(+nd=YTc0MIkZp^{>#;+C%`GIGg2W>Fvt1GPiSMVZJX6r+2+?@h;tIVP z34^~U8tXWN{>$tD$giv5?VxR$`;o0CQ$Z`>nfY(M?c;|-x5~U60Vj@ z_~zMX@a?nD;M0fy8Gd;AIV{$fus=P3VL8xDK|bcJXFZW)UZU}o5Z9Qr&)pzea!9;% z*k)PW3N7;~S%D4bn-j`@7360w;rRRoeD(M<==X81|vSSO7*t%o%V(kisz6$_=2_u>g>$E`_lKAoF^Y ziVM?VQRMI*`Ps7+Th`Yf1rWv(fRo~!-2my#s(GycFmNp~{=}Fo&2+(rLi&~4_n3u% zFn*F&qi^X;&Fo2bp9o>c6oRz~;Do8heOy}|;9$Dv#g`J%-uHj9rx}xfFzv4DN@a1V zC?KC)L#eaCRCfS?V~pT*{gH-gMMB&x z!81hm&5b#+>yJqtwJ*Ij=f*Z(t8|Af0gwTFaIyd?`^p#G^QpJ{lCed`DgjfF?v4t$ zv)xx?iYEH_K_;^&$c+sGxP*nv;a=^dUP^G5MczR9dta|rHVLGWue87lGoVZdJ(X_o z##X6<3|6%aEamc-2)=MoEHf|k8pBuwi*?OL$}MQgDhV~4g425;3*n6qE6?EahDRpm zncntDOmp2b!15lpw7B{}SL%3uWqJGcW~)9uPt)YOOOH@HkFUwE_ngI&z3$?dF`N%yx* zqLpSkw5yz<7nbx8YLbTUC}ZgeL0+l15;SjJ4#tV|; zmt_lmxRL{rSs*g;IJ3;TRw3>4AHv@-OCsohVp`+(4N1oyY_^IcPO%aGd>x?KNQr5b zdMfZ7GXEE|Gx+3(-^1U0^1s2Wizo2v@(JvY_uyc90F??DR&j$sb|we&%El!Rfi3Od z7k)RcbH?RYSvQ0kOV<4w8wt69f^6RX0b^(ycfPz5jxS!oS5H1u%)f&`DzkAOs4fEt z)18CWxS}AZ-!EZ29>TjQ0Qie{VD`m*`0nvbrL8K*g^Iu)2BiaQTCW*5wEs{7fEuH5 z7uM&KP!($XRP^qCsmyGZg+U2UD?)ffIv;!r^aoZjAfl`Q^sHc#d(O6mzwKWZkIY9G zq(zqOeHRFkYxLc^7uJ%%1{mZpShoef3WWP#vica!DA@BE4NVuFdt+yceNJ{ zTq=#{vZ}1+SQ;h}8ULUC_y+9lj2w))sQQVEm`BxKEsX%+Da__em<&zuKjZsfQvfQ^ z0x2EH&1wBrW&+a>1@F3oaj$^g(HP#lwFkfW;I?&F0_*$D;YdQ*p%Z+Z&EH`B3rZVj zuG*OHqfh(kQs;)hSn5dm=xa_s^8hZuTxs1>%(^dlCJR2MB8I~jV89B0{(S(|sqjUwbQ*TTZ(L}I^Nv3F<3XXA z|52}muV2mK`Q=&(2FlV1Y6@Y5)-;|De!5o}%{}$ox=JMaFU@c3n#AUDjadmJt7YX8~gY12TG1>2!vRsVmg`3&d$!hF`*f$dG2asg(5<4GL zF%lZD3%MtPITCCC$41u;g=>D z`Ij{Fld480ex-<}>s*q<;=$+x)+L%~4CNbKQ3Z(_o6@d_#T$3OWWJF3b()%oRNMA> z;(iW_EOb#n_#fF204fV@e1k2_Btevf&p?n~#vLx1_?pf^%P-%5m3;m&s9X=O78h{2 zxPZ?e{RzH!^e6b{`M<*1{FRD`jwb&q&|kGy!UE^z$?8t*uJrcmh|VKIcfipNRSS=J2QJQQ3p*2Rg z^(4IYa`)CA{PnNihbJdz@W(G6sKHw+ja6-f4+2jJNLp6|HENVESNOaK!_uV&BuyP! zDqy;&bt#p_0D$&`E=-`Z6zPD?D%1PIqzyEsYQw5)p@8sBg-r@TMfeBvdW8;H zR#g^<)W-6M0?KLazcg71v}F=9h^xgKuC5mF-g`&zvv-f+om+d*!`Kp_%XY@0sjV-9 z2Qsk9Gt40ohWMGQfOxe{XGbReGh^aUQSnt~1sj;n5w_m^1_(v6wLxQR9|vn8bv9Xo z-mEnzG{_PB!e1+i!D^uZ+%N{Pcs~PjkRFr351G&7Sq0x7FBQ{_%(I2ptY5-HeCX;* zsuY3;lM?P#eL(bcKCj?nUMt3XW$;YN_OFFm0>djD)^t8XZ-1ITsMrk^C}C;8SHO*7 z3GeLmmFfSk3T&5f!(ju~JhuK9>vC#@Y#5vnQz4>tNojmE>Hz0Ru&>y9tYF3B1;3wy zchE~O>IzFfAAv0(E0%7+K7 zU|$kAfZY!zW$B3!iEn&YhQ3L;ETEpuhTUtL{)jeZ_nL;#{s|}2QNylG)=(s5HwF8@ z3E~Ylb!g&t-3^);$W69YbJZE=kwgQep|Im-(!BMGLIw0g=Ktx*BlyF&{|JBc@&67r z%t49;Oa>F!8|}lYS}Os7t>2r+!2dSWK`)Q7=6S8247-IaXU&5RRoN*9AtbuT~QX7(?b(vTe z(JBwkmn{(}*&mJ!ZX#YdxJ!;A*x|zW@LAFYdv; zo4e5KmFhmmF(^bB-M;CH5mYQ}aYcpkSw|s;GTE;|nOv(}@(Z034mJH(D-+Dm1WhcA z`MJsuZ`sy#w0KWrpCGPtSyg1>2cLKD`yI{~ACAb4EIgmR$AKWB0o~gAGjLnsn%Vcq zGxWt@DeeCaBLFB=^pKcR6yO9;C;*sX^!{?7qRD^vY5`}nrAZ+P%2J@$V{`)RrbsX; zO$M!k!M!#y1C~Y@gv>t*E-=sij}L}!Z8sh*-6;a@euS1g7+d0WUMYbS3INC|$<^l0 zC2n~@du?rEPjE;Iiuq6o=0Zg4R9c)aC0R~L<#JK5j3M2bEnOeJk8^|qG_(eJa=L`e z1quL1aARwr+`_=|ydGIav|>rr`BMY3{6HE;hQdDa~5vEB819XYNkQx5|_JrMb)att40GvC^)RmR{uW zL9!k8JK>6uBWk*8=pp328n;XLU631>^c9a;u5`obWbSs^_c5}Hi9>09ZM9!^0Vh|- zaC-F$K7R0f_~gOw;o+-qp(rcOcot(QM5&m6%0Zuk@U6tKASB2L%zrXa+I0a%QL0P;^W`NxKYIkKm|`zb?88EB*WrD6iu}0;D(M)5YBag^HPip z3GtkOQ2GeLY81>Tovl|Z2$62w138*b`Ddd4qlOy4uPeB*KZRd?bO&x7Z3k_(?8Vep zlTtDMzyI_hJbiht)&gFub#48iX%|&SfTcc)8L6G+iI6&tU|lIw;r;0V-oLXCzy9c+ z%3eX5)nWq|g&feK<+>=`6yUSVC2ILi5Wkhy^rP7_`e38a@*4N5!mHAlwD^AHGHQ$a zLi>}Qq+2YC3D1Q<#o+mvCmLr=R6HKcD zfGBi17?*H3F0Bg?F`uEVM=ga)!k_@y9TqCR9Qxg(cKpPcmZOCRupLw|A*cu-jRL!w z$*Nhr3<*w{h>`0th2RmI{7-vI^Iw^QxpDE@Op-;?e@v-L(ez)%mZ+7>$!w|PsgyQV zr9b+@2mn!dMX=+R#F#8wm^DFtG;SUgh4IT5F4F_J{!)5K6}-||x-88-w1^=%%fffb z;a%j%lbt`)Uwn_^C7jOI@bqk@Tm&#Xz}~oIK}nMX`RBXhZO7>EbYU5syIC-!&5|LA zyMnqYf6)e3WTBR$SX1{i!UFy^wIEvS&6m$%x6T)5KsREem;>%ifOM03p= zvs5nOY7vk&4a=saSGqpYR-myi`@Q4xdZTIP#D20L4Fmb63#_$1+Q+fzj1FcZz6+!I zN9O;VXP?7wzy4eJyHEcQm<-1-8I7S|_SFY{{*ee*wFP*=YeI%MGwYn6n%-~)Qk)K{ zTVh`=a5mNr|@4_c+eldrz7htqxd2Xmj?_uJa7Kfj8_fg(EzrmWBBpiBlzV{?!xMu$ME3UF%-oF zit$hjfa(~z5Hr1&I$#@W!e;9VCYTn``0&;?S2QS#6LeibA8$03uGxAhj6i}50XW{O zZHrFJ&a(v644nyEmi+l$z(g?Ti{N!x;Q)W1Mg3=tgBAohe#u*Hyu8K791bd)(ID%i8>a;KY+W7hkCjdCuf?s`fSET^F&c%-tZ13^&Gx)=& z58>qeN(Gt(!;?Taqwp7qR;j)2*#{)m_NZ_X9RDk-R<{TO4 zK?&OZV0QqAXtF--SxXS$Yp!LTx~GY9OyGcwHO5>)3lt>)Sk;P29`%LY@4)sXzJur+ z(@v5AV^S6{>=&>z#7_y6fl%2OaO@`iQfFyk3_J+{i19}){l!wpA3!+JY#-quOP~Sn ziQGC3=>S$g3NZ#46JS-tISPW#mul?Mn&M#Ev#yKuZj$_fO*YfpyAsED=QlUgn48qO zZ|iC_8K5>Zq+Y(#;CuU9!n1%*!4vZ(Y24A zeOI!@Vq|ljt7Q#sU_S37!?(#YrLVY!)WN*zx=RTIn%}=h^6}hWX#gZD=50E;!HK@% zkMD(#z+@$10!c?A-$GpY@{V>P^^f5d?d#tqnsQrI> z@&jy-x0G3VujnfVT>0us&M-DyqDwzp7NTr=*j}B!$FOm?7g~zELDqrnTg*J0hl&DA)vuNb8jCo3{luVfEhKL-_Cin-Af1 zwt!E+d8{?;wTuNV0YgL8p%&<3wbtG!NQ+JeJ`CAH*CvkSOI zXtHJ&1H@EY{k{|?<(W%;C<7*(>a~^wEZRS{Bb?mCiv?g|;d!8~n}GRc5009#ghH9j zdXfV+qQZ@YYdCq)obdfEg87k_Ag8glKK6>Smda;&e`f+W54PZ)n>(;G9eS1?U2qV0 zwS9GR39nAB;D;y2@Z`m*YID%n$;njkP)ULbEd`Sg4R zm&?jpDy0<17z1H#Tp*?cp{x|PhK2e&9h63JpaZumD}X|$=?jA(5|4uJIQ>%he|se1 zaNScvn@cmcIK~Lu+z1K?9~QSNX9G~elAPmNo{!Zy!E4vuU+@krb6_NNbF+cL>Lk9x!@xiqD{K@0J_ z;WP%l>rku6&U=#COe}xC4dPJ`*Sj;h#T0EASPq&0fBF75@Y`?x4u1RX-^1=?2lggA zikU>po8Y$*~C@44= znY+7!9)35^aGhW*fYnN>h}^YwIm9X8RB1G(gR)eN+vRc%%WCb0l1IJg>PtI-z7KT` zq;Yi+3Gjmkf@S`FO+0D-$i0AD1c0$9-~^^%nsj3Ng!J>XTk8PJh-$NNnpP3a4<~wp zS#umP#IlVs2u|C+l2SPh?00)X{u4ObUeaC?6X{@cI$ z0N%fQ2m>WJBH#a1q@c|%Y33Z64q8X^m4w%`8eU#i@Ct*hnP76rppxbog(smezbAYX z{(k2nve1Z)#_|5tzl^`3cy(1knxRV=*J_cN;B4GzZ1Nu{l|cW z2oo~wXu)x|SletF{X$#R)L@%R_FDqEC}=?g3Kh_L1FaNx$7?v8_Fy_JbyfvW$l@w$ zU!{oyIJM53DoReIJ8uQ=Q0FVRlVi(EhAkl9P`B}DqT1WxrB*h?zycatZib6LZzCgt z_Cv#b2sYmiUopBd;wM4?yWw0X00@BSK6D!na*L!mF7C52BKfSTJ%;5t_Sp1vj>=!} zcn>#6xV5?-PCmig)J_W|GQFfzbY5<{lJ}#Iv~S(GqUK(7n}ML8F@SG$#kI&N-*MX; z&CoOja_a(D*Y?8om@6sV?bc|oGJ41EStWrl6e4_Z{5?E8{vJNL|2z2P!SCSs;wckSL@Ju0ACteQWYec!F9C*D5n#=wI`Z_H#iCk2x6S>e^rHhg}$ zNzXS9g*GE0V6mFPeDMgLzPb+&o__~BlRem(?t`o=r4iK{$@U|i;~XLwk$4>q`*5(k z1%L6QTkvmx^#OeM>Kwj*bq2lB0Q#eW2_jefbuqUK&FI&#SXFRdELG~iF$x0=7Dd5s zZTxT1-*jCTP?e<;Hlaq2B3Ub9S4w7bPg*HQ)X*~sdRTy;=8wv8vwt3qp9p-7$AH`+TyTQ;5Vs7fO*^N9iT&{O1pet?zK16-PhmJH zl`lOq>vc`O(^?qGwf!UjpvVQ-GztvnixrFqJ=ngv3m?9B1Ag`4J8*MGm9TeJ#NTcJ~>}0_abx$K&^hyFo@g=#<{w1 zT%_yh32owjLudw4F|6wvR%;!@LHV-R()yUwzAOu3V0DnXk3+HiE<+HZ}5R z8t-JL9O3`;zS#7{A}Ek+J9pst=XWpfq}=TLokIHoDVHJhauOv@eg+L%WYjcMoWXN& zr^sr;UhM%QGLIW&2)1S>>zZQJr`?p^b^r^&eVKJ@@f)Fc84 zFO46O)5L(F&p-N;BlG`{U;Yhz_V5qz*`q(e{$vLZr@M-HCjz}TZ`-->qMRjQ%w65K zcj7KR2};;`3Ghh{jd3|Z+b8U>QJZHMA6b z(6|1Y1(}IT2j^#Yp^a+DlNkWC6h6X%YYk75oncER|&@R8;-N z5)St!@K+z+fjdXrX8tJtKrCFzU4mjsND23!zJ`DL)AuT~z;M{pk@HboZ_=&laXx*#y*JY8YHB3fBM7 zhd88ygL8-XRs?s#5$=AUHP6lIxxdwvGw! zAg;mpCPwRBnIM=L$6;yHH){776@=2%rUK((;L<*R3iTaL{|PxLfkEwJ5CCKZQ`zGx zuwcp1i9%>$gkt{ZwQ^}dD~6E~O1N><z0E#PReR>HJzUoDi&g-Vl&mI$SGF{lH^EJAbUMqvaCI^Mui zG5_!G4b*l9sBcaCIBi+(je2gZ z=xeLRa!6Q&`={H$CrerSu`_#=9-g>b_s|e@As-gU0O-(o>T$$OXMV=9pE)=UFNR3p z`y#UCy%zb3=w$ztimu)AJ99IX+_d#Oex8FcQ!WyfbLJ&Pa*0laJVzMCvvqwm6$s&i zn9&F%|M5tr>kprGPI+Sco1cfq8oEwcP(1gdy(|63b1<|n!x;@V zf|7z#efRuJ`2NM0@GlR33!gpuJzUIR!`^fchP}RuU~RPl*%cd@lI4sg!to0a($-$J zXveyZKmz^{jBcyV`EEl(Moxg{1e{cAll73s$`_j^5fdHxhW{^9p99FE|fr4n^hbS=vBwD)M_>D~pxV0F@KwN?=k*D@D;31|l%=*FM_Xs=^;Cmxqrt z^g=*nVc;`jE^B~GlgP*y$BRFUFO=GvE83!;!&0UJZY_SwcT;2M69{EG=z;XVN11)H=lNq==&dx(_qz}%-m ziXNT|aj!>sv&;mhl>N=(7&w?*y&|L%Qe$l`Rzi9(q>sGO;~A`;S0|#1=!ll!_#yY z+i|bZ;sVsXU^WJ{ym)@0-2&E1*ixAwjKad5YEK$#puz|&a9g4^!K2fqjtMd8sgBnc z|27k6;i`;=UW7N|A|TUy+*|jX5-cGFAldDW>k6t>Z4Dxf$IQyxov(Jwr7$P(J@3 zb??EY$&nleMpk{UefM~W@fZv+0CpFE0pwsO@-s|X_BNi$G_FC3;fRETSisDHGB5 z9ED{A@T$=MhAy0MHNJ&ZrWqr&{h#T=!h8=-9bJM;XAT=XNwbZ3?}b&IaS$74eMY7C z(bG-%@cLaP09akyg5||oSXr9Yw*QmTnScbU|I(O~7_B1}M9l14S^zMDGsjlor$2ZV zUOKw0w3td`f?|CzIP%8`V>r0!tlQmFm>WcN_J>U6qpboSZyDE>y- zdi5_%{PdXF)DF+QGf0O^hLN=Uab_H&g^Y{G1ZxsuqYzjV3ME7_!ayp7pn?KA|8{(A zn^qt!z>k-k?Z6>hXcH?5{xRDWNj!5AOa_-Nsw~z7D2$28v+W5y+MK}Ag%0daI&fmK ztL(#Vf9!Y#Ra?QP^c7okqK*l9H=uhyvr+r`Hw-7CyW??8CQ8)^_u3hu9uRoR2{8ZV$s04oyTUpOV` z#A(V?eu^UuS`!Xc`YVVj5YuDd*f@|~fYo@Z0^Ag>Za*pB=^N`8)!mC7UfGzV9b`m^ z-(g#+2RE6hBqAak8tdeU`iRzG8+6Zu8_t?OH0~xGk)F!c0BO*ct#>+XZyZ5OWch|z z7`(k*!(liDT$Qt_<`m{zNoPzkNp-wK63~4meukU!vzXV2b5LCYj<`v*+yGGUx(?;0 z9mhuWmBIhgdN6k;0403!=rj28(KYz+)<477tJh#}yba5<=t;Y0y!@9;a}i?D^~9*{ ziTJ@cl$%BGK1@nf@&7jkEKL;iMtn?9I)nKxbPckg^BeEF*X7GO*Lfw&q0#cE$zBu^y9&aq^~A zJp&YVV4Y`fcN zKT*Lqjx(x;%4E%msYXDAcizLkHta!$e0z5U=TEM{n-`B6##$IA(lUjKutZMiBHegl z2*JIggfH%_!ascQB|Ln(33Ic3b)$*`AnO#ZH1i!h`*UHv6djqta5z?sl_1n0IMWAE_NQbM>>Ss)18TO@`q0Ux>n+Yj3mN1@$11R8?Fwc zSmZX0oG}qVft8A>ZoH^lCf|P#1p}E!jsSP1>6>RdMW}gT{yLK_2~M!0!qXWoiNY|f z>aP_f5GK(&z6(6F2OFM8!I)7L@&8nc0L)f4#o0jjb_buS+J;(0m3@p6kJ=i@6rzK` zg+T@b3~$%TTt6h?MI3IE1xr=;Tbph#u)`5%JHAk zo)U)nx26l|BLTzZ9YsffeeEj&*Ptw8YB)uEGixdq&IEH*y~eb(l#Q-{3E|2P3%I+6 zXTeC}D9)V~OqoiZFpsw7eL`sGkf=?tJd?w4tj8e}g3L4Z(L>=6`y~maBKU3bIX?KO zBy^bZ#C}+fq6r4 zr#&~xudR*wC6R3v5z*r89tTj5^6i6oO#!lQ3OEfFxh>EfIB-4cqBM$bM-a)18l6Zq?o{tMiD_9fhV{uM0EuE6r#0hknH zD2j<07JI-|56|W!i2+B5kf2QGtc*;6h1O;@2({K42>s_9vZbr8ld#_UabhF~k|`x< z2GX+0ubf%sUFdcDu(7iN8#@o+-t({F{y zj0CE1cRD#-I(tlIdA7a{@BQ)y$bL`jh(i(Gc~{3u-`teygUtVYuVV<>%m}D-4M^l8 zLp3m7)yI?4+^|aBlp`rca5EV&^U~gi0SzPI9qyUkROPcU2e$v7(V;j05C{*f&kfHR zNvK-<*loh`cjiI7!^Q*)M9h!dZfXc5%P0gs04#V$6T^n{#AnEqqw~L`2NvL+H%`N; zW9DX^#Me%rsvZDg*7+W4dF+j~0N~eOLEi1a++1JfL19DS;ok}*h{=)tjwT-n2QvQ~ z>)UYU_yPF-tEb_$v&Z1{(G}GP{A9*=MB4V3Pjr_-CK8#b2b&Xh`~PgW(6-&VVI(k` zMWHn&oT@Z3@2C}!`4DB+CcKwNPU1S56BGy{1c+7toiCG^@dI*$Z}tf~ztU)YsI_A> z15j%QO}Ug!d!fDC2@VS4EYAr$%%6-1GIG1xqdlamFk&~Xc>L2R zb!z{Vl+`ph_CiHzK*nDxmH3C&06p)C%>eV^u$%ejRa`L+2}I zcvJjJ{jpvhhmd(P=1S5CmvU_bk0BAC?dWiOGs@mRb3QZ*g#!RfGaa~iXkeWGdrSoDv)IQv0d~*faVDJ9K!@|?4c9VQaO6Wvqq8#1Qd^KJ-Fs@J)y}C z`W860&{4twTytp7MEyXd_@&l#vmkKP9nDdhYISWn5hi;xS)Hh$uDqG2Z^XsGz5w*; z8{-4R)J(66>Nml-L}A&XC>q+73}4y@KvSwAra2-aRlIuR(1dOKoTU`J`>1Y;<^Ja-D=URJ!hX zylVlEZ;I{8H#h&}#eoJ`twH?;mnB@xbV^;SXrD2oR_uPgQfGpE#TJu zr|{_)58?AWPhf96fqtH;n+|QOU%K1n!l|s6&UW3|a-!FNbQCz5C_&KSg&BD5{4w~g zcV2-rCl9!Kgfmm&;R+DXKDMZ77;wBfMyF&pyx(3S6=Q*8Ff6>Seh-=aj!=KQ$`g5} zOajymzhV0EqqP9E20&(P%5&o*&ff4-+@j2;u#rCK@=2T}B6?_>~^nE$Ao@V2>+78AUsuJcP zzHUvF?K|QwI>pOPtkS{=c`zcu0Tm&kqnQ7m3YBQJ0^5S;cb8P+$*U^0Dx%jCtZ#xG zUOqg4+s}t;Eovd9-b*sU%@N(#4Sge}5+Y!@LF{vXHaFu&9cl9$MH|NOh1s5OAlJT% z5dO}N8n^yhG5;^Zc(tL^Q>mGQPu4embc80G{zU#101c@|0MH~;tmgM6Vigt{d1L2W z^V>`_(-hHl49sE8?Vs1RXj5D+l5zzn1>a7^Yh;`1BaPwUhBYWi>m^~4f~fUymD ztJ&r>1>#|-T{u%n9wmKPm%>9{M&D}NYDlRp>1m^QoVLx1%g5QgWK{V4j6=WH{SD@g z8!wI_^I!OGL@a_m_>7l-Wd6}p`;7-z;V*yvNAPIbA7k?ZU&gJ21RCR?NS=_!~Osl-|*UR*d>`iH_Tf5>}Sx;PAmk zxN`9n+`RkL801((T*ijT0k|gOv;PpT9{twag zhHcTqSOz!2l=$W`ivE(s@u3v}M7b!VsTe=)aUX5}_jbo{)4*#55w{CY*PE`5jP7ce1 z8Mt!cIQ--Xm(}fO;Psz!p6$pNok!@K)SX=kPqqss0C=`r8gJsl-InLZ=Dcg1%guF# z{)?Y}rrv40ab3=hySajtGTbAAZ7-7HI+PRcQO($Uy2IhFk!sn!IWYN&e1TX%v=0TZ z{y!=8$Hs9V8jT&TMPS0tO|-f;dT}oc=_1BBKLp_EB>_YeM+l>$?LqQAN$;fL3!mGM zop8|^CPr|vI-Dr@Fy!4rKZlo=x{xn-)x4qb#)p}VS|oI100*UmTGA{{*;x9;3J=|L zqY-0n{!tqWRsUDFQ2;PDS|*vxk9dpyUg>6VY_Y2Z0H_6^oP8EDblOU~Uwa(T0UsQ{=Tsj!vXtZFT98oz*~rw}Nqg^~hB>w+I2MEw<#lD_2lWM}hi~uHq|C5 znktYDGQwy*Hj(6QK&q5Vdi$?i1sq0bf>TS*HIY0nCvf8t-uz!xH~+}^Pl^#N%`QVP z@4>hjD`rj8JP~(9VT<-W-)OwkB)ZM*Cp>k>q7dlxE!^sXjSi1$co_r2B?|ljf77oFI`NJ+;n!Wi9VfGwHbvR>& zQYsbF3#X63|M8n|D&p(T{iiM}fFcVrK^Q|)ueEhHf-1b_-5HNzZ5Km3U^ zkuDrxj`oW%tY+Ohxr2a+poy{16Er%%QA>~aGeY0ko7~bk*hBUC(Rd7}jx50s-#i0n zj~{45(}dVp>PGO^d2M4C);4$Hv#%b(uRnhP>$^jkne9WCXD}X5^sT*_TW_asu{iWz zuW(>oK)E}HORpY-cV0UUuUmADUgc#^0@ z7*m&y3WKQC`_X=WBGIv0=A7wSje#)=NQ{30t4W}QCPr`)Iw~Z72Fl3q19*Q1^t_F6 zf*m(Ym|LF_#F;404+>-kxrrJ8+T>wSO5bVrK;cG~W!1yy%wvA8>6uAZTvXnf-xv)n zTxz)QKG_;8um8_?C)(*>=0^d6^CcwD^ePz#&Yck8}*phRKoF}CT{fdGg6ilH|1pOTpCArQ_o}V?a(N4wV zQZo+Wvv~hb<*cbMnwQu)Y%@Fr1~N&q0dFhs8X1k~cYAWDUG_#gp8HA1Dp5g#k8{Nm z`C3jxFpt~|rvcDLQWyf)WV>8%)FEnqg-`2ugeqau1b?ch5kb>X7h7+W<2G8V=7y)X z%|-y}QkT^?jT>w`ZkZD(N#!e5DBsmx~2!HYMe}dKZd$783AC_j8 zl`c-Ofl0 zp;iWcnCo^cr-}WI0)T$589*fPRCEAzf+)QzDD9FY418wB%QEU2Ge2%zojQBy7!V8r zM%@AWzg4q?V0)ClK8SHahHd$6I9xYD6bm9q@Is*K`6&o{ z7vR{T1@HO4QD6ry*15h>%oOwg<(*ad?CZzy;TI2JVPOUq7iXa?3K&l&t`6%{qHrGc zWzeRbCyCAlI4teAcL zAX9}*$&V3e+*cDWV98k<4aGNDd>oR;%iPEwbI0YSsxcDbQvkrhB17; zx~JYFKHB*z-Fno*Da2olh+sqJfowV(Yv`IN3#Dr~X0v_}>^`fDSg-yV!Y|LXQ$O@= z&>_BFX!BAEhldh;e}@yTrGmaZO6h&TNJ+H&f zoLJ`d8yte^Qne#ZWS-B*a}v(S5k#-!@5!~oQ}(((p8ponRZu4=R5QMHyjKiTOnkgp zs;{WI8J?Vr%f|h#jze15k$#_Q!5=JbmOUvIFa>cdg82oKlqJ6%p_PQWex*&V(ZN3F zMF>rG)C0sWhx*Fwm^8J^OlMly(||8EV70^e1gVgeC{Dj188Hld6j;0z_U2WEPMg5B z`yaw*4?cpcci)56&HGT4V|DY7jH0^vr&ibD`N$F{X*eq&g?h)3kRv1-kah2Cmq!z{ zbT&lrIJLjZx-+1rOnlQ;-*=gCFjIek#MT$c+#_?;$y9IIq-_tVc zulEOFd-^KyCl43$7YYuv9A7*S~%U|Lvcy!B_WJq1W%I8$85E z8wSkX`Z}hM2mnm@Kr~w#?GDxF+_3|2{>mBn&gD~z`JbQZD<2dxxHt7gSna-Hdm#*C zS%6aazq>wGH-}4uOx>6+&g3wwLX`>SIeyU9HvgHhV@WEHZmq3j$9TMg_UVa5k*aos zsXM1dGG{6|oFsdc^E)6dlW$+hYGLxoI?z;34bdNh3E??chC&|aJHYxJu$lwXn+#Zi zp%tjuhy|8bvtzB9ec?1YGP~|v5pw zMzw_uqaO61T$D+zQPMM73uvyeJfm;%k)gK^C#jDRkRE64K0Pt`v@)L`%c#86jqraw7 z@o6*txP|jWd;p{*9PK1*R(_d2Q`&(jfV&xLQQQ$csd(F|a#dX+VP}VKsPVzmSAIK6~&X{MQfu5Y~1c!P@R4SR5?D z(%dpkl+FLx6c&nQdDJWC*3CZ3|#R0M)fGlD2ki z+hzgNbr8q~;_b%Ho3QrX1$46xEDYvgb>jg%U4I7WkG`UOJRol5#yfK9m{z7QgxCnr zR-rubTQBZ;o~x(;uf2Q<=4J=5wzUiI{^};WaCWzO`~Z5;wXL_dGtR_Bys2OUKk%9!!NDRnZ-C z?c{841Y6HH;iW5Q;9vdVGJNM16acI!<{t$LdY@~#8<2C%I&8Gg?4IuyaC>c{Y{c=V z|LA-NjxKZ+^N%0bzfwAFhmzwQtLV-B;PZ)ieN;=Pd<0eTE|pPK^3y0X5<-7L)>fK& z|F4K0NS!vKK^JSa;r6J+(B_nWeMzD{U`NzNhcG?~tTV#cJis#eTJwZPB@jxW=uCcW zqyptFK6C9CMi2o&Lxo1e#?g2DBv;=zE}M8JY$D99aps8obz!14AoKs(qg^#F(rlnP zIS>kCet}vnXjebi%aw)z3I)ot>H;F(FX*0C$=1N&dwGV>$PGs@+~$0?`vGcdpzvZ@ zY2I{HQ~=Z_QC|Hs;rvUux}~o}olAxGO|dg7R9WH*=!{keiZ?Jl}*#Qe0 zsFwC{(X*cj079mjN1hl6`YR+js-@DC&{VRLpW;O{@wKI+bs%VEQQagP558m`#B7VTkL;6?nrfHZ{mw#)f}Vz~bCMnF4(8${BdP zx&~i7d=6hcT7!JhgM6m%ouLIV3)hee<%Q0>WC>g2u_Nd)lv6j)opU%zU_hJSUY3FA zc3>#baa*aFOC*jn;luV({z|wrhlK7iYNE~ufIHhl9{{xfR5QRi5){%22f(fx8%|IV z;yQMC6wz2h(5o$zfn?_B0=oB009W3I)59BjMLZ)DYn<94VSMTIA^6GLFT>dr2LgNJ zBG;yrLOHb>4k{lJ< zOBjt4bi{~)(MRgme+-W|$I5g<30tgVRw;x2V_m56pd20MWN=vk)AS%f5NN~#8oc9h zJ$(+^uY!3+#$N)=_i{MC&{h5pp6^Vc%u?mTWOJbT35J5ib&vP`~#dldQtBPcs>9pt|t@wGafxf=6e95=OFwJm`iY;T_X%NO(fsmSDpidV=1n@<$|OFi5gu zq(j2|1;m%nnV8Oqn3fzScmgw#{7tDYUs$jE2IG_yKojC_UI_pW!%x2dGW5C~FVqjh z{v{TM^nwr^w=eHJfxrHTPvPp958>JF2o}&;<7}qmjiUg-IFFNr`3I2BF8(&R!+hU=IjQw=yta>KS*Vd8@fK}DX=B#ue_#zeX${Q7d| z7_C~ruw+K4p%e*d12Z%2B#$z!_O;S1aP8}=92&WLeSG-@P)!WTj?i09ulBQ8`j`rGlo4)0C`F zGVV&4reQF@@x-s3S}+9neOkARZ5pg26s!4@?UQO40YD3?v^F(&H^|Xo8^aY6l`m=T zKr-KwurP0`?;9|Z9X@8uYGQi#of7kxI{6dSNj)4#$vQmQ8N%wbb;$ZX$Om2L@Qd1iQq2INJdkVWfLo)nYp!cF0c@x^ zUsS7wDo@`S21|6HlVvVcpr(k8fQ+!`f~+JzvZd=2NBdIZ*)sQ*Rtw&lfq7wxdg8~he^<^ORjU7&&mM(-ucOqX zT}Z>)Y4`gMGX77VZNTcYP59{gUHH|t+lu+0pX)=XlWBE*qiSsh6V`d0iUVNq02%u6 zXaajXLzwO4aQMhFeE;<`@UMP!1umXF;sh8K_2o8+`hEz8R5<%-X&geLAWOP31TR?P z*snRygF4rRl^x2{OJsa`PAu^<-gxQg=U1BN_rZuq3(8TL!et;F zsDkcvK_=mxmk_X(Fr4*WS>blb{wae$l@vdZmuyrmTUrKL$a*!nCWv4Hzo6Rt&Q1wW zw#Uk={j=?f(bxhP@uV!nYaJ6yLGPg%`mfM9ZU=-X|I+iE;w@u3OD1aJ=Co3CG?>=J z27PW|*v5I|#{h&j2ci3HFoD8qa_K&!pk#BefZ@1wLUCHGwHaw*OhODwtVOafOxFl^ z-nRs*u>ixH#pDLt9R`-BEedMUYwA?9b0ssznpfdsZ#YciO|-t%3V)Quj_5@v@Wx!} zr9DdOMlrFtk|0-SB{+H#CfY$MdXY2DB-{A3(I8EgTAWQBV^ZJi{k0P(8D$W$o+nfX zcxt#>rt~JqFl?1wz=O(C!))pL0TY!4Sq~Lk-4sK!pS@?A{7vMzd6UF>5&MfJh|5AJ5uBiS;_1f>X5HV=olp(pV zhTnExm1kKpj)QCOH+grb-z1}i}wLi{w?&Rlps;nd8JA6bT%P8@{$PuAhy z!)NfpwcBv_?qj71&|8>+0=>GU8*n$g{@jz+6S>s{n0U4SMWYE&l;Iwt1p?YbHVOzj z$^n^FW(4E0Q8zEq2H4y%kzQ>xBrqr5wTovl4Md~gxY z9$ZucfPeGTH&vIc4}kzK21I5RCsRiHY1OD>hN@}`A;Nuz_#pC*Dm^BI(H?xHkWfXv zuECleCn8{jxau@pw7#O=u&r493dd7~g&M%Kks16l7k>E2UX!AGWwgE=z36b=FR;LZ zUPhq0@09ASKWk|@+JAnWn6lgtQeQ}|%RrMx7)>a}{BMon>*qtb^?alleq?Nsu~)Y6 z#J@_6N0~7XK!Io{6R!Cn%8&a}L)g*5kY1?8`6g|s#lV@;M77QMC=lob79IGZ5MZvK zs~i2HF9SqZ)tPW$CWqFtRwZ(_dF#My z=yl4mUUDf+J&M!F#5k|}{9!kJ;+bCVLD=`ybFO%mfU9O>18=8*;*NQ~;#B|G-Locr zBdetO@U091Pa6cOZe>gZc9Nm0AyQKCgk@VmCi%x)=cqIr8Gp@qP2k4EkJat}$G6{u z=Ub0KmT2?82%Ws^Z2oJjHn`e$Je!7MA6r7}$AY}1D=~dw?gN48MrjyT_7DyxoGf&b zSqcK*6#cAbl2M;iWy3=n|6x=Byy?C7>`VBcpZ+Dhb^eENaN!V08U@1HfQv+J)u*wa zczx?!z{_Wk!SDa{J1`jZU~6Xx>*E48o^L^px6Qq-z7Z~|AAU2RmcyH5bdEKe6e=v4jS}EIhDSXSW?v7(`x$$4X?q&pKzU(+ zc`hx}gPzh8S$r>n|}c3UCq5U(^C?U_R^Ua_~(W3bZ>8hLs$e+llM03)?uYEjvDg} z++Shl2V7ncXBG$;$R0uBj60`UQQUNn*=(fi$-L7tK{z({D4d4wO>kdfg<;~1qEmR2 zcrL2LSS?he*=gql_b8d^8*99+#*ma7!$RHoKi!!qCKi1v+9(SUghmXH9=aDx@Xi%$ z2AWTmzDY;tOEZ7YE5Ah-gX6#m<$WzoqXF|oiWyWzvz*024r{v@+OGhC&H(M6A6FxV z^C5v_WJ3a4&4El@-)3~JXDhX;Aw7W0^nC2KQ%4ls8=$X`FHe;{;^%5{1f;8aiiA(jPF(;EvkpCf?E>7ZDJ1iU+aeVl&VbYEapSN92 zmej4;+!9~~NwOKu=!mqC$-W2nrZeh!MD*5fYHXbzWjT zNylfm;j;A2e<4vdZ~`|UT-7)Kn~z{^>oF`27GQB^(P##cn}6C)z2!)oUXX7h@j7A= zZRcgZupwDbi)}CpSa; z`Tx%Ociin$ySkXu%!RK5bAzLAQZJo73a^|yu9*L?@2tYjyQ}c{$tnz1=Akz?1Eul_ zAhizzTCZ6^nF)V|9<6sL6U8Wv$`Y0bS`)xC{iY7bSL%4*+9W{2w(8tO2?6jX+=i9T zDC0wH`6-KJeE;~);;E{xO8uJy%XQbDz67`B7u0LMT$zd{5= zKDxq!*gw<)SenU|SAT4ylX0`+@k*G;355xVi023Tk5T2U2EsJ^$JB4rIVyBrLM5^y z;EjH#snhTc4@G#;hFHtZCVOXlaxbIVh zk*BCm3Up#(KRIbltu(x^yJ@Z~%FukZ<@QUfas^p7p-n&Ie4HWytu7dscH>pcED zH@p>mi2Buj(-gtlwFenm{o9-Wk8b}nJllGxZvGc$mXrgyaarh_|6uQu1P&3b3z5<( zoFcJnPs9gy-3T`kY%S(kR=y-Na`V{OLZ$u~%Jlk4Y`+Z+u{#T?hap4F7c>*Wn{y0@ zH0aI1xY&cIoA=@7{j2cqji1A*L+9Ys!Lx?>C=IilfGh^bwm}Y4dV`5@U3vK={9ph2 z9r)S%*P$#5*ep;JU=#9QuCxJE{!%(-#{lhQ9>Qn>AY+7a>o=5RJ5cJagHEn($OX{? zkpAWwK&z6XUx02=LbohU{Baw9-rL>=o0dZaMlj%n0>nny+`d^20n3a#b}%4D{5ywh z@q047GNuEg`LZk z3FkC3rg?)64ES|dc_6hZ1Ns0!+_Zg=fo2gSI0B=IW`zJ4UKWJY=8_CJ?NS3l9zBR3 zx2H}Mq0}1b$F?n`auXVpZy+iuf?ssKC5D6+OIBTRker0K0la7?1jGK;@ggz*;R{Cn zZ%J=D4a;bRI@JLYmOQWHyIQ97ZdJMKva@bB)28;=?l2QAf(NO?x#7?bus^1trb}rF zT3fhU=CUuU;nk}JQ#bpyP&D*}6QNHt{I%`XwEK;xHaoR+`M4kjO;8H*fAw9;=!0Wd zxp{~mGxK8Bo=1n!6SpTQ^g&iaq13lg0Pq(d{vkZwdH~P29>U^a85U=kRVYAx^G^gO zggNo8J5Dh@I8i_Rjxx;xj7rr>r(8R}{z@zH-jW~`W&9xVn-Z{&(F@);QGL<-I+P76 zjxaCkP*QC&2AsYo@2#yh3WPd&AJ(?kV10WHZa(+~2E7HyvJRX%auH-Pske))v?rK9 z_CWMNy?*Hwy!P@*#r)s9`xrid_zWJeu0wx$4mz`a5R=lWj)K8-%j`*`1&|AE3NRjP zMryApVP(*Rey5|EAYp7`!85~^mejT$RsRdv*&D;*nLZp|n1MGg9EYF& z;1x4wRyCH1ltZ=!Y8rxmCD6A2)0=nUkN^6Y@MJWBveyOC(f$|IjlJ+#>-_yo&GBZP z9I|c(qrEWp#B{{B0#v@i>^gB}#80DbG;n;olN7n3!fQQ*k=CYe7)QY0Bn-L0q*-}mnjO_P~eLKxGt`d zoYvlsBK$_^e~1R2YlpjZOmg}Zsq5gRH~h)U+LNuVSI`uEQ)R)|l?w?_8?}QkHzmE+ zx?ID2?;~~Cxe3&;1pO0$SKnq+u9WUUHGjID*n?{wB&kgN^EA>XnAvuNvajT~n5eC( z+KWbk5Qk6${&b_pWN2ECtxrXA5T%2Q{x1;;P^q9>qIUcQkHsmtn&YC1=xN*f+l`4x z=H{M|t46a~;-3G-!)tK!(N*~9&U^4=^PVyTSQsoRoBwe!4sHJ9<JaCY>BVWtTFCfYPqmtC&FND z!jYir^k8Xj3D$R3;iFsc!hwZDaPr_8r8R;deS=;)K~n&DYGaC3Je^9u@fM#6c;oU* z0PsWj`7dq){PG5DObXaoL!SUW$opLtn_dx))J;C&vX$3%6QvEK8(@S0WU9~{06$hO zx&-Ei$S@6fn}pY)NDSI20Y&L;vZ1iyG$TQXw9LE>4Jd+b$2x?gUjHrpB3LI>Okx=e z!kRjw+~lKLPnAg~Uxim4x9g!)H+ChI7*cUOhF311gde|g7A{{n2A$l8yGyy&_s-)& zM&s&@`|#1V+wjky+=2&NyD&DUCCI3wU_d&XckpbG88^K7$GIy;W9Ui=GkFegUp@_Q zzj_+pe&d{C{(Ifr)uXT8LtA`4g$zre(4posB{K0?NY0&+g!}6wWt)F$xvxG- zvm~Z;>&S!DLjx}E*|XhD2?DI9mg~NxfL3)ubtD|A#-g8zY8%N^pC`q3G*=VhYb&0~ z;CW>-+WAqNHUdFC3zh15SZaUte^g4O-+DSUMXxutP=l9kAZ=zO8W_ZIRyv|?17j(1 zO8JJzMs0Qu7Ur4tS{uG@W0Rk1gGg=&+*Nep54ifendW^?}kDhWaD754*}h{m-cYgmkYX*#kKQ8tqE#e&%g);FFshd?C%Ry9+=mybV# zzy9dIz{9n#V0H5zEX}OI((D1_?SE{F(_`DD+I5w{(iFNACbsh4(LXYPBuS);@GHmv z)|PiEEXn6iuk>o^nERlIcRi$(Nlez;n26WqCy=Skoi{*>WrTNO>KH1oRvvX(_?pY>ulb=(4yik8hmsCK{y9W z%U0-o?r;N2bEZWyYE+b=2lE&fLPN4qD@6N?X8)f|*i&*He}yZwMt zUjrzpKnB03Gz0LHYn5-*80cn7^&4Z%qlflhrf+F;6Q0h7n~XaoOOHd6;6>O^1`jK^ z&-+~AQu?G|=#HAE>nf9U;4OGURPbnonj)hT9&hT~esuEpY^QLhAN^d1?Q_r(&6_4F zBX-QFe5WY$0__B^LS80)$B}WNrYGi$5ZgNOn`eA%}>c{*`E0@!^w1~2GLd$^i%cOZF--j2O!0wpB{l9exs z{B8E3nqGS5D`eJWswgJ~iRAxu! zm|#ujj_aLztxEELE9m^$&o7t+9K4XB(Hm_1v)y^z3Z599xkCE#O(-VY5|Up%zOFuK z^Z#J&OPCZx#r${kzEb-y&23w9d|v$YNOy~UACLf5ikrbD?r=%9mFiCY__B?0{8eB# zR$Uiq#Gu1p+kVS8;R=w!H`eC|xR?4Jp%Rg>#PEP~gIT!u^h@|3AN?u(;FX`k!TH0G zXC26Mt(2xT0irNl^?*yizdAw;oR@he2zd33V&wnluWms0s~b8xz|(cetR{dC8gHr$ ziC4QXTK)px?~W%5=Lek*%;4>QogXIX3#Ev@nc zAbs=z*R==@?3$w|Tx@IW*&;H3GORPsAD?MK2t+BI0KlpQTRZ!`y%7v|hVc5iqwxCK zqwvJwFKFxH}0v=-~aL^+`P968$|(w`5C49KOPrK`|v3xLI$zP|N;?F_vA<~aoyI{icKfYO*R2s+`>0M_q2%qdRSc;wAa zxGdI)XR2Bg6P0uBdQpxp1M@DBUUup2ph+871$QQf=W(V78Wt3iqPEfVF{J=J3tqG(3Ss-q7j86%)uOFF^dk;27aA>XzgSn2<=8`13 zNM&#vlHERp!JFI&A8cR4yb*m!-jqgQT*f#*MQSAbIKm;u4W>X76sh8EZ}nUG@`|20 znt~EQwGeU7>iXwLv%Vi3-;(lSHytCwYn0WD)l~HU^u%>1^+Fip-~VoaiR|Z9(pglI zKjDS4A~8$@80M=m*R;Jl68^=KYo%^&3rGzR$uotwZ4v)SFg7e$(R(s(b^eKxAW-$e zn)%v4@0U{fZ#Q>!?b3Nm62P>1#wk{iKR|EavIKi@C-9xw1X=EbDHtsSw!>|)JkDpm zoa?u;I z*%M4$Nt%!DTgg3+;JK^_cStMM1yUjCno_{f(dVw2rhSbcXPz|-9|`uoS5LPD9I<-W z&qc`Sc!t!*;+D`u`}u4Z?mzts?mYTRG5>F#c^hU2^U&)KlomiK3p4wq{nT{F-LY!O z#%;AF`rmx@G`w;7w6g1d`0%NY4uF~f2NsnkfQ}AOR7T6=j4%wFeufbOw#O5g?G`ZV zc3{5Og>EnRVb6?8cEFf|af${)-C*J))B+eOhi&@foCz8YoXoZ^JUoGOKY}PJ{EqP` zKF{N=iJEtM=D-vD()xI?I3~O=fW5sT>}+hqg%bzh-~Go+;q7&+oy1`t$eT)7y`f0APT^gq3+H#|2Erg;tUfWTuQYhl*Cx$rbazx48$4 z^8+|G--jQ+aSs0D@BdKU`m3A&qEH{l98Pf#La-jllf-cztZ5^lC<@IapgsSS?Fl^I z9Kn;#u@eAT!BB1(TN{%-^sY}B(TJOish|oSTeF_(c2*}Oqx+k?y(MrlyLc!R1QSwI zC#5-Hd`i%;g}yA9$Pr*7ZfI=*)C`#K=jt}QZ-4i4<;{JjE1ZhB!ariy?Sy_ZjqmQ4 z3;9`ZPQmTDO``Xh4iii^?{A?x@94Jz8BSE~f4*D5Du(mh*5Ul{W6vL}VPWfX8cWd_ z$MvVcw?z>q6vm+N1_cjjYJg@cI3Fk+EsUuU-}96PpiurUP@pk3_<(b6eH7pg`{rH= z4>!j!=;m;EA=4@!38Z%3@GC%s^qDkxqMca!C>U;gV(35r*Uq*U8 zr%JNs7xyIezF9fE5^z<~;2Y~er6t;g8?HKBX{AXJ7ux6hM7Gu&7{82yd6^2Z1kss% zAehI7(h->s_jmW{m+JG;op<5u)oU=EY{Saj0d@0Vlw;*&E3nyS8uUa}ouG)^pg4}E zO^51I@{YQ3&uZ07-C0Zt$yz63&8<(<O53<6N}TGyg-JN0ooJa$2Xin{v0T#nhDaO}RHMOVF%Are=v;4i z1Q(AVgbQ!I3_tw#1;zX$lU<--g9?HyoK}+{(9qLDmQQZpRcik~fB%MJ{?~>h7%b1J zC=SJVZ05!TM;U9}yHMqSw6z2Coh}?dxCn2*eg?jO~sx;${zNHZJZ89vE!YpWl{8WDak6-Hoyc++it3n;CC+&d%e z8jS&De)~pKpkuTOtR_L%grsyD6jrT1@{_>RNMS#!DWb4g^B2y$fG$=VwepDxFQ-k2 zOw4)fE5g|NqsEBx5i!<#iLzriHRAYKw55A!b&i0=nXu2K%fvr6KE&t(Uq0P~V~agF zzL*6OPh`z`XxE2*h5dNGGf~8`Jv{D$kkPy`LhSIs zsUbj(L{e!<$#9KG846dcjo4SINnwbmx+B`I$Cd=CckpQNe2R@QNoUzqnUipK((Ib3 zmuBEU|-!b$vr@P7|GB9~PcCh;Qc7kOciBz|%OH)&5uOuL^$ZByzU)Fz%-JR>^Eif%I)ZBzq`>u#B95 zNM$h?7_MX$Fy30BMph-lTx}S$*89^`qPE1$)H>eafQcXY@tS%sY3%5pEZ_p~kK$ zZq?+=vs`_~LJI&se{dC^tUZRA-Yi@>^A_=L4?a482-~G_h?LX;{t(%w`+D()31bS#Oh32I+{Q%#V`0JvI&$@E`v5_m!vrxtTtD^B<^K?}JjI<1C|RN|P!VP7?wd{|6gmc(^fwN1J2k6QXMv zQl-Y;5l+w~i4ew3ljK?_+!%!GBt`&1{-^tIKz~$rxTq}YXv)T$V>GD{z-t!yr~T#u3~>S3ODGc7%>YB`8K18GRHMZ5n5ODiXv{M}@HaM=op#Mo>aY3cW)e zNluc6!;xiN-CnJQlKQ4x*N#j(GUqtHCzg7;%TYYE)V6LZL;QzAjI|vt6tlv{(#$R1 z(Br%-0l=hmd#m6G0Iq*z0~Aaq;#p_xbhKV&c}M)10IHhFwo}()pqY|bAJsazH)%en zO7GVQ0A%!~hDKhsZ^U%;miK7gI!8Z6JQC}(bCRF^j1{v93$`&ZlXHZAY7BWXOX``PTyFAWsw zUEO}qJfnLD4b#MBPH+6_CWCjuI!^ajlC~ncj>$|{lVEYVVz%et@c4ilBS@rTc);2I zJWR?VJl(nvpWOKc%+D;s`D2&i!tqyitoX8Y{i!e<5X0kt`7EZCus6-6J8myuJONqu zHXQ%>D>!su0d7CrgxgOyLG(IG8$hjtJaYmB*C*ORvtH~)E#})p2DK=a002K-6%s9X zPOM5(PC{sBED6D+?N7D9qLWco=&+o$eg>S1vL%kf8=1glfD$(D*b>g^gslgJcNz#0 ztaci3G{?I`81D_?%%NpCiyr^KbyhL|hgarRv;?qD+M>gNAv zzqp~8|FzKw1}k%rcRPylN1Sj1A`7RnrB^WR4wVDKgR^}&c<2QD;EnU@bLEwjiuup; z%z68FD)f?cGM?vJI*TP61Liz4@ZqiO?oI(~yAybB{;uy9%En)X%gnT|3Ks&8ZZUSx zAnVC#RYmJTHSO%t)Ap`{!-s&ypnqlXEL;Z+Z6c%Vr-*Q_?ng4}3)v&7AcAaebO*IQ z5%P$5c7F|ipku|YvQSK=@-1M5Egj=8pw}^)0p?kkXbD)&0(91yW#BXgtVv5|e05l- zhCZ4}*tasG3v4tH_t%Bh1T6@hXpi#BRH)FAAn?Y2Xuczpjn7dlK;aI;P3AWX#x7zI z1sO|VoM|*E8Th~j#weWRS@Ai@wiF$y$Z3&wU+uV=!$4b zFue$M7*cUfb;o;9t73Gm$CqoBYQp(ro0IIRB2Jt5}C;Sqcb*S{y+HoUHJI!FW|EWAHadR6*xGjz5S1ii6S0YTgaLbVu7fv ztLSG{z|7YlWw4vNTX!s2?WFtk_zi$aF3$9C86h_78bXlmAq5}_xy7XvzQ_BaWcb?l zi3>MC0$9h}sKPUSQ-cD4es=)t+s|QRdksFl^9$JC+lD;P;nJzsRe5KTFG+b0%mmDi z5EJC4+4T7Gg%j}FrBjOeUz+K`-@bnxZhrXy^7$F)U~GBxRnX~xL^biEAfpB34#M0J z3NI+Yo2nf-QOrcIlfzuM3-iLL7iX3n7mCoAL>NTp(b_31%>d~&1FUI)V;F4Y0cz#| zk>&zbj}Ip*JYJ>MY$NkY?P8@JOG9{LyXf?9cMo=+ZNQn!r{MQ~bQ!+)<~exd}hTP5+J3(OwC-ICcX(F38b-px@3x4=0OZ6I}lB~XlH5AwsYseh)YN1f}^_mGdb^IXw`1_ZkKQ{x%jw~yt^TxeZ_3-AuaM~c2 z!mv*C&;$eR{S~(~p1_48%W&@XGw{}xv+&(3XW`P>V|tEC>4Z;$fh)CLFvkv$cHkF6 zW(aHiAoGGu%}G@lae!qvrs%*8&3bSRPc$={3+)kJ7^iSn3qW~^&-9#IXK~JSfJkyJY`Be-Za_Wr zYE46|V8SxAmf!=?;qS{GgD0rdgki{hw zgkbnabPBk-HC7rfDD+w!DJ&_K}j}Z<^{!7n9-pgs-Yj6~Wq3 zjNy&1E{ zm?Mr_Lhs^5H+JvE#0qhHt;^SRH$eOZc>5KgwS><9fbfSCgC*f_h9J#^)|6vjSLzYr zcdd$BLMO}Btt>MCUp)F0uHMrEfR))5I52lW-Oizhc1KXA>g8;q>Y`k*(jLmhrMnxn z7c}b&#hbZX9S!wPHU5eHihmc4PxR9=Tj>hhJx{?eQW?m+MPxB4&f9Q`=r>Siz+{L? zPsBNtC3QPJm>tZ*v(4vl|M?wQm{|rPy6}TnehW??IS;a!m~ei=5$Wk(Qi#H%(U!H$ zf?^0k3jof(bVM<(m(LxA|L1Ri3Aewx4_hU`o)plZpMma7AIb?3O#nA&!2zooFRcq) zs$0BL5x~-T-$s)FjBP&C?I;!ht`N>LxHL?$W&TUa2#17@dv3>56P>~_Y}TP(z|cjE zq&u}^HSGk>lm;FfQ(hVkgwgH@_SU!H{FT%2Z~nI{@Ya=c@Yd_+-3_Pp((V~X>Dn!g zPXH8#AoIVmwF~cl_$B=3zkDBVJ>7uY&o*FYY1ZBRD*=G(x4B=#kc*uTlzSr>jV6%o z4k6nc!Nu3l!teg@HTeFwFT(e~b5Y&)YjYCa7k~4gIv8p;hWMZfxdQbjGlC6kkB;8h zKYy|dPq)YF(=%S`?d`E<{Ji&j`4@> z)`s4CYqw@6R^!AXlr%d86+XCj!QViOaJLECuNmN}Pv#)E6QKEXm`;@wjJRe9UYfs_ z;X|f->=<$)7=ftLgtsf_tv_spX{o#FdlmZ=bao5QjC`*ddlr22>;?^92yjI{a`wN|OEBs-jpT+zQECVWfUe z7eUR`#I+@7B08`58tWVK>fnidqWXv^!0DpTcfDU-YrM;)TV#Y)GvdA2wo$b=% z99%qm41W7Zufu_r1^DEvNAStl4`E|(3>(ijlokMf>`kj(KTh0dDOAElT0&idk8iI2 zDtp#UeROEI%rR^h@=Vy9!jP!kz6IM- zLVs~qh47n<$j!gC^*4}Dkntby!b~TJYHFGHG}kcYphiMQ3d+x_DI=lca5_M#Dn0*-e``X(@1A~?$o-$ zJj=AIdFB~z&K6w|Px_SM4ejgg#2DWapc&rMXi7Mr6ZXazKgt%p)avS`&R4h_YX4F3 z=qJ*R58anMd?AhsQN?cvFowZVZmGv5iBmKYuc3xe1sO35u_h+LqtQmb?+Y(Ci;MOme?^W{>GF> zRLffrK{$>|bze%@8KF;r5o`|&@S6H_E@03$SQ z(rZxz2=Na=VM&}?Nm`|jfc$0#x}M9blH<~UX$eJ3IHx|3$ah9|;-BjmNfUrrQc*9V zNkCDDqp6YQQq6n|&W4q4xe36hX}(Qz%~S@x-3@zCeu@Sg`;h{yvEIllWn}|t2Gou} zcgVPQM5qzasEN?9KQwe}>JpXiC&3~8pqXD#1tC4ZP3y9`UM=A+A2YI#r3JEjyf?}&}F;Sj? zm(ZL)IQK|dh~c+60`!Uc8;^5HH!@yy+mCExE~Yxmq@ z!gpRj4}bo5zlP!N5I(>A1fD$Kgzf@{j_Vj3R~^4ymeOuy{yNHn;bPhAmXS9enTP?P zZimn$Aa|MpIs{qf7&m3l8fmmiGOQH`fVO{vtS9QU$~~pA1b710(OFVDn_Oi6M&lBS zojoYFcHq+YF2TS5owwk%iznf=mrr_||IB;U2dB~C=fHaJN9OBK>J z>BJ$${3|d25HiHmnqk$+iiMj8&5R?_KQWB(HEqoiTFoqe@VyVCj2ZD z-N3J#;D%lBbf?27DFcmzcpsNh8{p`iXfKT5x5tkpH~Y3)Y1XDwc#p^o3ynSJ>k}D= zs3KS12(^X6BE`I;a1vNGK|K-A_jo* zjiiNkC;*`TPdq&Jl--mNGi8~5E~1^M+66_pE-9TZQW;x9T6r!aM2<8Q!ToA6k^jq5 zi+(nfy=H;?0_--;winJc3l}Aaf_=v`j*I|+?^N}v59J=okE!l(B>fM0z1bGZBL3z!?sDcfxCLzshtq0}lu z0462&PRaeMqTQ4@6BBt2166^a0U(~ZKtrL0Y`)TdO@AuuJlba(#*(-3CSO>Bqs&yz;truncg*Eb%Y&G zR1wW-E*S6Cs0mO=?f45-d^^HB4|5^W9OFvrp#vN&6`~o1>#SI!+*%>Vq{K>1#9w*EkuP2E}}EE|V7bng+C0n?M231Jwd5*}`j;Nj*N9;^@H z+4fk?Gcx#n!^mSqh%WIukBrN}I05YD`Zt;gnKbO~9MaCAkrv>fBN ze27DQq4vOz7j6L%p9w_xf>VdWrrB-|M;5v&gd&$g<7Zqz*tL# zlS7uF*{(>`h|o_!I6^fy>QuW(_-5*ptYstjmpJLp3slEcAQR66?LLlfdr>$V%D)KZ zAJ8{(eXd*K`mHR@Bt4zl{~A(+$3y@SZ(ngwQmt^vRYmG*t|p`;gib*73QxE;pKwfn z_O}>bbP2_h9`}?=<)qyjQfSx4R-Y@?=6(9fRP!bnEOzR)R3Zftb_WAd1wNWc9_t#Q zY`n@zzpgJhW!@IMil}*KQ++jpompSjc>B+C*xXx(wVh{50Pwe;{IT*}K0h<3Gy{;q zlJ;(fnS-Fti1wZ70k^nG8O%94`zCOSlze}Up~05Gy|6B55lDr zufvh0V=$SFmE$+11t4gJH4Uc5(J=q`SF5;}(C>C&Ze{@Qym>(h0p9!d=WzPS68!h~ zK7)IAAHhhXZvcS){48_^eLovT>Fw$xUkN}ws#~Fh@>q|z!J2nAH=>e zK{$Krpti9u%+0?Go2Ug4_$ABiEtu{-GXL-X@;dy@yEoLQoa=*}??X?;X74EGA3s*} zK&Vd!|&_D+iN4Z`fvw!hZEQv6)w(vU&Wfwl@qk3K@JQ392N!`B|^uaSGVK2xg8Ip z6G-|ebjk<932b~PByoZ!*?n15@Q03*@V3+h?*ND(Cmv68L#%{Zg;vep!r1hq0=9<} z*cnb#jC#B=Mkk1)u`wAaq_bVO-t%!B&{3avqNfw*6C+FX|EpZyu&srx zdj-v+ZP6V=vRbd!xFiLla#05=!sZrRV0|(ju=~)&m~)`;W^W?lct3}82l{Yqu?NQ% z`{p(r1wVztd&CVCUX^rYh|g3d)FF6n!yOi-*HqHxh}Oi)?`OeTO2USsOO{#GNLcK_ zTt5#wTlK6^9lv;ZTsuwxpaoiCPUhS-^CwMN%lxB2#CAEb5vSAKbbPU`anGw_2EVVj zr6SVpx*Dj42up8NDY1CGX$n_RwKp6r{4-iU4tE)H-*Nrv-_yXwR3M_?wNN+Zk7tb0 zbQN5_bP6>92tu|`yk`q;E1oW;O2}5Z!tFU^I$w;Drzydd)W8!JV+b*>SjZ5|;9a#& znkPm0$JNFJWgBbndIyHlAr@~G?WT7+{<_! z-b?xe6jh%w^w!OXpTMtgy$fGGxn@)}bLeC`lCV5033 zr>D$N9z6dV{_f*Hh0UEcbvUieA5@wE)+c~-yvM+k>=nxtX$M>SX349bA3w4TZ-46| z%+Afgxzk7Ci@Q&hS-|t{Av|B-f-=uQ=DE7L#t??O6Z+cAsRvuH(Pa4w6SB%SB+NLV zslZqkFey>fpfK^^g|itKmA$vxV;8oH#E+MiQ6Y@1aoVTG-Uwwzdm|`DyD*Og_VOHD zIe#2pzi=GhdhM)Y{udVp+UDPxa_O5qKbAtx*Us)xeLlba7{0ju2tK}k8?Iiz1GiQ; zp|dyui4hi1&>^)DMKK|rObHgy2LMba%ESLcuL~!Z=i%&$LvZfoA$a}b3Al3cB%C>Q zNQo(>x>?pY|2ZY9TcUI_TZK`xvMbFPBU8IGDfG?%#u(Oj$I#0F7U#P#==2n$KR@We zOveZU%ng6vhX1onuTvtCk-3$uSze)IN3JjEAw49G>(oBd#jP zXE^@-3<5`qYE0(!!&SG{Ky4Ez=clqmrU zYC9P$EOy}_!Z*m3hDuq;Xj)SzK$X4-*O5?>2sVd>!dph(<@Rg4rc}fRqwUi(VI$SL zw!%S@})xSL85eQ$?9sru`4 zX=bZk`P4z3s=q40AnLCI0@Z)Kl^Yjhm=t5U`RG&l+pB*J!(vO_Ky^?>HN%6wP#=J* ziASpSFeM;O$}lK*6z#&cCnCINTjOpl z1pAeTHEcKTekHRXwsz-!i%cOLq35PxkD@R{Hv?968*lyx-2ps!b_=fE{YWvT^Me(5 z<>c#dWcfHuCKDBwGQ+#x*gf+U-EsE2^k%8_Fr7HMqHM~~ojw9T_|8T6*}I>@%zK}~ zr(ZsVCl8)M(d$Cl>q2j)51n2Yy!$Jo`zoUmj+h!C=pl_y0-#XUml6Gwl7f#FBLTGgb6aeh4?ZA;Ei*ROn4u1011^9#Cc?*`8=3!-N-r4*Mp*@%=ii@N`3R+$&?L0 zh6t3~yCAps;Kb1baDI6n{>8U1s2l&&ClA8ulZU*Qe-vnz{syix+3~_))WcKMM_i9R z`>>ze;{qOU7jWar5N}O&obQaoz@>+RGDxO^h$Ww9@Hy z{i%X#i^toyrvo_8owT55-mJQQY&rl0pEBdM9)F|egJ2MRVw}mLLpThtx3)WhwY>s1 z_X?#YusM{lS7=`X__6q!8*_*}i=BX`D3&Q0n$+IR9Jtf*OCh~m$-iGRaO#ve$C!Oc zo3co!jdW45;$j})UNk!I5+ zj#Al2(Fo4{E+a~lRLRn`rg?KO1oJD}H|d7p)?b8=QTx?i*CoNiPfHO20LR=`pTzH7 zA1a~>KE=0)>3k4vQMF*TNbMw0m2Nm>=S#Qg53Oo?B#p;E!iE>Bt=*g2w;V!n*(yu` zpFzf%WH>Wz-P*JTH-7Pr)LRp6ps9YD`q8lI%4n0}zzG-t0QlCU%?VD(;+0!D@ zApN%bvlTegQLg(+EF2VVS3w-nIM{x7jW4Qh3Ioy8y9M*S7u)eklQpfC4 zJ_52lH+JmAM}XPX9OGtMwgPnfB#W3Q5#;vcB*=IPyEct^g%fzn7`F@)Wwajf_y5b> zn?Bi*BY9#!#EW-lzPw2$$*Lmj=&tJC?%D30S)0|`O1maAnMt4Yr|N@DvXyB@vYlgR zkD2bCp6!fcmG#l>=&;nmwydEft!PhaDY z-@U;%KOEt^qYGT;9KD?pTD^`Xd1S(YoHzo`R$wb(I^V`tC&dSc5Abk*3!gu_htD71 zlOY?0@GtNB3+n*Ax0K2d!UB2ncGn%lYJvX}f35!dwU(m*oWS<@LjeRuS#3e{;q8n_gcg=`TTZ@7MDx zPoiSPi|8}r?)a$hSOf@%g37tzTw4od%4df1&aN9SBOnlpj&Q2%+N>TpV_BV8>+f+s z&|aawD#^>`L?ZCR7rKl|V3&_?E7iOj)2C@gF2nlerQ^rK*Fy_C!xX!N6bBn^Z1=@H zK?>Q0g0>h75fxaRzCYgWNeh=@yH#BKSQJ(PTqqJ?D=sOH$fe!osOV6XD&j;gEyEIQ z_S*Pxr-Ki6y4dcu41W@_6vJ#CC8SWs2_=V6P+d$`QW20QRm2*Tka8`;EApP@MP6YY zA*=wjWfXOtB*x3RDXhLB-bC4}wK&i<%DGwV`L19SBn~_BS+IWnyBT2*!xbkab<3@; z_WBa^mqyVa8o;4zDHQ-E<3Q>*{Dq@WO5lD8hJuQ!G8(4vZeE>48{ATavkx}!))Rn% zF%afl@p9Zl7@|MU@W+OUnyzXdX}FubvXCqSfZnR;8&XwGK9=y{G*#Ie*vI@gNcDJP zCv$7tn#Hi zSp_OhdNU{k9JSidMTT{CW0TPD*jLP)i{=yp0%0r1t!-$~&=O?vpnqhI52_koNK zkY|@4$x^S=#^#`h1E~b~1mC|n!m}60_}l;bHU8t@e~oWn zpW^uP8oZN&ciL$8yXdsrDm+^Po@eS_JfKBDR|qkMEN0@biJm2oRh72H4sP($=D2%2 zPI0$h<`LfOXE|m!3#3_wG|Tb9$9M6s|Kwx*+duyq{@tJd%o-0J?oWG3FWfN{R82Sy zT&yyD_rnqX({H}PU;X9@{`xmhuw)ENp=2EP(cc*rCv>b@ZZaI>VhKK(0E0k$zkyF@ z*xDK4?nWPf`q@MLcfbA&zxd)q{PJfXm2e2*UswqwNpa$+=f6CujwR*{Tr8WDM_Xd7 zl&~sdmY+|Sc(B#MgRPzv{>43iJ;vG@W8u8Aa>mF29Zs+~!S zMs^Si0j??&%9VBt%Bih=qDry#LAKmub884zjJ`BTaq?KlAkq82O-aIxTcY*@dDoq* z>lb;Upc;1C*d4U-Xt#^U`(5R*GEpb&#T6aB&IC?x_fqT*3nzS|Zi;8;b6m~m@;Zm8 zQ(T8Jz4?0`HgQcVOKp78jtGSUNWi%{YTC4RwWWFF z7xmJ~zc%rV1LS>mX}gO{YX|)G>vNg6ni9@WbEA)B3;k#)Xf>Fnc=E>0{TXV3JHPc? z8^4;MffLEM5xC^b;HJ*#S#&v>+J>t7eC~4nvA23#ZVK@-dejSkl9lho38@f5#PjO> znSB2E`nPy}{yj3j#Abga@BOdxl|1yw~YT zoI1XGiNF2&-{WR}f$97jhr1uhr;IdL{-Fe_wIin3i;tB~(RgtJrm~DS26*(rfxP=K z{(bV|7*AfD;PuG`UY}gzYPP`T)dVYH9x9fu@S3fdLg6e=-|JT%^HjLJIv@jAxZG|! zcq@5J6@E>>69Q~LUlm7yd5-OF2cv^+eEeWfK0o{T5I_6m5Fg&(S6=?B2DHFkG{R+F zZ;vnKBh34sy*kCW&)?$74{!1M{2Ix|03GF|PbeLP5GPLiv%&?qy!0zh4-fiX+<&l- z!`)3h{@@Ni{_qYyy1$2y?(gGZf2)i(05w*L>JvFqB(c%!+FU{Q_aN2gb_rq4FYfW* zlOD*$sbnHg|AjDWULh$LffLS(nYFosvOC2kyTFXT*%1!lDoz{laGdy6z~lOjFluLZ zU*OOem)1~L7+lAR*A6KiO|3pfZKq6HQtYjCxWP=`GZ%5~_^&eX|vp;+`qSb0@RIpaInY|C(%!eT%u#>69hKFpUzw3F4+ z99oC3W3Z2mRK}Kyps_b-Nk@MN8>#gAFBA{@`b?Ca_m;n*9Of0yOT0-KrqX$3F7N*f zypmxGlf+mdL=)vc$E792PCu0vE|u>Hzf4F6;sf2}eGNv?TSg=s-A+^NtA!!X2nG&U z={m`38v)TEAHnO`zv>hMO`C0kz;TROyIQq}1?g2)M_6MOR+QEWKTgY(N=p{=>kZ;HU)Z zjLt{3Su+>!9j2F>kx;D-+-`Zbd6o-x1&MXzWvAAfI~P=<=8bwq!5f2{S^t#uiYq2q zTdgp4`Lf^XVbJa3Wc(6O-hPSc{057~9Dnwce}fMW9v3H6T6txJpYwSB0NA1KYZLzB zgeNa8`L{OvG6bG5Nf+tK_wVrZ**pCGKR%Vu)7PiC8ec-3AuWVJ((fScchM3avPuO& z0xld5a)aqdg=?Xqcc;$nkhd?ZQ@fV((l16y2;qzA5^N!!6}Ip9@Y$Vh{15-)GyL0s z^@VhPc>m6h9M{U^pG!xFrUF2m!i&4wFW;Quw|{(&zx~Y<{Oxa^;_P~Y^P35}TN~(Y zZ%CzwXkVQ2FBdB;=S%6?AIlZkGQ*vn4LlqT<%z$zX7TecKE%&|_MwdPE$CLJ%)j-2 ziK&P%Hf&}L&TS3Jd_mecNm9a}yfVd@6#gG>cgg|Jave9^#-S3=2mw385+`;N_i=iTjtK1AhE(^gYrsm`elK+-v;;q(K6o*?~JlyWed;Q|!YR%_L0l;A6U5Q0X zc_r?>Z}eJH`2R5DczacZ!#uuT;#jO*xztTR0KCK$sMWC2VUmn3`+0LIO)H5&EclIZ8RZ|UOt~dIt}=E(x?%F4`0h8oJoTSK8_K8`R&!W zQ{O&Wy~WRm4^N%COa|BzOes0j?;-hBA!OJIU}J$XP{`y!X!zodHEG;z%aamZ>7hv_ zkr*umU}dvb|7_CMtPkrf5EBaD4XiILarWLSXJVJV$6qo#T;1arf`5vO$q6ndr}*m4Z}Eqh{~6=y8Mga7 z=(IY88Fk>~pLSEzv|oO0R4p#H73Je&AO7SZ7_mO<;A%3?jY-Q|wc5FDYGcQJ=~YV|HhzK-uD%Pw#F3UD_|-e`(5GaEM}oM#oB7&P~)A#8ySO-ULU4%rKBIFm-pOp_G4UW zA-p9yyt+sKWmS1K$$DJH$!e0cWb}lsUW$Xw;?DWaJd@94QCJB`Z}F>Ku6!NgBC(v# zQNjsx-iHy06cp6|s`}}1ud8$&A+Bt~sal@Q=dc7G1fq8hn_)z+rmbGnZI5==MU*Xl&LgG{r#*dZCPihWwr2t8i z!U3RwRVY>3Emm46_#3mk2a>PX;uzNB^aEK*^z_G(liw(4BKY25S@1x808dy z3e6IFcW!Oc?e@#9H+Ij6)WNXm&+5I?J@Y+sjd=oXb8EL*Pz12T|@a<2_3Gxt2knT7(4D`mkWqP7wr6IeUVkjOt{tZ zGZ-eW?riqjT@1QCTwWjHhodJL&o6O&^$!2;7yk=BzV}&iLdg?p5}b1(@FrILX--TN zi7hTV7(|(|f=Mp#!ZTodYk>XTO?>+Ju6%cNe1W5rOZ@JuALJvV1}sJBz{MQb(?vNi zNwLq^j)erJH9^c@2 zJV81fpgkNS?F+|XEzBlU%%@ZE`ARX=O5yqef|+XeRL0>J-Vmv z^jAViCY^xg(wSHbtUT5%1?JFl_ZFNzwG@6*^ovH6f)47FRfPsN7^U!EjbkBbCo&34 z*)|Iypq=upaLg*KP-Mgf<)}3;PwcH`?G;;|;G^^bqkU5(%454&ClW3ezE)vYtA(N} zih+4$N3WNJoS>3Md32nWY%({5GW|usDZQ*Gi4wa4P{f|E z3R^Q3dbHC{)ODa%70%N_BcCs__xWZVdR;H;`Ty7s*i?KB@o|Cj5t33L9WLB3t7$hz zT0`(RP1Gn-u0Pi&4~;k!<4Z-~qq+@;uBVN=YReYuX`9I2ud9Kvn!i<9>Z@NLQOyq60i1)ooqG#A`fzux&SFi1I%=p0(o?ve@%`(JB zz#Z89`8L^UuP1~fDI2iRxHKc*PFjcBhCXq7ZgRy8q%6g3Il=5^iZ5UP7XR_dU*PT4 z3yk_BblM$=v!rqq^eGd8=uym~7^#}m)zEqgIc5phZ(Jpz7%SN0Yp$9YNphSsd!~s& z$eQmR(Ym-hgy9iWzZ~aR+<)uR2?yitzw`ij^I^xC_7AG+27m|j>I8N^@UIWc{6%$^jyup`m1fz|t z9Q%I1gFE|M_{HZR7XN1 z5Xur|CD5uEPmLs!(Ud1*#R)7^%&`=FL=**9+^OE(+r;k19o#$E!r{RdKDxUrPu=g` z*}>u6ZS3xBSbfd&Lh!yAPjEh-;Ph-PpO;4$cy)A+S8vbp`rSF+oL}L1I>U{SHqsQi zaN>47E&Lp`66|$T4EDCLz0sG?z1=O`+uOo}J6m{gcT0}Vo&9a>j0S}-1SzyQ0%M7e zdLai0L~Q>soux$-2BCe(UptQRr55nZw+>CyiX-84O@^?{U1n|5Rz_`P5>Ya}PwaqCu`m@Eila`ONfU7)$X!aSfR(fi&`}0-dr28y&b*@0fPkA;h5`P} zqGrrTDrVsi!L^qz2P)qKx;@RC6wyh1{DMI?q(i!1f?k@GC;q}rU)=TI5cmGOMZ9|3 zf`!=Yf_stMr{b%51x80I5nk~H-U+LK&Azq(@DJc*5S66xuOS}sw-or9yPnKZu3G0- zZLy>kbA?5YxLPuv=Q5&)z!{-zOqKMXyLRNfQp5__7CD!S6k+-=#<=wUpSye~F`NWk zwds~@hc7dP^4Y7>>xGBsAxN4*=5pg!qJX8Uwa~KJYIfQDI?Efsd<`Hq;}mYqp^BUy z2Zsv|f?|6;AOGZk#oe6`Fzjuhm-bYYfJ_Q! zrk%WG(MsoCVa&FcpAi*9$E7ZFbLAvZ!Q1b3vAHq8or7)pTg0?qEHixf;vK$wd4%UL z#B+>qUYz2amuDEyCs<8pvW|ri<`ZcT3)XHS>7+>7DH4`eFewXxY*obN=F63QEFFtu7 zEhcuhhE;o6CQtpfr+lWO6lehr6du+r!{*eU%E=tuHR%8^Ras1#^cR*A8s2bA*>WX? z__+}3R|}ktPvmoPb&QMg2`2L!OcoQ&7YodnOH5{COy*}e<_sv@7e8%8$hFcxmP>qF{s+!SA4uVrVQ<)$ISYX< z!`rL5ypJw?2HY%`<=uDTlu~%NXUtSEnS`2o7I7}NP}U>fp#nD%B1CBGHvye1SAy#* zyW!N61*dL0gje}uZ-cj#~^{Nmf%d4@}-Pd*-QLqTQuIZ!p zlcG=8#d~SF(Pr3WRJ|@E%}Wyv?UmnTsI|pYeR4M#R{f*;FD-If39c6_yuMuG^rlc4 z4caYqJ4vZ%DNFN;G)RjCUPLGmN){0^Q8+3T>q~?{%w1V1GL+5a48zw6$(P(RMGJ-) zP@i9|lVdC~q+}TA)=W0SwG5@DHcdUaSKb@pM*BvnjWxaa6L2)%mkjy5a>DuJ$uC3{ zfC^qRxzc(loAo);VUz064TV8ylqa5{fruZkw{g)riv&BB%YEwFTA{+E05_@fO1lS`#FWJx91wmx6PX6gU)!H%eqzQspr~K<+Qmk@Lt#sQ3DNg}2tmMg38{5Ne!OG(7`Yrzc>EGaDa)qDX z|2cm0;O8>Jg%D`U^ZTBjwRnD_2Waj+5?-K%*rjNwX* zWpQFZo?PI1a*5e;j@fb{omPsI{+sEAd={%E7TFRvvupXx=41H?rNBZ8_K@Kx#Yw+V zVrBV4hG@;j!&kCBAr8tD%*42>?4D*DC)TEuKxwa%7uRH#*&NB@TAt)zPfn1gUFn2R zobb2Qzuoo_y^c@{2nE5m{N71h81zOMibp671|#&+E_!JPn}Z!}4!6+}VLaPiDQF3W zv^DJ7WL@6}*YVh?Wm&E(d+PMRc^M17$RNT4Zgvu|QAgg%zPs7M)oi7nOx{Ts-suGm z;o8}oQjpM!PHvs}n|M+oPT4V=oLfM1k5&fdLxawg{)2G=RcjQ2{IuV)7AJv-pu!&cCR zs$#B-v`RUl*NupXFj;0e8ZYqtd?tneUaN?JP~wzJR161}Ohr-kS_z!j?~WC0S_R58l*n!)W@lbIoLq|RcZu6(qu5-#HPx)ra}&rmjF zQ>m}TMO0RjbM7#DD_)qGK0W>t|IgR|JC>^ny6v_!=M)NnOxz(A+gR!KxPpaQt;I#f z=vQl<)2WtRIO`~c@9u9}Sgmq0=H%oKPvKM=ge_2iZ2hd8>gp-^V-_yJ?c6@)(Q~hd z!~4jsep`*62kN%%W-*m zgR83>eEY)@p1e51_+pIlLF?4#F7(G!lt`dy3$Jv_R*jYs!(aBz1Ackb@uCm-IC&v4ko zaM<_Smtg=itpH#pL(beGcZ3FyOKD(QWATO!d2A_|vg*o8OPIQAXL-a)w=l$GCs+7^C4x!rg8a*9rV_%Pk)Q+F4(m z&J?{hr$GvK+G!vw6aeB>c2oHZD8dNlczrp?o2xmF#!Go8UEY!B!sHxirInLL$`W1= zvMGF-E@$dVMf2UjCBNFKr@ZFSVp58_o$Q{vu%v7o_V6es54MrFE&TFW$oKw1>^h*Cwh0Yu?vuV0~~xXKf9}%|m)~ zv~E*tlhm+=n$54imPihD2ej}go=692LiiW=qi<#x1(T5WB~g;z(Us}HheU?t^ zPW-gk$qX#>2Bgsl899{tEUB)c$Q#I#5ziGu6m<%wadXfu?#Z?i9PDmlK3iZhU*Pn5 zCjA6VZiK)-FFelWTwV!iwNngwZTXA_9gIXBoenx(VFi$4nsdB3zQFT$=a@_jfnU@i zo~xTF#y2ypR!jMuoL$RP{@HYi`D`hz27dn80~t!KE&PdeQl#BBHbw(%jE30S=oKga zy$%NbE_OHj*xeiy0{=!Ids{>Kcbc}O^2Iz!W6Fu2?O3sPNQo5Rr$`4|EmWjaK2*^mV4O}f6$OErw9b{sO2sJ* zZl9IHS)vA9C^fitswn=S>QmBOd6Us6)`eFIC|?J~aEXv|6I|XLW4@f=UcFEb6jlK%!>fBMsm5EQ2uTH+FyoPAvEc?k z>4sJ;GjpZjXcyk`h0rf(hj_ZmiC)5#vpfeRbB`eRB4Z)eQao-gXrm9|{(JSTv+jv; zZamV4z%J%hhC^J6aD|27FG5PD%vLISjjF*DcrO%3%Pf})rcD*0pxr8bfaGrf31x{n z)$4N8&GXyJ5%R0KorVO9h5|)YE}>rDl5GwaC46awO3+w-yTrXeyhh4-YplDe1+4); z5}o*16afFyg@rA&UWL0a!qrE=5CzxP6dB24=zWpmcBu&i=(pnYBaRbW}R&HhzW|60@Cu9|W$j!D)7QubzZ)R3L)1n~O zmD0@Dz(|T==WZoNd29J_aybOy^Z=y9XT4s`Rbi_a>XZ$X5`*%6;sVPYC0jX!#)Q$X zJs8n%4+sO-s7a|=AlBvgNInyIcX)ZAeG=bY2a(1)mM57g9F?U#%(I0wtriM^-#`0L zczyN)7dIF9mp}RM@xj64s`(X{f@u|YkDC9QK1Dt-Q@~A%lh+)T(>{H9SD5h&#<4T# zVzkl6!LEH;zZ9nB;*@f}Lbh0y(E)^_AW2(D+by)Ee}LlTGE-i^-<(~^=iSkTj7V^D zDxOOmpIqVOUt8b3F9dyFt}~#xGEhVzU{cUouBP&OgAo43)dw9vo+Vwdq$m9c^t)Xg?mouh z?#H;ZeSo_=2l(jjXZQ$-^heWecT{wQ%0eJl(GIx!mz9bKMkrkast+3(8xs9l8Te+ zc7nZOihHAu#M#0TW5EXq{~gl0BCkx|D+LmaeTdl49for)uGv^$R`}IMq&1Q$BJbE2 z7U_L6SD@*WeSSqi9P;8j(j4@Hs2t@fi?G_G4U8w*N3YbjMI%qzP z5T5n8tjj5T*h8}`kqV4EaN`Tz9aiBJGx)^7{2?9&(CL=Lt%j?l!EW|8k|9{2!K`^}utAx% zXtbZXLRg!)mc)=7h*wu_$RVOrfW6&key_zjB=dfLWS%UdHPd43u#AcXIs>-@N%fzCZp7i`5jP-j*~M77T2z z7&!zS^M&D|H`cnc&4_mx4om(w=8u)bupR-Xn>2SF-H547;w6zK>+lvt9m7JcUz#DX ztKl9oX+#VcH_w27R zU0mYL`S{}X(8@F{xj0s5VRAxLrMw94iHgQHP1Ox|b9$0k#rwpitWQ<~>y23}PE zm;Tk$!f{)z48@6muY(PB@-I!(QN&df*N(~_TPCJT zXiErn*=^}C!HbZ$lNIin9^-*Z(AAL@G^3hjOUxHjT;81Fa&m_8M40qn<6>Mm=^M|+ z7*EHzxIV(=_^7z!znWvV7z^7f8M|CKK;+_x7Tpqv!bx6B3jX4BU(7vMkTKW{fwf#& zMJuW+=iK-|wLof!gNb9j2(eju4&dfVd+yZ9E5=g6B7{zX18FNk-szNpawPI;wYa?6 zaB=+x^TiF0&U$#-?c>Ymzr*h49gK$C(z)PBSOg4rvAwyAosC^-%_AOx<7p}QGs|B< zHRlyWZznaLY7EO0aaQCNcjk8osq|&A({JJaRvTB-!biY#nafA`)tsZSAke-RET@6Q zum@k544?sDHD8R(Ua^tIb%j~RadNYgrt7DZ6@Iu_6!-jvBgAeC8=aO6dnnA=S*tQ( z*LdaDYbh?^?iEB&tm}9&p8&D69`$!PPh$Ttd2PL5Oa(;YJ3-J!apmgG)k2>BzZ);h z@P#d95$PI6n|d^97o&W%iYq3<^Z)&=jvVvcyZe7jPOxrMr`WP48*1nzpNGoUa|qOn zMm$OMyWLNJH*UI7(Cf-k~J@;#*Hc&0hIaQ{a;l(?t0NCl8L%2Dun+(y!r=x^R`d` z><;&^H{8Q=wUptdsv0>lZ}dEx@YpzHhH@A z1jM`uo=19_z6DNMKbbSF#R<6XpH$4{s6x4^aV|WzGqAL{+5>AJsP3DJlP4V`TL?(P z8CYxB$FS3u=J@&!un_je>7g*qPsK^Jc-n0lo=coyF)Nr`eJW1&Rr{G?s%@P(s^8kZ zctg^E+g*YxSDo}%A^WsbI&-e(%c=Cl|N86){BZOw-kiR{o3l4~ee@KskDp?y1pX|W zBFm>m_`I|uPqBOLPT@2!N#zN+5R7%4bA88N%dVAo0d8MIuzKOrJ?4-hn<_H~a>SUv z&R}&`dFSU9BwCxmLET-|7Dvh%qCi#^Vp5N%*n^ll*(yR5uB54T#tQ|&(c*bwftF=x zB|RB|U~6MnJ`eUk#>0b;@%Zple0=yR4z};1-yNuv?dq&*CH-pTHf0JOFKgc%h6P2r zt_18NOy#hJ{mlf6RU1ob5l}=85W=BU0Az)icWGX)@VF%-=)iC&8r#3$H?fj475^8e z=c4Va`AWvB*H;yG2C006v%`CvU5rHdzjn*;si2~U(=FE}8dXO0^ArsX2T9f3|!llC~X{N|pMJ(y%6yLu6J^u4|e~FXp*VyWB zq0{PMm9JFZ8t}Zy*RO4+(Umyud8dhoSxFMi4Tza}d3Vy*FFp-2PVU5`%oh zEn%-L7e#fKAh^Fx%4Q1<(~?L0^)pGcGbtI0)S-mgyjg+s}+>m%u0@@95}>Ff$TS)tQmNZTFhYl8D$QMU}a zs!Z6$H4H&9g()!SwuK4V(fU2ZrAPX2Z=DA@#Q56s=fllkQ8-Q6O6c{1VYzZHr^Fwr z@F>d3uyi6^V3I1Qn93qTMx&YGW_F4f#|xZZy}}PiU*Y%P-NEk09(FeOu{XMdy{$Xg z8y!fC0TKRFJl?LO92u4hC=34#(bCwnv|~EySX24p*clX2HMR$B+~3Y|IbF$TA}s<$ z#025EQ~AVX8ow&KSBAke8uRFDlu@)p@|Az6x|vd5h|~R4N$#S*;yT0m%@T`cE<@RE zbQ2l4%1Q+g z!)%pfHY=`ryc;iYa=n!J%GA6k42JNp{a&z=Mbl8Olm)?^%?|Evbg(;2rF9556bIGS zJa=6xTy5+_%i%wMBmtjpCH(vS>s_x#n)=k|C-b>X=B>w&+O5rRVF{?YPqtW3B9+9K zL@;}5w-XU!7|}Vh6-NBD8BH3vxbDkrkO$tEa5^VtRC}e_WvF>mZsb&kn)+Q3LwRD8 zRaUaj;)!@gE-NLlrSYP0#@(oHt!m2Z0u~_V9~Offk!c98rU5MRKSp(q@$q*JTBu~v zfA6YOHFBQS-iPz){V_E6=m-5mbH z;i7Ren-pI2-L#x9a5cTe^P}(Z-J7rR^5nUE-krU`(fJE3vKf~7T%N89fl0=_?{v{l zgn6|v?e9q;w(?-lOXX9pwIbZ1Q_TF=8K3e8r~WY#LAQu$c888u##D|4J!W0QTEd}) z7l+=e@5Sk7?g+ls)sj^DsYptn2jaR8=a~$fD8e9~T)o0dYRb>&-65jX|9UP;YZc@QXF__$=2`>LaaWG6N9nw~DEhtwZ>4XAcGUrnG z&oP&A?1k_z1XSTCU~kaE{xFsAg?|GuV;^-C7v`ET{0Go93tCh*=s;+ntM*ZQgJk98 zxCn1iCsLAT-G75UWOFOQSQn6#zbUSX-KEo>bMTv0JPEhZ^PNpR~fl=}Mp|Rli?d^@buRAuzqU zakGWIbOx*ER$Zh9Z;ko#N83;#2glMVc?;TNwplxc4Qe96i@zpXtgFDE7mG%-Kr!z( z_j6cvgs|&JUWD!{hdm5+>%;84KFN~t#`y~0AAgPCJpWs~JpZmdZPAr;M=2JBsTOui zLUH)p1{D$O%149Pn7ac-v>w8px^G^8%nxz;NI9q@C)QcG)C!Jng@@KEuWJIZnq%IK4i? z+0{FoUcJN3bSy*o&6hXQYNEsY;OLeDmptKTEeTZ_Mon8Al=OixA0~tqYX7B3p?!iK zSc}0yGI^>vO>MT{1x9t);~OF9q~e~ZWn{n9c(J3h2Kz)W41)fZBpO2%OXT)T`0laun>c9o-w-goqx7(FRfo*vSE5Za zPi$AQ#(^RP2E8+x0CR(`!Skm073&T&@U?nZKdwGKF$qnT!5#*RK35P})r4gVzh9x3 zPB)nOfhnPb7Y;IeX{WgF&pFPn-{6O%Z}9Z(AF(;u!=HZoZ}6v|{TqCG_&N4Rcgk9H zTy(2B^QfM~zQ%Lg#K=GCUoMDl(&e~shhRU} zq^E^bxV#9OSKdXhPW*-Ne>1<4r~BW%`3le8KE?C5Px1Eh1>Ro1l%D#<({2gV?{;yQ zztcr4=~O-fWHf`U^c7Kt`QlaBP_kPk8Mq~Wm_a!LY)|^iCC8@Ya?kFS2c9_!NqDRtpi@29OLPHCLJm=*2BG>hq$-<5I=eNbNu9k zpX1YqpG!xA?N%y%TIiHzg|oI2O6wYrK@pwnJ%uZd;+qfPh_mUKWkjeB>! z#OsR%X3GWUS&sQCF9hgTQk*E8VFTA-kjo`d!|zaa%hT+%s(7gs6GBlTtQnYcVmRz1 zQUM^GAMOnbA$Dh&7D|8?E1l()t*C29+J7Q5r08+LE%_iyfIR|szItHo)5 z(N7W8M4ZYCXNls}|LAIgqwzvoKge*a+Lwd$&tdM6?mnrbs}xs2w)?{Ce@7|+#2987 zFRv2V(E~IeuOQ=or zRUP}dK2$#fpJAlbt;#bWbu$>uT}($&E!K7P8{uY~a|g{dA3shC!$LyqFl04V+$y>E zg59P$_;3BXVZK21jdC{-7QD)ujxUX-H1`_ffFtcTADsaH8VIEsdwtUN!})i3 ze)0rQj{XUklVf>OB`g5MPAHr(5jRB%07{m^5D4`DjWN*FG+dFd2cqR#U--4!r^-=f=?@U10OGzZK@o8~hXZzK5CU|OW$ri6d- zpAhm=b#HsMy1|n-zsKd|6yLu76dxUYhQpnQINW`Rjot{G{jI7>o|kmC@HIf)G>!oo zko24OHquC}9P|EK7pZ;9fI9w`+;9l4Dkj|WQmtW8heU?aOQe_cgeRpU;PUDemy-*e ziF^DaM4vk0Ke>8~)62IQPcCphxx{ic!LZu~7xC?Rw@@5N$AE?PfHY~>Q4RDRUs(Kb z31kfa^dIZ*y=E2b(GyO;u1OR$24)A)g&8nL=Ho{{&E6=s%e2CDV z!VzGn-37!vp@kJ6f{N&eDM#s_sv7x**?UbokJXK-IG=V?N$fvv{OPP z*M6QG$_jn2-ao`)#%O4#ntH8o_EPCgP6*L=M;#e8U_8rkV^{Z<-~5f$Z(Q#3HQ-;B87kb^xB2XNgS|Y^p`mgU?sh;!^>}6lS-I1prY?9&M}#0a{Mo*g{6it`#-x`N+pdr zy>BJP+;Z+gU*f5nGhy<-SaN9}?pwMG zzP7PI=JKbU%Cv?vwA;#Sw_%{xPeI|mcD&*REnc=xZm_=p2uz^SbXpHb1bZ9IF|&{` zo}>BqFxJ+yG^VD{tc6k80yP*yN1ci&`kiRAAya0~4`8lzXkY2rw5@BfUFJa{Z z1)m#7Gf;mF+1I6$lq%3TvG{M5?Db$0Vc!>mm(TcJm?tLE`QNMaXZX9Pe}Sj({t1`U zV{G-evC-YZGG9sOf6z{mOpaA1XA^M8f#NwVE@n-Z)?oPjeuiG?_Z0?PcfM=pFF1~o zb;-Pv>TWq4B5D=z6((No#<0<&6k+nn=2UB>FB50|1{X3jC)R2=#+I<)5B19Qu@dmj zQK4gHmBQTqxcOuIfqSx~8sJJ<##NL6oqC-f(*6*$`3&>L1W(`m9{>34zu<7^k$isr z$)DrbpZ+U6-1`XI8@pvWajL}gtWpBN&;v%zHC&`=N_Q&ey?Pbe#{&7`PH1^q-V;n{ zcOv@Z;z5*-%JVMd6i3^XeQ-P?Ok37{m+k{;>qi;@Z|N^cyas`FHfFg zxtd{>&1A?o5$aIP|3A*-r= zA~L)NQ%-qcpc1#{!thcJV!^ufg*mT{a?()DqnEnF%&xcen^0wwCfaE#t=WW7>7p;z`pMm|yr3#h zE>_8SY62709+E12B9~WUa?F+-<9Q~P75XlGuU%XP5dGWgw=wFqFzTlmbz5M)R9ZHO z8!+N@y=4mD)>SF*bqOzb_Wk#8XXq||xer>i0SFErf0YzpM~w9q&E>_CELnV=52IB;=MJ#Z zYe^Y3!%Oe`4XZQOXj)&|8MdZ4*%-J87OYd_nlhZv$2Y6ME9VyTs)>u2!EX(~vDgnv zFd^%6GB!O`uK|#(!*E&^zc7j@Mm5V-lVStCMgtx*SJz%JuZ#B~yf(KJ9jCl7o4lN! z<7#$+C-44%uiyL@H}gx3dfR9xUC9h{b7P|xaTI=I-pH~Pb7^;$dHKzXxU*S?L8I90 zs@70n-29dJSiIn&tj2`~}QE__s-0^)60Jt|B z!H84tESMi$3>3n^N?8cB(>4auYkphYoWJ2A7b>>n~o^m3%{;qK1)8|A3&cD)6JFWQYvC}s6;NE-u60) zJmK&6av63p=QF%Md5W9q1zsIJ#XmmzPq@4L0C(kef%`bzdw_0xfL^Cxn*8T-y%t&u zDWt)_Z=nSM(}kpt^{!8TH@Yo}PyJ4UgUyb-V}7M90&bM~y*Pc=J=2i`^xblb1=f4L z9*k<-?EO4E-`xDOq>Ee&t4YzmH2GKaB_0u0@M@Z2y5u;UFlhxK)=ocdNk@6Ye7>79 z`A+<9w~Bu|`s#z}fE0yuMBND+|3X+4S#hc#(l93nW?3ek@y(XG^zeT(FDx*w)cA|P zMc)KWDJ!mXwonlx!Pgn58hGlPYS>OZrREQxedqp9ZrDe?&*g?d zGafW`Dw>9xD7#u)McG(GHG@yFalUW^K6$T@Z^>$I;{kl zWOGqXXl=`ZdYHZJ0`QrPRS2!4;~Ctmkq-T%tc!}exP4wLJP!4X>PmkEvIocPN>>2IJ~4G7V` z2)D*2E9OEom6`@c<|T;2)N6~J`Tg^t44vR|y9DJMW*rh%iNM6X#++N2ak`8@;^aOy zuiEI?IWd9(Z`3&dRuW@ww0?Y4mJlK6CpPzmBYyAA9U*p4rkENqP zri4?jt`%e|*1Hl{?Y>YtfJh3@A|f+F;5k9I0IEP$zslSU_3OcdC_seW=HDlA?cA)m zYLTENg@5LF^PkNpxS3wz`Man1`sE++^~>MOXFNHVj}-JXl(NL`S47Rv<|%NbsuKE=~le~=FQ#Pj&@b3DHP1%CDEpGn^i z!eQXXV6$vPM7)rpak(?6j;WFxCBYQ_r2?Q+oRlAIwB@(6$r9(2RS`X4ypSOTZ|1o= z`DaRCM(K!7kC*o5-_#|eJ9a$q!aaf#>nPQ|)s|W^5+aw5?k3BXjDDcYX$P3yv``3a zitvKH1pQ8{bSOCNrZU9fpv_9lhn8Hgs!i=&gzQ-elkMJ1#Y`(7G#yW~ zSgHM2Ct+DGLJ=+S-O*S0+b4g4H<*<6BN&>Bv8V8qdw-TNQ~h!+LSc=Xx=(A=z_T=2e8oiJGSnL!S$ja1STd>MUXzkGE>7CgoC2BHUsK4QTl46kSRWT z+#BO&bwt0$Hl~2#L}=YpRHBXmaO3|z4x3;7YM7ZrG4{gon-CZ~ieX&l6TG{8j@7d{ zUY&lA!`%;Yxcd?IM|W{Bx{DndHDIs2vy9RLKnb$??y*{zrf^vaANE9Z7g#TfKmgec zA0ZSS@(oPFJ~!-vw{emxL(&P44>K`O?~z=wPn8G%L<%NJ$!lah!+3m&@$?d>SL$y6 zjiFRXL$PhkGQ}85$^9l!oA%G(juVO8A$&Ex~FE;fKrh| zSlTcLE@`EZRs9sgVlr$?M{^>a;CNQ}2)LdLi-5vmpm>C3z+%OX$N`1$tnrpwPt~=m z8eA!VGBS&`3d<^4aX(&I5L4qGYA>BsXzFcwi7(pKS6Pgnrxu!t=saJO5K@AU6P zMHkS%1j@czb6fqJD+Qep+{N8~F;>e}E|nC^4ALRrWR+pQD&P^;3nI0Xq8}|~iNFm9 zhVHO&1OJ$^&JZX6!m@zN5VD2f|8T2=yPNIOVx#o6P~yA0zq=z%t;dE^j7c|}vOkpA zMC`?JKA;vTa-X8WreTRN4pAm!9cW4F;@4AWq7}H7MQjb$&lu|x>>}xWIRI9;ws>1A zc?y8C;U)^L8ckIcq*B2Vj>jD8h$H%-T4$l!G&X=Kjym@wPa&7(*(vIf_G5VtF@&)k_$?y7i77m@qizBS7+=VP=QdL)9)8{xD>5<+~ZT{sUD%<#>8f_GP^czOB^t5uHu(S7W1-N)w- zet|C@{t_SG`y3nnEp*Zj(zIPxU4%Rx?wMVLkD&`&wyGf(>U-F{)tFFg5w`|?XXdG!^3IQ|ANPQJxr zHN`TUqTlIZ(Cy2)8@7kl39`J?uTT6l)eCdnxlf0i@IOuFi$cXFj8Ws{-<7rgb_}e% zsVoVj!%C7HfpZd0!X5~b97NM<=P*B;HCS|uX?!sRR}>0>PPZeiLjrGiQ|DXi%TqrMe%=>D`*UAemg$l`+8P|lWs|W=QI#zu)=%#B(#wUQ<5Vd7w;ea*m-jEqY{ zBjvrHfq88VfI)=Z_1gdxQZ8;-PqgmFc&+j|8AE2mTrFmS=P%B_!?$n$fM+LPBg>~~ zx4LMzdNQ95d1l2sb%86X1NYXE$=P`PUl20$&w8Rn=ZY|m7Fe2`S3)yEzI`%pdM9$( zSgMZ=`ut;2f&fn(O`ch2O>X}uC3x0uxkgr_#Xu~-+EMcG#iS0*epRBUT`Tj8l4sgs zYRbGY_afp1>_4tKX7Vt4Zn_C|NGyRnbm z%>#M5IOq-NH+AJr0DkIgpsAr-qQ3=o5a` zM=oJWlxcO2>)ACXiyK^ApW^)b3}@qGoR5!jbnzC)mv80Y7uP4anO~vXX`$2Z%e(#J zF1S4H2a}G@^eE7$^3;N7Hr)(~*6t8AQ5G~xRmE1_QRwZ=yi@?w%bMoid|E;}0*tO{ zcToKOgf7DE`fPoJQLir==oO+dT`GBUb#;V8D&&$u0-h(b{A7NL@8A9&)A_5W8{f}_C_fS6CBEa$ypy@zq!tVPuFn1O0L@~?q5;hSMaM(`d39|4PAi~E<{{Zvi z-uiS|gqJH$wsYyFpRah?RErg+^wGnD0Gq_zX`snOh3f>am~3UD!t4nF+jTyx`>!2K z3qf57@ze6eUnv<%WrKE}X9%<9^`FXVp{PR$`r>3h%L+(aD%4-)Rt?+z!r7mA#Jp)mMXB^4co`3M>6r@ioDF%3wfPQ$-3hH>mwIrQ zmgpSZEu)*F87Z&#Uh{!{9f9l)ln#3k*$?S<<1Iy&O-(AT@yvP%_QNmtp4?@Wepe~= zRW1RIi20MM&BOlKu1IKN8Zf;jm05Fa-g78#nG{(HYNSFX%s+D(2=H(;_iPYz5drDT7@Sl*P{nGGyddN!4Pv8>bq4p!Ns_nMlF_6h#$-s@B!f7 zO%04!(>rTLqyV)Y-GbnlvLSc82D@`Zp0N2DtHk4<8^H$WMBea~5T@L@=NrnKRcEn2a7UX!Xm`pEt8p9AEx`?_Pfi&QmQ1f~IK5uVyX;eSH9$PYU3&39$cR6%yv+kz#pT9jUnjZKYi{i&HX6cmDX?1# zN@L&CJ~cR`g~LoMG>rFpVmS++6q^=0b~wcXhP0*OVQN{ZllgM){63Z2yu)5;x+`E6 z%9x!&Dir{acDwleZgE8?O)lpmjOI5;)0#L6Z z3A9*SkNqXM2iK)QKAY*Lr*!Qpv4o#yaMWcA^*glf$J(O73fcGg!bxyEh=pgDY7#mi zo?+ejUtg%=HkdV&&uj8<;xF=dU?T0SdtriZ8F6UmR8qU$!o}oN#wq{)_)9!H`4Wr# z2AjPR(pFmv|HWxV&HT7?t3&EB=Y0u7o%eepQJa|qgvnUIAxlk&FsFWz!%EjsI?Q8! zO*L|~2V)G*SRM7>8r16Y(zo4rLrn(n@P`>kz}G*nP46wvGoC-r9z`gti-e*2Rroos zI1a{IGA_9=Bkpy3g=0Ck!14G6rpqg7cKqdw-%7s#yBoXM9_~x0fm_2}Yz=m$RX|@_ z1|;&-+U%w&v1;XjY&*Amsn@JGG<;1FK#f5~C#x`Jvlk`t}_;wVU%!M5O_a;k?GNlag9qxK?(eVA4OD8dVsf2;>a(ML^vRLzSk^XqJ z+!=>jf$0_lRjN{Wp$O7GCPdT#VVYl@4hxHbGdz3y2h5gZeE;@qJUI9W4-OvT?#=`0 zCqP&Oh;^##%z1UKr-I$tzdf5vW!4U8DOeU4;=Hg55a#N_ah~ujFZ=`C%vJP&c_#0* z&zD>Z(n2A?jnn6Z8D{q$7~DfUd$9(F*J2L+UD)EmtSy%t>%5XQ^=ZHP&F14w<&mQR za4dRDUja^_hVpKI$x~R2mfuOk?|@KDXzKz|kBH*1H%xJFtBb=?7kk52q0BPcF&BO; z%x0~RFmG)-<4x?HnkTIK*OWg9a2BDBy+Ly4rn&srwC1LpKFJA2_<;D^XnAu^YR4(U zcSO7PV{nqqYe{KlyV5-Q-$U$qwSYO1%_~KC%e7LS_gEtia-DGKYQFSezJ856-|aip zb~8?Y^>)zsq`F4Tp*R@JyLnBOjsmc1hFKF*OGa*?$cm-_weXv%@`czCPQCO>2LYk; zu>ii-v=F>%+Yle@e0tN=UjGwmhAf1C;rLG~08YQe&Tt1i8@pI#nN$E2Ot{%Ehbwfc z7PmF-W`5l}63x8&eD0GuCt?=9h1Ro?pTTud34bPx*Yp}UUziMmSsyW8>W$SZ^AXPX zlCL{i(XEOeu3^H$>_6ST&ZAr&0^0>DBiTUvA^adRR`_DH5*R3Q)?BKZ0V9*jQZPN zt?rz9jgqfSN0N5!G;?foK@Qw8!cV|LkVStT2go;VHpD?rU;{>l85UR!)&8lIxDp`3 z07@$Xo=fL|Czmg!@Gs87w2y#4`Q*>!8o#q$g#6TrXTriHGy1}4In%fsuIFE$fa`Z+ ztqAY=n<5l|a>XU$%?q=65k){gH!GY?Rx+%e2z4h-;B#Kyop0+q^vcAZJ8+PedTa7? z7FjMM6V?$9W;ix1-_SXki+K9IeF6<*|1!<^xm8bmKhVDtrJNA9A}ba7Kqy&+@c(e9 zi$}YCJlfNiBY8pf)S6&KR3YZb4cr~?0NX+UN8`Ccuc_?or1&y&N2)<>YTWC@Ilp98 zJ173K03a)_=kVVrd)0nOA+FZ9fp-xx)hcG)MqL~15F{qoRU=OthXh0v0B)7=s%pwL zcwRCC&4eq6=keeOiHV_H+{wx4KKrr_(H`}?0@H$wBFdqHb*U~3c>*3{3hG`&S7Y;J zRu`y>p2;AYcrQTc?m9kQNr3F_Hpnb;8sKmrY$isS917FcRkp;l<8SeIPyP}|SFf-k zy#BY^$dq{_rOv8PEIba4Qlyl@DCj?#{W@G<$Z{h}52$)PsWH}MxH|H!TcNv78dX?+ zti~l!-q>LMFpX|IA>3vLZtJ>YaMd(JcFJbbyxxRhr{?c=Kn015_lEh~3~N|GFov0M z2$eIr_7j$(*B+pqbR|0|p0p(#X5HY;`S-Y*oZ!XD6a3+azsG2>gRQ|fMuT0927B_F zfOt0gBPnq7MZEI%pium=mUL_;On@s4s{}=h@vI}}HCtq9)~inO>(+pKvqr~k&$GfB z>1KY7$^05Ovn$-p#+b|}m@X!`yg9|y;8EmZ}ISnHvAlMiN-bocYv_2Z{s-&3;Yor1gB=ZFetCBZ^*B+fZmDrFPCh%}s}r zgo-Xo=Jbg{Icn_ z1)jYA3Ws|i;r`x7xVL*>MhzJDHnGv)wA)nvcFdDmN0hC4V(53cDlZ%lRyhj~_M=`4 zos?lq+(Tbh@$H3WfcST|Dy#!mSs}b~moC0ekl6^O8WtMWx zbp_5iVa4Di>#C&Jl=h*(44)3gSS?g^mm=B$!|q0ktzL>do8rEI2V4DCd2PhD$b>rg zuhx1j%96?J1osv9!!5=-NT(^j)780!+G_+yEW$@E)p2q-llY!@;A^~&|%13a&-hcv>Y(MthJ8=!Q?`}e7ITJ~mD3aWIjgEx%ROa6yW5bt z6B82IsBb~Ito+0{2N2Fak)v8O+o_ldq1j(%ODtD&JU=NE0Ie3sW^V(D@cN%?vp_op z9}Gdkvji~P^L7N{S4fHHOi!F9FiV3?jVe7V^{l0ZCtf9t_{##@${G^@so|rOK85sm z#|FI#)){TSRt2w1xC9{7j3rveKq=|86$Qin&RoYfF-!v;rTYy~6LAYM?nw7G%0ak3;(48 zpuA%n8>1pgZ~b|OMYfPM>vSyqB)rADi&r?hcqPO4osLg%bnyd@E?!`^m}9nBfOGLI z<>_osc=2zg7z}#yss)o?-LrxrhxX>Lm%4(pl7^jmtJYtM6&?|YQLQM8Y7mV0iq>u3 zX5HV0UX;|3T+0#O+VSNPSv_7ss|9yHh-tBRJ03)=*zQYqz{#ce53bjRvg8q|op#Y{ z4dki5ShF|NQygEsz>`;BBI7AOIQR@7-uVgs`DcHMUw!sxc(DHgwl}uR`t!_;E}@miZ&GFB3n}0~OC;N7aZDYO9mx7k$rA5H0vJeoV1!v2wv<%P!zfd9w&-;wo zC-B^vkEVF#^5N#sYJRBwiBd}1T#m;_DSE?Qdgb7<-cu~L6R;Fw3}%=?rmhSWN|Sk3 zc=_+N6Y1#hll?xn`)%wD+GW%bn}1Vuzq|%!^E0ay2<}q z$E3Rr=~jGD?foJgVKWX#Gen`wH?P&p8DRE(Xq+zrqU_>GS<1<1pNJ4Cs!=l}IPPX= zR8Hfq3wVUPuzohHw{AQ__4}m*!K-61l5iX4YwK&iWKCkEHO+})#9y9&FHQfSpMHZy zK1ELm2Ca_TU~{h~yWIdsXCRP&P##}%p&{X>_KD!yVzZgM+3zOhc|L2SJxcsFr40g?t$K3KFkfEa{ zVGB*K;l>m+A@reSY3{iD#Q^xdk}KI*9UxNGGdTTh)D-uBGUK-%NLLdZg`E*d8ELnP zMlbl%rOIXl4Tr(6niil0?&)9R`PsKv@)>%pBTp~%i5s9j5jz^nCjDl01KM-|!}!X)Kh#fBsxo)?kR~&- z(EJy{MB|qcFNqP|A?Q`DQZNF({lU%`-lVXUvZx~%L59+}HThp%&YD`C=$%CmoQ8rPD-y)ftJMU1k-q9~7x2-sXJ_Iz0@#y}}f^w~6iHF19!Ju+bY~qrWAU4Z>nT zTpJL=bfWI!i^w4fGfw&8p7d%)IV(@UWMA^)j{Qss{i_+SC+G6Hyg8F5{5SK7e6FY0 z@;SYFB_D12zsxc$^Gu%bgD<4gGL_1U6y0_kopxJBSSXO0m0{QP-G0em=zG&@|E~7Y zYC>El%cBa`U9vpm7WgHNPCkDopI z1%CGEmw0sV6O4viQur5ZujG&O3_|Ws%3a>1(X2#Y?cmoEEKA=%)oYPgS_Y&kb_~k^ z;V)p36+Q#bCq)#2%V~zo*$T^9Rwx3p+@QXNMPZsiIv>=I1YLRnRLThsW}+K8A&u5m zD4BF9QV&(F9zE02!T2bZJMxaddOB%>Zj#88{)gKg9FE$!ztt%%C$g-ddH#6liJ(?f zeb<_h8Fz=Q;}c_TR=z}H7SPVV_#;SLcJ0LaqgrtJys%(M?6{5+I9QKSzM`T?M&+`#jQ?pL$`cWzXg68$aCdU9ra~VnTY6;mew5zT=9h!+&OCrV~o29s$Eyi3l z2d@I7zYcs5OrzTPpd!_cKTzpO*ou6RBNs9%89(ebPEsmZrh9=>)R0r zKhCO+Y1+h0m=q_to?T)*zr?eXZ}8+ucq_ifMt6iXX-mg{d6e;O(lHn-B(%fFE=f~$ zH$c2{iTf1?B3=@kV5mJ`c&0~&6MyUDgUComG|4pCu1^)j5#sL?N(I203qG(raO+#x z=G&yIp(?#5-*+di+e3)AEasD=Oz!r`z4>)FK)=oS7F(R67he3!aCl%cY+bjVNIxEV z-Yot(gLMSDk+uF(END z^Hzzs(bOx_%$4r*2eeXXt&PHnTV5r~a&65@t)CG(VF_bR=?X;=nu8Pkz@2x7(yhK6 zoY{hfSDq3^{VC6Wb<8>lfw7Iv{;)Vf&V_(D#=G;USggkQ;piz2cOT&X?gQM}y^p&) z_p!Hifc>pIa=nRlr&$Ln(C3wxdP5ZymIPtQH>jKln$sdJ0}^1=P0(qzrOyCyU0|vn zaXnxz`~`@=S3(&8Y5u-af^Mcl^`V5*93TBJv)}-SVObPl53HM2_WZa4E+altTTg}d zhPMcHy00xJIV$D0c!aaWL7GTYfANfZseHsZiD#pelnxr99K6P{xWS&X#`aHfDpZv= z;?~tk@s+WBb@0Jh-OW1}w8^R4%WDMyr~c6Lk3ka>c}$Yv@%-=0#L#W|?3;}h^oWNy zJ$KxFzS&Nx`^j9GR1x?;r3kfu_qKWeyjP%$`|}dzpd2km11ITG&0s7AF_}=mgpt%d7`C(1^|Q#GXp2oW z#zEgD6sLD-t0jg1muKJO*~zzfdi+Oh^|!G-*jCJW<@LG={N(3|xBuu3Y6lORZ<_0@ zFP|q55@Vy<@NE0<9TZfYgxc!JPQ@00!>^h@o9>(1op*?#u=-cgpS9X>0BqvDx4gq# zJ8jJRi{3wcB?q@kVa@ezl%iQbtmBqkT^_KTZ^?H$~aH%}iD@^m% zU3Ol0ot7u>(mVA`I>kF*y_EuZaaTE4OshD-YonEPig1GR#2@N}uT@wBByAb`Oq@^( z)A~ZekW>l)#R%p33Orw7mCdCkf)wg=@nlj!mnPBjS;~C>A9HWoBUz3d2pawNxQ{%m zvW~2ytGc?RmRcHVwr2*50R{sMgxL?fA7-$>a)JG_3+yF9XZLhV>MC{DnVFSmL`G)Z zcepzj zOPxyY4E)*5Mehf{(qG{@zEuaOG9#198I-2{yD8)ffDWAX;G6Ct|{6)Qs5HRl&F9c(Dvs#)MQ=N^jNZxQTghcBqVoLywQs z^CNhT7)i zF2P7q1w0sw)P-myUg0S2Qktf3_@r4N}Xg(AB*BJkoQyf)4 zHcEx{T z*oB)*egC<&G_W@(7)R->=Cky622Pu6z9PzLr^X~6v|tZ~22etiO$)R<0O^9Pog*nU zrC=ytPs!RxiR5MR^-OzFuPi8#+Cg?b2ug;jg3@0Dm{EnAq@^EH>5}f1qd?B-gb@#i zWIJ37BF>Yfg4fXx7LG=)#ztlfZwnU3soMs`A-qnKW+y#he(mPirUmu?h^90iBs~MH>Gnh z@iY6}JC*Ppo2OfC8BA&j0;8lLztnP@qcU7RK5(~(M{_TNv#wl=n)y}+VOrWC<+Y~$ zcH~*!cKAG3j_IXt-Y68qL*o)=7f`or&#W3}!En~xaqnr?(ru^y))-}#3OlKk;>n~k z`X`;L5v9EN*L6MGZiAlHM-*nDOyqrYy_nfaV9X4=FWKZX-_5m!Bb(nP<&PP3>@I|A z`>?7N^f*QdhZ7}ym#~_9$I@m_f8d+}Of|t9V%?|cQfxO;n0XzVV=+uo2 z?{o{kfBpsh>YICTbM-FVFrT$saAWN@EDV=makLni{i=3|;b3!3)PC@D6p%OwO;hDz ztb7)sz%a9Y)KhjBkc}TO>cQo7W{(Y2K?SGw_<(T$m;i(3ySoz4#xSr(HP~1P)7qin z3~X?WNMf2A@ zw~fN-B*Qea5`%B>^_mjzQK@9c?G#d~#LH zSnMegYA)0l$MH#O}Mjp?Fbr-EqpFz+P1v(Je$gv_IAo^+~}K0UJzfWQC# z|Afix92SfNpwnw2d@C|f5?u(e=gF|4$7X)TwJAY3xEBgXcUMRuPBAuj-I#}unc#{+ zyFiX{KWi?n%v+BLN~E-b`0QD$QC>+8qDJ#t zcw8GR1{s8iV5sn+B z8a>l!;FO==VLwAXil*v_K{JeQ1-#emz__nq1t6Gk=B)c{R>co62EPd+Xg>DXz(m`) z0p@ct0qY>JM+vTGexR%Pdz+9JT4E&{G z4;F_VSQ>R?{d^8ALNxLG!cUAb4%P84D zX)H@I#=_L&&X#KWfNMaMfgMozml;Lata7Y zlak;^x+k5hE_yd7v%%d(RV0I4;(~0mI$^s@S6R_)>Hb7#VgxwEpE=S_z%M=`1LPD8 zryy+YKYw*H#E{5s3UD|y%wybUSyKU^4hOmz+BlmgZ<;@@XgZ`*gbg;UqAoC?g+TGdIvU_Z^Guv4cJ(@X+Qm5A9}rh0GvX> zFq@eeeq;L;oYPm}xPsd-gig-aET#$u=xzisXXLA!1E600uZ(>2F~J0F+yGr~wVySS z^>uxn;mn`MZ_ed6`E>0lXm&elK*t(TQlvjhHAfM8ooc1ue!A6lhvxgx1oyM?RH|+N zX6M7GtE`h?I@8Tu(4-wH;1GxC90j$}9fAht)W^l<<31&2y6~!;|CTVZ_@)0Q#2N{5 zqKz8yB80>cr8hZyflHj7OZaOkTnv0^r$c@xBd6l#7i+2vJ_ulTyjjmLMoLRh7V>&3vuZqpY#uW2h3a`G8}={yg`@j36{@D245M*dGGm3CM$?RoLq|I%1hx>=8Mej1=>wQXFZ|a4 zoWv3>*96cV91K4T-;)mHCJF;jh&~-On^qpUU*K2vE5#V`)mkvRU{~O_&Lf&{wy^5v z%&@iks})LJZs#xfs z({F;Es9{ioc>DK&t_4F5QOBnirrKggi zX6Bc!nTiJR@iyGdsaDYy^i_o?WBe;O*BHgk@tK)BXHV*#y5j=1!9T74PU>R?{=HBh zBOcRzwZ$LoaU^T#cRMibb?vIZG4#9jP5?6w9dtW_o*{VM(J7Cr=H>uO&w%JrN=31% z(D&=;i>OBha1_>$vvEo!lRa6zsMe(M*cu%`%uS)i_U-T)q8-Qq!K4H}ei3sVu9)`i z33iE!--i$q{!H|6U#l$B@uXO+EGI)w`MaqtSE5;rxp6hY$HNB zC+ju;!f(%!C_9apX8W`v&&z8I1$_+ZA2?> zCn|x4+qaLIwg$g-7F2cJ-{s^2PA`t&$?o^?<+ESF!PzTV972PjPp6T5ZNHN~yV3z_;3I6a=cM zop_?g^PJal!g>Vg62Qh|l{^$D))Gxk9UL}Df8& zukXT*6%#Aq4y-M&!}_wh(sKjWmo}6Yl;V%?#9QGysz7BKD*PN_Xi01kx$=ag zt?Zq=T{ykGuy+p|2f)8P|0RqDBUm1<+I;3bFEHi#zHxw*7m$=f-;abcn{$j7M_pxI zrA48FS;pY~!*qV-Jo*$S{4*e*63aHMD*d(um{gFZe9dgk2VAW}^E0ZKX{c~I^SvYe zK|k?(g@4r=aQHmQV=zPM0ozW*!aIm^>Ub2+3wp6={ zbzyOb$=jrKA&kFNPB))07DQR$-_EbNMX{qOJ!*IUxR7B{TMEV2a9NBa-^gvVBf#By zaejFYM`wrd>fi}nTwX$_JA!U^1aIH?5boXh2=3qg06uu@L%4tUV^|n2z-TbGSA90^ zfM02!*(6pc7i*ZEzf0yook9@D*{6XjK!00H?IK& zW&{ly6Xz7_k#-`4<*=ON#UjJanGS|#MJ(+V!FyIdGUi@d-BZ$wxO&zBAQXy(N+gWq zf^!>EB?a*^Pw+ThSQ8ImiZ97HEbm!)AgMC^Y4HtuuW25xw@e+Fp#53Y8Vip2RGgKs zIgPm(?>e4*EmJ@eESzLy^CT=nTS5a04TUt8)!F}w9X{Xt0ls?iPw;I2q4oBIsuYS! z@Xb)IT;kMm$|_n=Zjukg^+wD|ERQ4aO3FKJCEniPE?zI&pnKcvcf7b z!7u=bifpohkPpQ3k1|jJKJr|isl}5jR6MeTDYqBELX~vigbwZN90CJPQ*4cGj8!*q z9c^`dZ{;rf=4x|FddLq_NgRTppGC?*_$yJwZH~2<)8y$A_MxOQrqe8Lcy%qRAZCBUI3(;v?S?7R_(XTpie(@Tfzq*3s(--i=*1y1)Yj@!0+HF{0z6~2Iw_t5) z4c3;{VP$C@Ru?zyRi5UGPh^gJkDEKD6Rw0atQ9Lq5=sRAq{E*A<_Mt`Gx_A~33G9N z@4Q+hywZ_=foYJ|t3?>GbAoP1#|$mjdw4+ebDc}cY#7CofG7GK%`4AO{461b{Ma>^ z#C%>;)c94iQhkH4Zto+A8DhOuOCpyQea0SCj3p%Mcc`H_(CX+6X5y& z5Ae%}e+AF>9|5RYwf(Krh1qNx?jFzzmE?QKLM_aPY`GZRFy$&rj0E^$RLvP^u?~KI zEAprz+qhj7<;;R7bqf6o=>msDpv7do*Zr4-XM&JY;I}!mDBZRa2H}_H0SXyO0ZP%G zE3cUGB7KgX7HDN$4Eht-5%rJaR`ak2wd5qT&)HBS*8eEu2;Rr&oj3(o#`J-(X7OfTS(VN$5C=MdQ!u5$|@;byFx!oE`rW5V$A0vJFt>5Wyz#Pi}Ye?JFj>5x1m9`%^F@IJq0?rNIED=#WlGI-g=mKXbt_9UJR(VbJYc z8E)?g|(w za|Pibf^asgb{bS$?q_~X6o5BH8+O(>54?6C@MlEZS_uOm8g0QdpEYL4oROt~xs{=* z645aNl7Qo{PNdHndQvL0A}p&JJb+xog_@sSo@*@zOs3Z+2U}YJ9#8pMzRBcw(;SmP zvvY(y77GF1<(LK%J~Mbr4TB_b<&5p#GU{dULMRyN30#IiY$-CI@(J4#q66R>>jf<{ z@+FGTt`r^$=8j z#%gVP7y@=7!SBEDMhI6~+n%_sY&IBAN5S#Mf&Dz$`yL*@{uVALC$QLGwAcPs#y{m` zd4W-7OEdSj#ziFNh@o=rL?e^4EvFK9hB>qs<6)JQ4?&d5|R3yb>xQBwS9zH|onEms#BBKMQgXy1ZjIUR$+-IgYpWt5t-z|9jW>Z=ysrb>g zYZjWS3x$pFbx_7sJH@zY!O13>K9WS=iPCZ|8BS-QEMEh8RuF5-?%s5>m3o*R{2@T`xFGT$i*d+ue6kBH0gbmhkFx<+NAC*2tq-U^KJ`; zs7LNs$z{89`h@i*Y%-oZ&Dxft_VS0 zAQcvB$0WBzd?h@Id7cx1^Da@x;Tq>P74T8waM0FBhp+#eCC*}iEzuYKS zch9>l%3cFF=nv~#I>6rWGo4Q1@N^rt_a4DyT3y3uf(i}?W4N<4PJDgyp$poi#QKw z0K4yK9z{;kABdsg*jV+g6VZIdrDgM=c^}yo_`5IzS+>N?Ts)tWhCz$>DVz#1v6A^& zdI;w?_m(z?$3HvsJbIdU5gHf;0FO0R>oDJE%@kgYB=jcQa~=}`*K=D&MSjAiMn^6l zHWmD_N!$UzDqqn!Fiq;{i%>oHKGOw3L10Veu#tVA(?(o1=}9i(BPu1qQ)I9tB05VY zN(~_jhoTSWs6RNPM@6oL_YD5zrmmT(gpT6@Pu)t;CF>14C|4biGM@LsL-G)dZETC zy(8C(Ms6IRk6DG+Oh(aw3EPopUtXw*eGz`gt!8u-woIsMVYJ{1S;|ayNw?}FiNh!G zKWVmT=_qAE66Sva?5u-!o^*}!l9HXPGCeO9VjkSQiMR@?l~;VE;f&5a7r`%$nVdDw z=8S}f&@st#Q!gh+qIcZH68h2XtfG98FXOA#(paQQu>vfFI|W1`*|*Vei}g92#mc0a z@5-#ESF@sTj{dpef97TZa~;{=Qv2Y$?Yo#<= z{B2WI4(97&%O+p)^Crxd;4-;bV@#c`QjX3F#c^f|pa<6z0u5Z!{Fj8k#I-VXkq~!{ zd`J9=@C2S8%Gzj3o6kRMnJa|`h5+Kau>3=3*O=5e02K8IOBJV6Y8ZJ|ANzbb_%C`E=gotlD%cS+#ycqNx}-25O5>*q?NB^&jW6% zKww0Pj#Je{kIkk+E=+TK&wI5U@Y(J|_~nDYg0qVQ81;tM0icPf%6dl0J1^IxY%0!9 z-*fKIx*|$etWzL|yM!^yKjkqHJ6U+VusoFQV`}_JJ_gu$fiupOU<-Mphdb+-gg10Z z1gcImZGF-~SxCImz7B<6C*?(o2D3d0T1CcBNF5woog3d+->v`UoFJjRagQ1L;O3dg zr}%$^JkfEPrasLVX^r*tD_LDGremBUjhW&XH_xrFHO7Y`{DSLA%vG9|81`s>j$oul zz|pCS$0bEyl6(rv^I^R4&MrLbIetyyjM|@f0u|7E2^&jmi}aadGqQaq^d<%w2W}kO z=#}^ffy4*yL*STzf&C$jhLwh3icF>xm`tZ|a{e0j4!7WHa%Df=&KP>#F)WQ1?U8^x zH$H&7H$H&d>o?%e#tnG;<_GZh%@1K=vl?OMoP0HufrE&kN(^Rj-65DN7xA^Y``j=+wp&pps( zBN9C?>__=XX0mZ}Fv+1a^{eoq3DVQC9{mpN9Bsj?qb+!{`w(_dw(T9a!~WR5pJ}?b zq~q!m4aXEN0LJx=iAoyf74W3l_j18#Iz)6$`i<{f{alBN0M$51`Ua z!1S#<6UFs2J+RGNu6;>G;p&q-b+}YqU%CIVMWVV#am6wYsQ1$RW3LB-S-qvN1G^_X z@Xgkj_U!-e=}TA}uffv7I!tF%m^uYOF#*mB;fu1(!R(Xhh=xaKfUp)`b_o0?!GKx^ zDy_#MrmB$ndV?NoBESwR0kctd0O$&B3tlL!~hFyC9+e**K_z&a*6ha{!TVm zf|q)9o3s82xl_=L%(c*ak%5VVEs#$tF?WJ-5$#LPaFR5g5YYJSZ7w>obo;>@AQTlt z@3j()zU)Ba`6|fqEFiQTGp|@!#EHp3C+`SIJkD$H9N!WXqaP?T07*Kh+6aU1Rx$_I z$26E?7#w_f=LIc57G}BPt@smyJKiajsv*>LTsEyk?qzNe==HkL=_{{4%w`kNdJ30U z#sP3)jsNq>g*jDVr)aM;f_`TV!=c$xFofId@5Akl_hDsW#eQzB--cToci`5>+i<(S zsbJXa+am+LUavCrI|Tzsw|#STtdu?0Sjm+dK&`^@!Dfge^PZwiLMJH@jlZoorY?$q z{snoSn!s&SyrnByo&3509%Ak#@u`IIY?5nIodnLx~wc{=Cz0vEc3X6Tq`JFLS%*wB&{tf z5#y|~av+EW5y9!lQa=bQmTM5Rq?J30SCQW^N;nja11+b>a|zC5Wf5FrR!#6z%mDa) zHuY42XR6ixDO_Al;Mv|o_{S%IV^{wdhl^J5PIVO#7}w-f1bX-I^-_-Tw2;+B+E2C5 z%oFA22S0+|CI&)U449tA=kWH&6q)V<^Mid7%sUC@U}rc7Mfpk;Kl~&EqfAlONvXCW z*E0IjBA)o3Ce2)i_crs0gGWafU1*GGNr6nkAU)C;9>LmR@{299uR=^IEbFM!R!aJG zmq8S{s&Jg82Wdehfz&i#QcOi(if3d?(8M$SNq#3x<%Z`qeubF(arIKi462p}icG>X z2Y=LA(v7PY)gr_dYdQB!xj4(juv1vT7Z7HYl90`pT6BaFzS!&Ee4gdU;up+x4=3kxbOsB=&K4l z#(B~0cB>&5FH|QuV|W0kQ^X;UIiiYx$i`9zK1qHF)rq5D7*nA6ozdS?-R52h#&TAy zm8zk_W`#Cv=6bng=eAg5WTa7L0~Mf7WAamx_dFSfUdb%Jm>zN6y|b0p0tGkif@UBrE$95GeA4 zSux}ma)TmlpHhiod{X_H?9@|C@t`0ipd{CphF8(Ac&RqidyW80jaY%rMD&ngVoLZf z-s4_?{{|3;jY_el<@2+p{)QHQqOo=37T_-tjXN3_s=Z~(A-vFG3Q3Dj(t1UWC_kji z0{w!>cGkfc@>>-RV=P}A9|s<%0zC$GGoq!`4jFviglayzjxQkXOu;u4PRaR5)#G*un41O6_x+_eHe6mFzohV zb@3LgF5ZUKl?_;3-GuRA2;;%X8vUbzIZCh!tBY$e9xhg&@e(YIm#u@qI2StB>Cmb1 zW0yVb$6YaKVjP%T3uX%4NWjs3i9wZ+s)AhixR$AODH;D*qv7=Yz>Z_8?PcMmuyVPv zMwS^B-{qE6TgFP;)-^9=?CQu0)?sH{YuaIb65VrMDp6tLc`R#n zI(RRnn*6BlU#74!B?NS)$&AoH*+Eg%520a=tTU=>%$KgqFQlqu4#}}@ep>UwC*m$| zs0-<8n78FR^&IVG@+l~YZpkN6&UpR$0>|W6$b7UW9(@<=iIv*hB_LU z3ryC$S8*^b(nt=sW$!bSzbI*jU`y%|CWp#AX837j;Jdjc5kU?fQT3c>BI4KzEtK)3 zF;)(T4qD}ny=-ms@*frBv=+J%a#cpQCqcn7DXR}N(urLy#dELzqjCQFzgc)IjMmjI zfKErla4@i2`)!N?vkl)I@K+tX+pF50I0Mz0z}e*QF`$KEY_iTKCzTE*Z z8Z5wQV1f#o`i3y*kE~JOtylJK=m5tb6hK#X?B{ASg{$cd?%jGH?%lc%Z{K_u-n#jY zh1tYBu+9R-y0I9H-uIORPKK*g zfT!(`W?w8{L(Xg|ffNv(6k(dX2KtTB2PJHVm&F90<;}eSNN$%z#vu{k&{4wN3I1UuNFxC=8jlQ7(20TjW-kV^UvkL?hyVr)kRl&BxK1izJU zrMWjgHP3iFw(>)^oWuc@sOBDCu!6AzFOQzXZ=U`Vp6we4z%dNFeHe85!P$S_{lbjTK~Ukce=iA2>EgumYI5g~6@9M#HLN0-}aeRDXzoB)iMr z%T9=q8V89!wV4*Ybarh}Lqn+9gNk>6@n%LAc#)3KI}RR(@z9+|%4cj=d?+7{Z|z9P zqhu$5#k7{-M=;ygh_H3XC^Uk!Dc;o6{NyPhUKwt1>ha?rs2W?%?{LK&4^-X0H3l@y z++HQW(g=PKq8n5oL9l_dOp;?_QJ+Gt#b4Kj%W>KSS9>{4WQ7Y4fQny*zsnRZH}1js zCFG-sUL+rsr$=|&P3)Lpg4Od?@?aC*%4s`pYq*X_j+Jp~qfik_X?}%#Cawd&mmD+= zSmiNMgzI1lA1QG#@Oo9~?37jH>ON!OD{YN(v+CZlEAv$xf$A*&3}(|Q=-I3~ zeh3pdzuJf6^VjyK0doU^*)34*CNN0ofa;i?27}sx(DhsYE5pAU0rOYa0@^qa`kfA( zo=@QHd;&lF(a+&$pZpt8pLgJ$+wa4~)?FQu4EjarNW>9CGqGOKeAQ8G2#A%#q9ilI zi2n&WxSdZqJz#FD$jcF8`~&{Ub)I0-@gZE5hL_S&;#PB%k!&u=&$OxH zTp_d3WtT`K1zNfSmd+9=qA^N(G7l;vGo-=<-*Ww?@1h!liV}k$RjepvTx#l_ds4Md zLQB!)3-REMT}^Yym`p!S<421>h%PE9{ajHcWYn4WQ9^SpnO#F#`Al<)fKZ(=hVC#ue$>%xM&=czgt=&cZB;zW7;6 zNePw-S(PWQkSdo^U5bC7f|0<)4=YoDfVWH{1LKMY!xT&go}hS`>FA{uUg^xERCfvx z?XOOgi^<#xif{5YQqDEEhRV>lqC?XBK>VplX&3l_v*#7*Y0wYBxJX8t2pk*W zSH6NGw&Kb#*KUQczN$-m!@W}W-8Ev`Un}P3xHIVSylCK8);Q?+_N(aMW|vaWe%ESN z=hwB90MVP`29tY)1y})}2+@B1H%r3Fjvk zX+??STlgEJZk1OX_Jfy8LU}Z|#D-I0KUm)4jwZT=Cwrp+Xy|v%YJbn_B_>{x)-x0v$vG9eHP3Gtpfe7YV?Xulj&%gg zpl@yU#!dL--OpgqAHbkDtihjo$XNsx5@-sy*(!?KjWb1aD5+oS zI1lrHk#=*Z6gbkX$-2;6DIITO%7yyCb+FPB^zyn??v{W8t#%$bn4zNj57kS0z@)~@ z!`06yoQh%oL}KzD5?WDMS_j`;>r(V@McPR^q8PO{>_NJn@}z=Eq{(xxPR3fr5~H|z z!Rl2APu!Ljrj`&46-xV-5V5Yu5z9+BrFTl4@m z>%{?=BuzE^wrRle7g{MNCmJ=f8IMNRr~-@&9nSGfKdxaW46Uk#W()g7$Pw1+3<6cJ z#wmAZ)~yU`w=y)d|AD=qd)C~~U0)SuKlQ!cGvh?GzZ<39IRs3VKE6o30;W1h4)};~wtn}Z#M_e-KtRbU zF<~Rc2k%fx1rKQn5UXF&vRrj?eE?3(_HI*3E82_tNw1Dr}$Gy03c5@6c$( zkwQ&r`*8~vRY1a-zi`v~7y>)Kniu_ng8rZjuMVETldVVaqxU|8{i9u2U0R3naKZAe z%0bac1T1#~JQpX-cVms4K1sHdBgO=?O6jRh%aVOSbLVbrNj-?+O5&4K9Dx6s0#~S5 ztSHUz68W)+YC|Xptu)2@p=Ndj68(qECx3qKb3MX^!G$MVMTS{+q*>+!mprdG07fMd)_j zctl%OC-g_xN>R1Swtesn9=!YtUhF@H$?OUS(6`FBi|8A|C&0o++Db!^1hlBTaRm{N zVFs3EbXtDzj4h!$rb6Or#qYI>i)d(+bS(g?!j?<K`23LCv_`^CV2u07{0@Xg3=ITRZBHZnomcW z?_GZuxBB#KH1G~|?fKtceV2Hz)2+rrE9i9l(CPO4PJoN6Gq}7uh0}{8IJ-EupYzM( zVC;%~q-cEFa%*}S3nnCJrb$XoqR{W&LK?naMgkjS;jJID2?v+G)?N~t1sKyEBRxh9R>^6L5{u(Et38d9g(6i@hRTXH<#0}|=VbEKE zQGXFe{UsRo$1v(Iz;H0EKO-0pN6=RT7<2|O9xcGaXu;m~ZFV1-wx`osb|}b-Xv4>2j+>-&+EldCN}qFb zD0xaaY|D`=^?D`wL!t+)9KmqodWG9dqG>9`E-6_ti;Ud(CqKGWvkLo=TJcJ8khs)b z3J7XR$B&XQ$UP253mrp!16(pG*Rauyd&3zCv6ieuepeq`^sxnKZCDUEWy3lwk@4P9 zWE!X{7@%=Vb}m4vDLmWx0eHy2($3aT@CPk&NG4eg!*+A_7ZaN5^O|lM8G2FTnn3wmFjf+T)#8?FPVrit7%HEk7dx;NZfb}ytbe&nRxi0 zoIRgz0*xof0CkuR0-9}BHGG84m+zI8isDWRj{l& zzJXb-AN6|BAB~~kTd;hf*B#hZ`F^JhgZ>zX#*ptV*uMiCX?tJ;X_Jly{7uE?enN8vJ z;s8!B58(Xr6fQ1L;c{|bZ_PzfNQk`D3Dk#(=EvLpVmT96-(1=@p3HQ|jsR3n@0)wB zwdVtbb(8nSGco>EBci0+?F@6-cR=-#=ow*{l&*d7IF z;+VwxNvy+!phd4(5(+a=kstW-e$Ppkrt<=jpo2h{5n9d+XG9k*)%fCe*k?MJMqys& zJhLOul8sSiU^V$9o>JJa_=Hey{z{TEm(uxqtVhOi!PFK@lCUQx4pOC=y!`!yn75Ry zV3#^-%2`!Arp6f>O6a#(@LKSs-p8Ke=2eTs$v{?i{Mq1)$X8@w+l)&A`daH=*JbLh z8mzbKcDisfxq!p7eR#3|1AM>pC5#7SSQ;+ZTYskvkUIF4ZvL8`Vir|-4`!yF0Bl}3 z19`1T7REN?>+$77g(RX!s!&SKJ%t~udhBR7IEr)i5+yu>6O~uZ+1pI_f>t@4D8g~# z=R{W}2xgrwB0vlz3B5Z-w_eH4@OR&QM!)CEG}%%Og)t7oVX1MdD&ya7U)8F<&w6H^ z0NNS*_V$jcHKZ>mmv(p0Oi${gKjt$8)fqxhDQm>{hkd(Jzp{ASewIcnusm9Yg~7;v zmd2~FG+u+{@hU8j*I;3^1Ph~O>m2BJdj6<^G4Q*+zTNh3jDIOz&93a{$;$`u^yLHC zKRJMx2RpEH@Wh_SJve#|2gkeC_&1-azJM8A+KAz{?rz`42dH*3sb+ub}h%uYAQ5Q2zoZ{U+2%NNx2%xTbGB zIjN`whBM^5JXEv#h9lzu81{#7c(M;KUcZ2+FCW6r{ubO=yA4a@l`0@IOzWcr2^|(e z@+MPS+bM0YU>Gw#X)3rO1W(K>|FhotlKsr zU6g{G5YdtXz~h7p{{EkK<*_s_0c=m1%P- z_Ee>7)+7s?+hr1%OV+?E2j}-UZu7LpI3F>7w+^1dH(OuAi-RXVpqDiaTtx4r)|^U( zY$023YBFSE2#~x*D<%{Z$=I#~9zE{s>kUZrT<5z743?gJI8X$sfabv<3^~RT%Y#HlI;`&1XDZhVgKv zTH)`Fe7S+UTe~-eVQ=VH`t26lPRFa<#y~g015NP1v&j`4pPE(u130vwL%YIua%NWZ zkKy$41onu-^35_rly7> z4&E3IA>Bwepo(7Nv%sNL`~9f=w9cppLaB7U5#K2WK7=VS^Z|lZV!k@6*TuPt*gD&R zWJ}?A>1Ov#N7W8BH?sCf$t(&^7wp3FMo{gpLw2#7yVaLYgAW?)u3S=9)J9liloZ6? zR1&m8TtRMOi-}kl03_3gsW_$=2`};}Bgw_-gC+D`AOBDt4ZZFRp1*nofA_^-!XJO~ z=WuiFPTfU?hhAj;*Gtst6!Iw^eKii>3;?)disJgasI;`J8{Qbwl7RS)c%ri@^|UNu zSrMtVUj1s3(EERj+f1zx(_Hz$79Q?^mZj}X zjn_F;=-6tSCk!v}#gp(fHO@1?WPYiH_w#tH8py(7MjCXHC#pp%@Gvq^B=d9c<#C!r zO)TnS8`o*2>TDlAgMWVV_po*N)Ze{ql=tdPaGleY!&1+ul=zdj%G5Ii)vKbii4H{b zjfX^1K-{%vq5l${@yF%x^rL);G_06sVo#867WJA%10(iJHAl~p6ay?CpFEKzyN942Yzn@NK z*0?sS`j?X{yRtvkSD@4YRA&G^6If66pf?=ZGx(b;Z^7p3Td+J_g5}Y&UAr@L@)wr8&)olGyGYXfm9>r}8u2fAJ8_qz6(aWH737O1YLliAE2 zeF_jK$UQRP!jeBDKErxyBda=cLGZ#1adWRd-&XKV(dQ(0LLW)aUKM`j4Juxu1Cw7f z-)O!VfYPm#5aWZBAFT9odYc1?%u5E)%E{KTF*2%sG|H~>>Uw3ka_FJcL+!cDv z8cU^hRva;S8d8M>EJNocKx)T00D9U61N{3h{|aud-+`Zf@~;~@4))QK$(0AYFhip! zQN4ukMffJwlo*33*?{8Nri#9lRmWwZ`4A&6AI)42nFBK5i2Ozcl!o+3I$zzNVtt?h zPsNH)34Tb4CoiaeCtNx%{85NN~JH8KA2z+{WI7a@u4?S)a>^!sQbR&}Xp)HM?_%8ofZ zdwFqTgZ@3*`5I0x4q;)iXwUjiP0%kkB5%BPB;Aww`+Uq*X}K(|Xb zl%k=GqMOAGo(o9?NRptm{`du_QUSu3BG03&Z1Xz)6Xm1lR2esImKOw?eJW#?Pjgk` zJTadmm?QKQ9iMf^g1z=mHHFO8o95j9bPBV{45s$#y!xH0w(gr1_g-fJi%Xj@8Z5)G z--ls;0868FSRSw2xx6r3tXBE^V^|!m!s2+<2G|?)1~BZI)&3EThf6RXEy2K^)gSn) z|4dUR5TLuR&pq!b7fet!dcD?FERm~AYtSFs&jB2r9>U)74(yxN{gchSsIRWTQU|~1}t^1($LSszXBTAh*I(HSkaHie3P5tC9UG--NR>-2cv0}3lb3>&6 z9ODRQluBjAud?v*;Bev+_as)pQANS;6ad^Jh-RcxSiRT@>0z>y;dgsYJap>S{_3F% zdO4k5+Mtszc7~m2ovtSalo3!|}(Ir4bx zYk0EtJv`Zd1WOAmu)MJ9uR5)K0aAOJt+q@tym>=q2FKwro&sq*p*Y$?PIt-8P4YNU z?-NDiwFAyxnO{SUZ|UN9lFIr)nx9877R<3^c{xMN`U=Yz*N-5rzp{EWEtOQ*o74;a zDov6-)~N4*K${pOjD7PaayhCS8M8I7C=tF&e2xk}|1vbLnb;5>A2y%i4@ zMl0Wora&5w#&d{8rEgm6px8;n;iE&SR4OLO*r z54I1U!lPGT+q3_R!^P?N(Vj<__3mvX?k*^(_rGh7b=F#{vY zxK53TGkWdLo62CAPP9GqetC6ajca!ur&-x*l!vA71e z*Y3fcwRd1`X#>`lHlg1cz@R%oLHE+&&+Juzy82rO4m968_4R(xF;V^joq^T%`mRgM zPY&Vf&O>U((h>M=Zf^#oq*K7y^iM{qv5fQ#t`bd=f7KZC(w2!lZt9MCubx;A)V zw+=<9Y@7n^93QnS$T}k`kApvY(*!{zG$RQZMV~X{#|{|PIuJisL`;BmxSZ$f^YMLL zzFdCm;1~W{DF5kqLev$X<&FRLQjLrcGhERS(dR_B@7NtC^$rqaz}GuzE-o+ZXIjV1 zFmtTi9oZu$Rbb2NmWy6}wI$RJ06m@9SUHoawvL3#f1s+Mm4=3=m!M~tHZZ0QusJYs zG0Yt9*{Jg~e)?w{wCXN2Y;Y;`X3pi zT2}_5jRi31!~Wp`>>oXY$J^go2f#bG--q?(4VX+O)=BFfO4rbj_`YbKo+-S^8e7^8 z9$yL>$>?ZHGUsZH1QczFXaBY)d&UE zYTC=g7x3NoZ|(JeT21YlH*0`ssH1Afp3>5Z&62O+_6tc{lNYks3mBV#Pd14-{q6McUS%cGmHFj#_xVRcR3%EAp;S-b%Y{V^;I#<0Aw z0m} zAD-^P(a9d{o6qSU>>a;^{gWLyK0AWr^CLLFI)eV71D*a5M!Ii}CL6f04&tZk`v;~L zZ&Pmq>A+D;`9eKrit-IcancY!OUY4I_Y%2O@H!L|jiD1r6hYRd*ajY-@PW&#QFFYZ z3{LIP7@FA3&ZWqlU{RPDk5=u({3(`54#^tfSNVBZt+XqDp5F$-oKF25wT5_S02|9U zU~#x=oob`u5SGRpu(YrNqrrj=irK4=pmggSEZnF$2iepf6>yF-ZEv(VIX{7u`ZkO6 ziwiivyns`?`{e*GudZM=JGaLK%%@j7=rG;8*fSBi(gD-tuSC}^Fdx^#6K+bql*;G% zwQys>Jk*rYe_1(DGZ(F^@gDYj@N)MV{I}ozjpbYSZolVAFS*Gqsioy|XTYbjkoSGXRbk@dhSp!|E z+e*R9qZjbyvtPsZ(X-kC0MPArU^>&FW{TM+g<)$D<)_8G;}XEj>9`0R;*^Oo6lL|w zxJuKp?@&D9Sw};Z3%zBVAobGu!U!&f{&MY(bCyHt2fnxFjek~bt z0=SB6r%l4hrq-N*9o)a1VqU*=t3@3f9IrY@Kdo2!FX|QYt{U3U!f*hK{ROzOau4pV zy$3f}Z^Es$Tk!VgeRzBG0~q%gsv|qSKJmjf-KNX@kDGTC)e;;TZaZft9~D zu7!_duZTWI_-Lec6Q@C4MiIU%-MYdXF-@IWIZrKO0*gk3k)Nlz9E{xeaz4%ptlrHl z*ws#?%1JpK^x);*Q~1^I{>B>r4&~LcEtQB!kpMe_9~;l*GAx>owA$iY3g%Z*;1@K} zA{(z~;T_?bYg;Ivll`Ji{-8Qc@RER+peOCqw-F%MF>KQ1%W9q9;_;NPxc+5>CnejD z_bcY=Y9;lNut+JJsd|OyaRdR%9xy?*56RztsC3w8&vQbk#w2Nk`~`a=sM~V=%!P{A4SQ$6KSv5+jSf(YpR$R{@Sx2d<`9R`D>=|G(e)EgWAQ z*t5cBi=w^aM(d`%f)t)xbbv7Msdx(+2QJeBUzvxJSAyks%Epf{pT*%iY%br2&6QiQxq1uMmv6$x@=gDDJRI52;&=rXMyobXhPfR>q1YGI z4jvs~vf1%d(RF84!Qyxc)>k&*-uZiQdVUJ07iX|{_!9PxUfQeWOkm8t!yVW=+JW=S zW7s`BvH>s6`E$2J#@`r_SeW4UMX;!IEKj(^f9!YqWU@C*P zygbDpKmOwE!>ZUd;6k?mU_tFkSXBO_6z~cq3ec<_%swsfD7H)yxCJF*AEbA&Be;;N z&d()OW$aaF;bFRqJ$5`cm`-Vsm-z8>G<3l|qLC{!H4fYb^KtRH9je)K@tzZDE1BGG z`ShyluL2OAU!B15`5|l{K7|LberL}lE)17!wyB=Q3k{_JvCk1AHL0@=lZX)6L`atI z`z>+S`snLi2O@VSCvDOo=NzCMeQ0;P3GzHAZ#$7(<{3Dnl@i@>R9aoKx!^&f;Y=5@ zXjSfdE}_n1HcV+HtvpN35ppDma8bcK72F+V18Z7iXI@3kIoL^@y_?~{fn>Q!B+LzJ$?_e`r<9>%y+fL3?o0N5wsf<_d@xrL z(u{y8ZMIl$&vIe{U^dRr{}T9e4W{$O%{BUsgUubYF;0Na zx%DZ0`tDEQ)AxP?cQ@aGw>IB}L4RQBI7*J~`@cB)1Ln_eepN2O#qlC5)b0GgJckD_ zzJ-S`zJ=dC`VD;b=nHtU`w;eywqS8=jvtsgG_a0%G1!APqyBx6r2qYf3IDT7jX)B?8FBPDsP1LnSJw%zNWyP7DYAVCvAxpXr3~ zTH$$a?tJZ}y@~A3@B-`{ZNbBrU)$h+W~;8&RgfcHZxwC;r{k>s_C0p^OZ7OM|2lYP z8s@2%%$VS3DgRJmO|ANxX#i|S zP~IL!e`%?}@Te6*d$xaiWdr${mG7R7vcCkI%lBYqY*ry}!N&4!*jO?vkGK4_e5;Ea zu(q&aS01Z*sbMm?^8Ii|yffbG3-}sd>vVqQt`;QvNo|a~po30&9i8o4gMa66+kRdh zZo%urEqHbK!u~xpXPGbd0n`;NjRsacD>e2jm2UR{4rt~MT5E}~7mPu^7u)<~CQhxi`Jhw{c8?xZd>B)D{dp7zK(Y2WMcU zHc+Vg#)z4nZ&z?NnZea$3X7u^*jRoW?ry#ZcQ)U%j<&Zp--8>gH{r(GEqnE)x%Sf3 zXac(hEkp>w3r?{P)9n6fu5I)44ZsK19rTBAXX7m!x8ug@E%@8(ir8!1Y9R+v}zxwL$?6E831W@3duBra;F!9H11df!5qW`8Wnzp6#rhQ?3g}O=G zq@!;!#PjoiZeUxcRJjCuOt0jt^Z=pC^T*KtKQdhE)C1&Em4X+twj!ZICGHf6$rbxX zp!5g>2T-D%Bv=ElWeK>{xQzPkeyUss`MW+h&ujuR+)2;YT z3YN^c#n&^iOu5OX8tb6E8PaB9#$?idW$@L}7X0q{Kf%kxXE2>z0>Ict;GSBbrf32I z52d1CkW$cSkiHs43L-L#91MIr%tO?UtF>esqy%>^(Ic3W-zdnBz5~b$gczD=mPYd% zA&gGYs9PxuisCVy^6VwG0t%xrQ^BCkrQ8qvWV({3J86|PV~(4+&vBYrB`c2R3? z)v>-${AzM#&-I^QUc$xI6|61}U~#kz_clL<5AS>mAKdvAKD_f|yUM@5xDf%1SNP5D zff^(JIx&|!JZgZtMF|QSE_RD@r`l=^wVHc$b^uRa{Q$px^3U+Qr@w(`uOGnk-G?xl zp21{#UTuXQjO|MQ@_6X`X=4nSI%iG%0PxNU9ZVdhs6cIhFFfTZ4c#$<5c8^N!V;Wu zibG*i5gFI8swR-CCa+V|)z=WAD;UuF8!;jxfy6CINvD>D{xfnf)f}!)k>8@-FHKv9 ze{#(k+A=#>Odv@!U(PNr;NQ~MQ7S@;ozagX0Qi$qLR1oVABz9U(eM>gc;6UCvoWf(n*V*DUXA6E8 zcR-L=YO+&NLzpe@hTzKE_-bSi;YkMuKZFb2eClk7Y3~3BY8gdY;g! zj`&-vsmsA%;@M4PacEb5OI{UZ&lnMA+wPz{f|cm^Y*jT;;ch=4IeE00izxk{$ z-LS_0us5=2P5nLKzCP^(Wp%v4ul)N8f)s;jAjMtnR3Z4`==1;%&ko?l-eY*NXRhme z3R}BR;q}oLygu57v&&-`4U7n00MH}5%5Q@DH7oryzq?2?W2IR9%^^>s*PP6x{YUc8 z|5MU-Gmi>(^f#rXsv|zvF3FqIQZuii37@NY6+>7P;`l>wEpndgYGCx0dKxAxh`{NjQTFzzxz47ed7c8;O>v${@qXPHh*LI8z)w98-^e9+PQ}GNon(5pyWzm z*7~@qQFpp^eN~0lS!S*vMCHuYav$CM6uKP+_inrkUp@I}`1;8|!{y`z4vr6C&>Pre z3iiyokFmnQ$MR@ai;7WQGCqN5&j}7LHF%3!i`0fpK#$^gl!FL)vCOZ3T3p+s09{xZ zjo{+)7+&l=glF3i;qlf(SXo?!<;AsnhlWNDfh-tv=*mpuRIPdH^#V;+-xT>PgOae5 zQhF<~Un25q!#>#N;|df5Hw!(&59f?z`2<5(KpsW)1I)SVhZaS$J6lC4>Zj?6<-0=( zE`AZi$hOV*w-xH=OTnNKN+yc3<1oPqxatPcxXH^rTvo} zNo-E%94z7arNiX&wH#Mg1#0h132S8P3BIIDMofw+Rt#Ti99mH>_?3stt4p|;oWslG z7x3WKZ^117nV@3IoQ<3{cMwN&If#f|0)IoH(PPJha}$W|2=}|ufRvDxsdC=JTJ%wvnR;TlX^aRJ!H0XurHX91tqWX6z7H5J5uHaEkKsrSt0G@G zC2+n(#RB+y?-{h)P<|cbV4Kd!6FZ5_W=qx6lW}gF_z?!(&3CQK(&6bpdU(sYbpcAR+W zUUuDJ*iNiw#Wk~rXw+6n@oc$*6n7!ClejLHwbP7w>Cyn^CppbFz+-5zg^+Rs$H@=| z78;r|5-&(D#lxe#Vx2Una%!VsFc+y&sSP zl#kVW**fYD;ITqyTzQg<)p;sq8r*lPv;MQG-R?iLtKuDack>gty?zhwZF~UtHa>(~ zYj4?)IoEFly}jaVcIAx&=U7&?0U~req1-UMw7L8<$YOp!eEALhu=Ah}>i0G596pD` z)0d#&5>^)%t>eJlZq==C7%&_BVTQM|lez;aGW-tlMLLfu-s98+dD9@Qj_2rtDHFBG zC~o*cV_4@>g0LlpB`Vj#^7o}x)QPycG;9SDJ_AEWAxstWKVz${A!F^Y)4ZHq!s+=X z^z4qC+wkFApTmc5{{ejZ&ga(nH^DUBiodF3XW)6pJ4f{)Hd@VnxpZxtz`gkkCL93P>8Y)N2W@T-8UA$P6pH|^jg!EgYuSD@DJ0Dv=w9y z1m^X67h1rBUXf+(2h;XL*>lO7`9U#m&0Jh=V?cc!5!>4dQIe}rn54}#mj$%8l z#vM&!Tzw7~Nc_tASyU_er$&8Lg2sQHq=G*pWLStR!cD@I*@2?n%0Q|gsWZ`xhdcz5 zKp+2pr8-$-uM*$^{4+HKDzT6e0=A#IMD6z{kI7YUXj)MNt}$Nd z!~qDrM4g8JJ>32l{_+Q4F2H5Ke6!w zb`D>`)0bbvtAppTy08KZgHe4uz^vJ#N4;N;eGr9$Gq(c$DRp(DYsbsumxu)3E0m6SVA=pKBpYg2`&`hf|VD+m-5-A`5EFjzy(fHj1v`f?;OiH^frHas821;dz<>7af7t(WNL28UnGSC*X&zT))W^+5$JD7w z73SpFY1}el`P|`Q!XM<(bkVm# z(ZkbT|3MXn_{WdjIeepho4{OV)xXzWfRFF~A^hm>AHs)sKea*r))#M7^NRo&+$Ubw z$c~SUT-pwz zlcX>Y6&QSb#bj~`7Z(%gcSmq@brpX4;m_fZKKeO)eD5dL@Hf%(&FvXg+>}mjcsoYy zCnMjT4EvSwL?~Ry$aSwecF?hprZ#9`1;9sd{}}$$pZ`zri{Jg2OZ*aA8Fvb>I%XtTns0%(Z~y z(b&dFdG_i7ymws)Vy!f+85MvK*W%osgUGVscKn9ibr@j9k!#MBxTXEKL+lTfor z?=AG#GNrDxwq&lfzE1VJR0|F}g?3P#B<)j6NC*^>_!y0@b%>^4MDb)>i+hoR89(54 z6j`Q7*kM#In^*?`ZE7w(k2VUVLFA|1TH^fIZhci^Zo@E0%cr<}l3xLtTkj3DRN7Y;lso zSEZ4nDn-vuKu@aGXnykiL!NhHexbo;nlsVYSzr_WXp#8g7iueLL>j*!3bjC^QZszB zVMXB%DCHm8DF3r7YhZLbBfI_hvwMF6fAO>bVuM1hEUr~iyR8F2*JDvd&3CK*;aPR* z+;j?7Arm7=O?!{Fzk&bji~kkAd+`N)zx5?-EZ=~Q<(obV`mBzG4k(H+J_{`c(f27M zC!6CSbY9kN3H3+KMDsN<;jog#1MF-%+w|@*D-TSdM z{vSU74)%|p!~W3=7!4O-+#l9Ebuf{&?VsFnx8sMEJ4DS4{oZsZTaz;)FV=QcEE$%- zoU!E7i4ziTn$Iv=(&7qCrxibqcXV;^%mZLT zK~5JwJ;AvG2LLt4;%6mFG=43g`FDAuRu~;di<`+GqMA-v^zByQQ63#R!6>S^k zs>KgnkS?qEfU+z8uTQpN`|vp&o$ps?2z&inC)U9%2(Y0WK2zR)=2gy!5HqJ(np`f3 zbRP-f((^5iFp9}DUx7y17#oA7wZdA<6FaZUsGR4tObMY+Tsawzc8@uHhISMh{34W5 zDbvsoCL?86>85ZoxrC4J{un;K`&0PQTc2Cw-`o#9nO@cQSwnO|5Hm^-bEFXWwFE#% zOjLa>;ni#cldB2r9BjdZ7r%pxt5euqxdFre7;W>{K`ese#ue!h3mh^M=Ip3%P5@05 zvuSOppa%LrUs;yLp^3wdAud4|s@+_SciAxKjT3S_MvFXo<1M1#wZ>NT8|fsv46hys z)y!+I>l?yoFoe(E|18gWU5rbSBX@6MTJ0;+aru(kUH{_*R-ho64@ui*B^-KHEzb_HC zaxoGvdV&k}LS?SW5c(74v$v(smE$W#9vS@LnoHJrTs89o!WXT13Wft~Pqk<5`o^t_ znn~x3e|!241X(?<60gr4NhamuYC_+dt45JLs%Bao?2*F7J#Rw?Z%E0&M!i{W+&|le zN3Xtxmxs^b`1}A?#;dT{U4&`U9u34yQv80GtNas~G`KY;)KC;tiF+IZKl{2SwcI=upA zf^VvB!T?d|U+HZkc{~W?tE$@xrjtuJzq;@afc2F%*j&9~SE{D78QKK|es!5WJC9cM zDavNSBzJy=WrGD-VFr6U5dc%}}w3N{~9@d{|tEt*RiiEU$Pm7;Aq82{&SQXK3hl zXRvJ?0N?z*HU9qy{w$P3*NmZ6q^1aJ4)kS_pkQ%Ae1qOt#?SCrvTt>sqm19vFGi9zwV;~86G*?RMK!B-;dUceuJzL_E#K%*4 zbMN_n^Q8oJl&vq{U;aMc=50c%uu!qpvo}TB(3)n8r|Lq#H-zPdRk*Qw2gbw2`n)mt zGyd5o6Z1IuE>0l1gB6@p=yeo~dIM`bd~oN-aB_J7+xt5(>=oDSbMl@ zVsf~knpB=A+7h$y5fgl%Tq25?&;pqx(||L$%y#n0MB6^DEUm+Pw?BfPe)wmwbMORS z9Xx^IU<9MVs171HLq|lICdlA7@=ryaIcH+Uy-4XSF%TuJ+2`?wOnAjzkkJ8L0CYQ^ zLgukKqA{I8zte+-;TTTN4&c%AukBHQy`$GK?2qh6qgxtedPoOP;^k~vCrakOoI9!E zMn4&@AaQ)Q&baj!gGdM!bHIS2i}l?05+_$oQ)15fCnES-4E7vKV?xwro)^*yeT(!w zo_AEgdvPZ?w&YnQDjIsQ!csUtk0p70;y1hpEnluYDfz7R?<27&p%@e<_Z(n__xmD` zQXs%W=8wVT=MRO?ojX?%9r&dAr77w^L*RrturluT<(0?Oe6{r( z*gt&@gZ|L2ii9}89=r?y+)BTk72w+aQ}IuY@tfL!lb+i=7iqpV= z2pWJcdBJf4SfT&zeFqdC0Z%RKjj-aFj9>)ivFLIWc!MwT9@XTDD=eo(>z9<*(H92B zGVY%pX{R^V3Qu+Rw+pA2$M&;x^xS^5zJgJI1Rd3D6#S@-P$<*8m~r>Z#Q_1H#Z7Ad zA`=V~Mg&V+C9X^a@~yP!eO6JFXs1!WayJSy6UqN&>5Rc$3GAHrr!+2t?}ZkGyf7Rr zm6Ryoe05^d5O1sFK&%W5W!56$VtN4wr>|ja?=h?|Zo=B)4V!PK-E9tat4iJ=nM{sd zOC6NP)$;`Kt9u{Z{uIa)i#mO!Ys z=pb^oM&Ftz%3(Eln`EKfxQc9|fMBG&<+>VcC{pP{d(RnkqD){iwh^QAsA;JiJtBk` z(jL1$Ax-mIR_T;o=2VQD{>(8JbKU0V^4svEx88z}-ukgM{uc)0I@*6VHx*M`?)Hjg z@zGds@TIwL9>W`#*!HuO33LH@32VI-4|o)H*~xoq+W-cgp}^ z#UJrO=QK&nR{1T)kkT}tb1tUtq~O{Kd4ixOM)|IlB9&P;xU&mNMwhyR?cJyF#dp7g zPu}|+)|WTy+ZpO$jv4Gl4`RzqC>!E6>EkFvbXd072%Jm0&2f=$dH%eOK#4@quJFz= z;tZ2mdZyLv@slJ!4(j2{VO>jR!ZLJ}=8JF{JtMmZ`IeG&nYaZ&H4`x$ot&eOt*0rW z&~v#&zJA`tlJ^spdXfkdu|XB2xx$!o4pgyZ)E>|?kA)L~SeN0q)XXcOcUq5%=}jexzg5ft3?5ZRLU|hYzL~-P_6Af;+A6Du{5r(u59G>AH8)8e)jRt;p4Y|47b>om4S5%$a{O&*az*Wr@;W;I<&4 z0D}4p4KBG=#BZHrLuns=xH)yrI$&i+RQ5=BglCo_m#8aw$UtR=znXCH5(| zn{BJbySA-RWxA;87AdMmlrHsard?4GbGgI@3sYfvN!TS@qZ%huj`9qxbWNKLg}pl7 zhOf4N1G^{N(Ct*$0+y@KrFjagK+RU&3yryK6%hfdCKf>8r=Z42^E{=G@g7;8gU4rF zK^*BQ7#FEhNBMFv(8mQ6(kX!uA(K(b%J@;xD@m3DQIHeeNwp!iD>HRbUa_dE|vDjVJb#(X4&RUN~vf242$xNU0RsV3!WVVv&!^&i~EA6hy zW~XO*`l^#vWbsNenRmv0VGVc>?*R^X056iYpBA)WM!bi^0XQ7)4u`wplI_Z!@fCny z%KT)mUK4P9@fN;(@z2m{uED*%M;@F7Mv{0#ktFQp9e0MtFn9KfKz{ifS%9#=eFuK^ zK@D#0+=0&?`~{p`zSEzJ(J@?%PGCG8!FV==>3j_1*|>B@rcSf8?}J+5H$cTAH;k~b z1P}rC;R8i;Ex3}|gGh$rxd>)+Ge>p`X1zL32)uDloY}RSnnIK-tzJx>9LKgnMm0JB zRypbB^RD=F1s0YAx94T!RNU9%~c${cE?gaCy0a3J!Ky5 zQ##>4b=>-#JP{d^l~`Qwy1y+)tzRVf|9 z@(9K;I9!wwX&9S6ABp@U{z>gkvF&ChXcA_XU;+pWfXEVGnF3TS=x9!eEe?l4Exx(! z@WYW7Z#)1P|N06kpfC!SNFQBVMRiqgs&qRhNj#lNI>7e=Pr^8c+Owg=?~ewD@Xgyl z!pZP3R{;20|5C%~_csWds)zGQfdKXxFjS6pkdxAJBm83p16QBZOO*8lP?mF#=VIxqnH$ol@zdl z?GD`Dy{DrU%$IZRyz1cO1-v+Z1}{&3gu}B}`g1yX2jg)+%csJwEoT67u4Ak>l(5lk zLaUZL5zK{*()nTTvp_HRr3Hn7HG~WK7b#u*r?PXdIMTvrq)&u1&i1%kS@LxzJ-Udx zhWP^F=C-dnafV|ybiRP=3ck2|^bv+z8yDQjOUe2OVt)yE$`b|%eFuK7@BJ%37M<>< zc7pfo$G?GEt&s__Dp#!*1=9ly9~{RjFr8({n@@vNDh|MBxIiIuUjUiqo?3sMc2_F^ z?%#Y2&)-bp`1~c*+I8qOYg#B>TJxz^rlM0a4;iS0e-*-1Sxy+g3Choa*&pk*hHj&& zEPzB)&yx~zjg!HWn((IWq3&b65Be0!2gcrJ@PPU2h^jb-&;d*!;S{-I6mo@34K9ag za6TBo;n{({s-m5&Dus*{WhIonZO7wRD7Y#jS>RQSzpR$3mwdnceOfz+I!ED&^@`@A zeF|Jn5To-}t)c4phU>4w2NTbo4UFI?^Rj^}0C^%d$K>QOc@+|&Ig#Z1H~_AgFPvY= zfJpLbAa51)iPifP){yFWB&k}OWdeFS{lv&8>B%QO?CVM`WqI`pe|{fuwwS_6|1G>Y zeFDSj1$3HSy|HH-xb(`pc!z``4>n)WcEm!4Z>B4<-VnnR$nAcUfy{#MhrfE`h?F8& z;@Z4bjRl~@<|WP}{8qd=gO8}q3Gx|rn<04^PAcI+aEowgjyo#Iul#Vygggq*J>)@% zXZ&E;wW;{q%Y`=i7p*nzXXE+t_wel9ckun2uVHI#2e#LCG{dZ}+mxr{DKPQyP2a&Ru9UT6$=;1%Pms303yy>O5POe#D-y(sVg7o83*gyL%5#PM^bU zzJx`y9Jjg(3z%E(OlM;lE|iZ1r6j58Q)#8Z>vp%G)$C;oy+*TGce6aqqAE9=k6<#J z!g4vxoQc+J`Cp|F$Zrco?dJrsG-YTwyjtk}G|;B0-eP1@=bE1_w6o{5sitXI9cJ@6 zj3#3^JbDG+{rDx^-n$F8_U>ux3WcYd?j?nXa5kSHd{q-ywrZUe2MOrPW?JdhIO*hS ziH=p3u$(451Wcf9AtvZ2=zb+(pAYiG)Xx1*1<)W#8Xasn3IVcB{KCXBrsM2-UM9VI z(F1`Hn`oV`hs;HEULg1)LmM9u68l3MKJan}-XM*vUq9871&_e_$?Dm}w@YdB(u6q@ z4r`tysiCr_Ql_@%02+qK%R{=Aa&zQ&b(Qe1Owf)8Z{g+X6KK|I&~5f~JYnPfPY8F$ zfZWDWGzNg`fo<8oR?#ogCvFa!OFVAb5o`f}sJVh(a4Q5OJc0+Iw=~1VT;6h4C!sB% zO8Ha*+$Z*3H>VtfHQqW*IU(WOFFSrk4uvU?$0R!$Gry<>NJz@~?uLWcoauA?>wzs!&17^z^EaXC))YgRAmx%emn{VlKfC9*~ z2Jp&peK5>)ev&A(iEpL=*xA^FdnQ-zpiMaj9L+{>c=lR<-d((bql-6idU*n;{S!F8 zdEJk}Ce$d1*H_pq9l2Tg` z$jsE%9uFTGN@m%4mm-ky;{*&ky0u!4Pwb7z%xM589pRa%x1=uuybLyc-g_eI2Zoud zr~pSeu$Q$2=pzYNS&Z7ZL$!h^_cLXsGMWxydt(nidH8GC-?^(j;?L)E{jQedQy3~7 zcRrC&y+;P!Z8n7?E2k115|owO>TSWjy?gM(%S|07aG7sBwR}C86MJ16MEeZSnF;S`7Z{i`ZW9W@(@OoiB`UhrvvD=TF`B`pjK;Xh2dOr z6N_cIuR!q&{>}~veJMsOXf4F`$kN5$X{0Hkd82pH|zZMad7YSVOFRy88@+O&I<`#6Bl) zfc~=VI+qHjxSp5t?|jzXYRLaU+$6Xo8qGj_(PjhQwXvpNYvaM>^k z8xp$z68(OEiDQ!jC2~!_zHcT3oDPoR;Or$FUA}?IYzXyc59*Chc85?(cb+OhLq8xA zyIw1!VWN+{@$&!9h6Q3RAVz!dtUa~%?EFj1BQmoQgm#>)jvXCp0y%opl2fw?*n zQ%=ito6BN9k``>)z2nTP$(#fmrL6jHV07?EN()y_lmeRwptbDiyxg&(XN95|52dzx*oVFUqd)VF~gYkC>?S zIvv5KTF;|%I6OUocV`E1a{d-hE)HR~7{OWp5?YO>E^DlQY<@|QopOfD66zE1Bz5~? z`RlX_f1-X&{9FIV$>!RX9#@!-F6BJ7m zD_Q)!o{~M3$hGkvQnadSJo9^J+1YwSa8U#|5ns7&C{RDQ1%^|Vk;1-kNY2U1&Uh3> z4;sZT?TjBy^jDi$n)tYkSxU{Q9YnT$knv-=f1X0_7XS!! z8Bx;p*x-~Ql?aeAA(sSV+GuGHw_}DXw@3f>a4@T$y505^`D_G>ae@94-aoVhTV

GaG*VPOLKM2a9L+R*y$a#N`Rt18)2~^FT*D{CFAGu z`sr2}!cko;whqvIv!D+A!fP=W-ofb?GPNZ(EIF%UezbE$dli|rUY|GGm&NIF4M)?3 z4577NZKQREh_E0c5De=Y?%$Ze$2TX^IzW6ry}J*eeY6h`Zcbp(t6?~(oJ?V)X2<49}eOjghS%$wy?EzV?B+LKM?al=m|ujK#_X9vO>Uiahk$67J^V zVV<(~eEe^Jrs|8o;b{xIJV1qs>VNy7JW_N#LPjyoBHjf)9)dUi4q2MatWo`I2f|n& zsi<>$AE-m0F(M?aaLV`c@DiT9K7m(n&*9a(bNJ@P8T|g`nGDN!E$C6hVa1Ji{tBvr zI^nPCo;u;zie;|pjCE8hiJRJJEF;c*=t~HK+wXMmOGeSmLg^i{vRbz;l36e`n~7Gi zv7$g75q<25h#h@7&@e0Lu{|7ain@=rg7zxvb9;1{3W zh1)lGEkDKA#)lGEleci#(0**-X6{>CF1D?fj8*hGv5-5`-x49;rJI=wy$V?DeXJ}2 z5R2-jSbQw9i6(-)h$rwjOXUZm!HCEKT* zu;{#U;pC^A7zRYWmQc8uAgo#+0o+?h|vKluscji4KpJr0)7vERna8FZK0u^(Z z)lleGA$^1(Buv&;u->T8pdP{Q;5IzIeIM@Zehd$9d@euY#Q*-mLzoQqWF!CpV@l68 z+-3txOl0SIi}fo~FH&WjF;jOPb=W-PV3DhEgyL@g>2xJOXIBe2y;{OMangUafaA*r z9A7P!xBl50F6Jw^5Dt}uj%L_{p+0#r*ClE#^qWn#L5`giXuS2aknCXsNk2de#yv9; zoc!TZ8!W%Gh|iHwpiFftsp^XC&PXfBS{yL{aE>iP6_d_+8^&6MZW7G2u-<5zp7q8o z%`zF2p0ihHQ#hV3;K{p7xcU4HZtaZVrVK+kgxh-~=}>TY)RX=Lgw??9y`c&h)$d6h z>4`9n{wRphP`qgs19&V;$0dU@%zx{i5sY~1|^z}wTDt7E`zWEf=z zUP;BP!A&89&*p2XOg|E|<9r4e;-r7NfWxyX9G%VJ?b$WFJHM8v|KjNgxtg`Vbg3bTKGAssk=`QVoPeERWC`0V~oIM^G(!R{!q z2mq_lW(bOOA4qyxu%#rISDG>?&PI4;={K65@$dM^^aHQl95p<)7tC+ECZ z_r00fwysFOeMMBski2IYK$_IC)Gr2UhXodJ!l4<_BTBdfJJcb3oyR;{AgvOkH8~L` z+ZOd_Hlfii+GVKm?x;!x_ij{|(%fHP&M;9mMY(h$d;5SzYE&oil@qMpq3@}&qcn2_ z4}hT%Z3%&-Sud1l|K+v(+}?Qrd&ArC%X@zgzy0*D;nSO6z^Avqv~{a6fXd0Ax;9YR zC;@JB1^AR2Hgf%dKIbCdcy?^o6r8nI4wZA#&*i=TH|KMB`tAyTd~+#3-ydDW_s7>T zmErsvSPDM~GVZU4L0_p8|9)SZ_xBh&&~K3GzK$#JZm={{MxLO@2BHf>2bLCL6cIN? zh<%Ws2Gm^p;5Zy9ZqG&oh|ozM@1R3*_yE3sZ~!-Vhte`Y z_<<179qh2`le#tEv?jwEcIOn+-p9>JKIvpfjOc$j;r`~IzM>E#fl=@xYuove#Rm^H zvx1?&(^LCf1YWPvPW?^EJ6<779s=m1`#=T zA9;mrwNdwxgkV4J$&c_8Q;&MeCykB5pklw9(|*vV=YbPdlk6QN0>{u3XRC0dIl7Dy zW;Og!o)I4>$+-+@zkVEbwG_c4a=(i6)l^v@PFJ{wxX+>x!BlHzFdOxk$t{Kf43yJA zV+<(5G74qTlXqtTs}+24_W-{5=m7rq&pwC$>Ce7^FCN{7+c$R9{Q~K0M&VUeVIM^- zfG;}k5ks(m{wB(YKe{j`ZsLWtq^OAVJSJ#I32+)OQWeDEVR;Le3_L8h4l+IweD zWGt`!eK2fZIgkzUompQZakyi+Q-V_NG7d{@uK?)ct-fn94#miig@3O9-F~w}^=6yr zWrI{3A<%xW4?*lWA#*I@$ zOtk0Br+fF^nD{sP)N#I=$rJy&>O)-(;L}@=;P%c(@X5_D;nB@s=o9}(us6B^n`Uj> zQHq5MH|P2OE*!iZ9>xf{Ukz`=UCDk{ZJ0sO8uN7na4}oJ#cVB4^-nIB@b+>J?=I)? z=3)kK&*yM@Evx`mGPe9u-sSJXsLz#<$5fa;;b+O*;TPa-3a%ki!i=i~EbVBnAwsD3 z3i_*~{r&z_s9oOiU5|=YPSg^8N*F+Ky(zM3OdvHrJy+uC)Ct%Iol=A3vQrYf0jq%+&aZo z4*M!;OJ?$jec<|P0oU^t9G_36=YDb8ul`P@r~bERSMc`q8ZLz;nf@$=FxXQOVJyer zGbj8Em~_w2LZcj>=oeCa`}snjDJA0+;T?;gb)qO~P*RiWzrr|CM##c?2#;`{n4hcI zCs&yf){?a_!aoCa z8c2+{f6y6imor;G=NoANJzvk@YJLg3!yB+W+JVn*{}O)t@UP*kdw&97-}@8W=0-XN z)L#8f2sG9z07#jyKvnCjkhUfNN@(MDJfu0kymP5w6(N;G9AqK*KRcen_pdME``1_S z-QgvCe|QO(ixpfh)&Q)QAK@r&FsPu{XD~qFeXNIf>wu1f33k}V#f|`IPjC>Oi6XMc ztW(S_!O!RJTw~D>Tr{+E!7!fl@a%+k<`(W~Qd1m32)w$m!pOBGWG-Hl3o(Z;W{~1^ zlYzS|Et6)MY~##}0jn#hdab#yFx!`(4VU+H-_Dot;%W|?|C1M|@Z{ww9G+jp z(Zv)Nn++_5<(vo`*Y88!??G>%Jjf5~c0UzY)40<9SpZrEfFIx8WdNLha(6!}-JbpL z#pIS6Pih(3C`T?I6WvxKeA!kZl zJp5E{Y9!6L$BvKUv*<1$7S9}Q+_L~klrF$YybWxvpXPMQd~Mv}OJl+%2ajW6v96_C zEP;p2Y|TKt8e$H{N|Mu8g4h;s(OxQ;^P;i^^HS8V_nbm_{Iim=%}p3Ub*kNn|9BXJ zhAOWl7yZo!5YWq2csk##$<%$0%w|-%r``w(}k)iwy;MS`@;5!N4 z3~?8lC{N~(tr6T43<>w1*b{$kDy52G1-vfF5E{1b2oT~NMugNTfbnP&n& zL&2M-6Q<@A9m=70YId(0SpIV#?>XuE(B5cQv$H|Ce~D)c<{*^pVB$+an+ zN$T|_!fpvG0p6>C4@HPa#o)~=1}CdE{Ql?)USG}O#+wVcxqAqA_Qr5$Zv-FhkKo?^ z7;fwhC3AOkcK|nchU&_IR6w=uGcA;u@x=#+t#ww=%lJqVbL8e@;a=s{PX7*8ZMdy? z;JG9u!VDGC35Gfr@cXG`_chF3##cev{zoyWI7U3NUhVjBcVGhETi0dz0)x=hTq0`{ z<|){mUQ-R>oXq2UIGQJK$Igv^j9>=OBh-h-)QluFB%jkj>mXL(jimqjx>99NGu3IU z@EId4$wU;G(~Fr5(|342m7!pd&aUNm@i{u5!O3(1r_&|OMH`a=)SSamv{O~UtIGO| zk=A4lGUBIvdO4knM^xZw{d0^nB;OIvyo>#52B?VLittrsj2$KtnUzKo1wWb&&d(jZ zY{5zMBc?6;u8^*{yMO!C?7z~wU%wUCNczJ8K(7yM#NlwchX4BF7?%G4@Z+mf_>*7U zlb<^`cHxe=8bG!{t?v+`>>D0oY9jkVJQeTU^kaXY?$~;~**I_Iq|7|?EFJY{zH7>l zpS!;z2GL=DV*CL8q!3Gjd`|QqDo19zW2r}J;+(=MNg@GDI4mW)G@Kn1efPhh zdYXksJ&5ElY=G9InJ3)&RYvoOt(funYxJDsakTB1B}!m~jK(ehw5XwM_FVZ&I|(x} zWyMKxqZI*m>>Vf95vf}N=`kOAVmBT((!`<5t;8!321^njWU&5b0{7b0o zp7dP1F?akm0-5{s769@NahDN5M-{2U#Gr{jn|R7b@G{=^O%lTYyNd<<>x(n^x0h$| z&6_LvIhSGm)-vSVhA|ioD;N)jN9783di|CmY`DH|hrIR^Kw%3QYyo9+2c~c_qFRXO zB`28Fc(Sm5E!NrWaX}90eNeeAd(e)W=?H6|23~KAEV9tuw!-zuoH+zqlkFUxVPQtk zA#YcubufwIdCMpRjZ)st)(u>()>8OiF4s~J5Sr{szXv;mp0o=1`raNq{`des|M&pD zxPJiSVPE>25YY!(Fm#)Zj^(XEt0)ILn6dSQv#141q>iM7738Nh)Ljv_W3q4}fIa0B zv~RSJ1)`cRO6?S%k>NjBitv%;yR(Y{1KM%FA}T`kCr7yB?XleZ*nvLT4c@tb{(|hm4CP(^0b{P0ej|uB?j;0!x0|wF;s%EezM6Fn^dNY{L=1+_7PJGzx{42~ zebC|wnW1AsJ5_|S4W>WJUlbq;F-ZPCL1xX=Pg&L(eiw&z6^dVhH)_E#IJ%s{>yt}( z`uYU^{vV&ffB4(4B^UJTUwjPr@9Zm|5PENF4}OU8h|WahWhB~5xGj4dP$@GILkpsO zSMueP|F*pGVM6R{CG`=BXLD>%e*HSiaz*-AApaEAn*lK9v%n+=tU#CPt!uB-J%_ta zrZSBKL7tLtMl#~=p-a#S2iYj^wPEcsr{DuqXgPV8Uudpa#^e}KU zpf$l1+&p^TgT}LH?YQ`0iI3MkoS3ly02XeZ98q2dSj``_YMk9Q%^H@QrF7c2ZZ^_; z|AT{j@ZiQ{cyRC-9^L!`KDqe?e6;&OS|3PI4-{4@3XrA|@U*0Jn;`N?#ukOx>VgD>ar@&@CzkFD~bBx!SHbbf= ztcv9RQ<Jonc@*KW>bpg*#rts`^3UlDF0Dz(P(k{ZgjYiVnyA=GzhH5;$Hyc-kbvBf! z!!ZimBKS!PkJP%sx@yy$Pdw5-Mq)RZDeR=~JVpysf>`7|&c%SIv&DcTYiY-Z6GZ}i z^~aqW8We`XTb`gLg|;D*78}S6WA6ec6#%^o225G^7+(_N-tcn6;rZ19o*Z8T+i<8F zfSo}tKVRP6gD*eYhesbNzX4xAydixC?2eRmK-;`(*H|2wD*_d|8%mC;{)clH?@N|* z>I%E9n-k9y>mzTN5cY*6!wF0>6z6YxwN` z4e6X#_!Hp7wdCZyBnf%qd4?^FZUleml%pS(>nY@WB9G%-K1H+A@#;^aP^rWECL zq$EXs=7qs12spOE2UTG&TunOV9LN*-{RbZoO)2$9Hb?im@mPEi;M)qjlD=ThZB?1E z$gCBzaHf2`G5pAp#`1}G7~@2~R23D}P_w=?&j;Ra#A+YL%oW<$&|P?=Hdw3|uv%Y1 zkM&_#PvFswui);TgPT%R*LccLH z1x$Pi8v=eUYeA<%m`=*d%krX_bFm@F%R7t;k?yg7p> z=htxX@&xWbeFq=kn7~JS%4dLxBp`eS+|iZ+LculYRr21lY#lM~#wx%@O7tf-_AA!^ z!XXQ>vLn5CFEiruGSny-W-gf4WDTKft8HM&p(QCqMiXlhlybgM3Xoqk(yYHWyEKG? zVMcNiQ4PE{lx2OR_Cy;3R&l0WGq2+3Vzq|FbR)g>i#z)l*9*9~TELsLDZD+O!MoEd zcz1RU=T~#MxSq>!ZCAiyC9aM2hG2CE!XaR#6wAhxf5Y$5uUc0X`{}uhiR*v>VLh~m%I&mFw zt<3x@u}@5fzz02edp(E${QDR1%g49j?BW{scE>Or^yPt$;d9)!KPY7;Qz(+;Yb~Oe z6xt*TdOLGo{L55}v6oU>^i>iU+9#VsKJG6D;#C1 zpNu319KE-Tt3Xq|ElhX`E8)IvSDf7Us=gM&+uRJ$iJJ}gXH;$6p4cm z><@3jPX7jc_0gZgUp)SI(%Ijqx4yJ>ujO6;wJu+2#;B(8t#AOyY%F{c=F{p6>&;)^ z?XTOh5W>H3?DyYZoWZ}mJcoaKbqU|RzJ&AnN`8d)Timx49{h)so;1Vk$-CI%BnGSi z#JOjYg1q1Z!JCw`R^W$ZTkS7QK;|-Qsc)0Ud0%f{N(!w5l^r$T znKYNQoxun4x%rb=$31uP;*{B}OdeA?4x521?IyiO^E*|RRpgYTK&RgO?Ukk&lkUDr z^^Fd~5>tl60qhESE~Q5(-n*{z4lXm5T}GNrwDHA)9OC}JIF%RX`>pKZ<+ai!SEj|R zmQMSY%|dE^g&FXT$w%<`_OIZxn_t7@TVKP&n~&ka&Bw4ex&dqL-QW5c(t>}0U*vFL zIOzVCPBVvAAP4QIK{_l%g30N01!uFBJdF{j{m)O-N&k!UIlL4em}hHg=3n(I*sBIQ zJd<{O*eE7!jbb(P1U&gfug`Mo>HC&oQ9N+l3mLw zIsEfahj3q52JEYd0tY(-X&oS=4D63&J;Qz_&7F-U3_~ZBQf_IuBcH|?Hh2H!;R`3T zJNMN3W0CiP4pxts)qi66a(rV+J}^rIG0q(^%%u>_d*TZ_DHyuZmEZ}v-M4epr6Wi&hYUu$;PZ?{C`&OF4}rJTxAp~3}Ct1z+$?D!?UUM)PH(0 zm-qMIo?gSdvnzOeI)%4qGdQ0u;bOXkv-t{E{R&v!hvBH#0$wA(I2#?M$6AwRBuz6; z8HD2gHy+XvcQi~BG{tvHcOsYm`0Evqex~L%#$Rq@XX_e2cI1FPJ}u;0xi?Q}U2KK8 z1mU8{WDH#7KAmjd9Aa#^RBH7neHe}VFdhx01y~qoz%9=`v|=Q1M53aRa8v^!W2rpE zz>s?d*?yvplq|xL(_|m0_mSM4<=sV&2_W2Vodk$U z)Qfj7{i0Xi=|ZpbK6TckoxU6Ey5kN>3Z;5s&KoKvT0`&CXs0X^N^5RgXc@Xf^Z#IB zq?vsRf4TpxbTtu!7@iQIOsr+Z{3fXRpy%j40n`vMpJ1XYh2TFBriE3VSxMSCjK1r? zS}$O+n!#$lkplkXTfc%odH9#`XOI3z`4KUTg=Sd16Q_#|jGWEXU4Mcr=}z3-5-sfy zYcjvI6J&cQ)13I5c{-h~;Kz5@@VjRx@VjTH@crR6{BSshId5RjIgE!r`4IxnWK>xp z%HD$(_o6XCUfl2&ZE3ROUx^LI1F67i_CB?v7{VT~e3nk+aFwPr@1LArv37q5t|eG9 z7*eQ~*<&a#vG5s9KeBhs@o#3@!|y-9dM${$;40#mc`F;%kHJtl z4Aithh4B=p`5fLY*6`wL4$a#Q@bw19bq$lchEH!z)aTwFe0Faie);egRB#Ip_69H% z_mss+D8gA~Dr)=&xE4w39-qtQq<1eo&zWJ4jweaj3w#4?kr0Bp_?iGG7ZVosFP_uK z%Rf{HOWV(6O{EB*;qLW`N)k*bqR?JrZ43ov(Zcn8ey|FFN{4ebX)#^F`Q-wBczz7u z{B#IUU!Ka(v!e@mesl?oO#=&Y!YV?+_G+kyeRQU{YX!TJGTM-?Els!k z4CdN-q_1e+9Wv;>w#D*nTww-ppY{qOw!8he2yG%vAKpLo5j4dQrfXy_JXASDf~;WL zaY6AoEH1SO=>)N=oocC?+@~pvJ+D-w6rsWjWjGnYcrt*=cpxpwY$@hcp#ce3l@D1u zB{c-$`^0!+%(L0dKcoiJml(rwcgH^=j}YXR8ZHWAT#hrMosKDqS7bi-N!0Si%Sz%S zQNV{Mj>mpEV!WLJCgg)?5971Z!#}7Aq^d|kA0rak6Sc^o`%BD!AB8XSHiRxRYvwKY z04wzVT+~j7*W0FTtEDxcz91D_@)=-^hVuQ^x(g={>rx7U5!6**JO48b1XFj0!IG&FcKAEaJ|Ce((UpCMm^`vt%bGN^z1(pp8 zql6g*d_UY_s2pWqrWgL9Ie|vpe@@ne*EhHKxS03U|J{ySs%`?FSZd`^rzKMW+dw40 z(%Ar_+!oz@GB+_u=G5Dd0)Xc%L_KP)cY%(06$iLu&9O}^6=OZJaq9Tc21%GUYZmwX zd%{X+ppAjFdpH7;2wshh^#xGqW&9*9zx$y{U{XBI4)?Awx%vNrp}bMl6}YlmW+s;>R1I!6(Q? z2pz%||H(t<7JQ=AH4*RznzPdV-z6Ms`e=a!FJr29dhbBs(ABoFqcIc8S}PTUQ*YRq6RPWopn8KzI%=@(x7PcLS0csiA*|00yy>ys-uy@d-T%-u22>(A*lqwy;ucepQIg{2#{sRK^nwh7KYB;O9Rh~CHX#NUUAnu2!y ziB1U}0k&eaX6Sh$g~Jw;4$@;=H1dVZi>xbx|DoePpQdqF$m04ptL1@Fzpk}%w+$PO z$1+WRa~(>LijjFpR?=zM#dxQ=6oN!kis?xbaxLkpdv5aY#YoA5UN;WPu*TL9eXvM^LI5ctx|} z_m8z+s;TZ^Uj$h==?v*<#)LoKK-yQ5j_^ZeNGkmoFKz^EyI^k1y zj~jchew*YlWvD;VaU(99neDeW9?FH|q^g3|rja52-d-%=_pdMDcR!!OzdSpK=Vvo` zem=9|l%zNRabGfP_U@%tY;24vsA1wjZ;~G4!=P1?;kARGr||OV5?&r%!F;`jx$vhU6lViMbix6i-EYK^{U?pKbX_bQ@r zHf=GLN}0YhOFjblOYjObwuB;EZlq{#xP0G2Up?0{K|R4%&72vPJ}o%6Rt`)m0D92x z^`w<&d{o?TC1BII5==qSD7{VLFKf3mYTjbyOUbLMzwmxR zVmm3qPs$-|=Y7C~AweI4=uBHAs{o+yjKCJqYiNkEpsG(1d--paN#xWYVjJ~aB#Vb| z`BWu~&8Z$y1d-0qy>GE;;NFjb>5YKtZ)Plb6H6s{kR$w&te!I~KT{|`qW7@{#*qbp zPypz&dg(Synl{$bVc%-Kl6U?^$i6!}AH!F7e+!@A`D6Iv&adF%jmJ{(ANO~ZcYix* z)&)@sB4@i_^jw?bb9-Gu2>whfsv6jE4sTCq@b+>k@AbbtoypUF@j1L)!qN2trodq| z>FfIepzcHKI*p0HWzSOUw*4oB*9!e@{9H9Ysg)kXn=}%qOSz0@5f#g1%GD8~B4*>= zH$GEWy83KCDXy@1S4_~tm{3%5vKpOYdLHmo=65MdMngDwd0j$twoirf@u>+Z@WzW6L;T1X`tR`v&8J!fUDM(pOKcvr48STQD8IV!2ww)pP-e zXTp2`98NB#aB?Z`@lWC1*%aQKUdxX>>AzaQwYVBL?nA|UFcQkGS_Vv4C;jrCm{>#Y z0SecMottGEPia2S|IYmU(R}$g-S&!ZJWmX|=&py_DI$-B36o5ceC8H}?@OtOFUI)E zoQ3D_J;DCyFA7Gt8SE)Rhlo)`j*R6&QPujUP|heLUGrLPXR@U+!6-Q7ia9UM7!=El zR9Cq3v#4BThTH-i_be=R>IDewLpc^9%`$ony|xH~KSvISbkksAd7)6NE^BBPRbnb!@#%d;8$%ky*i z=bumEpMO4sch^feyk1FXHhtmEzhA>>GO+6!pZGgHD6neq(17kp$!6qb=r(?S%_;2{ zi~r>QV@B$BtWtyamu;DMd^g=H0UU3&Wj%ApH#VNk{%IXRx*fy)u%J2oSI7AdZm7`{ z=vy|0n^$J0v7ZC4WExVcHRfD9ax65sQmbKytHOZ45@!6Ba+4!0eT0%td@h%3IGHV^ z@V{PeU?@TlGJyTb5cYS5@b&$D_~pk3@Wn&*d3b9_`X3lpHT3G%=#Fz`4z1Q9IHuXc z62anAh@dTA6^$n`CdsSv%q?aCE*t9r)a=7Z#+cG6!OM35FWzoxo6$1ZG9}RtYxB2% z(7f9=!^Trwm=VsnRszU;jJbFE5pY-24V+!h;fEKe@XgOB@Z{wYJb8HxFOII@#qpIq zTpFy9u$ZmooT1kUfJt@fgJ7fbzK=oMt%+I3(y-VLsxRQOSJ1+_7dkwHZ#LJ znO2msnpsOqm&a>qViX2vU|aeepV#1pttMz=Yhs!aT%2~j-FDmgrW!(ILFF~B8G3lihsqaX9IZ$zHtI!yu21=nV zJ^E|!=rc zS1TJC>RW2O{aSoblAyKxQKr^(eZ_KLq-J8&i(pCCo6E{|%xF+v*||0q6(-KCUrRIp zMmPi16mMQL*sM43-O(i+UeDp1x94#ChY{S~9l@>L5!~AspE2xB2C%;~fLp?s!0u4` z3+VM~*T*hv>29NiD@*#AM{dC=tPoofAuG22?7p7&+D%qbF#Hs6L7s@0?oa3o&FE#T zAZlanPZn7?0RV~Taa&(%;4VSbOW@X(AzK$7T+Jp79ySew&C zzvxvJOoSsq5k|JIS_j~qs;HbkrPF)x??ts1;Auy>BFvIAq009$2j$koyJZS2PD++P zw#NEU02lBmPU_fhL;>KZ@>>Kt6n6I2U@N4z)_IW{RxS-L3~C!N8+gVoF)vtiNuIR-u?X}wY2lZBc8e|dHW|Mc@I{L{~8aCp6hqv;X`gP!zKE<%;yNw^#faE}s3Lth(oKEEzbkF+mibM)I;M`^kh1p}}1f`b;0(9dr` zJx{=a`r2Pd@Hnkn#5iU6~fRQ;SQH`2M z2F}r5P%g(h_*(|qY`YIQ?Sz|OtO6I@RCCmLaO&7E!U3dUitcj|!B^rDqDQ8h205fP zmSHu%)2|f;i`5b?t`_jb-06RI0#Bcvz_X)E`I$EjEX2Mi99a%}&=()!4PDe%vDRA5 zp7g8Guz|4Q(-V)L#YT@YwAR|EQFIP@0*VOvf_mRTPmw`Z(XeBTUy@=AKkz;8F1a7L$E7UEy&2BPu0UoqGj)Y2(z ztsPh5+%Yg55E8B7FZc{NN{@2&>3=#$XYdG0_P7pRo5EEDrJPR2W;8#Nbhi^0VJ?_9 zrTHeeT}-w)Kxn~{ZrQd-`@{%y#wRz&cj~!72LzD@Qro*ty|9({7i(k%Wy@^+qRYbf#pToP$1w1>R!t;|UJUP0Sr~cx^|3aE*R!mT-<5AI0eKhiuP2d0tNx&T`s%-Akq)-%3-uhAH%z>udP!+hK#@y(x@zc zCBSnx41&E2IlQ7oPFHpvyyrM}DIR!)rt4E1zxo+cI**)*-rXWfiM(%k91a{Lfu*)F^!Iv6YvC4;EUg;rZTtB$Llh%hQdo&O-Spb z0uJvWwEHz@wyB)6zioLUKcI8GQZMpP2O8^hM{euXJ9iyn+MDcbY*H-$8KE--&%lh* zR}|kgFdkQMb7u%U;);v(XVIu@S_mW>Q{sTO*UVh4hvD(IORbO@D1K77N#-kefPzOh z54y(~XE`qlJ~CucvWnvEE>VSgu-)X8uhC4--0Q;iksJM}1wht|b;pD?A1S69=OZ;! zDaBF}Sy&{0n1g%oo#*C32L@S{aiv?U0Zg?MsfOZDLVyZ&SIGrKtSm|`S~L!!#*G9& z3J-B-GLytT|3N*3TA0m4BhCJ2n~fCye|7IK;Ljib9sK#@e`oJU3gKUTl#@N9X^V_2 zhPMP9M>2{RuuPT?%_KG=d2%mI{?F&|yXWWd4^NNb|9yG_htm}t&DJm+)-W82hzB+7 zkNY+jxjZ~<+_r3g9P3J7S=Eva=HWfl#D~Hg7X87!M|x#PFCpW*b1_YRTtjR0dzOh| z5xgStm(VmDT<`?wY@BndNzX!onK=i=Bru#Yi(ok?l%7}l095lYO*ew|>8C&_;>0hi zO~3xI1U)r~i9-FR4p#A~ZOb1-p|XM*cdkc?uu-hXpb{pe6_eIGf_+@A8(3}{xVW0Z zlasafI?Z8R)i9}RczAOH4{uH2(VZQ5bY~a7{8&U6IDk9*6X+iZ-yPzL0NSdxU8-E? z8jhxEhscSUp6qiR3rYsYuQ$0J(N(mIwY=GUrVbtHLcS^XBFm1v2b|`$q2-{%hzjSe zm3CCd5Fr-IUSW-LJzvXkecwJmk)NlpPUYv-@g=+xcltLC%o}+}PJVjB9`tqwt@nO& zwV=_~C%iTFx8OS#mPw8Uks*Q(AzTXd?$mJk8(j;G-wIN| zS5U7@)-WL6h&y!AXH)zlczbErV;HcT96bEfgEKWx_&uY1TOeOHnI7vwVn`{~fg#s) zhZ+82!(r5`;g(bYs7Nl&M$uS?))_6<#^^{y8Y6b3PGpPj43WBwhbvg%8vRB+Uv z-n)mf6yeU3P^HS_=cUhDG$+=KlA|gF{_n>BDczowEe0uXSe0k^B@a5fK!~KI#rH0pRiC*YfWFrRZ0`h68a@Q>zny z(adIJPW&U38*v3Zd>NTX3^UrWs5Rp4kWqyd2}4*-e4KqDGE&}o;FU=el0DoUFI9OQ_^ zFqDaaBgSRu(^%m`#AK0v|0@RdP(&rE)hgmDsz3t_PF8DJoLvjYDU<`k?7P>)%!jL3cA^ZRF|>+;$lZDO zDhtx{D0`Nx1}KN1Koq1nNz5gwgX+``zhvHbi_@S3K#NEA^?Q-ulp3L1`53jaXi6;s zs%b_&j2GFq`)2jE^_14+(jWVjAb>?Ykr|hudG(^#a*BDTk4_;2=OT3)2|k=&C|whS z{2h|8Hc#+uxu>wTh@_M6UuKaI^>!l~%)*bE)|iC{rO|4&t&vq$ird@z^eL+vPY-}u ze)0}|A9`#IU*7!<{M}do9v!+wuoVj-=kH6DAHP%Qd{6E?~Xdz-F}p;SOL}GnfnqurnOOFYfNb zS9f>e)~y}5b$bWCzJCDK#|N-G=|kNc$ZH2Z8D7x9!PP3@Ziqo6+%a%ZUY*WU2$nmN zv*<~!02XBB$p?|To$vmQap+eu7EH`y zxq;ofWJ;q^H@d3`QT{l&Y5zSGZygUNmmdctw#SfBLQ%sQ6jI2w$( zE+gZk=P9>4Okpp{e9_umZx8gcccXdWQUP6x8$fyB5O{0ihZE09mfOPPav&rfNlCUu zDv{@WiNzn+SaR1t6@!kUe$Zu0)-wzK4MF#F#*dmp{3Cbq9HY!!1;Dsp$?I36L2dCy z`e5>=pW{JJ)gOb`FW)(_=)PFOx6n0~@;j*q+t!?_FT`XL-@1-v*MVZhHjqglOw6%# zCC(_8!{z1-EdaWxJ|cN&F(;On7v{{@l%kZeO)1vREF8QnW0c1ZDvAxJ%XFqfvusUI zP-TROVY7U2xxHlY8TBx%2(t{vd6#gSC&F(1>f=9?4AmERzLvuO?(hIMn~ifUkQzI8 zOW!g%_c`@RW2K!d=@u?#Yq*%r;pgLP_~}@k_&+(E!t0AU952_fshPavU+Z$Bq&V?6 zX22=9UFiKDQN4;YVLb6pRUcY8L_wh-<3zUPz;ovtM~}?+lC@!BAlu5WlNn@}38s|v0;ho8hL?tBU3!%Jxe@SpcoM1ei+GeB7cj9@bA!+0os2n^uH z&Olll2n&HqJB6!|0szae=8`!#!XWAnJzIG`!5!a%H4@2CG`d+05xru#|0)hfPPmwyf?7jw84r}(oayt|mep*ZEgoWjY4 zy5BGF^UqdrD(?RaWzV<|HEj7*)EFA0Emop5g&LXi%+c{P_28lj_KnQr zR^TFRnidzd6y!q+%Ipb1mjQ|H0Pb(JhZSyxnU|4Wg@;$}7?my7LQ&WA)IG|F23cJS z-APC_OIJwwn?@>8$D@Iy!zGYLX$N}VTH>}4rfFFScNcaTTmL!F$hO<($rJW$av_ZW z>Qs&QFoG9dX%Ba4R`E)<`C}9dqR3W$`cJkT`R$V4%qoc1)62mY)wnpni%8RZC%4(K z`z=5oc>jL@lpXsnIyO(^nx6pFtoOd$xqBygW0t$_Ib5VX^S(!$No%gT{{$0FtpMoP zefaf*KZ8HI|EDnQk6_dvN#VcIcm3@Np0851+%Y&_d*fjGno5RHf}3jWU-1!(udXWF zz7+lsui^jv{s{j5`(t=^HkY5lu!6x*G4uQ5fr=ZhPi;2lj=$}OJGfXU9*ma*Z>(P^ zaqlZp$jB3cFzWgCOQ!;&^np^TMMtOk_tA)`AzEK_T@k-n4r;Cg+<0OAO~In7C{{Dhc__48Y67EcuqV1~BX?%OV0&H47Rp6>UJnh!h0O9i)QsW$xD~o*^L^4OdrgqL>_z_~uJ1GT}tkO z+|Qkc1Mn1+b$a}8K&MMA6XGMp^h~fu`2Z02{wL!h^!w@HXmMUCHt`AJZJP-!0Vp~! z)C+=P13N%}XtAy!y(a)Z@^Xb+ZLKY33cB0LI4AKqQTlegFK>}&=vua~d@4!gU3sA}!_Ntz8eEkjo{Du|WyX$;XnpH}*^ zR+wB#F_tw)C48uJxiMTNDCCl4dR=4w!guhLY9sWF9nw@|?Q5!JM#$E}76FCBQ!s>j zESMj+KLI4J6AB+Rx=+M=jt1P~3386~2cdix5CjpqVWy}~zIu}=F_*{k85&}8PQlRoT>2XHX%%a4p2QmGJfbkTZHYgjHfaB`)*@z0lQm@n3FbTNlR;pb(#ke_#FQ+RhigX{THDh1BwOPC3nMVR&1 zmGmVcA*q@2-p|y1e$oEMnDldo{CgCv)WpIuK0?aZJK=4lbWfp#6-@UnJ>8Cx;K9EJ zf)eqcdQ`g8MS(E@P+w8r2tSpCt)yM-cwFO`#Xl*myXaEQB7p7Q5b^cg8!}|M<)ahPKkom|)5_%|?FI^Qw*Wjis03q03}M zU^nJ287Q;=N;_T>!vE3r0{;2uGkN0w?VC&Z_RW=a?k7Bnj|Ua(?e=Y)XRf0GaNK?X zMg*S?V`sVS@c7lJz@GEx0 z2VZ`)@=thESps(#X2YD@egr+U-uF2Yg!8uTch7NHo$mqEdv_f2Cs#xp8KnQh$ zCd}3wxLU5I@V{ENSDJ){z^JNVAYxh%dhqzx4m`fS3%6vr!7+Svdk5~_-hoeV?Lhz5 zF7)~p^aqs){|>!g%u=Aey3`oqqcQhn@!fHkDqvg#8VjRykR(<9MoW2RjH0hud!}D) z_I4)>9iiDia(AxHslNQLVvg5vDy@an$Mps-u9t9ewSXtDPvPn7GdR1PNr!$vyt$O0 z%j-E@P3N%Ks3;Of!0!!u&>Qxl9`y9}5w)kts1Rne(fG9Sw~4^V4Pu1#csSdwPaw4L zkLj2%GTLQFGZ1tvQ`5)e#PaM1o}FdLE7MT1uDYICU z&?SEmjEcKS{=Yi6Rdw(OZyP@)S$rHlj&|{cc_{P2t@yecT`V6V>%wPY*IkGZAcWt@TM*9p~ zo!Apr&1;7O1#h3D`^1L%c1EFU#WCmV4uZp>svNhHNCfkp!&K%x?J(g%Jo&;xL5gFw zLl@AW1mzBxhmh&wE?yB}VMg7@O6xlS_g{w*lx(W7CK~po*{Y#-wdQPB6~G2Kyttmj z#d;0n;~K`j9_;N5V0UK#w!m$E#rtx6&)^Qd1XAG=^KRYFkfpbN*`ThLFTlhPeF?i3-rmW*O3nyI5wTjdH z^ynJ?@24m5Pd}c*KmT+J3*p%r0Ct8o?C$ifL@60dea9ci1!gfkc21~$J*+z>?o)rW zbnisDrA#jYsaM(|qJ}T@2|)EDd~Y_YoDwgnnp5u?s*faCZ8`3j1uHyD;l~Kxwip)T zvGND3NjKN0wyn2q@V=W9#`am$v*5XZ9K$Fh#ZIn7BU1M;aum@r~bS(#xXm+vCy#!HD|rCByy{9=IZZiBhB`&rc3zg z@B)55x`eB%Ib2=O;qB=Z-k#0i#mTk&tfZn~1M_tQ^NqgSA?8MU?C+_0>JOyySd6t% z7#ccaOv{YV2HSCMjbO>H?LW=zqS4W>y@e4hLr*M9Y@0SeL1wACXsD?5obW*q>^A^@ z%Tc~16E?MbGaOm!|4#Z z^b8jbw3j`~m}OhTITEX=GgxH9lwv8uzk+j2n}lq8c!Ij~#pxHWz;5!Ty{he$u| z9+M!>+YC_&E|R8QF=jB%?2?jznHj{P@t_Fze&>_FHt{){;A-r}Nzu*}z6B{4y0hVNLyfHPm35>v{>pH$#!twPAo=C6$*YNGTEBN;C z8jh|O&>Qw-{()GGHM5SREGWTx!Xjzu_*a_b7wAS>{$T(h}UM&ycNd4gnQHSZDkk?D{L_6S0EKZwGIo{lOOS0 zouta==2W$A!*Gd{#YTGWR&}m78!6ZcYmznRu-XW(;UK?@FpwsUq;dGw=#vifFUoIzoRbR&ji-ld1RZM6Br&ZdS@B>Oi7&P)`9kr6zT=SEQ0{s(g3mO z8@JztB!=+Z2(;21pS3tHaggaNM*|gM00vy%4L35aFkRoUN_vf7E!XhuYzimSg;Wa2 zkF)^j!7brKU@}xu1$vdT5E%BPL(+rEK;{$v1%$5>(VmE>Ei4EoL*;W|*sowHLeVi4 zPuqIKHy=ROSp-VNP5?ql-z$eVS#k)a>AdlbkFVK?btN1zP8VyKE;iEPo;bA^kypeT z6sP>+F8}##B|p+B-)sr<OeQjwJs(`TLw;s2Z0SMVRdJ%s<`yCXQBt>AdJhTTaI_9i_T zXvVm)cl^=iY)`PTaIh9_0yqi0jE)Wq^99d+={SXF}5JeJf}dSHl1ad)$EDnsOKm5>qh) zt&CFM{q)^*r4%qH$l_YL_^d=!l+{KG|0}6UYNS_eBcund%{BAvEY;h_A1 zl2YjDzm1BhvN1H6bGR0Q|8gVE^N%j)a4ZxgXERtVSMp;N0ahNf}=s97?Bx~u@o}Neq$JsnEj71{MY5s z;YBCkD<@kGSp7Y@If{CQcfuqE7lnk*OKpy3F$u=dO`j5Dzla-9Bq7(qaL8__Q z@&%}>1UA^Wbngw{My*4G!ts!NolRGgqGng{SGnI#iPUo=Gu+c>!zN1nv(n@WWZ;FnExV`!hv>%!XjdU$mYPG z*qVyL(nLF`%B{flZ&f}KPEO9l7o=rD0uDM;!N^6PZ+Sm~dtbVb2%{h89~QhzwBu#* zHy!s!+%q(nVV)F+Jr~~nXAS&#IEAN2Q~2)f6@2^d8eW{uV9Fb)1e09#q1R*fgtj#S z$E}t2md=^4i+&T31oM6>EH4S$FL^_`$@ki{B=p8$C%~|AzR#`RsuJZ zihzL>z}53w`--TwaKyA#ffeZGU1MbdAk2-I+Bw)_B|hr3a@8o|L-c2*6$h7#4P5He z$Eh|u7D9@|(^Ui4iw#^a8>!?FAu@#}!4iyvHxox(DF*D71IDbS0JefK7|a1X$|=}S z3K69BlaR(YvK605`6V1f83L)mUk3PFykBjd8TcqBowzSeR~}M?R=1%psoOPS1WIcu zz@&mo%x7O5g&9Y38pv9k$r=liYsRHgYJM?=!}(I;zQB3A9{TFHP!#Nq2KKl08z3T@ z^psVA2yH5qUc*F&#@ey?hM3>eD+YmV9Zxp*{XaLjmViX=)Fqi9O-N0h4 zh4j@%I^|o6kEI2TdbVoda=wxuabI72%+-pOuIoy!t&MWlCwwvVRC_&b31m}ctZk~+ z)3{jI!lQq~T3;MknbT?Y#G_O*^ly@S6Wb&Mf4B=Me8K)r_AAQ#6bN(JPOg+4@E>Q& zwd26O0u1ouWCheD<%%cw-UQs+uyZ+ti`H2nym1=GGE8qVH{=^gq+wBee#IHoP)Vz$ zUEvc&(7>3~7J-?2FYP)u#T=z?oY!>?P&u(;a}!dwzedr;?`IZ&BE098>o1$PkbM9& zhC#|H2mKe${A@>;-JB8pE~?P&RS8v;&m$8;Mgbrbr7|iI7C+RT_ZGH&(1qgA)2?x0Wf zxjOw60)Ys{wOTb=K;Y6ML!5f{wV)z|aUqc08xP>Y!5HrD4B+nWP@Z`#dQT;dG;FW?vom|S(%#8}q zCQX-@YdE}G$m=Gj*XkoqEoB6X%Q+lfF5uPq0$#0`Qdz)PYZZT9SUQLkQEpBym9Qq5 zBXzrl={_(p9_kwF@Q#B~0njLG{?+*HE7}T}j$o9SgP7_O!>fo+sgr_IQkyNo(3coF z%=%biK^dPtw7>k&jGl54H>4a1D!lCByYEPx+Su#nO0bne@_HkM|IJ!inaH^EMya6d z?Mtf|E%YOLEJAGwMZ;uJ!DLXwPOk?${XR?v>e|3~Sj!NGLMb*7iZQJ`1HFEXsTJ3B zo*5;di15N2+t)^%zKCcqg2oDk*;1S0FIIAGTrC=@_`0&nv9%1%x@nX$OeqG1l1*I) zQ0q(6PpOqqW)?zuQtLG$Jo6h}MGy6xLF)^|p7e8bhu;_7@vQm?!K@Dx`@ST&3-Yob z<(qu|4yo@_+o3DmP!(tRHL9by0HKU%f9KQ^#De4Wx`~yez|2#YSe;=_$zkZk4&?^a zV_e9N6ZtAtY7cHGoCgd=I6PD?r#JR_!@(-5YgWN%(1*R95e$t2 zAn@Ig5RNd7kBgpOT@m3qSuS5bge?{oYCE|gx9x2uuRDNr;?&ENKb5ilwixJmLlN@T z{!R=$NhMHzcODU)rY6`c!I(?`2_FDH^2RhJg`Olk%^@d{Ae9G?W?}tqL2^-)*OAX3 z4jY9Q*k~_J6v&1Ip2Cy$Y zsS7XXy$TM7eK-(8y)a!K_tnW{zm`J%4QT~XOTk5+hS$oR-UK_J-EF;g86a-v(*~b`tI^n zn>b6ajKl5e}(%Q6`{Zo1^} zj!Xl|w7D_Yw2b$(K;EDs&=w&^5g^hAw^cD%i#zrL2b%`Ys}1z4l~jhwNCVnJrq%+q z!6z_SVFX}?1zY3XliM*hP;ecuP%2zEt)#zC=_@{*L!Wzt z*?JLF3KXN@gBGcjbr%wyQ5eD0iETjpy3S}KOME{q+i(hEEELqPS2&N?$0I*{<~%tX z-rDxhQA!1s4A&Sfk)Nr8vGgLeP{M@UTBgooIuofU%KnD*ohlr#6|sq?u3P58A=@+c z1#k7$A3=A9V*f{BHMylFZadpxKfQ!w`$l4~a_a0Vcz7?0PO)?>#N`D&T8Enc?#kGAAdZB|McVp{?pS_>!fW* z2$Q=5b*f}eZMkNqeOv_!{Dd+r+CA3Bi;qfD9@^XXS(t%p&w;niXitQwVg%y1Yu?vn zx^bs%bErMzK&(REySX;!H)gtvrTWyG;EgJPkvN?n)G)4VcziI1FYfHZ?xYWUlRn(v zAHn_oG2Gi9!M%f#bb2N}!U@{2i`R3r-jEk`K;FtZiV9#%mwkrCo*epA2AzCX=C{6X zVCG;9%Ix~Kl~m{?O`SIzSS}lB3GrNeDSvx5g?DEnHu*w+emuQ~pH79T^9D9cWiCD2 zaP2!l#ho7x)Kv!Q_W-y&RW>Kc=HxR>QN+hsh3I+gB)x#~ZuLa2IcD%YUeFC$=C>Yp z$IN6{Ezw^hybe8cY03?$yQI_t#h&;PDZ+m(7FEVuWQFihf0#Mx28Y%er}zss0*m}=?q@J1RtF& z@68B{JSR(O{srMAzB?bIerfK{n?ON_Hc9~?6!rrVeWO>m*K_=egSuiZnLQYX-5=a>F6pRWMQlIEzM)dR$yiX(uv6ne zO1kY^vND=bQ7(nN^Mmn@TC+EAQ z!fo;t8xwAqviOm~8;2=QFNoCZvXi?=eW_iXD8qGwCZ}W;fx&duz;r6S`%mR*|G&My zgl}G7z^kjJG6@Cc-CvwCZ<;o|l>s3b18;1LP|{NE+*KBPOtJjlk+jjfAILN#U}w^X zd~_9Ct@sg61IH(eX8ag$k4gdKGDqg#9Qxuq!hlIjh6lGM(#hK=w|C%LTo+huV7^?# z(e*-prgLRReR#2ecb5xkNibWk;bO6p76Q`3V6lcJSDw`?$mdi+L`3ki!?Yy=qjNu+-2wg}6kHj4Xy} zivq*2Gp+0d&Cn~^S_$8rx43Lfa;@->7&A;G$VAa}uOMb{ZL9i94hw`kw;{7;8$c81 zkZzY|8*}>*AIMF};ddB?p9$ROxW6gd5G~tfQMvH*;5nVUGrD?wWPHm>RosPtET|?D zrjvq>dFA2_^2qlvQDacl56nw*X8{x?TYSs#@!L4H;~vfjVbUX*k)LrBa+N9n8>=jp{#b@T6$${k&o@L(4grq6_uyhVxc&es0%ti48U8QGL%hx)N}Mj_`SBoEN*0JR z7VZZ8UX&u$e)M&kvSs-pB12b&1AuZ^-3dFRUfGlNc-}AHH^q=EuCPP^(iy&D+8sx79?(Mc9+3`?4EHK~YeD;sFHO|$rU zDmSwNlld*o{)Ip&g#Wh}3;2JYoWTF~%_01JI)!JaGuRpTVMlnq*5TgFDHt}5#nv#vQVXq*`OY6r6$qINt7Vx~c*jM3Hd#wq}e zd9}E2&3fu^R|x+P2?SWI*3w$wV!DKj*$SS%xrC>0uHf)&3P=s2TlJDcuOlp`*3!n1!!mYm?Co9*2u<@MN7z?a4QJ4>jHE{f_4LAMj?c{ zi^;k=$TzrwaKzE3qTV_dH!VDNKD7y#RA6AbtFH>Q(7R!ixF1Etk3tA|ZcKkLT@Mi@ zm?Pu36fbXL__NzGKA`mQ4HA}}K_f8$94wZSEU4zf z@yB>XltcR-@q%uNgNrDH_iqX=Grl(3M{HcIFP>Ph5{Q&a3;~jsSDYebMq<5$6X6n` zGJX(93tbm0y(nAS0!Y$<)duzkH9WYvqZ9!B8X6H5Wz*RG@qLmDRtrRQ{Uu(cmA($< zdw>1+of_`ElYnR6(FN@owVbHll@P#!mSefX{XaDZVf+sSY5Ft#@XRT`L}i7j(~@P%_Vn)yuOPycBo+Uth}m{!fmk@cL>YL#!R_ z4%9s|FhXPGjxQ%*D0Y~+#oTnM!|cNdnF0cA{^4zo+!holjiwWXV?mM z+*nWRfe`nz_eOnr6{5!~xVt}=Rstdm{6DFX7$g91brR(u4ZdTsb5Z zc^6_n0ov;uGE5?~Vdn5KIM*k*cSQs*7HT+3)_7!(%qpu9kX_g;@Pxat&JJsv2VXMz zkf7?r6x*vAdgr<5;W#tNb!hg){?xw-JhzTeJtAUd4@(c)J<~OL_HiMk`>q1O%~8xU z6A$gQAz`VV8t&&L$`jm*;RRFM9i9xckkQHxULzRt`#y{3a|Q|3=S+dYi&&pS9wa3c zl^!1DdS}})ZToU+@?@}8NXJ@sI+ju5Bt|Cf8zJC{{7fNUn}qkO93<`nY;!VVU835F z6f!o{t(~?FYCYsBtHq-jZ*QFb>3v56vDrv}J|bl4&ah{3qtVfTwpRf7>%!m!^WSC{ z0M5&BezdvA)t zJ@Q$$!|9Hu;WX^bkdCIrNBr05PQ>rLc@xG=Z^1Q< z&P*t+KJvThIjKtRZPA4gay1-iybDiY!xId9%7!9)u}V45GY+)mcycby&=-rfa(D*} zCjCmDDnFd`;TLyy;N#mn@bR4;`0ArQ`0Cz1Ohz?Kgb6=W(HYuC8`ZK_!fd1iu*Mxp zPoQV|c%JzuwxmGN4h%K#zS*?HwiBCfmId*w55ha%VSifcp&1f$e;Ha~%tRGnCK6z! zECq)0o}?1~@rjvmA}Fjejzrw_i#h!8<^rC)y?|%$uHf0>HM}~#hU?1}EE^6}>3m5! zd+QB^$M>GSlWi0a*6xP;uqW1ncZc4N46%MV%4IAphzeB>YF~>nNQ`=jesc~XUztB~ zXlI##(|=sP0VGq=E=oqRF$95W$ANlX7@t8{dT<10{fAf>?R;tah3atEQ-+y}EI3si zsxOod(*uF%caSl4WtfJN#(N@JZXm#61V=(*p@K*vE{+U)hdC_(*c%koO)6FYGetwh$S)FZ=V8-4OzC>>!z6K0RY}^=->- z27jL1B0eKvW}wZ{i7YV>PYZ_AX^mKq#%ZvGt7&BP5upH>4EqkwaYFcy)5Gwtc$%8$ z0Pm7GJ!$l&5oi_yyl~2tgd|Pg*m#6 zp97)0Gy3HN1pp_$g(?2dH@gdKWi}rj!X;8Sr_eS0P5vTQBH2nZ2mxj~s448ayMsrV zTj8R{&)s2 zE*3Bt_9{YEo)TD9A=q#WSau1);^5_OX0{=3GTyhX!Z)@>K=GQC=YWEwoR_W2>TVpy znHb%L^R!s)I-6tt#yOwy&VR5qfP?AK-s3--4(*Qr-RTgflY!m!H}AK{J*!+Qr^pr> zwb{Vu;OS6iFWl*G<-;O|#IgCH-kgLw{3EuC$xbi`=fiL?4mA{1p$oOU;^2gIT{-ky z*S-)GYM|Fqusa!Ahl!&>4;~(F!Rg}#oLtV~jR`w=His8yGx+iB8qTifaCW(Xv$^pf zu!f~x!L=@rh?lYHRefc^39RlUKwK0?layFCk>RRwIT)fylKD@HW8@wDXYgKp=g1T9N7)KH&5ZD`x9S6JNbY+V_XImn;yc_J!Q z=R&}Vkc@G&`JQe?;=i(io=3X;%?MszmGP8;gP96NGca#jnGH7R4zrW{0P1ocm4&_V_>PMesxJRzfb%sKI;9fSWWRVp(00$A|(o6*m7g zX*YMBOD{^JmQ!DrJHV2-ng5a*zM4xg8JU$CLy zGEq6EmoFuWX9wFor-Gwi}WKvVXQ_|P zsCmKBSnu>ay=v&9uckKek_I(yjnin{KY@XudYbZ0`|0r(8w}c2;WRWfQjimZn#p=( zPiVG;IY({?(X`>;9!NP({1U#S{PmtO51hE0Gaz+zv8F&)F}hrX2jr^;%WFmxbN{~w zVFspw%oLF4T(~1m`s_}wSdsPW(M~)Js^Q_WhC}%L7W@K@;4c~0q9=M|f}@l+kdOYG zByR$#T%SnnI*OOXI7nSX0X_i`7g42Lxr2W5*$GQiCP8!D6dNSwOY3ey5rVQbg~#iH zQml+78BkilvEgv(;G3c^GKZ)+f*ha=miRe&FuM(=TqTCvP;8Y#s;VtVXs}+p3SiLdz|N#^jW;`!0epIY*PaY`c{+oaXV>uK$rZdf zox!_{1-!eM!^L6^mow)xK-VV%jG@6?>A+#pYM&|ypXIKl1Xo^Vk;qVLydY>Ry?-c? zHl7dq%28IjA^Dg1@uplir(8OZ09CH#PE=G9ElYZHMv_O3fs^Tm$A5$O+RMbX75gPZ ztWa}keT#7CbfgUoHxa+YD(U#qtET@SfR*Cai1u!p;wT*w%}~B;@JMlDchF#?43?f2NJ z$KSt(fBgM1=uXKo#)FObxkf>}T+zOZTqTK5@EHex(|#AmeFg7Lhjyp`(|gHTeZd^CZ_M_cw-`2bnz%NXK?H6pCm&Akf~rJN7 zT?ge*< z02GoLSU4!)qSTqmlhO+$QYg1z0v;9qO!5V$tT*m0MnO@0!q01Y6(LF}(8Vhco`sNw zCvWQo$JE6+*vrR*-0_X^KT036L?AL2z3AX+@kjWG#Ye_lB1cIQkD@8&Wj67~7n67? zW>c{;za-5UFGq#VjUm+Je`H=X(_Wkb3T?H2xk2xEwN7#Gb;V4rlRsr+znc5!U%kGx z_x*qK!#Vus$1`|-dJVl{xAIaB^<96iZ5CdRA#%^Sp9vizD=GppP_WBRYR_|*EG>Ab z!fHX|;LL{FDUaM61D z*`wtqIdA>70IZ;L;zr?PaF`?&qBYY!M8p?LEGm>J{H0ds6Ez2o{&~ik zh&af~<(&0UN*l-+xhVsLT>ML8BV9OcFd@w2P>Qt;;9MeWl(9Anl_+qgo=dqjeZXeM z_=!^wKj#;6^QN&R#u8@SA#7e8-@IC4JPH-ycBXyHqksmH)-YJVzyLl3 zhLc-4|D2jBtsELDm&F?9 z>oxr5`!o1ofBOo)e0c%CdvytuNe{LreY;rtsx%ZBg|?1op4&c4ap?Mj0RNh&R5{^^ zJB28UrqPoiO&o7bw=ix2#xG={HOjv`Nl`4zU0UPCe>Pviu+y=h-SGe(?~UQJhdc23 z!(I6N{xI z$m=|@FH(Sy1{Jp44stJ_QX)cft}?imCF&>1wQ(^I&12R$;RVL@BTFo1=yar9^m+sW z$NB~;0D8JK0PGk8!2T2__6h*%qYiN%SI7NQ=syo;R>u>i5KtLJ$A?a!?@@x0!gIk@ zOQJdsjdH~q%<8Cqv+1}i{1;`H^%%KczdX}ZfvntK;w1{a{!QuyStySWs!brTAb8Ol z(@P*f2W6gYCU%2|8*v?ZCxb^@*TNeud{;D=LmuMwHi%3VflodnA4>#s9X=0#MQR~m zsL~XUcJ92p-CtBbQ-XGP(3Ocl4hk;jYdAk!z?VOs!@vG`4!`-~4F34~5-wK->`e#I z>vf>3E06N-SaU2QB-=J8RFmIz7PLkXv6OJipQ!jq(pi*8Ti5ULip4PCqoEj0&FP3@ zxvr094?3OFi~s%v_9uOKursQ5`^WHbZv=)UdJkOZl~WLWNr0*Cx6xR zuR~#<>tl2b=@VC-YI>f_<2K;$esLlP#xwKHX2S|dP6P1P6mV=L7)%{jfLdjj2c^N) z$p8(=sh|QF_d6CZe)?!1?re|Xv-kJm-<@8=x5pRo?VAgDeLl0Fv+I?OCa^HqO3Voz z<0qioEu$D1gefY*srjn{et$^^IVQ~xC~;0mE03`n@}6J8iaZKwgooY1d`JyTiOIt) zkm`Fwx+({g?woC+b~#!Med7`3TT8%gfdWX!V9#RmFTtvDG8UtP^!3(m?FL($e?M5ik`oniqW<}x9; zll37a)J}{l35d}R%+9}2{=a*74gck1FX#GTtq~P zWR4J(nG{wCh4F|y=cd;~gKWaVg2lffUeBfKSqTBlVwyk7pK~%PM+~AyaXIBIm`Gv_ zRkxWEBBVrqvnmK41^B4K^;`W4qyhzvCA48~0#JOr!T47Mq10!?g%bGqQ8Yxb@{M^Z z+7pb4lGi&aplBAoIjP7MS8}pYbi{^L*N)g;mOw^NLQ(AD@P|~-(JisH>Lef0X8is# z3{Fzi12R#b7PS0kU09zq(_t6JqrUYmV^4ExvMR`!di`S%YeTXe?T4q|uz4aavH(eI zHy?7Z|F@Oug_cLRwcCkny$rQKzsUu8JHDUl)-k@YGGvHQA(%Yi?9&MF)&Nj1RBW{n z1lBZ)L~>;E4Dbdi11Tj*LdUbjt3qTW+dJhgY17gAByR7MTP+mPiD06wWGdQzWHALw zaocul%v9Xt?9!l}la~&>JX^ra^9B6!+cWs$+cWt3_!2J7-LRg5txg$7-tJ5m+~VWG zz(NYw=Q#Q#I&%ZuB0M#jC#JkA7q&h6F^?o0>v^XOn=L-yU@ z9l?X$5!~4x!kwKVjQd^Bc^{yi{QCa5GXNkMH)gUe=ua>xHU0C~SBibsxj6!YX(UtqRO2(io!Bw|jnVGz?%4W-FouD@dUOEa9$%K9 zlS}ySa38GI%A+}MOxr?t6L&; z%=JjAiJ_m$FObdm(o8osdYA`u&4=qhXFdpL$Byk<)sxo>KU^w=<0fs>A`y9w9`|S0 zJ!7P4GKD?E*sGFfLpA$d7Oii}?5afVyX{cLe@x`^jZ=&ud#C18>ziTL+NWcn{N_R` zqS>GRa`x#I&wn-fC*V27Lt0DXgqHLqc#KZ&)x*?r2X6|{%N6WShw$P46b`mWb|VOo zj~dUn2+*OX2F~~x=Fg{}vgI7wZ`80Xsj`|vqVm+!7FCGdPvEDNJ*l6zV@7#A`7e=j z$D4<+=4#^6DBtf!kGvA+MMB10B#p*>%xRG^f$>6`08wDj%e%Yn;0_d`TS#&>%o}Q? z&VnJvX;7ApFk2vetf?~M1y*c6ZJDN_Ew~!60N|X|nGj;;nDEQa-lUF=!7@VACkj#@%7 zYxwQ+cW`lf4fEv+E|)9lj|MOpDSPF|T;~C^rVHW7z9I{;65K>;gpP8v%ZSqL=nvWs zhnNf`EdDZ44TOI3#Z}cG#I;d;aj_(!|Iz+X{KQ*ofuAeCzF-stvL*I^qlE5I$D+O9 zr~(S_T*l&JN4Xus4gntY%O%ZS@~8M6WT5XLoZo;?BvMigiBMRN5cyJmo(#m*AJ3W9 zD{dhRd|L&-h;I;YIdJQSxSn91HT0BUaqc-sB6NTc@qu9VgiO2$pktz_1hA0t4Qq_N zrn&8vFb#UOhP`ngKD@ha4FLUKw~9tol)j7HQ05?nNYwp#V91$JS;GfH-kSs%Xzy;{Vd*Tf5riXk^S;DgweyB)~8=>{I45H1z;?y%KiV z%B4oLg~1zgVNHI-np5aMqoaaj&bOUdO)G=HZrE1dOeGrHco=l#7f^E7z8x{Y6KYxv zpu6+0$}oS=-dw@6w=?*^zBz^e`s@_GKbymN(zVV2O{{T~Z(TbQYd2B#l8+yV5Rzgi zmQz&ZdN-L+0x4;*R>&)-iHqtewkotW!W@{eh=)VFyKg=p98Tbag9+T*9a@k6<{o#c z_ZP5S>zc2+>jQYXwn{C!>ZVd!mR#HI;c0Nbp)U-OEZiI&l_6|wy?8wkh8k;E;aYN1 zdNfkwnVazGFL&)j>tG zJYQWbV7^?#)%DT}fyNl%oPXBpT4iY9dgMPvVgoa64!60n{fn+!uR2Cc!ird;InC~n zw}pcn1F8)Q;hZF4(i?A0zw*oIR#L|NM6>w9U=%#85Mu2p&99wHin()4IYxfsDLKZQTU}<%ShTIz z$8FByq-#0G$Sts3!>HGTz3mB%2K_RJyMpExUIq)Nc)9_q-zYa%7AyFz)>&TlWeOa^ z@;^CghA~CmTtD0}c^p2Xze!|4lAt!~&5Z@9_Jw+$rHQM9^n^Owz{NDl89b>LR%~!2 z`(<`=41y2S=;e#yuxEed)=~v%o~0~}4&g#cSrEAV0)t?J7N|<7b~VT&Em*ibgb691 zXwbvuxVSYWGfyn|YD1fV@|?=pkYOET0GPpl{=+f+?@v$Q|9E-|yVLTnznf3P1lE-m z&5tg}M}Mf<4Ux6AFe`B{y6tSTm_5sJeuK;i4p&ZK7`oZ zR03UT05CC}?^z=Nz~y`eSMwG8%hO}{mv4^Yi>JphfBFXA%$6{_m_ujKgYK{g!$B8R zx7)0HbJa%|0Sv6-<>3&;%v_;>@g$nH6Vl*KE1x}e(eR!vpcO`UW*D-H8f@r?+wl&h zKSGvrz0Z3qo*5QQN1YKsGv&p*T$|MzZ!ljXL*L!27WBp#rnWEuUJCYEFW3U;`yz>ez|6Am5QH-pjbwG-n=3K zlghvKNjMfhfniC2C_3`mZ(f{tRkKYh4&krTo{W<-_-i*2_%jGv2oF~~8c|0`R)sYH z>~BwCJnW;KF{Qx=GL6sl41QeJ*-QmiLG%wvlxy2QnYQ+D3H(22gtKZ@!IMp)5_0A| z%c&zxza!KO{Y7+C6z>HFS7&naOZhW!0_ay7+Hu+)>8~jjLWWLE!4;=p@p-snROnJj zL7>A*+6z`_8{Z!!QvhbYUgC6sFU-}G0S@*SoqJxEpm|7rGw~`{!WYPUnU7S0Cc`@t zi=qhFD?SQfGVH=f_qMHZ;DbBc@b{nGg=eoW;Q8wdcyT&|m!~thTCQMrHUn*pTlQK| zb0WYQa5TPGM`35W6HQ#k)_lxOQ0{!jw4N#{@{-_KiZV5&k&rL;OO_xqN$V!BlNotx z>kCU>!egWT$69#q*Dow&ak@CmN@$$-bs%}9bx>nlUdMw^TaI1)4Dl+qxOm*;Ya?$W z^N?tLGeu=n*)%3MX&E<^hpj2O61~geGx%pfr}GFtmZM|i8C1DJik(O{Z`M^uIvou= z(*ZoZy93)>!=?zKc^n;M*LIFflL0-cb)zz(?9rxLuIvWMiGYyWEY;+Hg05^1Or-u6 zG^Jf*EpvOMIKd}^*Xq}oP@yNybg96i-)`;m;~^So6+uemos$t!g757ta~aVZC_L2>Vk6ia1Hjp0 z4NCwRI0JxD0@mdYHvm3iDQsCu0}->#u@%r>xO@uz)Iq6cYamglXAtD9HR0@(Cnd}s zf4e0Li$wu5v*T~#=7NHwoe})>-W2}+qXYQ+Cx=$)Hy@YQ#kxACU4{iK@AgBjSh1jx z@$sW$Gkir)0&V+hH40Ru*wGK)0i<6F_PJP#uBG zdW15h!-`?QK02k>|1EIZ4JIsyE;U*G*%IU#O$z8nT=n}%r z_hCLl$0HRu+NXmP)V#jNQo*XNp7)Ylb@lT&wWE!sd=|^)QYn(7f-{hV8Tci5^B1Ay z=aiy2_f&WzSCcWCWW-VIbU>mY5d&M)FF?%+$XGZIc&$_~&olxZH+PY1|7%h0KAW^P z>RCr(Pfr(CF<2L!W-)1M@M7fA(&H8gkp zOYiHY0pMWRgT0+0e6Vls_HV(52NU@4Z~_ml;y;4Ppkp2A)D2W)*ulq50equHC8TH| z_*l;aWiZ<7OKnIXV@paPX(GaOIXQ^#nA19t6~B+J6XFEl1>Azx)<34Ze` zgr6RT22a^btSgp~Rs9bHPIT>t){`Qz%zB7r(6v=ZH*;yO39NO!rmayxX?UQodbBnltW51;;q zj5~+IrG>A&2 zlY~!npr{5J)|2G=S~v4f*p=;BeoY$pT^BY2 zRHr+D-RT4#9PPk#GN>JWcLL+CV9Y?j^2l!PO1N2yQ3YxUbonLtx8ZVNX#PTy+6kml1^cq za*VB^a7`^Bxr)2ONWjs!4HLBh%A=BC%E8kZ*-ce1t(;rvF}E>}`!DIdOy1i8OYy%{ z!+%}%(@`Jp?Tumb@)B0-^4Na~Un7RFCoWpK9Yq~dIuAqXSw(-%N7~^YM}$~s1k;W% zs5x`3`O;9zG6KfSvJ|M2k<{KF@A;NI>C?(dFk088(=>zeT!BYIbns0j*D zp=P)np$6T#^=(&(D!AjtwNXKNf(_L5`TeUej|U2LBN!=3p&*FNi31q_z4wlG>E_67 zLw_=(qDcCFR^okD#IgdYP#8UtDONrg0L`!US5cHkfQ||O*HQ4` zU<~gaP2m?G9$G&FPhXtE(-&v(%Rjw_U;XJdeD&fC-o3emxzaFK0ORoh#=WlH6>=wp zT&qrOVhtQzfM|>y?1>(3KwNbd?$%K~n1ONz9dF%dF(kfSdyA>-ZC8?)OAHSq9yFn3JJ7ET01xl%zOdz8pOYcG0xL_+LZ#G_i6cxw@bCg>%`NgD3flc5}qExEJ$a`TNT+--8NC(@( zA%V~~8eUEc6)QTw{@dnD=mQ|AS^$<|3bK9|xd&EHf+i(Epa`x3PmAzbTx5JXUZ&VZ z5TB%&ZtH%te3R%In}xE7r&yJnN0TP=gZUF?KuKYXtF!%L(!qDc6gkrBn5x#WJ?z56 zogwUxdNAsCtg^}(lWM3u%eE}Ys_<Yf#4bfP2$JO?O-D{6UCzk?Z+&3{i<6C5Cp5MAvobIE0+E-)Go;m*~Apm z>m$G#xjJAk3~6*Sg`fDkFWfwNd?!H|a+W!F zC!8%8CB32WyqV0Bd2NT#3YKqH9F<=u5In_CF#c(e=lXc<0TI;VgDR(Q#^0UL5OOy%M+egwB+alj`}$;-sRQa z$h74UA*ERfvT#DSU{&QDL4yAppBD6}Ihci3tiQ}fj^ovJQ}jc!Mqy8Tu3@|1g}vd> z9{nE-dp7b@>8M!fw3O(2!gwu+C5@3O(f~W)ZL&owKxh=}BBpl=;`1H$5521vYEwLI zjEWBcUoJyRW($O@FR%QjXz7u@M!~3F=37nD?T1kf0(OcG0E+TJoQM^!P3NWjQZ#{f zNiHW_aC}BWmH+l)CapWivM02%QRA^0X)0_JW;0!H%W5L?t!nZR>HG~XaQ29MEfkan zfcJJsus`lw13(X1yH#bmcW|Yr1X%;N z$lZ60dg5m5;X?>nS5NsWdvt^nMjo+K)I4~fBS%X8BK6R_x^6YoW0#sc*+KPXPYS5i z9O899gn`tX)2ECBX^NjHpub`}Qu4g`aunBYT1k#H3W6}c0UZgJTe@MkDJ|p^>0k^; zF;GJ2(MBxN)M-UVADWYLWOjVn1k=paJVkbQ6ngI|jWqxn6VPH!ds!nq!dd3+i3a1F zXt{#%bO=Y=Td=(~g2Av4%7lM41^`gr$qf+d-hlLwdO~^Er>?gkcXRExtTwuSbLzw7 z>?Y#ft?Na9x#BdsT2LpcpQ2l>sn_eCE9@RctTLIYHUKy#uvwKDb%{{+mq2FMWW?!} zKvF{sRixZ)r2xuW*=!!@`kM;Ms3<`q{Si9Q-hbK+M?%w|+&Ll@Co&lgv@K=?_DR13 zceZ-g5YX?G4AF$BOAKukj__$*sB$G`Y@~*R&8W9mV|6^=^ws!2Sed*2D-F|r2acvg z>(T$w{s=z4JB3f~OySYN*ed^S$KP3VOGOGFpD&&Kf$D^M0BXB1p#XJLerEJ7Y>2^dUzDeA!6|qU|)nTM@T1+YRESZUm!;R`S%+A@yt0l z*DFxl{1Z;jZBuholVFH)N|Z5nb}IgDgpI`tc1JyUd}j*#TZ8KKr*ZgN)EgqfOeXnD zn_h%hL2~d=GntddIYKWKncG~ba|6!E$%hA%Q^|~Y<0fxNanq&aik7^DVhcaja{dU3 zyqpy4;kTif8oB&Iwv-iGbACP_2=)%H##xoWxIL_mR!ks~ez!}aWlrH{m4kwZkXT|p z)`W(U@1-L1<5waM4}y%pGnyBdHC&*~c;*ljf*^G*3?BLI3DuFKqH_DH&hOIJz$k?M z$^g)@1kRj(Z{pK4Gbw39_-Zd!?HOYS2DGfM!gVR0I}^ZI;S2;E-sg9N2lj4$N5QHn zU|AF}zh1$7wuU?VV|Y9r!M}fU0RR58Blz%W3qHEDRnLpt@pn7k7&cdLr;Hs4N_9X= z<_>jfe9-pV!E#wD`fo4i@b+o}Cs#{2nJsM`_sjVjmdmyEFHlqpehG)RVF`_qV7}6@ zsC+n>k5an!KVUxnUIzyK4)i)*=y$uNAYhFGU={veN0o|yziSo$-Ej|g$9*`Qj^Jo} z1mj)@CdMm#rTF)4UCj}2n#%Ffb@(`I=qNOr_r_;In*$G?sKgRjOqUe*w0;&A=K`!l z?Gr&!@sQbh^wE(D-Yk>^k@@;I5d#$aqZt#0uKN_|6o*OXD!|Ux5FQ+E!M_0oZ_a1% z=KLD|>8n@p&tJWQUq62XCns0dNOid?U^wc-u-h+JOL4fjA=HJ9}j&noE2XPt{VE1MMI{2Jf*%1_GW$ z@4UD}b;8emTzEoj2N1U%QgYeIJyc zVo*g^lYCcx8^>-*A*E$_b&nY#Oed(6FP`?u8Pr&wo697=JOa#2$gTKe<8zw&`b>Ug zwxA}cX{2fxL7`!5GK9N#c42EW;tR72Tvpt%I-FiD;fPU~(`CWmY+|$dvypHzA9pwoeuY(Y^Ou|G>XOE--I}fp0HJUfxA5?mKZ)3~Pb&)A zEcV6<651XFWcLiAF^JpDa$9l}w!$NUVtd3x$*iuNlSmQRT)mWWVJB#9t_iS~-#YpI z)HF-Wc4G6J8V6en?Hrgsc01+nuQ34Jn+{-gK8JVLE35oF9{@U5c}72?mO}K*pASCB zTj;YnTn9Kc{tQYbxQgZn^F;v{vjrTCda%{&!7uJ_!~gi%9r)RMyYTb(ck41n`8T`l zb|<~sG4FPq=G^Rj7u8Pp+9>SH0^VIN?C0BeSMcr046d%1Hk!cc)e=r;D|m6Supg`N z&sWvXJ=lP0TR62y=@of(9j$6 zF~rdL19m3|+}L-!UHiE+9m3u1A>5nv;r`YD2E#54j1g&PWW!26+!w3;O4M|2*8L=s*@#XolX}BXra~r$`1sYq%75afA z2bg3|g-pi-INTn?FFrhiv)Ka9XGUPAP@p7q$u)*%Ap*8u4_vSe{wp!jTlN$B8n$q0F$50}9^;@&!z2tj~w2~~|1E)`?^pg9~gNG@mqM&R90 zA!YFgF+EwzNQGO|$c$X?uv3#u{Y?ohp8^{Bd@WDp`h)$$$iBQ24 zQk4WND;?+*FNxF@O1~H`gFOE{aA%Dvgy zzpNDgx3dMjoh?g01M6}(-<$+6$EL5Ag}pE_R3ve)$PE}s0Ta4 z9_)>JHnK!%0O-Tf*1(SKaL|QezXyAhKJ0A`tbc*YpodNfG_covriwUV3?!;DuGWe^ zDnZ3&`Xq3am%uGYN@Hv$OHkMTm#D>CSYP7NTz1DdO{Y^C8i$q@&KQ3amG2Al+nfe5 zG~=^}yRbbTz=wCY;qO1a3*Wpxx1U$%b9i-e4U6mYM1b)wt-7WE33DREMUlWbr!ZpY zjH{%ZXA$vmpxN?-ctxuY_#m!5oU1h17FuKJDaKMCV>7TWyXoX>C0x>_J=gSU@F28M z;4G44PUA^?nIqK;35!z-69le8uQ%ZcNr#2~lQBY60`I@_fASz8zzIYm%!&G<$}%@O z0=S}F+w{)|F;5VdMqf0@Ro|5V0LfFi(qIOS@c6SLnX47bZPf;q@kAy%O>SzOtX-5F z2ZLS*j&{cI+-(L5?O z0m8aXHJo~$t<2cv9af2SkkVhi09AyrB z3O{enfEjd*HlXTdUTFWWzd6!v3;=&RnZfnCfT3>gX#3|05BW%OS9uYUqgQlFjxb;|6mIL{gZw8hmQ~K$2h$+_uuQg%hfS- z>)fo{vAzP#G5h(tfZ2Qv-@cu}H*c@t`1~5)oX_FAw=?+u-3(q`Ea26}5?0ln{du8b zq050*9e2dO38Q9@=9~EHfR5vLRC7EZ{JYxN8-FuOs&Ts3j7U9R3Wrpw{wo}E6yd+F z4FzRg?uvoCAFeAu11Hx@>j=&mGgj-Oaz_xrH(a1TCvZ{MC`nJrfEg*g%Mr`PaL zU%!Tn^Eu4tYkShBKkCC^+_%OggZJ7_Y7-jCT~!J62Z?WhPY>|QXZc0sIAAOEh!FFd zKC+BL`=O1HB!E*I4z3)+e;gJxOX>3aC7s=q4PDBo|2jO)u~AYA!Ibi8$j@M|{t$m0 zQMSF-WdH-{IQ-WBPY5tspg#dujtToA+!PG(R#Lo>669Uw{f)yzqmu;f#09@wOA)EV zlba&1gWtLIIhf^gL3#P&-IgWfx?id^FgU%btI893N4sNq@?g(~0d)D5BBt^Lzw#fF zjNE1WAUWbB+-(w5T3)ZgV4BOThg)rJ;7KuFVPJFcJjvIITy$%SM!NmH!fi`r_%7iN zsi_oEE0a9|!1YH*lzO+ILM9;RmAJ8HzTuxw4KpDTtqXH6=GM1(pr>Q%d9 zJMDy`#O!#=Qhc5mE==Fzol{ZL$%Mb6_D+eroz=@y z@*omWC~|00r>nP~nkoW7Uv({>m@5L#F`-k?JJksSla`(G{qyr{I9)8E-zydUqpcG- zGRA;OA9g2wINTcA=nKaC{MM)s2U`O;Fee83rD4W6RCG})aKw<(I8l(X;t?>Ub_phw zOL&Op+Ikh^5Z7K5l+5-~!VomzrI{@!Acc&yWVP;`#@hL$ForS!827sH=kWCPIlMTX!HctNm>Z{-vxPkkpnC2^K&Qlahtj$CucF@H8>;H9q88I1 z))s$3>7EW$=L{(XWo?n06pb)2Dlh2fS3^&!(96psoCcYLYknnRdo+s{zI&xPwpYW% zj|ZlcIW7lu>?O^~;zb0n759^l5na~-bgh$TNEYN#C5*d-XFmUlv`xOS5|Ah(<9U|| z)`lr2|8dPk<;4w}BVuSv>Mgt}S7v#&YXw`qF6>N4))+q-_w7c9rROb9!!{>s6FJby z0&o6!wIDAg=N+GTX%t|d>O>ljktuA`RhfJ%A^)cD?jsryxyHkm%2_7N0WMBo2>+$& zd3to>;asFwT8ACu}3~2TwuzXCoC98cxsW@TWJc(%E65VWbp{J5|(yK^Hze zn7~Je6S%uKhI@Ns_~h;md~$CGcBg&2Q_=4#8@-^0N>?EfRT;jn6b2i5iy-E^g_H9B zRrOOPC})lNRu(_1OUg7|wM#dUbJjVAU)p(cd0Nu3#v6O{tD{OhvtcKzFqXzKq&dZ5 z3;-WL*oA+)yaV&q3V!vcWBApdkKzCR<4d?azlOzPX$=6qQ6GAv0jPf0t{GL7MlZKM zI2aV}0PP3aNK~jlK3^bWb^XstJ4BqJ#Ynxtyl%z|^P9#Cw_k5N{wmAN2v9PQR7~^_ zGzthoqOQ0)u#-^0O~*$zdB6SGzL+C z_DcmlbJZ#8?Y{1luHa_7MLQUbYu*JAMcS2e2|ICAT)=Bf(T#!}SWvy97erppRO0*u zwO9W$0dsVa(uuH%7WIWcWxa#XA@$CCY6h}cTPMY%Q4bDAA-_Cu-`&yjwfXbf6b7h~AQ z0KkL5D6C9Iei)sw5+CH;u8Xy>6~q+nct!bBA>`y9XH|ORmTy!z?0sU~G(_$^M%oL| zs6}tQ@HkYoO96{O@RSA(yQ40Aus4E(NgoErbGK9Gup}Mn5(lFU3D1;M=;R5A8t?Ep zr*U9+@2{>4YrrtO??1gWg~xj%`24{({N(-=K04a6%D*uZm|gxi7YlfMxhS3UT`l1F zVgau&mvDSBx1ZD5!rtvS*9Xk!+B7`qz(6bL>24V|5uAg-(sO;sp~V{QqI-5RP4#we zG=ijJII1)|?we47c+#~2!J$8{*!hgmmDlM`WiT*1`TcIM+OaQpjJwsb#D!Auqd94@ zE?{ypgUPT9zkGfI_v{WuA9kk$xU+4X4vt`NGJyTb5O&5rdu_!CHAaD~$ERxC9#wa^ zkr)9bpd%hZUkw6(WCf`_?F?P}-!U8+6DO@Qom!vCS{QSO#PiSz7E3Qoh|G1_c@sI} zgFD;S=fi`8E%>`nniBypPp{$S*)`0TYnWY^CjvU%uJskr?Ud0Xly2q|7$qi&&)yo7 zMqE>TW=H+OX$D zGrhXD7-D-J^7k?uORj2;&2j*vAI%!z;saw6;NofpV^xN;`^lXt z{Kuc&wVwTd{%E(Z#~$&YE#c|$C4BwzvJ7W-d@9!eoN=w;hpQ#bPp_?`ITHzC3>_G&jx_+7 z&!_jc;j{bO@X^r}o*Zr4s~h8f7y9y8 zy@r4J^D+GT=^Oast5@*F>=pcYy@0pp*U%aDp*u3RwO)B5z+QtX9Y5+|FcI9^e@>|e z&n6m96lWtYM}+YxrdXgHB!qX0j}CughM=71ID-rC$h~z(RnWa-pKB6I94M9CIOV0r z&rCIc#Je>2!|N^`@F>5H$OCo9WFeDn7dMOvw65eL3{+(OWj>7bDl!1UD-{@kLi)qK z=L5}S{^9c|rVsQH=KE~aE3p{Ype(1cDI(W_Kkp%(2nX0vp!%;XFUFV8kvn6L83G}! zpZesUJ>s~8z0m+Zy1x$x+Y@_Q(Oe5K2HY~hQ3rAo<~$;{21iEo_^LO4Nil}YAya@< z3Tk84NS>O^z{QJGt>BBo85yWlenrMT4+57s`X8@I;=jq}(R^sG*)&58E8?yIq!+37 zzSe_>p682^Tu!1^3Cu0kS~fJX*HoFoaHKjZ5OqHfLyT!9(Rz5lyX_Mr%p^lB-9pk3 z?#e(erOAs;9mt^7(K^EujKFRbT;rYn-tG`CR%`n)x>XN(ffv(8L?edF+*6<77~Zn3 zl!RsFbnjr)hbQ+&@YDNd$A8;;`2XzQ)G8@IqyPe(5d|()Zza+P~TTBh)J35?n@LdFqY*FLj71?&w{{3)(wY7ZB|M; zFA;mIF)Y^AZ>4KPiBa;*hOhI(pv|cYt*zmp0}AFHfRp7K{&;)|uPztxyC2Wsa5AuA z2+gU0JKJL$dhpK92#$7#_9~0~fMN}6T{`?T^ZWkM)cSyU zus?yn{rC<%eRT#;U!TE?>O_F?r*U~Ut72SsYA2k^sU_%&fYv;e8NF?pNg9o29P&~o zk(A~_A{(r7!4y=GEr7EPibZws7ZT&5J$}ClpH9IMt`iIth7zy$u(sS*!=XjzzY-BaO_J7gPBjd`Q9SSpVzk1gT?Rf5+k_+E3 zvDM{79f;1ps>vRQo9+#@M26K$0!y}OE|F3eq*U={#GUoF&uHrVmVC`%#Lbe zY~=?`9!AcB$g3cmCM%-oa>vf>yzOq427uN19Nx}XFszQXYu3ilaE9_IxEA|akFE-# zS3q~3T_1H=fqSP)9l_iwUl!Vi;+tJ9;mP(0{^s5`{HI^shyV09530N4$}0cA{`LgE z`tcIJesKv;PiFAV$qZ)eHO$sU=@r-PTK0|ezOFqzFse>IsM;GoI*yF*@CVBQJpkr8 zQqU;#R-^>&w@;V25k~J-b3{Kab4c7xY7c`cF@BT^ByPDoot3|lPN%#>K2)9Bu(L9T zDbO%CArqGcyu7%C#bRAX88A*O2W7ay&+hKPXZLpCr|<8=Pao~V!-I)+B53L>uLhK@ znv(|9KSKPjVKbpYo;Gq0N7g)qckdndlV&PL;Np}m4k%wgp4JjPO2(}u7dI@jOW}y2$fI%5Xve$RM zG!%0pfEfy4q&4t&7{zf4=B4Qu?!UAS<=GPI&6-~+g{n=8i{|nTFJB;!_zNJ$znb3B z@;ZXIF}~~9qv)~;21JnEJU->qTPja@EQ{m!nI|P{n2ECJk2UEJSA$4yLysrqb*MQ8 ze2eA}Kx3ze3H}?v&2}k<{z3clx)ZCz(=Rwc_DTon!j24+Qu4a0@Wej@+uWBI=y#O) zK-go7O!a*0y0va)0C@kw9_(xno7_s(Cy}M*gY}k3A+#A3NO}Jvd1T7dF14tK;75%e zcq=-P`&zcnEkh-|jMbCVi44gwzdfej{OYn=@Ruvs<7OW4-sx&~%)bQ)f7C^Y#;C~Nkx<#r^Jufwbu&dznhdc0aX9yo3Zo$Wg6Ikg2{_`JR!rO}_yt!P!w{I`)$9VF8ce#S|#dZ0PNKCprt z6(%ZNRF$A=V6Z0vjDLk;&z?}}m=gm~p6#Cjz|*rCyj`r|>B%L0@%#hvsC!_6Wv@dT3jvyF2G)?7 zu+1lA0~utb+*Bc@+*q%xYXWXJ?B3qQ8r}}K$MCbqhw${}nLQQo!|4ouJiUhV`4Z00 z=b$?ZiYj72eImdaCbPEGu)@U!(L;lzxiv_IX}%qia?vVpL2mVCE{AcoU`ryNdhePQ z((dY7jFu$?98c81h#iiDzjLWkS((m;{1~6u;^tk~v?S~qC!CV<80?zvL7k7QS3W?d zZwIkZb%8wvee+d*{!LCBlmdz9Tj7cJGD`H>9~Bi`4obB~F;bDqqPhNZDWF6i8pYag z-dRJe^;QHna?j!37(RNq2YcJ28s}8(ZaK@KZm;iQm(W#DfloHqRJ`NYj1gx8Kr-Ib z=pN#dn_^$YqXO_RIV~fvd@pzwl=KO|NA}oO zS{e`(PjrKftekyIvly$2*+EIx6UiUii&XGF$8wVch(!J=1X(q+COax5fIm^pz)1}B z_L5w$QjJXOXo0!+Z+roKus4K1zrC^sfYG3XJiV(X^rQrC1b4iIc&R+vjEzy13gLWN z!1bcA@a^=v@OSU+!2j^+5!{&$;O=w?zxwta{Fgtxf-ir#fG>Z%fQ$J8F6PV9*;ua& z!-4TW-?O3R%rWEY+Bg)tsE--zf`}%H!X`nxbuG&0o1Mn%XV*p8G3Xt?qu zQX2N1pGa4~MpAdE96R0GmGQk=yFQh3;lc?T{{aANi=_ZN*iJ|U#K<~rS zAL2=ZO-ZtZP~!6qX-Cjizat#@4SM;ACVD{j=!~wSL}4%88KwDapFWBg zDuj7a;0;)6S$p-+<<@K}>to+tCoo8Z8STh=P9fUU18Z=)iuwe?+O{N^0)j^W9B zdoUjM$~jh5cw$mft~keZG_#=cpQrSnAmv1@z_~X_>`t>^zjP4zcBv-YvNvCwse>8) zi@pVZT}I-#S!q0uD}Z)DPgAxl}3mN(`dj5u_B~|G4+JQn1P@fNj?`pj=s=y%OoNO zE>Om->P*H5z~jRS9K5)If!Pta;bGhr01i(Z0X&Q5czIDp(h*b4@NAgA^2q;IzXM0Z zo{d~!y!@LO6yq8};aqB-i$mecrX(e}^^ zJtoXxEo2vNr%*S?H4|K1?ngMv_;H$!Gslbw=~ax>)AxdQlFTWkb|f>;U2ked-X=s@rE-`FGoLG5$SF{%=6h{!Qfy1{S_k49hxmOkg&tO$pD)l16c1e9jcw)GklEpMtZ$>GooOZcm zx+d+7`|#o6#5!6V7@=CL`Y3#x_N2C{s6uNAXB*9nstf>Y4M$r8csL!v&+c!-FCOf` zpI=|VS1&H$4=*m@k1sD^uC)D320hra_lSEi>UFBS=jF~}p_^mLu70n7(oowtz$NFc zg*Dnyu4D9l3q%VKgZkqldP)!Shx6t(Ho`lS90RB8->)}ZMH+%fT=#?S`4608r;!20 z_^s&ode#t7MitPoSgzo5v4j^FGgvOxFj5`+d9*)<4-O{qllS-Gr|<8>Pu|;wok<^t zCXzs}xf);`))hrjk;xJV>Yb7HDsyZ!#8M?63YoN`>n2!+oYJ6(fXqXn=oeOwi*eHU z^Ja6&ck^5B;8)?N%vAt$g=2rqD*q-ue|ZMaU!B80fA!LS{`leyPETgA(AtLN9FF=h zG!Z6Lc{RXZFDR-Gh!?{-u*n)0;%%oDGme+zBrqlpur|Z3czn=w2RD~&%M4jyV~V`b zXh`|voFzp`&Ct94QWPerq8*sTf;K!-Kr?>U3a)aa^|%}_mkJ(1DHZep(}=F;>Vj)02j+OeEIU+-WN9a z{NG$I;dHr%{-h6GrD3GByOFK6!gsXFOt2C^~@>y zQebDMojCrr4N{sW#HxbN-9I%3xfQZFZchgA!QE}>^*Z+d^WzH}uG9MTcz0>n{oAVr ztco?v&DDagve$gNmA?SYQ`nOMnIMaqHsCc)#}ft8%`i#?{!e!q+wvbDfLduuRg+EQ zQ0TnWbQC~UbfFh3;RqUy!wDJC_xDxQ}|Mb;!20%}vEf+Pn7GI*l?WG2o2N|->? zRi$o~<$%@-0?OZWtToL%_58OKm2~|#W+l}4hge@cHM#wk6k-lSK&Jc#I51l#Y@_6z zl*xspQIvZTqNB$vvr}k{aHAKWR~0-7VT%j-@mXrqk;Ht*I;6t>V7@sucjJ3QINa)6 zMQCnzRV#1pbzEZ&WIm7ul2JzUx}^B*mppozkBWPAeYC-o9ta>d^`ZCet9yWSeKsYPv$Fld9}3R z1lQ&$9<%=okY)b)}=w+=V*4-Uwe|@~D9C%EQIxp$w}g z3|S&eSQlF&-1%@YN+OsqWZh!7Jph2i&j13FSv*Q0_O8&a1gz4M41un*QaxD*Mypjb^$%1A~FP{qQL7w{Q`40k3k3> z;)Q=z!;#=8E)jO?2D}+Ao*}xi@{lyB7xyzp2mM_FmOkJob=0I#a^$+1TJv6e%KMjK zz))RxbOwL|_O^!b;ln-HH&?A})SW^cfdDV4_`?Fv)Dn<=U+$1!bNqts<_%NWPVRe| zis)bjgDOe&R8HdZD{kS66-!A8UnA?%%TD{lb9%Pk1b8AX^9ewcm(qQy9d;4=CxjRu z0Ho4H@>#jmYHmG$ffDU2P8PhCDwD&saVz<$RTEt1bOkaAq2nRN@#bn`GGZ<-jjdO# zRFKz|qHn@=nG*mX?T_I5%LV*!u>fVl<8_slrwd%zr{&&4^qW?}3P}mQ{`>Nm3+!gD z0bJM^;{bzx7rMHX_3fsgQTnUqID@PcHsfd)iu;P2D-T{Ie4sqkTWm6EE^8Efns&X1 zsU4Qc3}mkdDWkllr|Fl-MC2;A`1*qLS7A>ERNu`GvONjeH;x2*cK2i60eE&cgVW^- zo}bL%m*2dDM+aN*=wM<`1DI0*N81DID?phrcF4PKfxV{YaxJyZMzdIh_hRVkLz`vZ#?Y6oxKVC^^+s}|7RZ_z;|yh z;M+Hs@chjMygt8%SLc;MV79P#T$>XC4PCWMOxV#2pQ72yC?nFdD867E*nr;!xP@zu z)wd~c<#oodX%RSEwIlO!E^Dsx-?rTr6d-}5W$FcH8D{dziEm6cIU$K@Ey_bF zjr2WU5KCDQLnw1oXi?GJdnLgm%%~IKM4(a@x0d->6Jo4i8TH*_O4-X~_~LJ(DcV5D zNSt#u7q9zpYXBb|jNxp#wjTG5@^77NF~M{bPErv7n5A;2PKCVjhQgb}MPs)%j%(&c zsqhc_y}BNI7u?+A*5z)K0(a+A4B_mfDqi0in8TL`)K|^?RQ@w2TRdSYB_;*N%952{ z^LWt)Tje1QdGxixt1wiRD8};8F<>fYcyX{k+=7eX;Ij653i|zC-B}Ywz=V-B27o`j zK8Hb}?C0^p1Rfu5!O!f80OK!U7xt$^dzHjE3pDrDP3P>%0(UZo#Z?48yQP=7!z%T!N4D-tc9M6_;bvcLbpl3r!ny4Rk{;Ni;^FgL>EdPs+21ZaiFgdm0 z`C#e`wAHK`x*7lDI24Cq{6a@x8-EGeS2$e~h15C3hAewp$yBTBJZ%?K4;~+k;hWRzDr8y;#_(qiiIVgCP{!UhLWBl)w5{2V z#qB6O{!+qJkyFn6jIo-6BCS|iCJh0~gqea-q6_>EPXKFd>9Dd=#k>+#L>W-qp(1oS zryh5zyhNcgqY->;C`jW)-uMd80B5>@KcCIu{OKD0^!glr`OOx5a5RO7`(t}O;NITY z`VHuH74*7YTbIK@Db!j%!{#z^CKIy8b9tyc29JCgG$_Gb3d*iGGhf?ekLNWM)lQ*t z+Nsxdlg2PJ9rfXp2YawR9>U|hJMj0P-h*ea&*0hdIlMlb+YQ2Ecm;MTZYFB;i~ z!$TkuY{EMt9b@@cL^P4A60*n3Vci||LsN97StBsW0Hnt$4mdN{+0&5g zRRLSQE=;$#;Am$8hdUD(4|-4(YtQLm{Vg(2DLDLTP~pSzj{`R#s3L9vu?0>;BUo2c+^M1nnB(EqRdG1GUcsxgnN|Mv zVhsmdLpYoc;cq|Ox1YcM@DQfsfsHIN8W{J2rNcVCc7~{CWK`vqSE5p=yEj-)(kO>< zxc%1=B|lgfnXR{Clc6Gr>+x#lx5=&D>>iSk*B zP>@@o`#JNZ@bZqYvuvmT9uT?tBN_M~4gM&o@1T0h1LX&p$&>ncr$HaSa z>pmRu=9l)f3Eio`M)3;upgP-MtO{5!S1=h3;qG_{M>YiDmgQUZDJXBNx`8p8S}}%n zipvcu|D>ZL-&^1vC$G`!B0#oCvfgr=^?C1aENA#BTt^6$*za3Rc@DfY0I0GA27tQm z7Uw58L=H>q@D~a@B~KEkMYr|LjOq!5d#N3qiRlgXicPZwMcP6v<>#MAo5w=&EiHyr z!n#gNnv|#!B^KGFehS2=;xI;t*qij>$KW)TVSo_2sIHRUd6S8G$wWwq26vq&5Zw3%>=`zsZ6~l_TiSL1lek zpc5`;XW!g2*S!wFScC3%;Jheow24=jbNKy>3;3^Jn+O79>nq^?{umzYkF7Ca)bG`z zQ+fBY6tH}Q6#9nO2!g4tw|3k=kA{;a>2=zBk)E%RtYE{2-=EZ!Mx*nQ?Kw?aSLlzb zG@Ak$1gyV@4#301sr3zVe}4*p^U+;+_WIn06a3-y3VuAB!O3g^C)Z0@YJfSEN|bRL zXnZ}`NCNh1o(5e=yRVL(`vizz=9CWK0(}tinx{kFu;wmL9nMD-kQAUT^W21rVFzrq z8?$>&TIcDa{P=ArxhN8YtIK<-L&5$0j`XsDTVqM9!SxoHiRLNqWA9 zgTo@ke^YJuUh?z|D=00=0c-xaaZ>j|zias@@!pw<4 z!q2jnA?^c_Bf?qd3v2Q#kV6vflrJ_MH7C`A&j6ijS1|I5lJl<%U z7;35zV2T~7H!C&LG1Ib&47d-w5qS5K|5`pK;$;iL=(qOLcB_YwTco_*HqHMd}V+ddWJ zQo>>Q+Kn&m0D%W7n~IEYpokIyI~cB3;c}JtRcZXAIu(F~GGhR+J|(KS$Yw|Re7S~K zug>B6*%G#gef#;v`@8Vh@9)CjJvoFyuLFnMBbbi5byM01=19|3k>%&ZiB^#s;TAl)vjfFPr6Bh7 z#VLIA;tYQM=hyJ-r?24;FHYg?Y-asHT(33shdt;I`_MDDI(l7DHZ)dI8gium)lMNJ z#>+^T!e1I!%Z?QU!<}kZ;FyUM7_9K@RY!Zk(B%YJKA#5<_qBtO8CQki=f}Na^ek6V zk^Xu4@+2SePCjX~v;jo*|IWRb)YloS|flinzo$J4Ub>f z<1Y*Zl}A`Z5I;U{J$Uqr;SU}^ceNqH7h5B2`@(Q4kamzu{vGd*3X9R^6qjG-Uv(}l zCk4Gye^gr(>hr7(X_hu4$=5)?=)*sSNxI z;CL4u8LkQXY%|?RUdM8EKEyZCe`4kR>C6ypQu0}iSbjZN?72x2<-bHiVoY7ar~fI6 z=tm*(*B9oCVYHuGPESl^PqG@OCO<*?v#=+1pQClf5z9R-m0B9P$e)!jmWj}4IwUt) zgjq>y;4jhe26ZNjXz52{kvauPm7ZpeBR%6Wd!#yWwAF_Xc8BnGv4(f^HS~K52AxjH zpdvf=?Yfu9&2UflbnXq-OiV13(IPU&Z3ZC7E3JUdlBXo1$OtzwGz!8Ce!5vN!ikmX zRZRG2WW!8A?5=MmaT`3drvgSj==VC%>vUjcq6eH_!Nqb3&rh%5i*Me*`2Ovc{eOHuhvSQDxHe8t zuUF;Zm{YVif_@&up|8gl&A&LFj!NaOsLdHyWAvbcy+9o` z`CaAZJ?JniST&92$y@n32-aoQ6IJ+vyv-Qo@2>L-HWk!u2sd}p$l&#=faPKhuv&v& zuin|9B80Zn(P*QhJBy66O`C=#! za;d%oz)cb>{xBJ111&fSZfqOEd#}8MhXSO(YTXWH>CCJ=N;v47XaIe9yf=i! zyK8uHxqz;TuiaPWv0Kir8%XA|?`5SDJ7?_ra<$>x=s1O#=E<^@stMXwjddLQ1#scm z@IrsGDX?aLMyV*yLHRlAICU14*K9bxDyYAyj0anR66cx6$DsOJuHYx6kz=&jo&rWd z=jHJ7NO^S{%iJ?J5dc&bJ-|eucy>C2KfF4F(X%%&QVRa+;jaDscOM)H2Ehr5WX}tU`F$qz$|=bK^vXYsX&*ozRq?3G|0Of8hXCO`d={q8-(I?j)Q* zsTO7m=XSkV!}59w zaJ>MSFReqjpWWYuor7)IJ=lgXzWxzjzrAqI0h*rGJH?V@h`2O2P{H76<`?NDWeAj0b-&6#d^vof|McG^gOJh z1+e5CSj{rIx|9t$B#YG~@`~Vjq!x}*rAv940-dB)p?p;~$GZXB9d_=x6_O7LX(7J| z+b*qDv(IBs{Q9F3WNRNIw_J*dXt?9x#pn8 zCoD02t9L@Ru1^J+jT3X{-<*aqkps-Z|Ch5REPgnJ*OyE9?RO{e_|6m_-`R$T2NQU2 ze*!y`0qkxKno)O(Boc&zQ@3<{g7qehheZEk=|&5yP2yrBwP`%Tz^XA)%8#aF4Fc<; z#&=`f+}j$!XYcJ>L(Rtz_TV3W@&LYna|z$Qy@KP@D>yd30RJrB}zMmTCdnq!>;b}xC=aSEch54887)5M|wZYdV zx8>1K5hXKlmE)_mU`;J1Rl`p4tCW6YEG#My?u&H+%3QxIG#m~4uzRotkB;ua`$yYw zXLk&Db|>)7@df<;PcPury9-z;R3$VgRwVl3QXoHx11rgM=$nW3(X(rnd{MFB@sFftoxjCR(+-+B#`eh0R8Cvb0n3ipq8U~4>p z^}0ZYG}morMR6T%x7fm8A|lAqwsPb`c5t|Hrg-Mn)o7OiO%xK>9oklhtNOJkT4cd!dVh@msOqd7&S-16eK~~?Y zOdt>l1j4`sF7Wx&V|3>d_x4ut@wHX_{No+`{Nr7GbZr&eYxRzR8Rmr{W>qRYT%4ao zcLcQYV;s~i=4ljr<}-8y@!~_4)}(p8hm1R$XY0WT4>;;ll;3N^{=a*B3zO*#li3^(pC9Yb{YP){<)eLk`T7*c@5Y$SCb*nU(do9)>2=WQwTp=W zwL&XeMIbgYcZ}%}^U#iv!T9kkL8luRR7A;Q5e5tRiL(zJ1!ooUb`1I!7<-1_0a2Hu z0I|b`x7&o5GinW4{SggD9>Iey;d%$6G zJbC(xm7$p_EF~>&vGiutI4R{&HVPTz+GF>qc2+w^W;4ttGc5JH*c4W$=xgK}CU%L^#mm*b3)YPIB@Zqf~frNr3sa`0a2m_G}_+ z44?(A@N8E=Mt^1$v%dwFLaoYJ^7>C2I59H(TF0G}Tvi8kUVDAfl!;8EzN^J&Ve`zf zwba2UyF(oeuvZ2HbZ!HvY#8YZ6sLU)Xp6>8kToujU<>&nhvKOmw2Yz8MAEPciRtkt zV=^XFERS#Q=Cg-ykhwqoS{HZRo8Xc2oVIZ}{G2f>y{1{smZjrw`n=m!W21|fEaC>F9gno89~SgZzVs}!mi%7Cj)|Nk~R~ig*;== zx$Pn3=cdu~WzhEeuPB3zn(HSOFV3eDVmeph+0ktaEVWzM+FZu=?LKa9F5}kLGVboI z;qLAl2K_e9FUI)%(OdlK(OcYqb%dk2#I(HD5|%8X4E*A248YHzm%)!BZvSaUhW_V%it;N00*))PW% z!deG&7J}U=7>(Yum?=k#^HhNf2W$K|1|DHwXYRP7*vl7XF8OU9ai^IaDU(rsOk}d! zo3posKf>Jt^)z0{D->wX=nU;@s*nh2N6?oVsbH1@E;CE6AH)Lv_Y6KiP&^Ot9x-5YKH=I-(>4Cv33)B?*U=*?xX%7px5_ zhg}HxZn4lP4l)y{I%nA>^aQ}5vxME%9{QcORw7gF!TA{@ zgr@`+l?;LO4=2g&CQ0v%Qp})Y;oHy2v%w-<5KM71Ik%VQTieZaP$ZfonD1Z=r+D{^ z%JH>vsp(Y%Z>gt87ZbcZ zy~M*;$7oGw_;70lA8oJV??2te&pzG7CpXuzwKmjaNZV`L8I{#hgL)@ZZ4ipsz-Q?a z4s_3+iNXtv#DJeUImUpE4fh5qK+7JVWdmK~$Kv;LM~JL$50KhvQo;WAHio#qwG7swk;fu%n_~OYv?ms!i{ila`aX7{4*$5*Dj71CWUb!=%BXrCNVdH475|p%Y zBQl7P9LW(m815kSSH?Z5;pt@~ic@;GE+(Au<3jWE(?)3sRo2b40M*ii5m+q2JfRoKNYt2nM%296>!P@4INpTXf6U_S@ z`$JG=BZ-JbM;j?IGcjpTQkB|_YXbK_7#HwFTaJyKxtUoz9GmMC972pnXj^UM72;Ooab)2 zj(^ie(zs_|8={1UX47P!v-WQ^3zZX7i!=g)e$U}XDe+iKINh;m+oQGE0-I1C_POju zSD?eISKdR4^n+*BxKFKT3*Y1G*F*j)pQ(t$Qr)R7u+(c;w*efEr#Ko<(Q6lm?wl(R zyN_%qFJ5mthvdHobh!fO`L;pE`J{!a&qa~)q!Z-HF<4BlY&5Lzf_xfBFU%l_XZ$0s z{`VUNf~rFI0Y z_VvBYErD`JKpo7YiajHXkJMiWdS zv}|mZ_p*y}W!Bit_DupNSQjNfXq`s4E#AHPou6&@Fy)+uIfCqx)Cw7OaT_QoeHm5X zK2rAi*m(U-li3xbm9|>xpBL9wVmj3;{pPy6jeZBKYkln8+`#VY5Vv<%aeH?SH+NQW zb9)8XwwCoa?zczh`0|^#_{|s3@tgb4@x{v{wAT6%y$(c2#iS5qfXero^0<&R$`*iJ zE8(;rFfSX}ZNAAxm0|5{&qKF^6*##WL}+s_k%UWW>AflKHi_c8$eoQPeE06Iz6Ai~ zZZq|K@f(0bStESKL&5fk`GN)qR}Cd6YyTy`vDCHWPX7h&hj)x8)-+o{GWLA>-V{q$ z*ff=7&Jw-%>BrdGL4-gJ6J|l+{F+$#ut2D0~TI8hd4W4b>&Md7n_ zhB0l+n#4xY;AzIhWGvCe6Haz)2F`!a)))(d=86J$W=#^6E@Xa0Yo#AB?*#QQh5?6V zNVs@=@}{DSt*eD$+9_`X&=UX~156Ij@#<`bwkU1`sG_ACJ|xEjaSw2i4<3_b@{?WO zaZm_aMTC>nCDuw)a0v#BhlNAclzcuTM{)MdVP?ieH@HyzaYv1z8iK!y85mSfMRk;Z zn>scHB->xiG*X1Xh5ap@-yFFD!^S6ARgZf%*xuf)%Bcx}UbkJb!O7(WZ%;0?^Diee z+*%*v*7_3u@jH9?$M0Ulr?=O!xjxXVGHtz8b5@+ylyFY)*4p1jIMV+j(q2J+4d{@Q z{BgnABS9hV?0d9b5kYJBkM)dGs>`4url|wN*NUtun});Td|BIc`U!`-^UWJudSd zG(rAKa0t~VFBXSAB5V0;#*<&8Rj;vrNgZNx<#4bd_$}^e*iYk9wP(TwW)tl5+n4^*7((Uw{7? z|MuBqbT)?QYz~Wh%qf6$wZg5#~sl!xgU<+58KI2y;0x{udcJu^mp8yc4AiK44EaO~ z#1UfbwVZKo?=UB7j+CeIrJpc4Xa&#w^ru;h7oDK8n9o8!uwTUnlm~!-!#VE8MiQ2i zqs|<$s5KhL()$%Uo07;UtP+dV!`J`5l8d!)AE(gZA3FeD2S<9oZ#dQC?QZi;`qrfwQQS|l*>EYJYxGYBiv&Gge$5{%lAtC!l><+>WF~sw3U~M3nB3Qe2iZ{I>6K83w-!!1t0FN;MUd>Zf`GRXLW#`wSiti z>{Qo<6}tkI6KYnjO>Ghg`8%aOBeoXFz7hEtaCHuOsX=y?l+dG$3FrKBCw&TmHk;{< z+I0ybu+s0KrMA_!+qk~Dtm6f|I=aB?qjS7DzQCK~OT2k^iGzy~4lhO+tNYvaZ34ht zZFf}Lblal3ic7^GXxUg%69ba`nkGxm_@sa~u)$+sVo&{dfsT;L{c=}N5kM&t7<*cj zyF0W4R*rqW(yzAl&t`hUQ?ZpgMz`8&WBb|~c9#0Mwz;HN_th%@t?gy(ZmeK$b6KC+ zR?ffj)kfn<5tQ=VH~97a7y9$$O?QK9Ke=!cwpG_38-d@Xaw0AJAX#9e!&82 zhQ2kUND1`%x$De0GgI9C-OjJrdw#|)>O(~timJi0sxruy6s2DO2IZUvglZ8+U+7w3%IzP;`n@mXUF@P zKb+y_`T)1q2l)Gsckr`McJYHdTi9MJR`%3Uo7rqutRkWaKG=#7qd8TBrUhqNL%xOA zq2b77pGU?;Ku+ecG38W{4dH8`tvw;pvh;Ux1VhohSg|)-`ISMvwmi@Vwo2*-0rh#l ze})(P=Xmhs01wpefaiz!^2HR#ms4DxjWL#UOd!$jchKo~(N2}o7e<^bEP2Z z9FcO!+@GGJi#1cr#lDDD28L%L8l@d9dGm}@m_f3(enCC0u{n$4a+_PODrQvv98G zCU{{8!#P<7XR`)VBR3oy_P>-cC>4!;Ju@SkLf5B+>lsrN8KlXW(?mwBa1RWh(Mlta zrW~8bO2@=Y!24WQkueT9SW(fs*x+$xDaA|SgU~oGpPR$pbLj25y?#qw9{@S;VAK+L zc`?Cn9v|ZA(FOkS_z)jGc#S*TEBdp$-pB4*Uk7+^Hfg4LcX}5sQmA*dyvC?nj?%pbX{K*bp zAD`px@de)MT>-$^Dz!DCi;%|(ZvW835;biIaI|9XczUOic{dpFX`eK>V1xw zjD0{pBMj3fL&@rrKrThCh|I})>LC|w(VT~^eS5aNpTVr~7eDHwZ#rhgbgmt*@>&p` zuitL#z@S^ZE7%@(^%?A)^&$4wm$A2@?qy%bwT)%$ZZ7F<+QWVa)5%m%6t>!JoL-Fe z=Zmji;m=>a#;^bK0)KvXjKj$sy^W<}(rE4~DaIU3r-b02_{}7kGlR!gD!g-#Oi4xTCz)2RGJwSn0L(nQDEVOc}+zQV`PJYFGzkiOkSZOFjM!DRqrh z4jovX8q(Fp+KMG%pY39Wy34;TU-??b%46R%92(i|tXcgw616%hGC5-_MPT9fa?Ni( zy0QMZ>&w5=$t|3a9|S6?BO3i*~5=M*u<`i5zuOt(VS<+He<6Rz}_7~omJ%;pF`(7aU4^J z*@@)Vl%TTH0t(SyVYB6!4PRIjETS}~=jy-m)`oT&>~C|Whwaq?KG<8;c_-5uCbJn{ z?4RMK+8OZd01uuY;xEsS@s}6JI6Aw;_+pIlOky+#T5W-Lr-hEXRiM=_;s&&fzHLL4 z(cNp~T{@T>{H&b-K8Z5um^1wNE;R(R>gUWIc9_O@utfDSW$;G%(sv$-dde%)inG(j zZym#7UR>Wdoy>}r{_#v3kzD}{mit&6bn%_tRebN(20ppFgHP}7;MUG6Zttw3+iB~M zsc<}*VltURbURu&DChsx;VJ(6A0FfX_}BY*`tB0XPA<_~AELjx3^|=K4Qb9!b*^1q7c54PbiX$`PnT2_Ka= zM0K=PoX!`w->B!J>Yt=J)*!`W$?+CSovn#NOe9;+B`2(MVfv^<@RcFTK|4jruYTyD z*yMl+{OH<1vc*V;o6g{8NM!g`1V4Bs6%Z<%ab;?|5(DxzxUX4W;QBI`c_f@JAqQ%_ zD)(KJ{;}USpka<+PEeJF5~IVF#v|+Oy2)lgKNUe`iq);9UJH9G>T04PUSCY{>U@HJ zN1(4>+R;WU_t^|%ZxBmwNJh|e)wwVJq?gw?&y)k|eu>f6AMZ}>K}7cOn_sx<-x$9| zVz`U;rL>YBVO1zKxy0(a>sOpa6u%bp| z(in-pbf|VkNPSP7@-0-b&93NT-s@o6ZsF}{hTlCs#LIUV_~X+9eEe_)x62&?Dn5Xk z5HK+UOn=$81{iZwR1N}MS_E_955qtgrhd3AiLZxlE=ALHbF zf|Jn%rz+kGrWgw=3`}uvpuWzp=B5 zjisKB;J>@Jgw6FKwl;>iwm!tQjU{ZY7oXK(S5FqH354;uT#;=RJ3YGH4h~e@h<8W$ z?fvKY?U&E-rziV(dO60q(z9y=v{YbG<^0c?Ya@8F)$Jv-rzJqt7PAMFWB9{$G7`Gp z(HhPG4Yht;GTV@@>a`VwNDuwVkHlt^^H^OakNyf_vN9OX35CTdLv+GZrL--OM8E)H&QQ5bOyOHq%frw!fN zOJO>Va@LrY^{T(g4GeKH?^8hfb&|=#+9#7mS8dP7_UQ)qA9L7A_oojwATy7=@2TbZ%E#NSNR;@7y&1x*+1r9Ay)DPK0G72gqMQO1BS2s0 zB?Ly}8TQ9BynK3yUyUZXq0V%!);j`z_~Dkm;z_SOx5`@sqzMvOoFlG+JqtTZHPvSR z(fdi%c%=G+Mj+O6IW_x=+v7qnS+&^xM#!uhwy5l$B36L86{76dRtp;|eQd1_arfG) z&aaLSsA%wqCucZ1ImegJj`Zir%M(0(b&4nZr?@;FVLY2*RNfe%aqf1|>UOj&?slOk z7esZvpoumgI=v3=p?C|1F}c8+By=RBZ(qoocCO>Z17^(>+wioG!PwU=nvAx1uSAH! zL(~%h^LeTJ)E=Ap9Mka>v(XIYJ$@Lrps&JR>vgcR+{e8e8~UoqPj7AEJGZv6yS;?n z?PYxopx3EQOMPTO9Uqy_^hZzRDBap_q1)+b=l_du-r&Fd>MQ*3|NbQ|x-DFE+vpE^ z7_9X4aRc>%y_GwmQA2{|4JJ~&OL{zHCD!%@cSP1p=#jI|kWQ-sQ_6hAD?>#d?lo1y?Etdtqqu72EwXaiz=E`Nhx8)6Q z)q4W2!i6H7#W)tuog8Lh^ALkIP--dfETufd3ZjWKxuU++Upo=@UWiUZ`dqDg=eZy< zQ`Jgvh1|zUlr2Egv&?8Z@F&Zg9_7i-E^2MGv(m%&uCL(b*%)}G!Vb3x;b5TK&YMdW z=a&N@9lhMAiwxQ#iEjz84vy5jNKqgEjO5_exZmu^roMKuX)B4|NFYN!s1|M|IX=Q4 z9HnV_SebZ)Tq>>u%#ovE>uhYfoE5F?Xyd{^%b98yfq`V6$I6$Eqfmk9)b(H;wcWpm zZm*4Tr;Rt`8Gifp2ro`X`0Uvc?mc{iJKM{+t8NWgSGNZA^>Knu%Q*Z+<#Ye|jNoV( zYoBch5DGWC&UQ7y9gb!}zNfKrf5Y1hm@OYdWGtgkx{oSxDXKb(YgMhuf%1yDl|c_3 zeH%a8$V<*EIqI<(R7poQ)-{_q$jg_H=aq>+3^Y-xy+J zRehGQwK~v2JGWPd*j`)0aL}p7;bc0kF)Jt3RbQxy9Ak$*e6o*6&kymthp+Mbhp+MA z#SzBCz79>@@3wS*&eY1kB#inTS|)WW|Eqp%^obF?VUcsVw3^X|yI+!<$GZRp7vsrX!+UEc1RoOvUYLQ~BAY|xGX9x>zP=z)|0OqX*XEHIptE4d5~ zIhja7FR-)H$M>(V;PaQKdfHi*D~m3l#HJlB3#Qy^nTrwyGA)NqT^yYVz~ot|6r8kp z$c4iv;c<%@H}#4+C7O-Ro}_fZ_(Vg@nSUlGgP&*{HH7Q-qratsA}G`IL3h&DG6hX| zC4^Ioo0Q{MFtg;AF#;+?3Zp~c>)ln`z1u*mr*{OX34j;RjxqguAJK>jIqcd5<4$Mi=`^lfRG`*wyK?;7Ca_=`vt@2>8?g81+kY*- zBzc37kMzjm?F-jnAjYtr{O}@_{Zo1{qU80K-4W&AYD~ghiI%P$|`KkvW7e}4H2?UeyKt3w?tL>;qJSGcK5b|PxrI{`>}P0Ux%4P4qu10{K#3Yd{hI&=}Ui~(irazhYlpm-Bb zvHDp$nVl*u;;uSVyGRt@s@o>iMAgUFH*sTY1?#JQ&3h_XvylUfIgN4qm&-4r+z=KK z@agV)PIi*QA%QCbnkG>@>1lk^7U%mEF>69@?&KSo`62xN0g0xhmZY1qjL zfaD76Vxub#PFjr$M@XZJ`I!=$IL+qScr>Vink;DhM+xUWY(>Pmh;qCP@+VVdF(W3! z7f%Z~{f(37JeEmqZ`~Mn@X_`XZm#vQHR$RUCl$a-nLce{F)fKVUk_`6XDDKNnjtJ0 z=8N+`hX_q}I;KGgna3ihdRs}=o4Uadw@}s1PXvj6O6l-BYTUlN!R*WyTBcLCO!w0W% zcV`86c9yZbKGYu*QQkOuW(5?mqd^n0IZA$C{$%!*CmX_2X^IBoEO2x;bEsql+<)Pe(XD8{^>g zQh!d%*Z~)6XTWrZcb5~q8%;2usEME=Cc&sAo@RwsSxIrpK(Qii?z5``8;I(ByzsU& zJN=;BQ(p~Rd+UA@-e1db54}!n7X_@(|yhSnGE%=yi0k+ugOHjv!4SWbtAg%iFsUF;8hP#T9n%7AWM;+Jp_Gt(&xv>77XT!=6$7yC4t692TMqJO%BWm) zv-rk3vyPcTTuA#`P;XNuMeug9ei!v0?%rTwt+h#DW7x&&psOR4Zw5t4c1*@uB}E3qK%t#*}i^DS$Pc~jt4K3jT7 z`0bVzFBaWsk1Lm;EOn@f6$j6-e7Iuc2_&Z?;d()S`|TiH-dVYNc)0aR>GyiV%Js1! zChlw*>_?fk(G~prej-U|WJ3f1 z(^oXWbdKD&Tx)F36y6K{q`o$#IG&+arOOp*l=i&3Q9uQS9QK#>c3zWaQr|s*%gdSm zJb8PfKQH&s@ao_k2k$O$aB_)n-kjjk<)pZUK z?Hob7U^apJW(oUmJ^sw!npca3X<3hBHn1N#!kv561>9Q~d}nE1omP+)PZth<@p7il z%FiU`lUW@!PdWYVmi}~=!6yV(yB%x}d$_x^j1P8Ju%QC@tu5*E{GZ(1z}m_H>nlS& z`PNg;e%1AJ4R1Ct`c8jjee|GM@h`%yx5^b=sV9JnSUSr2fBE(V|M%~|#sB#q5AgKh z6i*M&&|hED696XYpfrHQ~u8+dJSht6;V=+(E}#ZBRTr|dueto-}4)T{C&eRAyH z{Kw6(l)-&&#h*+FIUOmy9Y`@)O(MH{0MkbROiD%9bp%zoT{eVg&FDBt(M;t(VBb4J z5dpOWA>AM?#>PhIiOQLQ-DKZ(go|>T4tZF)RHeL<1QYr7W*)u|bLCQz!;9gMTqK0u zABke+SzKF0h3&P1Qb4apoS=my7e8@_ai%Qp@ ze!{)8#vNhgxzf#QV@@|yx4=|$1?sG_-e0Uu7!~cg)9M2H)_^wlrxL$=c8r%Nm-yq; zBiwuN8h3V9^sazib!))dKpV?yLO@zE0%WPgt7slV&}8&~`~4jybEb^6bwHDj&+ok8 z5!W3ib_uueny%8#Q5i~vJSnd6svQ`8qriL~7~I7@_7Yun#=qae^{r)nCjHj-3eGMj z<B&!Obki@3trcUUo{jotAR!TUc7| zVM(p#cUxHMw9!%VG}>)_E_%JZqHlfJ!}72=*T1>k$JTNmgML?kwpRQ4NR4v(+wG!8 zb(Y_5ih#YF2Gx-RvxQsjKG2sow9Lp7c)5S7Kc78(h0nfvjW3=Z;;HJBb{l;a)U($q zZXKwud-O=>@R#>I!wxZ2&L3Kd!Go}yB`w&4B2In>yl)4D+sr64hSt*rrMQL%vMN3) z!qP9W2(mb*k>H z#0gsOxy_eB9;&_^0Z!>&Ae@<`<}?UrBkTsjzWM8!Mp9dIxoDD!P7G_zRUaW` z=su-|O!d^aBm9M?pj|cIL3xsVbbGjdjhCYEYC3&NIFS_Hj^7S`L@_BGNL|msJ%xDz7z=VSe>g|HS#7 zK!QBmBk9*UZOP2X8oL2`(^9nlZTGXeCd%5v4_WO9XsL-ewIg6Gu|JV``RpBj_0@|8b56aQs3~_=mG{wi+bta&ZfV%XO>2jMNu%); zqsg@RJDyf6%x@3Rv441h^NWezhW_ICLVxy8FR(wk)JF#7RF*ph<~qpWNLCBpb;kv3GqOFfjsL$T= z0M|B#*j+6qzSK7V{;-D|J1e-kvx@5*OZwC8w$bZ#s@NG$zoK5*pOt5+4S%;hhu^IF zSEc7gT!vPwttTGJjN1AC&7Ys)U;dv*_?O>4!l={6xZ6R0&_REt4>_9^6999wo6C;C zLt7~nTlr(kHy5O{;vNo^Kwg%a>gSA`5F)|^RQ21Xm%-b4(H&$?%!PW> zGbx5VJ3az6DC=L48&@j@@VVy8IaWJuZ1uXhv%8K@@9yf`0L)D!CirJ6(XvwdwI+e& ziNlCx*x*`3A0jtC=-TTNQHwQrL@;DS+aayBWHevC#*FkwbY-2cL3sa?3muhxZZ($e z&t@(3do#`^DNc0XcPfCUPtA`6wHM&kvK&(~sF!dqSdXEmo%CNzgfF7_ht5f=L@aTo zxYz`2z1|B>SfrVQ$|=03De6R0LRqFD=F^=%la^nrp{w6^8>qVxeRs8oAKhHVgSY4C zwTfe-GwIH52mHqw4bF3a<{`5Y3vp%O_D3KweY5D`C&3e5ma~I^qhI|c-UiY_BLKxI zz>32LwBWYegQ9K1ijp38*=Ce)doI#lL75yN88V8NdW-{3J(4D>_*{>_UK=__K))+6 zYYTmi;P0LkF#RSd>9D$S36qjluVN~2Yp#AdF z!Bx8mruuIY?5_A-1|?Jued$2Ux*;WwMd(;_U1f1=K@mt#IWPUTz@WV1QmyD0@d{c+ z9E^4g!(JQ1UP~WGTkUuCReSwzN55B2{n}Dbuk@>30L%Rj+G-a-w~dvh9#)rnSm}3k zYz1AfcJybu4S>;g^)-TKJhWQE?-bIC(0SV}9lul2?eJ`bubv*@>t~1f<2SGI`PXmo z=-?D`si)hb^R}RAU#$A)ULQxN9PuPPghT$JV1`Z!Wp^}kPnrm2Rw>EEHIfE<>B^=E znsmFucQG67YNkQlh7)D*KUoI<+r74d?_FQV_3afMTvFXQGMmlnNxDoq7IVCXM?>z| z8&9p6J?9w&6p{HeMbQ*ek}xP1>a4JQE$66l;^J@Xd6z9MgN4&y3AN_JAZBHVrZ*eC zu2m{xoNx48RY8;Ki@IzDHER-uz$5X#6M0uBa@r5vlxf}!U?O8hTsHbEVFLM={Zhq< zW<>L`#YD~c_Ui8f_tJxC4fjNYwJ$`EPRY`kSLLjcOGja)@!)bf-y6gTXd;LBnY}om z;B`jD)!D{!@b0bl&~2~cmyeFnZ;3Lpv;kMn05Wj7+a)-|B7B=jn*C!ln3OOvL8WLy zWYzAq*EZt9m5wwh8&7HRx3Kc$I7C_aMidGK&mC$mgFCnr!_bzD{54<1IP%~7w}$wn zl`)R8%opnjDI$EEN)*0H|I?32VLN}qer!75x^u+3&P?wJP1%b~lFAitVg)+RQBkHXfqd31S7F^4mZJD&h%L zD+bEPNfgc(1(5-=SUr?uR`PMhpsqd=p<2x3FLMsw9ysnTAX3&l1nOx1sGL=G2fgSP zjl7~8@ zZ_5g*Cld<4lDf8>&N&O6W5L##lD0iJ*o>KK$CfbfQuas^8+%7%#PMVm3!UB17RS?- zB@WI^xj?ko`pu!U&^%T||DWhxEnMuuP}J)F>UQjaf8!) z9x%PJl<4-$U>Vz3#Cg4$gMVm9W^_ZOSvksugy-`S1=NnMGcOFfL8pbSr7mu+_i=A~ zh@P?rcZK7RNbx3^bt zdwaRq5wJR_ZVfPJu%(fQ!aoadW6jeplmn4QIxQon{HY?58uQ;rCe{PKubC`Z0rM>& zcEO77ahZ4zhr{YDuESGKI+%0l)-{lTeXQPXr#efoCJb~CK(%eSBe1m8#p+5A*SD9e zqXfn3e|bb;CJQHjKF4@E$7D9gXg0&R+?HGfo-B8URkRZpjwr4tRFeSZ(Xwv4tv~%v zOY4|Uxhnu=^n9JCqqh0CFzmMVD!y9fFLnmBtCdj|<$pGv6>Gy4*+l)v+xjX>r{5sv zxcb8S?kNDh%Rx_Ow47@IpT9l9^ZgTi{>>Zw>Csz!`Ro7>4o>k7&_Vv%y>_+3bZ#H7 zh_MQ<#NsI<2G#pWeiKX#4L?!3>}s_#&zPak+LQ02>MJH`uX20(-_`;qMu^fhYK+|2 zUd4|;xq)k2tHssI)kKmriyT+Z2}PAOdFJ?MMrPoCnd2>9>&R>`3R<>nqZUwAFSr&Gofd0CTa>9BCougpJsIbb^}|0 zL=-6XoT`AD$mE+v!ZjbW1ylu{QCll-t`G3>_7eVbaDkU+lj2Nrw~paNR~o{PHq1=E zuwbY&`;o?=w(BJIE{12>xL$3aTCe@9z5#m8oGBax^ZoYH?Sf!N4qA}wP6PiieayLISHU9 z0Mu1t{We;y9xg{SoQ`LB`Q#A4diVynHio#pF~l!EEn)QtebikD(uAoX^Vf0~$SG)puEV%-;o&aFl;t#xds#M(><${vYabz*hRgScT&=?%(b~TQ9 z;6)Z+gj%wy*v0zV+5kVfy@8{##QirH)iD55$X8yr85pQn>L8+Jti};<-l_zd-IVI% zl>E&qp3zQ95PGYT@ok;4Nxd{7VmbVJ(~%0|weaF%ieG>$!cOxuyQY40}5NsNK>og&V3s+jUFFQKZ*RoNV-NP^ z?F06Zvy8;xES5;FsF82%W^&VW92va($Kx%C2?I~r3clW4t`pX`;GTIV(MGdv5%ORv z#V%yk57*ZQ`04Ep+<$Yfw}cim?4mRPE!qe~)>6IaSp!HA*(EWqtUOjV;YvM`pBPs4 zN&^Rg!pq9#&oujd$=u$-qHE2_hp`vxaaC7bbAUU%?EZIUM2#;sh~l?RxH`nUpPA}T z50L9b*iT&p!_Fs22;QTJjTX*TbH&}jm`>jtzsC0h3AirDFcO41uH-e%&`4Nxo|kvH z=~dot3!>N2+nv>pfa8lPo*f-xK6MM`9=%Y6m6KrlQ<2yGua9ag- z-B`kOI@J>ZhChRLQ1V3h?`aAIra^WKLwft5WONmc;P@QHz`{u9%!y)O_qGV9y#r$T z_EppXX@n^!52)PqaLUyy0kra)2<)E*#cg%fxE#gc{^P*vFmlHmY8}G5CTgvp$8aX! zaSuJ^B-jF0MvB(HbHi57D?KtvrhI0n)kj3A!5hJk?T_3hRDPt4hWA{9cU7(gn3(#D{Td)outS?}ZeN*6N$Tu$ctC~3>;#yGC_TY@N7M-_TY zlBE+ZWMDP`QaLg?$vqQp*W>v(G_G9rOn%#_b^*k=i-H)clYq+`FkbA^0S8=ajQT*B z{C-S58&ZXK#+7^=E}W4}4C^b5%Ur?g{v_)Y7S9=HYA)*?0qVR?uZ_#Lz>CWXe*NSC zPmeEf@5uq~JzT@>&1Kx)TGqP(cGZpmbq?DCs#j~P;ORLGollhkW(r_%k64Nr)#J632u^%LK8Yt&LdPn9Z z+(6!SofhrOdRtatPBZQtf6wBzq&dNkC~v~p6GWBXGFLF7aK6;71S$@WihJ<*)e#=Q zI>r}|_i_L60ls>5jIWN*@lF7P%_RtR3Igv9nbZVOf(eKc3#F`W`2#?rjPK-dE|<>FVZo!xkhIXnnm(& zIx28|-*ItI^~SJ+jioN`Y^Vu<9u7uR9E@iA8mCUDRiAHkY5~J=gr*4yBlpMLM+K_Nywj(Kt1E1MntEzUu8T>p9&JtWC5;Y_X70O8fYX!6enmdtC* zSHnYf{|mP`;xgYK57KN=Ci=?;Z`0Y%DdW8qHqrY{?SNHT-)g9 z4oRKp(bkxA@BB8Xv-Y?#fGNXQ?OBY5N3qCN4Sj4kRAQjWjgAg9vMaz>(Fyd=lOlf6>7k zj}=FI!#fQ>{@Ag4>MbwD7MbZ>pZ)*4@87|Vo%Q;i{o&+Pawn~iQz|Eu%NKXvw=i=` zFEs8+f?HE^f)Mb|@CYTAD|LCyWBlDj-)90|ta#b}bbr0ChS2<@Q$WQBf-@X(waDLhZO7=tvd#Uoxr-V3u| z0ay&T?6On=9;f8l=Sz0tYqa#TN&;>Y2R{QLJcS3_S!uMh z$LYl8^Rfq%7+#wwmB1xlR@CLgCn*^5=lr{%gR&DVJ6RK|q*J*nsn#h~6nHrlI!3^_ z-NNh3DSrFp0M8H4@rS1exc8S=xV^K2J3Fh`TOVLgT_dQjJFDs~rWxjQl=r;*USXZj z|4EJ|`fJ$oir+#bG}U(u#3Da2zUYz2K#q>j28?6Iq2rWr)&~7M#fx;6uH9o>5Ts0_ z`pe-#+bj!vTu}QgNE3w{wPvM09*rdI7Fh?Wk}i9y2`_!$ddZ|O_s{gTeqTL5#MjS{ zaR13ZzI?im7w<07UK!{s*QC0ALtpJTi{B*0Bwi24VMV!;#6wiNJOIFaZzK!ta<;M# z3d-osKPk!MxR{H!E5+D#I1Zm|Ny`D@IRd`JnOUjT;9Kv&J;|xVv zk16YEo)uy(W;8u$=CJHlG@kj%*qh1nbbanyT550*0UUNo|v zM$T^v1S=mk${}L)YtN*q6fzM#o~Y8+;4)|BWsxKk{N~IAGIVohEG;1xnJx7V2D^3D zP!ys4bmd#Wd_=ZV$fE#Sy?tN-ddxW8wovE>iF0Jl6F7BLG699j6dmYbD z#`*|=y2hzmkfE9=e0X^cjnDrIZsb{_xz6hFPlcn5D?~GiVQExbkq8L~%NU+^iv-y} zd=k|e-i#8CgC3b1O$r3lNGqf8WFlvUMq;1TFcDtQRlai!$ohre?(DZFsJn?uH!;In7D-{=q~R;NJs0rF$C5B^Wr+Tw%V>-#t0aXr+BS)1RR~~ zv!>Tp`?$V3(D4C&@#!`E_@iy?ZY&imqAjx{poqS%&q&*9i(84}n#b~?i2TY)krKlD zk?L1YCslkAX5d)HSMSj(Js`sQA-v}?IH8l^WQd*Jp?(I8h*}vrYR1(}(g(1JUd|;T zQO>qR>a*STGqd8a_*?PytAkVg;o)oi`)5z^?|*oL{fjXUF30Gt^wD1#RB-|H4Fu+_ zzjJ#AZw6ENSA8Dk3txLA>{v?N`+iJHVP7GUqEPzsjvGG?$44yz=SPAqV#A>ZBS2zz zRYN+bd>Ly)s;f6AQ!EerxUt^H-Muw@baPV!m=^(GG!NE&*lYYJiWZ=h zv-dNwl`XJ5N_JtwQ%_Nac$t##HE>4RI`zxqe0CY-Tp5w-zV-I7r*{NQ+bz7E%<;Qt z$9Qov#^=wD@T&)J^sNE6wpVm~fIWRgpgdYoj=Q9GI}@Dxa_yG=M*ELg@TYiYAtcU^-yrv?O6a6J0DKZu!E9|nt_m$T{0 zK7k}H7z__J0n7=QM#vEF0%gJVM+SfU2lzRLcIaRWikw~v-K(4_84~*n-H=WT=|5u2 zd{D1L2cmy$c~S)(VcKUGHwJSV<-fQ!pokGL8cnf3p5f)QBTT+}i|ea>+*lppXCLq4 zXP@lhM;~rub9JZ#3#!;3vfN8OFYjVk)d&+66tqGNv9uIpR7_efaEu(mkL2U}ea;eL zW@>V6tk2$YKz=yoniwfLVe0X3f#Qn^ny%I@Bh-ive`w3GrY<=EAiou$Dlpl zBtWax)+_!dDd+#;lYRW#?;hj7{q8ZI9G&Co@i|&cJ+znm=ngso zb!!u)Oc0TC1m^B9<~c#;`n@ar>>twoLNZ=*tXSV|eO}!_5x~ur2V4e%7kve7R~rQ^ z!u*-~KC~_DL^)I0z={b}b>F1gX>~cl&5b4e?E5!yYj3UEfn|1HwSpNl;e5@qGC6`) zg2HRp|L2JtST(xU1T^J`kj=>KED_or`BEe4n%~e&Q zj=*4j2y}|r0IG-8Bv*iE<1Wm#(HdF})PRXGrISA{{hNv;-#VieB#oS1XIwjH2)8JH zR2{Jv3$kVPTh3Qt=tpGGG5_Xs%qDYm+bs;22e^H013&oqnm&f5c36qh@%L|HiOS3D z4$Nn6YI-LQnwhC;n0&GY^CyN7Q3gtk!6tZRE3@|tlFog#Nr7NTe6FeE5}(1%Pq7ZN z##v6EBY!3;RQwkYle z7z~fi#77?8Z@Ec?j8`?4o^rRxcc84QW((_m#E`JZzb~W1FR-Bo==(Dn&RMi3w=CEh zgWwc-iJU}<$T%vOGaKV|6XPS*SC!fA&8W-Ao5*9cvw)8lSFr9ec14k3zwn9m#-~fA zW89b^raom{_PV0j5g=L^O{UnN%n4{Ca-e-A3Z<9e|-KF|Kszgc<}NF4__Vw{WdV@ zpf~7Zurjn({ENRuJuw;Ru7HO|a;l+uWD%w!vY!Qgi%X^88TeL+oIw1L`oQmC>Y{J2 z!#KS{l(M)w>wq6+Cvob}O||_K0`v5nT_l7Ou`1#tN==e#a?a+M&LxKJHrAFqxN~hC zKm7QbUR*J8bL^ulRbsl8tJTspOpcJ3dDy(Jb|(Yhmwfi{pv*F>yPVg~Fo;p-3V5<+ zY|Y7e{-KKx+0F*l(*@&(1GuPeLI86Blld4OJl&(M-0o4J`aCAsWvj zsE3(_ndV6UUEK9_ZA&R}eXWnby|a!-YV}_^|3YA@o&Q)vtfz^lP`Knp{miO9znCKo zX$q0uL+r(s-Vc9NFg7n;zDaUqJR#X5zD~$K;aC=2f!rkh?@0;Crm$IDkP^yRO(Ex+ zJXsi}GWkpqHFmjVu%X`hbpLPnPx1KR498NUt5*Em#TM*V8HwGT_b(6-?l4QS z0Ye+F!A#x|IIUWZ%&_UkluT@y2yZfQP#I=)F;0w7>JY4%8$*L_e z`0@A741V=s0sp#5sw}lQU9tkM)P#uSW2J*L*ca)gir)m?u8@v`_)gSp&Sr`lM>PSk z((m9mkB>3zv~^dhnQNuPTGq-y`lxnB@7jvXM=!dt;X8b&qRIOyzObE`5{*?$laq2) z$bPHQ$QuPgE~Zde;KEVwF7_vW>1G_M#-(2OR{$QOY`oknqP)CclWB zOsQuL6EPO6(aUvWV2^o9sw(P^Bl4*4d%fS%!1koLq(y%=IFCqI!C2b=1Y;nx9vOUb z3e@7>HxU`Z8)0mZj81)5*m%HNXi$#EaoO%Zti*sUw*3n;>1^reJDF2G#zvyQwz_v#jKDl`ZMa)+WLt&a$* zCVMp|&nmmXe?Y%pt(!+-Ys_aII=?SqK@owC3j=bU{JhiAXx@JnI9 znq~~Wl5nLzND{GPsI6FJ4RMAJxP$0-+U)0c*GVUDauJz(?aNU=FE=+?K8%9(3lfZK zezHdZg4|q3G@i+DbAn?ww&O)w*gVgj|xU*4A09-tMhll$Y=(LMqOEYPBP?R(N zv_Zr+BM>@affOa_iB}tsI){Ki*+EWRB5vj)w+9n?~N`omrk@fxJ#(E!re|Jsa8UFicCum7jXMO8>*=k(iP6Z;~@3uXd>i7&v6u^n)OH@VX38wv- zpAO+EMtzT>v`HJY`8Wp%4IqyjvkH(|LPL_k!|8;Kh6Y1jy1W@FBFLw3xyTy}Q3R?- zl8`1bVlnRsOGz5|b5vIVs!0JA1W@e?QYPw5wD9zFg!9LTcz!a%XWt&`8v|5~fW3_& z_ST2kTJ2+dt*?!WPP}nwKkHg)=FtTLeP%{3(JkAKTjue@dsJ9ITYE<@m~e zP2n0j6K-#OajNwIr<8>a()QyCXlx=J^1>M)>=`Zuha=l-Pr`RD>ebJB^;(!ud7Z1e z8~yFOGaSCV#Pj`Ayf`?+H!qLz=;bkgnHZbb3* z8%MXiXxFstNZMCUMp|ExS}}@Wq#mkXF3B7qE9PlJDV-#Z)av0NczvZ&SvNXzV<-!vm1H=tO7wuQaFD zAZ6B5WusOs8$%1qHN}ptCxJk54xd#2b&}q>nMS;o!QiE#Zj7Xx>wOHn>-g;1iJrY~ zquBZ{?UiI|U{a2aw2gY{iGE*=`{lzkNmUl78n43xp%+rt5sp3>i(Eo*!$MT;Ngq=o zRy?Sn{Mzxn=UOCZZs%y22^ZokF zv}j>EontnWcyn-$hfntL+Xt`o=j+$+@XebOOxpspwm?rESy>$v_opkaQhYY^rpbH} z&lr@#`bXNHmPacah%J6Nr%6~}s+|;)&TI0eXlYXHOmR@E0sD#I3zLC^movyfd3R|9 zg|~A)-tIibS>Hxf+5}vz7!Ylz=I0b2s|f(b$LAyLeXxz6e&;&wTwBBPu!qTXswV)< z4i{(9En^r*rDDzszNb!-_H3#@Q~nbr3g1IYfyt5M3;7400?%nqrXQPyLV72FtoV|y zZxJkFl;VVGZ2BOMLs*)&Z%pb`Mw$q-vpCSO$THzzh**VLDK%5#*OL;KGWZ(Uh1rQH zbj5u^e?8MDzAyK^)hpq-aDsYWr>sN49)A9c5M5P%5nnJBIlX90BP-=HU4R&8RyEudqF7ppIkjDUB@jtCW!V z?~BQa^T09*KGR}Z>}6(+X&flF$f`Z*+`HRPQ|cv{K>I7Fphq1<>vv|maLsAuIG+{g z`PFgiUay6AyNlKwdRNflY=*xaoZ@gY#h0&+acg@8x3`yZb8`tdH<$I!fNL8=^t){x z^r{*&(BGIr+D`E6i?o~!{aya@Z#tkFOJXg zZaznQwWn8DRkf{7t8)0~rLJRFMwyj&HxFHwE%5*2)Ck+87ew>MRk$yz1#{=lqA_UP zn+EJ71A?<(VmL)`bmnx*qbF0$(UKCqme4`}e*S|yxV5`x1xz(GbtxfCjF4dBDn8C) z&tr0t<#}$VtU;mjb1-gt_) zW)O$PvVLeT7x#0T7@A$D`{ps41PZe3O{Fnczi-m-Vt}4vyJ6@ z!eQ~0ArsTJUW2O95EC%6oCGMpG+y{H9Teot;5@IrF1_O?`9ppz^9Ne!YR0h{`L*Jy zcca+wd4nR9NPau1I$32}HOuW(GY)OM1nLbszN2LDttX|eTQ{hDjG7y+$L88ZYpxSZg{*(JVw^-g(l*jVoCiNl}X*~CxpZsA8C zZlT-W#@6Zp%Y$BxpSt>LKF6#)c2FZDok@TcSws#wa-AE&t^DQoPG-FhFGLXYWjG=o zn}EZQ8ZWW?Z3zTO1As2CxAe<$YqTitJa4z_34n{q3}>S$zIkzkKYjHEzkBdne_oxQ z`J_H-m%w~($5-(LeGpj9AHNwXPrW$cdB4_`2j-cSj3h|x z;0l~Vc>N+c#<2}2DztzIsy$$^02X~5iDOPaQq#W^xD?n@!v}`7ai?W2&Un>y?Xk^14 zRjPX6>03Xyu$~7o8|?b&8X6!HdmqbQTLN+C-N~Mfr!y|CF&y3wCjtuP`$;)(xm!=- zu)=Jd{E4blbksISH$&uZS})P_3QVa4P@bqhcBw3R-4o_YwK|u(WcXEpDIcl^wwA;T z3VX7R-e_v>f+VC7S;UgIHk25QBz&5lbrMlHjld_^TUcGJjFMX$1N_5B8#o+I@aI=2 zT7cK9|9pIdui7l1chE(|^ z=s!buQEcaz#Ur)Vza_em%0W|3eY=g5*&JWKImN;GL{AL-k1t;rI|8av_hCBCe{58JhJT}U$8;HsUgTb$Pu3`n5H&l z1SwY+^Y&{a6+;Y*RC|Md@WfvZ4oQ`r`z8iRlt*30Q_MyaTwhzl?VFppdu;<7D+4Vr zr{%2_qTw2CMYbGbbMo6s@!I*`PMm+|AW@>4>-fNcj0vE8?=E=5sSge>e@jV5m3hZ> z(r{|y+|NSGH7;IIb8|3O!Z`g2CA&Zhv5y1n1c!qxB(t!|nVNi`#&kU~7Da@g51~rY z+Q-kGYqZAj<`GQMJJG%*{18892(WZbBxZ)vUGNod1;I)%Pq?}nJbjYKVjXz&3}3tq z|IoZ^SvuqP#z04}{qxHc9c5F%ngH+&Zhwg63@87$jOMbR%kYs8z&h)kr8OfnPE>Gl z&fkck8AJC2!{RH>ddg=@AAhkf0D{tbkQ~dV3S!xxI<+-rT@)zl&k3<4gd^@)m(vdF;U8FDyKK zYT1}`p&x2KplL-gY?v=Ac|76kVOv2(L1fgQ(DBi7zJl}d^~8m+3lrB&SL3U6@CAw; zBgz@7SNer^ex@^t!;=x7zJ7<#zkZEBee)XkpB>`MXNNc)&-AA?=%795qN^qVmU?qKHs#4$H3a4VXGC9*TOaHjY2oPGF@=9- zIkUcqvg`@6%HUmkd^q%S#;ZryN}V|z+)&??9KrODBjeTCf5q?9DP|X!*t@xjpWM5S z53X-uV|A#n1T4<}n-inVT&|HQvEWO!Xku1KBMd~5U7COFUAf7=&ccpEqfrU6iL!p<8aQ!Nn1aTV+&kw; zW$`oEn{8r4Gkyt%47-;7kr+SJOMga);052MHtq63hk9M65QwHwZsfxXF1Ik(;8l}< zbp|=F>7W*Bq3&NFbTH_)(JJ|8e>%ft{}iuBQ+)C29d3N}1~*lFfb}7+uMe@Y+Q;VV z09z}4{b@Olqalc_mNANFK`c27;kviKy#+&1Fygk0atHX1=K0L<@71e+L z6fcj?@bdT^hZkdvyB&yj8^eKwP<^j%pAaQ~m3&mwJSi0d8YcVS$rw`Je$AWjG&onv z)aJ4M+s;JywdDYi?MWyauNo>hX-aq*D!verEe+BwNcNP;BbY1vnC`7{G<5~aCf2e% z4H_LVepZ)<<|^=bzlgojv>Pe;(XC9P9Bf2|f*Ka>NDAFHv<$!7uT! z$3zls+j->R`^?DlgY<9-(a7bk`dxF2D^&?sWw5g*#TNDeX7sd9oV|L5L~@D;cv12N za5J-++#NVuYHFdv*Ke56`9+9$4mCn-`OXR@QLFldKZ@chdqU+3o<<{(7D72wI4u4m z{yGaOrXLpK`h?=J*hW%CocwOTlV_j=w?dak5k435CPd49U2d&ahL@TESQ)hOftmog zwt_#tJj3IoF~p#aey@eu9Ij&H=+2!*td9z^2ny>T=d7}mnvWlEVWd?s^byr=LmW6d8hp7q8YubloBhXULzq;zGJm-IKImL_9 z5$3N>FrUq_+-+l}+s3EYR`H!{YxwBqI_}+E$0yg<_09mb>&V?1P+WniCMC_z0BN12 zl@+G0FzG3DM{02#ce2|5wFaHR6Xp1lBjXe&_`JUoTe^E{a z^=r54{+gG4bTJ;|;N1o8KR&=0kN5G#xBIyN?EzjNo#{z|Nn2p5c99Ia=nZ=MdbFi> zOFL0U2g$kH*s7mJXg8!>LFx>CHvRl}u$Q121Q>jB>gDXwkO2sOuIeKctTS2W+il@M zSj3w2^+jkf)$K4-D1wCG+7_goa>22<9(bvL^E!XhWbUTKMSN2L6|y-qqXx z>udSEt^YQB?)CwWvGX4114xvQ+q;yt%o!xsxUux|Rh-mxKNI#BytYIfS6w=Hi|!(W zhN_=haficpL?hyq>@ox)RD83yndC2!eXUJQDFd z4(((lLyWU+d#8lM*~(;l7D+xH0l=oiSeE}XtPurAu<{ieD6M}hq38Dv%{G~^W3@IA z($XrI+fGT3zN)phP$@H-JDcxp4Din%ZQ^(|!=GQD>379STtg}}?OwO3^%Kkf$yxxg zpGW$Slm9jjf-R9Dj3Wvr1e?Op`bFF>RS(C6wZP&LGqPyn8j)vbAyjTe4S1C$qC7Wx zE*Uv%;S;-Uk3A#oWe68mB$YcaG5jL^m#iV29$oe16SIZKUtLGojj|kw#t5FnT*p>; ziyaj!KyA|N74oDb1g0&4=jUUby*R?7cNh5V$sw+Cp<-R8+!g}QE4Ho+4)$=qc3RFNxO0@^tvMinI%2>&jDt!vEN=7ph~ ztae}(__azRwu%UT+TpB@iV0veo?$eeR4e`aCzm*QcZpX=XLx<6R{GC%B>(->5%w>~ zxNHlwR|k6Hprdzt2)$bbITgUGO=)t zSgs89K(Gb*bIj5xE*^hTCTU3hEX~g3N|Yu0CWoqtF-_@so8CUoCclbLA%N+4is@*E z8*4+{xw(Z8Z){?7by%MLpB3Xj!hQ~>hWS~$dNIqMgyI_#Q8;xyacP;UpBGSz9K^Uq z5xymx?Z2e#7^)(FM~qEa$1rQw;28eos|5U5ED!qu+k4qIKV>ix9FrQhnRaT2dreHR z(eJHIgSCl3SXS&5hVV>`y!sh13#HJsan)W_;Bb6h@h`uEhS{u?PP%ftDw|%AiTSabc-;YkB(4<^apRmUjNz<+e{Jcz5~DztJ72cN7He z^nSZ^<7d5m`qHFyja;X||I6H)C`*zf2V#!MJM-N~-FH>r({pi1aY!x66}iSWnfR~z z1xeJ5mfW4?F|(tYp04icqpIt8_3E8@MnDEcAi@E-1BiUpWT4g2i^;>jG%_7)#oF^eeKp`KVU?(NV6gt>T#@P5+X7icMA&It!v0ICIk@59VHOW=(4++nK8l8HP+% zvF38+(j%{yHdiys>YRn1_xjAT!neA&+@MqS^K7wzle0N|_RX>0>HovGC-C{R6ZrP% z6rQ~~g;_3PUP#CW&Ds9ms8_|65jtWzRJ;D=hQG9NX6HwMe^k>tJU{SyhwBsWTeq8B zgiuD|DS9^khzoiI!wJR0LNT;HvPqC%?T0ONXT?G%clUmIx|_j-6?AX%lOPjRsnVwlBtu02sG0H4)l8oixg?*>;mQt<_mjaN+gr)soTvqYMO)&4%lNlddh^iJ%vKm4`5m33^ zme&HRUATw)WBAdnO?Y{+gqN2K7<4oJDVmr}O?3t`x{4`Iae*-nsQcgzeTz#uc;)&G2rI|HSJaH zlLDYN5)_CLmi*3*%5AUDbuxulCo_0{d;!moFX8xd4#yV@xX5#m<34m{ z6;vE9heg=3upwPkR(P=bVC<0UQY8~{%tr(9$7lM zLxqr7i)=|?j2z_`U>||gwMq30?`JfXS5X!^?;sQK;N~{``48{Ho$FgQpV0<12za#x zDsqF*bNG2=$dj;A5LWmIMh`atd=SGG*0|r?w;a4$_sXvGHx8VfYq3M~<-M zm=K<8%ZoN1l6V6y`P4UhyW2PvqE0&_coH4}oM|K3HWEyH^u|Q^0#8)C(bgj8ST0=v zf+h)+&A+$YMWe}QesK8v+AOqua;XPUr*>33!KsX9)m_>%K zdlAlfyYT2}|5QB;d@EXR2m$9FQBf{z>I|<6=%r!-C7GI+ui0s|K3u3J__rP zzjI9pnC2>1!xNNFj)M3#^QEbMzRY2n7jSYuhvUh!Wnt+Cd)P0)JPjBbO^%qV+ORYmTIaE{}gW*}U~Twu9*+ zWHWy9mI?|UIa~rf$?5n0EC`kf2U&N;usOQy{T0zboTd(xs8~P5bVUbE>B^`bmE6$Rt zyPEp&+Vx)puj})4j>&Q0c{R%`$3`hr8$n&x zW`a_0E%O`K=%xTNFknyON}0+;gExrA71b!6*dSqc;%a^@Tms`)d1?)A`o(LYUp|qp ztT)7Jjpuih$wjKlA*>`6+w?WEPK&>{5L zyqd3uRt52z>`iYnGHNCo7?+hx^q&Mof7LaRAdqpRCN=??;{l*|`11mm>b3@TjiXZZ z&*yM4TfpUX0WVLc`g3|dhtrFh{{HH83U8-N{kd2bP$>8QKEO!9%&JeP^zKlu?gccr z2Y@BN2v7D1a|h=E!;e^AN0M_m5Sb)?2=`@B08d6FERHzi)+{-qR;IXhs%hIhlA}mA z&d88VaTaddGWdP8d3-MzUeAj3ZlSC+oXPnD^4SvZ?rp$>2Z!+R)-G&sjCAZ1Wz>WO zhaaEtgM@&-8KXoLx|OK=&PaZgm@W7s0G7uvA+d1z-k>pzFOaO*gY=VR%)2diM@9DM)a_ z``Xk(PZ$pU;D9*aeFL4aGz6c1t8#*y$NbE!(KC{MH0FZeI63w zfUX>}nQ`i?>oL)xF~?a=iK!m6wY8tMh}ucqvSc19=l$UepEvSx2Eagd!XR zKs6VX;-8hfp52b9erMXnU7Z!Ru1(8~A)wg_uZR*jyi(WfkCgU zKM(fC@L+EO2Rj2e*crl&-7(zUoxrW#4aoK~9Y0_=$g~ll>s~Wx@IiqQO)$K|92sD= zhL8yEM%%Y5bo!H-r@m0s;45pqD;*z!Qam}UclHgke!Cad{p6SP6?rdOsE#Q5p0gpkE^=nKmL4yM$A`uh2|{7sSpIKf0mOqj((Q3~Qr#VQ z;lT5{Eq03&zkF2XgNO#SZMOnO5DFk9nCC_TN|Jcd&TZ3+e64lAR{UI^7m%ON;pT%w z_|p$>!K2%Iu)SHG{m)mBIk7Wp*s0Bp;Nfu~ryE%LD!qa`*EoZKyp`|5CEMPO5loH82f;KV$v~3)* zyavX{L&{^evBHx2Q*(b#r%Y;>LmMfjsplSFCf^!qPWpKXVK179jG?lr?TeM<``gXr zjH~smeZ4>|_{=mX@koyT-xfOu2~i0cN{LeLZCj%rJUke~pWNGquTSUj_31(j)}ww_ zD_1Q3ZSaV_WEcX`%hp$xwnK!#xNFIo=#}O9io`l*&vi@KRYXBRQ*b`Z-eU4Boo#>T0_}Him?H7h7pLd1+`+pT(+xd0xPDmBVzU$~95W zRk@XN9mRKRSDpf;!JrZ_EA6d5(opeS!wO_=tY~`M69fY!VddrI3}UWDZ$$`j08id> zFCdVW2Zw%F#y{vlc|W|08V}tJYh*X=;Bm%(_TJO-4PKesf;(~Ui&gyeMSgc$N+$3z1qh_q6U(! zuX5uhrE*~w2so?25#DhE8pDO6FS%T48dLOoHeJE_Yz61j1zcP%V76Gne6fO~^BKIk zm}})Q6Ty(`@!c)A5R&XWe&XzU@+{!fcS3KBWR0;V)Lbfv zJb^2BQ-L?HtSaO8pV;Y&G~puS5(SnQ633@K3b+z<7`0wU(YRxwkXQ$8T4;l>H!3NJ zw@Y4rM!#9Rf;M%xxs@!SC{V(4NcdIjQDb>&Ivp>ZDa|Hv$F6}A(28F|O*(ra=$~y_ zKi#(k@Q^Z-k|<@~N_aUDUO6kcF}|;tIJ=rkFTMbjHXS)Tnw234hPI*MBfzq6 zX|NN-x8yTC(2%(f0#%d(WWSrixYLD)`xE%ty&af-aSXqGd8q?$O_U`ZN(HC}VHP3j zg7#;CaDQ0?_YRqsg^0T_N9w5untV|O9TN?GCZHW0UY2>$FJipTdQVmyfe@IiVKPMu zsz(dW7Xe1$Eg$95?CzI4i7JxvO1mjby(?_4BO3|U=Stq(z#tJFggk+;{N4P)7AU%%0th0rD)F2~4kzb9&{mo9On9e8N9+vn=BPYcA-RU5A36+lNjMPa5?n_ThBFmGDCfO;H z%p(OBq)K7$*7gAY?7u5F}bv4=+HDxx_IE7Cme*Y4i;FxFDjRPqhQO*pI<2%o$4HO zFB7mk>ceKgbo*8T-%3TT3;UxU?2r2TwhFDdsh#3(rmv0L81!J&?Z8M~J=PW4h-F;O zMYYqecmFd{yY6S^&U4)RQq=JT>fL|yxAII-ntXZmplr)@St?Rzid$T2%C<-WkJz z{)kcmsOi4$B->FG-)m7X6R3a6V627qDA7ivWe)RYp?C1rN735Kd{zaV&6ee7y3n7z zqQ|$&Aa%Kb)5`^%T`XX}TETpk!|8kpr^>LVj4Jvpe+NcJXcvu#jDApgX5?Tdumqn+ zMSr4o-d@vUG(@t~K#*e|1NRx`*Mz`90d|ER7eTg`7%t6kdwuYwOX_GtYgv+NM>zAE zZ`&pYT0$kB{N!1J0t19a0cYIxv?$%QK+czt&lYg|)((7hYe&2Oj|M%xcIdPJsE*M3 z>^J8ftoM#rKu9{SIjrRvk|GZ=F9cI_V5-FQjx?%ER8s@pn|^~-B0mY{=U>w|bJ(6c zaVmLt6S8Cxc(F%DBuAFCd2<>}8x-F%j!uYM0NN$%zH+8F6AgA;4Uv*9-=}0ZU)I_| zZ4^v@Quu?CD*S~`m|`I)uGnH+B=gIDQp#Q;YLrNW>mZe?d5Lw*dn{T^2D{>`(XEjK z8-v&Fogo}-^tJN8-Rr;-N&|orc-78nL0vmQMk6;uS4@kbqV3Zco7-j)I{Yt1A5^zC zP-r2Lvqf?J9Uq7AqCu4>EuvHf4p|7#ah$I}Smk(Oo=f$dHHvk$qn(>TeOmdKde>Yj zHp-1y?U0W$0i#Z-X!ZMDxHjs;T}6AFeK_3g!^U_3o09?D-5JBZ-7##Ay82`8TP_v6 ztO~{#xPLi{Ijl8l4ZUi`UKt5;sXx=%5~lMNd~aIjy;B~acZJr&QO zI#Qy?#~1*RMZmdIcy%@dnV0QU$59rQ_lmv+LAgh0TFUesQ%5X>GGGXyuQRKAy$Z5nVrvw# z84sh-3U0$t5Y&d)eobzHTZq12xr;6lev=sROL$+B5ikZ)3Z#UTW(n~4x{p|}SQy99 ztx@3~^!S0BofvRR-s6;DN#>5hjc_F_zEl&sSgjzxn8KaC+wd1ZdH@ga?8A82hm|_} zzsj{y7N7n1?nEPMWP8pPcd*x%aNuFE)h3F#s@&N&34=&PnR0WrpROn|^&v0h7%pqP ze#a#fI>4gi&^%9odZqrR>$FE9u>wI%X#ATIbWPSSF2GOffMp>Tn8pKYDoY>a(DV=P z)cWW~5NtQ79%$4)*`j?Z)k_ZFP{PdDTWjnW+|BECt#yQ_7#e9Ec$K*mH*>goY-N=$ z%~O0r_Hfo}_frXo>T1A82NU>>fCxFrDZ6PIYy+`pIkwr?Vwo%vbu|#bN~)+CxAY2UcakI=vg7RY3=<`=>K= zU2DY)YyNHvjqS}HG&kpIi+*FfT}t%S;oc#lMcyPO4cgueI*x$yoKQv+MQ^<-Xd~Kz z$TY1AJ)A`baH>2w&S!du{M*w@=&N0Sbws2xxM&Z6eg`JK3^w|u(m&KkNy;Mw##5l2 z53=@r(SI}Kl8kSufGYk$b%t1dRz>L8(qF#M%i}0HXu7ymHzq99 zu72spFDpNYZZ+@pw5V{ycpA5y0`qTa(}$=ZHYDVF`AYnsMNHiK)Rt=SOR**aw~#@& zMI}O$Egln@0u5>fTYB%Pmbd9XRvv4UTJ)(!C(L5hkSx~lMNPi|{;gK^GhSe|Y@{Gc zgQ7B654#=M+8V=?Tl?@QAKZqUdz;$RMoMUovavxBs5Zar&J1LUtbIZ8IE7Hw)j#}Y zAef@!;+j+Zd$W}!>m8CfqH3o$_C*H*PmT~io$O0%>FkYFqe z2^s4e)7?e_2{D;A&`67FqTR(;Edx0PcssQssozpCkk&6di$F}6a|lnV*R_xe?`;Fk ztQf*}nPm?!`_%~Cs(=6#wxs)j1qwF@&WIg^9MV?z^p`Z$CVkz+XPz zgOf!Lzxwt}yVGW!uD)x#^brjk_L_DG;yp3f3_s+C!K~06GYRq*hkj$^>@`eyFYx15 zT*Z69(W(LNcZfS(W68opxFbcEaJ#csZqW5(Wpw+Z3`&+u?fSl47TRM(o!wWv{C(xx zKkUGx-7!4cAH(+M0CqNqn!X+#ZoqaG%+0u1Q+)!^7@gEz{h> z<`SO2y@c;hrtsaHOa1x!?Ip~nD_AO5@MW&O1JtzZDdR|AfQqA^bxT8lQt)IUt@G(- z26CfpPbY`2<7CPJbf;Mv1zj-keULV%w&>ObRP+d6R>AyK+y|&VP_pVQuQ^(g7fs}P z)oA5vudeq}_g*KFIQDh{{qOIe|=;)(ahtuR6}sDQ`MZh6q`n710KpCsh;3)le9DIT+dNd;(V}wiBZhoH7QL*4P4;+Ai z))ZVQ_%_nLNQt+u92Aby-Aow4lW2x zMEOtCKLZ#D_lJvblc9@$2Nl`2Sek5%G#ysD@W6!!-{r|XEH1wc<>o;}=S~!{>V4~3 zo0i(G3S?1%ep&q`{4#$1_!MeFYTFGh^ZTN0nc`P>MOXW1IRWNubZH2;c2{@%9oU!*^qFh*xwculR&T3&+$ViF824d+ z(ud)oqj$)6#wuES4+iR*u}DA!7NK@*ORjpWt!?E=D{_GpC{xZxI^2$ZLJm0=wK z)l+J8jo}Oc>SHmYHbA)TXoy@^u$4zcH|xNS-H~=bzqvOq-N2_y9m)OZd;v!n3phHP z>ATzCUd;6w@6uC1?G_g>pDkfgdj^z>p9+3xVjYOe1-+QeGdg!3MYrhpK(D3ZhV0yv$x34arAN zM540fC=$xHo!YKMsR@%$IUOmH(aP<-I4lxpr_u1b}mX zo52t41v$nK!adQVpDdsue&npv7E=>}a(uFhGa z)IM_AWXs|lObL|HFf@nPa`j6^=ld(=@jtx!0(5OtO;gV68_yCGVNvAS08C?{{K&aEY;5QS zGu935Mt$AnQm8|b0=ac71Hje*u5AzCU%okkTN{0NGhe}*d9D>U6&OqJXb~M>M>`Jn zqIG+OGZw_zf2tMUcw51u{2(f9|00PvTrRvgNbW_9ni3WpLD0W@HZT}sOYrw|H(;Cc zwVG1}qsy|=0-&Sh=jHBou6Isz9ie}ucD$?e`gixnaCd(U@7>(epPflxe|puqeYYpf zZoUo@xXSAt+q!`eL^AsgDROa`@`?1$?bOuTJ5cS7-3~%QJZT@(kWAS32In zyeMEMr9Nh%j!pDLrwWEx?pmvzZ=rX8{kY*?HxYg2-R{Ej`&6E4mv>`uG>VMj5ssMY zc)*nOi(G+?CrG`c+|-we=GKKwDbCt!qx3qdgGW~R>KFrcU`XT24@iTS=&#TUfiVb3 zWFcxIxuX_~rY+4a5JD^e4Y>=;fC2S*lvh?teB8=J>NkcCJY59pIG6mXAl}}YWPc>< zUJdarjxS<<<|?JG91!!IWXO(Ys|`(2@&bT4?vN;15wQ_mbU3`rA;HFmxCDUp%Mjo8 zp@pI|Iamd(ALOlAoi zV19zn__=J3=3p2quMGL7*C7`FmPC`rWHuc=*ca2ekj z6<2MoTj$+1ZSF-cg=e+UJw6=6-+p)i|K;lw`0lF{?Ph8W-~298sNIcZ=?zby+pPth zDwDc$QFTZXpud2VH|!7*UAg&p1$N;I#3ep)fMp*WHcam;$V#ZH6%!EEefI?v%W~(V zBTGx{j@s!TE2X}t?_0mIF@PJJL)hOOz`^FAyq|s4hrP`{>~9S8xqWrdyE-bca)cr4 z8Z4-;%9C~mepC|$tD5E|F~6ZU9}4HG2Zm-uBt}SwZWL+Mrdn~!tJzoyl+q}?YVKvA z@4LUTGtw~;ZtM)}qib({Zwg_}&y*Bf3H%IA9f4Vwyu5nZETus@f6JPvw&T+i#&bY_*Rcc|kC5g+ zLNFy27GEL~2#he53sb+dzDsJ(qB-M=w!-ES0&M#(U--p-EeVDX0j>u{9`fn_-Bd$98MtuC*H}BelD${pkc)^<7BYfcnXar zA|}11$&wr%mX*U)T)so}MBz|+<1~+g%X4{ZM;o(OiV{q0fd znWntmD$gpio$(*cQ(=)aY9s1LNh#2>xeD2)>z!(OrpTc_JGfaC~psSAA za9p9n>7NwgC7~1R7zC-dh8nGQ#tC;vfQ5_mC&-CBSQ}v6@* z5&mQLs#^kqx_)9DTTBz-d=K%mHnBs5`$eJ$?WVDhs0Gg#YV{7IpSv^^-iTee_iMxW~MR$_D-kn zwXC@(-Q%ahgl;AG@-~aMM^Uxpg=25{GntrJ&QnaI=zesZ51pshWeTXTh%-^*W$o!* z&b@v=gHgW=H+RQ1cylG3HUgZ@;P=l?;Irqa@cDPA@btS=9Y;Xj`96~XQx!9yx@DnP z!4y?%MS&vIJ3Ptj!Vn!Iug}mhnY9`1S%>>qI^8N=NL6>5?|7c0aW#i<>r$>;JEFH{ z_r4Ke^?NDoI;@7d{E0AH`F2EaT9ytZ(oy)O%}4M#VF^e95Z3OnJzqjA5b+kTkIrpS z&HUkZp3r*JkUL#5|A4$B(Yno^FOGyQorTCZ;A} zGLqxsEB7tr`L#0zD2)XwfdmLr{&pdS_{;Z@Om)Fy zQ%o#0OAf2nokp*BZvlXKo4mNi^y=39TC=A@aBWH#lfa# zLQ5SWYirnr2g;@UZ~~uPo50B`hm+Y#pW9ZSN^(xbi<_5jb|!;EhpCAj#aOqKc!W=# z#+V`IgSH|X%FMj7x)mub4C}Lm_-bd^ob6ZlkgMp&`Y1$EM(>|=JFvGs($}Ef+8n{{ ztsz|B9>R_7A?$6aUH*YS*RLY?t6RsEpd``NM8fo8rL1JmZGGNC$FV!S8RT}CRi>Kn zl&h*&v!A2g?7iX=>lm>_6`{UnWmQnlT4An(AeM0#)RlGJ&PWG?yS_7qkMHino3lB* zI-Tmz^OG4oKb_XG1m=0Juawhmfku{kQj^o!ZA#gC%08X-|fQcT4w`_Lb`Ms^JBzB@dOuZ6*e!=JQ@ zgh5_azF2GiCRB!b5mktlE0Ww}CHXa&FPax6mL46m2Af#S4xY2(puVp2ODOub298@w%F4SYRV zp`yzRSmwFDc1+|FvRuMM1?d}h;p2l1_`#hm_~iCBd~$oIJk!51XqsEz3t2{4&x_Ka zP@QMagx#?j=dsf!bW7A~!WA%QuOng|)4!w=g()ziFE(fk@0nE|O@jhOZZ|vES#`F5 zQ(ccZ>1*X*6*gzqk4~rX=4=MP{rVVw`^_=@`s=swoB3NfnlIt(asfpr1KG)7IOys- z;*|kF+3|FQd^VD?@Q>d~HxHBQm$H^uDS5|Ijw!_wTSib{+AEFic!`37=EjY@yX_JLPi*?9iJ06|}ioKH7e6xBYFg{FlYeyil%R78Gy1W8K z00}87;R@?jir6KH4CFkc$rR zAlx6xa-@G`Go0Veht{3=4vm$(BLMMqRjLRrU*S4R0ft^Y{32<1Msu~(4*fEzvhE@m)f;oDeNYS|G}UO+iHh@a|k!KhH!Ixq(9fU2YScWj8tG<*uH22F_ zZIIJcj4!6r|@lc-Qdg9X&Ey>-6n9kfMs=yfbs@VACcMD$dz^n zUP|GHfEp$lnsX6FfRj|)JPjomUxHmZXf%Cd@jwSoN_|&P1f%zGve$&>P(*VmgHGwv zW$Lm@Emx`2#(%p;PhL@s2+0w)=^#bmaI^pdiFa}pwS`CMtwX^PV@V3cBpH-Rf|_$7 zFcFwWKG!jCG6DHw1^IlXJ=|{H+<_179Kg+kEtm}Z+5@samKAJHI5vcc&E41ddG@Ou>T_Y1CRL|EGiBY zYBPaHV*o&w1KZMUOJIV?@7I}rPogK^B^M;arZ#^C2G~A@45QL{k|b&iKxY{J{2Z2P zhTW72NlVIh%mED1X%)*@1<-_m?YAgutaXN)i3yxyA|+}HF6JRcfGY3g7Y==T;9RYY zG67q%zNlS;9~_Kff1?MVA5G!^`2Cymj_m@PYXMF7lK8vh%3DCa>A*L)e9ewI-H|pG z3TI)35D|H~T{NxVu2AR*-Z8%^s>cAg%9|>Dz&vxVT-{$Ri}G5y`Lcl7YzchV{Z;+KCo#!wiA9vjWCsdi z{qbSdM-k}W@t-o|U!UP;(N9QWeu3YLx=!r5V9zrhoxbuC$jTtrI%dGesIQfO1!cJ^ zV+MTw{1l!(KZW1?@iqMBt0VaAYQFIbpXhX!n&?i+jP&;zM{o;-QaqoEm zZF}5=g?>4XE;lT5NGn>u*%8I+iBpfEQwvY(OrYtuB^hvHO5hr6*4Y*^aqUO2))@R$c|f=`%&jPZgI^Cd zo(UkW_pF#tF6)N=VmtpXo@H&d0l)3SS)0VA${IXypZz%18hllLCF6I{aix86-)5Ck_`7 zu#sTl@+Gc{ySw z+vPd`?NLv20X3$}N_HsWm9=E%%sRE2#297LfDtfH0R5W_K`m5|WhucGa4dd=+A3nId179Cqz&CF$;p;aS@b&Q} zyt!QHTLqSj9HxbYZdZ8(l->YYr@5uTMI>cS3{4Nd18km7^$or6hW0B;4$l!0z5)*G5r7UcH8P0DKie!* z5w~qly76#JO_=_%ZGyw!^@LlqzBOL1Em=}v)-zIs3(}liP#Id0$69!%i1Y8LJ6&*H za{s!futdw&l`Kg%4E%%L@s$4ALE9!k*@+?;h7RqllQ3Q>8FiB6(;y_ag7CoEwo;n> zthdpIaQBEd3D=U!kLYS?TbYZ!efGVf=jenc4QehXvENK%Q2S+dulAsu!MM}Wu>h0- zVEVfpe*NrBUklh7c0uNdE|{pFNhZrS!nT(I`RcI*5wu~FX!;ZvhY_>D+GrE=y4vCL z-R7g%>!f#tI|7Q81T{3XMR~@5Qr#D?3;;j4y$wITzXLzLzpJnCJJ=l79pnWlimX2<-6i3+ps_5KeNPc>Ia=tZr+FkP(Re38R& z)P>Qg2U)ia7O0JTMOB9cRCi-8!%JImn4AfK$)8_e8;Jg_7KkBAl-HII_<2V|EbDjb zt=ra$vdP4@Be86gpI9(L{B#XL+um*Wc`6%oWsM}9aiaw-Vw_QS4`#}=0{&Y2b(5{m z5%pOaZH>v67wPhDJ$6GmdJ5558iSPth0h5rJ%n(|)q$E$5x-U#54NG6cFwMR~cJlDyYo zAy+E*eWa`KU#b)(s?g97e@hr2f#)}R62}%Ve35xA$gdIko0IcB#0deG)+4Dsn65R+ zt$JJ=Nvu=YLnuk9nFxuiiH{}?Fq+Z4P9sh#mp6$;D1Qio^AyXhmSAX?pw;&oe%%n{ayI#%?y6??HS}9 z0hf!sQV?Sks$J`C`oRb{0mZ!N;Yrh)<0m|FE~oLwGE_X$?iS~psWCOenCgG+iJ_wU zFLPMU3h08`@z3DV?idaxeYm$bhWqumk5KDHje?n>Iqh9B z#%_Q4hOBt&d@R2r zRGO=(Vmm;!tE7*9AP=2kuLB3$L-_Q;zCJGS$-O=J=I8>xe0>goe0>40&u98GpReHT za;c96D3{qRD?J0sYYVHZvY9iWe%6q zC2aP(FzRLSaA&M{`+xFa7k>I+S4WXopAv$El|Cz;mvT>azEl6zQRn@3_zjkC1iU^?GsIRf?h9O$~)#Xqv*C!XC`#b`G z=I=f}0>LxE*5du>^W#)Z!Zhe|oyY=B)K!uyUY~?VrnMMh5}_=!ZKaC^F*8aUWn@5p zMAdls`}sa>iQ3AF;Rv&}1k8xs?dC`Fs3&?fG%M4`2@L43fM!@2(EL4o5TNf-daO0&zpJ>e`Wy&I{4?$%Hz zVKShZr;jyLdo+cY1zJOtTz0$=MW~7IK0n?+)fnmKWgE=BAXZKMlVd`G@~z8Rt+2;i zlKBJR;vJFrK9rvz2Cg5O4v_j9vP>_GPp(biKYelye)-i2eE0PU6w0!0?h|L}KY*V5 z(BY)iw3XmyHDeNHFFXM|?_~vzYzRR(u|%RJ5Z-)7iT|r2?u#nqzUuRZ3R<*UYGu6x z0QWbCaCmbY9v)2eNA3LI+n;Cy&St-(&Q-xu2|B{Kn#x-7H)u%$qgr$)Z<)m6WQ#f;N&QvjTYv6X;d`KkOoUv=9No_&&9wPq@Zr4!_~DZqaBXK&-fn}}K{Hqu*)S8IdyJQ?RKAaC zIAzI80MzucJ4PwIX^q=@u9OmMOCfyJK;w1cZvKS8g!-IZg{{fHuDmY1CqV4fgF8wg z2ALw?$JSpiQSIay9oHa>m)VGP-JPXSyMkR_Thdt3Etq(F25OLW-qo+UdVGO3R&lDO zCH1|p!h$U#Sd+-dy#5}r$Z<4fx1PaMcrSQ#VeSg;afLResh z_k_MGf<7gb8;di-vv}rNnE1Y>JjU{!-uFtqcGc(=R{D%cp|^2$FI z&40C6z;e2Tt-TF+yuS$_-aCXJKDk-OyU9xrsmu%hM+l$m%AvOSLX2-(`7px@Q??m# zl1s(fMOrbq1(D$|DfNVr;OX4WCuQRa-Lk=CtGMi#G+KLBGmIg%C~(Djxb(WkRN=Pg z3h45P@Nm175bBl%sw~TG*3%~WsOemNHuLnWPsAfq4L2H;j6l^Sy>G%P?<zY5!)b3SEQv}IOfUvUvOf}@r$KFzD;rDn4|{uKcyus<$9mU)10Ei3z^&aOjFpmRcKp%8nHg7q4^#hVn<>{A zWr$MFLSp}v&I@EBvbD}K*7N!C z$V$51=7%Tou7^Qr#R;WShqmR%I238+iOI(lEL%q+a$qZh^k3nLn9^dB%t8-hQRB%< z%R+^^;yRbmUFGop?Opi0A3uO6clVHuM|z%83<|YDg-mDw$eR>A`O(B~Xr!g9&Gr2(MGC2R~jurukyhu1gYPwsBPKYeooPv2ZZHtxZA z*wr=XxeblRmk}b}aka?NX_*`R8v}HOC~_DHsaLx1D7<+Z78PPCu`%%U;i4i76P397 zyIQVbI$wdv3&?T_*Z0Qo!`s{Nm+u|GU%r0`+vC3e=yTs{$3HJ%nU}#DJ7&i}!>;^( zEDt-@N30DL9}N_s#8aX>={x25M6!~r^gFEW@$hA%QQC{e)B>(-3Blz_fNAS;ocnSYJUBY*> zCA>MCL1);5uDUuh%b?fkfGl#&D@tJ@+`&FS42>_nZqdU^@NFt4h(*6%g+3BSu=k7( z?rMPH8}wbccpVcqyD|%qB<_tcsJMZ{LTsL#V#3Y?s6)}f`18<~Q-q|>1Vx0y$h>o< z344Ux`B=TB)&L3vuAdU6*i`wF&gjcY(*F{b_FQyBY}#H&g_XhWUGq)2v%|#BAQtB4 zJ>3l+LY{mPoXDhSPjGq0`H($1Dyb99w zh3H&(8A-&PiRRXDmBC@;jU;%&La$6do?Win)-`A}6boK+^Nu*3BP zB(+)weh~ouoDp}oc6CvcK@#75)KU$2(H;q8kigSyBaEd{8is`dN-vZBJ_#=M{Hhb6 zf}9M-8XKv14Dauc;BP)SfU{)|pS`-!%H@2S>jk@BT*$*kS3%yPI!QhbCU)U#g%&-J z>NhelI}+>3sOrp~w8CcG zHzYK{{cPPw+F!kB>9YP~s{ytG5NepHvxTpRG`k=vf^X{->hFMVQ&-q#k~qRK5I?PG z$|R#;Kw906cST&}eWYowD{2~n>iS4g@jMghKd-!b)Vo`IW9W45EhN z;^iqkJDI{Wb&cS%Jc?3YA6N#aRPh3I{K4uxx##{V6Yqc=m=7V!82%Jp9vC0Da0tY$NKw7&rl-@6VU zKRkqMyX7%P9=3 z(f4;nFkT0?$e)tO4Yn)%Y$+muxyi>`&K!eRRQ~5hNo7|6Hi*KSb zoV-+}uCR7+_Cg3pF+AKJ!e2c(fWQ9m8r<3)YvoK< z%A7tTP@QQsv|Ar-Bm`7Dh@06tl~xDX{DhPA34SZ=Q59}hZ*DPkDhL?X6T#xe$y)DJ zsEtgog;&b2Foe1}>Om;1!ID02Z2FVrh(zV?kshihdvWkQp#nr8 zTvmeLSj+~`hlpH|s&i4wq178MTtW5+y`C^gSo{mES5J^QgZ)!~|@4E^pj+>;db#2icm$V z;v$KlAozmBYNV@mP@Y?BX#r#oUeXrz{HJVLVUqCuZ@TfFV97tn{D7(4EiDpa$iT1m<-SY5` zbj4MQVfYHES3B+_M%Z_|$G~Cdjn}U!lumH8M*Q-zicD}Rq}?>++NaQ)&2t^BZ))w5}9>V+AH{pXD8*u+%0=ITYFdlUD8Gln@VMwVmz!>7gitvf~{_C9t_2ujG~ z18XC!;Xw?Q^EeZc92H8_OEY%rnn`{AU)A3?cE|cAfW6Hj{NTYpeE#ATp1wHK9s$o) zjDUrGYk)d-l66chN?8lN?r31?f%Ula_*|gl81_yn#Jr3^R71^&#DNP7Vy;LR<|{$6 zl4076^Ep}15nlyy1T6fft$Yz}MEaYA<$?#|HP5~erGba|k0=BF@i+k9|SZ!iP4{?(2x38szhlC=K!H6ovjS2Lzs-wGA=f0@I$+lBqTP59`+HTe0b z_u%%mEyxS)mZW(S4qQk}48+(v9U{CO;nrKl>&1bm0pF;E2bx=t!&rp5R@&&fH^8(t zP=pseZk9y&ttU^eg%}Mlvc7s4yJBXn0x%m>fh=`aS{@}U4kfocZN}#Q^c#Vk5o>9R zVayFIn&Y^1)a6I6jSc5}NLU)R1VoqU67lr1(TAV#{AP(nIDb>SiR^0OeZ_;s&nqs< ze!wIq$XqO{GVmm|yl@_@O;ss<-HHi`c9YmI#Xbo?_xXXa?!gtMf+@@0J#|+2gKHc5 z`ni+Y3jXQKw>oebh;HRxWk-dl@jx}V7=XIV35G=Gb?6t|m>w=1W=F-Y-Jv80e^wMS zxFE$?;i3eRyke9}fx5U{z-Ziq?MWYgd}~Xe@&DxZHhgktyY4R)v0dF?Y!rK=I2cAO zDvyS&@&qX32_Pe&mYC9ZK-No0N~l){QU5HA_#=%G0CkZ$e=kdeNuv(A6OOuaAf^-t zQYsyK3ue5WWkm4S>~$u9{lJ?SmLf#)75e0BCTe*^r!u%_p$&hEPH*mx;r9Lp{NVn+ z7N}K>0QLFh?_R*=`5flcC7fT(p*QN49swC>exXJ692o%&(xRagE@}wf3F!u)IJkBz z0L~rX@oM^+TQ06D)r1TM9-9;{#kdJ8Gyc8y6l@lEL5x#d`NXR+O)V7+cC6f+It~~t zgF-{cTn7J^tJqb{b>a}@@N(8OuQ<_7WIuR()_pD$doa)^0LTa!$WBdsQAYmHmpLrw zE7%_o;MVp8KE8jb4FD>Y1^^WGKZ35c(^~WC*t~J@WZ@GE?K*3g3zb=B*u)HJ)BiM- zCWv8TVD0EmFeAsV-6sxVGjblMe#J0LexHDUE52hDXjT@Hw3(HPNkfkU-?qWU{Aj&^ zg$s0LHQ_8p%}Ek{YhKgB7+Dq9kU$ncFdGhfgv&F7A)RMY-KXK&$^A=Yl%ba)KxnNc zc`nVyc%&k0w~rmML(WP&aZKpeM{lo1-y#GONs|4M4$x~Qd8B5I>Cah|G5@S$0jM47 zopD#6LI3#XCj8{Z1-zNB;ApxkZw2U<*VPq4G~CJHB+TTz9YYq9|J&E=H>t;L^n5nNNo^M0R;E9 zhVX-jrANT$FVEoF+e_^gu$UWJqv$IH_d9=JR+#!u=Bz z;+}9v^;fEd0ZtpE5>;7aWZIB&RTv`kR!;&c>nQr_z$1l zg%9rSYmX)E#bgAMHo+N4p{*HXS8TG!g&>$#qM1ylC3*8Sf=y>#kQ@#&HN6$56GKg?qWYlm5=@Rl6eu3k6O`lv__q}{wt?q zZcRc4430*kOg>t!LA|x%gGiM~y#`jP1^f&w-jNr4doli^RutojVnp_`M;PvGJ?F|6 zLLl1La%4I3Tmy{6KioI(g5Uymhn|Q^Y1N8-Az^3SgM-Z>d~#zGzPf!0zj}TKe>|B( zXWWCyAk&I%L5J#(<516IVec4vd0kg-KapGn^&`tH+f5LA0jgFTPr0bGidq4lFLJn? zuawmjdddKBdlP>CXcvC|-U0l@dxvFo_AGVaf#&o+vdxvZP0x|c_Nr#hLy5e7_WgUdc83u z7`l9?N!Vv?U4fqzlv+@FZ278Tc|4#+@_150c>*!rzgc4>Z9D?X<3Km}#&BE32za=! z=lp+v`WpV_i`Vdr-+l+DZ)fmkp2Nj#3H?zY2Az%`b9HT?3UFC^el)#lhB3_(z#j#l zfBJAJ<;CXvMi`W#LNqGqkP44|n0nkHr{bybwvx03g3eX-x{%e;ACrUO;llnJzBjsQ zvp*UfzFa@0w`i?mh6d?{nDs1ZQeew0kx#j3(b8dn!mz$c$Vp^xInCnE_Q#QTl_`Ru z1kooYz6b)MInt(X$(b+V{aZWmzy9TWaQkpeub;Wh^%`gb|KZ^kG4NMNwY=&*cLv1& zngF=W~pD_gNM``((A*oWT-Z?OACT7TBAzeRh<@x@HrGC8FIu8YLlK`ahQ z!y!Xw+}e$k1UwgFLR$n57&uozD41P3f7e+t))Kn?{wJQ%~@etZZsknrX4 zR4WEEwNqWW6H9k9If61Cmy{l9``(jN89lER-~@VCf`{r4rB5q&|K+?qtGGGn!i}8~ zJU*DfPw0 z-={P6E-!BsC<=XaKp6xs<}0{R#(-r3Q{@4mp0A`n^Id3FyHSJ$*gQZwuDvFZobmt| zsNMgLfN{SAqh3cF12+0SZ6q+tzcOH`=aWHcEZ7)yq2JB)XVB~DNX=Wro;D)%J3@al zZS=^rvB0Gxqp+A=<)S)TA=aHH)L5c*(;IG&UP zc2YIvad1@iG*^KGtEk$FzHjeOv@vLZa|oZ_--kaakAN3v@ZxL+-<{52wJhKqBy_qR z=ybDsoJxC-SqB**C4y)x?uPoZQU2-o?hDh0(#uLhvT>8lb9UYI2Q+=1XqVEJbFK{a zhJqsl@UOZGw}8WpZ>w_k`XTCeu`!QQnkI$4)6FV1A!JhPLdAHd#?ma^Q`};RwFXKZ zqsoQHLPM!s|5x)RuhN~l?St-x@Qbw~C_lcF z0xbcq0Y9ak|Nl$nSbNQN$Dj)>>(m2nK70xMjFga-#BxVt}s zFW+3kFF$_+mxa`><=Pco9R)DgfJH6VVT!5s4gx`+mA8a%?OMc?4+D*fdP*1;pt{~q zDZb0R?2ozHalcr=jbRTS?T+DZ-amx@<>PB`ZEFbEw}vKaS`Aa}nySyLC}35TF8hmR z0WVKx@LYXPO9g8>Tj@Z8-&Ma~T`u9(}qF7)bHKv8~{>aQ#f6NPENXmy-D+EAN2aQ6COB)Mo%2!!B%$dazx^ zKDfI#fqQ!s*cfzRbJ&G}IW7R1JvfzzLIJXBL**e*#Xms$suLMov_1M=m#sY@>MQPi zK-TbMxjf|_Y?k;^c9>l_2{{RZbuqv+fHyeR%^>>L08tuf?(9$Cp7IE|zpo8}|NQ%x z`twhpy@ca8m#|o^;C!`$(YOzz-az-IIu>By*yvK%PB9_7!XkrXGi~lkwy9g#SJrvF zPt><9ggxBoXv_pE%>zaN6JEQ7{m#3>m!U(qUya8F!|>@nGZz_}zAXASN^vz2n|_g~ zu2}Tw=0~%ROZ=9o-2ZLY)3n7``-t77(86fiSrZ|Rgdm>L@};PCj=JrfQ7p1t*{y_H znejtS1>`5Q!q&r$^9II0%oT(D$)CSq85z0Pm4uBFZ4`*(G#wfxF>?+LPHXf_ara9Lh^5!pn$Kd$FKv@8b5ZR$;fsN z9>RG*$igXl4gZ$@N%mxd!5}=FQpN!z!E2^~`e#k`(0=Z`=&ohqKnU||vm}2BkGUEl zE3h)Z3rkC@#Na`|^MXT5Cu1~vG*NZ%5&^TCRQ-kcdrEUz<=k15*X_F4Bn{_o!Faqy zHG)hlo)+i;R#std8DKBMOGgE&;BB4Cm0R5k@Si_Eg#Z5S8T{&*x)ngh1T_2C?xGu- zN0Ru?byVPes4?!l>6j253n=VQ>dc~^VKN!Q^$9wSctu6TE);2sioM`2L z((mYg)#vh8IlQ@Cz?C`-zJj;2CFH9DioAf! zWv)MJcYmeETe}lvrEU)rdQcuY7}Pfi;OiT0;T(jt7JLa!On`c1%NL;b=d((=5XPt^ z%5(k-Y@y;F2!Jycf1sGd$$Salp3ZbU17#Q(^;GPD4(yNna4;Fbp!%&013Qzx_7+fH z6XRh|e|D82VcdsKR>nlo(dR3iu!3X^R5ZYKI`(B^1gM}y{hok_H#YV7-8q=RPac~X0jKc#Vh*n^7O+rW1d0~* z5t6JtQqtIUnu5yC$$j%k2PFK0&u2+_q3rM00)X0@1;5Z^A zg^}*V%0R8J%U!Nu+|A%%X9Ax-JcPgg$pg51eOt#WGR9y4sISb${Z93jg+C$Fv7W|U z!&Ai=_ve}ukgSdxY^s6?|8h%*QEa}p=P;AB#{H= z|A}-E)z7W~fqNT8jqMNg+yUHeWU~ZQhj0ekVwNI2*zU#OTtZ-C$|TuIYfa>a{iaxU zl9aeMQ7%pYlV>5FEp=9kjoHBb>$vQl6{mbX4$bp6Ji@+zlxUVa{gFoiy;QiQbv2tH zmD{ebUHNtEO+iXl6Ibu_b~@Sspj@?&rz`m77jJbCIIRF8i@QB-@nRm3T(MCysTBdi z6XC-a#jCINn`XwLd8gg}E4TNl4u-bU3im*i27tf&=o0izZ z`098He|UWcFW=7K)yWM0cr=ASzL{#J|8%;9MYW4RS4IP6kWuc{iivhhg-XW|=wy{4 zA}hy1Kxw!UO;A4X-gIYv3p77*7uBO{c5f>otEeDq7jbR$C_MyZ_4{~*f^;*zs-g_Cj!F95@(_1*^4tGb-S=4KBMN$ac5AdojNWLN*Ma33p z==R054?hL_RX91k_Ly&mAh~>g4FbtszSxi?$yB)#1v6_xnj=kqElFS~amWn2ApAZk zIf}rHDn~6p<|QS`SPqN?V2vMEEP^d|=_u@JN4JCVSRw^tbQH+#XOvx5A9LhPDgVp) z5)MXvxV1HcPaj@`zy8TXji);HX4*|*XVwAoo!19+fN^)4xcnoLL6blI5eTrk7<*tc zc(Dj1Q6`cSI4oT~AiDPP z(~Sb*l!bUk=e3FApIYB~N|fQbv4N7rw`BOtb4+|Z_0rGDr;_;Ud`WGGznDZisa~`x zBqBs?-R;egEP;;SrcgDpaU+8Ab8O=ic)!6GMEI3-qSS8X|I}_R+9R$o~D}B~~ zd(eTKdn0{o!bdkZ;r;8I+Gw&n8E8fR_4!( zg7^St37MnZDvtoQ7 z98UUhI2n{j2b7mU_1V_X`mj0d!RDx29l^-(fR(ruWl&4}Jj_OXRRw>e=*pA%TFf_A zLBX!@gh0*Rn?VYW?v7jC9gz+p*r_?wuVEIY(M6rWRmVZpF^`Y#?!xA%507qb!%vY|Zt@-zGMC>!_?SirFGBeWrHXgee2WI0 z1khVDg!_QRmVNI&^4EX6PS<7>7E{v%-NvwzhNhncYA@<#Yigk9hHwJnY2%>V%vv4m zMR^*n3h2&P@Zpmi@K>MQfe#-X>Z4-jIGAAU4di;~dIAR88zqyF_>oAcO)LqTe_MRd z`o>_mhIsle6T{}(mkZ@<(*};-oWJXd-?BdLSI?@XAawzSfPDTv4VzV6yat~x<7Cc3 z?Q+X48)Z@WKYjO$xCY+5rc7WV!I(kBN^1<0g|83WZzoaA>bC?5*UccfeyNg6mkIc= zrnK4uDd=)7la03{xTgv$+{<+lW3E(8EgPd>4=!_f$Y1E=n7HJq_LI%60NbN3>~9R< z2e+s2;$i{6czO((Ne{+@uHNNs^el-;k=jLVXqCgtr4SbcXY}V`+24J71&6gs zvVc~&l>nlGBo^h)|Hb(nZeHJj_xH!}pFg<{|JzS)=>U17URNvsDp23kSLg8mes>CA zzq-_)KfbwyKORqEn&t0;Q?Zn?9nZvs%e-l7byCrn?;O4h4(yXzhMT8SzbBnfzj zRd_r8Y$ByhNjnNb8BO1er0zyDFdb3v9-E^A8M-~hoaHwj0>|?eyuMt(e5ryJ7TQao z0|JKHQ$WDs<^T@225@hG1o!sG`W*WG!%eugJBEI5qOT-Ww-lIUt`jWj7wTnN045%r z4^l})-Y32$r1=EGm1}sH)%2ResAG8h{KJf=rn90H(pCHibv$F(>%xb3cj2RZ`|y*K zDZDtlHR`W%)W0jo|1!;yf_psQnHh@zqk1yBg9UTS&t)<5zH zuPru9svs5yQMB;1b;&=ojA_gEM8fUC6Dg|I#l;hHCz)?STXG7fi2UMa6XcUXhsOpY zP3#K;jv4`MtljLX%TOqvaO&|&)a*)lXXM%1JjNwGa1=iNZ6dgz(72KET}aC}bHlIE z$3)cjW^Djitl+~td+-l`^%30I-_V9bbsK>4A~O7lokunJkYL4m>JV^RCYOJwpaThH z-{!61Yk=9qI%BI^zzTIKv_va;>rfLZw6;pjmVjHM+YzB_6Ix7xTUP_Dc8PvGhE6ZrDz9RB$FLdS-9dpa$NJu3}f>Zp;aPvUwUA7PKq z@Dq=TRq-ohjq`!psiIxV5JsXJtU7sK^h zd?Y}S>GE(Y$efIXF5ugyEbl{FH+uc(MXcY`%ni1vv3*XIQETxt5k zrxiP+BX2oC^t7mg`K_i4Sk0F3-nC75|HE7GqsKSk#{Q<>Y|v5vrOQq!nUX?+V(tW9 z&h?J5+aA4f0%DFcgksi6lT~{2GypGAe)89^v~t0+jIGGaE*-iFlq2~it6;h^cbuPv z5}lj!V-CpYYgdm46Dv0f`bm=WPs)IEJwRYd5`0>!uK|2Fh70L6$bw6>HEzhFZw+|o z7M+%Ox%p!HQZl+JikH9u1uDkX(2mH~#;xuMW}wZNHG~eY2cv}JpM3<*3;wFgE<(tU zNu4`Z0vpDf7F%S@ z*t1c58KFZ`xd?9sldrnpTm|Plzg)r)Bn$<>53cRQKm6zxd~j zRlxI-n4K&eqelpzc@>h`IzmFFAa;OcZJ=nZ76PqrigvZZBP-(=K)u7<^oNQmaJI_f z_;LY@w>d1-EffII7ov<0(Cxr`hhuo}Z~}L)ZNlB_TkziXP3?i91jZrq3@Bp;6lKhS zqIBD<`%8d#h938kE5Bg&;`K``Rf{Hhw3>p;yk@Hll7EC(G6+%frl^7*$SSa(@d!{J z8JnY_R{nqb z((eR%@38c6!UP`8Y~vBq6r`D7R}m-}4S*yJj;_IK7~OA1FE#58kb-d#KOF3yLDRaW zfk45YW`3MCNbqY+)th3`3=1hiYmN zn2xWQsG(^=C&uj`iy7{^9`4If8wf<+iM$y|G5xYVfu&^+y>`VTM)Fx}dJCS4I8Szq zE4lN~p#V3__o8;TT+c*vYU@g=HURjRgf*aHsZ9Eh!-d+swWWqA+Q|kNmxZngrp0sj zP3o-*%}=A`h6aoP8n(JzA;qSL|K96YSGspIa$KU(kVsnr+pKlz9xpsCV?L~tuxUXD z|EkWNe{^FL{^5r=;2*y@hSyJzL3V^z){J1wVZ+L$R*f|N(Rr5k!plJpIeMrV`f^#o zbe6+rFN0hABY3<&hR6F8xU)CX!R`L*7f0}a{{9twb3BD_j%V=VY_9J{Kb_~$>2=gze;MLl?Z8yj+pd zEdKu=VUzU$uB+v%GRqc?axn4q#7x zHU_Z2(bocGw_Ax=qCC&u9H(d$mh!!c1kUs@Nk|<3Yo&eG!F5#=A3piWkaDFla(J8O} z>QsNF6?_s~^z6&pBm2NVD&-X?#6SAIJ}k$yuY=;pZC4bB=dUv+RV06904|h*KU>1i zpaXhwe9BYv;@(gtNcfYiC%WX1t7umrnN>$TqEIJQ>@QsX97OFv7ygp zzdm2WFF$*ucka|qty0Q50!NdlkiaV&j@sccB1{ zKytsELA7JiFjEs8Pa94uzJ`^5fe5MI@8Y;{-5y6O7fu%UVO`V}!TEkPUrV|mqDPaA zQ#LQqM8o&8OVcsJ9*?XN4vm+9sDeOguM~AnR9?Wd%Q<}cHZQ#=3JK#*2gcnFJUN)? z&!d}L@c7miynk~WwuXIu^a95W$Wg5T^oxN>``Zz@pI$u z2!G9V!CDQ++-*9Lgo`7mFi<%fHb`mnUe9@Nd=8AbzOehP9x>E^9DevrwomWAWZ*}m zcLsro2JhpKrMC$GOO-1*e&Ca>g+;CWxpFK!XI=il3keik;rIy^f=)8%c>U*eu`?kv{^`n>Cw*DsxDNbc)l^8a~rn z)S^%j#5xcIe1(c*a%o$5_76smjDo>E-Hc?@A1Muv*R)=@xpGsO-eY*t>xi)ayt9Pl z-Slw}gHu@w*KRL+8aW5>i;aMbSqw2rey>@vihi%C zyeM6K)lTXU?`*=~e{u+)9bLj_Z!Tff??7+R)$Y|!@b&t;+r154NR%hkE0V$0SJ>Q* zL;nnKa}6HVB}H|=yxv7VoWQ-^0o>ai!i)1c{O|wrOh@v6b-sXSr!zQO0W7;67;R`R zNGn5~Dnx&M=G?ekx~wkLtk!e(DwDh=QPPZ%`w>}wnCJBlc;yk0mjNfu99IgbI!@8; zWVKO68KH6k@O-v_%a;Xwb2*29e{ll0zc_;1I}^CRHGu2eLpao9C-B+xQ~37nC475w375+pE>EV~h$i%PmnO!D85g8PqJ`B}?$9j9)GwH`p^(Hl@`86qaSdn9?9R@PZ{I!LRn_IqvtKBHuY*aL@2eULGq3Bt?-xiU z5{X1+0!V~-fx3=DrwI+A+ISDmEBbpAHmw&>W&O|Nd9~C7!s>6Hm!^}^%h4#<6f5h= z=AJyZYyPb0Fai@_2TUXOy*zD>Yr2dVp!SAVT;#1f(qWj$qg|awOcJRz7C%VMJ2TCb{Zzy=R6X$stB3!Ug3rgdzbJ;+ZRgnjC=22sN8$n{h6T z^!H&wN<;SPS7CZM&0FiawIRc-((EOS5?M(j4B}T*BL%OSrl+Bd-=LnkBZI zCLCj)#|jYq&vl%s$cH5Dpz}AycnTSOugxdra~Gd@Cyqd(ql-{U<}#vu=K=lmm9j)R zX0bTa#_D_zw=XZqynlGOi%%cz;%A?|z|TK_fv5dbd5b`!*OH%F7K0<-;Q_9y-zI{N z3&#zL(0xJhF)`{4#wO~~w-B0FL~&~%89$YQP|9VqKT5b8|8B)=1CY218z`33CRgZ5tkmI zT~A8vKq0zNV@u;rajVEAkvq9M0A?F?ymxyYfBC2PWDJ+w_z&yl4hlO9QW~^DP-f)T zj;olk9gVkYi&wNwzNvgGj9v5j(iHVm`n}ul;I=TG`iGWC%gmkKna>v~!iMA%JI>qf zD!`vE*}8RDBc|=>3*sJ`oJRmIvJw?uh-ZDlNrTXH$;PZVQ7NiU2f(WIQroGj+a;S2 z5MzkQ^)K9hk^N*wEsV?`7h8Z?$hqhdq7!%gs4i@|@izhh)g0v&B@X>6Ep150q~Ok( zd?hsdE`sr_&9?CF)df7-J;RgTGkKlc-pNn~^b&#YasxOPA#Qzvrfhp}^MUWYCbeqA zl~)F(GefhMtvnu&Ceo06a&QJb<#>58z~MLnYu2zh*DlX33qxm;l)TK%fk%uouA;|{ z7gZ8z5=E7YnW6|2Cy+O0;tAucjV3C4M$=@XxK6|_01g>@p;=s?l?IvWBf-P{Q|u2$ zc({9t--ulS%QNz`w$R3!*cmXF?hZ&}1=KP{-H6d(odtC(Hd;HVGyM_v6azg*t)b=Y zC|WYd%Zl^IoG5}{W%473vpV0wTQ`<5JJZ6O*O&0sHwXCY#Q~ljoZ;!g8Tukdz}Zla zGZ71-R!d_9pl}A*vj~hQ*vsf9!Rn)ftUDWezuZgL!^AAREd;*+%`A2fZF%xKAbP)w1BOoXMbeiP+jM zk2j@qrig9F^*SjsP`6T;JvvZo!LCX+@(jkM zS(nF##N0cP^C`+>a2~`-xv8l~9)-)%hGHDjL)Q5$zx}3^FA+w9Ll5-TYn#atDJm*F zQPULT(v-)cSZC2`szO9rL$L_Enrtq%A1gYm16NW$67ZcV*lmR1h?b>Q=n(-%p>ZRB z;Pf{HT@DmNepj1)M$9Z{NK*ID0A7@arVJdysx-~wsS~Z&7@pcHVH{b}{Tz6C5Bu0Y>PzQFyO}yU7JCi3eX&^KO!PC$%=l~KZMtnN939EJR=L7u z7bdm2fu|1)Azq`0lO^7@?p7(0pM`Z=5PFo~#5Rt^34hUdwH7N12!&hR$gn4j%B>@` z5{`Dladk-qbezGx%>}%5eF1N8F3TMO;ySyg5-UJNY)pBY6^&t*Vo9|(7Zg*-`H&#> z5?)c8L%gH{R601{!k>e2*I}|_PIqYQDJ(l$lPK3ct}b-2u{?t}uP@7YAK%}`?;q^o zA3l45lcNE)hC>{m4AAU0(dstQtkqE$K^!MM{b;tC(pDm%<~h_EqtzN%$6H59i(ol@ z4Lt@hGm@ZL9u1zjuPkadc8yCqt6M5NV~O~}Gx~AU^bZB3T8dIjT=G^$#HHMtMwPzZ z*EeyL_2e2SD}HB0u4UO0NGF)MR<_Yn1Z6P}(f`eVtVL<%2Z$VMY6D(TlhYo$( zU19neO@QM8?p|KRU;gtq@Y=Oy%ywI8)c3q;hcK)O9gz}(H zy{;_|o_f{ED~iXo3PTxOc!v?B=u7+cBM=Qtl2OeiUGVx3?&u!_n=rmnc}!PQ4D>MN zNKzG1>=WExox#6)djkn$czHO$q{d{_{CXDko@XoS;6_JT3KR9tt*AK>Gz>CQyar^Z zP=;K)daBr&W8Y3`4!IX2DG8tN>gb4A6~Z}?aMTmv z7#xp}`#63w!Pk4o_~^+2uCMIi%3>E+mb%zj=;G317oAoOU9q!8G3Zn0gDTxi!?&v5 z?xv4hBcl5)reZ@bIfOk2ebm7k#*X2|VDLh&;41Z{&a+7|7B-f8sMXdmKi9#%8!Pzw zQN|i5ckYn*PBYKagVFQLev#9LRsdrsRS)b7 zN`6?e6?&vdydW^riaVyFCJofuz?Dr>Wj2&ejaAD+VdRfj=g)hJmnvzx3cLi>>)N?u+jF1dQ z*j(&l^ZE)tc>R(z{ugIE>Fx+I@6|F8Qw?BMyP@Qusyn*h!+cMzpc}3X(3V<%iMAY;P#B;iGZciUm+7mh-ohPndhebhU zN=ECIe`B!@Pl+b(9Xqs>Koj6h@u*cGbaB>_T3U_POUg59Zzt3t%qA{Gt&6~_{kx5`eW=2CemOMhL+gH$CI*NHP#&9&oVyBJ8ZX54hUBJ877V-X#B{b^{D{~#pc3MTX6X6ufb|2)j(ys_n zaNPmhfPJC>vnZfTy9wVp=Efsw7-kq3*tebNgbR0~vXw9yy98B>$Bg?uhwJm_A z^_s|E;Nk4Ryn`~yqs*hSJ<=1-kPIgn_9tkJg%eS8K_)6_M6MorE8R@4hqv#%mmXmeP9 zS}<@$gO7fu>lGfs6p6ozr_B#WZi`R2oym9}g%;W7fZz=S@W^=&MuuHMH~@UwB88XB zn^~2c1Nj|FI6dvg)N#I1A1*~3fK$qtDeBiVn#z$IUchiwlErG8^_oA6=pCY4$UCsP z@>`oIr=hCdPGZNVmRuCE$`$TF&tPjoW zw?4o@krh(WJ-9gJt6Hy02~%EhDxQKf=?Zab_?Hpog)^YtY{(-Y?REq8S{(y$+}}IJ z{&0i`yT|zDgB@%x_prIt!)5VV>|w6g#9X&o+)bVD1j#pqa0A9vA)#9`*+sx^^3!FN5EkpFAn<{jV3rr z64dMUVn;xo)iOt&F;-pVt=#;JnpwlJX|+o|AI@!?&pSss6uCf?Xw}>Wla{`;%Rw34 zoEq&qd)usT=eJXZ{<4~))My%@+~y;BT`5?4eVw?qWH1IFk1^M5;Obllw>K7W`_cl2 z<3u{R#-j;_;v9TEGk7hPKVp2gi4I^ZOvB{T$7ngSwY_d;Fyo} z=Zfct${6LDG7uybTq~F2F@@)}xmh*_6HYx<4La*RcmA9{mF>#gOE{j~`3uyU(ha`B z>_*&ATQ!ESK4@}9o4R0_F={A=2}hfQL}|6#=m(XPsbl2d>_aAm(iMzO4vo?-p4FpI zo29c}$c&wOcIDl@%d=RYYh&+Zj9+}cCmjG|vCTTWMF0*vNE>Kc^O%;cAg$TW1^+34 zje*RxYK*hZ1Z9vN17Hd`o}FJd`3nkXI;iPDOC2XP!&p*BMbNXuAmw|FBRy>4kw{GM zGxz=>NBfCx%{zkI9YdBYjGLn0UE@HZ3++Cl;cWiHGXztf9J*ZzHn);=IqV)^ zq{dK6pFl{RYQ4^itLoHt(EUqmqP!S)<~$R@-JTtqPHC&z7p{Bf8JS;ysJF+uJ)r0} zMPK73AEyrS8pb1z@t9+BI>O|nkE?65xIN#&pWVBHKmYD+{Nv}(@!=QW$el!D=TTk! zSFe@MO{VOO^tIP~9bm^0oxF)+fLO-LR{oQ-F@`5YEUeDrwY6D%M>+s*%YcXzb>&}I z11cv=b1?^Zw#CN{-e0jxszyVZDg>4-ubld*6K*U)6|IC)L42T?&Ty7~oC9+dGiUWG z>U7kwc9yGBQ=UTlpS#&U-XI5Ts9X?#;{CMB#uViW2LQLe7|C*Q*v6fi-=BE)FH?U; zCk}htbbQh&H4S@N!^a7P+h17>!DEr*j%@Vvc;h?JzdpnwajueVo5U7h(^Xjwm$D1P zl#K`Ph(;g80wqzhi6Fhk2e;?wP8{9*e<9tEhk>e}FmWk(+t zffiYL)k)Ez@|RppfHT$f)G$`nN*{(ad}hD&qRwPYpC-ysNnWsg5lONb_WxD`pqG(t;}F^bq1Ff(_H~; z^KGonwdHLCjaoTQq{AVvH}hmzW=5!)!R8s1*M2$-v}pKxztZNEqkgI~_oH;@1WSXZ zgQbD~k;UN^L)_mw!pp-mygck&#GD;LuP2X$$_Vuc2%`CdOqgrU#@b2eHR1ule=Cx zs-FVmjOBHG&z#B&jG0-UnCDF%P>)t*OVupnRT&dzJVG)~(5^AeFoqkO%ecNgi`T9$ z;k9dvI6E8R|NZS_{O-{n#0$D!D5AD zN;pWx)vCiWnw+E8sN*}g*YPjEdlPTnSW}EVu37w6b&B8)tk1eQlq0`s~Sx%IH40pHAYOjIYoeipsUYf(W^2+#t=khT5o=)x0$HFntn}W zAO&sA;qB0v_sjJva4YF2S#kye)I3cwoyE!(XUZI)94=mjtpYX#if5Vn#baFff{@S% z`BNo7Rk1K!rOW)DIuil;)0#DX7*6A9Q;VnNRXJYt`m`P`4Zd4QsS5xhAf{?$R^hEb zPh5Xt-Yf0fpT?9t)jiGnFLQjdY?XW>S5!GV&6>Qv=Y#7D=(g(U|K>S<_4ojdS`)0p z%81>JU>Kt7DszXiLdEn~MR%6%&{y{SdXVBq@E&rvP|Cj0_dQdiz$=@w5_Y-iVv_jq z2xrJUjgHO0%r6dQjFOiyr#mIHE$!i<3*8jtxz&wBGN@mgL7XXXHXG?xRM{;LJ7*(# z8-y_a>l2P^i(On3+tP0?qaeMvK9Mm3l5BjiY!Z(WPpXF^e?%%7 z)KV$){tUlhs*V~>&tP>{F6s<&N*}RZI5*hyV>k6W(5N%qSf9hKjRkz?&Kk}}WBl@q zE&TG!EqwT8x+CClFp_Z{1hvcVgr4#Q+Lkvul)k1;+QVy4r;Qm2XUZm!_ZKDde3Z>{3)?KS-Szx@P%`-@NT`OAHL z{_+6r`5rp+J#gVXND`}B&nT^wY^u8Tx~lh=tFqpbMl7Yzc$8o?o}dR{v02A=Z*SnQ z{_Jh(Xw6jue_N>;{T#{3?>XMCat;NsQioWA;QUEb?@js;^qRU}UvRLB9u#Gm(SeQs ze@LV_Q)R53!NrX+R*?RH-pNctq^A`!f7Q`K(LSoYsn;9uoDKjN@!ZL;w7c2R(+qVE z<{-VJ&eFjJw-EWNMQS~VEf+}@cMTi{50XbgBib8PTlhU!|Iw_DbDVSwIntcZr>HSv zv{i$z3J_wSS%e>m=kzo{6rgPO(oRB&OJy3*jCWS77>j_GtkaNnixuh<20T3(VEA|! zk9JS+@#9_G{&EgiS7vZ^WftoT9rzBG?+tAXolbNIpQ8+f#R zghx9^ayP)sqdo>=N5I)go<9~_vuoKc9tBUyh@M8)Hu!6qJSwGkrcT?0+@ax;9d>Ujx?@5*Nk7H|D|mu9fKT+h;cKR zh%In(jCX4_+}@bSm4&Xn*6!|=CEUEch+CJJ@M!xGzxez)e({HA_q?38*_e}9F7JzZ z*LFku5sE@MP8Fsnb$?=t2T47HmnzMwkh|ysr8iu?b$}K6=EPW{>A@7Arh;lOEXQZ&v&qOxPa6C5Px@n z7oTn&qc+>dOt+Sv^P521f~ns^pzx7(4>PoPdT!eaDez_b!XHz~NT!fiCgL;G8^bPD-!;%3 z5>SaXkSeY`yP7La!U510%DVJ;F?sHM|8#&yyT=$0#<(=s!R5IwzISI8-+OHh@7-9& z>U>8A7Ze|{y2p8v1-Z+j-dka+s=_H&#zj6X>s5L_j;;irQXCd=ZT0BAdXqI z8a3S6n8$0E7x9DFC+H6+_~`2`d~|;czx-+o{gVN9&c--79iq{0$WODGp0yU97{>Ec zABw=ZkW`Jb1R;$1L0Rl#g3B zN>J;MaBp)N|HGf(!{){!y4_|G^}kk29duk-Wbh70N;g-3n(9&jRAsVN78TAQ8c|in z7jrl;ir>Ck0?$cASjn~_+h~f{&gmwK{uK#MDFvjS?b>naFchZg_kvw2Fj}OYbWwJ7 zNsa)YWj}2P0AXbKUWZ@AW(!s1D0wl(vc$*?=j#}{w03?_9jQLva`Y!%#CL^XbT7~^ zDQ>lN8a;zI`g5Qv60<2g#S)4REhX&uiytWDxyQ;WmXUeU#&Rb>8WZ5!QWt-6cNK@D z1TT+9I2k86I33FC^x7gwSH3k`Q7vs%!^Xq;gy2_K``rP-q8e>HbMz_kMK#|oES#O? zp9TW86F=2alfkYUR5l{fW7A{c5QD%qd`*+z?Fuo35=oZ0DK=dwE)J5*v*oQ;T?PYg>(5JP0!3XH1usN9@Fa6=XcxJ7ogloBGa^l7UnHq94~}-Th8r7m=(Os%x;l&R zy}mAE1U%e2!i$45yg2CNY&^kPf0PC#V>Q&o&VWV=G2h9Q^M!MKI_5fyUn|g2Q*;U2 zILxE!s4xVeail}XQ-{omZ#rz9Z(OUzbdc4kkw((ZDW4oPR(ZaX@x;pjrRo`f5z#+A zk#hID6&@_GsKPEvCiUPq_SI=d26W4Yx3#W&0eu#+w;`6%L z5pih~-+%LpH2!D1EsVzF)H#qxOC@#~2Af%BDtEx+&SeI=EHkF7DjOHfxhtj+HIlxq zTME2zZH1P^R3GQz&Yzz8t#dK`}N>BU)>aje%&3ykDJ*=>G|> zEq8HqZ3bIMBRtwZ!)LEf@O<|a3*9DqEwSy9Wl_@&`Y^jb-2{%H7r~&#N{@GFPzHK>f*|8M?ZL_qmrF6I4t~0fQp-lR7&DTC{w<0bAaY> zilrl_z0YsGV8!hL!jNwi=YYjl^H;+OzWL?=!w0Xh+G}C0*TN6(tl@{Rt>OJ!Vn;w1 z&3aAlCg9oG_B_Twjkx;C%lE}&f*=+-e5#cN(D|I?zY62T+eHEU7k7q`2IG2|6m&*ez}cbo^9i0e}w&`fe0u7H0x+}8qz75 zIsme3A`|N1LaYJnY8zoV5P7&F5Sg-bPmi_16gGA7h5f+Y!z#TE@MB;ybTj zk`4f2{EP9K-`Zi$GocjB$KvwYdaPL@5>OQ8c0Y%pL>s|0~=r^Gny!tx{mh7Jkw$eP+l?~P%0MVT7DpV!W<)WZ*CFh0n zqw1%!@p4ud?TKRKQ+Fwsb`m-H5?au36yIiNck^qlvhBKeH)iqQeQ+5wpKoLTbclqB?bGApEN&5$+avy}Qb}!PaQIg4 z0;K@uO__-v9Z|Ab_4(o zVT|TSw{k~A-WF%ut1v*k@f4ffVLa$LEw1|N2(m&a;%VT;9Girr!I<0$&}!7NwmggX z?ySog0gtzj@M8ZAFAq*}G#umTsE@ITR4%SGt&1Rz^}_HgZ`9z{Iql-eix+M6khI-D z6@~{nJ}ML^#;FgV>V1*NNpZ4mE{9Dgf>D)Sv)^cP=hmNSoM}`n4SrV6M`E=<8Occu zEa7O?7-s7=T)w)5%ky2_ytIg$8;iKHK9B1g3%Im0BMtwv!5F(oef;|K=lJ#K-{4nY zZ{hjb7-y`8?rd8I7@f#7{{~^0iki_sL|5cIAFGl^>t(saz@fzJ&Xp3+oVIdTjW{AP z7-MwQ$Hq(t8|w@B-W!*t@xQ(_BMpC^-L{g`+&?lDr&R2TMwc4r5}TT$z`W&c2{(;l zphAh5XQQhNo00Ch)0fxDgr2#;EX%AX>Qg=TMx45Ou3k{vMgVedB<2Q!>NVF>CHI_Z zrntkHH2iNnx$TnlPvHQtS=2s@WxS54#n$~IhJrUa%U1>*Xn=ZlzbcZXcs3mIjN)R` z!|VVYflz4RF)IqX!{cVnIdMbUgjThCT=%e-8T_t5AN_SQSG;#u!!Ix8>nJL46C=JM zaz$N5o*G!JoRO7@xt3$ffj2g0@%s9#H2(kaWM8h5ijUZ)D-`od!VASwZ7FxG_^?9Q z+V4r7#r?phlBt-gxqOFANsYvWpwiMjG^eUnCfJyMBJgy~*W9#OsL7imq!lE z@rhBn+Mn*^$*%;RjJS;G&qrfmG{($K8_TT*-o3JnAG~oH@87+I5AI%;aY4jfmM3BS zKixURfBxtp{Nl|yfJ%(`>kc>>m_LY0n9A3N z9Op`Xi~yUi=+`kC^fA~!lg9rK-?)tL3kSg6%hLECPbPAF<_iENui1hsIQx;p-JQ%_ z`5a4cw6{}~)@Jb^t%JqPht6F`SSAkl$Rh<;aDQ!_f29WQ|%P{&<7T%+zOU_|hq`G@_k{h#CZU&hiE%&udEf z*ev9O!WB4`QFdi^JU1U3sxy(_Rl@bm7W=Hqh>A%XywG6g#WxCpSfk#ggEx28_EyU8 z>M^dp4OLTASLiUj9Qc_+UdvX}-nlxDzxw`F{Pe-T{0J?5Bmx2=4ThE;|5KDqqGnB` zsfvlUGDm+epST&`9*Pdj3*N^BWc5eP=%gWsWk3j`OMMQFN&8X!6zF&w5*&o&v+X9e zf0&&qfNKt4=X{gi1P>JSHZT-?JV|-DSqEy}hCG|j>kNks`2E%qcFqR)?8N~-{CY>m z2iO!l0v5V*SAbB0h2g0>gn4GPId%Mycn$PfXxzn2CeFPpv1bY?+8QZpUds)W;+Q}p z&u{Z=m&W>HS2|r*<~n%m#){kx@ObA4&-PE{Xa97By|W?4oMXUKgGR&&V6|GhB|KMj zIXCD}M;A4x87=s!%CEt>){Y_Krvo8B97EjN`R9^>%1^C@9{jZzSz+_ z)xjxV9iHJApFEY3{(tv)2Z!S5K(mf^y^fl=8g!gq4H_TpFD!qV@m!Tx)2d1IS`Ama z+2C&>pK9qCnTYHD&PG^hHF5p&68`AkHT>5o1@2Zs2IJ2e%7k714l)i#GB+F&OA)bAvg%$WE*{pUf(DQ_M1mh*VI z;^QkuI{cKYjLLr*Q9_5Lk;R$^shV>zoP1n*ZYibTk*u8*ft70yTK;7BZwRc-e3{qr z!tOzLyD^-F4P`uDt}*3blTW5;53_!Sq1eurIG?4ve7@sD-rt>V^%o9+Yb!k*_7i+~ ze_twHqa=;y-K?=}g{=fhN2S+sNaZ%ywr9IqQ<^wj$3KE^{QN=FikUy00!aUAL35#J z6s7Q^tL08pZ<-*~7J!`6q|jD7$gD}1Q&H0cm8^^kM|kADZm1aLOySP#>_s4{Bz=(X z2w-S68`6jzj1wG ztVB(hHx7lxz_9!opr~udfG<%4&xcJ=NIKmeUOpo^KNypamdnet()btY z>GqNQeDw7;etUl#pFZ2e(ZLx8qcKjz^=_>On&Jk5CPP!~49FaoNy0NHKxkg|H z;7tr2^5^t$^WemTDC^adPi+|F&IeR$CYddkPYWZBl^?m{pKeDVi7o4ABQ!bC1hBl? z#?7S}yz|<+yt3}i8>_f?b5$Pm5j)q!Dz;q7&H~s8x<9U5_gCtF>8$~(o@vix=dc$YgrM}8xZ-)oO&#(| zbrQrjjOpbn&5LmgiK3AbUJU5Pf_9J_{fp^KAFQgEE_e`Pr2O>Xjx>!XK5e3{$%y%r zC?EIUCYEalzsldvAb>H%@eQ=8N$V&`3p?eZ;l*%HN=|Mk09*DKC0*#>pE|tvF@ItW6g^XR7fgO%@&pn>;B0upi$QRy*`39Vy zAiM||mTjq=Br?#}Vz-I!T%X6m*(Ln$#gY8*W*w}VX;DlwrLt!wI%fZJrOzz^MFdTP zxx(+|)(9EtJEh&(~65#UIjL+wbXso_Yj26E#MbL39n z)RgVZ=@EfR0e-IA#I?0K>2wjRyWiP8##`pdVVe^MZG^l7EEY_CfWM~i2r z1XsVQQ%81Xr|OU%%d`F2%@M)@%^2E@;nI8;%a;~#WqDS9Hsy-{9M+d-v9U6P<@v63 z{)iR)(MWFbkw%c|3!&ryVt5(MCDbkLHzQC2}Kbp`N9Zjn0@g$0P+-RU|NU$ z!>+i(rZ$i&$`{u%Mbu9@5>4gzT+#3yK2KkNPQ~m5z^p+GT&I^>hMK`$QsG=l9Zcs3 zd_F&%pTN3P#Zglg1oFv`TaWx@0!OWScQzNWJkvz~ z!vw#4xDSRJ>Wy?&t=ReOFi>*kQqyY-)>AK0x)^3u+sCN>pf(7(h(e*{WRv_%V(g$+ z0BL741F=;!ymSPaB{0oIZ+V8clCO50Q60$FS`L%#D5>Z=BN^TEM8B%9tjWymHfxgS zT1=5VqI`blm35k^)ms=2Cpa8Vu=U~)zkK)#8#Ax4G26u-y}l+t@7!3HPJny|O@c|W zf|v(Lu9}!MQoMJ$tJu$?}e+8yFANP{)ytEE0j-9-(ow_!*Hk2~Ftn9yP9sIf6!SgV&(8VEsMX0nru5avX_&79vf9Psxh-87iMpK2 z4r`$QX2d`homGwDXU7ssp ziNJj_Fkq5E#0C_*K}7IQVf_E|r>la_4G22CRt}E-5SA>c(6IG_>5V=Bo zg>E6MMU%_)ST5hFg40yeUGz8VC)h$&|8n|{Mk5USBdoL=xIELskKVY1fA?R#B^_(| zL4TIT17QY!Ol4+=FJPJ}-OYb~J0m2Ue2+uZfB7JO06VOKZ~^xNH*#7<%;t-!>M8E|Wjyf0(KFGTyxiMY+_$3I zWlP>M&qT%u3$ByCDm{YleYqWZ2v>2Go)%LRSNej(3O!>_5)lX!)t=An^`{agPbV9) zq?QGV600wBod#|!_wb{eOE~RM@WrbWe7Spyw%97!YUm=v5JqZ^-0@t0LUa==`PIrm zH)D$T#2acbJK3Z{52`EFC2M&wG$=x$Y7FFHkW8yq593yATJe_|ztzMz^)!?+!_Y$_ zT?)E{uMJmIzVi~fj7-W~1jKg#PP-{r3X@tLd!q?Hdb)>~M`!r>=^p;^t8IB>z>U>e ztj@RPNA8u$&!7{!jV8Z%8H}e=a*iuKlVwC$N&q#FxMenTtY}7Gzh_KJ7Jm6JMVFPw zEHEjCqd1Z@+il{`r3K9OTJoxaX(BzN_=^a3T$Q5q;S3qpw0 z*^=(K;Yh|}=h;|35F=8A=@XyTRs*v$Ggz7J$T$#JmuGNoWfqr~X5`V3OX9OKD|w(i zhLh>Z_0$egj_?~!7 zvx<|$(tiVZo6_GV1P#D^NJ(Yix}i6mt$wQ_W-Lb1hmbU7a>y zT@6|7ez4UE;miBd2&Nx#`l=|7#Z7OYHWiASyVRry~1FooXx!ciM&xM!F;EQ<(W4A z=;j0qtp@)0-#y1~pY5YoYoXI_7&juN<33gJ$}w9ETlG0NR%%NP#YWs?z$~E4M?=NbR`xvT(QRZp zb?kYE>3C3pEuk4I51r8zu(Hn*6uToDGDbjMuAmKu6YLEqc=>D}|M>M#Zb=r`js4{A zhWxyBeGzMmo$PwLnp};{Zw-KDJZ9wuZF@7i*+;kJE<<1*i!o=4-TUdOm z2n1%#_bl5HkYqsuMgNEu%TB9_x!xk~Tv?Jq1VtXP(z~^Licg>H;?t+Q`0Uv}K7Y24 z-Qy8XP6u*Tcr41dn`m^J>COOooghb@r8_~u6$cGB&;!M5@aPY2!NUx*geDBi0v=ih zhi~yb>wix`R!i@)8y``TQXfnER2bYmYg&RdsNXmlV=Pwr$Ko?VhcS7T-)gUo>&vsa zdwm6Oh;#inR%ASgZo4V3@ynA~@fQvN;j|XJ*c#0mnxa4Dp0%1Z{{Q;tU*Q*@e_>aTr0J~+-rNC`(S1BlY19@UE*t=B z_^ZEo2P^a4G*-fx%OITjEepC)7O0otil8GQM^k$gu@lZ}uM2}Xb-r?PlndF()-dPl zlvE8Fs&^t#ys)ItAi02K+CrRVH@d`zzal~p^y_Kd!q0?BFrHditKxk2hAT1UudUaG z%I5l(0nDl)pKly?x;68Z6*s<(M$=XKpIL3ACS&DE@Zuao8CQP=k8o3<6d7$YP-QBT z1qji?^{SlpaJrpj!Jq_-Oi^&A<*$fxY9DI@`F!;i6M3+YLQgAITdiLV{*JHTZl_R+ z#ypYd1n*s$!yg?k<76<#s8dCMSig(J#(k`5& zcr=C4*iCl?j2kuV49ED@lU=#u{JST+c>U|SB1XW{TpP=?opKoPBs*@PDCh(_8c%uq zn|NuiE}dgKuUd6JAj0#xF^Pq$QH~I0W~6jfas!Q7adcy4MjG~Fh4}58YuMU9!}h@m zwhm6QeK^3*Q6GC}Bkc7@7>*|xo{lgA(9f@RtfhCP%a7D+g(<0Tapk;V4_yg%k%(C2 zIggfQjYU->BEaPsT)XD*ck)Nk56o&jOBFCoJXJ&C1lJwRYajt)%S;uU* zjis5E{9Ib-;qqb^8`&!V%0d^b3q7nZbkS`!WPr%=xQq>vul~#HAnOd{B*E#~2%kTC zh0h=D;uoJi$3K4Y0xwPmXfO6qZ#9hFH}NvgO9$6H5@9d~ua=Ht6l10=uJueEE#jI) zHW=gWTWk2vt#y3=-c_tD^yC~aqyEdQ0d;&zVCRSmPpJmkWMMlOzNKW${TEZ4n;_?@ zC#I{Zk?fH?)iKewUidMfp2xAPlB+oWmHniu2~2aUzUbZ=ZR4sZQ+9GsUJ8!87bsjT zs4AaQW*^sn##B$f4DDPkV*psnYQT+?Sr59ru+L`d1supk@NAT)EeuAc_{o?sO_)8w zoAWVOGX{`0b2)8>{GMy7pvo-jUdlWhsg2Y1r;V`jCi6|H*5t~axsl2RjZJg7lB|`c zG=n|bJV)RHaL=2(l&~;j)~^aR77KT|5I6^F_ji?E42~nd~dP6b0jLIj2l9z22yNi zfn)Z2BOf#K5v9Fcm^ahf(rwenDZh#g%F4ZI)H0=fexydNix4kmPt%-CpSTWjduUuT z{Z1a$pix!{n_1v6@m)lre>Ixm<&!=9%s&zmdU6-vTU>S5+Pvs(l68K0(LgU+ncNSpZ?-q z+`P0P9RR|aB5p~jXV;o?a{i{^pX;@fk43fHrFMHO(&QxN7`r$+=!^WTcb z7^0H9=R$?d0~m3sDC5GPQMn^(G2jG_T}8Dsj>FC|sgOmf4t3YUT|cS>Xe@$dbBrbl zE-iHM{aZ`e>yL5JA7lG;gze)&wiBS1u847+x#IZV{hpFPW&~-vtXujrbC?)*wpN}1 z<2&ic&0j8Qe<3=D$^-W4>*-`p`J8TNBrLSEP7 zcYGEOP!(0Kj-*n#F2;a)A++_wphwieF?V3tL6c40SEasgRF(8Cpeb~fHhFqxEZvP! z+^WE3;7jr8i0fm;%`!_pEOlGxi7ou?Ce|0bSYPPL0Gey_T`bLYuskPL`#V@(=*n0# z^7xD*i`91IV=;~2z;GyoLLTGyU%$l1U%$j}9=^htyC*o{9PNcJY9fBe0Hi=$zc{g| zs@mq38A3caNlzI{&Ta~hw?M3+5Fq2V?3%$CiKcQ&Q*FM?{0Mq^oH zjiHc57cw=$!J3-S%dz$8g6i?+ty*tYGbDr`38&J%)MWL})Qxj zmc_}HIwOIXT~UP&M2t2|^}ATQS~{>jp^~+lquV9k8g5RHOeR9QtHFLu6jP&9M`Po3 z_)s<38AF~g{XR)(lx5u_6l!rcP&fcKmwVFqKkAS1vxj^5dg}xWvn|YY z8tMJPNmiCRJIM?>DwA-jY?R0w-2A z)0@zANfSpWieQY)N%(G5M8#@|K0{agrIKJX;x- z!Qkpl-XO3%-^2BdG@o#4itXaNhiBM3?BmPl`*LT1xGwI+s}nrfIzs?wkxs>OM0U0e=^nSLY4$&K{?4%Vl6mpiUl zx4F7Q=uiP7pYxj~gdZxItuPuUScAA)N*74fX4DMc9!0Pg>{M@;+ zh}W(zVt%$QcWf|&pYr?Yd7%lWJ3Lf9ME0+U;@@aUbMY0$t_lEQ;Vk5bC#V2f%p-kjwvJK98$|E8ToC>HKZel@T@_R1ODqT=bh(wh_|Z z2}8v~yC}=jj;rVzF*s^EqiaH{D$sm+x#@AIfpaCl8=rCjmt-<-VQ?g$&?^kl%0{St z|EFDN&dcup6sw#yiGxtcfSW5l{KdUBsh^0L0Q({++Q|^@dQIM&o@5FlG*-3Ga8sr} zMPGG@FigYyhI7GVIMRV@0t{!_Uye37-bJN|Voq7gsh<(sfV4ucHgWSok)n(dM_EEt6|V9rpf$U${DL1)i6G3P@QF-sX$ z0-f0mSgu~D+xF8Sf%(>N@u!x>3~0*p<29@=&fxfLh~v{Cwhzy+bJ)kh=|HY7zd9XY zSKKBr8e=d_cL*Gc)m34rj?!HMgB&pD#g=0kP_335uru zZ8v0)*!8)t{LJ;5@|Fg%%D+C}Lr?4i=(c2RjD^{@3_vH1^BlLl&yuo@sVvEldZbRB zygkpikMPaT5q|aM7JmKJ7QT4Civz|mY1Yscy94Sh+Y!PGhmkY+rgwu2IhBd|c-X$R z#fb#hb1`fDloO&gzltw4U~)Fb(XAy^7NF9J0rLqKp>rl&CK}XosvQ{x`ZPT*#Sh@=k63I!v`)36^!`Dpyf zI0|LM4=H7;O6W4xNVB2>_TikRzE1?EVmb$TyT*u7N68^qIn$-2{qn$Yw@&AH6&{b3 zKd}xq8)N$|Gx?M@B`E{IO9yAQt`}2zTb#*Bf2ta$G8;i$GMK*u-=cU07g}D1mrC@6 zC%CoJ!)xoa()br!W`FnM2#@y9u-Fq@JL}*RRWY~uR8>HkTG14AR?Dk`JBOz#&L$@l z(FDl$n+(RN>_%R5{FvGNjWU2a$r2cFZaa!rES*?Z>zCY^;nj9DDy6A`01ay$O-^Ss zp~lcPMhvi$qjbYIi%wrlj|70#r6MlQBkvubN#mb?mf(#`3-a@mdza9t*Kv8NhlQDT zDc^*njq~zaI*SfAZi@L=JY>o^h)oRkh5`n?{nY$h1%B)s4GjY^m2a7&K(TebFlf`b z3%L_OoOc!xG5Vtk z`ol5C2}eK4jvojQXkA*Ws5R0Z1NB;6uC%gj*GP_YE!+7~IxDin4ZJi^a`N+x?rKP% z)GjZ3MdM4BKTH4Ra%H&OnE)t(`m!JSnQ^iDE(7$4_i+KI=66R-GGG0tmp7~c*%e2yo*a0(13deCCOCY^Aux!mF z!%f`&AnMQ0xC`U|=N~`8-~8qY{^p}6VBH2-w~1z}A%h0y@Fg4>$`{jq5Ag%D;$h5yZ`hSE$+5Cx8n`oKhgC z*D}a9#0Oz9Lu)8lme6z$f*TcOp*LE+jmY>(8n7p;coF zLOoMol`n|LUas_5swI1;t1v)6gdsW9MAEn(AC$Dz7Ft(ld_!+B5LT zm zUY!i&M>u@W&PMWx!6->^JRIRf>>3zz3?{r-jm|k;9lGXSHN7IEHS!jb5vPUZaLyqmD)+b!^S|+R~t36u}m| zO&JKb(`jL4u8o!1j@=zQjjgy}+ZrQ`G0$(%HfqwbW@anaJ|x0z$=|Pc*j?d>T}+ zqG3DVdFLITp3|r?Oa>!N24mb>p2MxzF5^$$-IT`v+EPy*)6iD_g9`OIkd7*&>*Ya1 zIRM(637kd{(;qwitj-Si@DcTV3e`D0{i{5e%|Jc}wg>n**w&eBy^awM3~pxe!;Gmn z1Wuhai%HbMAXC8CcP>8Zjh8~}GO&!In_;MwjezSud%^Me5vXBc{& zhTIxE=6QdF1WHaXr&XzCW#;qq_@+o~%8s+QJ-VY}!-#z#SM?}qTq%ls2-leBYHt&h zh=WgAC<9eModB(vDRJd2r>GMIE5@&0u`$jy@#}OY7}*^Nxr*gVWxoA8N!M$|YNc5H z%!}=vjq!Zv7+-81qLCzc@7faHyS9uU-`ha1+r;v0TW(7)qMqj~qsq#0-rCA+&r-*M zt2ec&$pmih!=!XKrf#LQ>F>tN1=ptm&_JByA;Z6xeb3L9i!{i5EsvvsFi@ z-Nb6GhU*5r!Du4m1N8f23(IzBE$L`a?WFIK?-Ir`S6kVgGc5 z$vBa#(sIQc9Agn7KS}#}qFFD7OCYzH!OCkRI3WksrG52pnL!GlCKJX!(wzylx`Zii zJZQHVI`taXW;$}q{@Pp%YjbUMg|Xjj$=emKtj^)GysmEs^=1u?W(`eo6rf?Q@RvIZ z1f9ig47q-iJ7XC1D+G&HXFE0Wz;t5eU!3(n8x3S|#$SK&0{{2VzQSiuck%hNJ+$UK zXw7#E$A+v^uKcUp+__E%g)GxgAx01Zo7&2+5(jtAGM}%!`BWS=5w}+)M|}+U&v5It zOZeA6xQ!pZvx)cbUP@y$s4M?f6}WFB@3e`KC(P$04#6UxRf(6Zt9y3OQsQqKGM(Fg zftOwX2@++0#3^#|>Yk%Rt?z{1@NJXiA`PL?EfOw*QL#LXMiV;#{IhpeW;!nos+O;A zD^#l?+V$Yb=yXC|nAPmXDk6uD%(sk|1>dKvg6LD*#BnG9hTT40yO{FVfG`EX0wuC6 zcl?UrYL&?~7yX(?_bK8tmBDmwb|6%aGbH|i|Me*45p;7Ry7rbbn znylRprlAyQPpP73ND|c7v);VCLQte;gUM~m!r~Opp%-UE44>@c)nJG}JlmH$ z0`6?gn*_U2X}_&Sods_Hf30Tk+lU+S?o#Kl-PzsZv#i*6(|9OMMDP zQFrDnuhlZ=onj280R@xd&c9q`l*R_>QY+QT3C|E5SI5Q~RldktzNG)sW3L`!ls| zDbj+E8nyKLO7ZD6Yv?uWas|KJYNB4RXGS)Y!42oSZOnJYE`Yj>Q6X=-Xx8O<{<&UT zK5KUxMes^tsEc5U#qlr250^iw)ynUTX0P-}LQdma7T}RF8K`mZsE^-2+`%W0cJT3| z9elQRfc+#vXR#-v{3EL?A)|16MhZ8a0N=KPW7aXX+~?Vi6g5l)Zyon>Wv+uOSC;VO zcdkj}|MKcAM&ofRGiqT^M=V-qKKF0^D4tWcXYb8&=~n_1!rGs<+blVBp8lu25Yt%h z4qbwD&Q^te-bB!cJKs5UZpz*X)fbV6&f=)d!Zn77fe{itXxv-)V%hJ!{O)?#a2Z2E ze~Ib|3t~r|p=bI85<=SRam{`ciX}6n->N0aiXzNI*PtYdQTO?l*-IB)xuBv99&UJk z42j^eLBjZ&c*He_=qI};^6fCx`&i?f&c~F0BY|j)TJnk0C?YXndjAwro+<2{h&bO^ z{T^x)84Wy?l=e7g7FAKsRL?S)9_M)L(k$M(JTF)LpYELE!G0evkNWbuvtGM_F%o%; zfVGLmgcMciqVl;pIU9~TtH1m+gV{RzxS2k#^NLt*Xl3uqe|@b~q7i4&xYeTtVjFX- z#j+J(;N{5>4|Y!Qhv)m~)fm2aYZc$Wy^0^*U6%p7X4*`iXXYZ>dcuoq1BKC5r>EZ( z3zu$UmI=rfZ*O|a+VuBV#ERab`7vha231YoTPmBH99^zJD+Wjw(?P^!$geofC43F3 z(Ip%+VvD<2RTa_fuM=$)H#~^=17h`ioJF=5@=zH5;z_6kJv6R z?q`=fNrWFDnMh|uk{wk@9RN%}W+k@Lv(%Z98-`hs0kq|Htqsg}TbLEw_(kl4EdIg5 zOecF^N3F&oHUx;(_WaB~Wwxa;6|&nFlGMpH=99wWm)rXDTM@GJ`r5X0s^f})joFU& zS{gV}T=gf6|IZ)o;BP;?kN@Yx2iPBvaWEdE(`%!%)RR~IB@=^t0`=*77=4X`i;qiv zhUppeuTBM;9tY&SVUtJMVU}^Ra6&ce7#{aAI5@$TD~tH!x2~oRfOj{g@h==RHI`mm zX~Od~^xH{U5J}GUQAp*p@G)s@oI*`Hx~=(Hc~CMz({ zbIgU%%cB)*57c5n+{tOl%H@=6)*L;+6@qp4i|8grMp3OZ;d(6ETJ-NYQ@ zJOl5l&X0zD_R)M-BzK2RQLj6v?M#?XLRBl}<2jwcp=+pJ7#_97=OKsLBer(IzqF~(wzX=%B2pQrV!N{FL@}^ z#B_v{Y&5@?#$bF>Y`?hbW0~A&Usy&`u&15f6+o&dJJ29Y=_1K&&^lsH_MxXg<_^`* zA%7KLM9iFSL8UHVDbAgzzeUW9+6+TIga7E@45wdg;n~3%e)o6}H`iuyYkf`z3%s)2 zE6zfzTf7V3qo(;N+Odhec|t-%o|pd`XY1*4XAU%_yfdF(qNKN8_FTHBHHW$sND^5s z56hiFilZVGfWj%mFhNdct~tb1Jwu$c7w6NHdKw?4(Ws-_X=0|^!s^1LI8tEm0LV~E zL-J=lr5v>|^}g%~12cZ)!SnJR05aA@vnGxHPOBl$={IV%Eb41IMkaDaUs2ALmHYIW zvb!t2>>!;D6nRvJ7f|LJUc$@Uknb#${4LJ1CkY0l1oxl4!u@Caa^?T`kG64t>j=k; zA!#+xY1QQwobncdMCm`0ahNd{$~X-9!+cjoq_*lzHvg6aMdb;7DaTWz1~9`oJI6m6 zj->IwAp%*h&*M+tyMe#>?oHghyd-y^sAv9T0{)W|r#&S6#fW@`e!*=gU(A3vUlk&S z>vVRD8izu_J@2c~D<7Anf?ov>LcuZ+(V?p_0*Xde{nq`;4KHT!C^xZybbd{v1ldoc zbfN&PFbE@>dkiQ_kBl}P==nCBGPyyqm11`zKLWt?a{hDyUZMh2MjW0w7b=~_2}2JM z(3~V3+0K#pG~{v=Akp$L64k8yiyi=rnK=Sz#S+MgLCK4naiIh7?u6+7NW`-c#cdt2Hw6hhkIA%Ap%A}+&;zA z!#-Xe4Kd$q$lC$LS=WTyc$6Ms!^(5AVDp37e^h_wH8K!B8FR(SD4Hwts&j-Hd}+gF(8%Z0g98Fn zR~{&V7v?MG;tSYL09g5q>YT_bf#-_VFD6%IyKPpS1AlbT$7jzD@w-QRSnM?L!#ivE z;cIL7{_AU4Tk4{f#S};~BauV7alvYSXr`$yxuWJSruTKG5XbclTNUTcD191%I3)}I5y1#nkP=V>-L z6oNa9JZ^k*Do<8^8{6Qq!c5HeI6e?8=9ZYW}q?$UtHc+mX24>Hg z;i9G7b45(H-l|G1N;P{5cVHg(A^V3Z{ZL%Dmu=UuM1jd3lpf$K;Ap1)lX8gYD_H4K zhrB&Zo*+=iN7(7&NQH39q-TQ6L6WXc%bN&T4ZBC_S^v+Tyu#;CcJccMJNWp?E9?wL z=qz;QS%0~rE$BH;6#jrdm0^QtICXU4po1$OEK$-8}8lIv+>b6~0C)&cG-Z%O`rnlNGGT$U@#i z7Z7ONq^u_?FdEtu!v$%sq=jXN&VZV{wy;vpmJ;mBOd`-4p@kVkwX-bLSwt0P3eTmA z+7*?a7oT9OAh3ua*W?ciED`C34w9g1s0x@1^1YdOX=G6tj9Ca6AJP_yUPe zsUW)ZQNmL7u&D}y)$3%xc<9I!$S$_@$|R+{#Vp+4zxkOxy#>YUPkzQ(D2l=X@ZPm~ zyeWyJ^NX+aDt*>CC zXsP3wEF2-W8Iez&2e{%e61u&(a<0~`$#c7dae^;)j`6!Ed-%mTa))#xlz3g%~0MC>#o*AQR!>zsI9t(i_>7yO9msCx*$)CC%2U!l|7=Q;YgRahA zG89p!bg;q0`HCw^8*>Sz9PdnprO8Xm1Z0z~Ye=`+t zHJ@@M49W_>dRsgPVD2SnP-z&W6Dq+hv!e-l%mR7V|M4#V=9drT=hfK|ulgf&X4~j4 z_T;=GJSo!AHBsjxr7t5?68r2i3+Qz*$(H|C4ssl+cbO3UugvdaqOCO;hDT!z4*Jsg z|KQdd{`tGt@!$O9t~CC|&J7MVZcjYkw1dYtQKOjXTy)a7jU2?V^rx6)P8Br#*q0Tq zf}k22D66+J7Hlj+o(dyt@;^U6Iu@YVaaN_yP#(l>!Myc>RJruA*{~|s;hjH40kJ#CE*6JPRh-?<^?>qyftYyb|EW8HQ2I%! zOT|c-Lh8Bdw~UC2a0p`w#pLOMrEUjSifYC|Otp?DuJ_jS$_$zPb>XOzHJ~`^WitGj zU4iw)>2WHR8nK00D2uHc!~543q%iuK*a`4p4+8*)VkdwIoK??)pe6980tdp@Br~dQ zQt{J*ds$z~1`!n$AWbbd|I5o7nUaUP-o{kWZJe3?ih96^Jf0On?t8B?4aF~(9B^ff zM3^eX^`Av@cT163J-U?6%lY6YrqEbE(tfIi=%X>dA!m`-ReAP2y)`3U*%VH-PA84P zF1%|;;Q08(A$CrO`0V)se*M)puCLAF#@ZZK7drAI1E(Q(%q1Cl4dvdKhz6)_rX1ro z_uBQiw22%usCG9q&MMOCkdeo%HPkC+tQ>0HF_LaNfugdiDOCVXV_hksX>i=kU{p+M zctkslR=Mmm3h$h$Sx!bjeR3zU+S_9LdL2w|Qy+{*xc|)o9(=QpPaeI(Cy!s@!PWr| zk_3}h9o=S4p7j@7{k5Qn8g6u;uy|FI>&|0UKQI|B8oE0kQw(0kF*{^i{%Z{5;TXf? zF;+V*tlXT%pT2(`fA+x*+`Yb%1)MC8Y!m@cJ+VA=KKHbv_)9UlL(efEMh+uAF+Y4) zJ&t-Spc7YD2oFbgbxtCELY`;S;H~$01qC#p{#4NuS&s=rQ6_`+`G9dUL%3&k<2WQM z)LG4#2e_HrWuFF;Qy)>DsJ!gc9W19tSw6H`jBA}NZUL|sdO|ZBD->XRr7Fy>t{9IO zmQ=w<5#7Z{%4_b+=eT#;i;qiSQRE^VMJEzfE;Yq1C}{sn??-U>WMT>D)gNGq##|kQj}!D$i!C8W{u&4%>~@M zJSQ_g+CIUvlcC%RAfiwAT1~0=C92}Va(g-#KE8oSJg7dW8R~HU&J5(EyisF`@?7W} zlS=IDtX88|#mrIXFsobI9hu-hU{U)tejTt0EhCa|7Ldi!d?lj z^ziWbQ^f%Bj-HEshMCgeNzPMTuI`Iy?DZa#=b?|r33gr_;FtGzaAmfQtFs;a^SIY}FU>30^{e&QO(h;}pTu_|}7ab?rjNBF2( zBQsMKgk3uu8~P z|3YP2m7&HRN`GJ~6n#yd|j|;TgJ) zfvhyc+BxQIpRPaVeW#iR`m+Eea%-5vHM#RwI`+aHrzkhR8IspFdpS~%L z|A}(`hn-80@X1-X9ynEE))xW~oA1IP!z0iI%qw0@e_SLjVy5MIcrFaf0bI%_7AzH& zqPkrfe+2nydG3(2;cB9@J7Gj6rQtyWR%=g?9?Vm{Nnfge=;7nV7U>QE+HJ{QKO!Ub zxpIY6x>CuXvbRGvLM$`6-~ z_wcg^d+3Xp0OEFl2183k#Ll*J7K*1&7`VENc+I>yeGMx4gKVx!&wy}u!f+;Te9il< z!qiRmou=_tLWmSq%;G1iR0!YFWYKb(x^W1Mdi4>(JEl(MrlcYR!>GGaiw@0U%Up_U zWx&8mN)zFkXYD4M^*YA&8n#Dc{PM{zUL5st=gBVae6@|u)mdC$oyF2@8%uNTbo+L3 zjU6u#OzC27-FF>E_M%@V7eDw0YFOOIXNVzulqMbvrzDg*M>0Lrg&;zU=Ty5>1CoZs z__X!Y<^1q?h9l4Jps$Pj1+%KQ_D`|BcPh{MfAM4&e|WNsPoM5$M{M_>@5-YA!r&Ei zcQVdzKd=)s>sAGC1V31g6ITAE1NSkjRE~pIWuy$z>a@zG5&XsVeUsrBqmv<)+f6KA z?@7b|&&A6Bjg|Dwe}(~5ADzat+flApgNKhDH6!x;& zDjJ>=n3Iw>)szmUw7Xz+H%I8{^!ci!ay%**_{KO|;sxn6*tp-TrbkH43cmECpq{n{ zO1)0G1%RH)!fJ0Q(fPCkhQ zzwGB`j%vcD?EO^Gu#6rKx<{dDIPkB*fllNmM#mbI) zPrI#}sOZMVz%u84ZM+cSsY%1#LsRpdZD~X?oxFuGH}X3Tc0vgw__Z{~^@>zQlqv5^ z#eo}rN;M9ORpB7GR;_FNl;gsDOI;%?Ea#(42$7r*#&3!6(lTwk7%@d1AP<_2EB zwuF_%o`fQt0CGn_9wz|0GO7)5?xzDCNKW}i4j{S&mDFBg3JVrb-P55vkySeI$eZC@ zY#_#a@m!5XK^alyRcuyBh7j@vT$8|#LG0*%!8U3_=Bc2)Z!{XfYHFUp;;+o}NvVpjQE~u4>NXbSZBE$Q3^W zk+L%)pn0p+1$t53*$VFYWjvok@=$?wG*~)eXu9}oAkhj&{B=SzzS(o5yCm0tsxrtO zqn#V&nJH_gK|b_ws-#cR=S_)0qP7;D+I1bb`Vb zy*#)$cdtakaDnEYV^y4nX-QX?R_iSIt*Co8G!rjtco_WSBxpWfr^VIZcRo|mF)%e7 zoE-1+infUyON~YiwQdW|Rs(0k!FD>t&+hNw>Fx<`Us}MO%k#LlGJ|U?Vn;v=%d_pW z<=K%Po}EEqmZBKbW?PZcu7jM4bqPg)5Pz|hSLg4G;7C{N8OrnCJnLYqKH}<66Q-I> z_$AjmjB-OZ>-o3=&0n7hm&{K*OtNDqf|rETHw{}49GwnvbasM=-|XYzivxW6WEY=3 z-NoZq$2hJ7Nn337ughxy^B{KRe5!BdG3#~9O9y2`OzD)3VOi~%79*3=!!jr$lPmwj z;{le$%Kv7sIP?F;jny>ZU&1q6ffaL9^!%X>uSjewi}(r?HZ{I|1ir`=xDCe0O8=k) zJArSMejb(L^6C4N@^TJBdivMjZsnCZ04mx^uIYW6aZB%3jAtO`pLD_qMC8_b!l4tw zM+fexy#hKac^a+}V6lwjf>(#5HUglDO#GE}{%V*qiKtIihdNi@5EyxkCf(Rn;V8Er zRJgV$sE9coSkS=@-+|pUbm@bL}T3lVHY&Xv|R|-f%U;_ufTpPTqcf;K}m*)@0 zbF;tw{>1Yn1EWCq+OLUQAAE(wkIKYB-&2fqyJwQE-iVk0;=Jekn+tgR+PsANc;^g{ z5Bqp|GQy(V3DCe8VkbaWzEEIwB-Hj<#uYQaQ0-P$nK zhYqq81Fvtx)aAVGQ)FBo)!xl8&UU2yr*ja`BB}}7s@A9j%`|%Y*H^jlxD@8aEMJVBDltrhamC@m^iLdXW9Mp zX@q}a{6BelfWQB(Sn+>^``bsjzkQ6xObdtf-K8Mg^2QSy12mqsl8Tg%S;kB$fE@1J4$`U>8@zJfpf;0FHc&)?E_ z^rXxGGWLfKt9o>;xKR^^;hLvIPbqA*+}yX1UU}@$2jbgDS^?F^m7-Al%lkD=GaECX z8SHM(8_FByudP2<=N5;4VLWyh^XqH6J>|eN8+bwf3B|TCVHV}5n71RVp~}NN0`ADD z$K1;wtA;nhEY3N(v|}3Kd*|~9>M+-}Sf`@o1xRtrG^FIlFK#@hjZ_i>_vG|TIV-wi zbfUbtYK2b3P37EAJC|tC9@t$Qgy-&Nl^$->KfcE;$R!3E--YPru9>RA{6>LQ-*^p+ z5I!2o-0;dG#F(6NR(G;KvvQGH(yiR-?Eox`E-D-WHCDqD%A%}*m z$T;a}t1)!M_z?)S8aQDbkB-hT{%Q-4c8+mpeGYdv=5b|p7FR`#fSDE+XWDYRaH%+C zG|q14F#XVly2$9AZ1IU3oy8oTXU=CPX%$sX_WbN#UH5GQ$ut(n&7lQ!sC~Rc)WEW&-(v=#J%^E zCdYLk__99RcDkp#$6^LEz+f;i1PPFmC`zPO%g{<2q1(7U^LK8TB>4(U`BQGGD%Y`E1&czI+a!J>G}UUY@`q0IXbC z0W-*4uxsiYFp!>1^gEJ-KGF6!{Lx;MG^kU=eZA>ZyOO`M&R%g?XMWoMB0ueaWe9s0 zH{i$b-GD!S?Ta<@!ungDOeIsKO*(f~SWwv`dtcdo?gV1QhPFv5SNQq`1bhX78@)K)1C6Ff7Yjbx9lk8+UWUB@;8BSrPB9R9A{cg~6%tipIE zrQ}j0G*wa^1v2tR1h*M;(bID---RBV+`<}Au9&GI1Sd#_x8_g>k8LC?UW z=O^&5&raa$qchlA8^X#sbNiha_5IFxKr^)0IN2MAg>Db`tVRdPZI+5xd|-+BB5>=s zeh`Z5^;V8aWdM!*+u|V~T+0SMfML%G+tJw+o*taK;2+LraO>h4+`hODzjyC4{Qg^4 z;LgH)k5TBcuIdMF*F{)}+G_Br(|nl@&W3`Ftv z@#z{}<;(abxfRJtVf<8bD(ceUZ|GQ%YQV_!iY4p$fKomfaCAC_mq!!$#ix(puYdjp z{Ops*@Uu^!z+%_~JM6(|WdJK%E5(3sxs1J<`S&j+N+Ci>!F5--xXm>*BohXKm%TXw zFHv+FO`FTE=^L0G&S3KL#0CE!ymkqG`u;8W4?nr*g8xOnUk*(M-~lYJ5{eC3c$!!xzvXT*k zz9mxC_69ncK??OFwG+@djLyN!0~G`Co%~=xcm@8SPo6>V(`Rrvo5PF4Gq)08lj!v?FF*y5~!h0_7*SyJeo)f%cKD;V3Tqtn58 z(i2;1LXi{dZMlaYl})siVh)`b!ijDhVzovX7L(hS1q_sj&1FTmo2@77 z{WBJ%(16pO)n}kN@XG+q&n7TGn8DSx6}WnN3;y^!H{i$b-hel5?zn9`xhz^su6on4 z_A0~n{98#9kH`Ea{(-rI(!r_Xb(Ufuvn34Ca<0W{ zR4_EX*gj#9LHP}&;1#I!bz8;lt>~2Xa?LTx4C33!pv$M0Y$MNF4e|=1K7PR+l+YMh zc*IlI!MNMyhNKVZB<5tGm#Pn+Sc)s|NWfRQ)thZG}g=T5cNbwkH+V#%MrQbXjTE4 zf>)qCZLUN%P6erbx^4!eIAlVyznS7KzHi6yPk7V+~`sMWgc6!3n9XRio(w{h3vJb97{P<3{Tx3V#g$|Y&j>>txB01 z!D4=jY&O-d8z2y)?Ie1oJc7cl=5pIdvf>Pi)5!uR(*=C`%?tSZ5AVa@{`wpEyASWf z@q7*^iv^5UM=;tPyBjI;a*n^|{$3MB~yiOhtb zh-|C+S>6{^Kk#ATh_EE6gEmRmq8$sSR@x?tJFj|`^0faNF~(aq6ok(~w|RbAAdiS| z0EgD$f&y%rCN^|ECnK;d9xYP})@%hpt7^poD9NZwuv#>$>u`~169e^zcOyj08{xa| zVw@vWiTyynsnrn-Q)n&Jm(-g}D150K&x3+#PLYt==-Iry1WEDK)Ik5~gJ=mUAfK(v zGdOyt+Ob7TJ@fR=wGGIA?>hYTCr{nBfc;6n5?}&@L2)}kb5eO~!o|1yv3q8rM!)@wZTXJEo8qm*g`&8-T4JNxe^+FZSYQk9s0-&G<_t7 zI2j+Lc}o3T#`Rk)v`FJy|VYO`_kN z4v^^hG!!H7x$`X@blwVXQoZz3dWU&c1qOtg!Tco|yHjzc4W2kFx4a2uy5M#mrbUM6 zL+fKqno+#AR7*!Oz6aVg(VZ56D4#mnI51^h}v_HIKma$+NxF)qiH*~;MJfv z0{5o3-p|Rf5wkbD%nP( zc&DUVU!FBRg2Ax%1S~j6d>xokG??Sb!9gAvUyf*S&1(#!%llQ(h#^H9WE?cuQqACZ zG}c~qwc$_TT=kH0(tw2acyJ7%x<$>@${W0JK(4Tjl&RfX9Q#h2K_<4 zH~h{oZ1GuHA(`^BgwJzM^yfkJk=cvjk*@|G(uUQsgah}?T)1H3+dI|$!X+r*a5 zHFL$)bQxs5tXQG7u<+I61NhlT58!V;{09Et5AVZ^<1=`XFZW*?!C-v^{ayy6UIz2o z0_O8_0DvEbA4%L{s#d_%;YRTGm!{q7ilJJNsJ=GdKhW3#O_#Ib&mfHiOB* zsSEyp`rZxr@%L`QkKe!T=$xPSkK5p%%@OyUp^}#Xxn++`Gm`;2>Ik&2F@&#b|3gSb z;s~jXhJQ=|6S0!KWNLR}B_j}m^;gLXdOF?TZ3J67LOuihm?uBv+fd)p}!Kgzt?@ zq~Y1LQwEQnD$8G$FG8xptBqznFKM?CCCe&Ka}x-jxmbj~`rz%bz}n@vsk1k09m4+WwJ<_TA*W0GO^U*2B4R)V zqH2s-za%89)T3zQ;MbsTLqb6p;Z{#hC0Ez}xoy}6%&-Thmw_2A;IwDp!Pyl4>C0#E z)&4R3kKaCr+q)0lih%r#fJ<8|aQVWD3;g^2UcCaq4G6e10t&$XRh7m=(05QZ3Xp3o zlA{MdK@Uv+SN2`C*I$hVqi9F$ zplZP4)bKx~*@;*VeT8Xx#jR<$ZGJj~#pw+0x8#5DY=idsVZD-ETYTj?wZ5xv-%B@sL#2!5-ni;qR+GN!?j?FMz0EBb4P zyp^f%55QR2Xn3jZd#Ig-Mi5$-kBz`}>TF>IvJITnQ;0iP5UxgjFTk)gL!xf1VokZ3 z#Hk>IsH|QAKi^3Rvv~6ToDzPmzXl57lJzq(qltuFZp76lw19q(jF_S~#5d@eiXL-; z1NQSRz`d)R@b>i!urln!WVV2R{Ne?C_V@@k*N1NDa=8pZxlbL9oEl*7@gtsz)oifW z&Pa!t+L^<2L}3_$ZiqI47leD*A#)?a7mA%nE_;RrNkN`)zd;p-| z@4H<2p6s*94E85e`0C4Jn0-8hORHnJygG&t?(D+%@9e>Qw|8KBeFUSd2ZKSgOVHZ6 zcWt1xcy_kJQ`~2xw#JM3u^qvp(84qK<;0gKgJ#Gv9x*i+vrJkCi}nrkb&~ov!uz`{+LW_uo8#CkJQn{ZMe&%Ma^MN5Z08lD>!)DWP9Kr(!sxkfKGl067fC^}e9EMi*n2L%mEH&z% zY9&QE6zBH*PhXz8;QxR6;T!P5n^)ocZ(c2C{>w8G4B>y)RK{+yU0=#{C;CT5_!Z2k z$Z;!NMF&!W5Fv#6N%*jwzvcsK)82EdH^v#EigdT61)d51IM$6WowNUrN{V7c6V*?G zqTt0eE!Gv|1bQTcH4KlwES1!Fq|_Fkf?D$MZeD$?!|G-IiD1uZiky|IeLJ5%>8FgQ z7{!$LEmG_(gvxrSdQe_cX1A*4coM%G&Rzs$^G|I!kyq(|@Idp*lA6#Y3J=ACmSz_E zpOP@WSA{oTz({IG%N?1XjnzN`(bPnHx?ZL1u7Wb~`tBP1`*$zHg_XW@Bp)1|!Gpt7 z81{NF?Dxv0Qk2yM3R#YS^-9xZ^m|%6Du*yZnIoL=)}qwy7A>@HjZqjUZPtLIEaVE_ z&>$b{ZP`QB`8MnY1)AWAUAU4GJzDcIhs3TX6;xw; zy6Xk4K<-eW`8!XN{Sy$;e1Gq!^sdW!04-BYG-aP0{f;0QWD7;0+v+r2kWRX!m$!a@ zs_}Ii#3a8Q{U2$QMDqGproHzV9tG{wjE(T4nIMp+IwG4Q6O%6J+VL=Pc-1eIFkAw=V);8@I^n7K%EBP-60rJD$`uz+bpWV+4Or~>qKApqE2QOjr`4iY0 z4Pbjbgm-Ul!MiuN;k&nYVbIH9XLAheE5o{m;;ew;x-vHa00uJ1$^gihSsb_t$ac`@ zzR@!v|7KM{L$IVxWD$1p^2NR{Lj&mOT=eIvpC;A8D7m3gf3l!6cx-Q z^v*S5IxSr-(?{fmW|%+?GZe%$dKvFk1&-eO5bBRq8hGuC`I)$!;eL+f-luwAATPK9+D{j&BLdAOjE#W zduKRMuCAP7#TZsjiV?qZ`0_+I&#L0BF+yspjF2q4DmV`x-9t=q)>4&*f{0izMXR2b zrXOgLwgxlV`IRL})GG?ea7_YZ;ipRH1QeO)b_%gi)lbC?$pUWdtiqqXxd-D>54KkO z@Y%Cd`26W93`Q9YM!h1i$cmK%mE2peE?Kl1p#V=XBtG%E5IKr0A7%!DE3J@^AS&42#G2*K|}~$6=tA9;Efv4f5Y0mMzy1ws&!+6V1~4i_{E}sYI=s+ z)y&FrMIGi${EOFTRXBw?H>mECXXb^*?)MC29mDgp8GQQW2>#*Y z$MDLIe^a}9l&oN@4FfQ=hnh})Q6S+syhfU-x`pUdNEtn14)u71+1vr-lbBkLat_{ z$7mfvsVwCw4{luGpRbmfEx^ncFq|*oomY3^?duoeNAF&D!T-ezD{h-bPRGm?+XR3N zs2YVoCG{O@cJ!TBkKi@N+(iLDt-?Y~OTVD&{SRJ6p7m0cK~oD3bZ_ArUV zOCM=#*_*KrQY@KKvd8MGz=_-w)Xk(Pq-%pUAZ@!#!o$>hnK<+cLK2|h+YmB=2GsS& zT{`s(>0i9(*;E4n7U1T^Rd{W09kx~naAji%|M}++;Fn*%gcUP{Y|w*zvNFH3Jl|)E zgJ<6vj?_<#zKXLzmb9IqO@Kph6G^(thA?mvd(pv+ih(Et`#;b(e-%S$_Zo!o!Hlft z@ivWfh;=1~y~hiXl6agTjOD7?TWe~^Jq$-^S7LYiFAPCQ%9*B6Yz+@N!dg+LSZWTf zuWEBwzV$PAm|Irv0Y8~9;FIS^@T+fL!pMO8yLRs$lr4zRE4*9Ha;49Xyu_vBJy z)HK|^+eJ!!S`ED9v&uz)S)Aryr9Ak5x_=74{OuF?`6rLv-!DFW3@=Wn@ZxL=y_Es< zR);Vg4TKqgbO=P0-Vr}iDb8gloKHG(&}e6Cq}G{~{CeHYe?OO>1xzM$7|#|knlIq} zTYK=o|LI$B>*^NVzP4SQu~5(a7b|8YHIN#l`ZppapiAoEnfM23Wds8gBx2Y;M2o8U z;#&fet80C3TjD=ec!Mdg>G(@XU#E)jP=wIUx3MKe4=ZIem`nEz0 zWi_Q)vH4O-3ws+Q`0kBuIG$Qq8xP>)C&%#d(_@(CvnsvJ9aNRiR4x|E3Y_4pl=gIN za~lX+hG4k%f0>8+dOEW&MmxndF-xTee~iO9=$k%ubv#iS5FV&>u1H^>056SuCSoerhC`d_@Q}r~20tqn=hSzq6DpvGYK4w{}`Wx}w<|A4HaxV<5xpnr(IV zMOIvYI60lc2mm&E8GPrpOYq*SJMjB&U3bC%=Gw>w|HXM3C@|~jtcko->#Kkqbuj(@ zO4Rs0CvqjE@)Wz1fUo?yk_+N*O6UgN(?-71v_p!az_`V)?+HRox{I;}JgvBq@bq6W z(H7wF^OU}=NF~B&A(>7Z*Gw<~Vg}Ue1pB6HIL(Mh-qHxU|80%HRO1)MdzMj(DcMjh z%mtNZm~dZ_&#mq`#Wg3L%B}UVRxn}A7vCR=n^!qB!M*qm;;Bl2=OgV>36a{Nx<*c* zhF6W4|2#$>1H@{YFT=wlymD4rCB5fdF{Vl{Ap8uXs>g)&#~0pxnGRjWSx4 zGlrKoM{sR>)dl~z_SWD({qxuGoBR7<^VzGuh4HXg?p?JopU3f#rv^|vTaK6-@Cl}O zdowRrH`dax9Itjmf0(bDXr{KybTl9pYLK7#{t3q4#@loY&4)(KSILt8@!F3c>ih1& z%dfZ3c)FgWL9eOv5i{P@E-oz_bI$Nq`{`N6u+|jXg=dt}{k|T*0p1%=%X7TF{wS~M zH0A7Zf7EvYrJK>W)&>4w?w`6t0(SqZ+#5!+}MV9Z(M|XH@D!P*@oTC6dp89_6lJ0r% ze|j{5jZq(VMg#c6yI0_U`?qhw#?E=B$YX3b)RemF#AaTo`fHwoYg+X z7*zfqr-CpzKpU;-(=;}h``bwIOj5r_{ozP4+tgo!FfI_tozCfe?rsIRv$qa^dhZf! zjtB7ThX?TCgF~3i7jSSgcL$OUdzl+FSXhC6I4KsUv+9)g{d*9N{F*%&PDY9NCLq;{ zL*1%vB(oG`t4%0hc>730&H#%Y1cW>5>p)U(DL}dm#R@@L6rhMDsU8spOT$b4=25SS z0@d8{WB4PrEo{9_CxC*czAdQzx?JoT>0<;T;5u7 zD+0DRMsRUs47;0S*xMYtn+Jx2KJ>ssd6z&Fe^db{IU}O-MPs}jR?{H`x||aga`pU7 zJg0mPbkm>JEemyy%+$etk-_|I3X{nhY!3QxeR~alaOX07|ITIj?i-g~@V_$Z*E9b`;2&umexd1B!(G8R zOuvlmi6XgE;RS4*>QhK?{kl!X^Ii({v?A8ah;)nEBM?H;Ve0>PLQ2Y_>N2^On4gy% zT!#E_=5TVH^jcbUqNJ|afE|#&vEmp0Le3X=(Rpak51H=Hs`OU5u6|SBFO7^%Y>z`d zLIP?o52`qXlR`GJTCo$;;- zhpjscU~gj#o8vybdu>$DAB8t0PmxyqiJ z-tlv&zalGff&ewX_s~M^K;`t>e0?c>maSlllVB6{m1$N45c=2k#{5Ow?BUNBgy#Xg z8TRUxEtBa2j%Rat@Ms^Vr!yD>z=|<$Tfp`FT#u_4;Pq=4;H_7-p`UHTh4nFv$3*~? zp@FS@1yC{Auy8jERD?BP>dnV|AEn`sVTCIs-rq79f!pyI3=rMJezeoaRc>3;zeqhO zXO63beKZXy#cmf}O@zni&^yM>nb~J%!M^l&&GMMLAIga`;ULC-| z7#QZ))s-{;P_EK|T7sJ?X3CG%v*vqXI#E4ju--F*w;l>40*OkF$p4CD$?i_2_hgQ6 z2P5V)|A%LAx_=7S_cq|p#Wnc1-@O6<%b>tK)(DEB5>^%2gU!qd!&qp5nQ6u=A-< zX!l6vgwx#hq_oFd!9ezyhnh_uG`0!C5$zm@jQv{O&GDDBtLDV}K#0t-($P-KNpgkr zi&7DFIMX~*xs2!#wP5QGb{^NG8{h+i7_17zIYrx*-in}>rdwm4k>tnYs{_o3Uc(i{E&kxVwMZQvF*mEnU7MTH?Wzg$22L={#=Kyx;dv&+8zHm>T^Lf2*!NjNeQHqSuZ7E;ycCGXEz4-z8v()Yrt$@c zWA%l3DqFYHY;B~Y^8kRf7s4BllbjEd*P6T>a z65va(YknrL6ZWd9t?52;B*HeO62&01()rD2q4K4uE5i&nRtE5+I|KOO)oob)#~wU> zc?O?8KZdUlC$P0Xgq3m6#UzU=I1uWjTx+Av3G+4`QPtsy9TV1TQvJlPS9;UfHY4WU z2E64md>JAK6$^1sr9yiDNvQ)9oGb6r0E8`8iT|}Y{b2Pkf zG|J%y)u8`T*U>ZiMj50>v)fef)VG?JSIAW~bu;{#X#kfgzrJrWTfp;!Q+V|J2tNMi z1$=VR{l0L`0rrz z4RHFi1pp*}6UPMP%|PlQEXbT&iW#K_mR(Rku$f|eR=z(Hh6UIiO&0+Q|+C|v&19?TC2YY$H zz7|g;AhinM>Rqni2w_-q?IHiLfZx}^#`YL!Gt#w7AJGbwc^Vsm)&+M-7;x<=<9e)| z-Fsh~WtHswEqz0zBGh}r2$v>PaXhMWmSi$se%wN_KFOCs*ccXVAp;3XlW$@pSjfb? zg&?YfYY`ho`^y_dqLwp=Uzk(0W<>eRHp?qzbg29quPjC&iC)SFuU;&B%o=NQN8c4Q zBw6WD=MGfFPf;fv5C72DI_Eogc7huJp|Rm(MVd^5C=IbHS#Ya5exh<_nnYpTP6!3_g8& z06+ioxmyvixiW$at3!8AKz?38zP)F4G;n7KY;O$R>H@dIpge3X%MecGthqGM0VO`R z(g_eSO#Zb5xTT^lmg!_`5Y-ZTV=P*w;0J3NI!`43l+!9d=j3cUhqGz1$|;}4KR%hj z@yXN$_xaz8!&7*9cnVJriofSa6L@|)gOexh<$nSqe%Uvf-=+Tmb*-ipYGo>VIn9g`3i;fyLA+wg^O?r;pRg!+4F8`Z=c8xH9nca;u^H5M78J z@S0%=AMu7+gomMEl^F)HeHaxqbL8%bM`iP?1I?fbdaJWNUQTB4}K*xAUp3#`Ix*EZnwYn!mOI)bgWF=WGh`FeePASFb@FV)J1 zddood9v@hVWC)-9+IYZTuegDznttV=0w#auWEu+@l(YEdvi^z=;0*$B**#m#VVdvd zKbgYIqluf{|MbB=JbrcrPo5pYzdqcDk00*C@!14U&ZaQU2T1d+7{dYdMg!;%GU$&7 zZosAI1{4-W-`L^`MmdrqiITNeOUVDh>>#R(n1wLn6V_M0JLv1nG&4=~e$4-*@6n2m zYOjC35@kNOZt4H*=+p)OKmG0v_~Y-s3P1kdtHtdJ?mUHprLubFpUV$Mh^SQsOZ+X( zagaRY`0Z5zM9Gt-D5YLcj(BRR)S`Hb6emo~Htd(x8W0%(XxkTpGcP|0??vA_ z5aJ2|qoX>azb=<4s&9y8TVC}MO%g6rKPlDP&_{u;cx6VYTSN0*2KR}WK}APTR{Y7D z-;gEHUy(O*4qG2`q=j>77)I(4Ah#u#q)1X(n%;_>UU$Hp)5$+Gz3L7N{A&LUzS=*9em`@6#WhP+*K%##T9S=k4rvJWOE6JEZK1+s zY|dFvd6nbd5%hb2wgFA9OCEA6)%^8AUA(x6V5`)gp6#h`mESGPN9?Ef+BAJxPYj4v z>$V_tCXFotS4*dDxyL*o7|3Na-;ZubeYXW67t?uW;MiFB;vhdaU|H2U1gzyN0@gZoZLAK9l>@_Gxk9_RS)|x|ZHlG!LGp$f z$dWIzKhm6%Z%nZzA`j@R8R2QUB>d&^)CKvcXHz(x%;5B__IL}0n^)oY?p}pgE^WYcHml24 z{V(B>MlMAkN?SPbm?%5pKc&4Ic4!4{N{Q5NJMRFk{h9g#geILkdR_GqSSSOiqI^{NNeC=KFR`4Vgh+>DN&b5EWO+Y1 zl#YEq0C4Zx1-Ey2du0g!^}|Q->-+n#GVa4lHh}!>tbUf2dtIwalBYhfZ&fP!@aPJq zgQZ{C6*$z8L|_`4%dqc_vuT7uylUl-k6F`A+Mtw%A2keB?KGbuWao;6u?wljkeOJD zmiwu#&?ud7t=qL~o2?_3GJ{{AI3v#>>3bt_C9t(m><1Xo^^RPZwUWZsrnT zZME#a;zd)e4Cog$$*PqBJT} z0++W|VP&NctE&UJc5xl9@2tb_`UuSW7_uI?Z3zARub)BBomJ3--*uWVW-!g$IA1tj zln3!AXEXTn=@ESO>9aueM;ga}r8TP;HM8<-mY1`^we;Ud9*3Mvah?bT9!qI>pKXV%J6d zw8ZsjlRa|wk5G@q-zEdMg<_I#$vB(A%5)CH*&M$6$~OGZKY0`G-rR*ZZ|=I_KR@ix zAIdXb!=Fh$52$#Rb0gMPb& zPYbt+tpHZ?>;86XM#U#ED5LjJn3q#~HAO#IGNYc7LTZ3zj4DDdd7+w23p`mZ{DvkZQy^0=;702_Yin0B^7}28TEqIlsBpsA zw4$v_4tZ?%-1tugqLExFbixXmcXY9$ZRr6k(Z!ZWa{#_MJ%Db52UI^Dfow|98P-fbG4J0 zW^FwQ3Pk^zRJ2WM{I`ZrtHb=D+$WtcvmOn=1?(^?X0of3)90o6c{G{9@$)12`sfta z9v`^8gFyyct3$UsV13ww^-Sq1`qO^MAn9V_kP&VV3c2F*vt3EXT{QP_g7rc zmX!yQRybFIT*W=rA%`y5E)UYP)w3-E{ap9BS^dcz4o)X2wa$*#e#( zpSi2~PEV(9Kp@Y1I-SGI(-|D+aC&(p*@wZJlIP`qY#!WD!rNnbt0BGqpKU&MOz) z-v@7Aal!xg#@Jo)m-m0QTA-=adjEQ-hNrm(5u{7F-@=R|cq{QDLQf`VqADW6?CE-# z`+^pHw?oWt@wO}t%k!lpvscO?;T9Brh><!}QmLDAZ%sgO5739-39$6%K9y z;O5Sn3;y4@vJU^p&+fzL502mr04B!5>d3%&*n>GNz|JdJl&=z6<>?2+E5>3%HJRn9 zHq<{#jcxckq&5^MLZfebuPQn*=5W*%2{i_q8N$!sYmeVHC93bC6$WC30bFzp1BYWM z_XcyV6ARYD6yf&3kW#)r^=cJ7I(?6>W#(GfdL<6k03P5$fHFrJ+~xtjJN>>4yj?); z0_+9MtcByr4DKIIU@=?3VqV|<3BwFvn9ug-C*NlPy?!5hgFb8w`>;9e!_L|OcGrfm zG48wV0=+>G`uSFYejlDfUp2$O zfXQU$W{chRd--zygJMbl@pJ~q(>d5YXtx$l=LB_0~5{X-qxB6{-|DI;W0)(XuJET2-)H z6pYGx=^;w_)Oaxk8QFo+^p=_oeUR*MYD$Z1I+MLsE%EXOJ$t{(&gwITOs<4r>Hh~_ zPaE$@|Kjxw?IldLkoF^ED>P@Q^Ko8r`8RgPsymN0C5U2l9Ncn*0zpRyW1*(HdbvKG zE+jv}H|7+?Q_Q)J7L^m@p%yjRHu=-?@nAo!GGbpWf5ijd`n6y*>L{$ewe`(~ZT>YC z$b66O+#L$|`rbPHn|ph1Ht<&u4&YZ04&h`rhZlzv81{|ZFI>wKc*os_af+#tYMHun z?Rp%hRzP#xNil;T(f(Blo*yT~Q7a)bOa#QVTVrs*C$>X!3zoDo(c)CqP^<(1;_42< zM!X!Bp(Ysjt`+N$Qk{Twy2|%ww!u(ZVB|y3ZPs8Rt05)d`5my z%5vE$S$XK4akmuaWi!YRz2BeCU9f#Hoxy{{GZ^#?4Dxdbdc}Z4zGmB$L4H=w;AYhx z{_<+RVvAO_VxgJwcX9Xvtpq5~DarqeQ~c*n|K#=0@@4w{UOB8_p>F|JE1KJKcGxrn zA;vVz@yoGJVk)Q$%u~{O76g>ft)?n!i^YLOg>9W*znvvlAs|uxfC_}gthx%Z6kc># z-}E#;<$ne{;{oj4xCq~W;|hHL?p1i_)~*Zw$HP9%W;0hlD+gTgnUbQu(|iQWd#cJ$ z+m43Qd>>LG0_7D^@yZs)82U|4UTI0p>2KZC$>q>38GK-;tp+8lHB075;?JPrr2OBY z8^dS0#Eh7jB}Q^4Pf^56eGywxSOFGwR$^5NsVx;le#q|vlhj?P+?8k%zbK9Lypb|b zzwM9$ALo$KGU?)#RyTU!rxtT#r%kNmS&e!EPtGV09M^;}^$bRgtvo6j9JC8`!$UUM zg5kZe0Y{S+SNk_%sJ(2jcin{0#M&qc@RV){)JJ;LV7Lt>mxdcD@4Km54GJ;pnRAhW z6h4tK)a0sLGJ&Te5y&yaZRi6NsBn1&q*|TvL#eqfmgHVo8NlxP*aiRZ-PnTv{ImP; zY<~h@?w`2Rv^UoVFdFrm8Mj*YsAq{E`PmGt>(Bvo)v3{ql#+HtJ1(R#5mck!Ur(`Z z+(d=*qx~E2xD>fs*42@vUaOEdiqB+A`ntWvlH1kTpCn`7MxfCx15UeWx+JXl{kkDR zz7zOXENHC9g)Df%d!rGU`tUkigv>>RWs36y%4`3MrTK*jR;T-W%kvlDmeuF8=JRT% zeo?F_s89W0AQ|>NVZphsY;i?%wgke|fn*-U_p;2LL*NeU%irbKl$Kcr?o5J;8m1mV zSS+fbv~h5(CBtu(0XCi|Q)aL9W4SKC)HM+M3?9D=T8^Jla$!1r!kgunQ~ZTQPSe$#C!%LkJ4;D0us zyT0hT(`JLU@+6TX>d=^m_oR#x8%I!3^_N8}F^pe=`9%sK%q#i?mX4d=463ukb?ezQ zgwhnU>fd>p5*uCjYsha7<0ZKzjo$J}!R7s&9JHju0yx2s)U2^CCbUG;;1oODwpl6m z-Q(k>=q3~=OQlp!Q|m2W_T$8{(m!&}Dptk8trCgz7*>HCzu-}Qr+zg&2ljO>`R13W z^uR%hj!jc#1zlGT7DNI?%SrWW9ft7=)yLj?eH;X!KngP){i@BDg?l-kVx^++rEc(e zh_$5oe?TD9@k;$7w?qh0Rd5(HO#!zFoI(IvDPbs15zig|shz{PXWVk%KYV=~wpR!6 zvoD{+KY#fGo*qx(>A_jC#5P}MY>F90OGn6Yn?nr}SEmFEL|fAQtLYsH6m5W3o_oH! zQ!kg+WSG*B!;RQJW*yTwK<9SLzb?(Fa`Hft4iYt1O4B3)dLX0>mdQ_(E2J?Z+C-Tl z1fK)+Ht=G4R*`Lu@ZHvDGg4b@Y%^_YvSJ25v-yE}#fpJN6->KudkAB5xI#nX>)`ZV&j^6{aPfQT%QThbdt>O7{yw&~=+~|9Y(= z)*dgjk`cLY8W6YhdcsoM44yPT776kNc_Cu3Qst9z^28k_3|;bE))v2&k{yH?+em^G*6;JEZ(Z0BHiRYxA7AqZD#iIylF&z z(1=>lJ`2|X3XVlfg0)YvQL zfu>w8sRcst;seUcI*Zf9i&Mk%>%lI*b`k#I_C>hzFGJ{A3;*!N3;68up*t}=>kr*t z;d}3}5 zoC^7D*M+z=wg(bD5Z)ukz{e4Fk5JcCliul%w)|f$BY&<}_uW zl`tJWX)KzB&kU)=R0w2>g$1Tw!B8Cz*eHm`fv&gK7(lfW0#%Qczm!wu@ybZ+L{A%DwxGv;6Fa8T8L)FgTmRoA<84zyHB) zc>ms2_~5N;ZuQ8bJc}Yf_rVQ3n`Y*}R`(23L{HInvR087fjsEt(r#Rp%8@nEe+S;s z`nHtR{%^@9^=g-zuc@Y^KU%>4)-p?lrIj{Pt|IX`)FO`ZB_+5LA%eFdG>ncvw)Rg= z;83!4E8E=VN;r6%hpD>-5ka<4?YoL{1ldp`1 zt)xl8#qd|>0$-@AeZf{7+_}DJyQ60;#A~EMo%EIFSjv_v^4x6UEUpx*ns(>X8f4$O z3RkvQ;l}P7{Px)~{Px)iOf!IKR$NP#Ul)j%+19_ExSr zM3Sa-43=M5a$xKCHWC#26|3#k@#fA^lwYDJ^oHxAwuI+OOQ9YL%LXc=H9U$<%KMlR zYXg_(QEi&GO~osfZV~k-!*F4xaqwUPIY&ZG$Y}^W#{P_@_qpD_P}Ip*%z@6T$y`mh z)&`j9oXlM?Emwuoe*xiQO)kIFYff3&a*&`}oiU%x;B0aR<6Z_^gFf7Qbr&B_=7@511A%Pl=vD zs>9IE3?wEEXjd*zE0=C_!hT^A9EnD)o7bWMI|_hVWF2mV-QxFX#p)B1;dE9Z{too( z`P3&D?1%R%2VM{@Y`l@f7JGik{f0jL#1Twt9Q4nz;?Wmv;LA!_A&gkBP970lZ2`z> z^DUT08Fv!#tizy$3Q{NbMYi+WPx?cp4{1r1p8^bPv*k^Lu~I+XoNFG zB#qBTO1ULQc9*fGN-C}kGj7Ih=4NP$*@HWm*5S>o7hLfF+NE{)FF$|aZVAW-0A?A$ zT7FBwpjZhouh-;C2v%B6@JytRD&P5XArLeuU~+z}uj^%;Xao77Zf1P?4ZlYk9F1FzE~#S+U~!@k)>2t!~oQ zwM3+fe4b$Ieup7I)E?3GiwDBXW`wz!P(1=4(OWKz&_0|u=2!&YR`ySpOUk(ZF_e{E zFy&Q$XZiJu`=_wAF@`HEBlzRHSK%-J=q_B}+i-t*@Spz~WMeXAU$^4Ec`q7jNF5`? z?37aXp4V9M!xqB`G>X{Z8Cd^oLf!50?UV#l-L9~t(71f2EQL??!KBgh3b1zTEnMSN?_yFTjhNWP(y$aRV^#KTy!OoM^ZegM$CgD z;2EPQ=X>%bv5!}o?|JFeNu^r=5Uw%`F5IyyUoF?Y;gq;dnG{L>V&vCy5kWqKpG&2Q zk7RO7aOZQ_T^qnV*EZc@U{^MW@X@0q_~_9g98VYU@^IqL1<3Ccue!}v|EnyFu{Hc; z1wey`NRthElT0FVvOmtGqe-oiB)kGpF2G(rYA{FMHu;U5&-yQA_}r>n?|?{Pxhd$d z%Hr*8{;>#qU(mfLr4v)>Wd$09@{2e~-6lm&akHn_MH_6$vjnh(k~tS^hEVglgg|F{ z+i!!m5T*_h0ypho`WjMBG8pOIAb5|;qo`RD1Oi)XJ**J;P6Df#&vtsm|3d3E^g@!X z2>jhr{`^45+1&kIS{=gP&N_VWwM+25*Dtvh0D0iQHtxf;JmtR{Fo@wGMq>CMEqDqE za;VA>gQ)U;PWe$@sn6p=dkzufIr>52=Ep2|8sNmS;doU{K*HWaK%I%;yQXxX1(>#o zND+IVRyo&B+E9*o%Y#ZdT3JA21=MX+5h^~24zMLZmj5be0Lac%Na0IRsvpuR?s9E9 zM0V(oVC!(sx}K=u$xFJ#5g3}OMUvqO%vO3;9Btxk;scThJ;OC?POFrU!>34Xq~Z`}9AJn`lKL?LPMahi24&Fq4BySP8)L7IbleE3ncT@8% zZ7%L%uRfvc^>)UmfDMuhTMYnM3%lz>xN>0yu51k9gPRxN|NQwwI6RucZ(p3i{lh72 zl(z&_1<_>zjnmI#POo12zA`yHa1As-Xptv{27eJ|!j#mk6!7&&(Jtw%1p#H@wWK#V ze<_RrA>$XKlYgN&4@DX$gU+x6=1nhFm3xUlNs<$CE{va>UXfPT8yxbXcFv&NDGbl5 zVe1!2e+Bhlf)G?QS&i8-K3i7X77VJ{`z}pASJ?S# z62qtb>8VqL<-?c5aC;4d3mzO~cO=@x*r5I%u&9K71{LJ|Y-nlunXdd0-4Sy31-h@^ zqWW>Ot1BcI^SK)Yo}Nr#c06&x{|{cf1b_Yqufw1J@Q%A8G9L_{qEr6!GXe~@1C1eM z^fMsQ+pwReZ8XS~7vU4C&srzx!p;;=OV1{gLG=V;=pii6$8kF^{}01ULr>ArQG^1T z6#FIJnScOJJ&P-Wl7>E5hJqy>-GGT>NXmrzQcA>K^^ezZ;7e)qx~A&$(x2* z{A`IB^nUatVC@b2iNZW_wWwT=4S&}0vD!DmEv1&kkaD7-5%RRV%|yqYy^PRC`^FC^ z=4GVKa^e$xuhdTAML1ACAWOnv8O_CK78|9g1Rv*=X!9)NJwKme1t~BY-&EC5*JF9l zN+hse4lNhXZzDBG z@XY-=XRlXW(Uo7}wV)?+dybgx>_V^^D*TZtBq6n`mR_mT$Op%Pa|6LVfI#Df`*zwl z6h?ZFGw97|u#?SD3_?+@mRVp@`34diD^9aX?&2;UmDy>Y)? zM!@%h^n4neB)Yd)xu?O?w*YiW*r^cw8W|aXRM0mz3KNU1NgNBQ{b1!@St+$q5De~l zk2UIOak_r1mPkpZ8&%!U?7hXKxiWUiSkoD244Wu72|qu{u3VU&ydjkluq{Ry_4?xZ z+rV!MQiM_cLS&J2-)#)Z)Z$U&DH6|*T?XOcXr{ge)Gg# z7x*_HKZVa99zk!|bAO|OfnhHLn=cm?{S$$~goQEMsq5a#0HiKsSBi$ogY|B68g^B? z7TjoHyzH8H)AA7LX4$_|fXFYyM|$0YSj~)kl_W(GVOmeWryMC%&OBpvLHPtjGx%NO zl+b#7EXhg{+JT}%jB`fPY12`A7_!&AMmZPl6MD-|IQjH59voV&H}S=mgW53T84&p= zKGq^Ie63GX?i*)6pepG<3-YJzYrsvZ>DN-uD?p9&toInjy!eMZ#RkEtgMWhrtICwO zt7pLUGnk!C;q3SfhFJz{y&imUa|iz74_=3RukN^I|MU6Wtq#cT#0;RG`PXo*u}q9c zS*|!kh%k~D4jB3%M^P4kEM1S_=`!f!^&nB0HZ0$TL{#3Wso zf^?U93jnVqb%cUCyRk&!%EZ?1rEQC!o&z&1a}rZir}ZKHRTK(Yei`ep^GQMgELJ1l z#;roCIL@bg$?}Q)P2V!wRDqlU%uPx7$#0SwT!k3_D$qL#n*LoIQC0IR8Cd^?4rWqc z>+K7c#Cn^wN4()aza;=neM7E7=Co*u#3d=4*bd%8_uXutN4<0PlcdA!ly`SQJ^Z}d8KIso?YG6oIKQGB`GBu@=lBhuW6}r`aeQS&D zUyG9&%x81h&aZ~Oyb15z*nxL%?7%y>_FV9PabsMb^558mA}%mW)f{7wpHmyeWXva& z#J}CWx$}^m^DNf_AJO>`;0FcXbNrf59SEA#O77T_0=i^rVEp&pIROJsgW_pS^nXdi zk)ML{F4R&;%i}sj4r*6ErAeTIvN|*BABTVl8Qbw6?gtLA8#Rhj{q{piruio@qN|%; z8BvBs=Mg%oAji-jVe`LP@=9DTiDsa2ITfc6TKF_ohKW)@Y6rpDGJ?iOk{Wo8kxg-4 z7>eYTetNy}@bL%C{E<&<-}IRD&}pZtNA9spG>t zF>*^fLaihK!JYbSN~ds9I(uN?=EW7by|)gxc2?lMS2p3l{Ne#Td3gelj%TocGKG!R zA&iIpVkJvu#4MC@FWo=Oozh@~Lbx0BL!B~ih`{M-h(zi2Si1a~;YDX0Wd5(Jt6+tX z36q-y-l^o6Uz$DKT&)>wjud(j_3iP!a_laeIghV|F?zkE{#v|*e)NbzeZ>~~%m~G$ zJnX?k!4{~Mo5}rtjW9Ywz?b@j>l_e`WO_<`$_Dg`d*E?H+0w@#py@P3|O4jD!Y; zd|?Kc@OwH#ch8vYhiUe%Ejsz2Q5VIE`#5ngcIW0sJh&kK@fr+!N}&251S;l<49BVd- zdDB|5k-^*5x0RS@W>-Dp0H*vz5=aQRkUcNW0@gHPKGj^ zmc+LD+)0aD1wFr00?0!+6`d)Mo+DS<$xAhsXGn`OC{9i?lZHpyyB z#^MMOVNl9zVx>4%(qOeIM|fw`Im~AZ=vxaTu<+*9Ex5J20q@+}g?Df5!kz2eurVIM zAU_wNocXT?hxNLfdZKxjOrkh3k=5*Fn!c9-`=2Y{skN(e9_~-98H&D-<3<3h{&`yc zRFW;NgRVHx0EHD%^A8=YiKecOrhu2I0%9==83c>k16n$ycTxu*Bt2BUI$r^nThXRm z*L^r?Ew?&(Y*l;_6GAOTGr9e3oyhojoA=M{pfvDHKlwtI&2O!p;8Y+x+tt16uPWZztNm6g8G0r>WX7O^>9) zj?}7r?sfxtLL+OH5M+1+r>laOK`sNO(XZzMNq8$y6E^QdjvWObB`kX7>jlleu?!tq zLMb~hU2sHuu69}fVKI#QSj!Kb$1Bht9xs3_wok(_W3dV_Sp%XP3N$GHiLe@ z=gtN&=wy1!^qQuJ(%%IQ2GzT2W<^136)k0`1(+2XOq{Ppe8kU25EJX=pg)6p@mvz$ z@DPHYXvKW7Q}Zopp%5Q?-GkHscDGW)yw*tYf7)$7)4>JuH4RMdlhj02`gy`$4ie83 ze-n95nv%tw!}AN?rT4Ass;mt9-Qli_1uUiuu+xRx>%Vn*6W+SM<^J-${`u_x-qxyH z>R)f!%$NN4Ow^=#@|@a1Awz|E(&*XR)Kif?$ugrhuo+f?|KqZQeoOSD*Uq*q&oW>i zvl3e)^(Qf7OXb(fkCw8P zI!5cjWJfYwuXqMhprV-n!53P!um~iclZtE561D)C+A+Y)WstzsL8VI6kUM0=pFyk> zlUHk7P3w(ukeQHJg&mVPU`U3B41SMFwjO8`tgNMAMSwhzQri-(*9xz>t4Uczy4PGx zp24Gdn6zcRGUDfuFR{*KaG??3bbK1R<9n!*nnv}eC zHOBML#ksGPZmoGwa*ll>8J(>KxN?&u^J#?N*7$Esi~F5JsSr2A2k{flCzP~jEBpku z_oXKwlmwCLwji81-N;kE6|0xI^IYb03$x=X%#J3o{mK~Lx^e;j?EP2a&wlSVYyg)) zXuq$IVLLzQZ$5V?{a0mO`F#3+p=>pc^n14$Md(rEKScMUE9yqobDG{3{jQij?#_{> zRcR^SAfKUyD@OB1eGWtDqs_ERx#c%$$@iEOy9CnWJ!OjmKEab}++I z2s%@fVLz5h+}H(kDJv#?uZ?6Cy_Y(AP%Adddl|EMaC%;0a1^qM52bpfNkPskzcn7H zD~MU=#2_cByyOz6M;}tNXm0&kaPl!>)hm(`+K;jXN8-J1m({3uUwiq^2T|ys3=tp? z>}S@(_G%yQTwZs1ZtkwaFTdG`U)|q_r}^0cN2jik=@sV!^s}ruEN}tDVGb(|#)~og zSAMsq!d@zvCVOfgtRiT{5+tVtQLd$EH|L>xj3BNU(K}ASaIXgeD@sBhsZmTCNu)ta z+fw%>iZWS=9Y~Gk?GRCv2#@ue=8;EjtHR)|9P@CZV-gzIF%wv}TdY3RWf3(Wd-mQ7 zbfEkjgCl|Ax|zd|r4X$}L|Jm^bh6Z5W7`S!w zBHZ5HfVXb$z}v6xz-!mGU~7E@!~6P7&AGM(6lu6xB>m#PFSBA=mCLVU|7 zz=qUzS28Tgf2?Jw|3n3pR(GeAWKRN`IK&%egLr9f2->uuqEjUk>KLF$P{RgI+f~|R z?&F2uO}9(TRH<|-VFo>hRepLZaR{Ck96CMmeDJ`{)9>FbN4)5kIp!A`LSYRnIRa?l zhXdUDp>k|Izg2L60zSU>#>2;G`NEn;8lwm~|KfGUn2=I+%o~pF=V)o!LNh6hA*8~V zz4Cqwd=|!15B`D*B%bw&OJeWLOop@+AT%Hn*AT~eJ51uqF9 z#SB)uUeMlN!9q0cde{%=^?EAOi?OVI>_U*mWIkqsH6?^?nc{@OXE{d=e``S9`-AwY8ILI?$0?-Jb zwJ66VJ|gB(El}yRP*c=NfV8A-!(?uqnv0xu60?`B&^726))Vo3>{E#CTC!!LmLhm5 z)f$p3dW9c(Z9y0?3!#GbkAB8MgP4B;W zqyz*iQmxZ6v11UR{(_}?$??L%%(~P5@{v+^9zZ^;^ySHA3lGdhlGwKL5!(YL zf{0z#7pzjV+oDdEYY86=$xFsA%h7A4eYm9L1ezCiDg~lRbc}UMOa0!`TAjlu*>Xtj z^!Z6Y8^Q{`#=A5@afj@Im1s*GMwH*f15b)+iYe*`Sf3^dO{lTR-2Hs+WdD2#znL%G z-=)19156eKkIx(;kJ~igh7(V2W*P8KJB02=asKIGze3W*MNLA zeP_Yv7?e-)$(j4E$(M>|pat<1vy!5o54_Py+RX`$Hk%42%ctWT8h6pLrPjboufwfP zG0{RE!f9R>wmn6&qelK5IRhXtwt^8%>|=l1ddkv4jZ%CqRQvH;Jk&x?`A>3S&n-kb zpOmEBP+rh(5AZUn)uf^Xk#5%L?%}{r{ilHj$5kB3OK6dJx@X(2PSK3mDz_R;VL;R` zBHfKo@kmMJkOXeh@r<>>ZxY);_%LzwFf=yNULQ0is}%v&AyfGs(f!Q8-7D*G@7ksd z{@;JR1^?~W58?QD3SS+Z!T!+%)>a1YfWYEj>7sn_YA4pSJ zfSzOcV15WWqPnt z@)_*U=nh+3`xW-%n*Nn)i@GbUqp*Co^^lSM4xEA0#+^;}c`?B54uSv|N247moP@uj zf|*`C0e(AgEwMz30rlv|4lB!83*YGlCLJ-5zMNUpwt1+II8z{6mK(|mmZ8DciFKT#OCJ(%pC)uis zT^FvqQ-kz=59N>N(q>i!DA=yz7_HhfTGCs#vO@xq;Js z8`kV}=7RsVeh>D>19HExb0WD{+!OrQ~r^n7xk(kL{!)* z)yg#gDEh1$;8s+Z9e%&@A$Vv7nzjbl;5+{iy zi$|;EbXe9CO)JlHwOATt)E6!AYf(nP%OYB(?QS8u9*^Nf+O2yHM)(zGHQ663Qg8)8 z$S;kZj#<^r?jNK>ek~OTi#t0l`jnvR^+@a;>VFZN8en3#l|iCLTZ6E`%Tc-op49eYYy}QHWjL+Z>Vw-ZYuPp|C}Ozh5zejQoWaA z5rFi~IpOI8*D2e+I^K|O+$rdQa?fcsm{82}SGV?aL>fHkP<8^Vc+4fks4B+eX9k7WXaV|b}X zUa&u1XORtFke>#E5;Ti00t-^aW=YhkRKBF*)gk%*3_rtCv?Ib} z38bGo9__tIp-m-wbe)1FKr}cOe8MO}Q+zMF(0cAkf}bg+>#gvMfEMYM$gNiVsb^BN z#Da--Vw$qY)q|?_kM0X3;gvS%lR}>aFv0BH@sjhNk2>Uagy|b7sJtV}s59C@!RA?( zz3^KTG2_3|S=I^}eMM&s)Q;?|zE%q0`t~aP@O1;*t3!D6@;ZF{_y|6Jas>OQGuS_z zxSIm9epcKT&@=9Afoe3_58~Q%nqjZ?;gbMd!AD9)LHs84FADA|BUXQ_%A`1#s-l%L z#WKqc*VSX3gJP*TNZ+qF43#@Rt&%0bm7rB>W3u>L{t(uC{+iCHSqwQLVi_4wwD&9} z7Q#31#fKZkM1~U7Rl#;xz8fBK!vdyRVKtr1;cPZ_=dBEl zf!8iyfLGpJg?q1Dbbqg1yWoQV&D9Z1XEP64WWSlYY$?At)fQUN0gPxL*i>ebv zK~eUKfeGado&gZ^!<1qP^?UAy+Md*w(R^vPRQKnqNAlc3{fFAA)gJc-I(nCi!cF%) z+F<1;Kl}>oY5J^Qu9f5yB*-d*qqju$COrSAvw((Ew4-e3krnq>0Ei=yG#T8Bq%awg zzy?WkKJ;2jXR%b!Y+#o-=dqOlB>1O$OG0{D9Y__c3T_hdE|NKFjg65497Hy)7-SSM-ZH%&@gj0{@!G1B4)VB$>SI=EcO#y!3L zT+W(A_&fk#lh0JDw@o6JMyask88O&sAXSI^E!;JM#n}KEWbn%N3f$aTbHV?!!;A2L z|N1cuKYUzl3wU}0{ZSA4<35ZBz2g4r{J;5<>z3$V?FPx9qBYRWls6NboFE?kglI6X zZ4h_kLE!2>-M|!TJ@cw-gz}%d0pv4(Z;Wtt4#qTK4{E$Hy*&k^CFA|F>NRvYyF%Hj z&u|&0_)Wh9iB1(Wnom_M}ka(1okEzgri z{vc)RUl!pX_aC^p2F2L(F9doUqno3++gpPUeCBnE;Nw~#CA<@%v{e_OEdVhj#P8Zj zqBzkXW-Dn~Gk8uq{T``-F_Djyl}mXUD#i=>e#vgVnvJ*H>sR6K>?E*qV?C+D&S{K+ z>g^vAk=rDNpOPR+{H6vqKI9lbD%=;QJjzCW?za4|qfQt(0yn+hRD8Mxu3D)etVD$- zwXt$V*~oE8!-m(X6Gwm=@DIBp+i!A!^ZajN-3;dc7X>v#eP1nw47v)PsZ+fjoyZBpBVIfmrh(uQnh6uuNKNKdK&T z1SPE55G?IZ`ariBM?sWg1-3_>VZL9dZz72O@*@mkZ*NRnBU|~_h%uLpx z74n87M~={L^L!xS=XQ!M4s}Bc>$1LV7x-c}NgRs^xw+{nLZ?_#Pu)myw^F#jO=HsC zAEm;8UnR98$V9>wamsduWprao5=?(nb=&d@?|DYWE0CtPg}}@z`K|I>8&{w?o56Jz z@s=L1%2>r$EaXI|r6sJ0o5Fkmz<_*Aut7vlNFEp~v`-r1p#aJ;%{F^mmKG92ANk0U zP2HDw4?5k3@M&(FkViDFM>XY)?T?_>dKU6 zFD@}#T0fblpXv!v#U~GAYdlK%IhIMw84s?mI>1}D2?|JmVh<^X4zT18%^Y?9R~%Xe zFzRQpKI+58^)Y;Kdk21Ve;n;cS8UHi{lIZ_P|--LI^j z(tYe+$e2hLgV>V09{R~Tjl#EHpf5N>q?zJXSYmGL*HeXumY)J312SHYvUb#R0UtGm zG-KM^)_mX<6zUflEJYv;dEy=l5bM`12|9p$SJ?&o6V>36wZfcoFcc<^SaTg}#nW!Z ze^$)=&n9y?J)1#qI)~nD0he|+;JdeW;7`7L!~I=Y8@a#yWdD4>zbywnbDVl6E0f5lDX$g?>PHqxDjXi>`LL8M;5gM}EtnypTwoKq9A3sV%IwpKAd7|yStYr_h zrD^bJe!Z0bJ=I1bG&?9Cg(DLgO3N0L@iIo_r79mwX~_~Q;arCalI4%wpCB18=KnAd zSP>^+9&KnqrVM%AnXii3)~tjvpEvgpY_ARB?v)L0x9ZP$IQ2iWW@{{DkIse#B~LG>*Hvf8OnOQfr4SO zwILa0$1$KuA_AqEgH-8EwG+awVs9{@A+KU%sXoz~TM{juZ9*2rl;1lzizp&m!a@n} zdCS^btnjDCLdV^7A&1BRUA?Jp4!I?|I9#JJTobL9dM^s}auHCq&p!|3XR};MF2K$g zaADYkS1yd;*4`%EzH|ZZUf*&v{;yu%gw53<40`!0fmyTKp@J9lG7MrnHkI0L<&tFbCU3+PR(5tY%O z5Z-csp#fVDzp6s5^J1QI>|0%HxJ-ox;hQ9XyYh*uO1cgvCDxcmoe0#3L&1HC*b0qQ z|CbbxWfa*I$*449lM1Iro_* zsIK(AHx0}1``88K7L+B5B zkgsZW_g2q~*)D7ioHn4N0pyY5<@bc|JXHPdHBIZd8XVylMm2xgzfV?)*#0}bt|BC6 zenN_-nrfjQBU1wb#$rkymkSh7GI-4}{(D=kB&k+LNcKtCyQuPesn?@t%h0Y!5)dz{ z@^fhdUgZzkNmGMn{25UkoTVr~wMi1Aa1KW(%STus!^hAH)oTQHMa>E8@8&TiWetuf z4->X%6?(fQH^S}nFaBn30AK-&(+Mn2r?9!V26whb@Z-0yz)!w=3vOKAgqxQ)OWju- zv^ty3UD;eO*4Ede>am-H`O_e_Rl1SVjJ8=@{m}SjMFr|ymMT|)B+03SxA%z<1m}y^ zEe~SEy`w_#5t%!rP^mQkEGk+cyVpsF?nd}Kj9Dnz#1kvy-dz%e7Kg71+P%=nCa@wS zY9C_;N%tQ^3F{#P9SOu%Xc&K+x#x3r0{XrD zi~tm9)OwC*9fkr3f317)$<&RWmaH~+KnzFs#xh-BWoxZ2sdz5sH;>|~Ggs@+q zkwl@5Y683TTL49h9EMHxB^ic56xQt>-lxd?Tib5=bGsII;A=ro7?Q8O&k#6hYKfFA z>B0gL4~Xc>RQ?Pa$O?K5fd--(|GfY6!O;9~aW;d+Yz`|~1{eB0xN&m_ZsdoiUf+T@ z-HiX13;s7&1~AP7epE-65j&eg1e~Atqa^a^hc+0Xmv0zK@27zON55-JMx>5aToJ97 zIBwcoTv5QIiLKy^An1J-z8m%<39QKb^|mG&ib!yRHcfjU>4Edq6G6JC`G3dEUkVqsF>EKFDEIuK~k>Ql-7jzwE zQ$EelhR7XBj?q(&!Rzd9Wko^}E0ak~B}ME-$E#$8dYy;KDfn5rGjXVtOAa984-+*A zZ)BK+Yg&Rz48;6~A%qQs4o+lf6TCeHwq8UBrZwqaWDmQE`Ofe0caHno-IlW6!187Z ztE&Z^9L(XtYzlw(-aYt_KY9y(_~9A+^@nF&S?B!MGyVp;8UL!P$n711gUmfj#VXVa zi97p4uGf&I_7bkZu(xQ?N%uQaU>Ut-!v6-Oe%$6peVJ6i2*v;~odTL^_SdiqVoN*; z1lg0J`eT6omVldv(x;pg$iW9`jHn4lI};*GNd8HBIjGLTh^} z!^*ktQFQoF-qxhNQ<1JXij7DoGAe)!4*2Bcw5CutW?{2cg(Ykx&{LeUlkQE94PL#b z>WvIERN4e`0xR)YG4t&v_#mX*K~~O@cjpDn#}$0?@Cf#%WBB0gpuRcakI$~^&x`9N zytrP$#+5NpuLf}YVNH98R&D47 zf}EDxAtfrj1bDkQL-iIF&3TO1M5Fsd!3jSIDdE_(;R{|7XqR{P0h|(;!&V zAk~tK6yCbtANPY&7n#uCUQXeacVWkKnFy(PDrs?qFIiDnTWmyY;pXyKRd=wZnf#pt zlId3K0TixZjHo3xGj-*JBjdPoow(L z+fjz;p&)NYCN%-im^jH{5a=cj-)*CLz1#00(N=ObbodyIk7)t`>kW)X6->vY`hdXC z9v{Ptt5bM!wSb@f<{A9MZ@-6s`tmhAeQ^V~0I&eRB4AvfHQ?^SUe_mLGnLx-XQwB! zXL1MtxS#lx@MM6Tm#4j4r$I|g!IL0Bm^9Rkbau0!FOEcpjvS$;d%lbq?J}irLnjl&kN#Ke&n8Z7jWvkmw z6yr|@pQ*T*U4`wrxC2-Pke1weKOvF2K44bZFmScvtmjY0|4A@Lskn^ws`7R_455<) zTsh3pgwG?n)xRHStinM?SGr`vQQ%5sDx^g8HeL7tKeU0!=&{nZESYO(nx-6vUnUpL z1PXf@BL)t2Zjdj^hC3!Zm`km^l7^@9T0UE$@R4fJ34p#&BBMX2pqcm4qauaR<;wuT z_e4{+Vpc??pyg<_{g4S=wNxb~%7`i(&-!^=Fs2V)+FCE^-!wFHGi7)7Ch()TPvOq~ z3_g2u0)PAdCH(Ql6@32u3SQkT;nnp5HpbMS(Wp5mph9}9>knoht3l6WBSqIUy_)bu zG~shvA9`ugQ<441BZHm3>)bQFtP1a$XFdun*@!isn>s}^;uGe?J8*rc-wy7 z(qb4l)jFpCLew@5w0eJk6UcUx_s)smEZnL7YnYe{_A3J)o*l#ElRfz8;c@+W@8L=P zd3blfmRYtv;LqCL?lN($i6>GcP)a${B}teFrByb3$8475*xKMewYv!@1n>!FSsPma zRKip;YuF)CVkig|VoKAMXB2$a{NrSx!s$<;?H|T=MyWllw_k07<#?ndxV$ZxPGt>{ za!cEdLr7Z7TdY2QMQ;l!2@oj~=BX0=*d#k;1@>r@x-$SmCB+p9xl3ZQ_&J|54!Gzd zk{UBXjN%bRs+;gGh-@*H%i)f44aN7&(1>DT468KcCE{h;h(G`QUpqCYZfo#h+Q*#R z;eQ*{zLfk8_=O25$=#qEKe?38RVD&^c;Qr65qs{yKBD801_46HL3`4wj9-L)yKfuN z68?=_E^7g%BLfH1DcpH`20wb|4t)3e2A;mYg`fTIDg5kr&){Fab}Is|U;zde#=!o3 z1fy|tfy>A=OK&&rtpW6OV}B}n$A_qGA)lkeXF6vcJ6EYa;Jz-t{e2$!NiW?oXiJMV z?O`o8f(>iXr1eKf9|3M}veP}*OmKrHLpczY5Z1HisfLw)e|mAS#oi!>4`8<|7>p$u zk$qHoXjS$KcB!4&Q9Pz{M94)+fN_XAGg|RIvF=B zpjuhw{+f10Q!jS}0uD6`$O8Nu$>~)gD+%7PLi;-Q^~bFU zcK@7 z!{R*vv^HxHDD49YL!H60v?hI7KVUK)STc|(w35xd_>Na1H}X+3fQ8Ha|YTzmB0Ts z?1-$$q{{>|nD!Cd%98xtG9`Wi1A7->RBN^!iOe!LF^prG_c`DNDRv1;j0s|~Zf|q5 z^~3={9i1aQHGxQ3;xyrhb}4PM8=#pPbN}|HRedGa+3^g1`u<(`?$vd@D&S|o`yT$` z_us=WzCMTVU*5pN?Y9Mh{n;4Cqj5be*W4P=ZVQO;8FD!$Qb_bvS|kUO>O+bh$lyXS z-FAbRV{l5zarTv=9BaAP0sc~d28CM3Jr}IjItLtGFy_5UWEtlrl)KTqllqinjoy;Y z*`6Nw765YQO{bekJqbdwdnt#QE!pOAdQjw8wG=cg_u24FA5R-WkTfcpy@} z+rRU(^mxX9b+dxi^#Z2z2^`EP@Y&fh{M{!H;qU&c`OGI{m`^74jK2#+x}br(4WRN{ zp!_Ws0}Xf+(G9s&MFLK;suD|Fh0-P%hYUQnO21;G1m}`u6!woyG7VY^D+pPegd(pCp6nVu1%LkG{5;MH1o!o1!tUd(Pr|=jG1@)7mnQiGmjqq}6Tiq^;~OPn zb%i~csXiXDdHU-*C|xcpKR}6a4U`(48Sg<>WEij4w#%_M9ks!LJ8*U~hkyU>6@32v z75w?-HGJ{%3SM3<;pO!bZr$G64b*1@xK#n8HXu;n7+~AVEE1>Lu`NAjj9RuB3h3ZK z0$VUQw;$70=Rok|TUSD3E7{!kG`0f_@O?_E zQw5Jh_AA6N_1*-(^kkv!(jU1TuW&@=Fd`hm5ZbleZ~m(tc;~n~p<>q?m{ub=tVZzY z;W0cqn!yJTkKu!dC-CmsQ9bMb_}&4`Mxz??a=i*1s>+}h`3i>4t>h4;MX8#_iSSkl z+?XR1l7r=kL_Zgckiy0f8n!n2KMR1#R@}4_w_%sgd;lNYfTr5mp^_F|Mid0;a|Rb1+UI;V6oi5<#Ge_`55MN1I`q$R|GWY4T9aY zik#IF=+**NyG-zVNy@c7`tX`S)gNMiPcOTt{pML80 z`9FgBYz%v|30ODd?`He$rat7a*^*Q>Tb&HgHQb(a+J9!t&EGk-8mVRS!mv}YoO~Bn z;B4cJh_GV&PgAKL73Dydvcn#FHx5ppFWGZ8N zqT!<`Qu5T}75ube;3cvvMe|#rNnb}cV@j;==tMdze9yNiQ9t1e@8lH33G@<-oNdF& zT`p9jg&hMf(NMz^CShj|6oN12H?f?NUdUyYYBrk<+d?wRas`9mr^}^8eDJJ<@Vl@p z3sctp79P;{6EjTRim~`68=yfU5<1EgKtlme4VM@|7sn9RBzJ~rHsZJ8s~gt)3X+31I582)ZQy1+oRDr@CPD|#zgy_dc-2Q?13M-m#!HlkuUWNMZbB{=GUT~!uH33m2r#w|036OIZ4lrNoZl?r{B{LD|NI5~bX;+jR&VLR#Y z%r&!N+w?6TQTdE~@y;-t!FQ3^Jra|PUREBVpd8yVL7tF(h=btIbYNBt8H0ZlJr-2a zH$cWV({oZmdO)2FAudQkM|jKcbahE~67xEtXKLra4GLP@jFI(f4U5GJ?6UbBAI{;y zdlFU>lQa17hY#V$A3cQGWK@4_yGm)b+SDI^JAkXWN|C$6i*t2MxTjxDhn!)= zyl46*Dk>aH!Pgr@U`JJf4wCem*81tCE|$B5ZmQdPa`cwiC2%~?9K?8=wp>Myg4u*6NRyw>64lOT7b_7%37RH1ZMibK_i63Wrys_0Hw)lxf7$ET-Hm zh7v4&ecO7jpipfKFD-{T${RilP+0Y

DBl}baP;sHK7Diyi`Az7{L>dN;h(>FS+5HC zZ=b(}Zx^@l!UX`_tl!AMd^&>htiL_LEi-T@c6XMfH{y*~RE%LcGzA1s8$aUskxHio zc52ufB0oB{CWZa{JhY`?^ zu%k5i6jxkEz@QquV%E?CyR&?D0d*VsUu15kD=ta_X%l8_uK%+ra2dMuXy{pRGBl!P zl$Ark?>LRwn2W;EO*!X~==!3#6E+YH^FA@aw4yN{Tg0F!Wy;7o21L_d=@@2E8%2dB zbWI1AbdX|a3j<8KVmYqt3B{wRiMEhZ!Xd}mguv;AyhvCHboO}>^}+!n8$uLNhM#-B zx80MbDlBYLBFYNiV|ybBqa&}LEAse&jxmNED?x=;Tpek@WnP2}!O}|9bn#br)fV(~ z^VY(o0(kq*9!$p-JUZEfpS*hqzIbsBUp~KrZ_jVxyYpLkb-RSuH!E0x1-G8SpA+Ce z1{q#n-fp)?&c{b{ZDVpY*CsLeD)vB}}k2YUU&B~THk}Z}QZLrWZ zTV(3l{teXfVY6C;U9Vtdnp627?@!>)y?uCc+I;+s|Kody@Z{bB+&!Mx?b+B3ELWSh ze;WjULqCiF~DA9u3hXEG066Mp)OBsi?q$EHNPUPzS;-q^h*! z7Sqil`^Yfw(F>mKwulrYQ+jlC0h}qqsxZ z2nX{f1!J2uI0B|BXc>(YMsj;FaZG3zrneXjrJ2ZHebu#a6sCpZ8TqcAhT$tAil(+D zi!$&%kxdaeKJr$MXPS{%aumzc6bt%mDfI^%dWPWN z;Qq_eoogVajs@svP>@}ivSV0$gP*9!bL}>?y)3tEouuJI@$b~PbMUKnFTH_!#^0Uh zzgnzdb+d%ITm3UO@c7<7{NTwc{QHm2;3prQ!MhKS;k`#Et@<~xc83DCA16Pm`c(fW zxKJT-iguy@$*$XuGfTV}luiwQ3LwFU8hgl(rJx@*;wM)gefPsu15cA8jY#ng>gVoY zK*<7H5ggkv+gjd+eqmw=WJoFj(U*maMu3*$Vh&as?Y^f5ONov+g?g7{VP6Y&Z2G-V zyRo}=m&l;Y+T%kI4++B2H5g6F(RF4!1%HhQ+w4mdrBAi+sM$H3uc&zyfQ{w0u-O17k?H7K^ij0!d#&?!o8>qr|Q7g?E5^L&6#7wmTTl zHrM`b`h~T352rAyj^J=_0v|m(f-hfQ!&fh_;Hy{H@YSoE`sRS=7Yn#uZQ%NL4c^ip zwYLW}4gmD8#zXGiehXa-O29>807_u-v;hxO;-9e1Mt0UYm7V6$GMHng`hxN%Qq zd-C=qjH9JLJKSSkz)L|Zii2$ z^u{&uhHDszKzOQsSakIwSvxM?`oQ9!FzR+Nh_b<>6uaB_k$=&@rrJB?*mx&k>b{@M zJ<&qz_-oIzEsuFTHC{+|-D$mY{TRB5@)smtYzSFHt_Q`+oqi66$4|mKsHvO&wA~pa z_2S=lMS#EG+XVpbAJ1#&-=!CqxA5|E0ssBWSM{e}8F2FozQ0<-_0Kg>+ zqfv98cYTY1?QbTq_zE|OR}SI!BStbv9&~cV%SCKhq1J}?(ldf2d75=BZ@FJlIYz8U z#)>f9xKsMM{*0b!^+QOw6l0Q~L%f?vsJCp3&leBjgu~tF?&D?&OxcR+U$5mte(Sl% z_G1Jm)~XVEC^3))+deW!ENK@(pV6bF!hjF^G2u`2uLFJ-V7YL6`&VF=8!#&i`v)^P zJ)FQ_Jv@dVe{c_e^uc}j@dx+e&f&cN_~Z^2tq&J%uXZ!-9)I_*KHWbWmz*KIZ9-=_ zFxB;yWsm0Tyz7#UnT&%q$ninw~k?W{9Qu&J+`v)5U8Ha$=SJ>_~ zI)u`w?l4&s_6zE9QfbOQ4BwZdn72HkIRhXkY&a(~_A#t_fC!;u6Xjy@h+ax(5ky8p z8aoO_rph*6qc>D~SQ*nztlyH~X=^kOQZ{ObQ9`^zNg}j2mb?0SzAH}Idz`nZ0UP+7 z9HZcIS8>mQ<7X@2DA7l1kLCWL9}JzSf5q}0#CuQ~<2HwXOgdq_<4l-GB12R#o->Ae zQg{`yiZ*k)zaq3z{~5v9!fM@L$L*fghkrG9|J6!!Ha2j2Fo91W9l`0r6h1mTg#Yl- zefa9d6@2yb8os|+z_ZH*yt-Z0pM|w>ZQB#S4LU2JT^UdZ1qA#lW<#V3hNv>CwRtkE zR-P=9so{X)jKbiS34_&se=9(?zUa|z8zuE42)!CPSxCm@(cz?8!6{LJGUEiEMjsF< zl&l(GiOlO89(AgCdru?SQ{Td>#~L(atO>wvV7;>S!F_ zDIxMQ;BDg%>IRXhD3pB=*w-n$1seE&Xt^yCCS ze(SW}3NW3FyBghCcl-Q%diAH>8&q$6#s?ZxT;c>&v?8;IBT+!-PlgtyRyR^RR4P|w z4MgL`gnTTFgWc+Lj?UN?qbclD6?|@KQv@xvT*EIcwt=`X(P(5#=+MQ*0{N~>el?6n z+NRnnm*DN}@>>V8l{G2r;H5HdYab``urBYd3gn2zr2PQR||M~wSMQmdJV4Of2@aGJ7&@no^;5g6J2OJ4x)Ksw|>A zE&!fDVZYyUk3XEPy>XyE+;hEYuHjoZt9L4}a4;Fc{9p?A&yL{U!K^vW|IR)2^)uW(*#Kn>YO7$XBQIv$-mU)ZXm)1SH@k(=vCPmkLY}9#TS$RBL zs#6Cj_O4^_IXASPM0-^RM?XjDF_4k8|l#vbkL3C`m7y?jcSFr!Wxvvs5^eO8?R+iY)ph z2{)v`lz_`eYs%$K3*F9;W8{vQy+rs%#!e=0QjzBC8CJm?O4^~zqLrJiiDxW)-}F1S zO?!x6b8wjZ?woZulkd(6I6K{kPusE=w~e#^%P(KSufBAv0?y$#-<-przrTdnS2u8N zq5e!K2By;r#*-0DMx&ZpTp(bxX(WI@RL+W5f2P|_Z7)OklJ2oCN(?XBD1#-#CRAb; z=VMI$*fBvb(BNT%2L|Pf=z^V^s3u-d^J*z8Ukv&`y3$rsa6&&y`mcuDcBpn#2Cei~ zRI5N^ZDpBqGTi8k3ESPXUDy*WT&hRO0n7&a+5U}b0_Sf0tkxEmH!E1(u3%y;OpS$u z(|tHQn8FX=z5_pe=Pvy9yY6!jP7Y>pg7)^itpe6Iv;A(?zuB@=)pb?OwT7LxMnRqI z43=o{3t2^7nMo%8u3n{2?UFPjDuAW!nLJt<#XHa**FV?fOT0z)frnOnTU4T6o!a&* zDj66^{&4zGYL7bkTZq`1rU5!ALWc9N`o!sXT}IH$SDb+^yft$7#gBWBCC)BrpqxF; zRBD1RHoI&f-+pxi1@hKjb*-@I9m*b8V^|n(*UEl33;KZ zPQTolS_wKlyZWQZW^BA@`mU5mH1x`)0I%!}0Hx>~aK@0KCCZtd)hoeKFmxhdyA^f; zgNq|`xWF-*OiKKe1>);tktav5&x>%}s&Wl_Tb5C}KU)rNV|vG|<_M2XqdUjYofsXj;nAKzOFf^3gFO5Z=9xu}hmbn&(3kvB=XAJ(_|}{H zzl?qba!hDH@XVm?9(9!m~*LO`5SV5nVm5;;vCZR$UN;479sU3 z0YWGtyy5+~n45}{!GwYI$d4M=jqXvE6CJT(i!T!!XDJ|L*tJmsOF!HAcwvNxnGV&|xC_hU3_XZj2tbJ*cG1T4>OW3C(pA-*5f%BrR&=QCC z&m-{^94$i1Q$c8>FM_PZgiBDU8<2*+Nwmkq^StS2{+TLpeqjqTCs_@uw!_{ucm{mL z)x)%6C&@O5`NKI~Fbp>BcAU++-jd^H`B%3~m;k`k1pp2zxI3T0r)Nj-*^?9a?47&y z$6ej`=-y#>28YMH-rK+4^xbd#0fGibiEHv=YA|glrz(2#knG>D)qvZ zd&j8-YL_J7%RQsOK{BPY$y1O=Fc>!p@a1;qmg6doc95vkkF{zJ?@lwI)pIN|2GWyU zgAMWA2*bHjjJRD2u#jvJkpbgiMxVp9YNOTuQQ#zO86?TbFhjEKL_bDn>S%kb*^5tz(Bqyq9ze4DK&LATUWNuR~Uuh$#j`gNPf!hB-j-q933dvXl-j^_2> z?=K#}v-1Uf|9VlM9q`Th4ZOZt!1>J*u9h3PzFEOd3#D0#+^h~5wKoeG)89M3v5iw` zAzUWSBOg2QUY7ADlui6fBoB}EI7PKXlHVUM2$|L(NzFh?umiL(E~MY1Yi|WSV|f+V zDBHbZ4PqDKyclP({a6bcmgdw{qP?vjstON7NX7@KT4%qT>9-rO%S{vba!c~vOg|Xd z8;@W%oxq*rJ-D+sfd_6Yjyui&WFOAl4FB;Q9-PeK{_!5%JK2MS`J@Ku;JLH>j5k;} zJs%lnJc~^PK>MY+Lh_i2cp&4D<=$!KtF9kS%wH;ptW=;gKy&&~fkHrw;`kJAX&Uxv zsNxFy5RaE7Cy)FHVapr)9M16Lr!hqVc3g-ogEC8(nDxpTucP`W?E#>H;OM8Veds~ z5OIGK4lmi$l;U?2pn=LMh!(A=D8f+@&x+)UiU0WT0t`-Mdq*?)461tDfcrdueG4zn7x2rkU%{`wc@2MfdJcbh zdI4X*yn(BWCERY-aJ|{oTLMNS=k!!CpH|IG<*0G~-AttmI;^_`1Vdg5PMP*bN?pyIT?tgwum!>v>G?OjZNkqubmfuJZA#o| z4iQ7~kI-j{KwHU?+fpu|U>JN-qtrwhO#8p*$yla)$J?O&HS2bz%Vud|z1qO?b_L7D z8Yafg^c&baoWtGe1U@-ChEE?K!zXXufluGQQ(xcr_}&4GM^*jt$psJUs{rdQJDV<` zR^veaCJ9-}DV`vVW7pG0fX)!QoKJa2*oZG|fN%dMEqIMd=jIR+j{j84XUwlA;?HfY z6`sRQBrV9x6g)%dTzU%z`z*%OkeS(7pYyWUQGiV{30ok$OmrsZbA} zbCA8m>!FmzvLpXt(%-&>@0{~1)M-Vg1 zoZf^pld2|DpY*yfuR~ZJlqd~|CE=U)ovd_H5xY!|pq3z4t^rgZB(oPXg!Mr^?}Q=_ z#ENo&^nPQkDFvzn!U(lvzF`d=l94JoQ4)srv9;s64SC3oaiOExz!k~J)o;-Y!~D*s z6yv32l+O?$#dM@0?};Hb$cPY$QL32}wP)Lpvzl()nR=Ge^Ml{J+&DGO%;vf)w?7*} zWoGbMbprQK=J3O}PwJZkp1r<>XXm%@?Zqv8dwv5KH!HZjUBUV763*SS=j8?#cHLIl zo*U3EllIPy!G=D%a?m%cpP9EoOS<-m##Bt0zE`@D~uetA1Rz_c0$}^%c z$B$E$S@bQlB1d`4iY$%fZ5cUI^C9AtLL$L%Wu@J%8m8xm`m?wln9cJx zuIj@MJ-#WKk!WsjBTKh5q)Ej;WwlmX43!vHTbSX6W{r@+MtQr}8T&*d;|2|OE*9~E9WFGB%Fzcyb@6yT%v#o9PgwFW)Sdx|!)wYISfEcq*!*C+{n zeWi(&<5`=<2DHmU=IrUDJW7n*H)iw?PqJ*;0UQBv6adKfnRZ573}7GwI=CJs1`sWR zO3S}%#+=U|==|m`x0f$D{gY0n_buZm`-| zWE3zr;1DMWt%wpOYXIr$_y`!Ri**$gZH_}FS~d#y3imz2h^d6?p{OAR5|?3jY+fWG z2`{7W66A>ZoI@~rDzE%3(Kn$yv803f5+=zYkR0(61|`XW27DSWt17oL95{n4O#I5R zA$4K#knrQO`0D+?Vk0KH9w%Q7o15@ra0`SaCW>+8e&*>T>on?D81gpl598c27U3It z1%M=blLuXBn8QbXau*P$jSdcODt{Dd+RnP>t7ebg}*hS_xL!R2;X?}FP$u#Uf+#!44!uzfD?GICAUgatsoTxt+ z)?Q|8gfx2dBMHkk>;PuPo#+V2S$kR1SJ=!z_IGaA2b!(X-u>1#oQ({e?oZ&OvqQLZ zFoW~QM{seygs11X_2=2;0=~bzg%?-LI#|$LKe()e0ynoSSU9-;`a-uNp=v($tpZim zt`dMYSOFcs<7)@IdvO{0+P6<(A%vb$R=*74f?W3`VOsHrGI5^taHSdWPr?BWr6#GK zF@us=b)90`Scqld+Kx}U+Ks`nllH*A{=9KpuX=II_-*T)Z))$~^PRgj!+qR|{YSHX zINF=Q(R>0A-D&;DdvJO*httD3+&^-k8Qg7W`}b$#W|fVb>32)|!Jr64gJ6A_A7O%i z%p>oU5XrYSG$}JFT0+9pJsl3`_$Ykc^-ADD^Ex_h1LcAOio`M(Lo3T?|I4JVx>Q4i;)l&&bqa3ebC~Q~0G?!S7n*OVFqBDchmjB;!PshUrJC*eWB?K`Z@q z1le7Z@KWHLM9)ND&^xt@kgi-pQs`6;-?a4TpU`1!f;YK4?;}XfFKl8o zN3!m)PD$=0g9;_~imIE5F|A?;1zyqkGokNcZF_D&v*)?F*BoFzuIlRq?;K3wBh$}t z-YnK|yIjMcUR=SSUtGZ#PcPt$XP5B#_m}Xe?=Ru$`3>A$En%^?aI*$j*MR_lsk>cZ zQo(5A_C`a!yxIo=s&+=Uxz-RmC#n}S(o7hUxipf(@gr+p7_>)RN@OKZcmH~nO>jc| zfRUmNF$dCiMD=z08`}kxv2FO61_-)8wEeUVF=IvAh)msBOn)4NV(Ovw+o0>3aqhQ} z;89-73$)S%+P(bs>^?MCTW;0>i}e~7i#6C~^BFtm-yLW<8Np;Sg2(&&@WK5fcyj*` z-gC=0JCa00NZ{m(20Cj zBKHJ&V+_hi^%AiM$Xl^iRmOa2eW|3uLG=+ZztXi2J3u*7ho1G> zBf?jKe+M+1A;@bO{>PJ#v7Fn+4nqAetuRj5`~n$M)iKXGJFn318#I>W)AxBR3ik^- zOej#PjNVP)M(LbCTZ%X&lDU^KZ*|?v;Xld(7OW73ER9@~auZq%IA*(L}1QQrA4ao%yv!JL5DLM3?*>8+_Dnvw7 zTWwZL-f>2S2r5flwoPir*p7pA_Ck7GmEa$)3}`4@?}@J8uDb%x*P4ziI6Iov2Mazt zoWUm#kKpCi0$yI-!po~AymDsVU(oUxwYS z5HOwd)ZK$#^&6%dK56?VxIY&w3PQO+R!Q@2g__x#WD+Md)1)w(s0<0)iJiEf7me{Fz2^Z7C}^~9PUzpP*WKEF&qpI@X84aM zW7yxH!qKdm;lFb@gF8nvxU)Zn(}Nj2IGV$Qqdhosc@C!aEdSl38BE6`FfKT@w#}aY z){*x7=Yv?B=`T@3Yk7s798RI7^n4FGg22%wT zVjV=Lj-EEi3Fa>hPb7sr58g;{%k3}Rw=`BnA;_)Cj{pgv1V5$!(^x1lrexd|4_V>6 zw!1R^LoRqd#5U87yflAGevHjOK&fos!0H(V|mw&;8q%H@Po#%D9g@G|Y8W&Lde zK96(KXOjxfrZaeWGVdy>^T7tLZdP!0yM{kJy@WqLy@c;xUBlB?H}I$Dm-XlA>swgd zx)lN&SgtqqR)GZoO#BLgaRp;DYMg&l)qmaWYo`obug`+tE>;s z`_O%k;nC?nJic=P^XaHQ4+CLbf7W$ip{Z|eTZg|5N;RuxOvV)ndmze(`imKz*%d+9 zObUV8@aK+_=kj<@eppr9P9Zv=tW{HyD2=h*rlQ5J?Ad+*m0YE#f}d&!BZ!jC-lc(B z%xjtgIRv@)vSqNlMC+CDOw(UK<1CIZ|J?NX@?5-gg2;8z2zU2YP*@rNvL02YWaeo| z(rR>xj>v%bSrmt=NLJx^=Z(#2?NpgJPz2is*sPFuEoH2^Vhl2+Y|MnfssA^{lz)LJ z0v>9Xjz=3m7jaZ56`B2*f?|c+XfMltg=jTWrhl{AHC2CKQzRm(?Pu9sJWkTHR2m`= zpcxki!dnP9EG^qoCTB9ZkjB^K01*5lXN)E9076Roj^>L?Mz1)XA%G8D{awgG69p2R z!vrzBMj1DX&K-z$Ff;J>-F-NmPvG*wVSRf*vpQe_udkMHe!YShm(A~&*GqVDy@cD< z8gAEXIA5&cVzF*!be9`gwbvDHTIbkr8E71_9>4AyH`Mle^13q;nyn73trZJ;1!WWl zf#tKZ;dhUh(ATEV7J)Sd%N67Cmm7^n!Z=L>MxJ)x4GEawv+%6#wxu`^f3vaOL4DS* zNHNV868D*y3Px20$A@z`o*lq^JgPsZZg&501}FPdIN6`Uor6ieo#l9cR)5^G{*!|l z9Ly&$n=}EZm0Ll824KxAn|3_;Gb;?5F;~srRKARkg`p-JFwGY`o=+}O!Wwa8eNP6 zdRq5FaGfC2k|cc!^qgd<6eg}nmJW(~lB$WR0EwnS$uIZ{%5NrlL4*7r&1U zo!BUjoXNovN3Msk8DG|Gp|hXZ%kF8$vx38BWYq?ekXI)P2>q-?Y!0^&_p5U*A^IT*<8GeD10Wa>bfo=~AEC zzuxpq`@zrdw>X38_R#l}R$RM@gw@{b{MLf*4Y;RoQ7 z3Zu~5=m<8*1uLkeO!3FEo9RD#rq|Bu5A!GOh@ci|m*&=zo1r7%{jm z*qNDJ2#M5#@+7QO@?Xa~PDu#Dl(UBaqJy<~(DV(;pX`@{P8(RR$)4N|oWN?Bm@6N@ zQavS*N^ni*&DAQ-|1gj7VZ_Xe-<*T9|%l%=&(`S6n-Wb=_pTP@yKI;#OL(L`ZCmz_nExm1T zrVx870Y5hw+oGJ~g4*egNq>f4Lx*)VGvuyKbB6EP$sX*@#&CAJ2OmE^hO65ZTrF1c z{AvL&E|+k#Sk(s(K5uUuaN7zl-7;^tZD75Di^U4gZ`Vy=p$!nMVATW)P^Hd^8+FUc zkpoJcQQV#;;t}dJ`TPKhd^U9Un0|;s`8r65-KJfBmW?gV!{P54(?(`u^SWo;-X8Ny z_3^cZu_M#{_CX>)i{A#1>ZSXBcHLiH3H|DhiD_<&xPLH)!^sHd?PqU3f&INH+~03L z&Z*yTWRG2Br08GzvU6f{GasI)qv73MS8DmZ)1`il~@Yu_vJ8*y(CQjEx&T@jz zI!i#4NApAtEC>#9p^V)2nv}g9{bpr5*TZkXVIkY;D3ozm6%!rM1QL_uKUv;H#E%P_ z4x2D{4_Lh4QLI(otEf+Dw?GG3kXRyLv~)1N)|X~hBkVN7FG3gLV-wk!dZnBa8b-(; zJZ3k-GfqXKj_pJyCnk0QD}0O>Xz;b@dw|c*i#v|}@bY_2?V4oJHxZ7ZKT=AO+Y4!e zZ$+b2b(N`rr?e_;7r_AJ9P#LJH512UQ0fL?I!j?K7;49b)cJ3}`I(1$**4g2hSfRY zZmG7Lxp#a0os;&^?4w$0H?dwF;O=C10fFn=ReiI7`#e9th36N|wt-jIOZd}^Yxwi( zroL^!<#)@smm9ZQz}6p+nA->Lwk3?(d)=#%fojxXZrZ4T4+2yMwYa^Bz_zOhHf<0f zH00l}m-tphqj(%=d zf4yq9cPw3>tu`H?8QeMDhr6c-@cz96 zc>n%k%}0B)NnK_-8O5z_`)A#4CumlpG(n)M2|oCC1ztZ^q`kZdh8GTuX!|=j(uh&m zO#UF{>fyS7JE77Z!nhl~f)|veGv;0@@Cjh(Eg@B{MtF`Nm~^=uTGC2e5jj<+kl%WC zu?UWr13YE>=1F!S^E_!MQ7d2w&uT0O!R9JS!hqL!89bcA>Xi5z@}2Qsctz4yi2W5$ zx$`wJYUG+MGBm68udc=o9d0NC)qCY#|4gozU+jPkKEv&l|Q zm_rN|lm0#nW7TpE)uw=-O zOOa0^I%~@Fn@xl6qvJwAKpHkE8Yav&6+7)egXL(H1}>{qY^J^?vx)I_EutCPBu z-P<~AXK;hCvVB>R>aJ5*&)pAvzI0LwvPIyo5k<*Q2Vs1KNhOCB6mi?q;kQR3ikFUus5z?e>{f0$*4K>aZD~m6_osD0$$eZ!tJOMK&4tf| z=$H1lTSU+{1gtF678K3X3u1QfJY$&PYb5&&ZE1_fibeoZ`y!`M2m3#~Cg}Jn2~1^B z@$gWwNS-6m;)<%IoVDnG#3uw>Y|*NvwoU#NY7g_`u`9yYbe@U0Okr-M?Uy_qEMuf3 z_?E6N^J5X|cdpKC^J(1)dp^~sm|iLiHJe-AkqP96*wedjhm;fpVL;-jM$8|6Pz}V3 zT5%WNC{kv9^x=vhVICir%-rl)8_~x`Dw3e>(njHW#RLN zPJmZYU5fE*-|RR}v?z_?&T--aMu(rPism_6i~e?O7UL0$AnwkS{<|^cWOt8~?N!hFf>jz+we2 zu3SK11>c-s!?))*aOt)ZxVzvtoBFeA?{asm1{Ua$xwd&Q8a3w*RMiNo(WpIy5Um(! zoyj^zFzT&sCr&EcjC*`gp|7A{l5hHcGR>*_O{~QBu8!%0$$q5;x)&h`NOUHHWwvej zC3v>kbKlq78{wPIv2Wh{nfy&nujW+zwg0=e-L-o@GUBe?bDv4IfoWx-vbGKgOs13i z`p5_KF+4b&!^5LJcyzo6)BOp|_9yW0cn*(F_Tcg9LH%*7M5fcKzJ_l);Y^8p#@MhWQHcLYO29>khsmD|GAQB$a*>|BqNuFlf}9U2PZtVxD^7D;hqF0^>25Fc>!J>IIYkV z0R*Yrj}QHfZ8y8@oipU1cJ^yMtK4iYa4QBL9M55YHirAhbNJxws9tLBoWkqn25y!c zczv^g*SCv$i@|NX{M;QZcX7L{Zz(u;pT(+KQP3U;S1(oHG@qN5tv_xB!O~p|*PcDl zH^joGHMDD|dE?JSU{**lQa*l_Q;!%vwF#J!(s`kOf-574y6tLILxxh zJPgRF!zefdAm!|_LY-jMDL zN`1d1y$c6)_pdigznd9d=lq`~9Es(61*^@vUM=8mds{5l_1OXL=7H}oZsFPGEqs5u zfUBG4?19DY3YLo%yuMk&`R%ekobdV8vc975!Ztwy_i67Zg!Xp&W_El7uyR`s{9W}H zx^{>LJl-!r^;^Uqc+Ea_@F9Lq;2Y~^=`DKWa{%is# zvk9EeCvbOf4EOdX^)h{T68~g2hUsh!r~6Yl-JikP@w`6hv3BfdV;GH^)fAJ-2qu$p z2R}{?-t~$D+w9w4uh;F$gnp|k>Y;6$3Z>0ckX}ZtO41#{vU)J!cq!mjh8i#@r zEy@#aFCk6j?e~{j`g_vQ~qtUJiVUHHqFfTY`m$r8@SWrA1?Ocy1sI* zIa9!|0JvSP;dZsDZz#B2uHeR9OStkY2yC~7!37u=ZC-avfzP+7R}|QKdAi$f(A{hA z@4D}3+DS`Fb#T$*yrs&jd&BxE*cx-&v22k)a1cgWV>)cN;x-C2T1m`fKQg^ z-+=uh>6?LEM6vH;?!RLQDm9;{GN0zvNnXFP5L zs`zn@#!(*x2we=z1Ofck0qR3+>93j->KvT0t#_**yOZFXwdTpR-mGD5H}%YZ zeWLsdV6%qKnZLSS)}PDzut9fa;i~?AeY>u&GrV0kpXGYp1p@q82);4i@$FVX)PFbK z@&|h6PT(k4Z9DK`glK91WL&{yQnjb-SFkr7!TxmIIP6pB)Q{j`I)>SF0<+nqUbgQ7 z0#)m{*MR^BqiR0cWH((ubk2}5O#sAQ$7eS!?g7Hx>JH2)b#+*wvyNN;fIFRBBTWZM znZS8bj}~=?ti3i+p-RJ5i?3mw`VtEA=Ytf}U2E>F6kU7?T zG|bY6B&TQ^&|b+}%cXSBJQp%@`);(UB)2-^MV^%{aA4?d!k=Q@Vm(_EdZ3^r{m(I8 z0&WsJ%lzaFCP6?2KRAOK+0oKWNglbr1EXdt>6x4-Q;$P^VrR&RF*E?`_INSRQuve& z1x;{*fl(wpBo&%kpF!nYxc?10K@o+KM!tianfFaX5cOar3kd&t@+YgteMEHcF8D}NWCK?A$xjXH zJ09)GEaJM+2pP}|Ur#}-rC<;zQqFEH82_bMMB+6%Ojc2;R6m1vx!eu=%Wk<+R1zz@ zNklFsDVMGp1po}T7%~x=A+d@WLe4-<`XK~R4=;iFz-W&x$R6Sm>I}BMhI!9QACq2- zM;~*cA^8Dcz;HR58se1|I*yT(>DW1fVt|Kl$PX*6YzTKrihShLZbxeeem7uskV;P# z#`3r0pPg+p0VUq4l__!u@$P=;Fy=5T?IAwyt14KWU7|m4H@6dV*2LNm8XwcB+LrJ^^ zAbM=V2W;+w2ohhmJuE{3fI2sl@D_Q*MqdV|P-t30Cx|FU+NIqRYx}<*9#0`M$aZcw z#@O=Rj*Q;i-ZcvZ3I{RoJn~Syu_UP^qP z3G}h!i}742A#w>3N^6Yxf}G!s&*btbR^HksPL~NgR)M=LFQg}8GO{5dnGvZ8ZAP3h zwlyc=daKnYBv1e^a!wiMAdS#T2nJJ&jC7>7HSEUiq33I3T0r~)5pP;Bz)`~wn2Ksm z)92|#M8>8GW+EjV2qUprD#v$$3MrHKIzh7o3p`m%_ zq$C(8Ut5U5(f2H3aZ@r`Q{dR#NFb%EVWp2)K#*vGGDi?QfOrJz4%OI-KZ$rHXp|Y! zi3+-qa1dbX?bsfASPydga#2#aVQF|QfrQyL+W>WR>aPk)Clj%4HP3?jq2glUlB z>PzI8uwZNgV-k_;1k79jZR>79$#w>>0wPOvPV{hePSszQcGCV_rP|mASCF%)OYrH2 zA9WxY1(%FwY)h$Ka+-%o+EW~j(PBj`PocoJ_ZgSV3*nS^O*yF;d%Bh7iYx2WBucn6 zA!BJzzYF|~oFvJB#8Su8f(Jtw_(=5J1>A zTyf+vk!&*6dIQGDJZ&&Q{M?ZD7+wd{1iu3WqTyvaM0zor)8B%?HS`C=*PNN*`6ec3 z_cWZN)X2AaBh#yE|P8J0hH=!76p`MuDZdih3jYXBl>Ma|M@j)hlT*2JA2=4S?M z(59puVJImHsy4rA9Hl%k47XHC?!G!NsbUlCPSn zXRgEbGFBP~frwDpH+-#awBFNnW68<%{dIJ8;K0Ny063?XZZYW30PxoxHa81EyMNv< zqxW?I*RQDt6|Vr09?Bz%YK8s}8lz}wS?`OW^9}&QWf~xLAfo_+pW#eV=PTJTo5VAG zzi}A_AFL~H!v~li5uZ~DMZ!da+=*6NSXzd0SP^}@{}H`J`U1`qfeLeSf`kFp*Q7Ko zHRdb#oGq8sG~{_`!})fr^r(PyLgnOPCy%G@<{6+Xju26Kg9_oQU_b@B1x91OJDIlovjJGoi*};n zU`T-yEc-0-52(CIwI>Xxa804^F0%rFByo?}77-h^9vH~}g4c!)Yl3J(EFVF^q~wHI z0B@KzRDew$4DF5No;J3GHpS&qt?P`XAZM;#x?W(oSd{Hhrv021H=wRqMP}%4*r(!? z;h6EMlsnR={>MgiDBBb3$%zZF-BomsRO&Un-}~M<=52|}v=<7P`tG%e1y|Z8${>jO+n1Oj4({wmsXV(aS zf#LALrV7`5@_6O&4)7;NYer2N`dcxudZ`g=3fZ2(Ir3W31avJs3nr*d^4O5UA35&= ztUiZ{-Wu@ylD1fQn2L<0j#~sIY%5h?vW=m6&-G6(!j>@vg>mFlq^AS==+2trEKXWO z7FRBZVdMnOIKV83vDkrKl^yIMe{1aCg34w4$e`w_>ebdbAgAXi0gdJ{mV@b9I53fW zp+>m4fIcC`phjb8H}L~V1$GP(QFrImH+lk#oA$dk@u1$W7XGmja!Jq0Lx1OHL9NB~ zOVwW|q-}!hW=vRs!eLLrMvrnc_%=o)g|V1oIEj?&mvki}EN^i)M&}j`x0NA5i)#5Q zoo|pM7Yz8AbIKso9xgS)El=3|z)1JUAOfL+gUbu>P{OMX3=!V_OuOVjLifHK<8;~( zS%1`g_0l-KI)@@00^yeK8oU(ULg#F5Hb@!y<=UP2A|{M#e3j~_ME-%}Igo^jb)3PK zeBiGStQz{6_QZd@-`Bd+@B!?44I8`a&i<~i_p1-cbALB24yFwh^k!2XK&at2&%3|% zDg9NqBA}@sEuC)<;Oj;*S{Z;ED$|McBP@LaAtQ0@XOYj%Sb9xc4d6xpc%~#Y1hI`l zDhqDfGtoea)U4m~5pC7TBpZL_+~tfa=F2O^b~hgV{7@J0F=0bP;e!7}!z7-aqT;x> zez8&C(XZQcA0HLA%ft?EhE9fGOwbo7L=CIfuKmXH_!I$GLSWToz8-3?>u~{@PKL@z z5}^>mGFWqP(6*!$j`3;fA-4*}qUxeNYQ16gD?k%^NzE;heYcH4g9W3q|2h$!#<jZ@__SOq{?w7$`3;G{5|siJ9O>D9m8-4V$?7I5aWifK_`xj=kM@zbqJP@ zhqzkHtWEXL!5fUGJHfr%+m4pF8{|yo_)Y8=Z4&Y)G*>Y=iKp;yJi~8VT2@ta_Z=7D zS*_NvuCMr8*Wa5N{7v(GwSo0|U4NiGyQ3OaP>n|2EdmbqsD9@Dj$kw%!N`oe=QR1g zS=)8nSIzUPGWp4^6tP6T+VdSH8ZJiVv}tvPUl|d=V`}l=Q#0S41KjDF9s|};cl_S+ zb9AtluymUhCj)evLdzt9_vALsiVrV;@HLUNEMfreATfO30u>|}9v|`q5u!X?@4E@Y=xt=k|(exMKt5_iyw#YV*eqBrH(p`eWVz4IXhV+A5o7mx$-Lz z4L-vsm#7#;7E*i`TsQzYj5$bRWj+^!gM?;&3jo{f_|PHCR36Jns^&A*DBiQaqUp7G z?2P73rq0S)<&kpeU z@ah2P;F{pB`BpUs#M{MSiBr%nR39C}c{q4)f3wHlEwFcVfKdk))|(BiZWnNVc?}nr zH}LZH1-v@HfaPLYe_ozn!K;gFxVpZD>zmsy08n3#w{Dm7*DC-_f9+kpl;1X62dZZF z-vtF+0AO!6f%$w2#|L|Ga(>;2^=3Cz{&9;93AY{A0IHFl-aZnTODk`{SffG zo71Cf1&M(MV7vu3PNXTgU%~Y}$&?UrGQO!y)bGIGQhq`< zS@tW<6VfUVZLB-}CoN~OuVlz`Lvq#;m&jY^Aj^12xx9^%n&Hmsix_c5&523|CT>MU zdR8WfUuy4l3a0!tQ=7ny1#~RP-36Cec8(3kTo)O%99vgNZt-qJeHq=@{E2QTh0Yh0 zjEFv8IJ04d%vc5K`Ihwoc9x`wy+pZ~AN(&ji@RK|S_94m8GN)EM+9P15U(H#l~3rn z+xR)U9wt&3DSj}f?=kN72;*m@E2zfMIh0&iI7h^N8s~Ns&g@EkM+D+vehnHN@~#p3 ziz~(nXg|X_YG=^vnRMhZu5Q+_SS;cD=daiiO3U0ij0_``by+qzBFnefKC06;U3>9#nHswMz%d@!#+kMEztll!M|aJUbLNBi*h zTW9dj+YjN%*DSA3Y=pP+s|^&6N2B^vuTn8p7dRUxuJaN=W2f{8 zD6vRo^Q*ZM74oAFJ7L*v*$12`{ys=>GRk1=f$fFcSITjCqH&Jw(7lKfAhtjwN92oOom4e6fPt%{5#u*YNer3z&>YwG(^#>p#_fae8zB zca9F>{@r7EaQ6i6+&O|fr$=!A-f8{Y&33!~^k#{7#QU2HBqzoM{1419;l(s^7%en` zl*+)fXRqMv@1Dc20L4H$zkdCB{i&u?7)__a?FT^sz@h*d*}f8(S2lXm$u-md@A`JV zSi*X_geQ;h!CO!6!N(uG4WE4YcEhi20E_P^zRf{b1~0Z$90X2tt)i)Uacwv7pa1cf z@c;b$7qD1cSZr*!B_*I^S3Nfa0bSq54lK!U+cPOD1FM@`Sl`^j`|m!4_uqL4@4xp1 z-h1y!O}}+Zzlt0hne+2B%cs>MBSrQ=^vCyx8WjlDo0QC{sj*KGwA+WipIXsm?C)R5*NWLMb!4R>R ztrl4X{&zdW?Ur#bZWr*g|MK7AfBIkkH&|3-SXSe@L`C-McPpg~tpge0-taIGI6hsj z{y2DqUTE4_?8QYpDB^xJ-N&>O(WcvjKAn#1&%L94xOcn{5AGhr+1(R3JU)iQlVkYk zorm!8yN}@H^av)?DU3%|{qbo9>zYQ${|`>J$BEvEn|B%blw1H8GIpqB-HfVjoZ{N~ zM~Cm#Gu4|7JpKM9{Py=>z^{J$NBGrmKZoD_`8)XipTC3a+grH4UBGf>VYvpV++O|3 z7{=q~W9n5D<7P>JH460^KCR!9EAQHwYUflr$Mklwg3ZkWmM<^ra|Jf;T!HllCY7x} z)6p2F;|YB5)>-}e@PjAy=ZBxY52we6Fq>8|8ISwD+x6ju8>rj{hpOE>jr?94tnd+B zG;SOb2i@A9cb$X!^!Y3Jm*0F2|LOnyzu-UpAOAOu4-Q~*cv#~?4aUH(Xa|TN-iEy) zGvu4zYH0e@eHK?&u(-O0pZw@U_{onyta1AE<9FSZdN-5K#=EJ0(Fktl70=_E)C8s+ zk2;?G&p-bq{LlaE{|=Wc3zuu#oedG3YXFFjfavGn5jn#SyOu9UYfxc7B(qV2P4Fu+;Apj_*DM#9jZvXa`;-7t;-t09cVe}&{jE5o%$rFmd8MUI zJ2*r8ClgO#X=yU=3Mdwwfe~Xe$jVLO%skEdJ4j#B7gBlpd@TC7Ht|z14#oUjPX^Ag zhLq`?(K%JwnaMDs6VY%;(7+1yk|dpFzjlc!rn*m7v-c&8 z!6?!|dS#lZual9UN}8o5=hoTVLe!|uJl9lY={p@}gYeg;L?;HroyFO^LFhjA+Cj5$ zyWYUM0@#eJdjGc1<%43uitC6lE!Ri)opaI+&lQ+>A)6`V*}znDU#i}*TCdh{yV<~U zy@6L(H}KW-bC}Pb*0cT7=?u?25uBVH!s*EoJh*pS2MF%pJE_0#?ag3+f7aQh zo0e9<^())av5pYgj0-;dAxso(NKMl%%dhwOw_6Xz2Pt;$v;hi0%RezR$~#gL z`IXUGl-68uz{{FZ6UTs8uP@-c=P%*wXD{IS`4w!YQ!ukxjq|!APAFS2BH`^rC}I{M ziwWH1*^DYMBLmCIz^yT`aDC_wv)teo*n~A>N$*hJ3FU7@$1M~?neNspHq0SfbgcMm z=bDbIka^5wr1EWY9(vcIdfQiYMG!0E_a?|fAZf`L7Qa zY@L$q7!p=P=E!eKz-QbpCVxzE^%!D^K_BhfyVAmo@==`;MhK!?(9j`(;m|NaAGbn_ z9^B4inTp-yn-vIhZUi&cAcv{&3NqM5W2x$>likYnQQFv;HHK|0xR#(ya~qSYbv zpBm0C27JGAg+g0dw*+@nD_cA6Pc^rJB5vAY=nKTpHsUav{FxZovyBaW$dH@L*Iv1F zo_hUov1(?Xouljak-Kva+@52zX%6+9j|}XMOnm^I3j%!h;XC!`2cNzRKlt=Lc=+HB z93SoX^|q(t8+7$xeiaB!vb?mZp61xde`&WWxY<+Zh}KK2Hyil!>u2!ufBZH4{GWae zKmX_7G)w+pyaqcNfpx1RX7l<}O$|)l>}b7mz-@i#XT9-B>0OuGW}kmFNsH0N@7gm0 zn%|~dNzp9%Hn6tMmVtG97Q@pzSo0dzi$%TM{m#K2+&SEXpZ>d#;io_P1pbG={Q*2U zy8~0V2Yx(mZY6L_w_Eru9ht)v8Q-4tl9a>LHpmKG0H8T%!p$PP6$!8jiNQhW##GWy zh$YgdExVqLVKb@V>BSXXUS7br&tBBL?Y2jZN8{$OL}B!#FD|ZOb~=XnY|^agK-WqJ^&zH@_xi`zIQM7f^o(dnRUHIaRTbP; z29|Cmf}8c{6h(p{au9%as17E5W#1dZ>6ckHI?%yO8e%ZCSjjGh9IkYJpDi@u1)Pbfi*gxC&-ZPgyswsHG!>l5R9zYUuno!!y>?KPP}nC4P% z*qWpRExi%9VR{43-)HZBZ``uthL-Ns`L*q5ut)8eYj^g+^#XqJr*Giv=jZUtKYj&2 z`}r^6ohJ|A-6v=8PJKw-8651->yPbDqlfMW0|Rt?NTCqKXcO;n%zp&~+Ow&h!cDye;R+1=>WlB-`Q;7#@$0AX zkN@-=`1pgj>d*al)dqAcR+@lEcfp;G;YsE2xc}1=+k%smC(^dz6C)!zlEX& z_Tt5B_}%ZnfafpI!H)hv=H9ePlHEuUb41>CS9SG$zCQR)K9a++<;<+4*+bejnPmGx zYbG;&(*KjmWIFeYv}-%Z&cT^S4#~%Nb@%JLySlsXJ1a8-G9UsG4!|8iWY!xAZP}F> z0XQ5Ehr`_gI9k5NqELrsmI*=)nMv1KNk^gA3+rkY={3Y5m{lou(E2f5iZVzQgXe zNxTI>RR41#$uEJAP*4hF8cE|h44kl98^Al!VZuS<^HEbcr=%v-$46X>V-~H<)!O24 z`P%F^{*I3H)EKJu+se5KR`^Q2GpyKtD~(CvY&|x*s#)hX*XAkX|Iw3I z@bCZZ@Ac=+_7QCC96@ic554&Tw7VVX&(GEUlgrW|*TDlIx8@;qjU&T{c6W307#_c} z`ctritl^_w0V@80=+)8fRiMg~(FDGG`5u1z?K5rsUzqR1KmX5u2LIwe{{#5+;}77< z#bu$BcFWlppPDGCd{yI;?rev#J?mw6-RV+|rH` zeY-^qPL5CE&3#P%wl5c#L@PqPkMDY{$53g)= z*rlt>!DNH`0sGJOMzQ?sL%jiad z`Y;`uARWr<8<^62-E1)W_1S@{dXkkq37)nQZt0ayzS zS3t>=7>fk(Pvxw-Zye=S(793|&h{p;BPhN}WO4giJwLaLP1U!7==u@`)UwTZ&J;w( zl`~j_-7jnSwxa3e#^F-*E0SXf)q#{yJfKke+BhX?m=SVo<>C19!~5dt;W zlt&=wrWdh)q}3#WK#^=A?9QOXuPldxL?b|ELOUI{_733D(^qg&?}8{PC{4SadCL1j zR2HO(Ek#`;loGqTr?`_e~Sl+WH261m@!hImv zTn&*T2pc8jG|3rAAyja3`r$m#;b#0A4>T4j$6S*X6-*7U$Mis9nMKTfKOldm&8e;>yWNlDHm2AyAlQ$nSh5?NLq?FHs6G-4QI1*F3Ok&YV}d=4Cr<{ z+89wb@4)$y|Mcf@_k-*8HvCDw<=Va_z+FKM zHPk%u4@=dmSbeLES%p>~W&Ho&|M8db*T4Q2{`w!jgZA8<{-|Jwi;KNtWn3B5DptTG zw}GQ*^)X)sH9Mq=1A89CmQmeq^Q|~yk()~d^llUt-=N*;>;5@A8^Pgd1iyLsTt|{u z#{ZKiui(G=*MAK6wF3Zjw0yn8!>lG**8}(sh>jZJ{}jY`zrD5iV|6YsgZ*0qRy#x$ zM?tNIt26D}dk6Z+$A|ZBhFTC*z(Uho5Ee2>z5XpzR<5>>%NQD)JB0(_Xp%!uI{;b* zf8re>RWe2fffdV$(&-&4BQ0}%t%OhH^uz4Bi%C7)HG<(sSA&#PVG=W^{k#H*a?$!` zI-fM-D02J-i`jcxo6mY&#C!th##`&SDnkw8T7c%+Sm`NrvlR8&d^?vISW!ENXb0YD ziZfLC()G4ljipB)zrvhAjA~z;lxf7~bA^R9-F&1ct3s@+x~JRB;}P=@D9v^uqP}2~&fl1tm4YB33b~DTn1#3p z)}v~r2s>9yCiJgiez$c&^rbKTqDq+wl&4GBhM06dL39m7^g_D*3iY{9N$g>?hg7*j z=iJ?$EJv%lFeP~DZtD&u52$;jF2&{Zqv^8?7#Idm0NZ+jp9@{6zG@;ZYRAUb z@hSZJ+o#YObYbt{5I+C-E`0vUy+X|sSp}U^?u1i20DaA)C9Xsf!@xX8$J?!}{JfdHC^%}_@sK=1TNnqI*hy}n; zo592t!$ZL1ZwEm2I{~%n5+jT&e7JEsCHz2+s3}CgEDmiYsO?2N#p(Ntxjs!Awm z*HcQ4NI7cGc84@oeXN%P5{u7FRfIDI1_(Pl7^hV_*G!ds@i$!^>D~2Dq$}a%Q`Ify3pXE)FZHrW?YOU$PNYY4iZrFKa_0PvpazW#+ILLDmsJt_y|BJD z^8B$4DPGu~F%p|F>}38RG?8rOMm0cN%JBSR~MD0PgTHNIg^6|7G)C zy?VU8y$8=VWb$3wlR47;4rOUD9&4>;R+6ZA1 zbxjFAClGMB$kNfIR@S@y9_$?)!{fsv*xcUJtL%EWL_4ebz-^m5-*d;70)jYE3=8Ik+fSY?g8GxxFPQ+RtlAgBJ7$8g@Z9H=UXwDxy84T!U%QnyN; z#^E5z7FH9^JI%W7zbc(dh(u1IvQ*XBooiFgm-Fc{_ObdN;8T}_$==PF0SdKw)RZuM0;={<9E zdOXDRzvqc%k(z=lydoS7PfMS+#xz{ci~qUyrP|tL`~<%UXYR2(FlHefC+QkhaIQUP z6AE|_J~uTakGCnDB*Lq=3|=O|+Rkr@4<-TzZAuxL;SLNALMa<45r{!Lj_zVU$L6As zOS=38XO}{;6a30vpj!f{4wQ&D zyyGt3Vexu}*+icI=HWB==DX+c7k~SuHvadAXRxroTHJCl$*Ua(`_+vIt ziVKMPRX0;OuMizv#SMxb0eQJ2psS8LtS!UwM8cDeZTQQ-|3(}CpMQE^e+&>q0?&?} zre(~oTv^^e5uUDH-lPpG?+KPCvW{Ib8V+G^IE1&GyYTeIMtLj3QkgHejW+X#23ybe z)dG6_S`^%6o)bXUwBOv`g>N1`(=hWBuC0Y%_HJBCIR{^BtVO8_hGK*L$Ui-iy< z%nd)gokn8%3I%tWLtQ^vBPW3BKd$qJfMCPoM)GWl#8%RI+0R7AdPLcQnG&#r6-b2aw3nLzvlkz z%J>IvB`nr1;mbAiMTSQ-K+_feaH?$GDac=iG(dX1UOAq~3U+tUhr!YU9PAvx#>N($ z{qjqA^7uJqAmOtQZ|UvK>eztZuAUo%#=oOH${xhLAi=2_j-_uX|9v=OEMhR-`Jb3Hc+5>o-sRO-U{qtbHZobD}ekV5uYsBR4ueg6KAr z@6BqF@e-s=Y=VJEunXNek*tp9b9%=hTt)4 zpSL-|r=~`$?IUr?7H6*Td(I~lt0|RQu~PipFPWd|E_&BgNT(eSkEd56)Zps|0)TiZ z95T^GLI_~VF1*J86umiklt844#wPE$Geme#rkQ&i6d)}<^eo+vF_qF{7jbYQm$MsI z;DU7Po&x7$JG)FJundhwsuu8z?X1gbrArr7p8#B%WdvHB-$A=oBmZnmL~eYzSj@NqX}$o@57^~ z8?bkHs$&-v!T+Sa%V!Eay!kXx)V;05jo(1Swtu7>fE+{H4Hje`x@5CDo0r0Kcu-`W zhngM`%W-|0U>eeL4$mbqz4eE*Mw*QIc;2{H*(7NnrQKYaN}U-!3oaTS&>t-*LS)(!w;6nYhU^|=!b$`#=!nE7HRH zBAoYvcowLJ$Y9B-27PbU;qWze?>JvgT;f7VzX+k_=#}9boOi7L?eh)u+Ix;>G8PlT zR~)H;%H>FEVg2EuM8=V)7jt@U3X)XLz)nK{x&0(sZ$v(&C0BvBbq-ul#fMD2oZcEj zkIIWt4WFrpAUOzor*tm92Pvi7%KuyjY~3N}A`Uv(6}9NDj*%oCer(*dVcrQ`MR~ zi$zHH!Caq61Cm$xNeP%hOd+^#yIiF=J*BmY(_y&MQ`+);VG+;L6r@egh*d)nz<-2$ z+f}J}Mr7p{+2781Mfj5}gU7SeL?OTy`qC~Z&G;yP2z1A{yB*x4g@vb07n%wvZ^DqX z>%)kjpZe>Y3B673x@3OZg=iS~z^g;Qm zv$Q43#we?dT|{Atc*Ub!CMrinT}%|`t);W#%kYu^$kfegf~AAzYy_=t2jn(!;s+bS@ zHh^9ab`Or>;rFlM4?f@52Dd_2-%b&!d!}iH=??9w6$q4604P3Tp@;w~addIFW9?6a7Vb0^N3Qb386Oum_G5AVn(cjYBiXsKAi zybUpTrhW6%*#TfJu@bB!qn?{OcLM{@E=VICU^;3g!>?Uu;aKfB1`k06FNx-0G4pl8-0V{NTxF{F@x? z3_iGcmT4T+D!Mt^ke5LYp|Xk5I5Df^S-C=;i830zDrkbP(e0*4E*R9^=R!LGRM5sT zw0m9X%+0~uon3hT^d)@y;T?GMb_=dvUW4Vud2KZ3dF{{%j$yrW;>!Y2#&;0-nJp>n z;v{_|l7kuOmA)g)ah@Eqtfg1f_YO|r;mI4l)qXsg=sr^p0BQOQ19#Z5t}fAVWl&cC z<>jplvg8A0^gn<37T#{|=o<_A%Pr{7cOaiks$(lAh+ayJBbvp9`@qs0rK=x=v|7Q_ z-@_&-Vr*L0ax~c*2~KAilHmkPa400QU8)=j}0hV+i8Qubh?VlNQ=D@0N> z78a0I%Ec~de-M<2_H(r3ib75hKv!wRKWFllu+M~>gAwpX`1|@b?Tx7V%4oe-Fed34 zRXDqcQ(YO#Pt${=5@oW-3(^2rqool{PjKWVu6xtjKe z4Cf0yAS|wMzw^oG3#Xr@{ax5uc=*j<&{-NyT2mMF@H*$YB)lCnuwz8p*{WBZGQqLE zboEdSzQsJ5T2VEL8nW!*pdh7rE z$`ZWY-iN>X`>){2m38>!qdPDd^k8n#uMD*UOx(aSXaCI>^H&@1;j3?+!qeC9;CM2I zE=cIA>+RGvf5b5iTQ*QV&(w~$VG9A1@dPHL5y)|_+iG^at8M35*=cxZp_$ThA+_5> zEwbwvie*7%jH;syg@Yg~uJtpH1k4Pz{e7A*&Wz=N5olYGJSgO{l!hYo~U9RG*y-F6FYHpTN&=7C3cY3HNpWo;94wMn<3j>pQKfP#tB z@)-pMWuI1GX_PUbA3|aascJn5OT;D$UcyC^$LZHde)qk744A012|PCQ51%-F#`-0| zavFHIgb`)AS&_?_93!oInt(Yo0pYP}k8A84P2g6t!8BfBY+2#T=Xc*n%A4nHPK21} zezTi+%8=)xse`R~fwGttR=TdA^t{+fvN?qFJ%HDg?QB+z_6ULXl!oX(otDmJw?+hB zdVRhoN}bK~i-~HxFxd)1&ut`s6ViFW3zcKr<-M?trZgpJ%KoPyr8eHGPFNgkKL_U> zQ-L!ad^q)sSZis1wGo$wJCXB|Yr3b;g=R=%BBgN+zpV`aa;3J=xs75ZEQD(v4Jl5Q z)3mOp@=-hZ*Umgc3j;XLS9Xj8pDwPCLhl5~iua#M zpjMnGdV4wu|I9FjRdvsMNuSpnoAAqDe+^GxzlGy`0-2C7Xl2^@kfU1)_+AJGO{sZW z)W$j}gYs+yXTviXpA2DqdIl<i}hK z{4?;0isAoefpQ|{BtSFRh%MF@UV<5zfhGxmPT-DK6&*~> z<7py40U09AGVP`Em7oS&GyR#R7o(v&#Vy50&j-$XYQ9X@ADH(6^l)HPYxsM4J?8Pi zPm@^vpfTJK7y9~anm(QgK9t{in117Y1TPWGa83&KwCSAqqfXKX%G5`p(o{T5m)Hq3 zsYshIVtXoT*_9UBB2vz+t+X#z! z%2HpY@|s_p^Te4HCD^~M0TQsZXB$Kg;HDNmmtVRsDR^|dts>OoYUDwX9x)3zHF@o( z3x~5c@4064PKYj;_T1)79zPMtClPETxy;pQU|skWQQ~563G`%n?pv*b>$BHZzEZ*S zJQGfxXk$UWc?ufx(Y(3S0l{|qq}X66!>8oAhs-nN!Ehrueac@ zfB6;s{3jp6<%??-M1equ#B)~St^(E#&vMv!zYSkKdImd(NBYP?tKBYdB#;)Y81DAM z6jCxvdQC`E)lL^2ihxvX7F0CxU()Ek5JU4*(g+46I5A-ny_33om(Cu_e@(YcV z>ffW&Asn9$VfWxfZ~0c=Pfkx^_wWREk4|B9mcxm1oU}XoMg@U_Fv-%{6W2BU`P@7y zcx(b$yA8d$0qh?S;qmh~@bb+jyxZJ?LBFRzQr6Cc82RYO!g5~JM5Zt0)=faGaO=k9%AsVOBldW+=d-E`%GSX{moU~0#s&Wt zu?N&qg!kL~@a>b=y8nBF!U;4{yGn82EN5nPqpYDvyr?mQSy zE*NU6<*-XlQRO@tcmsvP8fKw#uEv1-$B|Hocj8nwIc$BiF&(GW59xP457o10^B$&j z0FsMQ#ztL@W2vFRPK{%aZ>MJ1X5)u1m1<`-tcaRHf;ucEFvIl0@Tal|sBlT1-1XIM8jT4^BJ$0S>DbO%O?@49HI-|#WB?!#j zr_Cuqc7F<(D6i1>lunhrNyI#_4dyza3s;|OKma%$&r}>^y!2O)y0ah*BE7m9lWBd# zUJI0*veM~CGCy$>=*4V-M*iyt9bvW3@GW&l(~}#*f>OvC8bfbf%TmTvbBMH7l0!|Z z(ZKi-%9*)_UP>L9Ol>Ro5khL6AbOypLyfq_f5zw+nLZD#qmQX=(IV5^qqSi=$G*q(Aa>2rwMN#VZ%!#_A$`aPta$aO(=Judl%R z#Z_2eU4r$sWti)$BM!a7(UN5_8c+0RXYWvd)VX_gbHV234s31iz&B4{!~Wg@jD}}$ zJUoNJ{5-VUo$6RYZu-acscSqFUE}haZj~%{Mzq>3Xmz`AaCiti@3-LP#(Q|bwF?(7 ztiZy;T*()%r5Q49YFgL90|i5ITc8Lto?ZSU8pb+5BvF;9gBdEn$4EHQo9DlL5Z` zM@XE$;2Lb^At%Qg*OoF#vt*$({21K=04Qy5^vwkex&q--G4DHhu3{v5Yz<%R^`N)VvbG4< zXQ9=P%)fuo*io`{pc+f6>M*H|8)Z(6#_GDUTwnJlM-t9*2`3Y&SAvx>sDs(5t>>~> zeFS}Mf}#^*H-YKT^qsc&bv@wj(FuI_^d-D`zYT{+C(v#e*Z7$QNLmS$m7_!% z)5@W+y?dYy=-2OdVE^b8M1KISLARgT?@z5sJ`eVCgYXro_!I_(y8+U?T$QbgfbtM9#DSD!y$Ut7|S zgX7~ef8~AeIvld_0^)^^1Rvs(Ig4y!xCTGk4U4w(G2A0C>$O+WbF*Pb6way zI);Z&-@xaeAHbyCans6#ed7V6c%*9>eq+o&qE^Wd2M5R65%hj@w}}4V=|a2HDaKtD z6C>C({~@85h5YqZGf{U~T|%&06d08nPn@1P@9>N*nE27|c3=&|%T>J+=>PLb3_jT3 z$^<~A=Qo}X&9Gp#>)BEw(WqLR(%a=%K3_mjkoI3%2bcBG3f`KkHzoX(kwQUE$uFpf;Lx+2n}`?y_7mX(nR0A*rdW!9F2%*=D;hM#DZ0C4PwEEOBOPf-@O6_TlrDa#{SG%-HFMN(A=cf@ z2pkvn$i@P}2KY#o#x!Lt5hh&W`;V7m{Ns~3iQ{pBM!1CD`j`8KIoq?XGUs zXyCz3&rstDP)9Sb3s33ztajem15K9a!qsP?--QcHbCsc}toCASe_lHPbZ|K7#7Hdz z#g!}l+JILN@WPRXjS0)v%hnsUk+a(H|Szy94r`1O|$;XnP|@8Qjh4ailSIvpKM zvE3?nH%O{|;Z)6A#%2(O;j8de&Y+F=JMi_l&*0L9RS+MRju7Pl$THi|AOw{~Wr02n z79M~A#_=|Vo)094*~3ti3T2o^&(ymN@GS5!G!d@Dml zIRFli;nkaB*Tw$9G4z&-9V|Nf|HOpb<7UM~;TL5*(Vei0RWkWd5~<7p`kLt71M-k;=rnuuWq!MYZOzP`mW?^tYjoKnzm zY~q9h)YHVBugNge`!VJy2tgrY0GKGjG;Uu0D2_B)DD`Hx#6_W|+;AziN%WWQbQ;DF zWA0HMT>OXowfZvy{XNfcDphW=y% z19dNZw*$ZU>4)$qKmXW@{$5+7vIyNK%ynSqd5xSb6(DVHn_U3qo$ku89u7w^JR8IC z>0N1};juQ`nN{w(fbz`$cnqV{ z2`qHlaPiVA{P9megg^e-M{xgx>u~4JHSG{6jvADR33KED2uGK%q)WV0LmQ!)c81*l z;2JE<_u<0I65PLi4ZeKz9KL+?LdQH%M;4Aen<#Se@F%QzBL)c=Q%U%=+hK8z(m z*Emlc7lJp1rD}`bWQ4}2do>04eI&K(amE9QDfFVAr)+3rW$-j9q8AYeaQM}B5p{$k z05Ca)tWXy|VVs4rX5b}EbNmEZXDF>hDV$hIGwDjS%wSPw^`UUz#Py5V1)X#m{ulo& zo{NU-w}GGFT?x#AKQA>mDN%xvM538Ikd@}d0t`b<-X_J@A9`kH1n&rdo3K)hog$zW-m<#2LqU+b^`2j_Eu-YOw=9P8wGfpK^zp~FM)=Ao}IPxk)mIhXWQR+ka$zemh5CnIzh~gP5;`vNnSx;?ts*YLL zo-&z-BzDbbY_}0~bbUF#!i5J|SiHN=4~dsDt#{>b?%sN<0^vOqrGcck=T9ckYxiJf zz6Zbf>5t%l{O|u22$}o6DGY|hHB^=#0N)pF&XN{}yuP+>oWs%aDIA@g!nfZ&gYOaB+PZ zZe3h~fA+_p!~gJa|I2b~e{oJ*IRGZ*jtx=bZFU6M>V#`h7C|5J^>gYNgxU#l|IT%I z@WBnZcl#Rr;pabs|LOnukMQLC7jT^Ca5j-TpQ=9x_x^ft>cay@c+Rt8g-tEBy2>#p=Q?UePn4t>SYA39ib#X7y|V`ozki{F5{}F9rFOPR z;{-7DLgU>ME7dq;ln3h@(qSlg=834|{<{u=Mr|eVq@MFsr*DxKH$2sc2-$#D-Sn!ZLg4z4M!7Gvq`vx&V0}Dn?KE< z@glu!X`JPQ7v7V!a>4uo#T1i2xMLuqrzXszwFD9lA^k%Fl_D4CTAKdcdr0mZ52Gag zk&bO;F*L>U=YX%Bq7DESN$yd_Bt&EI0}1X6`&sJfb-*=Fl3G`Z8&%SIBhxxPVljV3FW z3|b17x}I1H@j{VO?wXIorg)GtoT#ZDC^n;Xf39-ol`)QRq;ZJ=CJAmr zHdfGtvjHua+BnzSe)Gckugxw|MK`x7f!pCkyLYE5S!y-P0BY-VS8Enf%!D_2=v{8AE{3v~qcJcrg~3?JXS z0srDpK8KHgbW0oF3L&);Z<2`>0O%+{uwFwNpoi+K_1d z%si}RRYLxx7EnZOl1$4I4RWqwGu6&N!#GekGZPMg#52&zR!bxErbw2OVY}M6t&qjn z)OsRkYbvc0A>>WWP1=AMGvDn@ z2m0&xy4vu(pzlDx2|qg-!s*EnR{qaFhuy6`c=~n=wssGoKR1AOx1(_~Tcde}phkvP zszqghX=AyS!Le}w9G_IBN&43yteQ?vhp@AIP&)uJQC?}t0C0hMf%FPm>Bpr5pq)?P zqkGrk-~8AA6jqiNv;#mH|LVpD9h9$?740(iZf%jV&a1lnZ3jSJ2Hl&emFPUzK?PTq z7vZ1$!N+jz>bkxe;ER9w7Nj!%MYrl&L9w1AI{kK*J4LhuKtMa|!0GT5P7hD@+4SM? zOvgXSdRZA$GWTJ*0Vz?9!jmfW0HpKS^8jV^nw>Cd#%VovTICA&NP^ya|LEx}xPEQD ztkrDMujeIEo&9%Wc%)Tn{U|~yWV-Z3N7t#N9>I**MtH>lGkGYuJV(2-k}ly**XNQb&B2z-K7A6; zt|#d^fd&cZYxN%wFm1F&i0CR*4j%P%eeRt>RY}Z}wEYmq#@9f6eJD|*vYY^Px%zb| zSl2Z4tLHzAPI761={b!8j^}EAAGBAmW7hcZ{R0IuIDl*lRK~xs`6apoz)INZ5);CL ze(XI0NBe*u@D;h9iQ-afpwIHty z%({eGY1U4GK@UFv^q!tk|DV754Q%cm=&j15$ygW7M1>gL&KN!ts-SYpaPD;5aC~|O zZ{F|fGyIdh2y|H7kxoObw$`f^`0)hxkB0De`w)(YBWSgY_z1b=x5dYhFYG=6&@DF+dTHhRFT7ps>6D-EorrpT3&Nl>@*m`!rTCE zT)hY%esBYR`pI3`*gb@ey(8%MI?(BMOQ(lK{bXcX&66@KHC@lREE!K-OE=0u?LRp< z9>SZ=J-Bp1=vxg;$6G7SR$KsSF^4v>O=L?ikJEZQmlCAGN|uR>VOFw>>lK9s!|Ge- z%#hh(Aq^dX`4z9tt(mn6BJ+d^^%`5oV&SLs2r{CA@V$pVp=^F@ z-h+hXYgFDZ>hNbs(IuYnwYpkI3@p_SCzJImGz;=5#m9Tf2=zGE!#<`tq$YRXNIjlg z<)`A^Xa@jk0SK?OXC&jTh7B4btZ#vib+X0kp*>a@;c&Uwu;IuQ&53@d)ME;f%0jTP zO(>pT5eyjgsqG^~_Bg<#_xA7!V;qL>``{eDWxI>uA4+GMax%BwK%|K?gBQfD!+~Ql zV$%`qRX{vUh1X=VigPqWMbg}7fiQhMZ4w9vVf~&pm3&N1)K+k9QU7%$ipK`v{D^d8 zv65RW^u^irTyOPOXU{+X^e#NOe*-r6_TiVm`U=##{7F86mME^Dvu9$ec@ZVjT(8#> z(CKyHWO%0I02~1CKoGwiomd7K(Xvve6)WcBJcsclhyCNz(g85mM-}uA0E#@RNpJnm zU_6=VE$}N>*5JcCSK-E$b-fa=jDPh`;aFUkSSk?-l~LX0S1+o+>YJ)d?KDsU0asTR z;YW9Gz|TIp2Y>(76L|h+OJ6bA>2`|P4wHK42zCIN6>OOq`wmGNbK`=(Rxty4mcc|t zr#~6O#^#>hfpB@60U(NN%|zNrWA`6CfbCIEA4cHmYwF?;IVS!p7Szc(=I+o4be5S)7ONps#n@So@Y) zd&8!UaU>S6*jdEF)1J@jSMDsz({+Y<2!lw@=dL`~dO_1lX`?f>J?=d3V;}Bh?vXbyIK`w;ws#0m0%?DW|~Sl}bqO#P6_8?&-%du*I~U}70L zGYV&mD#8h_0;is+z12`$_}N8}?~|($#y&PuAkA8tNv{av=gxFA_06+3?|~tno`Z~z z)zg5hBG8C(90NnVCxT<$g5w%nZb92q!~&DvlN2-?^^ZjP>)rj+c5t*sRub&nrb8o) zFUJ>>$x!oojR&KHc~~|Z%rizqKBq*-nn2$}P6(1Q6Z7LTf@J$ZVXo5<=xHUZ859Pl zusNpb@diHG!Lh9B%eVGRO8D}!x;md*2ElXd4r3OAP8kt}GNjKsw~DjmYNc8I9`w3! z{qhC)?8Dpe_{}DK|9TVpgFa+~e!0?|(~EM}+)Pc>1?T34C9k(TpNz(^wSNSMCqo#G z$9m^F0)fb z8SiQve_IF`O>!7bCZ)ej)Vpa={Sqms#&MuvsG}_>qY=E@-h+2rd+>I1M+c)^oF9~S zcy2nu!i7zN`CmuV&kOuj+S=ZO?;aPy|3*^kZJkB%zdC@Y&r`(AXz*0y$qrf&?I7ED zBW6d_Z<0PzBbf$!F<2rvSk+M|SE!}Q(&P%Qil>BUm77-Cu4M_D!iXxu^33!nj{oZA zubcyvt|W#N&t1-q^_{A&<$4JD(Uxfs!Q8C8*mH#dtJB_x(m|adVYVT)K!@ zISzj476n|vY$=Y9@bihZlDLMD^MkIjVG=aG-PcV)Qsq2~5PhtZbe^UK}DUP=&SY&cv)A^w;ip#NTYm~4uI3q1h&qOwF5w(sc#FtJ0OSp zYFm5W64ffd+A*NYoQ=jXskUyXoMnv&igK%XKAu3o+lIB}1sL=@fEwTqQ1s1me-IM~ zhYxcGRBv(5DtcaCUxm*UZdUYrMz zlj5ihH{Md^vcW&M4e4!l{onU5;r(`T{hz{EIW;E2(fdpNKsqbVm9&z%4jO12BeJ>! zlXD_eU@a7F1HbM!8E;{ly!T?JoI?SEt^fa-`1vcb6!RSM0s3pklRqDD^Y)DTF@BH; zCe&=vsZQtyPL8QWio3X;hG zJXf=Nxm$2hebrGe_oY$8U=I8rx`O+GE`lH+Mr@#0NWUB+R-6^Y(&emEp2@5*{ zv%y8y@I@KSFh4qg$bge zVbE^D#pMOKw7dY1UcG~N+xt3xg$e=*xwOWOt=!f9U}6U-xM$;B?*MrC_yu&^Ex3AV zO@o<~+eAf*@fy)Dj3Wn1$JLe&KKL5;j*g)-=s~8gbd>Zl2C80tbZ0Vwxn39M=ew{l z=)uBVAKvcl!^Y0Oz9v#RII8iA5hEKSoWCvx;ZCIJ9gfV*>}n`2rHv6&rYeH9pwbI^`w5+E@*= z_?`sS8GLDKh|rEcQT-n)4-h(vL*SourrNG2?$12Gv)cYt;wvw;)`66+M)f#CA(`O< zo-i4B@1f1~Bl$D|i^PI{Gh+>pwTDth?e+vl4~fMrT*PrpD8F5AjMJNriwFqnT`E9k ze}4);3x@0b{<MHZ=VyEj`s%`_ZJh0RcrnSLesQ0R65Z zT3*>U(S}o|cLrFsVnaMA2Yr-9xkKS>GJ%8RQ#czwi*kJZel4hp|cn+yw7atK@@r8!oRb!u=bU;N8wX zoSvLQyVKS?0(AL_D^<;oJF^u)>MQ=V13+B~IFayvYY!eheyNRrgGX+T$RMX(s>F8R zXQJLgqzwJ7-FAat=0!lOI=g|;If4(JzG)^(VO%>rJ%%;ypzjx#jW2D)3jmz26(of>$5*U`$ zXJh!AMz^TnY zlVw|*)}5iOr^v|8KD(S5MQPis2i~9j_p$)Ym_!o|J=-rSreP{*g*8f7A+u zcXPguR7bzS<6AiIn7TQUp01On<&;cLJCeApX9Z8&E&qx{ezV3~p)?6ZpQ=W;YYh29 zIu%9{});Le@vdOLiscR?6uk~PtzBxoMNv?%E)^ASKk zg5~99SXo|%)zxL)?^2o_BC!!Hop0rLDa+{geqWIEa zv`hLPot(hY$*JD@|6VySB=z(pFM!1VfiQgvy1p`QtD_oHo!8)8_f89BVX?xJ6Q8 zE_3h<_h&71spAeIs@Halu<#S^iGdl_%3zWR6UJ#q7ID6DdO!?9B7#Y8W8LIKDxNgE z29QXm&72P~==>2VKk1?J(XO64b8w|}3X3np(1ibn(#`E6!Z|~iT9Qkl8Gm-@Y4rvm z1{__f_)uze&<~b6=%<>notiO2;j_<(zwB!4nE~q|X>`EqP=LQv@eiix2%w=;%3}4F zC}91>F)6rll7a^pOMwB&!VT0%mg9Ex5PZYIlQy3ld&)L4L$oA}FG5V>70&Aa@?LVw zYI2%IQzMnH{CqCjW&?e(2q1t6-47F>6NnpOt0tB#Y63!7V~pRG4fN4LKDn>E!-!3GkqBx z=KmPA+BN150*Og-KZN~=MI0zK3)}7?a_*OyTI&Hl&JW|)YG0PvG zHF&!@KvpI=)0!9y3tU|8sXD!@OL*6WR-)SS-tPSeP5YrAzCu zzjpw8dk5MvCCXr!VRHLCCGdku_7=jRH?Co9%GwK+is74)&Ix58@&K&x1hA4!noNlB*EvyliPi-C%G z2`rOX*t}e1bersfVtd5m$}6%bD*h84|V=>`I&Shmj#%{EJ4=X3_c1BPHnT z689@&6uh`2Jf^3sViDl@E~J^z{frEA_DX_INFg=Gf>J;N&B(YLp zT$CLcbpWLMA~oMK0u&gMjtTnGxp9dkfEik%dBI#+NACoQ6W^i=MF?j`$Sc$$Mq&jx9L+jN zFGq;t$m`Wd)J9=x7Fwi>OH4XvVN{sFYK1{#*UaN;?t?eRzq+1pd7%&E!wDP?Cm^$y zUC^B@tVA(CVws#NU(X%)D$U(c`)qxvz^nXiXFhE^B ztaSX0M|!8jpx1@V>ud1f?oHU+-G@h`aj`2zfHkI@j98PqI=WIiU8FaT93dJKHqmM& z^F087sG60t4Q7s6=a}iBq~#}vI+v5o<0y}@vF&vWb+=$VHBtvtU#0+Unr9|Me@Z|p z#Uky9MU9^-x#PXGnUn6%@YJQ4{E^HrU;ZT+Pygtt`3_pQg+&rz>|ty$;$lVaHvN`J zq{}eDKgiC}VOLaw8z54@@RT1CIQLN0S6Ve|pCPy)$_u}|RmPk#bnzkZC>2B@prO%A zG~U&fJ#YbKg`=;E$qWTbml5pvUxzf#P5Lc^xp36G3j>mQKZP z5wYb63JPA;@78J6hki`e|AAO5epX>cafi|%kb*NTUCHR@!}0mOH_8E^KQ8TrU0z@Z zKnCqh=xfkc7W!~FJgtHhin5`s{l|z?gP*})8S(0BxsHkjuy+V=-fqEgcn04;egXgL zpZ#11Ub}L69hR3Cs?x=o`SO1DJV$iILaX*p_zv#=s9YSAi&S9?ucN6z}k zznUc+oUx8+?>Ko-`)cDRd_#C%Yyl{oKgt2Hz6uX+U(?3_=y(XdPFLUFpq**zXa)x6 ztV9VYjB^Dm#}0tU&*8$_5(sgtKuOx;#{!AkQN(VrTV!Yer6XZWI{-Fd_wYnJ0J3&g z8UF$TXEO{8b!&z`QXrt$?`j9gkM7=tM~|MvxO4#6w^VXHCoFx*st2=a8OLE3Tf*Y5 z)F~&DkCctgFp1U|0!zIUSh@)=motAgoq~f#Puk2-=L+OcFs}U4>Gr{SB$3?zaeYHf z!KY!UzKp|fQuREppdd5xkn!a&99|q8W8YZeIXHSv#WxLd7`uV$s3_pHLC*65?o(fp zvgcpv7eA+z9t4mghQ$DkHaUy5pAxO<>UWfsRKT3flSE#f+-{Ts$rC`ri6%T-BDX%I zm6SCuR`;{0*L8(RJQdrJ(quXiX)k>*cF-6~5NIK2q4F-jrZzvEk5b$P`oBp{(6D1t zC;y~bXo^~90A$Z9mL9BG21UQee^`-$9{T-Ew7WcGU)^Ia>tR=44QAv=lZJ&KbFe0p zTwi@R)&a#PAY{9yNof(;QPx8+{r)Zt?BX5(98EaJ62;1V5xrfl0x!<>;mX<)Y#$uM zcr<}dJFgWT7m>(LL`sLz^-U(w?zUlWX#tM&9G-9P!k_)!SMd7XHhggN3Vd+uGF-m6 z23Ibw!otEFEH2Dz!&2SDE=nV?0;;!!=M`*Y$ZPg9f!5dsJYp1)UXCUbf^f-5^u!G% zL&>awq6Za@5w1-b)Q0;D-pO^ptgbA;{d?Ep>!+_&M21rJDz~k>Z0BjeMZYLmLLD9G zb@gok>UzEh_itA#^VN}+1}jFE&OZ|%ay`yDu$&&eD zO|3oIMtxA1nia`#dCvhLgh<$iKqSK*juV9glVAAbIZH~X;;Ij+@oMl-TmeEnPoXa?W5aH=AkSn8q8w4- zIV6GPAU*>x98A#^5X6S17h&WYi~S38k-1UAx5WK= zLK4OwS5mKp8wbFHdpF?1ufKto+Kne{2}44yjyRO>6+fx#0DJ1zhZFez=^K3;KwcT~ zsB)h<`I;2mEYpE1)y@$WTu=oWR1SdF`~bT1b0E}qkvuP{RELsuTda4IWEtd>97ZQ+ zuylD9?%ui#7giRb-EQd;`D9!~|4;Fxk<_hg#J%qIE2q^6pI`V|W=v+Tar>dFD1pDZ zY0rBd8!sY($D5=;eNDlW{0i25;=ZobD6EgL^KYUa66+3XPE5)_8@(HsZdf2~e&%-6 zCIGh-dq*C-p>4td5)l{nxS$-+u3eB=f5X-zFli@+ zPwXm*Xx~wQ)Aeo)f?!(Tw0ggP=p6NVOJuR)T+H@YcOd)yj?J4gH>VqVWzU7YOrmN_ zpUINZV)+m!f%re5eL*dd@Jh3*m`+DDW?WbcD7MV3wltSmNMf6H(#{^T;|o~&9`i~# z2aZBDY_fH}*r{8fJZ5{n`s^Pa!|S)(uyb$>!*LF633|&tt&2a_Gl=23z-5C_A%{OJh=P-eGyEuEU93krS z?&t(Yk6*&Oy+iow(KEPsVGS;>ufgRD%Q`~+^3pskFE7CI!W=9u&O@u6=`H7&7TE7; zb~s=Ju&#@ZRzRFr{GsKU+jbFIf%EyAdk@xFcGU{ubtrd+7}x0Y4bCUPY_-o}G#bOg z`~YrTyQFEovM>*_)q?TasB%EKNg!HC^CO2Mm}IX9hr=^?@pc!T*Ni3G^gDNAbNH15SUNzHvkZ=!5@iSHffr%ZmfJ zb>oueFPl1!BF7!)K)CzC!KC$}ZUM0SN?1G@^y6dkj~;nR+HXm_p5k-nHP7SxOc>M1 zXlTw8=jIcC{z`-AP*IubA`%a~LnY^T4e+9^IM3Ra9luvEZObL|G#%J7r1;)rX`* z<$@*n!J#L`?@ZMZdbt9WH*0J~#2(j8`a#&OW-!4y0}W)w*zDt`I7jX)>pp(YBT+j6 ze62i&S7>%H13**;LzPbuMIG`9=B&46xU%)u01f})`VS6I;MKcr*gZJb(aN*($~0L7 z10ZS*lfdQ+)G$%p?+#h*U~$oO4$o#-+O zralUgYeP|88>ja~2m$X8kKo0-E%@rub7*i(sxq1B( z^tv7BXFcflT3#(?UQ|0Ss+DJik~vF{r|;@NY&Zr-SC|fb!g@j4yi>;jz`-sgqZq{N z7nSi3I{2Y-l8nX^n4h16m9-Te3t)9&9u6lHI652YermN_o}nw<>Px=QT5agIJ8*P- z42No^erF#J504>RoQFYwP{fxo0rsL|Oq7Om{lqu`-fr!|P;LJ&qyKBCA2thJ@mzJP zjwV<*>hduxEzW7aQqHC7eHBczc9f`?BvSvanj0atEU$nxs8B&rOA)|YCk$a+{WF@3 zj)3HpTSu@D@cXj-lxkC2N^V#)kPY+KSa5oWy;D-4SJDzIs65A))8N|t)M^}{mm2iL zxgg{3vm^O6hKGZ8L|ftuQn}K6_qKi!yGG$0Xcx2Vtofg@L(XT^*?JA7i`e2$_|F?+ z9W~vQ9xh>#;4?dc=;k{xEl7|G=Wwm@!gkJWxrW>(~CsoCq*-o)m`Lx zf{k*OCno6r;m+psxYoEBboTcT;pNK>*xf(WSCmO8&g*zbzRlvQ%xXY~-N3SJjN|I8af&TE`4fx`B-$B3A(#I6WliYFugmysq2!b=` zITf2&4Nw?M>I%Zv!hE?SAct|g0|%2aJlfcV&4XiDefkxfLG{68Jb`wnIGUoi!aulk6~5otf~~jP&>!@m(`}bmB{H*%(P>mHit<*4u>=^7 zCh%@^4<0^#33qN^g{8%XVrPavUoXP?LTMT6e_8Q8FN6O*e)d|&7-;u8I);UGZz^z* zvv(9o?Hp2Lu-g)Fadipq-?^dr2f!Q=r~}K&ie`2Q|7vy$IWZiuV)d=_ppiPkj(|VAn_$bY(G1BM1-c1L^hh`k#xKkEpc&OP(P8?s1S2-Ww0RAl^@v7(Fzs znf(9`m>lW0G zupUHXCcvB2CHltAS2f+6-IJZDD|nvd)YNPs6H^RRA>B-t@ey3c&Dan}QLUcXlu7nn zrZI+}oxmj}=XoT`CmIw>CV3W~yHsbQRukE)9O*}p_>b^;L+nZ1Kj)C#iE7lnZRgCp$#P|@!v<@2mOs~#I3zPzx%nH6=l zV&Cg^^*R22zXxsQ04R5f;d*S=5Y`TW^|d9vvVM7e1^S(~em|KMTdy;xG)K+Q7`J3* znFYEPZ(hSXSwLu>q zp-c~X@U#P<44$X>a(%UM0Bjwe!0_1ybh{nB!ak9?wO!ati0Ac+yuJ+}hj&|h@bLRr zu(Y%QcW)ONbInttT9M}4P{@j`Jl3LeZtoqy~W&$AlrPjO(MZM2+k8 z6rVqBTY%BGrqV6!qOLsV^>E>ov)`r|Y+kFGjHGOd_FF?@5WB?^3VHKj8m|yL?IH!E z^o*3Bfi(hj#yoHy`d>uPW91~(cftlRliEt?KUGQ_xA9!*_HeKw?xnyZ)XvH+_=j|1M;6&u1cx2FCw1`1!xip&sFPNOP$1 z4yF4nq+Fz7VUH_mJOPM@1+yuZKtr$(ycS6BgMYc8rT4^!iDN8;jQ{ewx-y$GJSX`C z&W=a$^38kr-8WBQd;bvn^8;wL+jDpDn1A{Pe*5h+xV*Nk z;{zyT^Wy5FUfo?-nAe}Rl?7N^Edsr@%PsA-0|2UM_tiOVqZm7JM4PlKh3njRJWYLQ zP4IAGt8Y2f`l4yq%E}^qaOWC)_u?J2R3JP_j8SXC^v?pQv7oluXPq|e92~*pr?23H zJ6G$7{*@3wgms5s8K}}6e>feU=>UN0?Ej06O*m9HRg}^Hi=8eIq>s6hb21*ocsz#X zeixRP2XJY98J3pjq1WrsgmVHt;U=?m(ceYYqo%F0yk3*6XXeDnFY6n^$ju&XjEFp? zin-TbG)de{YEjhBe*Ox`6e+F|#r4$sbx2mQFlMGhf~6DXA0H2X&gBs{pntfo4fWS7 z12Yk0EVtMq&W`L#Pl)43wl38^3T7$vp_r7Q`j4%J9oWd+(khkw06 z0yrDWfaw-XGx_&i-B_|e!$1PcuAMX0PmDX0KT#c&E4V`vs|{s4FX7_D5q3CqFF$p^ zHvzCI0+m{ir%HMdMdf!AQPTM&0D*r;#MGER`TfDilBnrO;+2REKFvmrf2Z5f3+j-q zQ!a#DBA)5~+yD$>;F^29g(G~bBh2Q0d86qw?&7dsfvja=pL>s*N{!eFTRWm^v&)xx z8FWq=mz{P?8~;Zqr|{~{CVctLQ#e!ituGAp%BOY!gyt8gr8XWl4Yfg&7Y=}heiv?C zT7|WR!T~T+E4%qb8%P4v%FJ8kO##|?$|un2v|upk!Hp{y;M4mzVff8cc>3}!v|Edi zwFe-_r2*rjMJ_l9uqt$0C48wQ%OGyX7;P#1TA5zS7n!KGV^8#r3OT$xJb{Exy<5Ufs!#NFb+YKoichO< zuW6XVK3M+p?iV_lG04e+G>y@9 z21Hqd96y1bjf5bH(~E=8%*E_xd=4pe4BxcwxGj-$fxtBsfW|PwlfJlj|Bm7O__cw z_xpLOqD+TLXPiyfuY4&^NY3hNh}YoMB3;Lpq_Z|8KoS>Ha*L`5WsU}bD)VYXz|m~2 z^ZF5sJxDuFV@AfLGH&x+R4atleeteahV;}*A1`lQi|YD0WoTzv@l2ha|NVE*;8(wW z2*3IE861vs$g-B+S`22DnWr941&kY%7KAb?Mic0DIqnv7-rxRS%U zgxfbS!+-H7KY{&|Q~37bQ^-`5coPji%PO)o#@&4y8UIzDyuRwMh_)@ErH>4>q16%~ zd&Tos*^Ose3-Zwj9&c>v*Z~Vq-|C$Wm)4f`jRGoefQl8cytDwz%k!|lwyZxoc0j)e znJ`BlO7fO`BuY)*{0+A-_BK)qA2-LAsHBMRdXbta=p{pBb(>a}7U0g!%W&z!GAyWD z8d@2QN8<{Ws*cLAa4b1(=;n~AV;H?I92^hf>8p48+P>rC6KJ=~qZwpd42b$B4b5{P zU~6X|9zA(g1pgaPpf3Ts8GrttGSt*KReh;$H&|Yrhr4&K>39;E39@KJQL|&_mKKA} z7f0#^jTQpnj43q0QjHM;5+$?A@oSq~O;W%H2QoEI)~VdoU>&_6=v!DP`?ILMlKNM+4BqV2ganT%z!qI!XIW$~@Mr);L_21@U86 zuF`07^>N3trAL3hu5e=X+?i9%?kS!yw*a8zC`~?Su3Um=&E!iCC+YSO@!S5x=dTf{ zM72rN^nvGD6EwGZcySdYx(MR6Upr3mtr-I0NydHTJZo6j@*2Y2Qy=rl#VVkp)iZ>Q z&kI}*il5xKv@oE29X>QJfFB=yJt|@Xb6WCvi2_Sa?7$=Q#e{e@DLU_cEYD?HBa&eI zBUl9Jjtg-eU%R`UM*u|nkZ_b!Sp|E`b;SK*_07CC{YA8@oDFSd9ce^PP$j*>o(a8T zt-dScf1Ky=`){AY|MKtt5}s~s!_hd0K~KP--6~d^Cn)?MHMtW6_h?nFXzG0GI<#&F zmX!mb*RyGYbX8O*g+Ft=PAfGVJ#GTi8G%#rbvFfIyz zj$=|8r;RXlFM3X`2)9})&Orx+$TS_)P6!ob@oY4PlhGJ9-)_V3^i1CmuYw8=Ivtqn zbm02sHMnv40^GV$+$!+V{hJ`}--5NZWqlKZv4^YZ-umc+v>42fQ|(hBS)!Oe!Fs;) z+CPsjN-Xd;^E5@JE?L9Yd{ox4y1W4MgC1O3U(pVLp%B{OR_FS&R%TzD=xkvr_^cRb zDsQLNgZ<-EINaHT_uG4La(oJNbHxsf;uuWsV<(Ds6xTR{cF3r-xw8-7ey^hc7uWxF zl_RK?m4P)A8J{R1G0fD#2ko*8u7PX#Uy2 z(>O(VU)UUJZ<*}=%unP&@hbq)#x5sG`R0+!dLP~y>CZ|K>i`;mOJAkyO4FYyxPjd* zmR_8$e+1u7PX-1UugBWC!Wm>rzKUL{dQ40+{V{yRL-7WD!q`df4nfx#0v?if zuG$h}k5s#aG&dwSg2M2^?AlB(=W64zu;0WT07e;1M5xX}&E_^U`tO};gH^f(W$-PZ z2z&%IfKv}O_+V&As zbST7(*~-cAu@t2Al}5LewbP|qVJn$c1%m780A__@UY}PZrfK00a<`>utT~S->Ke7t z81@g2b-=$T&o|)7iw*dzFTRE+uQ%a%G={-^UtguBjh-s1{&am+-<>OU-3m&lrGl9) z!GpWk^$NEE?_alw`ByqkFIKv{-8L*`^YG(O?!kZium36h?$Jy5-J@5~nV$pE8dTfG z@l}V7XA4X2`rCP>`>krTupDCr4mpTiR#*P%)!bGKgo+)Y@0~Zh1~R?nedqKHMsK&_ z{m}`0_wp@#`S3Yhx$t|qxW1x|UKI@S;)P}X{o?v6v|CvjOwdGzFX&|1Hr0_9ESsCf zMdN5#-4=OQ1^)U=npE=4RErbzSOWf4;e=3;Z&i)a! zRKJ#I|LL~NigxvrBKV(j?sV07xv&iP@7~nW|Lbk}w0!j>lo1;=)ky%p9F*vomoJkl zS>+w2w*?TborW;OW6C*$kf_MH{y$$|Wy(dL1SE;Y8cpVFBySBrIdV%7Ss4`k>d|*@ zXB=6M#TR`K*;8)57&9_DEtScW>b@c#Pf7Ketp3bgfpB8AVA#IaBdv1WKux{<$$et! zU(VDto95Mc1|@%cc9NShl@1u7rSB5?t$rr-0gH`Hk8xCUC8UE$V&aF4{if~C&{Z|j zm3aao-c@OPL{k&GuNcty3!&AFOaVC2jR}c0d5323Z%RUl8oD#sV~$RWvMiPX^vQZW z;Le1d>iSFG@xfw(-qHNjtp9DM6^Owqz9Rr~&8@S?_(NDc9m+=rIthWFMG~{)EZiQy zN($?UG)};ad_L=dPeNmgitvy|8mw?$ReuFGpb`?ceT08SmonP=#98n2PLtsX#-j;r zZtlYKSMT7@|N1xZ=YR8Cc(t_$ueSDKZgCFg7w3z6>C2V>+Tg*4Vgro{%G>$M$nEOP zzcOf)13<0bn>y6Wt`HIaDSM>|!k6o4{DVPXI{?%+`{UC;gTMdPw;)<=XwS{*7zTR5 zwAy+tJpO1T=CB+K1x1kcI#IzV#*t7PqbAUsXt$x$&9vjkfKzb;l)<<&JcIZ9M=*Lh zg3)LM{ZX@vP&q>Ywcb{3 z8jPFD+6CvLOtex=t{A836=W_e0AOh#XUgHB97>CD@75(a7@on|n=NhpD}K^_o-ZUZ)?ILfLF%9+I<1$HUM+1f&hjc0Ndpe0PO(ib}C%Tc#S@lg>5;@ zsy+d|Rtqkzt-yoQ0YJ8+qBTuhpX=!)5HGk_pjw9gc_?mP&BUXCI?-(01{#2!V-2V8 z^dwO|sdH&vbIA3;_c&N1{0Hea4+lX#CT7|3a2q(4C*n`Dl$uyA0#<%ff_1Wli0*_MUsOR>rlBw=M~9^QNBHvIWdK7!GB3}0>S!q;27+W2a!ofQqC zcQxpv6%*+|M}k|J_Sp^^xS{tLS}bM;J*75F;x1@uyI>5K!uUIPVwHYYw&b?55#z+k5QQ22yPFRZd$8f zbTEMYJVi6V4dBt!mvHOmX1EzeJIuNK!C<6=T&g1kTQ6V3Nq-2fPDdXx&^rK(3~=?w za&bN99vwV#GScH^uD7JG|65sH(AP?iNBPbN(GVq%d7{;k^R7e;lD+__`9#_<1VM{* zIa_Dm;kG*>{e=_1QG^IQ2p!ClH^hsSd5^B9;=^E0PvM~R`7=bizL=iE=6I@{pzfXL z%3qe2!u4NL$p{i*u(aM-&uc|PPtzvDdXT?^1naDR1tiwB=~@jmGw)uOuY$tQ>iek} zDt31P;mvh+76`ZQDcegN0k8*UK9TT@LYJ>{@*bWr#v${D_V5Uc5&Y)?Nj?qnF5*hG z8c>f8-z8cpkb)k&z;i0I0U9$p0gb>!~wbs`q$|IoU-&C})XpDrwaFBKD4`Y3i z+N}JK(aL`!74x>VL0eRZ($BL7w2K) z%Ci1UWPU86sxQ&H5TXcrHvu`G=$!=XYb!7sjrA3J|MP$PJNWHq5A{(1spB2Av;#mH zR=ER!VPHzk>;5NDaEe)ANW3vqR!V{ZD7J@J`P4JLd!d=%Dxjm(H-x5@`lyxey}cuN z{BjqD=Y4&v!hEj--+SjKeDKaK_~ReEr*}kLSzUs;xtSusq%4EbnLFz*I|*4WW{YIb z@#R{1(iW|nR!#t622d3XU}+xi-M$9D{_+WA<551|lrcXsw+A@5c=D)N?^fGI^mTxz z@c7%8@X5gg7Gn%X;iirdsN*$iT)lpC09&tKgXndk-RtE}vS1|e3P%NNIL?Dv&MeNs z=F&W@tt{!)e>JA{_!Jprs5FUPa3T`cH{txQJPURyYj_Aq=wX{uu5?ICM0?!+yHvGA zSmTqz7SG3NbIireTH$`-z);4VJ+PeT(*I?B!SE9LiZU%Q?S2rf`0Xz_H~vlOFHuHVCiG5((PA(EwK)#Bu zjQ=aEi}2z5_u%08Tpta1`0Xor_-q>n{c|`vKZ9ngr9b#?ci%8`lrC#pu=6JKK$Kww zN6CUlLI;PO6idD8tbeA?xvQ0BwL?Hfzi(vl?9Cw@4<5nGH;3@6&!6b)1l8yEP4(H- zE7c9X9esjs3lK!TOiIu{leJ~0I5818b=wkF_22T+0^GlQ1JeZH^crwNB_TnS4IDyFOK3A*JVmdcsailnA7Tce4Ng- zEe;|n5&o9yDZ_uP-f($}lcO}J80nZdX_=VH`4*Q4=5%T}3F`cEjXEJD%lt24K-4R0 zog(o{Qm!gSDg<6c03y7|?-ZgJ;=Nc)Ts_^*mRNa0wiv(K`g<54H#erHOC8Q6T&IQr z*=ayb25+3WUJPDmB1#3|=ZOsh7+b;Qj-1%MKFx$(RU9rYf?NkiZ0~^&n z;hszv3%XYN4GBqvqVG>rzYhT48sHb8S|C!`F@RO%HQNAGuMGJ|Z670qYii%W;JNh3Z2N$&NE zg#;zxm?;+-g+~#$l@htIN!1W(aiWARv~jMK{VyIphhKm8IClUPE7Ss42vFRG?h7sf z#sPrG6GBqer3}VK1KOPyv^#BRsIB31&3xN)VT6}w{vG+tQJ)_-c}`j2tm>YO#xOeT z!{+J|eENfT^%ix#+Nz?~<9qBezm?Ml-~U-b$9!dc3|Cf`U~_#HW_n$?cWV>=xBvY2 zu(S0F-kkN}=&TR33v+r)c1gzZxZE0VYuc`d-yab!C0x$-2*uv}ZpMf3q9OyjVy>)5 z`Bc=kb;^0uZR_@{V-M;!hpjgU@b$A-@T<=sLtA9<=|}hA(~s`MU;gZeaO3(0WX(KC z;AkZE&I#p&$|8=Js7Mv|gDRM#eR+I%-mCgOMPv!E@m4!PRG+J(CB04yMw!qK0KJQ% zSSz>WL^)jZFWO-S6TMZx-Rr=?=^30H9>MP0edzc5dh5N4H=%b@;7%(0CI_m{{(t>w z3wB-~z+g0nrUV`ReFD#dzM`{{Ul%y+tLy(};KAKI`oG%tuX2s$1R7|^kzo6X zrzAHUnRamf6rFaboNodU?UW$CsaL7=LZw-?fkMp5U&WKouvQ%Y2sh=2~3a%~pKBmvj7-O?7lDZp2Limljc)v=?az_+bSy#=CY3C%bG@Y!XP zyR<`!GsaS&;9|Kkri=?^kZ4s&8NUS{)12!KsuHR$Wtfl0FdU6wrqhCjwI#TJdlSC@ z{v90zP;cLdVwZqZqt8xZUaam$&v!j6F3jpJ;s5q8egs!HR^hX6w&3%JTk!Vi1l}GU zYln?m|5nDZihCf6BL%rX#K=!+-|Qf~Y7;3#Y2r91H__1QtSoSws1_7FYjD=i9ThjA zsAcQz5e$CyH5{Jw;nAZP@V$3$>(A_L7v^Sr+L%=_7)ts%XvX-!8xmGmN^9Ww@|&Om zTM>>aP}Qh;NUid#+W@+4?FhJieI2%s&tT`|TpR7pR-;(WHgv{{y^V)HYN7bHFJX8- z)Q0@SCokaY#ud1_(aCEr99GrJb#)ehZ~q7$KYalQM<+VCqvq|DYiSCG&v)(Q@Y|Vy z_0>gq_x=r7T`|Ej-PnqpY-B=|sg0YIUhFIGQ$@;F9#PO7E$JQU-P@Y8zju{+Gz zYN6XAIdw8vO)xLUQwF=kt3*O@1h~otOOI%MH7%1+Lh{o>UtnIr{|KcPm}V30DZyj$ zT__p3;n{#zuU&32wk4-MedPG!G3+WH((zR14K0HLnrQe%;5o!~WdJg|zf7Ifbmrru zoEqw*wlVhy16Y{t!urZQJh*)ozW@H+GLpZ^TUXEt=bLdj==cYdF)S_4!RpGQHva$g z#~;Dp{OvDcw)0E)^%sv|`{fRdK)^_3(3_osX1kLceroHr+N(X8Ag73<<)koPB#S*N z{2fNzEelxQ>iML^v6xQ<=vWSoUPA|#R3CLM-Zzh5YUBUs|L`05@BiJO!NU9uT)(;o zON;Z`Iirqe=-n71BUhHFt+PqAd|U+%#%a{ zLNT4vww$JVUrnl^7bVn|-fxwXBRmDqp67hq%-N~x4UiB9RrylxUm&n`NZT|ij16}k zX}xigT3_A7)mQBRC=?Uk5a6so8OoLP#!m&h?!Bkv{o}4Og=@r$tn)Q8%Hr5kN-I?k zQIvEL#LD?k%SkyQ4n?dTm&s&d`1Naw$^fRO_*3xQC#4K`3b2CEu$FKhIGj<<4aAlj zpFJ5hLbyekgmH*XBbObwKLR~enWt4^2n7Yo6*lxVM7XJNz5qC$&e7OCYN(qWa_1fBLk+gMpIJh|pWV!eC2Jf$Z&xBius*I0r31jz_gKrPmQSxLUXf4&su|CUFJq&Ip-GJp?<#I;uY+%r{vhhd%97V0Ty*8Lt0 z@@t8vt6>nu62Msng9IY#3ns@f@TifHoCTv=)iZdoS#V07U!`k#(&Hmp`Uv-jXI@1L zPgg%RFP6j?#-MSSDLJTYWYi%z>df!h80VkGfAgunQ(f(J$b%DB_tVFvw?9sW^`9);W_A}S_{!O!qTzq= z-fj5s{X6h-`;Gqm{9itUpa0@>_~OwE*xTKQ{%8#6<1w_E+5zwn|M*)tJ3EK9 zl?8Zk?*^=`F6#h_Dvm&=V*+HB;a9Z|X}8P(5a>8YLIuLZMgR)ozGMqXBOYj8I5%8f`v{OR=Qp70JyTUkiRQvp6Q($ z0u@9K0a3|iUOE$!v6OX{;W=^rgn>SapKbRFl#aDP79U>Hyk0lC^SdCtyD<>)j8%Im z`WN(buTgbiOc$$*z=bpZ(hQ55mC+9^dXP@@)EGgb#3(ee{^DMHh6|>W%`+mTD0uMQ zUYG8lOGs#*EPs1S!ev$%M&p7Ypq3qM(liyPYoa8#McV7XraQjrRv{y>)0^rjDRwaY z^dN}IwPANj1RD`}M=4%b4>-V+@pLoN1>N@hj8U{yGLvJeOcEtSxVp2tS!tbmP;u>Z z`^j!7Umc|+M>sWNczVXL#h?Lvf^t5>*cN+HdDGex@(7Z@L+#;G(6YFM{A8Zm*N)h1 z%TvI`3AOLzJV9JZ{g+cTX?;H0=ow%`qqTO;dx;<3cV{ppRLbCalD~$ zG(djqLOEs$xkO?fln-<}r%_(ySi)G2G_BPcd8q=)wVLqRXL(Nw@s9$kbztNDI7vAn4!HZX~ zVf*zyoDGJWS5$lnD1v(0d!%s9CIDuZA3+(7VQ|`q#g!#^aAOlzm*=68HS$;u<4F~; z5+#dHvZArqM)%%zia#a()R*s3fot(Sqn|l_Y<~IBoc6G9IXDa>yYs*KdO$|p47as`{_z!55@Pj-Fdmcfiq#W({;!=}>}fu)wX@R7lSZA;dpxDq=^niM)jPIS z3xg0&ME*oQ4QKVVF&2%Q_|?o8rEkP^h}#EwB7y+oSfl~;6Fn}**vE>u^ctARPQv~w z-3JNf8~~vQk#dLx^2mw--${8i?`qqMmbblN%Ng6yevH+@;zzzHRtU{j zp~wp0%de&Sspb|`xnaF8xWe75lvVXi05dzz}#LF zY`FbH8^3B1ypch(-Gp(o3FA&1K6~^6e)X%bwDGU52fTahsy3d-qmkZ*u1}$7Xy#_v z$h;$!F%#k$<>d@Dx>pewtFe)p}?Pq1A5b+W@-ix<|E=uXmcrghjtX zladk|$^p>m!r^Hj`p1<6pw((ZyWP~sOUC-zz?|0z&<+6QXzI3_FdmKd zk&M!R$XJqjJM!By24{U(obADbJDYH2c|ki9O15^p1qJ3DXnmhRVk z2e5a12Ky&xdaL)ae_q=ALS4nz%(OE@8E_&K@g+CNpb zGAJ9J4oqexeD(At{KxX`0ZnxcT@g>fwzpj;Mqu!Ze1%tkiX7qj zk$OPSnf|<4M6DlB^s2kM-9X(kaqHR|yzLKQPo2kas%sOQML#$p;>=QvW9N3m$_H?v#BAk)#PN_)|AiF;M^8=&P-dSS4tY4J z@sofH2Y0Gsk$MB;t$yNkcD^;dULVR!Op!J6)6ZojL!tz$X(;eZ2^Z~;Iur@O@WyXI zj!cCWLqEn*>6^8Q{GBjuQ4nKP`fltnpYBbUATDC5I(;x7(&^b12t2t-J|B%KcQ)Ks z3TbE&4t->cAd>|s@g2RV_YQ7}v7mNotQeP_P zmGUGZdmUk1c3&WBwbga#fxbOYisBYM*SGIuQAsanywHLqjD0ACI*WYWX((lTAJtAo zs}kKjG`VOrwDEuPdLKTxb_M?U;|K7QAAJBn`;(8g@jupQq4O168)jhss3*8e`CAq* zMWeaqPhERg1ug8fTY6W3GXCFva0`ax35>=Q*m}MLThDjl;lpp?;iG5p<>Q6Sg~o?H-Uwd6fF_R zA*z)bg|9O5)m4aVt4nbE`Wg&gzJ^x^N05mwblMpTq{rZ0*v)!ZLDqn?@dVCJ&td2F zK0JQm@eQGaR&z>_U~3xHHXF0EyHMUR^@LBXUT63Jv z>qz9&n$gpfr}(-MV;#)2*Iy;SeDjH&PwFbdL~)a<(OjP|V)hqTg4DYhKp~MCPVoYQ zZGT8l^!we{i___8)taIQ)u`uElOVr3ixz1zpvfzF35`Kn((j>9Q_8%k>4JDq6c^qT zrp})uk~f^A*^Y#W}qazBt!~JGVCBqqhgJvv&w@-yXu7y+hc2d#JaCAD*4T z(djvyo)6*ld;lXkfdS%>Ja#~)x1yVXarxcwMRjFldP#0{up1`OFM2C+jLqdFk6ECM zNoCBA`V%-Dj^X#;JcIw^Z~hTJ`tUw{^uawC3v+H=&^8Ct71q_6(io0%s#PvaE*J|L zPX)4iXXuy}G4fZI=HTw_P1rp?g~_)=wbi3M!ovoh^Bzl0aL8qlR+9*^`W_lRADNDma!YCYXHe|P~ulP7Ax$WR+9=qb#3XiJ2WGlPi?Ql zcoNoym{xvIfnHj9gIHo+aaHL%O76U$i1(${&X}DSZMY}%Lbi&phX%CQDe(!{U#~Kz zAn_P$J`_ECpBlrEguJbr#8kyxy*!pXX5SDRzO}p6uFvllic+GQe~V{T41iKtIa31T z*dUDnGGQ;P-}9k+*Xz|oA#AsUI&;dych1mIXJ+mHNDO_yY|#mv!GQX~UitGq#uXM3 z0&@C7s2ID#8SW8beX}(Tn@V*(W)&Y%Y+4Tv!5>q2!fB|)bv{I23-VVe2t&-18QU=f zK|ZCCqp<|w&pL&Has>jjidBprxx&lG6c-ft);oJvXZ{oTueGG+uK(N0g@ui%u0X8X z!AUSak^oH}Z?xLKsbxDazX;Obeji{MnFlRX=cJ`F?$v7e={cP39m2+~4fyE~--EyU z*$?2a|LVuu_#aQkIrPH##w|%=OQf&6^yUjN5>a3$fZ2LIDXt9!9W+iE{wquKdKLEW ztxa7{Z~Y&QVS9HEc6RsR;p6A<@W~5!vb7CQpKrsfoqaglKY`I`2z_;qUgit`D)3&r z*MUZ}sn6T1of6t`Gy!1MiuA<2M%QlzCk=%4HlED&iz=|3!slc#fK%lFc=!yOlQGQB zcHxunKgeSyxW`4U`O`z9pl|NvFmdYfr_3w-c2yIFqtzKFLS>)Q6q417yfV&J|J}QN z6~21<3glpgZS_4-6fBjyKlhJ4bbIk_KciXVOx&$|_t!sXi#g_j}pwkNo$MA+B zVbfLG^2^PJVN)j!1d?2QBJ@(9yb+v<0vA*$@=}7vPxA1o+LF(ETTm!`DEz|tg5Zhq z;kV`wmoB?DU&{&i6Zbrd*A$5R^mn#A#04_< zgp>`zQp2ZZHll$BFA38GTbn{YI^$Mq+E`jCasZG@c0|cfB91Yl>C6{D4`wr3H7KO@ zj-wq{J#9>-KI3zg>S>8IWz?f@<_|sJ#*=j6H~>?Sww}qP;!gI&3b;H3^H0q;Zf}Hy zCU{D;-)x7^*qS)S+j;5{ElmOi$w72P`i`AxDy(0Cej7OJnL;I^crx0~HMdru*)o(x z$lUQR9P31smPZ^3f2@Zl^3a+nK4EIdT(Cx$tl-$q;U=I;o_MlWAikG|j%bNeWThub z*-*oQy58>`GC6^Ul<@xTO}PCh--k~>c?UlIZ+ncODS3P>Ik1eKgM zwwW;2m8gtlV^o^eP-VC;EzIikV^!K}yzp8=&f2C-r7R(ZRI2;t zN6>6Gp*J_HV;p?;%`^D;*(-Rl^BQJ*U6`HeRkSdCRa2I@yy?&J46jQ3RUqe)eK5U* zZ+RM|b^yF{_XhmpcaNam$mu#7=f?!Rd7Co6^lboA_m2tyd3bsbkDhI7Lw`6N=8ld= z2K)O*u>1A^w%;7U(b+jbw*!qUSalJmW1Lvu_B=?b^uV293|YLX7bf-vI3Ii3-D@+z-AxC^b=R_ zi@=|9es-&s%nx$@r%1ryQE$j{4XfGUORyEldaa+dK5lr_H8WGIE4y8IuY&LWywbAe zNgoYanANcS!oqo2*H|svBT9QCI#s8Phams@oF7mf1Le}+WB5^YE+YkbBP@UY{CR5H z*;4LV_o3P=>mhCt_SYDZJWmb!WvxI~Q-~|_r{vnXhPc@h z^L@AN7WQx@1|P0HUA;&jS0y1BfxxxC+`24`69B9So`VQE5UP49DII8F(O69boTMGU;h4#M1o$WXJ^Kfey9zEZMw|hevoSng7IDzxgBo7jo<+ls8dtGRXhF%F<%>3ILwE#@Rs&ky4(uNs!1jx6c=YTQyxe&MSJzizaeglEM|I6% zZ7atbIK@)6E7hxQj#L}Kj2|eH~<#rdT{@Ce*K>cXsGHMk0$xfkxURwj0P+@|DkLK6L%nrvX|^z1-xqjeIBs+ zjd(AxXOT+imI$tUJb`PzBE2cfpA;U1<{275o)}_hklH&Gqw`3=W%!B-4*-V}k&XEkFPDG_dzY{M z#AbdGDZ{_>@?tuMXkxZ^#?9a2=^tL$g|L|pg0SfC%EW1*(obagHQ1F)CLb*%eK@|6 z6`QVO_)R-f(vs_J3*@}SN{hc(=M42rpmyG8z!YXhhxGH((5z>YTve~$dN5q2GF)x` z4$m`|QX9h2ot$`uoKB)#ktny9892s(D)EzLV719)4CBE-2gg&Z{S7&Rwb>plt}ns; zTO05|oss|EUHJHW_h9|Xl3uYa&pwwhZTUbpklO}WdoBsT^!bY^r5zstnKV~4=E#lZ zxHOK;b%SbG!0cR4I|k)QnseU*biicC8Ol;PQIwhF&f-f2~w0^v4*Z?MC}?pz}Z^<^Rij6?%o?CilW zfBiLxj|5y>zmkszX`D9%#W=kS=^D~qm6p{T5^F+ds|upAX|=5|N7TywcmkbvTRUpj zRu*CN$}${}B%Jj7+L5EKair?^W;2-wO>BxL42A$UjV(F!-&%t4tP@d1{w-j;*0N+&K6B}AdH93tU!ALvgBM7%eSoxzl zt$f0LYi3`v>~yLiH#xbgshc;HpCD8$5ombOeFBByaS`vPam__sP%c)&<2ONZ7XgU& z!14Y`yPni0L;-W}r`OLR^J z@}d)zQ=?t6UJWmH2B@)}Ww}AA?}zWUb0@&{^)kP@yIrk3pPrn-+36X4{p2Nl^W+u0 ze7Oy;Uhe2?_`ZI64##H$7@nNLD9d2fXh3hKr*9U}Tg@|}jau@ENgZ-|8I0oxwBuov zHQ>ee9{lPz-xS8beHEN_*4*Vc`~!^_lQm|LN#MIvpt{}b^+ef6vUHTF9UI+F8+yHt z=EG#j!8pSk+bNSWO|}%JKp{xOY>-76o5s!j%bCN95xyLu1W^FmY}c zuQT+hyaGyIp+;BbAd1u%m4TFG<|McaEWki){R|^Z++PV3S}aBKlQJIy17{lgG6igX zHqt=}E2J0IR(xpuPd;}7AsE3U{0!BTxOtFTds#d+Z;Y+6Ahqjy&x673yyI-JIVD??WWH9 zCilRU%?lN((@zl?5!_ju>p?%OvuV18~E9^Bc0wVaMt3C&?cXS5( z$7e89#{ql6wWFbp^62dw$vXFhw${(YiJem7F6KMz_kk{ z%31MISw|BIZ}yMi@za;Ev@oypsNY{cexdtH(NDz;sG|P|=AWWUeN0AOU)ac?)$8gb z3%75q!{WkB6?;KAF*F#pLVB;LikZS#5Ep!*oL#m9TQWjVc)jWMZZre>!EXVHq=bPS zVmrzGtglC4gL+!6i~w5MtH=cuM=UIVOPH6WuEe;Gr^k1o`!f|w^v>emIyw!4a3)6Np(*;A7Pv^nfBykNF)AA6erapEub9$2!6Yk0O5V4Ol4Y z#?~966Nd)_Fyt4EDwjb4iTk(CD5DWgnyVNCBG!Jdcf2U>GLWB!34#9ikxr+NPyP$g z>!LaUL2MG9@Ux3zr$nuJNw``oJx(NzT5#M{P>a#&F}z_eX)Cv!1J^;oV2j6t`a1y= zf510NB}N3vVXO7!N};8?_2rxIPj!q~VWR3i~xK5{~SET3XXW{nEjj~+7KY;#V2;V;2foEI0@cEaI z^3TI9c(d~s1|VPn8O+T0w1FwddH+>yEb7OW0cw>m@6dc^qROjl0UHh7*9Rx3@Xg67 z?7lhB=g-wS^k$=($3mE-NfA*TH38w^=;9TDW2M5nt*#dIbIIb0KjqZQ3b~>k0C%ox zVqYp7-NWrmt=^fUav#tyA&f)l>I@1tvT@vkx(EN@04RH$uy{^ znI!4Ufs*OBCROu*ba&!L+D7XnHLq)m($Ag${CUpZ;T8f)TQ4C+n$wp>CD79v!n7xh zhE+t`c6vxIm*XK3D;7nBCT{7pdUn%4^FR?W`^8VGSDLy|3H6bPNNz9Y4{9 zpgT%k{bnR{P||B_nBZ|hUZMA|oI)Cv6V=x`o zKUbFL^m*jP`C0u@XZtsx3@(2M=HD^&Td$RDU?4ELb3L+1g z;(5FyU(U};#uQ3chL2kmtEuL?KQwSvzIM9>>uXEU>9k>SaRwgTzYZU7?ZA_*9eDU` zTSuQiI5~s;y+dfWThMH`t-bkpoM7F+m$#0~0_#vkFuKuT2&cmV937v+-u{ukhrTt} zvK2PxN;{f<0!aHYd@%;|gO&tf&a0Q>q~Lu~1+rUNS%7!$-+h5J?#)UJU)Ywy5_OjDxI0(xmlK5_b2Mw$o>G< zR_Ed7>bxFvtyW9tQpag3quy?_g{vrb{giWnBo6RXM;;1!0|IrgDBnk$;i_MRkxLGL zR?$e+Kq6VFN-c3+j2lY*O@#*-UtTi%z#{M^{lbG#5FXEYo}QCB@h2;0|5}>Fbb6na zoW8ZBmTPAqda!J8DGr>-e0I6OlWGa7X+-|u_?BEI_C*>ZY~Dc2>iAZu;Tph4l9{~f z<90&?!DjF+St%E#Q?SOMEjxt$5dEm~;fcuA5qRaG%x{Tg8W-+;YOxEW zAdctBzEc!0R-S~DOQ3&VF-xH)-UlX~{Jkj7+N-pd$ZI9LE?T2n@Ydg#W==9~Nh>!2O%+ItGAp0F1^XeNCfs zJY@NKld`Qi4uU9R4n%oAs!%%}#2WuxCrFD6$l*_cs`DH{k42vkEzug6 zt^Xe6%YZ=aPzlnd8f6^)L&b&n#V=uNX_UDXXn9oVReB*ePuR0T*qHRt477^|K+xZV z#lQ*e)Rmg3YH*S!Sh=Tc-g+9V3W5= zBiOsafZ2N{UGyz$-l>I%aZg#F0ffqJb{u6Kyd@ZgB`Go?Do3=-Qr?+L8NA}rC%JM4 ztkWuKQ`4g>^}Af{ieoXo^Ta2FMBjunDslVrzN*nlY~5*Z>}kU5Q7f_64SD&e!##BM z9gkH4+|Y9o&&R#@lz9BLUt*mW@711c(jZp}k4IT8hcQQ>B=s8{4*m znF~(bVg5>ab&V3YjXOMlhLU~iF7M}wu}G2ZP{#$-u8SZ4@O{`=TY`W2?Kg1kcVEM^ z-F?{F-G^qU1 zFQp~Ck}OdpD}056wSRcS8x0N)SZ6l!U2UybJ5|=MEW_HBC0JWsf^*S;{&0|wgG`i> z?=f8@9zn%_de@A;mT#<&NqqJAIsENE{tlkL*ac{qAbf}qt>YQ?d@n7|Q}gHqmKW#Y z?wuR3ytIJmrW}**ts)LbqQ!n$J-Xl=CQJM-ELu&9*j19q8pbX*A)>Fs?vEgTsYoyx zNqONZv2?=HJC+FXck#pmwUrBO{IgZN#Yu3Sq^24?c1(WJ#$ewMG#cXr9?HGO+RZ*t}o zYi0>byXJb7KS;zZ zPhkQ`0#pB2-TsmZvum*WX`Gg6fTvJa!{BX3bWFq|CCz*k@Z@@fAZiGRu-pJ=CjzsR z2)~cvmVg1Lhtb2|SBBZTVtioUmuI~5@77{2k*1o8wE?Z7!;hhrHK5zb;HRIw3;)A^ z`0w;x^D0o8L`$@G_xt>Wry0sf5XJJTT20gu!<8eTk$=>VfM#(m8kI~SFm=9Po%1(_ zV(AE&ru_^xQ*|6xukv<1J7%M`GL4Q{ka?=QNS>@Ew2)e8-P$HlfIAb&F8@2z?ZCp^ z3~a0|YbU_fjTKm)@4?^v!*Ai?qb(5G9JFS-Iwk<#`H^b)mE)@Tk`*h`ie$r)g#E)) zc>eMYtY2Bq^O*pWUTg&)u)w!U)D*y!bhYQXYAb-*>TebV1fCZS9cQ}wquQZ9yC-LG za&oS3Z4g;2cb*Wk)#`Vd(?{)w7>>tqcshiyA3ukFe+b{cc&)Z^=%XBJ6iqO`gxoHF z2}8?#$B#1n@7=ut%gYNWqJ9xO$2j^0#*C(G#R;KF)-PL#I~2PiWxf&BVp5$m-%-%@ z^t7Ci5vPC)#-j(ZqHT2_kG#DjG{r0tC45f;nZC!z4I=b3$z(l;=*Qxo)=l*a^MKe{|;{Zr*ta#QIH=2Uz@p!ppW_P5- zYKkEchFcfDi)L9q#NRw}d_9TyBo}11B(U|!q+FM3$o`6K0?Ju`GJFooqyPV_= zBx}SO6+s!<4Ha;&+t$Xvasn6wrnCiuJRMP(4G?oa-8ck5-E!cr6%pe1tnKt~P- zN0YyCZ4LhHPdR`y-)R8u>CdMXCQ>Jr?)eGOI? z=S$3OXH>M1hMr? zL^Xw=l2(^eAw9F+oJzSxQuV6fj$!1J;R%tZ&v5*7VLeMiHJ=pY$EGYtfmqFw{uP^` z5)-LG6c24*kHaUCo#T8>jv;+%YMTw86ED#R)^mek!kA+00q#j^v$-piy%+%QCQvi6 z*m){p=7Pjdn&4SgZrBATIkvGbK!(=#WA0S6c^#A1X#&!wrY$riq!5g#$8{prVK(7T z`T@iv3XIi%!Zv1nzNi#elAoMk0ttbVPBL_;A>Iy>Op&5>64`q-gRq8h;pk20bF^Z@ zeoH~i&lf96zZb-JiSnn*@IcO59VYx^Ka^ksv|LZz3Q~XW5$GOndy?VgA*Pd^18Xzp z)_F5>atDCkZm-USD`Ubks$y0Xbt2x*UygUPZBbU&0_sTQMfCKt)glj4rqARTz5}yD z3~XKX2V#nfWFn#K9Si}kic^VyZ?2h>=&HnO+=j#E+d4jh;pVafq; z=hju&d2;~YZf(Qw9zKVc+xyU+>p{EQ(%0Jgt7$cGE6$Pw+pPcU!S>eYok5O$C=~V zqo9i-w!lPYFp?5>4^QFcn~j0SOT+i3Qw#KEp+t%;_6N1RBN}}u(7%X5AIxt zt~%CX>O;~0Oa8!Q@CXy@^RRxBI}t<~v!EIaCFTk6<9d+@=oP_XHO08Y8cI^4^wJvB zXtW)Ie{XG2bx2K8J~&v2`3EJecksO$;TPhOaTv+)m%fV?f|jvDnsX(h-IsWfE|M7wRG5ad%~@AMxOOEthZKd zSKUHF>v1Xga{6bqRKCL^P|kAz_-i)q`{FGFQxf0kJib)o70!z}cu3xehN5+Z3IbAo zm55&WAqGQyvwla6akoFbY$3)c3Chd{Oj)Wr3e$LGUj`soapL1>;=rZA3o&FM#f*lO z+rK5e;-cHhw#;-7x}jHiwwvLcqM1@ z`{_WAhPeX*5KAZ26*DVXCD8@q4k7QnyDU|1J01?Y4WM|mvb+Ef?%jaT9&SNPZP%9q zCS$Yuk3F=!46pQuJdTETbY!k~SNdN?^~3CB84pJ=7>r`@HqP{ zf&e4R6Gj1TFHuiI_8J$|iklju80M*2ZsBx|f&@M>3SG#U@W41{=Ix2yRXs!S2~SP{ zXL@q-Us|fPQ>`B&E0iuannRu?N#vlY3a)}mMLEA9M($Ie&aMGro>mVek==d7L62h{ z!cf|`Ofa6EBP->4^X%JLUa7ln*Pw9lb7S32@1uyfr80ep*vrpvo4gkDz&0-@eg z-Z6P70gsGPA>frP%@ykaqbX5DS7!yJwxo7dGKd<1Lyq$FgPw3U((Wr`Ok6#DmuVr`(VfVko z_O?9t2`1d*t$`uzj=DU`esv?k%E}_VqizHE#qV{{O-(n|w22@LoUp{wu$v9-7|L() zK<(khV?~2Z=;;6bvjHq@uEPCW8?d&zsCNJ<$G}*{+9-CsSmdRKkD)UfYIYw{XN0jN z7xwTLX1GhsAwbt(U$R?tV4A}x`mBFQeAI)Vl6!hh0so@$@D#6Dfm$gI+$B^Ltofq( z1Naf-Gs$KDlJ{LZDxla|(h_Z{jz|mVH?I(J`je}9x$WW6cIPc#&vAn-roiV@oV)75 zpH_p!^E3Iy$Jax!#w29sEoXr$z==V;-NfGlz&%G9Dh425ljYsp0%W0qv)#)gAmiDb z{sH9z)FN|aoK0Ku zGSYVe-40;@+>h_ zf0dy}Jg%xJtSW3=1!MF$2nO^Yzb#>4kwVmCX+6|BR2--z zu1$khyLyY>iS(;ck!w0)`=Nd<+=?lm-_AarV#ZR1Q}{UkD#rl*K5gZk*H7$3Db^|a zPYPZf{wcZY)O$J4>*U~z`M3Pg@Z2MGw!W5LUmBH3mq4VR+P46d9w1kXh}D*G7}^pA zSlPtzQ;z0Kss(jDCbUqoJa*-KX%(TW_f`yv_jHH)8c|6NToL7|tR+Dkt4UJ_<69MER~RJ41p;M7Lb1LEG*zNi2I+2;aWJKSV~Ek`!hOq}6`ICT z$^?-W&UbQi=hPlf8?qq!7q~N9jL{LR#x`2qdU?DBE+YKJ`wH)B+?CJ;*wLH;yy2NE z)}mBg%V2l7`$bigMB|4u;>$DEhE~kI!SS6Ds1|Y`sMB5-50uN7!{KDk<152forP8r z*Z1~M;Q7uzeEobE+MN!xyIs9gqB>Y8z}Q#iWXv>A!OR*0`X{F_I6c$G|4h3J-+%93 z1jW!vXxuMVf5p{v;r(yDH9R4N-X^{X0(#vpG@DHrXQJGy9YUOXl~4243a~T}GvTe? z3#R2}Y>4u=`4>PaATN1tl=NG7fMUKY@K<~^Kih-(xgKm>S%THYIe2?MfYb8o%zu{DIcMsqxdW#s_4a~+nK=Iv&n>PiB8Z7sgx zu0mahaj=?(y7O-~aY=XOtv{0;`** zA9obr@Q}Q>u?8U>kKUj`*UxI9?zkjl`#1$me!n}=&|~CR;vnFtX4^;A6h3t@ zinT|A36_MCaOg&rbk5q@Ev^8%^-sl5q`>DHHa0)h848r{m;`IeSOGC3I9`w$FC{;5 zyy?mrmrrUVlK4JRz7-kF+455N_s+&Lcn8K)0a+VhlVUZ|z_yGX%v%m0vQwVRFD%zinxe5NVsyn>c;T%0u!| zLS?b%B*CTSE8t<)lPI3GRR{>;7JvxoNQTPu7;`ZpmJke8t;b1}ci_hIAXu(vFwvuA z;}^U4)h_Na@zja(@J{cGvq3xe#{!LN+`}oVKkkU4;9b~5Y40dVr>@OE9=hK_N}70+ z24>7NnmUF8jLZ8(YbQ4fel%S`p`&V#YDCG;Yt~%eX-<@{2~IfQ4NWJ6@m-_$DMqTT z9NAJWy0i2%qq1S2aNb$xq6Q*W`KQ%khR6*2sZe`)i;5?3TCT;N?>;2M{ zF9@Oe5nVwb^_KN)y1|P8%Rn^0Vil!flK|3;MeJX2e&M{*MBCSKHHzB+L#`g*9b8<{ zUyyo10JOlHqDF^4<&Xt#0fVli%33KuUN_;MCn7-ehIAE+MHas#bHY)g+;kiHHqg)l zk68K3JY`u*mUMIdvuR0GEk{?ItJG*V^tOLxIE{y69iR^;`7VJ8b^rhoC(Nqf(7aex zRT15@42F|2ob~(gbn6xT^Dlp|uVlM__c~0#7?1*;e@1;yiS%fD?SA8Eg=bL{i=aOk zz|rw3oS*k$JQ{&i(daW_?cgA*C-h=U+K8f3wJpBUZh~lJvBvm1cDenW*8?I9=mZEb zdI_hW(2%Q34XWD!mX{ac{{0*9<+E)SRarweyKlVVX6aICa?}daY4vN)KcnFYM#C|z zblb4JJO@`+7GQR^mmlXCkArQKK;v1}EbWfA|u3Ip6+5n5b9X;+ytnE5_8@((OI zUjrT$cWih3eh2AFC-n~xD-F&MaaUtE}7qT;R|ZiBdB4|TapJg zrR@pLn2v;X_#zb!g>M2K++U7xo(d1*tx0KM?Vb+j1H{atl4AnU8En(8YK*aBjUyNS z9u;tr_b6LZccnsd+QEXeR{b#_*5p5I#bVlg3QjRrIt0?sC5I34ui>GN&)mtTGXv)vB7bMFR>^^WaHaqU~?T#+gq?oVlJ ztYZXuPdXIV-(WC=PCX=+Zp)DU9MVoJS;fogV;edaz;NkATz^9=zZs<$%ux{sS-3<&_NP;-Q3lJJXF#>4UTlC*ka zxnwdZLYV@B9|>5#{J4mr#a0u1p58BkNswT&XnpukpxGpx3z8|XQzF}d)EbLFOa)8> zrSnbFF9Sw?MA@K++Y~9GAjiuWNz(o9wAWKMs9$NxMmsz(efUWdBAP7z<`2WiA*Z4v z%n#G9D!#xpi8L0cgOv0(&T2SkiXiYIt8W?Fe6h4R2X}66!s-`Kpp~iX@1)+gJu%yq zeS0>+Xegq@kH>liwl_NiFLw9gZ~y5tSXy3yJGZXF+*}XlXJ>T2(Rgg_1n|{{qE?nr z2@?+3^2|6mbUXr)!S?PReD>uNc(MH!&PNmIOh6m5Qkd%yQ)PkOFFLkB5!PP$6T02} zwgI(89!m3Dc$TE%k&~M4JOniO1+#aPO*gkDPqxMO!+jqrLD;CAI-R{*@vQQY#O<#i~dsv-g@MPS}a&&DM1r zXqyXx8kk3yqPr#{P1HMmf7+nj9Y{&I1Uklj-1Ov&sg!d)6gsC{SAPtIZmkeZ!ffeo`zzU*to@0SseZvAhOd9Gf@0qfy6-57OQ7=DWbJ1UfE0mtq$~MuDUPmDd0bmg`|!!u1mTLR z4+`sOd2t@@-nt5_OLNd}6z99kGs^Z{WNyiD&2;LQK0+X+zEZE(oYfA1Z=b%@#@P=( zybrgoZ@|jZ0u0sG?a^4TwyPZjxd1FoHBW=$DHI-$KBnrHgGsRiLD6F8^*;Re_mAND z_FL$WB(!9Hgkd}(MwXy{5TPSW1Js;BR}O$SEH2DJw{QRe_*-&0tbN{2;b$jTiscu< z!(wiITcm`Axfz(9>FD5l3v)dVNLO3SJ6 zN^o5MyLeGLcp8`c^D~XLqmNkqgxqPu(o{VBY9N=ck6_$W^%SaOk$xn6j6-baRTsWv zh0{1U^So<*XOW9pUN>dY3qt;X#=y zN$*Qye&<202KcPO-Dm8BmC3)RN$d(@lum&#_5rl&@>4XwB~*MALqX@&3y!EOs??>|Q+Eu>pch^G_)0@$nOGOCE?Ykh z%p|zeb&$0GtKGjOM$vItDY-H!KUGs@xTzp%S2tH-WqCn=A2%A>C|AZ$mI((6O+$_! zt;2H7CWvkaK705K{-^)=U*M;oeh5FEOkiPt1{UUK%b<|?&Vh-As_@{)G4NWh;6imv ziZTwfRuc}7PT}zQ6n^*RQ~1YUeg)fa51}_dtFN(BXU9ngd|91jDnpNood#+Zyse_; zFU;zda%C_B&{xZmNnoWzmVC!|IUc=kKibbKovAwSZoXmNifZSiI4+|4PVM$k!S~*| zy#Y_Q_h4^lA3D7bv|7!A4pmbwD;2^2b$_;-8LVGffOj8Uht-w&qB3&@A5z$SD0ORf zzNO2Ld`HNn3IrIM%c9_F;_bjAu_o*14xtO8oc&&S<(YP+$~{8fT5_ot{ldvLN$3;^ zZy(iDxR;k>2~eeIPUZ9(->C8nJEc5wQSGX~oty&4>o-2&G*$>vC!q*q53oD6Bm9x7 zR`Up@m1ebN*8sb?DHX(r1s^j5B%e3MmO?=QQ@Ik0hM13rFCThCVG;9G2?v|XAte&V zoL{q_KfI#N-HT1t6>33pie-1+(^pT$i+e-L^7Od^t_DK*G4Y$cm!9#w`hWsliSI#X zIW68CItB$(K*Sv&Y5qfhr$zm_gzE?4c%9OHt*B59#Dt?T#i4V$#x%)8FT@Vh*|>$s zz@AzgEL9c$CQ;Jo)t#VS#IaBea z1E;)pJ$C@~W;(FCvY@wdACD){AB}Wyz^u{Cj|+Jsrkek}us&sGiK-JIT1|ac`}1$M z;Oj3QYoqw;#%g~2V0p20)Qm=x;`V{Ucmq-G7O{|!>`y99iuM}x8Y)IXv!RXu$Io8n z4uD^M1(`Iv* zeEv&f?zi*;mK?&>nyc?gT!hA*85_z0ppJ|*n+<3c4uE%WZ^GX38T8N2wehcZS&YY& zwQFNe;Vr;@VcJ-XOKng?as6KdHm)qfd&&W@w2>+Zcw3nqh9@lDq24ioAbj>M$Mqq8 zLAesqbDKwD5Tjoz2UF~vN<}(qYMnj^4%qkruLB*kb_(-hxx>*V07DXaLaUagL~`1U zWt24clB4s05_pEO1H}>8nQ?;_{)JOM+{1+V;qlXVq`B7udoiU*lV&1etjuDya@%OY z#_AG$@BU4A_~JFZeX$GOnI2@VRzXXfZ!jF24+(X-*fFHe**BYcsgVHq)mPs_|9|*fQ#tS#xtT9q}EyiPY)L;a?b^~TQb2{e2!onQ1 zJ1rdq(d9^g98@@zK{K<8H7Q(DxWl%+Wb~{JAwEjHGFiniSX`Wk+qbU4S6iQ>I+#N)suX$u2#6<+v{0PBfV`yJuI>%2ka!jCAi9)(h08w*sQ z_8#$l{vt5pk_?iLQw%{CKk5ZXs5%Nq()%!isnzlNZ)y%6&uZ?ZB9KthE{C zU>nGg!XOd-^3qZoznjw+g6a5Vx!%~uCERt?LybR zUCjMd7ZKsScC_uwlwMT*7ies>XfkZi$6Y4LJgEbfL_-(_Oq9lYT|CKgP<)XR%C%8* z^%_SGtDC>O*(xEq1KIBvN#&cSmSRQT+~clRZgU5~GJNph7Q8(=g~91Lv|BA5onKwo zS8ao@#;uf6!)gjuzveHyum z$EV&&V1mL~I}8GF(RfqjQ0Nps30P7NfZNw$`LjpRC>^^LG%R5RT1;WaxhFph`i_S% z7!2Ub;v8%&&cl@z~p%ee9H(#n^A zr7=O1)hQmkO3yat-I`u8r^D0Y8DJtp4a0q zrY&3oy5Dg=ws6fXO|4wMP+EfafB=H-hHAQ>Z$RYaYjYH;r#1 z#XUaqb+H6YTzhR=T*B4ZGJ(+%k^nk<=2DVoLudS@5MEZWD=IpQysT7yns$j5;cpVv zA`KoAahB8ggzKe!v$h`RrORJe4#ek`X_7@TrMP6Gl#3f1EAWGl9>9~AyUY~4>I%Y_dx!A%zxfJw_Kx7UUp#>u8>?_*^9n4g zmGY%ISYDWg<%PN2@GY(k)K};s$D#ROp#QW1sIG<^kM&vpH+zThdhZBc7c2i?JbVVf zfA|a@Z|#7X>FFa1>gqxel~chtM2eOL#;b8y8^?nRPB%Os!1Cr5c=zr#SX*9zMpigr z%=L6EJWk&8^RpkU)b1EjzR7z}7S1?IvU>gx3NN#*y%1X^!Pec!Kxq67B;g?}hc}kf!HryS_eULx@gu<~94Cc)>Kun;!yjqO*PNaT<6X zV#A9~^8r2C-=jT^>Pn_mJEm4cJ%zQZD*`$d1+ZfP*okaYEs7Bk;<`C{&Iwf?$b~vG z>N4d$y=mAb)So1X-9kVp&jI{|$u0sbzP<((;_WD^p$rDTx8Q8K6{BM-G`$KS+Uvp< zezRRT9DEuedc;l2h*8XfCyk-`Mlgs7&JzDWNP(WOGsr}IU`EHSi-riJ=Z!lGEm6J4 z>h^_#7s?1?7(vWNHfBl2Ug&)-aaQ&ZB?u$!@GLYs8nI{E2zym>b7KWstp@z_Z@z-A zGPKPKHDL&g@{6eIm)tEVvW#VtH&N&_;p&<=*%k0|{|FvFdkMe&;wj9v+wj5t8}Q+S zn{e~iCfvMz74F?whmP8%&}u@f-Go-FrOU_YIvkC4oPmCS0R4U+o^EZ!mye#q@4tMa zKM%LI^`|>G3*Gs-!eGx}A}8fd2RJ&v+pcQ%q5H?2Jy#BZk#Ydc&%k?kuj@1NDl)#= zfsvn2&lnhX8+ENxR6HJK^~eNf`VIxjbIo2WEA>>!f=;=FUS6DonO-M%0CYPrRyQfA zTOLGyt3qXD^Su|kuCJWe3I~>n{=YOo3lHvIgVp7QydNjk&J{8?kzl@Cc~I~`jxfPw zmo+Pz)e$A>Te~TB2=>Q!kbEbC{i@&_;m#m5y)TMwRIaAT>&Ql)N_-}GiLsuZlAST& zS+r}dE)aRSaZf46ZYHE(d1xe~Wh=5am!xQ#49KK*(P-2MOlK8rhgWb?Zg`nC3G}}; zzt@S)MfL*24=ezIyv2XORHM7d`~|+O0|2L>^JfYhB#reYauC*SZOtT!9}x$Pg0O3O35b_ZfBbx&> z#R!ZQNVK}+quBlr;Qw-c1gpiEvEp=)NRvki@>>$gXCHaFQnz>A&!IX(1BS&^J zyQJRIWoqLT%PJ=@9!>OWt=c}VR&PJ~;4VDhKZX~3$I$6^^quvSBAR_2iEG7xz|IJ? z(%NdbVRm62nrhWn2-tdi04Kj6!j~_0VCnadU~PFG)|cm@-EKp>-GbTKo(^2tZ8xFY zZt2zZ2HFlk7>-~t9K!KQAC683aB_MIC#Prd>h-?`1TJXo2+f0>5?VwOQDLPF7*EUw*qYv-G`q~n5Fl5NsO&E{DVH%gQz3!mpBrYXQ zyMvPqhZmBfijT%p8{eHy3)WWV;oglkcy(|J+lQyR@6=I~TxSR?%^|KbHc1}*PijY1 zE6cQF<-y(S`f5qzo61VRN?7@|Z+Wrv%7Bvx+B`;%Le*8z^>`wrq_Ss8$>U8Y-6|<+6gwHMELxn4Ri{XDa_cUsc9NO#qU52 z06O_}WLyh`r%|BnLB~7+pYx21Wa1h)D1R`ea}1S}tOp}1oP1?DcZEIyE{jbaBMO&I z%b9jhI@Qn=_yUoOY6s6jq41PpJPBW8G7G%=M}>eJVJNoujo< z+XO__-YTE{T7=Oi;nmF$um#9+;c5c%h$%?T2QDt2#pm>A=d;oZjZWIM>sW^xF*q9krvNi2ZPUdZs_SdnfRE?*tBx z^Uv8}s6Q&OVWZvBb-d#ZvJt2u7L5 zx2wC>n=heAG9&Z_-YvjPb6zb8_uQlAvn>f&_fR&^LA|yvUTe~bWsYEi*nyPUNw_$0 z1@WANlSmk>&c%Y_lI^TJ5p!jP{Z)qYvM`aJmru}}x&aVI6crH?f~#vIw2X4i>DB!CtpDgDel3MQ)tk5ouV;qwi4xGs z~k0&^*okb`qGn~57vD`m`VY7HVF5=;6NiHt0BQ?o)mwE_|3|i zLfFKNod0#T-`aHsf-@RrF|Zp=qEC`M zm(Jfry160^qe$_cv>q7+OjI0%wrA5wGYF=vGK$I&QbyeEo15^LKl>v%Jnh5RkDlw@ z=_<$?=yUBEx*JdZ5K#c(`=(P#u`gAtq$#?V)Wc&D8o9hjNqMrf8nrj8&?#<>-V$VZbmth`B- zPY3F2G@yUhhrxLtZd_S_8xO9*y<1mdd1(PU?Ur_QR54x?Wg9jEWp#rFfsS3=Q$?!A z=GP+Podhx_ZTX6%O(z`-;Py4xdUFIY9+gfOoK1K*h2^Dy%E;EYD~v{(59XIVmt`% zLKUYJo_aE*>qu^lkB9Zv$x6>7fm#T4A*inT7%(+cIb1s-{}CU8VLd;tuf|@~P4xi9 zq~fhgJ4W;{q8(mf_!0bao|@x>E~7rSO+NOsPN9N`go#S3*7e+PiC?oA?E6f zK#U(Hvp6g%m3$K|VyREzmQpT0LA++N$GMN!OycH3{lw!VO2Oc_Crr@V>O!<(6i1_{ zwFpD^TNttM8@5{EeD{VyHG=Wu(v&TNpLueHsx;OX*Z3Ee45cM_Y{UB#^ji zETj1oFicVOgQ>W_%_ss=!tGmEVRLg;8~^|9?|ua*AmDU3gl40uujo_8)ug-&nXVX{ zrZO^VO0$$(tk^cXZRo1A;zfBCC~q>B`I-LFSR4N;vi@W|&i_vG;wCj3LVudgCNx_u z5RC?8oes1c88p>Sfk|%gnlt!-ZZmNEfoh$nOc-7-Xri{jtGZ8z$8dUh1XmthgCBkT z0Pfws1}jU8+Bu;d0Gj`mGa_*$>J@F_-c2784g^#rr%C=|d6`coCWRkC6!4dqlmp;8 z{O+4AWv#2NCM-%&$L%2UqZ4v8gwb#a3o~t4nVo^P)kWA`Th{L z>n*G(o(}1IB|}v*G_2ukwgA8^)^)v+7#rYyhI$!BQSMoS_sI+FCW^xQ~!*||A z6mh#qs2@{m^zZXcE0b; z8WE~q5XHhA)aR1N+DKLg^M~)P2ytn=t58FI0SlI`ogRZX!w^u{Q=y*v5`9*3LNu$p%Lte$Sh4rQ3PDG6k+MOGqHPy z=0&b8mHbHHZA>w<<-XAA)LHxocdqNL`R!IizZ*^LmHG7Puxg3E1)_-lKj;r&aeWCM z+**fK75%>m{x_bC%PSx~!DWp{jEl`n=2iewfJ*y^-G7yXzzTQhv|FO_Bbg~ANeTrs zB`dJWH42BE(L{_NPZbe1j|Rz2KJ^iyZt3CSChl~l)gu34l#JXctEWfQ(EjS>VtEni z71O4=`~$f2rVTU~?%xo9Vg191SWC4rx$&Gvv4XoHmaUQ3C|z|h)`F>$H54WFm{k92 z0|z`v?SYjt^N`Oa`IIPU*Vm*yC?RwLK3gNqq+1W+gZM6N2MSB)i{t1C!ytsGU!L(? z2FL`ihbcI)MXBQ8%oJIt6HSSwrpQJ!C(7s%ppNm8fDk4UMR(vmaRNQ3`-x~NdPGMf z{SK1wht)*@QRStV&*YXiKU(=yJh3VF2nTMdh+rB{kpUVlMaxYeADjP@J19{;Qob!| zy%j`(Dx)hWW7XD@pT+;!HRIYP0tllWi36M7sWm4i6Tw~Pu>jOr?M}N1AHIJVW@dYE zaC{E`_)ni{G<+$P{bz#6g;!Ur_hmpj_o_%`Fc;VKnQh>e;pjWZOrSMc zMvPP2t{r^E|I6E(H%W3E`GP-0-kFtkbyZjOeUQ!OA&Sz78jYmUNb}6J&&I}VcFoq- zY|Zxbt?eIc^WN@UJENH=jV_8JDNz)UCcD}9UEOt`c?H&h03vV)BC9F1Wmjed4u`|x zaCbNyM8`W(;Wa#joamMkA*=3}yrS{sg-4aA9CEwOUfqpXX*N_YMhx^82+Nsp z=6bOMRS(rwt(mH}3-hfzpZU~Z8+HHk3diB(?Tw|=cpy}?MvXqoc&c;Rv~&0-xt}~@ zTdYvb(Wu4CtRE%2hNW9gRlsX=bxX~HOuUtR9id6I`Br6JSFhEe!EtK z*d%WQV8J81-8N1v&f@H;Wo#V|v3WS)$4J-_3Aw`_T%{cInmK-?Br_ziT29RMarwd- ze&hf!uebEqUd|7t;URn_VRih7fQeM6zf5UyN)AyeUL^J~?kV`u@iW=*gyp`N85ww( zdm6;y*~f3osR|o%$={x3MWH9J@MxjUDcZS7lw{<*PE>zMEeBRhBQ^p?1|~Ecd*qE|(Ez1b=e1V+bn5cx4tL!d=^@tw8&ZVI{dc zw^2q`LzRqi0~E{_eC_m^_0Ws>?y8TfS*`lY0C7u_+6Im|U(Q{qCn?`qWf9fC_x5X; zpK0R%{-mKJ8G$+hPR!5Z@`bbc?FvNPt{_kJdxia&WCbY+~g%ifmDeP!}|NzNcVrpaqs@`@>-&u8lVRl2^4 ziUOz9bRffuj@oF&Bs(;vRx9Y%CAYfe(rR?#o_j=}E)sr^d>n+`rFTq^jktD=oc?kq zeJOl5s`|=|&ktOb*sb@bZe};{11?LE_Lvu%rkO)i#P`ih#y@rEB*yRRt;M$*YvhO* z4yZR9b-lN)jPjQc09883J|WDTI|>Z<)fs`@e!z?eRjF@!`Z8*$cyz29UhM{AZg0@r zn3jW3>wmS@_!LmCeQAotSi_4$Kd0u4SfRsiNU6oqke%K6owy!WPM)z)^jtHVuMZwA zxd8PJqrIMa#XWI`p25U+v`;L~BgK3GFquVch^b89u!8};11 zT?NV2hEp&gDwOg;`AJiC4pDsqRw!wZTj^O%vFn~>ia!fR$ZknUhhwCpF~0WFS-k$z zS$yx?Z*b**rpvB4oMblyn1Kbn;1!0B92BDHqf`MlrkiE`uRM>#?^1q+V@690>^6XN zt61MTz+^ZCZ8q{42rlmo-vrE$BGQx_TUe}$X0MIq6SFvbdKvwGH#_oyoP2`oSKjmB zRrh{nAV}N321$XRR8V|1x(!2V|BBPRqng#KjaV-%%aG@t>c$gN6tyM6Fj!5cQ2ODs zK&WJth-%_bpVaz^V8C zLkC>c%AxdtXn(>TcGW{*`;9mTL)|-|#&dhI)`b(dsAAYJi9XqgN{qe$T&`~B_;ABp zmfRLaM?SAhMkFPNEUsp%bi~PTF?KZ(+uu^SeGLRC+6{-ls?zygfr(i8%O+4&L+1-H zj7lt7Oq;*~UzJz`A^6l6ejzkh^9)IXIKEj=lvmy}f#%rwSd(+y@){lR+XY?xNyU0l z#;}?&gyK*g0m!uVCs0@$E#W@Rc4*m-_0r-zR!^Sb%Kz%g1^oAa`8BS8ej91CiL}*1 z(n(NbXS`)}`&{NJVyc%0Z?pl=89FiHw-}Kz$SVCR#8TvP;niM$^t)x0Z{iQzWo9=c z3`S#&h9l6U0WcWypnw1S|MFjO`NAqU05IjB;UzPy*qF#6Gq28a(1i5Tuwg6JRGf(z zpHQAccr97aP$=O^ZU8ui8+V>y!tgXn`H>0YG}?M3m3-ck%#$Kb(WxisHak4XAoDO_ zS4YZriL{iIEL=`JTG{Q`Lpr!_kDVNA(r_cbu=OJK;&BQIHo~Z6b2B1lsPfyXp}nvL z$kQ{KA;j@jXv^UW^4S0+p<-3#rm2?sGO%2WmSfnapdeFhc0Ui540J#rwXmn7&ZR^0 zryI|1sqi>w`!fWGif8;O94l+u=3_mW{Bm!EXK6tE@yhjT-vZU=r7RXjyyFt0-*S1| zRZDsQ>v7rq%0 zyqm^^X@-e9rYCViR91~r)&X4Psu06$!sTKMR4oyvk1{yQbGs2leLqOJJ#WjN0^WKe znUcx8iSb^2S5{Z~9IF7Is?2Cwrg}Y}k?#ehyg8~*gBSv_6vfE)P{!9>IifF8GLc)5x%(l2uGt4cGr(kYc)`B zHgkoC=69W`gI?Y(t4|@#RPTm=z9|=@TiEjM0PDz+LG!4HE5~;I5B3hwN`ToK!PPfk z!qrRJ&OcNB=Vp5xZ+Xx^Pdt$-Y}($fHrKoA6Nsu)gBJMEr)1emDB+{I;xC0)7M=f< zOK0$h&u;Ro7#S+e+W@?f;c!ia|xWe3daM zN_BF`J!)dC#Zm%R5v^TMf*h~vk%;&dzY107ZP7^7Q@KsTTUQ)6dx0`>#T1?iCH%gm z&aW=H<=yCE^0MQ=0ul>Z&R?tEUgN0Cgr#zQ)5*QWCC58!_2H|ev}ai}#j0sjxmZ*t z$CgOgrtC#c<$uZ^OevO{Gr*1k;I$wSBVREH`V+gxxK6rHK!)-MBkFmYCCZnO+m2m8 zuUE&C1M(L^osOi!Z`E&r;liieQdlg*X8ss7ho1N>nBL!h1KIRRTJ?-(%c7-bUtAf9 z5x7VxCA6<`^GsSrJw0D;H1o+~y0@ zTrln! z!s2e?MtM$)4^?*CC`<#ii(5}OF@o!eiQ+P{HQsAK9b@1YTFT+`CNTyCnL#+4SIy69O=2yN8e4Mst{)&hsYp@;(qwic!G31pj)9Yln0kAXwLh-ZiQw}bfA*L=qM9!nMc;{m+CNAV#q5_l6zcfFUo<-TWJU4Jn?xZ<tGb5DGgx#NM@s>Uq?d9!Qu?QSHnUU>Ueo?>Eg zWErXU&?jGNtjp74=x6zhYU^f{7^mfrtKV#w{$l9Z zkqQq0j|Imxkf~}SDbVgH7#DWmSemuxa9E5&<*heTxN-&Du`HFuevvm&W!Ne%Dn1LO zYOX8Us&*e?^Oy5mXv5Zl`Q;c%ffl~1P%fvl?oWRIh1+08{gt~x3{227r~N1w7u`#rF0dYE6QqUKfTT&-~BleUXRI6iGV4e7}eDXHQ{%wr}ZKL>c}# zwkiY&d446YiYn_Xb;=UXCzAPUimv_}o4V=`N{p-|_mowG93#F%@b zd{yeK3W%DY*soAU3<$O#2F&+X11$y+rJ||C7prYmq75O|?ty0+cFQkQCtVRJ9ez!} za6u|x6SqgJr-4G9F&U%}q7u2>Q@T{WtRzueH5hMh z%#qg%1kr3|px$wbwE+5{^ws06R9U%7r-~*MQ|0PKwK6+Gbvdn@!o2aDxG`_{PYRbr zpK8RF%m1tlT;KSI>NnqMi==h9%~he@q3U=p0lY#!_k1>IwyrRQ@J@|yDUXKDKFnQQ ze8hEFTCK`eTp2zjrAQ@?XiJj3w>uSQcikAE8eLafLMp6#)bl->-|7=GigM$~#Z_Op zBbjS=hJO~=PVQe`x^Rl`_aOdF~w)YOPy|<46C=S_fcs)VFT)K#2bv$KTB!9+^_fMD+2?-kY?0Uh=7f)e+ekSJwJoW&AG7lW8N@x+M`nY8DKypPr zB?f+odnV^M7RWrzfJQR@HfG)=yf09$4kmizfP=aCacv9KM8l;PBvr}d8_qbI^ydn$ zzb+-;J3uZ7BNs#$^L1p`YV)vLUvYEw&{j!mlu#c^Gat zH08}Zb4RYLp*JD2qRMlVOZa%HB?Wl^q1G3r2IZOSD651|PGFOaT=2LnDH{fL5aZ->Ix4pTQyFvgz*^Rpk!_k88wIbg8@>jWscMc&nmfaiTtKF#A^>PRm-1b4 zg_cl;RIt?eVXjUR1nJs^iRfj(mm?HJ#8+uVf$%t&&4Y-diV`7j2T0Q*s{N%4r}5II zvv~d0%UFB1iFe-ngnz!c`2br_*D;(-aFnKKc3Nn5+Nd`gNE#$BFPq{X2B`x^mlP+* z*LU%`XI>NK3sGWF5J99&DP!0AF<1t}AwO&0m`u=2Q_RmS)CO3Sr zzDvUeJAXbAXa1QnAas>**{V{QvyA5?;R+>JNV6!7hD*9@)t0;3YL2Wt6=&SJl1qg# zglgsz1KxP9!oXtV$v|XA9~KPorHiY$_jH|mQ#3oB%m6?$-vg-`Y9g9g=NU#O>{bd^ z9}+Yh4J@6Q&x|jfR+gJ&?U-Ory=tn;zvN5u0~p={#B-IW94E%x*w`hQP=Zl*iX=}i z$5VF{lNX&llt`>E+I(`!t)+kx<9p=_sw6kuUU<~UF>pBsEF{NT4OZx`Wps$0f+{&G zGDu*=G)bkl{XMUJkQI@mE@b6x}tD>938D%*=RegR)1N~Oqep9_FI*hyyB;;x)Sgr;PTcVDp#S-LBY390bIHHXadh_8T?jTdd$fcJm>wG!>Oi|liz|~$X zvo3#BX#LFA-}ArvSWMlPa?v*xrU^0>bo^kV#JrkQdjKRc(MomH21p?a;xqt&mTn8(6Q z7po`cu(~vl3#XTH;mk>#J+p#yXHW8Ah-}9n3JK^(T8^J|StdLCpU?^F=@4{CxTk`K z2Wx$#4g-M9m#LVw@em0eqefCAN@j7U-a8vYd{7!$#F#BG4}goO@!9pe=p+>N$q+c$ z2T3!R{=AUk1Crb8CS%aa7)!G~EUnICWoecx|FwF;gH)=(IOl6{NL1`eX)Z;AF&cD; z)_8#WsD@-v&op-#+)`Cos49mjdt#D)MCTc`3fYdJb-BAdTr(juwDOc4H5nLQwfc+jYrLkX=|Uhvk`Jo z>HL6$etpf9%mdz^@now!$oTo%7K@${iky=!AM^;173)HFt z9C+ZzV{sR--GUEmRus>&{`khD1n$yNo6_K1N=LjvfScqJZwR>X>*LU8Udp0Je~Tpl z-<%&Y(m|+BJs))ma9VPWue@*8F^hawj8ejIv}=)_zanCNQ57Bc_xAj zNML^2$y`a?5E}YOd5W2KME{WoMi+@G{|w(u8SBsVu(G^>x4&@}>+9Rt*x1Hr*YDuk z^}D!s<32wB@&Pushd4Ui$8eP5aGZkFY9RGGn#~4UtwwgdJ*gK1OJr2}EEu7LiAXv& z$RYo$7>f8Om4DMLpy6nQ@py#saKb+gPA@>S-A239#)T6Lc=gh0yz$y4yz$y)oIiUK z=g+R>{btI47InUec%LN3poS1l9NE<5UU*Q$gd5E!BMQRWm)8?QiLoKSr_F)>wVWj-guwI8D+ z(9wV^|5q-Y#LChfI^A~eu|Z_8${eend1vB5wj>Ek;*2TkB*S%UGC*TgLv1Jw0BIW7 z5jXjhpkZOasMmp7njjGY9MzqElGhiDaHVCZF6x#%{MCdQf;z*9Qqc9@-Gsm15?RCd zK!e+n-&&`L^@locqsZ5j3Sx=ggs(qD`Cq4V8+gCuSq&ilkz303m&sdooU@%yYJ-Lc zySz%z*2wr7W7$r>Lsrq+gW*v|&9}bF{P38+iY|rvuQm~(S5cEHV)Y06keVqE5#^0j zURI}*sXlnRq_?N`&OH+XT--=O%FgR?&7b@h0N3JIwb3fC%k!62;C_GHX3Ks%YY1zY zBA1C+f6d|Q!u_@fSzny=X#b(!MdCN2KNTx7o~qNpqE>$u5%b2Sw#1Shoua*9h54`P zmX+z64FDYhhJ}MbHDMvB0`+)?t8}p_t4MjQqK25csh&6gYOVw>h)5R0?5(f8g#Y7z z`=79Xc!d3fL#_xW(j{04w8{nKTu>sG;B7RM1r=kv|I8Je5PaubZ*b+3?JlS4{o|VO zKU+X7v z$rT6UP>!ACPqp{ddhaeLUo*O8G~Dm^@cr+6gGbh9`_q&ZJ##B80#lYkLvlc}o$eHW z{`S|e?D#@bQy8eZ8p~jwgc||U zbcA#=!t&B0|6G0fd=^wvp@rkjL-j}s>;HxGr}3j7d>dC@c?m!G{yJ*)CTfkQ#zRzg zryI}<23o|p$P5RKMxB4Y_4QY>_K0$PKuK|Zapbbb-+ZsaNxa$OQiPZvB_B}bWrPuu4}OX!9YI0kB0NBm3ykG7wW7Jtv8VZpo1=>k2AO{2|^N| zY^C3-%UN-Cy`g%phNQiNS{tASRtk?;OOk$b0}c1{a^fRQ>&yK=kU*urtRJoWr? zk7THPs2;gK5)nu)-(45~TJ0u!y$(*Cm;-Qu-~B$J6q}nn*xK5`^;-{c{q{p_t#4v` zeG|7IXP^Cp0~`znNa=(tO_Ono@g&X4r&I)v6i_&#C?&#Epk7P(rMx%j7 zt%=pS8Ju02=V!^;=iKR&IDcjZXHG5S?CE7rGp$xLubnCXlXQ}w`A-yu@vBG@uhO-g z82}jU-~Wqm;Lrc;wXD0e7zaBkbV3{k0=e^%aW9xYf)wYdW`1q0wsc;F(grqO$)b@RlXw{Slh~#oFo+ zd%UIXe3CzfO+`8vvpEY<=)k6L<%JIRSC&kUGW$!&a&-x>o!2!wp~Iv_gmhQicDGF>fw*4l%^GV&)}9-n zGNHZd_6GV(y|Pm220)_tDFmVYW$WtOYj-ptTMhD9{iN%dLY+BiyHHBcXJVH zeIt%s@yU+%nf(Y%2iI5SVTA!#>vHg!43@HS^C{)7GOk>1da-IPX~2)KY7>A4n{te@ zl$~Cn-r^){V!T&(?ZsCv{1T>^*R>rron3@iV4ndXf5=>>WneHZ5fwP=xtmrU9WB!? z0;A)O*KZ=wthbb7YhO+9qJ%mJSbn}|ydedLVdKD*C#ppDXYab~+;%dDR|vt0#d#bZ z9%68Cg!P>R{y924!r*9tqu~&P(GUlR>@&b%IL2T!##k5vs8lr+MV9f&My-ZMJ>k3L z>_|bo(Lkr!;DO_s%_a{*$aY{C=DK{>zuV2O?_+2B=Vp6+r@z^#^SZ|4ao#a16q{Tr zRh3m@&Rzf9i$J%b{2(7p_MXAc=8jokxvUYE+n900xqd6fRN2Pg2z2V^cu7SUva1of zp+Tunqf;T|5UZgy^9EvY3fxmy&`7xO=Z9183e7=ga595St)7L5Qis=^J%k!#rNHeQ z2j=Z0J6~O{m?8yZpcn{qixYNs>%C)rB{ss`)TNZCCIBUqr#kypGE||GGC8a0j<)Uv z#QIQ!)OzNsFML6InfPr=G;XChTv4z;{^dKWNKE_FCLO=3z-?#Hd7lHqh;{S$P`WvE zL6y}egpco(ha3+v*z$$Wb(|!sz0w>;|03n^;u=7QfazprW^z2IP|pJEHVPZm7n?%! ztf1|x!evQ|rt}g4QMtgc=XIq*w2Xk?*kRBW2RHoACCF!*b2S$PixhvHt{A$dlB#8V z09Y2)<0MkxDTIJ28}v`7;*DQeIA*fYJ>9AjBQyEwI<7y{_qv3i1#(Zn#@fBj>r~_y z7Ho|)WYq5Bo?VUlr#XCVv?$}Bqn6PuXpTL6Kz8~F&tSprXzm<}YKUbrVU<-!Q z!wmq;jX#yw!DT`IdYv}q@r1kovk39y!3etthuAwf#OC%sws!Whe>lMY z(Lm%&#r^RRXUJs~c!GAbj&`fT+v#=N=yyB(!@l>r9n|VI)Egq^K(k@>L&gkX#*54V zK=O0`*^d80)5j;~0XXb42wPCmD5bh|=Hxt+q1J;Ku zyKi2Y^RM_VZ;O!L16DN}6vX%)?uBZ{;nx?k1N+3~reCbv#IgK2#6C^FAR=}~>J<)N z;5z53o7nIcfCiv(-fJFFP>J1PXEP&Bmh{^zkU0c!`8Kpkp;Tedmx{M9DKTL*zN*ED zdcorwqZm)!Y)nC-e+`jz1Vd8g4|D#PLuuqIyL?B<9)rgGy;rVx$i-h(Dm60rZj&ji zG{gW(fT>P9aVc&v@6%VGL1`tHPu2d9V&Q z{>)Muv8rDcf+zuSVYdW1|Wxg|IRo!Swm_H&uKSZ8(T+SvaHlUvwqhr-;wYt?L>m$d(Y2Mt9M~J zlSjbRg7v6^mVKVqb-vc$MlnNTcyx?X0jj)rE!r-6@@Y2ZtyL0aTpW1XWVb8sm``Lh z`Rr+?yvcLadVBSRAYrcVwHj)TI^Uh|_h)c&FvMsy!Eik0zT@e+?--|7;Vta4EmRUoq1VlhOjaMUvW&b@AF9st>ELV}~LGkVJ+`l7^W zqdiqP3HMVe=Cz@ewH76sSRfENS3_6DIN+{y7Q7tNvTQOi51gnZcAo(E4yE#4WtC0< zrdZ{4b=0Sn5Ua%T({vJu-MVk3n+6VD;HPG`O4Uz?C(F`YGOY2fRKODn{ycsPRA|p@ zRcVS8;FT}75?DUNvd8fT0Qo$e{3DfjuOgytql(!tM}UbJ}zj<%JCtMoHK;F8Dk zKZ$atS19jVFg0<9J5%0Cy~gjm?^f?rRFcMrY$tib4GJk$g9aiG7+9P$cXZMk7F*c% zqQ^CdeR$6mOCi)5#*e%P>QF3+lv9Xy*4}0ELc~0&rX<;ARrn1q;)KVCK@xF_lq!EK zfh>)5v^dVG3tf6`a&YnB~VSCQUn$ zNIth!oxm^2h88@3?KZp>VKf|MBub^c6IjhX5Bx6_Hl|O@nCe3LN`@#yzkb_5DMu*1 zu7l{=JV`MC$VIjoZg-MQ-_B85CWyQcm{SO7CQo*__k~q`KT<0-e5^#ZKhYqBYSb)6 z)Xi8_X@}^q%;7HwCl((%Q?z3+R7nQHD&a47nbQ$tminrq`CGM0Jmr#ASs8mCP&1bU zU)H<`XV-*KINk?(^rufD5c2-pBkU~~tJlW>73IU}Nlq#IMa(JtiD?V5=u7ENT=n)6 zXtihSA9mxB^SLrsN(&hCL}9i3$~FTJg{ydKRc`6Lrs3VuccMK|eYM5>=SqJeBooV^ z=O1rk{B@?_+$cFrUjm1fa^jPHwIOuFO6+mceh?QKD$j^Mzz&E*x?22|cTUJE7K)R+ zO7Y}-?R!ziBdrd-p!L92jjy9+&rNSND|zU|(>93{@vRD6ml(L}SKG1Z+ru06+o7gQ zdcSRH-tRe*=TTp1_-S_Ld zHRi}z3z3V~G1s<;+RO2ui(4AqD-%`IVM3EZ{2`Jz>aU{Dm`>}C>Z3zqDrSE0OP@`X zyq;B_@iF;|cDqbiL(oBX)Ncsx*>1DWx2WP3;ycP=xzpzJNFfE1Q zwT?;mVXA7xmC$%e);K!VQw4M@0JT38ibkR<=WHZ}f zT^77Ab{xIwD{96!3uM2%N1`jh6B04Yl)~erXkI}b&rLe;F(kFIvQ2<0^5oR1d|Cu%gqH6R+fc@gQyFzpJcgaqmNK3td+-da>3K zMe&6`__-oN9QEXKuz%JQqpOzQ>yhe%Vxm?_h4Hhp2GxoR$+gDDF4(?&wp?MniEJvc zv->CER}L&IitX{2JvVl**w_3~~ ztscF<<=~j}teRwJu}jMc;)eT$&28)PwChIMt7-YaOVEz#eq297(((XpFbPL?@rc($SpVx(}XmIBgQJRyk+;(8>{4Haov-gDlXFtDd-UVQL?Y z{P`JE;_OMV*3gc*d9refHKrKvQ1oAC3F~PNhkQaJ@D~{xf=C!ks4lk?I_kA3#z_bM z@v(a0+zFJgV&`jIzA~yI#=J0d<_c6K{du7x#fXMg2BP4{SX503JTSkNs`U3nEl9O| zmZCxJ-un2Nj>qD+1}SmR6GBvct4pwJzIb+6JUcT6Mk=QeeqBp)NI#2P2g1Pk_9Ugp zOhGHftmW-Ej+W|RxUl5tnMyZQrzfHnGwRb2LoM30@;F{;*diu{5d}mypQV;nEZk5r zAI*uN&oQeD#K`X9fj$QmO$hbW;G!M}d$8uEtF|%+90SYZ3o+*R6mG%V1TuRh_=r!u zBsp0Z{fKST<(Q%IdHc#YC-$sBijID`m_$^n#vkN5RW=0v_r$)1%gH}|aCx4W#jqm! z_*+y!ietx9t-EHX7&vrB=B(eMhY|p)1oI5S7@O54mOAAv2Y>K&$5?+ta*oVkuQSR| zlYw};Xpg@8Nl0F{$Ip->e8c0AC1RxgARuPlCD|Qlvffu}*igW8Y!drny}WWIKDYxj z1^(2)G0ti%I6XD^GCE6nA37$v_N(GtEy^8plKbinzIQL|aH2J4M5`pX7~(sl?;U3G z((I2_G7`9$Y|gRv&_#Tkw2+aB{nlB=OV-7U;H^keaJe&5gM*YuaSc6=z*&$0JR@Jo zTXAhE>w`T%bSX*2KLyps%?7c2UqV+>>^HHqFPi#j(Fa;-mP1=UEMeGs;HcNcqwy^) zwz)AG$M2?j8JpbeL813*vpibq@pHmypeqD5m3FDIT59l9S3QANtnn80Rf%$~F&3iD zpK!9pnlid0RxaXz-u~_tH@sj48HA@rm2^z4mFT;)c7slAShLK-n99U0UkZsaRLf9V z1oqUa6I`jvS4|v zjZ9>I)uQDh2Fs%6uzZ;*z?KXXn)29tbk~DNU;ms9x)-q+bWUZF3g&V~6WNZR2 zbY_flYS6^ZES*`Fb zqkOdyF8Z1Gg(^K#ho^LzwCR>;|2gDc?Xa<@_P_?S%3oDZ>zrREo>g!?NK<2m`0sbu z*WGZ8ADd&B%IzM{Clj5jPf8K*hPbnPW4NergjW8NM2IyEMZLcKQ385N{!+kP4D(N$ ztc5m0!slWW^^T`0*jaqX<$xIE7et#!oK96fXcn^OTR4TtASlmAr|AaP^i;780E*>T zuU?gATuXtk9wUc`$@+xU@-7~ex-}uKO0|LsQuC>6Syu9gU{D`bgv*A*o!_*?`>OT9 zSuD!t!shCd4eoMy3tMpiFG_~GQ15c`e$FCmA6)x|p>Fj{5yp)%LhGt1~ z>NzVN`6Pd@j}uYeha@N}%R5k&2k}xa9mw0Ey1=I1gY2Y5LqW9WHCjzn4s2?u5QKfeNNfq8g)NyqLkmFI^ ziI#7=r1FYF3E&ayQ-!`19I4&NVX!;rY098G^xwyThn*Hri}ALV zQwq&pBhaXa=NGL^zp7D%Pg6IyQOAW^qvBW}q82TxUvrnsSBjD+=+X8eJ-N`}n+9@ip!s@5wehw3 zS#UDreF2O1RAVptkp-0}X=|U#!wmAx6@3SpOL-^F*Ad$hytpc^8fUU{8wf3~oK!pH zplRh1(H;;5OG+N~h^Pp>O6(#r5WClB$y0pQSata7HJ+0|{*vmP6_pV+(S>Q}3QHY7 zNFa;xMn$*HFN9oCrXLgnq4R}xtkuK+A{uZPtGFQhvKOs50952GpDyLE*S!wd(_QCN zxdEW6!O3sGAjY7FnTC09re^4|8c>7@SGx|a(A&DvVd8mSnduppDt89z)Sn|NHGUOB zxjR*an+6}mRWr5pdMvTGylNQqr3jVU#DgLr8DyZ{-L8OZ(|@s!)ix-ic})P}X`?Ma!pm3C5)=_Z!vC@ABK~)SQ7C2+A|Q+9J&0S zc9kypC)Er9{BHMY1#43vRp3hbUGfqU)PeX68w|uU1c&eDll?fpcoY7{4Y4H`*skMb!t4bKxhtyK1W>hMe#f_ z+ar>GQmGB{YaU6G|I80>$mK)MO^~8yyX0(p7f@uZ#={^$)9+; zxnGJc*y)FNY&;dpHMIE=O6CeE`$|fM93J#B!35H%9A-S zEqWw69htxq^@n3#QpEtk_>Oivij-SQAynIl=#cU~+fjZI@+>hs9OQTMi8((?JpsLJ zMQ_*(hAP;qdKEDotDNmsp%}YKU$5kP;T#87M~ME~A=W4v{Bm8{{IK9~z<2!hIIf1= z0N`c`u2fbjHFAaXn>*6QSeUyg(+RTvLG<-FG@KDArDgew4DOmuL9PsHnH-Wym85DN z9-{O@qON%+*Cu9u9WG6{SBp%kx0EGI{&PT*31^9oPDQX+g+?cTa6FR&iX|vG##w(Q zJP!y#Eg@O3D>J_;$Tn86*YrolD{?q6OIt^AG!#J&&ZJfh1YmwVD_Y<$QMT z;;6Y5lia(ZFi_~m6x$%+hR+np)O@uh$&~v*lDN``DGoQXNv5Ql)6mSLKFR5#0`H(g zA!G9j2Dv)HloE~Ut|;bbQpExqV%PZ&vJ}iy-5uE3N1DImijQ;g6QZFyzP?)@O1fdb zP6S=(t(o}HJ$fJwR+8_k>b+xr6pAYK&qo6~J|+oq@+nf-_Y_4`)g97_D1$O$ko361 zt@n$Mh2;TYtkXF?8LKZJ&r~S6`g*7)Q*z}EkFZ6bk zFBjGD`R8nti1O5p4Vfs~|)Ouf~ zUeCLbesK)3JVK#x=68;Q7mkoMr0QCxz#Bqwc!E#$%9V}y^ce5(#Uk1>zB2iab(zEI zfFn+Vh+CYUxfGebZrb_OVwQ!aG+0UiNN>1TfAU*+%4|Qd(5Q$`x@9aVu*LV+jmH=` z9Th3fm&#*~{9&x*nwHnHs>`;jrlvQmF;cbR(BfIa(?l+)?qe19_(o${tf*F0T#=Xp zoYYD*oC+!5IiE~23%$e2ujp`&@>v~B$f@O;S9L*=?NX!@MR_6S@RD4KA<0){fe9te z*WcfM%J7&PG^y@vh-aBX;vYw*RMAx3Rn7s?@^M2#nZ_&XQ+H58I{?nJkxDhZ-_?(p+hgMhugymGTSe_AUrC8XptUzR{kYY(AU!JE9$l<}~+wi3xpC zWGJH(GfBFEG0vGG;l=U|_HQx~M=msl#=vCW9V+@$^TW@^g{GodCC+KA3pu1h>5Z9h zsai}^7L$@A0us)Nihl)ujfzyhRzj~CK8pIvgu!BGJ8>vo@u}#C9-P#j+%Kz)UhKS; zso;D`xj-zddI?0iduYY3rgKa-01 zj7=OLxnV+ji`vpp{*6cjfP0-N>YZfXfzah~qOA9!`In88SW8O!;G;`znP&9y0_7}U z$~}qH<4KVdhi7wi){=icWlepF(SB4Ej;Nz07eh6Udz3*NgdiU_b6hIG9c;@Z z1exDTnzQN5PA0Z}l%_rpS=sy<3^1hpB?Rn^on371>|r<@V>le~MZT8Q+(!c(FlPA) zI;|!;?Izl-Cfe;5Uu3zUqPWt-I1Zx2C;)x>c5J$rihNCeyw|4o5m#-zf&IyOV!*R=C>UG+h zD`sJ25{peB;8U@Ko$dOwevHQ{o;}~jv-NEp?Cs-V{{V->5sn69jCsE%sMl*~)M{wA z8l2|({T}+WGknY!7iJ4rSm}Y1AMP!9pUwT%@l#(=Jbd&VkDjb!G#X<(o@6eT4Bknm z;I-RLbUIC(Tw1`%<%PocIA2VC0)SkQ!Ry)B+Qr89Zcc`(jKmhkiJ;%Peh+i~nT+Ne zbq#Jm*%mOZZ|-1gXP?)_##B42P6|WHOt*uXUWd zFq`*mETo`L1Y)_tZ!*FB+zjUD**G`QYBUP(7RNGM&lPTz)n8RjOcQFc6JZ2yMKs{tvzgR z@9}nOV!jt>v4hb`?knqQG#VVP*{<>_KBvho<-1$ z#ru?T$-XrYo9dhBKUazB3ZwL!`s<@06@TittDex`M_OQr=*11`}BgYo@ zdZVW76zhV5b9PhYh6ASjGePI}y(jqe^E=qu+Q!z_4tDkqu(N-N(Rj>-AEtydfp&Iw z26J+bwwwnp^*KXd=cI#3#c$b1XPt+nksxZ~g zftou+T=1AoaCUVG=T0r7+is%UZsG33HC(%OKgat}2y$mnE#chhWvndCW2V>6c5qVt z46lTe3Io9BUp~mnkH-1gc!tY*t%ldHoWl}RkfH448d3*)&I~NudxyAv|0!eW(sMmiTQpH3$rsgedZ)ipIyN#m(O8gel|0t)G~oi?sO)k zaEW$C)mQK+=ZWMO4<0?kd%ypjE0{+|LnQS&l13d9W`r7zv9K`1KVN_2C9JG0iqHkd z+$1`~&|F~CY)AIl#ujeee#mK(k)j+Y2mx|5$&4W9PoKp3(*$!fU36NFY;Gw$%`$2j zznPM9>)sP?&|n{JXOAG8SCa`=mlm+PyoeJEv*>nOyq!r(xv`IxIXKFct7p$Q@oasI z({7{D%;vj{&!FI;P@;5>#O47rCM_>5@H&{%&Wt=c-=I_{A|Wg%0*t}O@DHyN5bdD=O`A%wt)*s#&%~TPlfP8fA7WReVA>$hfTFn|-%{sox=s_3& z)EO&dS3G^biO+97$ajQ^P(;SVA;zN-E}mb-#bgz8Gd;AM&0?Mry+(EL84T-NyZG|% zBOD$Lxq${k$zw|AiG@C&zf7^2qpIf*Asp7H&$n^o z)4bFNC5k6YJOGC(m)?<^$Zg^?>uG!=nNA_YSbX zf53S)`(*248w*SGSX`RN>#tno>myUX+5DOq9xD2@AYA#EeP?vZ*4+n>pW)`+C%AR* zDH_c>U*oBmqf}UsEdv0}4o2|)*9fNzwr-qRUci}?i|EhxvazXU>p;%8jawv$G`a|d z{K4br`28n0#Zf~D196IzOLP45@`cmf@P|pN(FHS%9S(-Lb?-6$@adNzNu7V#+Aegd z6D={=RAY)Q<_E8jZ4O~^0P`+PY6{WBcDeAQUZ;)9MS%G z8M`f?SAerDLibmiY<!9AnEM=4}Q_^jnr5K6;Ax-uolBrayVQfqJurMyt(T=%h=t+f^>B zvzBB#xHCfV>vp^7vIYKBrYK%Gw}K02SCu+w;fk&VRgv!>wKlx2=5Xb}-Log%ynOYO?YLL7lc$S!nV#j!NbcE5-0AGLOWxVyq%eZ)M zg@3Mpc@O{eufImE)#9J=!4bxXM|k~}^LYL01-_u4T3*O@IT(CgzARjbDHpuQ`0Uzk z{L@d~!7xoRoXDdW32Mv;KnNy3{thmjS>}QP^OjK0T(i1swXDA9&$sdAokw{8cc0;d z-+hJ#+okDsF+4crpYML>Yh1Ww3b-_ssBYmF{Tbg(7xL}xJ#207;fovh@x_<-arf~v z+=V_{2%Xv4c&z5$5R+h4vz+$hTanNbM@u(n49e}N-jKGgiEa2 zrZgfj1&tYpKKkSa{*Cn~r5L4Ie`PyNSREc6^3R*Ey^J?se;Kb{Igh2qxy*fdGC@LW zJm1>0Eqr$UE7L?;>is9+*{U^Bh;3+o<-hS{DkDhMg;o2sKgCPckA;ye; zh1Ur807#@4L}qyW$M3Eg8!!DJqbqgKldOB*|!KY#Sm4Se*`m#FpHs4)XDo9hgxNfvv;I`Ah9ff*kI zTJ;9njXDoMCjnT%83&+9iI;NO1wel~yD zyc!IV4oA3raRrwzu41;`#FY!D^R+$^G|kq^gTq67@x^WY{b_|seX_>)_x^}49{I++1D zO%17nSU+_lSH2Ko8kvlcq$57BUcYjYd&xQVyNa5wQ`8nRRH@u5>Dt?lZ({p^E;A(r zj4}Fu(XCZ$<+wGQSquHtJq|8O#?`z}zw_x|j(VeX^n#DM>kCy<;g$&#Hlqe#E0za9 zwB5l&chxOh;TpW21Ein@>MHM&GL3v@6lAj&z14`G5&f$>cdUi%_?R^7%k3QMbwok@ zm4GL|#26oZI~JNnyR;U)X`|kJoB~E9ncWZ>i_(PP(Ze;o|Nh6ge(Mo#+oe~-I9GFQ}&aHWShy)GBtm@8*?HlOB-s68Ky`6CogcHCrRYX=`+yM=%I&-Z~w6KJ-IevC84 zs#zmw))KD#vtu;PW}SP!&{P_P%oz7Y6>MH{+GPfS&u`=Z`R8APsUl;LeCJ3C^aDme zd;8dUzQuR7=4X3&^_2@5E$0HNiFwhVgm7cm{?Py*eR>0b{|`UKn7MT`WnPR$!d>|5 z80>Ciu)BlJAMS8EWy-(Yp`D}?)RFB}KYPA~Pp;j<&wu#=e(}rSq1~TBd$!Mo^9jQZ z4{Dh3`H=5~Du$Ng$Pc)Is@ZIz)okOBDc&VT@F*Qh%%{hi6Hpl+ofBqFF3Bg1tYxRT~3J56#)D@&z-S1JNBH(zS8%X%g?k_o@~S9Q)K|DUE1!gL z<^SjJe2Dixx{migx`F-S1P8-O?owalJL?TWN8n@6){c=-NSic8lTw^rIliZME{tYdWtX!T_*`yALu0z)%1EU69!s{$U1F7M~{Df=__M1O8b# zxqz>I?Iq41nb%8pWQ=C(o6xUw?@I{ty3wMz@DXZzeZT=LP_# z4APV<|Nr%eZ}YW|_cxD&Qji%Hu`L+yW6J;2XPfxV`=8>c|M@%Id$fl8kJoTS3IDLQ zuvV}0HH+n!_+v)`*p4ZWPTsgZM&9F6_9$^)DabcOP8CuYUe}V6G1`*XKr1&I@aNB4;9*SFwc7acU%$=A@#V{B`FhO^iFxdcL=3X<++)1#`mG1}x1YU_3CZRU4vzTe&97a+ z{_aIwxp+EXw^gGGTl1N5`Sa^{@bCZe8=%_t&DRfU;AZ@llpT&X z9Eqg?g9`j@Y;5Dkjl1~W`=8>ScRmJT-fHu+NGF0G^SNwj{H6gw8nIQ&ALF&70g~~6 zEC0+mH(|#xl>nS&uvdB>Q&-7lAJe3up5c|GJq`N=Yfm<6{8iso3*s1puK4Bh2$`yZ zXeeCu8qbN(nv<=crZyYYOJ4vzc%bwq%K(s1A**y8l6_W}Xrece$=z4h?5|?JFz9!h6dVN=1gm~G+#yR>3^36)Djz*j^L53^>>L*A&LiKO26>_x z{rT>ByWK{s*F$4=HrvVTcDNA7ck*be>`*xL7-1k_0u56lm_Wl6nA?xn`MJS^!x2{& zUcY*gf8>ExX#-fd{pYpSd-+lXa{KeaEaQDZW2*#7SSTe&xE9X~9P43{z9SFG_ zmSjPP)Z2yBv&pI03DE|c&dq*R#pmNv3Ml-`J#E#<85Sx1kxOwj>E}S{Z zV-RFJ8#H(Il*4*7IKuY!Hin?6&Gk`d=goUvj`wC#!^xE;TsphL6;LVIF}R#cZcdVg zcZA&0XeuDq;%irVXgEj0hWq|EiHJka738rKtAMY$E)>tS!T={4<`Htg| z?ZypK{PyFU*xWtBkG}gBTHkB%-7jXe$gjbGlSC_J0=R5O6Ym7=(NedTfMuUx+9;dMyNwl4L z<~mE+*f*Nk9!zlk?i0N6wLKmefY&AHLR~?m;9C>YGZWzNK6r|?%{`1r9kq5F-FCZh zg|21B7N+D6M=40Fjik}w-Yc%e+Dz&VkY)$y%%IkrL33t?8)GKI=u#M7sK#`NC{Gfx zQ<-TQ7?T8dpR8kdcb~hjKV93zo3CHOo3CFM1xYbRqOLlR2hl=%ri&&&;*wp1)tTv` z)9!Ho=H-#ZU~0sb36^xvzA|qjwsYAVr09%f04Rc9uZ5YJHlK&NLB?TqVz_N|yP2_( z@g(7?Q}49VnoO`er1;|26I{RjhHVw-+lWHeDB+D@Hj2(ymcPL6NL+Y4x3|r zH&=Lbsbe(7Vkb1%PW4<5E&iE7Dhw2iu9-1;xLd=ZmSA)52w#5r5VPGb_dY3tlR^t* zOB9KT{mowv?<{NE!z>#=Nt1%61B2*tW$4i9(sJP5gdTvliLq@ z%%6Kt*KzORGraQhIb41DT*3diEN=^J44;i=lkZw5^L>uX_WVrdvOme85@-Q=-w{_1;Q=QNeYbm`}Y2!2hY0uS@J>h^nly-aHf z#?1!Ctp-~C9$#0pd2c7_dDdn}B<5#9X8K5G`WPe>LuR0u>2iaXIZrf$nflE8OaIO3 zvDx4rb;*2&yVm?n9`i#6k)=7oQw@*#*L>qddQmbXQi5d2XpHh>F7lQRDrlGT--k?Uooeh>qXUag#`(`_(@N)Wkjcmj+I06Y(Unx1}deg4!APE-OXb-%2l zhiL}qz%m(vsKjVCwH{h^@L%Wjv?69R0#7QY_|*^<$d%dG~kqp>PF_w0MJ2mriaGdtOy#^ z;R-hwEXLzZXv$?})xn2H?%~1|+l64~qgh_I^K<*rIzHXp<^lX}-+hGt_3wVjcPypC z1Hstj&OcNBfAjty@v~q39zXfn@6lacK=;G~cPVYv5*`$8w6_n!-ImjQM~!XUGcVU> zyMb1_jarK-H+6nK_0jVU?Cu@n`WLr(5Ug*$`HJXsvAB~OQzF~hJ;}nYlOF*{xv!_d zRR$yPqsXJZXS;Z#3{SbSL@eZThh{inKu-8#&2Y+uAf|xL&(GoH>PhU3$Jk}N9_==- zH#Y$6AMxE!!i9(=3xXsUbpn3=_VKe#?6MtsCZKn_Tw#}r_C5;;#)8c49pcvgHLm<$ zRFz(X@>pQ6o$Vcrm;qqE&y`Z9{8AQBsL{d-GXR`h&5l!`FyJ_XMQG%!UMI%-!Ib|; zkDue6_ddn{`S=vd)!MwmWy{$#Y!W+~LaqjT`rorhm?w35xlhwtH!Sj7|=VvgxFoO{@)TSv84+i|h+s7^wC0IXadK_O#-8D~2u0Pb| zL85#FJ#rr3;rMIM_c6QB7e}Th+>4L#OYOKC(S$0PL$iSF-}>b1UbOKzhbOYu}T_ z*8Yx(*O+#E3bRY_nM(a~6s%BB-Oj9AVjN>xxsl_g<2Dp$dGVEd@!c%5kh%tQT9cKl zXyMvc6-r&2Vr%#>WdI8(NWV=TP z;{m?7`4B&U_Y*wa*hOb)5%qQ}bDIEMBY`)*kgT3wUA7S@kfVK5) z{$V>L2fIV=zPxZ^0h93vPq+5*#jQtp_x(@B+1j&tN4o6>mgc(R2ms9l*4zMq{0ufb z=gQ7aGht^q&d%Z|$P5AOy1{n6#v{UKL7y@=QMSbKd*o|1^wJKFk`yOqv)c)pA|TcL zOa~WFFXGnPCZ4VBa^Z;W9u7tWY-}H4Z-1YkwPk0enSv&FmJ)F+gY6WtbI?o>WdZz> z)&vc)OFH4f4^!?zz=A|Qf3}W;{gs>sxB&)2!DOzxyzN{y`v%ac6K?<^=5h)?SU(wcOI_cSMPp| zx4(InN9UJ{qjXg>Q-1v*Kc}7YNayU#>&EsTKZ?NUf548J2m=5=zgq_%dv*r(+2$?} z>UL^nNwYDR2~AY+LB0dZl<}G}SD7-E<}t;%!omVrtqq3ULxDvCXLFOC`=lbahHC)W zQ+CvXxreg|)Ks{lr@|eY?>@2dOj0HICv^w%%UOzWaplpsCwVYKF3_^zoQ(#L>@SW6 z=UTh;#9(n9j>aiQhetRP3KzqA@E#v8#_YBlARc5RF#>gfSM^5hC zd&~p@ygT zaCn#<-D$HOTOQ+Jh-GHnwr|-VOdf73egYgkQ{NoMo8TILx_mMKivDx6pMTU`s{Ub2- zG@%qHXF6C|S%?>l;n7^>gRo2)l;^&Z7rnXP+4s($0hj z>b>*$IsV5lKIBUJOBYY)USru5Dvax#*KnC7Gs|RrC*x(>yf>`exnWfB3x0e-1ay_h zSJDvQkg~OlFcrL6_!IQT`pEGnK1}gvIBYj+JnjHAMPJlMr2(K&oO49#V1lMqrhkBks2)C5;gmO$~cq)YY3(KlY8mf}+Id>VD-s@34UrX*nOL;Jw0@W!q* z)IzXebc!B{pf2XB%?F304$Dw4|07nOdTu``F(mjcE53UQm2);h92zx;01DIqqnH|; zBz_3BecXTrjs)RzE4d`IUIyCK6b99B>YxK>Db1v5_rwdVGwN;x{wwjFP<_Plt@!0X zX5e3Vw0@MHWwr514I!EdON6=eO;R4zYPsJL(Q4(gIk09-n=!gs#Uompm~%UJXtF7U8j?CZBO13=Q7L3jB?zVl0& zTjOYq3nwq&yWhNu)2k==hwb9C-9L6_ot?w{-5;;x_lNr!ZVz#|dx+WjKIRts*j(Gd z`t}aKxb+b4e()K;Dv$*Ql&;wT+ErGxzB=LjhKt{ zgkR&w6#G=*j9p8&IMdtjYV^g`y?NmT9XL&6g98ADL z{@RWNrMPwHF@E~X-{a2O29kCwHvo)w4=~z0!0P!G{MqZ5aQVV1T)uc3jYf@s*iQE5 z)*e3j{5HQW;O^6PtnKWfzc9}Y0K20xr^7oBpW#=({TR#33;5PIUoBnNxeabtZskXZV>{2Qx@8Bi5U*y_BOwZanGx9mVkh6@tu= zG!e2YDRvGa3{l9AJRI(4*Kw_HY-5vMZ${?0D>@S<%{4$B7IyvA-TO~@)O;$gU8F); z%K}lcz9izzu6^F#!k84Qxuq-31=3U~1uO#j>f8+KeEt+?7-h8X&D}$6jb3&m(6;Q7|$CW?C2kSP)aH#xnOL zxsF%@zcE5a*E0oVk}E?zNME8T--Ms1+=6TpWl9jwa4pR`TxuByvg}2`{;2R{X2!kcw)+!xt|m_0Axz*SRPxLP>_`5 z{EK-KF=NGzyN~$wj52szJ--fDX*YpT)JNR&f$<4`t42~Q3;=A+5Vw|9UKKfaE?|A+s?pjPKcFY3%Quh+&tyYh1HkQ;efY=x66i+JPGDSjO) z^X_7CdnldY#+|3QarY?>_xG{4v4zg;3>ve2uKY7Tvaz;~dv_mm<-gl)A^GlGxP0Ms zX24O8Vo1Ujwm^Q=Kq%S#!xY$~Ay&_>;LR)N(XJ(E*OM$ZPfm-#-r)fIM?+4}NBf6- ztzvOxI!sRJw)t|;jsV?xvW}h2U9S8ySh6FAiM2sVr2#;2Q#Qt2b`dcpa&Io>UtXR{ zew%G_5aB(M3Il>}_$0vs(a|$5D3kgLbut+V?+YDr+(dBn1z_Tt5Bhxcv^O=funxqae8T744}i(nWxc~SWZa;dC+mD}fnAwgk zn4;e6V10KFpMG&0XU{I@QNo$P!>+Bm{a_7GHnuSsr(j{$8a0B^AQLvPUObJf7f$0_ zUw;{Izxi^0W>j8ZwtQlqD|~F1mz@><`Fo%8bN}ghh^>uHex@Du1drA>@WCIxz)P3U za3PEJq1~+W{xQXJA_W5OnkW>zl=7Wk7J2^qorkz_=Mi_mW}l?f%3K*mkfk@TUcg^{ z`}J%mhPgDS#Xa45Mz(Is;Fw)bq3BuTQwo_TPVoL6RX z($&>fO{S-Z?#(RrZs!gHxy1(n0`djF4fg>D0U#g;V1Zl6-OcW759?`OUA!te&)}T6 zLsZSo-JC^4Ru6o}yE2@b8&!R(`jleL|M2BAoYb4hEzBU9P4m1+N3 zaQiCWy>pdQ+Re`tt}CfBsGISxN_Y^m63jvC|DKG4S3RE`%~KyLZpe)ozAd5Lf_QAl%G z9@R^$-acWH?=<1ic=<*T8wDiD$3&c;7v(VE43) zBxPQ(vh2~3o14LLxq(kVd&0TnAG~ve*L+e&9WxDQMA;pcy@GPj6Vc$EtE>3yUwnjg zLZ$__9St(ei#ZF)aHKr9>at%veuK_v#Nk_XJpsSwW0(5k`)@8-<9f ztnj0v%7+L9BOW;%_x@ndpQP-L8TP)I)ac18+EI4=7XLouZzt*?0u3=4^Be#EVEq|y z2_kn>xQIp}P;vcbT*(Yjc2d%Y@I)7T{dDaVyvm333CnfiWMrLUg0l&B^ZfYHUHmuy z#jlhrufZIz{>O3eBO70R_ZnY6d4s?G^`BVaAmyJ3-2}xJ7jrnTH}UxS8+`ESj*(B? zVwdx$Zw_#BQAcm&AjR==0{zjD)6QMrSjMk@`2)@>@V+Jki`d?K_ohq{I2hpD$Io%m z?4VlfNEY^_g`?98)X&QJ*^l4jYe-SgrBe9#{k!<^(H%dCCg55Uv_k*u-+qPs@4iN* z*23e?t|a*)F91aV_~`Cc{8xYTOJ)$x=W=dXg{)uCQCC}6Q%Z>;>+S05GN(f#E0N3@ zolpRP&6eAP<8yYWCIJ~fOy5C^0D!Y9D^!$zN~joLJvEbnPXYy5jfwP$00k`oYp()! z-6faoE&%{twm=Dr^~`0NS(yL;vMg}CZb^bKoc)Qt9b|f^_<^s!Tv@otf=&u@xz@nJ zc^Qd(9@%06Z6bbaw6Sty9Unisg@5wn_wd)h_&Bz`J>}EE?)D*GADrUw>>P<)28nzY zXVp4RiCB^WfG#Vd*-YA>|5_~`j=}0J^M_YuNJ+WQE;pCYBArPo&l<;99Z^c7aOW9exDO~-)-u>EzZmlkxsx$O90@!(ZN?w zcJZT+D-1@lWj0~CAuwJc^k2fQ1O0F0$4ql~GhO>)00{~xs^PJtdw>DSV;wfW*!5%09W)@%Li0GE%jq8(Q;aeS4>Mgt^ z0N|_V5ER3|ILl*}+KCkQUaN!a>r43SpTCb!K71EH`sm%*nj#R9p7}rjAHPQV>;i|C zCK}Zy^0NgLW{aqwRoLyG0Dz}2b{T}F@GuFSN?;>APK5hkCwN%P4I+5Zt9JpN2G{eV z(lP11ZU>E89cLF+2Bc_iq|7ngQU;qplwx0@P^q0Go-10MHZIE^0HgkZ!_H)u1nmMO zVg`^O;h?tI-8;sw|M3e>#Y&)NF_B;^IdQqr97z`YEAvJC@`vx@U;gu-amE75)Dhft zc7;EF{vAI1{0aW;r(fd5n>|qE42>(nd0sX8xB^yM;!( zjb^*e>jaI1yp{7plJt1+A|c}|WY;gUU?<0UwP!ct(oTo@ex9w;dl zbM_2!Y$WUv%MbtM-~58*hn%W^GvrdgB}fwJKW>yEP+wtnA+TV_@B{w2ws^TXUJrS@ zXGWi&)NW%R5;@^SKiNP3j4##Y>sxsLL@5wcKJaqyjnQnwsB`@Ii?}`h!poFN)LF8km0&inbz~Hk~hmUM}?cS$i!s!N1 zPo~^H$#Sh(d|{@IBP+jRAg8o@q!hp2J7FN8$KC-wel7_{-Tn}#Z3_1&iVscW)-(ajM$_kFU}Wn{pzYKjE!8&getmrSEf{AsU&V)TgPAi1wZ@bJuJN3 zK{1zNwsQh5Z0dWx9+u}Nai2ZX?D2uQMY**K~( z^rL&|b~||SdJmRJar}C}E3Kr*XB9kqwU4bUD-7D`=WE45*M}+8`G>!e>)rv1*)#(e zG=92du_pmOn?$wQ#><^!+`V(n%~vke7`NR;k=XwmI6S_<$yt@hosATeMwKXEeJ0IT zISOgvbXqDLz-&FoSE>j%atAIksL4>xo(F6VwmlbpgNuYcPZAbZm*-jed%k_dsl6_A z8c0qln&vW*B0zn%-|ee3i>Wbgt&W=KY%iQ4Sn5#4$4{`qbyqWKyM%}i6d9-^=M){1 z;6zN|j`2hvLZIgoxFH0Tb%WF>a@VHV`NQ)He)IcpF+V?t_bALnNC3~h(a7dumf7v{ z!O$08MBvQ?;&BEweX z#_3X-yTd{@mEm0UwAZ_R)H{7iW(UC`054zdGl?OsX~9q@wFIJ4tuy;S&A+xnK*{^1 zkV_*wlXn$eN5%|z^Q3RCbQGYKU;viZz{ArEJbAT`N~?gAc=YZ~R{paTrZpJG_Ff_+wLZ2`p|BzHTBx;fQg1OhNwN3cj$qF_0zDpo_Y(K- z-e5pM_eGPG&OeR}&l^bI6&k0c#M3$3=oh-bX-|h-HpA=LJGZycc{*f5LW=q42sfdE zB9teE$C(i5+2->dv*$a$O9N+g$^Cx>2Tg2k27bqgv+kc!&*U+0d9s6gIfqNQ*;8y6 zz!9!+;+5Xm@i`7iZ=PN)25%Bve0oIIBLweYFxD5=LCOG)sdn%v!{-MVSMG$=lod! zT#+)S@a`+VM`uxkZyXjBdb+7FOl+&r2aUN-ZBA6jjr-0^KuYk+F5lz(C;B$y@zH}e z_oMe$j6L%-lgXsS2GQ#NifBGp@`6QPH&l~ z){&NJ*J7%6OXd)#yt!Aetl;bKUgOI0JdSEj&c)0Y^mLjPzOz;b^=5}j?Z^Xw;^0ZZ zY&BXeM(+GeF^{xZ68J#RyM1jP{hvI-chBCSl(IM# z745h(6eq&9B0`FhC=Z!s`K%2B!2!p_kJr&HpP1R<4Xna5i) zEvFI*cC+l(yJ!$G7rCr5`BKVNXec&(d;g3*GWt5*A}L`^>f~TG58;gpE=UcB66g^02Zq@Z{&Y?=OyTyB5< zgL`=SW*3$-lAbY?KF@KOppO86=cGX7v&?d?fwiDZx?>DSUzDmosQMED0E_dpoFc1D zOyUV3kxik}YBTv*x!Q0AVa`tB=Dn7cOXpv{KEUaD1>JsMrSGHXW^rY42DN4f^;So^ z;*N|g7Gne~Z!R$aTnz$fvcHj&omZKq zJDp8qM3zA6y95Bxyg{Bb8E^g)f!%1>0O;_2HvdB9TKi!c0GJb~G%ch!GOe0fUak9E z!Z%PH6(T`y^iUyE#6OXpN#gLVit@=hEB`cqGFfOcsnR&wzBUVTm78((=D4&CK!z;e z-#y>K@o5FU!HCn$5ui$L`;?JmetiKC?`-132e;YsuSv{o#Yv*SODlc^E)qfI!}~XI zWo-f5Z;tS{)du>#0TX$m)&lAT0G#3R^KJIvnyUVN$Be%s)@752gV!_WYDuF+b4(%2 zoGouo$~@;WNgZYXs5J2E^*$^AaHn@iwUrkH!|eat2dLBTDZoLDcQZ^O7Za&c3>}hH|xu^Ya@1`1mz;4$gT^NSBh#$? zP~zoc+5c4!R{%g)65l41Zr{+CYvq=Ra`OfNuzh%jLATFdNfhEmk933t?nWxjWcba- zW^y`-i1P>>(4iT^-#>)!AyH|hgkK8|DO)~hBwSW^zLXx9fS1x#7=WBs{AGQOjLAY@ z=e@xUgA&60ZI;LJ%X^oY3|-Gx;XNk$I@9tRrq%b($8T|1Nu+Hd!XrD7C*qQNTVQ^_ ztkxHEgQv&EyZnyVy2g|wsE&jbi7^#Eg-83iV$19vLBL_GrWaXIeojcJm{71wDm~`Y zLRkR5zhDrxiNN5C-{M6R$M@&B>*5s1*yl|=dbulnR~v#xW=$Zd9`KCQki@(h#3iEdw7n#Viu+{DuI0v_DI<)#@UAz8r2jcc3y434K(0*Y&q z^$$BQhSXPAp5)-xgkcGB?=}7#++0^w;uuIJ*~PO+Bu=wM^e7&eydlWKmr0>Zv8m-M zI-RaED9Xj2EKFq0CuN$hA5c0gD}ni97ITFxTS{p^t2S|3ZAnr`QgG`n>>Qk8eRYxD z)b%Dq2`)HoA}4^Lc6DToKY12VtnZbzCFWr8bB;ubwNZUb)4qX$oEFa+46snjB z&ICue^GEn*6Cm-FbH|(`ga>R9Kr&w{a7;b5DREJ7=S(Hg8}vEd+l!rJeEQjU+}Cg4 zxWbt}WS(>{%YaK<=NK|E+)t5+tBk*^2ri6Fz-@rfns~=)S;YRdL-2tVL!N%4yu57Mw-gj+j zXATHq^u^#9a)osf+k_&}eC|Q2=fM#3#T;&IuCQf%w13L;NhY5~t<_JoQPq&?JfgllnICGpOk+BKL>*Wx2X)_iB^F0dp4>4K6wx4wHCg9 zy3OOALd@v9QkgWf^S{|U#lvdTT^G%Ca@o3jopyY2!$S@~kVhPI0A~5j@15|Kt7+=%~#nC+Fgs&Ozb46{ zhEiyZ)p$qc|9>>M*!PU>P*Xf5)EwdaCpMK6KJ&J<;FEJrbs_jiRC7*;9bCE`;TK-w zIa6Mj3}D7nZV|OHmOar44$Z(dam!UyLdriQBJzE%8xO!wyuq{d3vV7DGx6}|j5!zk zR^hX>n(sv*X6miCV0UmX*_|Su6F)BoP3xG+)4BrKVWTr6AAi(nzN&bA0b0;6U?S@LMP)nXs4@`048d4kaM)fJo>_ z;VT%5E1+WDm2gV{z~a)pmq$IYNtE3aV08sJPMFXuxPZIvc*1h+e>Mxeu9h;fGiZxD zlyJs*dy@$iXCwenRoMm@0LZ4%BLJXML%Y-ShJ+>1?#NVdlrNe%4Teq4Pe^zA|QYtU8UGE;AA)n7-eQn7t7YSl#XJuA8Mz&z`IgZ7(ETmIu%+HpX z10btX73sDMcc6&n-Z((%88hh&D}GuSW0zqD0J0oY+iSE~`M-B#9qa4MoYBED*v@s` z(M|+`3v)A^DIhA1m}>=gLs$Is0M%te+285>MWxOeDQfL5viS^qA5i}*Xq$B|F;`ISOczD~_Z>F0fWUpe#vfLiuL*kbxfp09er<4zV~>z}@Q`Xb=(G-blq< zTLIT}U$c&tXw5iy^J{z(y6|Qp2AJ5hNP4OeKr^EN0QNd^WLSm-0Rr=uS;pY7GeSzd zSx>kzzKHbPoMvT+n|J-cOv_?eP6&?|Ih{xj4gx;r6);1w;GKGt{QOB1MBBD`%)i)` z0089_zk6#_MjshjK@j{G(ai~C{L;O(MicvorxF0j$S@Hi1|{H>0Dx;sfm~$waBuF^ zWUNX<^o1PIJWF670k-enzsY@;!U-tzi*6UTWS8=opPNzEUj4jq^IU5EHc9xr1F~?# zA?AvC+}v8ltNl|>0Y~ikM0iNvFfVrwQLfe*n3MoO!u6=)EFhFFwc5n1y;IaFtUv(( zDI(;YE#UUn3iglAIqWLKo=TRRy3ySX0EJ#cWVkf%FaR*L*^hR$$=UZai0+nacF z|2k*Tk(U1fXB(ikGm%V$+FgfAIqGi$Bxw#O0D!`((y0uuQ3R07(18G# zg*o4t!zwff`K#TXE*$?YI%I09js?UJPLEUZf(0NMo^2)TNk6nv>N##t!;EDA#4fpOD+1V$6B{%J!~5Cje0 zJcZ&G`F&B^e%#qH4Kis9=rZOfOww-R>MOb+5qglSn*cM(Bn>pSI1$SKw7q5m3>TbJ zrXUM=+rc?qxu!cEx;$8JC-6s9CyZ>4!1WVMEk2E#UN^PF+iRf06g;Bf}GF}{>;j~tligzx9Mt6YiqcRJe}{)(>G$s3j0hxgB$CMk`+3W z!khgI47)uSu%Hl(s9j{L zsfd21yO&vU!aL@0s74Yqib0Ev&}C2r{yYoR+7^avSKzEV78FM)|FMv z&J-C~TAVH6_SPC+9Gu~#+~9skX}X%-9^M?B;Pj%(UPM=+8W^!rTl_D-HbNi>GV}{@}q)8T!Or9>P`n{4ez8bDuR) z^?TXRhNv{UI5=yd)g4MM5l&|};QpI0(L7sXC7rCins`YV>$G+W z=Y~Vu%>qNWr&WG?;(`#&*AOvV#)%DMjs`caz|*_CgCS;0Ip&M`>e&vmNl6q-sSIiU zJMDIP{GMD?d5)sFM)zX^T+14GYj@Fu4D~9Oa#)`$GKiH>BzQ!g>SS#MbxUs<(V;qE zz5wDCAdqJyGk@|%RY@UO3$q1W+gjtfPkUH+@mIkL@`DX@z4ovnz;t`{>!t z2@dY)yQWbaVm9-AdfKo#{ilV4(+d9h^$X>(Xl4P3&+*ZHR7D9^y@*OK7hrc^tvhwS*%@z-2h`j1l+UA0+Eb^X`}PYF)M z>je>dn0{_h|3aXvPohB=cs~n=XGkDSsF?jzd7L~eoFVH)v-vb` zt}k($vEoQ>;k_Pdk?f*QF0RKXWi*=|x7}#3w<+~q1)YAMEkaao0uG9$JT_MrSozLm zGMr;tx@3xgO@0i5t=g5&$@Wh&rvnKswf>L+0J8p5db%EEA?Wn+`>$W(_n$q%m9<6Q zuWha1`qnDv9lyS{#`(j!e`ScHz{7TJMLq}RxuW|mB0zF>pH&vjX1l`#T*v2SoR(|I z%+4ZPC}7y>uouN#A;)|Jb2BBj&@%vVb)A)eijyX0a|-1krN35|Sp-_GE(>K@l}gQw zXEmK_f5*70d6&o0MAR%TIs2Eeh%`61Nm#yn<>0cJv1AOMG1IG&e} zODd|iYNL(U`=_Y2x=3ZUhlnD_a^&-v{hxDQlVBSzW0>>bE1L)&9`}2?Q@*-kMMy^i z1?woHoy}7T1^`AFbb1{6a&>(Pg_MQ)T$%x;7u!wbOGV@VDAIrAY~B%P~>@!07(6@%<~ zIg7yZ$~=bU2CC&IgOjAR)B8J(mh>ni&VjVFDzkdf;830Htj|*F^ z-Is`JjO!ofc!2QD5tC%qNckzEJi>fe=%_~wBoru0VO<0OeD?KA?mGmaxWK2XNF6n) z0Y^&#hXV@#8w{94lfy(dC1EmqTWZgVh%VxmDHQX5d3`2+3ro&U#Ce}o71_QqsZL{` z8*?VY18l1Mf~O{3XC4kZ{zR6`Kz4#9GrMNMqiphbOx^^7oi!f$iF0TZ2x9J&G?$=Z zCg#4#!5*&{`KmF9ahO>E;-Xfks>BJ%#oGWID^_#7>{E!Xt+)78H-Ze{{xfkDot&#c`ERD!~?GV(#vDdstqY!PfFD7UzmG z&JBWHUMaWz`sxDi-rU3w9^S!8rGeAa3(i-Z%4Jy?B}Gl2?1N zn3w!jq&%e(tmy6?ouk%hyD1-u0lQXf;o!J}c6Y#n7l9Deb_I&XUt45>nV!Sesga|U z>+lzks}D_vM~d8?n^*AHfB7-~_{}SP_U%gu+jb|4G^HOTA#yZA%XZiTTI=@l=HMKQ zb2}W5KUXTUHEf02dSQm+@>iDUz5Lzq#+u`Xtr#tBvb6)aDA$>Yjx1RNN)M*;g_Gw> zE|p}@le@P!vA8h9*DuVMaOcJqJl{QL7wLqyFxobAGMt>1@$BU;TkVR>n*bxfdGrAH zE$E6gFKJm!jJUEi$F9q@?f@_MPnkc#N~alc+uk|Ct?O4<*oF!>CX0Hx(!g1nthxgX zh%hc?@pvOJhe8-iGes8IsShA2!Me*y5`i07NFm@b!9shNg#J#C(<0g~o4SluC!mS4 z8c>D;Vj%z1H!oO;=tCfzP4V{+`aR^*3FNay20&;&(RED1ubc4FWrv@pq|piU#@=Xd zL7gG+0-<81C)StYMsHf@n5}+jV{2m-4{l$@S*?XXef!Ft?`iz?9pLru3I6`muQ}9& z`l9(fuXrkDtK-F;hlB-N_A{FaUx#ds)bZHE;Q;yBEY=rGm?>o01B1!g$W=R}5X$#7 zTQbWF&ku%#=#4cK1QRY$mth4}S&k!{Wpc;#&B_sxaMIFyy?DF_qTV8PAUZyMoulI0XsbQcjuv91HnM8oX%&cVQPx53rVlOXO zKsHbsq1SL-+|da3pfAG?2*9JYSIx7TR04D4VX!oZQX%WsofnlCFTv?~F2U_;VWyD7 z=JGrm?H-2x0jKL_4jxMx4{VhNIGG5naz<>2A+Hf|NWjVS-4l%d{&P1wi`NYDfBk`t z{?JB^K!!#O)lL`bLXOY%T5S$7x$@v9{^G|E@fSaN#009Gm4wEtL6&K*zK-v^wfjv( z!w0*O`&oKi7*0=-*E`d(PER{|8s+5rOQ!Jh;0*mwzmf(DmEFVS@No1!N~0tYn$x^? zy1d`Jvx$4RH&MuCaD8iCzJ_E19<$?ldZwQ8qq^BxT`x{@)(3(|#_JJYABckjCTx!H zA4A@ITU06L%|Ttp6xJiYXVM2mo{lN8mZ zjk?DLTjhad9E1@EzzFlQ*n&*aispkRe$bS?VyeatBXIh!amuB8)l|L7@gZxT2r}-* zSmpWGt3*Jp5;|YK`5n5nV|Bb~hfnafN$o0NR*(>rh|?zE9PV+iyiVXu+!Ne> z9)q;{dI=Hn4F+hpIxIjWd1Vz<70DUSjvk`(vZ?V*%Q zv-O@_-6<||IFu~*g?xq;wtETy_`~N<@aDxfatrfFWU?%%(N5MB5=_e7E{>`VjCy^J zkxnNBGD!=W4CQ&x;qKKn+`G1phYxPz(Sw`VB7&*;8A-Cm@!*j?-Ctj>#m1NfBI?X> z^R|0PZxA3BQFy1TM0j@)A>Sea0ND(z(MZO;6X6?q3iNx-;!kOoGAah2{w`mX6#$Tc zGq7O~90p4=`8;OkX85}q0IgWKtM~k zk9;=G*yayw&+ws@J>QD?RT!O;?C7ICK-G1?oAfLmlkJTrAo6;LxBM1{A7~! zk*oZRSNq(T2SiGz6em&u$VGN-c}@yg`5a%*p({5x@rSRUBT4mZnJ(1>_NI9DYLAtF z@=$T~LL|)m=Kg&3F1H4hf@n*UJOTh#m*z2-OSAId?@-)qT9S7)2>>`|R&qVINja`J z+Su7Y#aX$|006tjB$5mOtj^DP0050Gvak`L5YTR8rwOwgn-@7M(1a|lBT56>XZC&q z0Y=K>MNh!xdXqtlKYjHapMUin-@e*oLc?6KfLy77Ubo93FY~256RRA1>e&M0H7=Z`iowz`iyzPIpw$s}IvoiKSS6j7k3 zW6Qrrj_kWcF6l5=PzJeTj=iV)?GCOzxQV~~;d}V$Cl8owg1LoM)(|(8$f!8KR2v>& z@uPo=xxwITh@4s?o;c0srOov~0ICZ+mBOooGfp4txXi;s$>}EOq5%NyU1ed=Z1G;H zRN;&Uto#e%rE4}*uL^U%nKa!6A|+#$P$!_@OqQ;u)(^De8M-ob`&-KG6U*s85qCaP z?}^P47_EPLJ#~iC0C|B|2lh;g? zb???DZr|8o0nMBkqHKZsRj~_!p=}7YFq^FF5seXU33b{ehMJ!#;>Ol0heV`_$3VF{ zlZ!67`JGoA*giOgNF*^oKg$aHo4qsCngjr(*}7znY|NDk*jQV_!fc6|wTbMCLIy}E zC4!+=x5sYojaHild2;3<}EA66S^ z4F))@)bY);9j-%48+q@}Ro;n7JEe%EY{Ml|hl4=z2Ao~gnQ*e&?63y~mATVuV~I#D zXO|dEAw}F$L|{ZjN$Kk-MPDhGV*#6h6sFJ0q;XMe;mONAl?qTT(n0zOQyO%;l}?Q# zFP7;zhnSlyqO`Vv#cyB1B4W0r#as>bb{pG!$IJ!LY_!~Tn9@?YkBdqZ1SfF{zHSe5 z#Z}zCzRsQ#bRG3Go7uOWfUp_aw1IXOu3{Wh*IQV>wvHb@y3Hv@$+9>aDg{)}A&N@FwQdXD z1Lb_?sUlANL^}-#9kB%k6j#TNlM(~J1q|X*nYRr?@*wHSG@XS)j{EZuAKu1st%aj% zjr(7IuEbte-#pvKd-t#7@bDCcVh)93UUJ+i;!8J$sVZHxany_FcKwXi{Ae2hl#kd= zCqr<&`9OLu3>nP%^*?^DtjYOZw{GE zHA&eLNNFDou{>8|5c{ms){}b7g8) z@NXx+Dr4@5SNwQB3KZV0Nve;8Wq9i7sZ1DG8k<}Q)vowetb|AG=_`9c-i?)2;=gIS zElwWr{~MHu;*`kPI(^IeI#`0JsWANJn4gi^)cxZnR)+NdG2un#&wv*5)_TK)_r{!$ zSA%0dI(B-F(7YnN)Po*lad(GHXQG7O@c;?nn9c1c5tvWZM;VueP8)qr1a5IphddK5 z@j~Mg0S_8=+~dAC#lFD_y({K=_dA6DzEA_IXPF52)SnsgebcV_zNbuuA;rEnrf^d} zb$q=?eujuUA93|$CKUIB{Qb^vjrJ{yj^hdlqrnL6!4SXu@)`d4r|%5^MSZQb_VtD% z^vQjctbU0E3dJl6vjt{)=JaSRAPv}h@dE|`7L7$*xMX;wpx?c{#mfI|F^f5n(W^I^^pC7^|? z$T^q7D2S_pfSmSu8E0n|G@ES>cOlP+3gReWrS0x9*Xx zvU9{0Y;2+3W@i9^_(IZYJbrb6@1E~U7iim4en=Uj&*a#1QW|OO!eah}e6i@p{0}K~ zsMf;z{49R*(S2OqSY~BZ<_0&ynH(6u9bbdS$)h{??bk2xa`zC$g*g=GW>7h=;Be;gsUfAU8!!fIG)v0eHT+m zCM~2hN%j`Hacu)nw~v|ggxu0~I>6^UM?8KUl`4_Gku3kuw+~V24%h>S!mh|$Vr6~? z@7&zP=;c0+&TBFpCm|JGcX|x;2Xj84HY4``kt1E+1vDr_|Ch=g0RTSU1sEMjge_j) zYUJIM;H)l5$vdGua&#Y|j6KYuVvm%!PN28Ao^h5USk+^}Ql2Rq5HuD>-RBb8axJ+h zER}mzhNh)ZsWtKP)gIPY=W%6yk=ukbPK<_bRssaaSj>Dn*0^X?M<_Fc2UGh6dUtu7 zM))-EGoG(Owt%7{bf!}^{#_u>1ybNn7(UNdOOjS9_cK|KmY205R9Cu8hMW>Q99LiC zw#n+nG^fMQG;}cC@?*vGDETAqc&PB>3KBcJPu_eTF`x*lb`Y`kuirgE`JP6f@KwxsB+P$M#J1Bkyr*VOOe=3p#-zr*t z@tSJ<*-4Yfn73(y8nRAktAnmlBjkaFyp$F=!Pe?}dB6&XGql+y|MuoX{OH4Xn6!^# zdF6ucxB@D_Q<4ACH9z^}Ay(Ix@xh}z*k=pjg^C?)%k*c&g5DpX%dUmMP?5O_<*uDf z6*;Dytc0hvCO-T6ImZyK(&lHQi4-+yUIt!kb#qrYhS_AD)msz_zy*|71_la?t1UmZuL=we(77O!5cJ(GQ zA+jP;%r`5jwoElfp%WB`NmgSD;UG7BVgc_BSsO-z>W+Y*bQ1G(MQp7vGHbRjzad-u zdf23S(qt%?3c1asR^$m5&@!{lF(F9^*pPDcwy8NDTLJCvMox|vtzc15n0MfSRakh8xC<+tz&!lm@^d+ zX&I*#dvkzFqlIK9DTBuVz(7C0ha)CEyL^g7JiyP9ii%7N>cDa&F^}a)(!y4w#j(&dcU)PT!^WL0eDdKtcyR9qmKNq* z_IO{O_&|Bbf5a5m$884U;F$A*`vSiz?H~WfdEc~RE|8v!uXYvY^lh6f_}Pyi;k?<# zlh=C;3~;;A1?d#t9Gv0b|KnHq>5m>_V`C-s*}8v4tpsKf9nH~TDBc`$z#!p3rUW!M z5%_8~kCEa(Ol2jhUQ#NWD!q#*o6s>^dIi`F1lh2Kmnp*y&CxH26$c{b+o(o0amAYFu;Kh^ljA&Ln*}nUI1vr_WX4Liz$d)<-5#=NJ_f6sBC=F<_Nc9(RuRP!Pgx za-ESP5kdIrz+C>6ETBRLoZ$dhm**G+(Zs8cFPnQ!N(W{aL1gbqs|x<~`;N7SrI))C0*VZv^7*1TP)ieCEt@*>()j zw~qA)5Z*t5&^{5U9(S{(h2Li4zl7noFD(E{+-IvUaRpnHklG%h+wSt7;B;dS?p}R} z|MXWs#(VGH!sf;b3m>%5YnE^~*^MI?c)Es&(>{23hZ&I{Ki$UTXFJ&0Il|8FF?J5l z(XDmR8}!j14mbr~pVG_aGSW>vBRvFkdCyMEc>Qvh3B@WGWwt&%xPMc+6~gu}aF^b~ zyyH{d6_}f-4#;(z*xosfPqB!`V1PaW0MGzHAN6{JWB=(m2~n+1Pj-WJf-O5q7XTw{D2rO<4n zOW!^matu6q1Z49$-t|_mG;nx!!OH*Mn*(Ox|M1Zr1`2e4BLE-)Ns2|O{|=7MaB^B< z9)R5Z49BMSsp#a|yEuo34{l?1Wl?cp__vMKc?JL~?G7Hl-b0~OVnWAutA+YSmD7pU zYfa2js>*y;S+MQEY$gm@)C?r2EDbidH@C%{4C|l_1dWl6rY-w^e>7t5g6+K%lu88- zJ0OPm7u$z?O)8rLdLvfumKSC?EM~S;X)AIJM>C;v6ggbA>FrmW3Vx0CYZ`#`fVk z{{5$4vGPwqfiF&4n6^wO(z2h zV(Vq~4G}vNhp*F@PpcQb%@$q$x6-2Cst6+dXO!+6D%g}I9IMcV6%~K$Ouo-6&Nx@@ zF~yr!o1I#b3YX8@JP<%1pFRX2u!U6IAfgdkwW3bOOww_;y+tA2PYwy_;TIU{+*HpV ze>ki@`_Z&uFE{JN5J;wcap>qY_2)#l#Ps8M8Z>X*fvDAZy5~+R!)26E2Y&W*Z)FeQ zcgi{=h{#C03L1nmp4=)IOk(S%MY}j(;#5{^D+?U=|AR-jS@|bLij+?mu+aj%63QGS zW{_P&DX%)E#M)d%E|l>)nnz*Pma9(Mm)@ZU`SEx2x2g~b&5lo560UD8rxBjmlzgB4@m)P1kVgM@1AV9fX!;4qDI4f5%RB`G|zL!jJEHHVT>>QkO zYOK@KiahTsY66d6?BTT9Lc2d?>mR3>v}C(ddcEVb3ZA^!!R?!yn42rP0yw9^99ww` z7_gN^P{nl|=@hpqg)9(n zLBf)X%E&h2qo<7hk8WSDyc}E1uK$u-0Iu_lFuWY(yp<0#eg%moC+_~!-HrigMxXkFpQ z#3<{NB-h{y>UEpT%FE+Q7j=Hx8jdcXIpdmTOoj_AqGgJ>ErguFx4?uhgilwBQ9Yw# zTSVxW?l9&AB@AufYnan06cYwlHQS$#*CvU1B&?!n~Qs$Z})<$QqT) zBr!)RXs#^d#+79}e0T?s9^U2jX=}^#to*a$rCjy(JB1=+bA@3gn9?Fh!r8SgnfG09 z%q-sPD@$~f}@03c6+@7`4euWilLJes)pA z?!hT?g}h8xM?xaGaE~MaK1FL8P+vZBMa9EEei3u94mk3>ijy1lt<>XdCLB4iP!ba$NcPHklU zCf8TW1VC}^tmshe^Q!~AeszfL<8z$Xnn)M2$Pj^7CXGTVjoQftPEX2s{`v@CJ$}R9 z5X7twm3=~6^DinA0HCy9Bjp`H-zu{yWH}G}?!g&OPbzqp+T|EsTZONXfPPY`|BXK02hEmjIqfZ8SZ?j0RZUqgEu#D(duw^4IV$q zG?Q`e9iFiAzfNh*2moleA<`LG84LM*8q0afS+KY;$L##nzf4PIR4FEJURhoCX;NT@ zBi`Z88*E$)1gBlXeY^IYiJjSm*T=jAA~s3O zH0zF0aGyYF){o)gAHTV}T7<_!L`TryL7pG96K}&`eDaW8r$7JlIZDe55&$^8z|mP5 zuXc`@51`rVaF|uH(s1Xt*s`fkDEU>ANM}>%lZ&_`Lx3oRsNEgnTWU^{mpU`NUeP6TgKblb;Cao)P?zDpIF zJphIy9vAt19xDs8*j!!2ez}2Kxrt$K#2Ep|lZF6*p(3=cR+|`5o=|%TF>*Ld#oe15 z?3n|lLyl~Z<3_(fUIdqCNU={706?A)wv@;SbR94NFyd?yp&i*m%lNVtRM<-=`{>3wFtS-5sTjuLU@W&+6|CDEfPY69#vyKPBJ7a!| zexq>bBN!YTG&fTH-MPAsU;Xl92_h%o+Eyt;>ukl*B!ug066$~Bw8}u~gWADVO0bCh zGg{e>ePB$B#autBTvMHoQqkboUwnNpIBkvjzNq)dFC9T}z|a@X@GB=&Oy3jy#G@jh z4^Fwl8~Q|~o+=Ea&!`-;p8hO^h0$DrahH03s~^5mb$PTQ>MN!}!puf6uOIi`Xk;Vw zekbn7~lpX$k>YT3SFpd&)83tbnIdOx{Q!04rESvQ`gRfh8+hzuQMKm%-KbWd;=3 z)zEf~JoaWKMSV=fyr`7kL2t;etX{0BVk{?*1!{9)DFwr0btlgVBDW*Klsr2~$-RGb z3zd%>`0m9n?*s(w5E)=zDlV*OWRmC(`lytv>|)L(QY2JVn&C)-D$j`hztKTDm*X-J zNFq59QaCBs@!6Bt%4Oa1+hGJ)@h4%r-syAfzs0H2M(hTk$fTIZ;Ki#0+_||W$AIga z>8~aM_^ioh2QuSv=Vxbd^V$ZU@18RFL&TU?I)!GtkDbFZ3dIBFf;c*_GVvq3lJjC5LBr5wjt!KGrJ zPN$iSkmd{mzm}Kgv9dJJArtPrVRofJm(%kR6tH4m7VM58A=U|80KWtm76zmHx??I~ zQPP+Q-r@h@#S1&`d-c27`@y!^Gv@vGZsW2H%VsAMxpXDt`V zH=06*3@QMaJeBU>y~=BKF`wtBQ3w!SmC2>i>i4mKRz{Wi7e;Pq4CNc}NK~Bg-(H7_ z?Gw81dTC(I`&=Oh=2`s;F|H@ZWScVIYrfBvmx)NZ)$SslO(QLg`ioSg{fb>!Zug&w z(^{t53{RZM`=?MlbeTllb?*2Go{!fwq8{WvCI);Mr}ae^eVn>Au6Qxm1>4MAucB_6 zUhkQ*Jb`Lg+Q!FTy+5#zsRJcbc?U&K2mZCXB>sx4zMttiAT@@^5fNQRQWP2ZcsSAUQD zqdI;JLg+{8A_k%Gf0uvqAJZ&8DNDG*xKN}%1OQ}GNp>6l$w%+tzx~htidpGXt(_7@E3p{}G{jGAdbB zv=<&39uJojSG^bIb6Nf_N}mQ&l*u}jOmIeqvw91qavg7vrO{OCHHDm}tRsjG-rPNBxf@P_8 zzvL#XjM}@;+z#|iazlrT4JE6GMM^|&!6Dh=L`6^ z|M(?dz1inJ!*x%DS_%NDR;uWBB>=#Rd_r0%aL07UySJ*biFrg<=HP&kjIbSwBjoixu~OV zbcJG{kmv-2E6?)poAV7Ne*CH&BVfBYWS}D4>I=*t;S0vkDG_q5v{Vln09ajKz@NT; z&KXrM+C5yfyL<})0Eg!l{OYX0;4$m+g*t`=U zK!6*0I?zt(H1FKHiiL$)uU{u3NGbzLl*g(sH(JkT=ZeT>Q%G2jvfN8f#)0jissMmH zH#R*_8091GrRNO_h#tWw&FiE{mupSz9bI5Vo@MDY&w-R>g!(`+ol*cm3OWNxD64|` zQ_BoOaLV6StIO?4^O3DH38<@e8b#)+0hsrN_A6^kC>8Q(k47AxK+ntMGn|500sw7Z z+mj3sTZWgZe|-9|x)7=9r1dHuI0z0+|GY6?4jlVdm+M8k&(Jzd-%krH)xWI`Bj&sU zuYG;jI>7@`9ckR0 zVIGg0JKURsZ}YRY`Uc*(&%f*z*Wcb2;4;XCqUta5ko$qg*EvRxXvaOIV)3P7LjXWh zWd(2oPvDkHNVjg8M#y%BA;&QkW#t7xLLs5ujb;a*fAy4iQUJ*fayaN=H0a~n)&{O` zZQ$C~btZ@#*$PN-EJZ&kOW~$>Q!d$L)qnKvEmpjqzTB1WjV`H~RC-9@actXHH9@!B zs4?RcIaJCc$L;T7h$y!Iz~2wOw0d9#k67`S7hWKpv{+fC3M7jffdCZZKuZS+qGWBM z)O~|q4+ZiZSej?y9PkVy>>+Vw1&cEUP!c^RXG^7UQ76*6V;7*Qw50W6(Cu?L06lM! zJUGEp z)@W#Jk=Yg6*@|un26BGz!99GpeaOHNTeK+Df$m5MW$7MqyUXve*m6f{r)WPqtKgz0 zNxhP(v`fM@V3*&KjFV^bE$@4o&P;texdjsuA7#TBQXfw0bX^G!M`-m(kgeeOf-){t zJqxO0c6Q(?B92jQZvPN|g_1xJN{L5t@`Y@MQ*Scgz;J}7LsqjYT7v;D8f|v3A9fv1 zmq^!BnoUy1bq5U+{{@>a7!n(jK@2q4F=~ehzZj^a%m>*tx2>(L#jeofropt_cw-Jj zaUULr)x7$NDwu#V(3PvVH##Fmu>aXUe|A;%=J@u_pN^VK{B`2<^b^MAQCvF_%9Mu@ z7*5+RCxx5~Xm0qcpMQwofAbQ@-@M{fkm+n5t^NpmXEmO$NvS8rmHHo%DzZn4=C?4c zZEj3F_p2f{H&$_6X=B(s0dfwvVc!9VvTX04;?qBVher=?`MgN@1634>ZP}czE|tzm zY0I4NJ3Y3fQ~FVz&dyOB5!(A97~?%jjC2K8N9Ua%GatEL6*3*0COOoKA}OQyZg1hs zXWK~AaVldbiHmv*-@ZO#@Q>ERi)M#CrSb`ZLegS@Yjt^!$ydE*^)-HUsa)kx*5mwK z0k^KLVQGE_DF#L%E#H=fOfJiF)HhGJaqrGGo|9;!wsth&=+oldnT0t8=o^nuF0iwI z!XaeD>yS#MkV>U798f4xAEmhxuCFa}h!KUOk;ee_8#y!sd;q4=om#S8G$IiReSoTVS3r=3ig?2Cnwq6$$c1 za13z2x25MuQi2?kW5Y5OS7V}ZZ#RAfL-Kq8Q3MbWA-+dfV@wC0pqIpL)62IL^crWv z?||fW+46-I?ihV1a9uQ)K=|IM^2qv+(VGJLNbo7<8=QzMquv_3wnp9Q1TWP6F8bb( zCwTN{O^3-ul_&04jH0H+lw`!Y?^TjGOLO$E@lU$U@Q8g%Fxc_3-{lq~jPU3!yvS;t zEnI%TQWf=mvDjneH6pUx$8CO=d;xE<^*?)xdJoh~=&l$N0TJ_g;kS-MJSP{lD-^b5>_yJO>6mH+z;*@MQD|SLEhf2sHcXF~25Lp&k5!Vy| zKylZO5_~nOwxg6gR_JVV8q)0=HJ$^PnPyNY+^)j-OH9!wo+2bKA^<>$4Q6Z4Boi`C z5?NTt9dkIsNu|MrTx203m(89%fZZRV=mG#aU(rZmys@bO0ICBbXiB9}uD6*_!B(#Q zJ<6m&UI&9A*DVo=EiTU?SID|wr>)e{{nzUk`j9KTaMmvwTm0p>FY&Mb$NvY7&VYBv z83N7_Gx-8$3k77-Y5e5l_gEmb1>EwPfDbD~%9Vd@brBouOZX3ee9Wo#Y$3fB7-6UW zN=9kNBSW(kJ3YnJQp&;O^D4^q7IL!|b1TTcVY5)&X?3K)ssS1+*pNc@$-w}_#1JBx zL^hK_RuN&5fKEVHz1m=Jl#6nW8QqC3T=!oyEnsB-aPzs#cT;=jGHEQ$&!Ujcq63F_ zN(D$(zSemkhvh0~j-bpKVmRPuEGq?PNxLfR@#(q{Uw#n`147!B-9{oIIPD?1HfM9$ z*kws8f6@|ZyAQUM;uyXozMgdYJP|YO+}~=Q46a+Q{-Kp{M=Mj|lAA-{_a0$b%mQGU zP_wmH4!C1VYNT*OV}dT^OcI(*$ds9m!~OO*zx$R$oHDsQTHP+Hjk-I(Qs1NTO!YeG zIbMG=o~dKvE!D5KHdgWU^$A9lF=FJnfG>e{+xutu^p8(i`6qHlce10gX?yYd7U!!^ z@lbKSTm;afw3vry3;+;7p;MqaDmy@wju9<|Tt-e3-b7?5+)&Al6%tn$^Zb( z(GVCYk1YlOs!e>;Y~yD?ddR>4d(0%03W>_gmAYofKUT5aFu`6cih|ohDF}-l|dIQkX=B( z*%zW9e8(l}rX=r8u&0AZ5E=b>j&UIDFXIC(>W#WDSf0RehJtPyNL=y%XC{qt3XoqVQ6Kc^>l~ z*^!4fn~Hx#xl|r@QVixfHCh3QbdGaI_pJm*nJg=4$Mr70dbWcbx3|#lb~*l!lzdAG zZCY$h3bkk|D`LIg#Qy#f>h+eJ25Y3OfeGPoJTmbVQs zvILOTl=8S23k4MN1@y=YXOC10JL$SlF8i8jitEKna%#96o2zW`H!aJggq3CrycbJ( z^kAXqko8@lgQ07E9?8aI#X6M$7H11g>@+`9Q0)p=NHXUj_4%=z?ONy|bPBnJS&khhaI8?sdE%N??xX__@7rkgv;b=g)i z{Cf910JNa&pFD-B@cU#XV?G}{e>(2}SP541g`c)7IEvw72LUT1@~@jpgtUNo_e|_t;jkZ*K^ym ztcRM)1-7I&3-K;Iynln)*$bHj$D#LneFo8T#XK%*EqwW8o58mAm3iiP;V>$d*3oC# zHRgUI8a+6mF};o5<8!n}HqZS+rQ#zJG-2`|#CEF)g=9=070L@lmxXz{ zsBTvmX0f%hfZAY)TDQ+ic|whUDl?I1_PagI&adG1<|>xwXIc68rwH}NZt#2b*wB50 z=f{!F&!7~r8!HRAb8Q`GtuD?REmp<}$fJ~n)pie`KYoq>>EHZ49^Ac#ckf+OU{Au+ zXiZ)q0i0jda8a(~51&89zx&6puy<5OCND#s2sj{+oLKw`_;~N#o6N7Gt2PwM60CdS zxcyps3T7CvXU_^^4N`UDe!uX*%+s?9gQB|!C#W?V9Fjm8TqyjEcH#k8EESlGhQJO> zd4&1rMGdJzc^5<#G~A=Y)Fy_zlL|NV@uH|P>!|P5M3UNI5Pn>=Im`oELo=J3p4L{p z4=%q(tZu9kOr@l{#TTmn;mb-AyE)<6NdI@*CBXYaGf%;EcU^YLdAl2@l*NoGMud8e z`J9Ls#+D&?BI?^?bd-Qr?7e-`_e}S_v0pP4mqyI%Lh_8aP4~2j3W)t2XZ-2F6O&;J z-{p!k^%jA&#HN}E-Y9}MnvaV?@}gfG{r<=g8vooer42RL_^BiQJqD&a@tp`6+@~+U zuNnfkiAnu!>TMk2`saG|^fO?n{{=r#yGOcie4gUrC}Kcqbr({2QNonx_@EUE;iZU* zYE2zGtpu)wRYbl}Kr)?2KPfOEm+edrNab+S=%V#}2OocYpJT>z%0=A!1UXG767X4D z8Vv#fj!|zk*?MjZp*>WY#ITT+x$TKG&n=`6tr*h@L~suz9#(Z1Ugi<(dC}+{v7)C^ z915WU0DIU+Z#0lDkOHjalBHC-PFhS%mq)QG6@^0HEq_!jvG4059AUH|!?Eg#Bpi~uz*kAzsv1Gan-uNOO0Q+q;@)Q_Q`n#rxz7G zd3AvEvnmV3^iGGf0Ss8!efnx&f*Pv1wP%Cbg@To80xwW}5VT7GU=7ty7yZ4S1jo{f z6N21khceV9U&vv(kXHb}qGbKniluNJ&ApIRQ+o@PDX2V~P78zt@W?r>Br-)%#il9`m7t)|;*W68hM#}%=XK(QPFC+kv%;%BK z7dXU$J*5cTw{6bW^UweQeEMo|lm*TFj_^VSlPZN^ToysKot;KofyV5I_M#rZlaT`w)?wl7nRWTA4bMpDO}kN3I@m86k8^ zadQVj>OQq1#(EP(T`mHOnpe}NJ`|F}qXeeNR|JepQG&Jm z*94_FqyWXgUnrU1xZ%&E!-SU4>DI}q9y;bR$+zK=HJ=^38L`;F^r;FW9~AL38ZVo8 z_Y@~4U7$Nt^w*C^$D*Ej+36to2H^^;m%V?Sx~%)nZD{BjQ|Nb?+IXdG#Q^>K!Y1ALE1?CT5 zyXl_&yRyOpFzsaJCF@Lw(*lx$RmRC#1)u)uJN*93=S<#~E#+Bg>v#Ihs!YoN z%F--uTw7;rkB$rXLhvW_Pq%K&fI{i=?Bh`g^rvx%t*da5%e#Uq=)0r^ehF_*FHk;h z!6J9=l#rIDgpA*%nCV<9#V+9ma-Yv-*kbJ{Wy?{a7$lS}&J{UDJbSr|dlb&%XxCgZJ~gP@r^04$a>XV~@SCFx zSdQ&M+pI7GcF&fU%C$vKA-A|tl5y9n4tzP`eS1tNp0N2iM9j}|70z&9hc)A zI0W4=-r1ZLK`JAy-Vlcu4gA9&9-~d6E{ar816iK@;}@uf%AheA3@{k>nWT*O^=15j z#Jy>=T{n^-mbmx6jqh>acT%J%RY^sumY(V9>aN~uX1t6eJpPgX;t!5+I2`tbVgTd5{3xo!+V<87R?o|?)!JH!(aXB_u=UO`3LymlP}zMix|~D>_)IQ z?^~)rt-tl<2$q(neg)d`%8!5aUHILnU&8M`c?PTQ_Kl5G-VmN!10Q_$6#mzL|DXL$ zD!=>iQ-52-*)tp7fOR`lTtHX1TJ3`d_UG1r`QAtH@w0DWy1L>GHkYTf9f*8DNMrIjUr zh3M|)7F^m`g-h4Y`yC~>Zd`%W>uY}ZP>9!Kl2JJDP|_ynV4qIlcfWrE|NDRVnLobZ zgSaMpEyBF-y13gZbpXHn=ref#WU9Q>l|Iq0dTmz183K7!h`!a{E>vP z1vp&MnhVTy9JTOCXL|d&&FLevslWEs#aj4>_dbT5oqd1RYzQuFq9ZV=qc{Er`_#mk zHg7(<2j6*g&mX1Rn5`wOmv66jj{W1=6#n72zlZ7vK@F|MF~bbNjJT2-w80TdfHY}e^piBQ@#X5wy894atF`g>B%M*hCoGkvDOp* zfJRaU?I;*}1;mIY>c&WsOZ1qv`4k6urK6zmI8kKDp6Lso>kh+wbp&I=IS6nGgP4HfWQTL>`m9ka{Tf#S!^Jg!15VhkP5a(Ov5hw};x}aPR%hZ;`%v?IOJM z-Fto;>#yJ2@&UuvPOZS!;Sp@@AHd)K;&<@jhfm;#j~~L19zTTF?%eR#pt)NLR+ne~ zS|bP6~q4R9!&zRo7b=e#L2m1#xX2Nl=Sov5AhlgI_zjXQ(oH?@rYp2$_ zt-8taj@-$^2(%>M;5h33zkcN+{NQ_!;1|F8$Q$Tx`)P0hz{V-~-KWp|He_e~KmFnx zc;ofk@aCi2aQ@7Ocl^BA+JP6_JMjJopTPScehNSP#ryEHUw#1A1xa%&bjp^B0K)+flq@zx>A!yzv%xBS3Tj46fhU3(f&BoxnU21Ag@G zo8IWVbMtC{bz%sfmpDzUD@KUGiP((BKM^F%_EFZc{JDSU8f>hu!3Upy0ssC#9r>;F z!9XhUAl~%G!@N5$;^m=>_2LY{AOF!?u(kbn@XKGk?^m~{=ayi$YW%gMAAI%<{_)oz zdgK2efAs;}xqS`p-o6fNr&j%LlkKe?*xBBNKYa3q|8tH!XGl*@t-#FP9^eCP9{Qab z&S3TJ>K#~_E)dC-x<5=Vd?jzRfqV%&(_aR7!LXe6J5Zbh;PnT$;lt0q^iF6yU-di{ zcC)zY&c#M>J9!>Fybb3I2S7kP^}wL{#U%4)+;C%i2f#Idm8&!UogDEi;`@iNygY-| z^;LM;2QGES|Ihx*d+_$7JMi`!cl}W+7xTg8ciZ}(JpBeffA$Uh_Twk;+mAnoc`))^)YOoJ>P;)pMC|Ox*ZN{E3oVw&C5%Ew~2K-Lw0uI-1;g! zynoZnIe!gp7~`=A6Hiy(!6h4{J&xiP`rVCgr`UAr>HF1-ZP@ws@4fN=A6-nDxy=H= zW&}ugX!Y{I&JO_QhwyLzyT62+*RS}UZySAFo|Nw*`#PCCo53%B^9T6!)30&|M=zfS zCqR_)5g)%3a5{ng?QPiK-to6^{P7>X4d$IU;O33X{q? zy$5eRx($yX-G)c^Z^24`%~7|aqv3amXJ$QJ{A$a@|M{!<+$zzuvgc9cqoAb>RCdw# zFZ!T#K0@`UM}?zz1oxwm0%1YuTx_HMn%~Jgl!h z?N*FU7bSmcyGytZ_rW_$+zOD}ZQ;)TJEJG8n47poTOowARn_5as)Kdr^eMm6^xa2y z;a~jVJMj6}FX3}{FZkMuzs_vQta!)J=Px(m|NX}g;KMJzgui?5eIN0DeQnjR=I-tv z`0M+gefP_>Tb*>u(PZMc=k9&;0&ZM912^tphqoTxgIhN)`+8m4e7Wt<|2qeO zb0pZ66(8tue`go=cMjqF<@50R?JM44;+5EN9bGWinMuHSLx0)tEOF;}w~pt2+pfRH zaN`v0&#gbE@TLEI0UK+pUF2{(tn_#XkK1kFu0-@>u-i_X1yk*JW1Ky+?t^w+bwLIF z&X1YjMG}L+O{cItop$$>zjmvS+;00=bIHByrd!eUV}I72cXoA~Nu8ffA7E?}WJdVw zBU$TW3)X}bt$d}Q!*+Hr!vnlLu?!wNNb1v?} z*4CcC=RD-L{aImO=dAymbbS>9c~Qq@GDD>Arx5hZ_w{tzUv-vXXmf!(@11+@ytTU; z@WJhC@a`M;;n~X_c=mGJ^PsyOB%}zJiOXUV$DX?_ z(=TD_V@#~T^7@+JIkas7K6v^qJloob-+c0=H&C5Zao=C-dIVcLyRfyh=ViBDn!?I# z2J4p!&Ozl3uSw?!m`t+%9ULQ&5Wq5B$EfWF5_#Rx!OaU!R)=^KVdXy_QuyjY^EUYds!KvxGkNki8<|S{eJGxEc7H^aDZf9>FwvOho;jSp0&iqX~ZdcIW<~FQN4P3Z>0siQn*Wq9NwQ1=<^a0~N3e5v2>W1Q z^~^@kms8l^+Vw}k*4*xjTi4(_uiu65KYksqUB2L*nGl1a#sTDSoN#^W9Clvr98P+8 z!?luFcL_`%9DT05>l@z(KGuV~`C<$`%6htA@Zty*ZgVAlQJy zk5+CI6VHclrlK(fe}q>`2SDlbFvU~)vlns=V~JU~X6jR{5Eu4+tEU9RGcnK!m!f@< zt>oigHhTPv53~YhQ7f4SptCRkKm2hZu>~{?y5LfE(DXqe2Os-isEFN(#c(^=c4L&4uDi~&y{WLDWy2c zW@TJ7|4WxH`2P)r>$Ik6*fFoLo!MB0dp9n^g|nyp%8S3YE<0=80bD<|2A3~h@J95+ zI~2NWhf;oW+fC1`uk}YQHlhQ-Zz1$ba=!xsO$n@LJg)fmJYp@J-ZSfFZsY#ong1{{^k}=onD9a z)9dldsr{W7u=C|NaP|Imzm?goj@`a7oK=3gxdWd)`N{{!dbzy|r~L7WRXE(+hok)? zICpv-9^Jp;Z(|6zTDYASll~rR8{<&r1Hl{Jt1F&vZcFZG-@b$w-){N{-m9n9VDH6C z*nGJOUw-=%zWU|`OfDMlZ0QLT`xmA&f17|a=%>Bmmfivof<>M4=VQAw%g&kLt{`+l z^gWOEt8nfXi7OY+`CBx?4v1jzh1I69<1R7#GX-{KiwljRF>M}nc}x6m%ne4ib`++T^fwKvbiX10?hjJ|$Ybq4*^uVimO z-}V6=w-W~dr1b{6xrp(myZUk3-vBX5Zj6YOOGxOiqnr-;hwCE~=Sf5kqG37jgR(jY zfE!B>?p%lOzwsLUmtTJbfB5W6zmrrjLjV7OIsGaKqn z@g8<kl8l;pzQ9{V)F){Nm@oh2x`Df4%Oh^;7;95l2^N_-BtF!GHVHKlXUd``c4G{SUG^F$AL= z=D+@mS~vGi3_N?W?dR?=j=DK3dJp2&mTs)L-Cl0X|Js?;K2WRU)!pq)*m1X{+`a~{ z-M;1>#NU7X$n%s@m}cyRK`93S z;gO;e>Cu3)v&AH~sWb*MroQW5;#w)e<11*P zOxa7hCl8XR>{rDRrpCh-KUB%0-^rZf?>pad+m|=DVgK8gaJak#`%6omL9sN2{ey$J zy%xJF`NJP1x0Lti_AA?NEBZU%eGQKO`@e#p{rorZpMU;a*g80bt*^fI*WY!wgIT|I z(M{AxPU+}t_W|78{nKU+lVj@*xlMPb)hVII!t1Z!hI`j9!C(BzJMi5%U-Re5!xqO$ zvi*{3K{^hc!nMD*2Zx*6aQw{+*!7X~E!dr1|F^fh7qmg8y}%pRi(8_u3E5L|oqy29E79+;eA`|NMtATbgzX zsViRWl4F*oBz52#o z_{pC!v-~QdN;13@^fy0;Eurr;(;dBQ3o7*to*@g=n ztMK}3H@zWXl548s6^JpaSl6a`SXu6sJLfof?ap<-)8M10U&GOv4IiBF$OZ0tz6qax z`~?2~=f8z_-g@9y@7-#hTS0Wn-{#9LuTaBm2@aoc!twK$aJ0SWgEsoRzM+e(?{

d`8!%)4{jq23To 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 literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..2ef59dd00608e6eaf78ef95b43e15d25bfbabf97 GIT binary patch literal 927 zcmV;Q17Q4#P)OBai9=_ zFNWUb;`ljAkm=gBkFUP>bEwlxvu?$z?&j8Vg39a_fmtDN*O-a}f1K>gZ445cmgdU* z2b?^91fgH$+n+yTab=d~`VLyX$JpcXp;Xz6x17;4^o@N<&K84&FbH-!JE*hRnVK6X zqigJMJIphWp5WZz=L`*>rss`I#euh1Cy69ikg_mcAW0IF^P{==)Y12tTfNQu-@Qt( z|0Y7yiEXSg862gpY2V)fsQ|dNK8tLW+0*zqt&aUXvaC*JIx@)LTbSK)2V%z{`*D*-z69_~!_$#CfxK z4AoS^;av{SzkU>#tty8S1-V;V{-;tpNoD9dZ~2^z-iYFEu;+YDrPr~T42AOIE#Fnf z6G@g&esPUb*+|F3O~rwgN*TU(Z@!<>1LA_8`!CkXN*aapxe)*W002ovPDHLkV1kXB B${GLw literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..fc235f0c6e33cb69297b5d63ab004c87aa299962 GIT binary patch literal 2735 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 literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..8ce555aa000413764b3b23e066e2373cb17795c7 GIT binary patch literal 5206 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 literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..212a0cc8f5ce62d8294df94739664cf091b663e7 GIT binary patch literal 4931 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 TXuWL>00000NkvXXu0mjf)5a>? literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..fc235f0c6e33cb69297b5d63ab004c87aa299962 GIT binary patch literal 2735 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 literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..3390fe921d2bf8c4685e12f9633f8ffd9e303aa5 GIT binary patch literal 8319 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 JPDHLkV1lM}&R75d literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..1b1d3b355a785320a590d1bfe84b442f2f031a38 GIT binary patch literal 16722 zcmV)AK*Ya^P)j$g-^7yRPs5o7pxqyL*zsdH(Y}(%tROPWjb$epA*J2n1xDi9||~hH>qT z)WH<2ebss)F?rb}iDd|dMrx~7y>?lKy!Z{$*C@|*#wxd}_)K=rs$kiCiTiCOx~4V_ zgSl3Dg-?mi|6l9(>8CTm;9>M=IGvUwX<3Aaq%%xSu^nt3GRzzm+bjv+|39ZQz~Eu@ zVmKX@Y`!A`!G>b46hTtfwpeWJCHtjmeieyh64hbAY(6lhsGeVI9PCYo!B(BR<^ zIZ~oTkD#rz99jL8ES?>rev{U!Uu4NB0~UP}J0ao$QyUoVmzm;*W4XSjv9f0HH}xY{ z{_vY7$&QFx&n0U@>C9)CB?2#A**0Xk|ZWCn_IJu$7NG zon!$(PP-^cHWeW2%vJ8mvSB_Ym0}um$*n<8~r8CQ7LSB2i^Q zcmyIaKS|vZd);hPOwVvarEyqO>C**kL*$9f;Nkd&(@c_Gt85!PHmR;r8>Otj2c4n?qR znrw-#4b!h{uGZeuW#%w7<-cp9hhmu3Wvj?k#0ZwGGgQml+A)BYpB{qW7s8y0g~-oN zg45-I%PCQ_91bZ=K2+U`f4#pKxtR%AII9?0>2Z45k|v6($)zlpC8IeK3;}>$dqqZA z0kUDx@f+Zm{~m)+#}?awDDIwYT-3ElyCxgj_Sv@M_;PPO7EUigaegY*T9?ZKr$d56 zb;e;?MpVFoQ6(8jPl?6HTaMwkf8U5@iz+eqtOCO#gB{LjEZ6E}+G#h0lZEegOo{~l zB3&Ow`Y$m!LWd&&2+Mx5442tUn&!&-vx8nA#+GJa;mlGv9S*K+EvsHkG!UQQMpkAV zDl0N^;8-)>S$hb+U;yV%FEO=AuUYWV3U4J&4vntMkR^$8SUt;a@iM@(K#4KK$elUm6V5crn3^jVyds>TTjC}y0{0<;P{KC;g-c| zDI2g5f)`-?t@d3~P;`4o2V$b5je=Cu$ucw;3{!1$Iwhk>9fd1t>X-rqf&t~etb1Z+ zEG;1@%Q(;yKx1!EFNfTUc1b8rjY3|6iwkf_EHcz(S7xxj1uY`+;xu^WG79~sf%|VT zfD?T%hd^b+*Ro&=+89;u z$-$JdIh>CtS}REogu*1hlQO}GVktD*QSYOgo15rDev%7rr-Y8d5USez*xTfznq8a{ zr4}pcf}tlyyG>(hHczB<`XI}~A=(vUdGB-va5lio@^L1jqz_Nn;g*E%?jA(BoRpBK zntQP3i(@!)q8%AYu^5q-fbtP3h>LY2+U7sa6w`5F$x=kp>E^5B(Ec4GU!M&zUE!Lrr+ZFV$RCIb^YX|_#q;CeYMBgn% zFgaGwS#?N_O6jgvC7!Hm!IxE^W8?qds_S`NOU1N+KHS5C%&qeseg7kfRq>~?NUQe5U08W z$c%I0tlVfsIW()F4Z^-52C{i>Xa*1E>~Wg&l*1`cW*~tiAs7zgqn#`8&X+Hsqpy+P zJ9qptdjCjmJ05#;2U25W5bO3}&>uj**9SKp`#Pw$l0=vu429v2a;alt2W1es9^-bR zv&W0rXeD&{-rB?P`9m1=1`r$VqCWZE%`ag2yz7x2pMk1YKaRBfX`R84jHcco;-e&_ zL_1XjBO@u=i8+NaaHz-)J;7j@kM>}mj}=f_YG#|@#+B*0baJT!xcQ7H%YO}IZo zd1BN`%|N3@DyBKsbO3+(=pod$9ihlmDFrAoiqUj`KeN#8;o4aYF+-@gr&490uw&|r$p1_Zm{T8D# z-8k6n!>Yr*iqD2jHIqEk?F}OomQk7MhKm^=lkZbT#K0Q}qpsVJFvB-)uP`1`QVhG6hUSF6B z0r_>X#gCCGF2uMTNRDxW48wbTA&|)}mlG{Lv*M90Hn^bPv4e93rP?pKHEaH_czz1~4wap6Qg5VBzySgyr#p4 z<83}_VMZiIVM=~16#$LkR(@G#qO-$A+`~iB!_{DR%qKpe^M`4jx|D|eZ0l{tqwn2~ z+SV!xYQRm!@s5dTd23G{s_OTme8f0hd(jL$`SvDsdcDX?OhBK{PjeF{ht=spk2?U5 z-$jwN7Rn6CG6sAB%$;0Bf3Mkm814Q2a5{k{vnsUOFc5U0rpt%s-XMIzuwqbDBn@?Z zOX}L&7{=Kp@t9Q@hm9xt@KIF{y+++yFM#vP z6OrU`+C~iEwLHzoLMbwlNChl$Vp|K~3c((&d9trR`sTTJK!WamIsQ^i8M2(o;&yMwC zdO;j69Gytfb!?P`%=johAh*AH5G83Is<95$GVQJ(z=5U#tgr6HMWd4qn%R-u#>H8s z|NfGlA&_2u*GW9G@-}o2w5h%a43iD5*UYi%sOh!MM?SDw zn^BOQK#4~*nK028B;mvWHP23l!SS(fTzBbIs^ND(_9hy-yK(uvarn-8lW8^WUJ|j2 z!q`lYGTaf+E78sYe;9rKFuVa7{*a>G?E^uKOmU+yIZDkhBMe}7!yp=a0$4sS1rD_w zVj(7th^5aobo+6#%ZI`gkL6&5yA&xB$fVO|a70D60$34za&6~vJox7I81VIQjMJav z;?6QVJE&xlBs}-Y!}!CsuOr42g*ShDBNqSQFF4fDj;w?@q{g_>>GfkUNYJi>{?TC* zB)z|6iVa{_qAq+IF)) z2l2wEf4~h3@1+{~#>3yoYqGe|DwrpF0ME_@t_fevkJ!;Bh&q-y}@x=nJ4#4nPY=g=8|5-UGz))%1lYV#n20U2M_^&vGj3Wu5oQIz6AW`c`Gwv@JkA%euy?=(!ac7NCm zwk*ryq6z(RV_XG(^>{n*%aymFd$5gfJTrN2>wlTaC5-^9cm4~5{(jti-cKR2PXmhtSX+=DJS4&`<_N%5F@~i${BZfco2` ztzML6L?a{KMJ-ojub)1W66;hgmBmz|Xd#CRgbXW^6`?E>_=+G=lFAVB@!Yyc(9(N~ zf&9iCuUX+0)NHCpD0kg~m8h!Ujh|iqCuAq*n;+hL*;CO8-KK}9$e1Q;(GLmUn za@W3U#3jb!uRpm0x!I|z`BQ|icd!dPsy5*8shv1dw-5F0CowqKLzx`qibh&u77DUT zF}`FL=8ju}QJI;v9S55Su=7+O{6V%464K&bm{*#FB##m)OOJJ-A~Qzmh8oKz$a;T6 zKip0SO4Fm6ehnkCr4htxRpxLaS-MrUL(-zZWoBNug4Lf}j(v4CIZ;xOiQ5Y@8A~E#@!auhlT;TV%h*=65v#ZV z8($q=M*|W143Z3xSwj+V3Cn)8bk)+oud3GK@2h@=F@@7{!OW{LfBaHZWX9r9(*X81 z^wV)NHoH1F z2HR=g={j}|Ea~kt{7Cm;JD%I{h^n!&VQMY>wTQV`;n5+CpxH7-wLN(LlV9OKU;G6N z#$JrMl}k~aHA-QoW-Zhip`(olu<^i$*s$*dwD&YnbLwm06p?Ym~p7~OB_16 z4R5Ury2ghAk?6y0lmmSgVt^D%$I1-M{r2@R8y;ZH|@kTR6~CXp~AAY{fXCB}u~^k|C8ZMWBagL#4> zHF(H-R!LT3$`T`i+p5>%P~#3pQTZ7ZZoifq=%9X4QUrk`uBO8hQS0WvHK zhP-I%JZXS8_0uUye3;u}l*Z9OHikc(^-(htA*pXYiq}7T3a@_rI0~~XF>TZWoK>*^ zV@FPa+hq)YxZ$2vBxgAE9|q&kOsLWdO*6A2N;<$sy6TTH%lcw<{WnG0BK>dC=BVk8miYm#4K=X1L3_LAy@tO%rB==rpDSr_lopCQ_5Kke5-6pIrU8ZXslK$QN;gn^hV{_Th&rnSKo^VT`{daQ|@A zE*xvwXUv+IR6uxE8w)Z%R$_Jv3WabqHqpPMwY#xs z+Hy=TpUq9C=mHukiS!>r`A$DnIUFI=tf0C|@!wxQtxo&Ff~Y3tWDp_iqebd5!x2eF zS@uMnH{siuS~?%`o8qePQ0UVOkOwve9lZKm7NvF@? zVLE&bK<}yBhNI1U4eiz1saxwvj!)*8ujSF0AgNI;GNEwax1K~&Oe!-sD`V&JFVN6Y z4Q-PHdrvD%=cA1=VHuPVlY+-?U4f+7BpvCJTT#v^ESvj%oN76WPj|e5kQ~y%m&tFd zCD%3|#OGhF!on$+7+xy^pye*>^M*q+!ji!ec{ofHqU}=n?9kiPAIXBhwc@Er2F^4x z?wf54(Nw3?i6=j}A9pSJHBu9@)WRg(ciH3c1_n`8zX#RLhj6O(IBHvup|Rs6dIvh- zBr86M7Rq5AtZ^WX?X(0eopvP>HRh@w+gO1qVfyHWbT!D5Y2QW9U>BZw^L}*qvC%rV zKN8;i;w79rAJWMM+2a}3t)1gsxR178*&7gmP zv3i0m394;9juTCXP}g<>)lG*`RksV_P{0r<815u9DGyUC7N}j;Jf>{yO$IQ1^a9MR zJX;q$-$f7N_pjbTEsV?Q6x_Uo!!XStWYkISpV5t-B>-TMWw+&3|*eu!==n zGE1wI!AOQQ2-2?AD*+phu4eZ42u_w|qQnaidx85Y03o)0+Rt4l)?-)o282Q(idskI zPDW+^6pSyNfxPr0J!6bJ4i&lM>7T~0LYOOdI34KfZ^PEA zkLVv^c-e?axM9(Ks2DLp>?JMK<#c0A;aM14cowc$a0mYJ(eLs8)_>BVNY6kgQsUE1 zM3I@^>!%8+-xFdJF}`#vy*7LNBGk23cT-jKmY1I%3w<^l7+20mJBjK%I2|; zWU&^)4w{PvGK44VtB$npRc~pHlTCoef`8VnXS7zF7nV8ez>jgXY{b_dZ`_0XU%m=Y z-S`gj(@XT)jW%)+4A(6D0ak5&3H{zK-2B8ss`c7Tk6|`seI2*aAep&sm?m#vKoxim zWy|OtXvN8o4|E2~ z%yACdhZZ7}H31MLTGdb@c>AlrR2aAOG{lng(_k2HTEfAIviMUF8ijs}WRVH}irk5~aLUz~Q@PkS2F`wO?`^^( zuivgV*$A7OgCQzFRMDfXf+3-)dIeS%>*%Td%q~Qw&7AhK2fc89Il}5n*~$l7WwtWS zViry)l%_QGoMKKZVR0CjFwICq0v-N8J^p)i&9WF1ygY&u5ePQb*XIha|o z2uX1%(6&pMXPp^cmVkA8R^ho1e~m$Z57$W}nkM=f5ioF_QiooQSr@XMYB^^3L``g% zgWHVxa+uIF%M*?@>W|Y4bl7P%FI1F>Exq+zCUNPFrr9E+wI4b=O$eN&Ioa7CM65dj zBQr*!Fryr0IpZ)o_bg;4Wph>$G8p7*b_C>qM{g^hdhci0b7G^KN8$xi6h>JVo6Ur! z1?yu;Oyzz<+evk$2-9A6`4dF$3A~5^gon>yt3oUaq(2>!!e9mn@T(-P&8krdYXX%@ zLg65yU2!N#D?@&2338GPkeyP9;*3$qNX#*jO*?vlHO2ZpK~jhb{CM|UcxCP56i}Ho zMqltJ2pg}cCVyesU12{t`Rwd%fiK{N#}&;99!FXexMB%z@m)>!3>KNk7HEf}nPO`z7MUPOj!nmy+$k8FHx1+RXCNzS1h3`#v-%a?*n(lCY;jMkpX^-x z&5FC|*jZB<-Lr^{)OJ`{GThqIu&_fsG)BuDmV;>OXh31+NTweG3-m8Ge$wWa%k~jb zOIb*6_mFxm5cX5lNoG+D#`0%O@zzTr3>m8yrj}!R$wJI5U4*=pkvcjxqmSKiq49Cj1tT0mG1SaBt=K+fn4UDgu{As7n56Hu z@6*?1vlfj^T6FfbpdfQ3M{3Qr@ca;b;}CmyU8Vv=hblT52#mEb7rovtfuOwl8^y_V zF4A~SJ>jv96J$Y`qhq&$}F91A!c!m?g-TjWAj-A+sY4vR~=Z`5j& zm93(=X~i@^Qj#+Uh1sJpA}t>&3F%CXS$V#vzZ1tBtFZgXCT!Zb26Zh*)E$r#dI!3> ze(1ugGnTo=0Wve0wGC{bp-N$ED)-P3_MM|7^GOEumiIKk5|$}br;R)ZQwry!EOVTZ zUDb9r+G7-@UKc}^0z*vIGC4%Uap{cfakOzSy#9W50iIzl*j1lo$&mynMx+(dIp(t5 zaVX0jkC9mwh;heSSO~^6t0^%q6_ZM5(7)?0_#f0X9>u5I-^QA4uc{$T#(#6j4t#Gk z)mCHL;vQq=w(^{dZP3?Ff(Fy+GD%`YM%5ZwMp4>mET4P}CKt@%NzVk*dj|ukY3oOO zpAWs>Ak~rtj|+)0F65=gAuBmXKT5&eZi(}~oJm(TfMv$Sku&k!9iQT}J?~;)%@#Cu z)?(1tPgj1V#AhHYIUl*HMJUgkfKhqmu$E}OUc*B0PM7R++Ih4IM;kiP+B1l*ejjab zT0#tRl43ETI1`gAMxZFW3^!hMFD{;Q4I0~P`94^zTG7YC%uWH8nN~cp4pm0*;|%4@ z1?mFk;PQ~Kc_}6M-qasrT<$c1C=%LwefVg96SmfLV)v;|)O7S4I8IV#Y>3tqa~=+c z5g+A5c~(5e=cizHX$H=&%t1UkIo1?21jh!u#>aUQaq+b8(LZk9nj2cFmn{0;)9=IT zFRStCo|D*gs2=s5{U8T)P?FF^^E|jC{YZ*(;{3CU@%@G4FlT%rGE=hk`+9zv(N>M= ztep}}m1g_c=!bQv(u&cnYZj*qb%9bcMLAu1eAwfR#j=SvVey#n&~?h1*&>^tKiuDl zm3tbo{%9M*lB|dQ98QNC;xi^Gh^$h7<&xl)W$bC}!JdY0yu9@U9AOz#3R19eOb(V! z8;P8hSPSC}PP6)CwhZn{Ab%SyuS4)mY-FOzudDFG0|?_`|54efuw~C6_S3RkpTlmTWPIediBeK zgOgb0kU#?uE=LqD7<)A?8g~ui-0`{u*0lHIrEPV1Yfn9T{mMBTaA*=}F%_uCqGch{ zDd~b0CL6ghp~4*ceW{TQE@jM=4`m{FR6*%f5Dtcz(N&uCccw80K7k>##i4mM!j zfqJale+s)#w$Ugx6%B_tJTsi3BukvNk^~b#EXInRCve^2dd!aeAdboN4Ou;o*;tVD+IE&VO<{_f5oR;=Yn$ zqPQoyA-3{kPkk5m)OF&|>#E=eFtVorr{3L%TO4(>4_XG*$o4L5ielRu$II!EqG`f z=!ocsbq8skhwRWVNw3s@zq7X)zxwzndb|PS%niLoLThDu{t3!6;!&QJfV|{rBt=Kj z;|+R!K{R#`;$TBJ_SJQwKNyCS6%VxxNekA?GW@cP&#Id7+2JOH-q}TW+Lvc1p(HZ_ z`KfV8i*v){R7x522hrT?Lv3p>sv0^_)z}4kM!ecyZIQg4#z#sf;T1q}Zbl++h=p?+ zELU9)12fq&IHE#Za+Uu{+PAZ=2akSs9J}h(puK7LfB_~Zj!4G*l2lA9O2wpt6vTR* z!WI&K2tknb@unVZIMR$y4>V!Zu@(d^D6elEr`u8-R48_x>cGz04!QuA^#~LY=_}!d z@E0IwA=`%soR#)OHLW^0vME#GIS zJAl#osa(X4CA{tewSQLrmgS9rk6c3ziC8Z#%u_~69o`_LJ%W9bfeS}x;eQsEP!oBi zsTV7D)T7_8jCskP+}xySjLe8fL0YW7(V9;@Ig?_eaL0M0@%{N_cz$gao?CxZVYEg} z)lo~(w#6_k;a+iL#E}$w$ri!_M(|k92`-1*F~LJ7T|^`ql?54Gsgh8P#yn0|O&ZJ( z@3iD%nQqT)VPGv1n%$Aj=?PpN8?``j^e3L4x)X)uWBL;PO^RD zn8ce;5eORh7(vjtVwlOs84eB9F-z2l5=<=06i8}lqs$DmG;y(o%%Y*;P_%HvYz73? zRW(53!YxLlCgvu<<8;7B_5f)#lYpdX7oONyts`loo(^bBTr^2l$|Wz-7zoMusHzzs zS2g3_xA)+j@=Pq7l!tT2WYgVwc8P4!yy=_@Ts5Z@E4SC+t?f0~a=ewYf-{pAVNcWI z0vlK*;(wM@Jk~HBE@BLqLSf7qpDz?D@yf}ygpFRAk3rNGUMXQ)&9chDq0tb5Pq5lqGyz)q;-?HzSc)f>|SR z^VwzgT202}9w)AvQ$qg^p6bM3K0Sn0J5ORD6lQuP2&p!ItuaFrK!!H-ls%6NV{?+R z;Y6!omJKa4X+KjXDRNd>4zg0>jLX^@aW#WJG-AMK!wf)apa`9~88(@4F z?7N`drgsdfA4^B2;r+wPys)^{Q=2WaqOlgl0CS!)Ls^=-{Xsmj?kHZ~asoeGSb-~N z6(h=J6?rmJWqu0&bloic{>o`sy|Wf8wjRg&!;J_zlmQUSA1nPO_Z%S^(~2{2)!YjD zqOG6&doyq4w7%)%cTLg6f|UTya`nJ9y)H>M+zCeu1Jo&RoYCyR#AvLr%5hj{bco6; znLqhAe;MiQ@-!rST*VNMvjI%wqc2I}pI;swV8JX~Vvg?KsxljgCGq27Ez!eq~Cm8-?i! zsLV^j%+gHE8JmZsxM)1|>Lxt%@qRi&FkH8|mr6ACy!esb!prB6=A8x`D%FNuI!c!e z%f`$X8^I=VTxEAwrKpNljJCVR+#^TmUOz1tPi&}Rx+rnzRe+&f(V{w8y`G`$&Qp5bU-S;Zdxw> zv8|3COQdCxSY|OBzI2HM_#u|WcSKv%#`{LaL6Y!4%hml-T>q`GkT8PL zS6mund2Vq4lk9yknAY0ewklJ&Kn@7IZfY)``r;&?hg-ZZSyaX^iQ$Q7#;@Y~tN>)Z zysZYWZasku$LHc(lMAq5>L6TVY~os^Vru z|0f$uW_hPXe_TCpG%_i;lKF;My(>zVI7V~VHB$~_DLK3I&>ZL(hBE87ET3iYx+=ie zPtU^(+v{j7S!t&o6cVq~Lx1%vBnXn^cA_#n5m|}Rh;}>Zk^1BfDmCqWINsU^ABl1? zC6S%F@9eF|+q>(K>~UgVc@`!Wq@pr686~8gq!=2)B<8oZdk{w(y0Evl16z(XVcnqy zS{^a4lEa}>Q09m&o7&A7Cqs~#*&(+B_}|N?>$$nbfwD230!fTai5r^D)YFL$%?FG5 zte87o|0^*MG52EK4%|E=ACIlC;U8v})9QnNtqf)^bwO!5&KsS9sYR(M&WJaTI$|*e z-5nUl{!?Apc(euUtD3Q`x|L2PO0sf5O1CeB_xIN0{k?U{v4Me*;mOEvdIA7r`qlkI zCPJ!hWcNH9J0M^lE^&KzWZZb}IOL?oGqljUA#tBtJix>c6XPv?1O0Cqsx(~^1ywS> z%iu>bmKraEg00tfHlV)8#|aL*m~- z7L7t<=Ky~9!G654ZL??6#jSl zbOy?4w|RG^fhb{8$%4+z3#l!PqFIBjOfOjJvA%5j!NPY*A^xKmRN(5@_8I_5H&8r5 zCgvpKv2Tr~ntHgY7i$lr1Nq8QIBGumgjpfExpjsjSXw%E)3o2zCcB_Ud9E2Ax}xz@_p_i2gE)`prw zSD4?{lMTZ~%vP>c=5HImSi+2=Wc+Ae5gsSQCgE8^xHy*+l^Jn}k8$DR=eE-MV}~Re z(oW21C=4fEycdT_`AJw%o{96uWYaS!?HV#FHwpi|c@DN8YsHfv9mLwICLYJg#_AA; zJ6gjzwP#OE63_4AnJNj3`hlxwmE(I0$6652STe+dCj+ia;3|Q@bQYg7acl)-*=#!; zGO?ywyr$J5m>2T>w%G;v>Qpz@S9fqiNoX<<2w{6ek8)-PIjGEG_#!Q%!=ae1>dpaF zcl6_}-SsqJuQ5A75db%F&FP)cR_HFpLh5Yv&4oh!h3alEneMLgUcu9<7XF+ zL0W=GY?0ou(Rs;u>DKw!dZY!9zPlTnPqeBi8M>zGLlCtiG7SHy>m7N;U1AJwUO0xX z(>g&`Q*y{u$(a`8#*05XpPo1`Gwt9B#cUc^Yu2Y6)b_{{Pe*%yX%IhhsFIs8Vy_9n z3Wgxc!kjDEyz1wO^w!!5chk`*XshXqkk^6G{KV{&oLyb7FE znuQzx^a;K=-lF?MnKhr`Fdn~dK5|myh1w0xWe=axtOFZX*0S^3&7Rj`VJdYK9Vu~3 zK81<|G;Q3|G)!>9O!LUSStC>M{I|#9uD1`;@v$Mk!ihUv;XGi`ku4|sGQ2YI>=(!I z;?`aUBJ&F$B>$uiTf`U^<-a42VzSyLMlyxGJu4g{ji|5xJf{%I?33^3#(!@O=W4P5209K zBN_T*h1(>%oejfHcF$Ot3ZqgGtDamxT7Js$S<>u zMjf-Z4F>SQ`+M=*)%&pgtU`Qu#z;&YnXa5+DM?H-S#v`U{cguUKR=9DHXlPkTRf;u zB53VUt%ggM@c6a!aMd}LTnDsaGY`|Wdn}-XafS%vOSMgK{DTqbu6{i;FQ>FhHcV#G zzW$Cra!OoL3Rd4T4L@5|h0l+*8CuRPHcpF7w*3+l0N@w1Yu}0KetBCpUfg_) zBHU3Ul2Mcqhx9lPqN1F1Em+T>A17LR={#|3zgKx%DTF#0q)F~g7?Fy{zdsifOEP#N z)cmY&XvKMA#snKCiN9}Q4Z+BP75$|%abC3LEf#>;<<=0g#%vkLPK?GsuAG3seNlto zuRYF9Y;(sO3T9g9m(B<_$iVq)^$S@#L{@)pu5QI9ih`MF5_2??Q(I!B8CUj1S+cb> zEaQeb75MG7v-Pn%7%0RJjb!GItT9{go1DOkO3RF#^bU&zV9L@N9C0~p1kD~&={YTy z%ncVABmuX~Ey9G{B;5P%0n~MS&FX5mD$=AC%w{u*G2g83gQf*T%@T2|3>0ROSGRkj z@aT7^iM1XFO$rZyUfhBB};Y;s#hBSZldm`na&JF^r& zzkCXk!|oG<-)8I(FjS# zMH7o~*OIXqTbL#gNZ*%XB9e#~WUy9)CoPAHnPRx{uGmDD5zKwF54O@&^AG-#y_Mt} zDO{6fes}=RQyTuNFf|qrUsQ>oFRj1}n@-~SP1V$Qnghk6S!E%P%;d1%j$(`4AtTY_ z!cFrkaKpmUNKcGm?(lRGvAh*&_?ED(Hdcn{rP^6bZivX7*`aqwdBDY1&SDp?b=qXM z1)mHx6qbx|wv(k5k0y;$Sc3CDOS?~&|J*)*ByOHtgwGDP;GNy|_~dXi0)j>wS}F;I zl#TZ3YRd*7v@<}od0!b*3)67f)FOO)R*4!UF{s6l>DkZ=Ojp@Rm7asyk7Pb6Q)1=I zcus%>3NIzLV7)xa_KXe-TW>q*%%C&F;@KcJL21}%4HH^7gvC^Va>eD4uy|}X{p$_0bshsNSU{8{edGoE!?P`noZsJX(5X?7>*SfQ=OOsuzG9=MwvwnQoFQ<&;Penju)dCU4 zh!V+49^=Af@i~h`_9C4-IuqxP&eBn4pEro(ExkC=+DDm94s#)YWG6@0nT3d=`%lf)i#ChLt| zbj^b}aH7G~Eb_L_F{SyqVc9uYwsa0>-nZ>KgkS%81$G=d0f)<}FftTEZbl03zG^A1 zUA|Cn)SU0!hnl7iwO|?ldh{+VoHL0tqknvUCI0x*D!u-Du3U`!ZoAwPPk?bZI-^y0 zCUZH=3}UBeWyyS|hsYAn1u#v}EQX6|iFJx#o;f&g*9r^p4YoTf^w(bRYFRPaLEvy0 zg-Ob}Edd$WeY6&L{`N(D{KalO`|#~>z=3x^+JZZN^AGxVPlwY9IjF3%kep65ws+$v zPrrsehimZo&u^sdr^gFAw6Um!H$U2pbLULr+WYC2J#VR)L9xo4>UH_gsGo zW#WHUZNLM6euJJN^6xd9@x$vbLP1`ZdPyc^2Ai zX0BL}Mifb?)F_A$>&gq~p|Y$%?U;ddYMMLn;l{6U$>JIG-s%lIX}^=iT zErpzwY3%`~^PG}dEtnP+(lS&jdT=X{W#d;(&zsQzv*wgBS+Y=oeujo7I69O-XHOs6 zI(z7Q7^+V;V*U05dQ~O)%5i|Ve)~K;`p@_2V_)n(f<-q!LbY$!#8H?xr4maQOh$TY zl3uPuZ3a1T^skvZ@1m-e?`LprZORL~>Ik9p3ejGktPXS)#$PviT$<#GB%o-Ba8fmzJKj4Kq zR*BiS#g350v(&8kAnR%^X$v_bE18;xTy$soUCbuli=@HKb%~WsVbdB1^q2}LQ<;j0 z$u7^!#EXyK1-HwkmwmxG({TQ|)3AM46+T%16*lfTh=XLPqU?wt%XEiqZx1rVH) zuu(k`fNEqDl}t@vf6?7=lATak`f62+*j<>ak9O$91Fk%OHnLKcWB)vE7e<%l;oRAi zC`#r9Qt_k2wSrbotWRc=DAGQQO=>nd^2qFn7urG&Z;CnxcU{vAdGhP*GD;eNsly zK!IK+Gi|pTBN9*4WPj4#FdpWTK2EYhh!*8>OG9P;qA|=A#*SL}&O$KA_bC&~>6w${ z44rLE+48Kj!CuBY*EsN1w^GNut} zf}!4BXj_2YGec>;)$s&u9TxtFd@at+gx?>a;>gg+2MNnVCNPF=Qm79IbREyPO~OrgAW zd!jJ5cm#dlV0Ky((+&+-X>P-aJsYz~Lci3;8gACg#90F;%b}~yz0*HNX()dju`F>; zi!n`XTZQ4-GY{Ru+?BcKS>|d)B!4r{8jTqQ7?Jl7cJ?9=3?eN#0d98`|1Lloc>0&O z^Zg@eIxh>Kz5HwLT7GU8*1qzHi9YO31jPsm<6ssmaI`esk=@c)uCG>Q2uaLp?}P0M ziv*s8F>QC>0DOKwVmxjn#4B$mIab|(jI<=`)4GUesnYFnN6|IOQBEfYy#d6>M^naR z5X3A4-M#&2Y-&eoaV}ggCwzebT3Wl1pPNCM*WELK)Z_#j0O{)Pr{8<}2Iw4ca$+2P zrlY$LDefrB+}{2{IxR?^jrO<^?TJEn?*Nh#V&U}#aPm|W3UV_M6YZh>^ZNW~>*z&Z zb{g$+TW2>iQj+Ms+PW6R#YQ77H4y`YUUYW%)4pV-CDV42@+h&L4w{d&siC<;7tGx3 zbbE#hf^5rGjXgqM!v|Y1n)_*os%<2TF!P>Y{uRw_-RK+e;`Xb~$J#A>XbX;>Xutz^ zd>em#eGRtkIf|L%N-?Ia00{}PD9X*m%Fnjrz8f#aFP{82-u~Oq(A?UAOK<%RrcW$~ z*XzgMesd>YetRu`@zm?s`OY74>|`S@yZiT8`SiV%saN0o6n4G$1TMVcmlR0V)V1P+ z7aqh99(oq9JbfQ+{!4Ftiu9Buyz<@# z)h|2*x7&q{TleFNd!NF(mw!dw#nS5^Lj9JP@WWsK9o46r(Kj%NU*2;CYU|qY_cuR5 zdU66v3bJYNW$mWjG;Ermm4<7-y$H=M9hiT`PcUslIo*Bu%2W4J=39bOD`r}_Cp$mP znP?G>OKgF|G|Sxc4kxavVWM`$}mMfNE*3?QmB{$)MyYTum_faC< z`@0u$vc46*K`#w5ESfWkT7yBa5?3zF%f^gxCA3W|R)2vXU3&pmum1`aBXcpSq7WL(PbW{@}Vx@X(*$Ky7_9^_^NP9oiJ31e|JY!{?iJ(`zd}+>FbY&cZEM zEXAAeuSaWp7jkpbX*_f0xDvea!A9z@Nu6Zk;>$fpu;uMP;=qxU_~p~D;o^nUk(r)^ z@}gV}^baZv0~`)&L9{hQG+v$LJ|C>X*O7tP1ai4`>4_4huBvf?~+cJ*LneiqFZ3Myx35&Dc9 zHIkaT@fC%5;muD`QJP1~>g?{r_4hx6vuBP+T1q0`TC)Xre0MP}zhDk-x&ImJPwBC| zQ!0^^6p!OIO|)TQe*iza;Zj6LD`@$^u~WGGjz^K25R37nN75xYawtS69xh!p9h-L^ zqCt*}Zu&KyYi@3Cha6UqWKiGTG-X^VwGxMq)gdb*6;sER;#;>qg3hi!{PgzaXm0Jo zy6p#P8%Usq06OLD>mZ){&qr9b_DeeKI)17N_x|B!go7dc{dad$%wRILr)fPSGk7RR zjtKVNA`g+;KmPOvBqqe^c~(C601j5wATuKc*%>KH5kl|1tHEgwO;mk$SJZU>*fLt6zMG zf+wv_?>_ecog^SfDI~^fZh12Q4-+pr!s*ataAaX=@8v6PNF>m@fxX7vX*=f{Yk1Z>t^?&bM z=THJACB$Lj+{wD?k>48aOlty$;>EBTJXC>*z*L(uGSZW|wh-cst1RX^keidCKa)(P zSk0W1nWnFuB_F9NiBx+@B8%s=lupK@LR3pziIJCM9FUcXPDPGT)Ouq9`9Amh5y5Lq! zCKMeZ!?4G_R^w%@EjF85 zN(@`Hmu_&oEF>_i871StY*c1!8-t;G8lyx7VLtUZfy}nie%}a7A5)0i4j41P?IT$h zr@Ra+F~=Ko*Tjz7jH5a7vEcz10qFia7G+v#vqcBB_KUG#Zg+!e7XrgNt{#bbTrv}u z4MB=DVm}}{g#dCU*``eKJHu7prz$s0f)}Y=yM7Fj&dh{=go-%7D&(`Z4t7!uL4)lWZg;GK zRb%WpW@GxKq4EqT2{T6DC|R{(NRV{~lVtiL+_V5dmhM~}6WaN62nC3FA^1P5=fyGv z;W36XR-1yXI&abEGr`*c#gN6a tpX`D+*=k&4^IRkvoC!KwrT@$O{{SVa30CD1%U}Qi002ovPDHLkV1oHC{5t>u literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-50x50@1x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-50x50@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..230f46715e4a24ccaf6dc14c92c267a1fbb1787c GIT binary patch literal 3864 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 ajQfc(|_G!1*)@oH= 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 literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@1x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..60bb865c3ccdb4171be15a7d06ba806e13e2fd09 GIT binary patch literal 4761 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 U{&-g$1^@s607*qoM6N<$f`TFPJOBUy literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..1b1d3b355a785320a590d1bfe84b442f2f031a38 GIT binary patch literal 16722 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 literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..e8c3df0f4ef0d1d382cfe2389e739f5e50f3ee71 GIT binary patch literal 34494 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 P00000NkvXXu0mjf1tzVy literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..94921659f3d772aac6ba3b10dadb7f2152b8c810 GIT binary patch literal 29920 zcmV(?K-a&CP)@0o<0MYv#J%?-*|H_e>gBfi{xj#y%sX@DUdc)Jd!GM!EZ=+2nflIe-Zt;dNu<+h zj{ogT)WF7ZZ(JE)VH?I%B&7&*?lb#2XCz6!e7<&!qkdDilj&^9GT!u_ba}HDD)SW% zo64Se`9++?=4V<7IUP+M*`ps{_tgGE-hf=J>KJWO)YG*S0XtxSPxg2OJMLJlq*$O#t=Wmxhzf z<8AbK$0Q%q84p0&SksM zSM#O!>Z2?Q9LoMwpYvfj-@G_mW6wtix8Qu22mCfT&su+bnb*th@GBt@BR{;lY6wU@ zdX9qW;~Z)Pm1uWGWS+KgpL#$G_Dv@5gpLwKc@eZ5!I9sLal>`NB5h_K)nly7B8`Vr zo&{64>K&g!^#9zVE>L$K@#1Zwb5sAM{vSPduKDPI!Xh56*fSbq41}I1k$gsV2#O`0 zgPI3a#fqvM%tDDX!BoX8sw+o|blqeH`scw_q2zhN=w5}v`Eo?>%e}@TL_R%CF@StP z^rmqJykaV4O3z?!f_mZE!6mCYwW1B95xcV$@fcqOzh${*{#` z{S1in5RZ&7p@1eXhg4v-2%=O1s>gZ<%-r&0mjILAcXd`zdC_}5U~s?3BX7Ro(*mbz zTtQB)t-u0l#(j;|@$t+6-yjgN%UBfYoZH3*v%d>KbHb7okj3Y~U>lDo#-D- zVPai58tcnZT~UHWJdV*+1|6LP*t+K=28L6ZSX+jy}!afFf{5LqtMF-3NsvGJPg<5|Cr-cLjx=gT`Dy}?)iE8?&Ps9WfF zgu~ET%Wc3?{Y>5^z$L&C|E+uR2p(LwA1w`4Sh27ft&?jJPcXz|F~s9BJ(jr~mw!Ve zY3$g43J*QKALXSi%myg;438^)@>@K1mM9Y| zJT_z99-~fQdtrfdED((sU_O0goQ)~?@ND!QBKB+tH61Nt@DNNW&O--t-;r+I^~eq& z$ME_!^U%~#iQ=LJ;z@=?JOE}aX28T^0MBqFVlm8~QjbaX71(~@6z+O#7hc@aj%zQS zi|H*jQSTK2rZT=PwO8EH^T}Daqw0yJrcg2NDyY%Rd;3*U;l@#>^E(lF@W0WJd{@DG zd@biu02VCE3`Ab0;Tk5+gn0ag16aTH7?#hUf;G#hqr9w0!6bwaEyS=|#sg@H`7kn) zK|@0sN=g&B>#-f!ysrcAx_${RUN+72g$E9D9vV^sb0@kd?8yVF1G_q;Z!BH5n$JKf z=#v}g^(tW~0hg8kZv)d<0|hIK8kF4Oik38%7b{QzqbV#y$P~mveKho7BArTO`TQna zvUED)@i-ERxHFr?=^;#OAf7vIvy}fWu!)+YB^O|tc%&?b0_xMngQPQwqX;|mBT9m(g@w@ zmjlqT8XW;YE0`}bsq={;icTmiomjs4R0E$5&CTy@Hj9D50hE@M%EDr?n5`0oX@hFG z&dNEhj0d8b8(>vcl;90lEyN9%&Bq`9x*0Q?Yth(H85(J@zyYQ#bW<>m_sHfrhO^=k zM`~>^s>abO;`OL zl#ZSOiKqkQYa#XGEUtthfX&HXvD$F9DEC!ZKxt;apg|v4t>>WTZupB6aTpBZ;Ls2< z*$j$`l2%?GTF5LMY{k*U*K|57{hY}}TpCGcT!Ol6)5f$#q|Ih?(&ASJ4$~FFtTTnT zww_Akcwfe7yFB2WaR&5{=CJ)_3T=H^ET3G2M9la`l{243*5_?ii@RQeLQI7&9N66& zKX?kHO+++f!adwV3i)Htz6Bm@bG#NhchhpiC8_$L6*FgAldLTKt#m!{`%HH?63K*V zgPyp7i|BBB5B427jgGECoa!1t|4%Y}(a%p4{F-?vD@j^iP^(T{a$k;^;hBa$;p7_1a2!69 zMvOrM^8Dr!%is|rU5NAj-D&LUOrd`?i@jYb%xfqL7z@#bxfOdrn37hRTwQ*ALzH*i zFisVZ=842}=Hpzil55}#PmD3?^Q=zBQB_flsZG_GGi3xX>^zR|-T4AO z`mUAIKMJLRhQJqjGubSX$%Mv>QTqaperhnQ$9LJJVhK{tjk&E&-~L zbWVMd%r~6LA(Mj?|D{Q0Aj%wFS5Wezo7_6doyCG3NIWVLHAG=>8zT5Ks*LaEKf)v*OkS!sMl&c;dZv#rHMDT z==MDrcb?#Sb@#202Xrq>EJSq_%Nao3Cn4ap>SVc5Oc>j#o)dUv%U!4`Yrr+j-wb8K zq|>8#a!WgY@!&2LCzGfwDVBqo&E+I0M^YJSyab$5Ig7%&6CCkeOma{b>cGl?YMoS# zT?e})IF&dTH3}o@>pxp3%m3W_FV`-m(bNcj|HMym)0%goqPRkql_OnM*0;dyw$4$^ zsY{|f8F0a(I73}Y4Bf+7bPi-R*>Xe&KRJ-WiM}*is*^Zxa*6B<3ymwvQMLax)O*1T z@RwJU@$ml#hblyjC>Lz`^7&Lt@*t{*yNHO8;g&EMKe( zbo6DA&Ty=3Db^A}0F;MFsw#;~ZdzUxLng;@YCyQ6(iqKgwDqPjkjmkb>1AY9idz#% z)759`(`!5;d&~hhWktYQuuRJw9!CXvpO4-0yvg$FHPD6;b%Cf@%Z{F7`1QK~#@Pm~LCp=JlJ8NtaJHle4^C2sz!;TOY)&ulXn%E8^JJ5tQ+K+X&8YDUtaO zpUEJd75Ze%G7QB%o&ze1V^}?{G-z{3tLox7X4WV1Qu~Mm=b51lwswqQ$)u97dKQhA z9MqFO0?vYEdRbZF%q;TbEF7sGuIVF~wPqLIR7;5c!#%k3ssF-bTkq1M zm{uSFstbxS$r%KvOl30?fTNi-66qkgBbkcJusFm>lLRnx31pHvB(rfD?7=L~$tB1H zsAAT3ABOf*eK^)}Cg8+HOh+dP&NVbTAlr4a=MWx#>26%T>_*I=Sd8r_N6|T$!JqdG z$T|cU6=hDVNf1?s;mmMWa>*4frD2~{>}TMnigAV&&7~O0Vn<&y_@Ar&a=4h#b4uh&wLNr>?njAQR$qV zM74JhbcJOFqOzf~1g8c^k;-HxmlU6gSVlU_lkv3tjOn=$fG(5EA(KrYnaGCEDQ6AS z2nT&pEbK<0W~|?IG~~KjG}TsG!7AwM!ANUeh%)JD&>nBL?2!INUT(qDh z8NO;_%0At^BC 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%0A6O5gz13+9r=EH)6=)902wnk#y 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 Q1PU{Fy85}Sb4q9e0B4a5jsO4v literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png b/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..9da19eacad3b03bb08bbddbbf4ac48dd78b3d838 GIT binary patch literal 68 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx0wlM}@Gt=>Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png b/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..9da19eacad3b03bb08bbddbbf4ac48dd78b3d838 GIT binary patch literal 68 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx0wlM}@Gt=>Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md b/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md new file mode 100644 index 0000000..89c2725 --- /dev/null +++ b/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md @@ -0,0 +1,5 @@ +# Launch Screen Assets + +You can customize the launch screen with your own desired assets by replacing the image files in this directory. + +You can also do it by opening your Flutter project's Xcode project with `open ios/Runner.xcworkspace`, selecting `Runner/Assets.xcassets` in the Project Navigator and dropping in the desired images. \ No newline at end of file diff --git a/ios/Runner/Base.lproj/LaunchScreen.storyboard b/ios/Runner/Base.lproj/LaunchScreen.storyboard new file mode 100644 index 0000000..f2e259c --- /dev/null +++ b/ios/Runner/Base.lproj/LaunchScreen.storyboard @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ios/Runner/Base.lproj/Main.storyboard b/ios/Runner/Base.lproj/Main.storyboard new file mode 100644 index 0000000..f3c2851 --- /dev/null +++ b/ios/Runner/Base.lproj/Main.storyboard @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ios/Runner/Info.plist b/ios/Runner/Info.plist new file mode 100644 index 0000000..ce00bbd --- /dev/null +++ b/ios/Runner/Info.plist @@ -0,0 +1,49 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleDisplayName + Environment Monitoring App + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + environment_monitoring_app + CFBundlePackageType + APPL + CFBundleShortVersionString + $(FLUTTER_BUILD_NAME) + CFBundleSignature + ???? + CFBundleVersion + $(FLUTTER_BUILD_NUMBER) + LSRequiresIPhoneOS + + UILaunchStoryboardName + LaunchScreen + UIMainStoryboardFile + Main + UISupportedInterfaceOrientations + + UIInterfaceOrientationPortrait + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + UISupportedInterfaceOrientations~ipad + + UIInterfaceOrientationPortrait + UIInterfaceOrientationPortraitUpsideDown + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + CADisableMinimumFrameDurationOnPhone + + UIApplicationSupportsIndirectInputEvents + + + diff --git a/ios/Runner/Runner-Bridging-Header.h b/ios/Runner/Runner-Bridging-Header.h new file mode 100644 index 0000000..308a2a5 --- /dev/null +++ b/ios/Runner/Runner-Bridging-Header.h @@ -0,0 +1 @@ +#import "GeneratedPluginRegistrant.h" diff --git a/ios/RunnerTests/RunnerTests.swift b/ios/RunnerTests/RunnerTests.swift new file mode 100644 index 0000000..86a7c3b --- /dev/null +++ b/ios/RunnerTests/RunnerTests.swift @@ -0,0 +1,12 @@ +import Flutter +import UIKit +import XCTest + +class RunnerTests: XCTestCase { + + func testExample() { + // If you add code to the Runner application, consider adding tests here. + // See https://developer.apple.com/documentation/xctest for more information about using XCTest. + } + +} diff --git a/lib/auth_provider.dart b/lib/auth_provider.dart new file mode 100644 index 0000000..3978735 --- /dev/null +++ b/lib/auth_provider.dart @@ -0,0 +1,223 @@ +// lib/auth_provider.dart + +import 'package:flutter/material.dart'; +import 'package:shared_preferences/shared_preferences.dart'; +import 'package:connectivity_plus/connectivity_plus.dart'; +import 'dart:convert'; + +import 'package:environment_monitoring_app/services/api_service.dart'; + +/// A comprehensive provider to manage user authentication, session state, +/// and cached master data for offline use. +class AuthProvider with ChangeNotifier { + final ApiService _apiService = ApiService(); + final DatabaseHelper _dbHelper = DatabaseHelper(); + + // --- Session & Profile State --- + String? _jwtToken; + String? _userEmail; + Map? _profileData; + bool get isLoggedIn => _jwtToken != null; + String? get userEmail => _userEmail; + Map? get profileData => _profileData; + + // --- App State --- + bool _isLoading = true; + bool _isFirstLogin = true; + DateTime? _lastSyncTimestamp; + bool get isLoading => _isLoading; + bool get isFirstLogin => _isFirstLogin; + DateTime? get lastSyncTimestamp => _lastSyncTimestamp; + + // --- Cached Master Data --- + List>? _allUsers; + List>? _tarballStations; + List>? _manualStations; + List>? _tarballClassifications; + List>? _riverManualStations; + List>? _riverTriennialStations; + List>? _departments; + List>? _companies; + List>? _positions; + + // --- Getters for UI access --- + List>? get allUsers => _allUsers; + List>? get tarballStations => _tarballStations; + List>? get manualStations => _manualStations; + List>? get tarballClassifications => _tarballClassifications; + List>? get riverManualStations => _riverManualStations; + List>? get riverTriennialStations => _riverTriennialStations; + List>? get departments => _departments; + List>? get companies => _companies; + List>? get positions => _positions; + + // --- SharedPreferences Keys (made public for BaseApiService) --- + static const String tokenKey = 'jwt_token'; + static const String userEmailKey = 'user_email'; + static const String profileDataKey = 'user_profile_data'; + static const String lastSyncTimestampKey = 'last_sync_timestamp'; + static const String isFirstLoginKey = 'is_first_login'; + + AuthProvider() { + debugPrint('AuthProvider: Initializing...'); + _loadSessionAndSyncData(); + } + + /// Loads the user session from storage and then triggers a data sync. + Future _loadSessionAndSyncData() async { + _isLoading = true; + notifyListeners(); + + final prefs = await SharedPreferences.getInstance(); + _jwtToken = prefs.getString(tokenKey); + _userEmail = prefs.getString(userEmailKey); + _isFirstLogin = prefs.getBool(isFirstLoginKey) ?? true; + final lastSyncMillis = prefs.getInt(lastSyncTimestampKey); + if (lastSyncMillis != null) { + _lastSyncTimestamp = DateTime.fromMillisecondsSinceEpoch(lastSyncMillis); + } + + // Always load from local DB first for instant startup + await _loadDataFromCache(); + + if (_jwtToken != null) { + debugPrint('AuthProvider: Session loaded. Triggering online sync.'); + // Don't await here to allow the UI to build instantly with cached data + syncAllData(); + } else { + debugPrint('AuthProvider: No active session. App is in offline mode.'); + } + + _isLoading = false; + notifyListeners(); + } + + /// The main function to sync all app data. It checks for an internet connection + /// and fetches from the server if available, otherwise it relies on the local cache. + Future syncAllData({bool forceRefresh = false}) async { + final connectivityResult = await Connectivity().checkConnectivity(); + if (connectivityResult != ConnectivityResult.none) { + debugPrint("AuthProvider: Device is ONLINE. Fetching fresh data from server."); + await _fetchDataFromServer(); + } else { + debugPrint("AuthProvider: Device is OFFLINE. Data is already loaded from cache."); + } + notifyListeners(); + } + + /// A dedicated method to refresh only the profile. + Future refreshProfile() async { + final result = await _apiService.refreshProfile(); + if (result['success']) { + // Update the profile data in the provider state + _profileData = result['data']; + // Persist the updated profile data in SharedPreferences + final prefs = await SharedPreferences.getInstance(); + await prefs.setString(profileDataKey, jsonEncode(_profileData)); + notifyListeners(); + } + } + + /// Fetches all master data from the server and caches it locally. + Future _fetchDataFromServer() async { + final result = await _apiService.syncAllData(); + if (result['success']) { + final data = result['data']; + _profileData = data['profile']; + _allUsers = data['allUsers'] != null ? List>.from(data['allUsers']) : null; + _tarballStations = data['tarballStations'] != null ? List>.from(data['tarballStations']) : null; + _manualStations = data['manualStations'] != null ? List>.from(data['manualStations']) : null; + _tarballClassifications = data['tarballClassifications'] != null ? List>.from(data['tarballClassifications']) : null; + _riverManualStations = data['riverManualStations'] != null ? List>.from(data['riverManualStations']) : null; + _riverTriennialStations = data['riverTriennialStations'] != null ? List>.from(data['riverTriennialStations']) : null; + _departments = data['departments'] != null ? List>.from(data['departments']) : null; + _companies = data['companies'] != null ? List>.from(data['companies']) : null; + _positions = data['positions'] != null ? List>.from(data['positions']) : null; + await setLastSyncTimestamp(DateTime.now()); + } + } + + /// Loads all master data from the local cache using DatabaseHelper. + Future _loadDataFromCache() async { + _profileData = await _dbHelper.loadProfile(); + _allUsers = await _dbHelper.loadUsers(); + _tarballStations = await _dbHelper.loadTarballStations(); + _manualStations = await _dbHelper.loadManualStations(); + _tarballClassifications = await _dbHelper.loadTarballClassifications(); + _riverManualStations = await _dbHelper.loadRiverManualStations(); + _riverTriennialStations = await _dbHelper.loadRiverTriennialStations(); + _departments = await _dbHelper.loadDepartments(); + _companies = await _dbHelper.loadCompanies(); + _positions = await _dbHelper.loadPositions(); + debugPrint("AuthProvider: All master data loaded from local DB cache."); + } + + // --- Methods for UI interaction --- + + /// Handles the login process, saving session data and triggering a full data sync. + Future login(String token, Map profile) async { + _jwtToken = token; + _userEmail = profile['email']; + _profileData = profile; + + final prefs = await SharedPreferences.getInstance(); + await prefs.setString(tokenKey, token); + await prefs.setString(userEmailKey, _userEmail!); + await prefs.setString(profileDataKey, jsonEncode(profile)); + await _dbHelper.saveProfile(profile); + + debugPrint('AuthProvider: Login successful. Session and profile persisted.'); + await syncAllData(forceRefresh: true); + } + + Future setProfileData(Map data) async { + _profileData = data; + final prefs = await SharedPreferences.getInstance(); + await prefs.setString(profileDataKey, jsonEncode(data)); + await _dbHelper.saveProfile(data); // Also save to local DB + notifyListeners(); + } + + Future setLastSyncTimestamp(DateTime timestamp) async { + _lastSyncTimestamp = timestamp; + final prefs = await SharedPreferences.getInstance(); + await prefs.setInt(lastSyncTimestampKey, timestamp.millisecondsSinceEpoch); + notifyListeners(); + } + + Future setIsFirstLogin(bool value) async { + _isFirstLogin = value; + final prefs = await SharedPreferences.getInstance(); + await prefs.setBool(isFirstLoginKey, value); + notifyListeners(); + } + + Future logout() async { + debugPrint('AuthProvider: Initiating logout...'); + _jwtToken = null; + _userEmail = null; + _profileData = null; + _lastSyncTimestamp = null; + _isFirstLogin = true; + _allUsers = null; + _tarballStations = null; + _manualStations = null; + _tarballClassifications = null; + _riverManualStations = null; + _riverTriennialStations = null; + _departments = null; + _companies = null; + _positions = null; + + final prefs = await SharedPreferences.getInstance(); + await prefs.clear(); + await prefs.setBool(isFirstLoginKey, true); + + debugPrint('AuthProvider: All session and cached data cleared.'); + notifyListeners(); + } + + Future> resetPassword(String email) { + return _apiService.post('auth/forgot-password', {'email': email}); + } +} diff --git a/lib/bluetooth/bluetooth_manager.dart b/lib/bluetooth/bluetooth_manager.dart new file mode 100644 index 0000000..d0c3ec8 --- /dev/null +++ b/lib/bluetooth/bluetooth_manager.dart @@ -0,0 +1,284 @@ +import 'dart:async'; +import 'dart:typed_data'; + +import 'package:flutter/foundation.dart'; +import 'package:flutter_bluetooth_serial/flutter_bluetooth_serial.dart'; + +//import 'utils/converter.dart'; +import '../serial/utils/converter.dart'; +import 'utils/crc_calculator.dart'; +import 'utils/parameter_helper.dart'; + +enum BluetoothConnectionState { disconnected, connecting, connected } + +class BluetoothManager { + Timer? _dataRequestTimer; + + final FlutterBluetoothSerial _bluetooth = FlutterBluetoothSerial.instance; + BluetoothConnection? _connection; + + // --- State Notifiers --- + final ValueNotifier connectionState = + ValueNotifier(BluetoothConnectionState.disconnected); + // MODIFIED: Changed to ValueNotifier for consistency and reactivity. + final ValueNotifier connectedDeviceName = ValueNotifier(null); + // ADDED: Notifier to hold the parsed Sonde ID. + final ValueNotifier sondeId = ValueNotifier(null); + + final StreamController> _dataStreamController = + StreamController>.broadcast(); + Stream> get dataStream => _dataStreamController.stream; + + // --- Internal State --- + String? connectedDeviceAddress; + int _runningCounter = 0; + int _communicationLevel = 0; + String? _parentAddress; + final List _parameterList = []; + + Future> getPairedDevices() async { + try { + return await _bluetooth.getBondedDevices(); + } catch (e) { + print("Error getting paired devices: $e"); + return []; + } + } + + Future connect(BluetoothDevice device) async { + if (connectionState.value == BluetoothConnectionState.connected) return; + try { + connectionState.value = BluetoothConnectionState.connecting; + _connection = await BluetoothConnection.toAddress(device.address); + + // MODIFIED: Set the .value of the notifier. + connectedDeviceName.value = device.name; + connectedDeviceAddress = device.address; + + connectionState.value = BluetoothConnectionState.connected; + _connection!.input!.listen(_onDataReceived).onDone(disconnect); + } catch (e) { + print("Error connecting: $e"); + disconnect(); + } + } + + void disconnect() { + if (connectionState.value != BluetoothConnectionState.disconnected) { + stopAutoReading(); // Ensure timer is stopped on disconnect + _connection?.dispose(); + _connection = null; + + // MODIFIED: Reset the .value of the notifiers. + connectedDeviceName.value = null; + // ADDED: Reset Sonde ID on disconnect. + sondeId.value = null; + + connectedDeviceAddress = null; + connectionState.value = BluetoothConnectionState.disconnected; + } + } + + /// Starts a periodic timer that requests data automatically. + void startAutoReading({Duration interval = const Duration(seconds: 5)}) { + // Cancel any existing timer to prevent duplicates. + stopAutoReading(); + + // Request the first reading immediately without waiting for the timer. + if (connectionState.value == BluetoothConnectionState.connected) { + startLiveReading(); + } + + // Start a new timer that calls startLiveReading periodically. + _dataRequestTimer = Timer.periodic(interval, (Timer t) { + if (connectionState.value == BluetoothConnectionState.connected) { + startLiveReading(); + } else { + // If we get disconnected for any reason, stop the timer. + stopAutoReading(); + } + }); + } + + /// Stops the automatic data refresh timer. + void stopAutoReading() { + _dataRequestTimer?.cancel(); + _dataRequestTimer = null; + } + + void startLiveReading() { + if (connectionState.value != BluetoothConnectionState.connected) return; + _communicationLevel = 0; + _parameterList.clear(); + _parentAddress = null; + _sendCommand(0); + } + + void _onDataReceived(Uint8List data) { + if (data.isEmpty) return; + String responseHex = Converter.byteArrayToHexString(data).toUpperCase(); + print("Received (Lvl: $_communicationLevel): $responseHex"); + switch (_communicationLevel) { + case 0: + _handleResponseLevel0(responseHex); + break; + case 1: + _handleResponseLevel1(responseHex); + break; + case 2: + _handleResponseLevel2(responseHex); + break; + } + } + + void _handleResponseLevel0(String responseHex) { + try { + if (responseHex.length < 94) { + print("Level 0 response is too short."); + return; + } + + // ADDED: Parse Sonde ID (Serial Number) from the response. + // This uses the same logic as your SerialManager. + String serialHex = responseHex.substring(68, 86); + String serialAscii = Converter.hexToAscii(serialHex); + sondeId.value = serialAscii; + print("Successfully Parsed Sonde ID: ${sondeId.value}"); + + // Your existing logic to parse the Parent Address. + final int dataBlockLength = + int.parse(responseHex.substring(30, 34), radix: 16); + if (dataBlockLength == 38) { + const int dataBlockStart = 34; + const int parentAddressOffset = 52; + final int addressStart = dataBlockStart + parentAddressOffset; + + _parentAddress = responseHex.substring(addressStart, addressStart + 8); + + print("Successfully Parsed Parent Address: $_parentAddress"); + + if (_parentAddress != "00000000") { + _communicationLevel = 1; + + // Give the device a moment before we send the next command. + Future.delayed(const Duration(milliseconds: 500)).then((_) { + _sendCommand(1); // Move to next step + }); + } + } + } catch (e) { + print("Error parsing Level 0 response: $e"); + disconnect(); + } + } + + void _handleResponseLevel1(String responseHex) { + try { + if (responseHex.length < 38) return; + final int dataBlockLength = + int.parse(responseHex.substring(30, 34), radix: 16); + final String parametersDataBlock = + responseHex.substring(34, 34 + (dataBlockLength * 2)); + _parameterList.clear(); + for (int i = 0; i <= parametersDataBlock.length - 6; i += 6) { + String parameterCode = parametersDataBlock.substring(i + 2, i + 6); + _parameterList.add(ParameterHelper.getDescription(parameterCode)); + } + print("Parsed Parameters: $_parameterList"); + _communicationLevel = 2; + + // **** UPDATED CODE **** + // Give the device a moment before requesting the final data. + Future.delayed(const Duration(milliseconds: 500)).then((_) { + _sendCommand(2); // Move to final step + }); + } catch (e) { + print("Error parsing Level 1 response: $e"); + disconnect(); + } + } + + void _handleResponseLevel2(String responseHex) { + try { + if (responseHex.length < 38) return; + final int dataBlockLength = + int.parse(responseHex.substring(30, 34), radix: 16); + final String valuesDataBlock = + responseHex.substring(34, 34 + (dataBlockLength * 2)); + final List parameterValues = []; + for (int i = 0; i <= valuesDataBlock.length - 8; i += 8) { + String valueHex = valuesDataBlock.substring(i, i + 8); + parameterValues.add(Converter.hexToFloat(valueHex)); + } + + if (_parameterList.length == parameterValues.length) { + Map finalReadings = {}; + for (int i = 0; i < _parameterList.length; i++) { + finalReadings[_parameterList[i]] = parameterValues[i]; + } + print("Final Parsed Readings: $finalReadings"); + _dataStreamController.add(finalReadings); + } + // Reset for the next reading sequence + _communicationLevel = 0; + } catch (e) { + print("Error parsing Level 2 response: $e"); + disconnect(); + } + } + + void _sendCommand(int level) { + if (_connection == null || !_connection!.isConnected) { + print("Cannot send command, not connected."); + return; + } + + String commandHex; + if (level == 0) { + commandHex = _getCommand0(); + } else if (level == 1) { + commandHex = _getCommand1(); + } else { + commandHex = _getCommand2(); + } + + Uint8List commandBytes = Converter.hexStringToByteArray(commandHex); + String crcHexString = computeCrc16Ccitt(commandBytes); + String finalHexPacket = commandHex + crcHexString; + Uint8List packetToSend = Converter.hexStringToByteArray(finalHexPacket); + + try { + _connection?.output.add(packetToSend); + _connection?.output.allSent.then((_) { + print("Sent (Lvl: $level): $finalHexPacket"); + }); + } catch (e) { + print("Error sending data: $e"); + disconnect(); + } + } + + String _getCommand0() { + String seqNo = (_runningCounter++ & 255).toRadixString(16).padLeft(2, '0'); + return '7E02${seqNo}0000000002000000200000010000'; + } + + String _getCommand1() { + String seqNo = (_runningCounter++ & 255).toRadixString(16).padLeft(2, '0'); + return '7E02$seqNo${_parentAddress}02000000200000180000'; + } + + String _getCommand2() { + String seqNo = (_runningCounter++ & 255).toRadixString(16).padLeft(2, '0'); + return '7E02$seqNo${_parentAddress}02000000200000190000'; + } + + void dispose() { + disconnect(); + _dataStreamController.close(); + connectionState.dispose(); + // ADDED: Dispose of the new notifiers to prevent memory leaks. + connectedDeviceName.dispose(); + sondeId.dispose(); + } +} \ No newline at end of file diff --git a/lib/bluetooth/utils/converter.dart b/lib/bluetooth/utils/converter.dart new file mode 100644 index 0000000..b953889 --- /dev/null +++ b/lib/bluetooth/utils/converter.dart @@ -0,0 +1,38 @@ +import 'dart:typed_data'; +import 'dart:convert'; + +// ADD THIS FUNCTION +/// Converts a string of hexadecimal characters to its ASCII equivalent. +String hexToAscii(String hex) { + hex = hex.replaceAll(" ", ""); + List bytes = []; + for (int i = 0; i < hex.length; i += 2) { + try { + bytes.add(int.parse(hex.substring(i, i + 2), radix: 16)); + } catch (e) { + // Ignore errors from non-hex characters if any + } + } + return ascii.decode(bytes, allowInvalid: true); +} + + +Uint8List hexStringToByteArray(String hex) { + hex = hex.replaceAll(" ", "").toUpperCase(); + if (hex.length % 2 != 0) hex = '0' + hex; + return Uint8List.fromList( + List.generate(hex.length ~/ 2, (i) => int.parse(hex.substring(i * 2, i * 2 + 2), radix: 16)) + ); +} + +String byteArrayToHexString(Uint8List bytes) { + return bytes.map((byte) => byte.toRadixString(16).padLeft(2, '0')).join(''); +} + +double hexToFloat(String hexString) { + if (hexString.length != 8) throw ArgumentError("Hex string must be 8 characters for a 32-bit float."); + final int intValue = int.parse(hexString, radix: 16); + final ByteData byteData = ByteData(4); + byteData.setUint32(0, intValue, Endian.big); + return byteData.getFloat32(0, Endian.big); +} \ No newline at end of file diff --git a/lib/bluetooth/utils/crc_calculator.dart b/lib/bluetooth/utils/crc_calculator.dart new file mode 100644 index 0000000..20d415e --- /dev/null +++ b/lib/bluetooth/utils/crc_calculator.dart @@ -0,0 +1,19 @@ +import 'dart:typed_data'; + +String computeCrc16Ccitt(Uint8List bytes) { + int crc = 0xFFFF; + int polynomial = 0x1021; + + for (int b in bytes) { + for (int i = 0; i < 8; i++) { + bool bit = ((b >> (7 - i) & 1) == 1); + bool c15 = ((crc >> 15 & 1) == 1); + crc <<= 1; + if (c15 ^ bit) { + crc ^= polynomial; + } + } + } + crc &= 0xffff; + return crc.toRadixString(16).padLeft(4, '0').toUpperCase(); +} \ No newline at end of file diff --git a/lib/bluetooth/utils/parameter_helper.dart b/lib/bluetooth/utils/parameter_helper.dart new file mode 100644 index 0000000..d906aaf --- /dev/null +++ b/lib/bluetooth/utils/parameter_helper.dart @@ -0,0 +1,185 @@ +/// A utility class that translates YSI instrument hex codes into human-readable descriptions. +/// This replaces the `ParameterHelper.java` class using a more efficient Map data structure. +class ParameterHelper { + /// A private, static, and constant map for maximum performance. + /// The map is created only once when the app starts. + static const Map _parameterMap = { + '000100010001': 'Combo Probe for PH and ORP, original HW', + '000100010002': 'PH only, Original HW', + '000100010003': 'ammonium', + '000100010004': 'Potasium', + '000100010005': 'Nitrate', + '000100010006': 'Chloride', + '000100010007': 'Combo Probe for PH and ORP, hybrid HW for PH drift', + '000100010008': 'PH only, hybrid HW for PH drift', + '000100010009': 'Combo Probe for PH and ORP, VREF offset HW for PH drift', + '00010001000A': 'PH only, VREF offset HW for PH drift', + '00010001000B': 'Combo Probe for PH and ORP, Floating Reference is at 1.5V', + '00010001000C': 'PH only, Floating Reference is at 1.5V', + '000100020001': 'Probe for ODO', + '000100030001': 'Combo Probe for Conductivity and Temperature', + '000100030002': 'Combo Probe for Wet Cal Conductivity and Temperature', + '000100030003': 'Combo Probe for High accuracy Conductivity and Temperature', + '000100030004': 'Combo Probe for Conductivity and Temperature, Wiped', + '00010003FFFF': 'Mfg tester for Conductivity for CT probe', + '000100040001': 'Probe for Turbidity', + '000100050001': 'EXO1 - 4 port Sonde', + '000100050002': 'EXO2 - 6 port Sonde', + '000100050003': 'EXO3 - 8 port Sonde', + '000100060001': 'Combo of Chlorophyll and BGA-PC', + '000100060002': 'Combo of Chlorophyll and BGA-PE', + '000100070001': 'depth probe, Non-Vented, Standard 0-250m', + '000100070002': 'depth probe, Non-Vented, Medium 0-100m', + '000100070003': 'depth probe, Non-Vented, Shallow 0-10m', + '000100070004': 'depth probe, Vented, 0-10m', + '000100080001': 'Wiper probe', + '000100090001': 'Signal Output Adapter - DCP', + '0001000A0001': 'Original Handheld (used primarily during manufacturing Testing)', + '0001000A0002': 'New Handheld (ProDSS Style) with GPS', + '0001000A0003': 'New Handheld (ProDSS Style) w/out GPS', + '0001000B0001': 'fDOM', + '0001000C0001': 'metal', + '0001000E0001': 'EXO Test Board (reserved for R&D)', + '0001000E0002': 'High Accuracy CT Test board', + '0001000E0003': 'Phloptode', + '0001000F0001': 'Deep UV A Channel T Channel wastewater sensor', + '0001000F0002': 'Deep UV NOx Nitrate+Nitrite sensor', + '000100100001': 'Signal Output Adapter - DCP Gen 2', + '000100100002': 'Signal Output Adapter - DCP Gen 2 - Modbus', + '000100110001': 'Used on both EXO and DSS platforms.', + '000200010001': 'Variable Flourometer Sensor', + '000300010001': 'Combo ODO/Conductivity/Temperature', + '0000': 'Common Message', + '0001': 'Sonde', + '0002': 'PH', + '0003': 'PH: PH units', + '0004': 'PH: mV', + '0005': 'ORP', + '0006': 'ORP: mV', + '0007': 'ORP: mV UnAdjusted', + '0008': 'Optical Dissolved Oxygen', + '0009': 'Optical Dissolved Oxygen: Compensated % Saturation', + '000A': 'Optical Dissolved Oxygen: Compensated mg/L', + '000B': 'Internal uP Temp', + '000C': 'Internal uP Temp: Degrees Celcius', + '000D': 'External Temp', + '000E': 'External Temp: Degrees Celcius', + '000F': 'Barometer', + '0010': 'Barometer: mmHg', + '0011': 'Conductivity', + '0012': 'Conductivity: us/cm', + '0013': 'Conductivity: Salinity', + '0014': 'Turbidity', + '0015': 'Turbidity: FNU', + '0016': 'Turbidity: TSS', + '0017': 'Turbidity: RAW', + '0018': 'Conductivity: Specific Conductivity', + '0019': 'Chlorophyll', + '001A': 'Chlorophyll: ug/L', + '001B': 'BGA-PE', + '001C': 'BGA-PE: cells/mL - replaced with ug/L (0x003B)', + '001D': 'BGA-PC', + '001E': 'BGA-PC: cells/mL - replaced with ug/L (0x003A)', + '001F': 'Chlorophyll: RFU', + '0020': 'BGA-PE: RFU', + '0021': 'BGA-PC: RFU', + '0022': 'Pressure:', + '0023': 'Pressure: psi a', + '0024': 'Pressure: depth', + '0025': 'Etime', + '0026': 'Wiper:', + '0027': 'Wiper: Position Volts', + '0028': 'Sonde: Date and Time', + '0029': 'Sonde: Battery Voltage', + '002A': 'Sonde: External Voltage', + '002B': 'Sonde: Internal Pressure Voltage', + '002C': 'fDOM:', + '002D': 'fDOM: RAW', + '002E': 'fDOM: RFU', + '002F': 'Chlorophyll: RAW', + '0030': 'BGA-PE: RAW', + '0031': 'BGA-PC: RAW', + '0032': 'Wiper: Current(mA)', + '0033': 'Wiper: Profile Time(s)', + '0034': 'Pressure: RAW', + '0035': 'ODO: RAW %Sat', + '0036': 'ODO: RAW mg/L', + '0037': 'fDOM: QSU', + '0038': 'Wiper: Peak Current (mA)', + '0039': 'Wiper: Parking Retries', + '003A': 'BGA-PC: ug/L', + '003B': 'BGA-PE: ug/L', + '003C': 'GPS Latitude', + '003D': 'GPS Longitude', + '003E': 'Conductivity: RAW us/cm', + '003F': 'Pressure: psi g', + '0040': 'Reference Temp', + '0041': 'ODO: % EU', + '0042': 'Ammonium', + '0043': 'Ammonium (NH4+) mV', + '0044': 'Ammonium (NH4+) mg/L', + '0048': 'Nitrate', + '0049': 'Nitrate (NO-3) mV', + '004A': 'Nitrate (NO-3) mg/L', + '004B': 'Chloride', + '004C': 'Chloride (Cl-) mV', + '004D': 'Chloride (Cl-) mg/L', + '004E': 'Ammonia (NH3)', + '004F': 'ODO: % Local', + '0050': 'Conductivity: nLF us/cm', + '0051': 'Sonde: Sensor Power mW', + '0052': 'Sonde: RTC Battery Voltage', + '0053': 'Variable Flourescent (VF) meter', + '0054': 'VF: Units TBD', + '0055': 'Conductivity:TDS mg/L', + '0056': 'Pressure: vert pos', + '0057': 'GPS Date', + '0058': 'GPS Time', + '0059': 'GPS Altitude', + '005A': 'GPS Speed Over Ground (SOG)', + '005B': 'GPS Course Over Ground (COG)', + '005C': 'Barometer Temperature', + '005D': 'Conductivity Resistance (ohms)', + '005E': 'ODO ppm', + '005F': 'Turbidity NTU', + '0060': 'Temprorary Calibration Value', + '0061': 'Sigma', + '0062': 'Sigma-T', + '0063': 'Deep UV Wastewater: Channel A', + '0064': 'Deep UV Wastewater: Channel A Raw', + '0065': 'Deep UV Wastewater: Channel A RFU', + '0066': 'Deep UV Wastewater: Channel A Concentration', + '0067': 'Deep UV Wastewater: Channel T', + '0068': 'Deep UV Wastewater: Channel T Raw', + '0069': 'Deep UV Wastewater: Channel T RFU', + '006A': 'Deep UV Wastewater: Channel T Concentration', + '006B': 'Deep UV Wastewater: Ratio', + '006C': 'Deep UV NOx Ch238', + '006D': 'Deep UV NOx Ch238 Raw', + '006E': 'Deep UV NOx Ch238Ref', + '006F': 'Deep UV NOx Ch238Ref Raw', + '0070': 'Deep UV NOx Ch238 Absorbance', + '0071': 'Deep UV NOx Ch238 Absorbance Turb Corrected', + '0072': 'Deep UV NOx Ch275', + '0073': 'Deep UV NOx Ch275 Raw', + '0074': 'Deep UV NOx Ch275Ref', + '0075': 'Deep UV NOx Ch275Ref Raw', + '0076': 'Deep UV NOx Ch275 Absorbance', + '0077': 'Deep UV NOx Ch275 Absorbance Turb Corrected', + '0078': 'Deep UV NOx', + '0079': 'Deep UV NOx RAW', + '007A': 'Deep UV NOx mg/L', + '007B': 'fDOM ppb', + '9900': 'SOA/DCP', + 'FF00': 'Handheld', + 'FF01': 'Hipster', + 'FF11': 'Conductivity Manufacturing Tester', + }; + + /// Takes a hex code string and returns its human-readable description. + /// If the code is not found, it returns 'UNKNOWN'. + static String getDescription(String hexCode) { + // The '??' operator provides a default value if the key is not in the map. + return _parameterMap[hexCode.toUpperCase()] ?? 'UNKNOWN'; + } +} \ No newline at end of file diff --git a/lib/bluetooth/widgets/bluetooth_device_list_dialog.dart b/lib/bluetooth/widgets/bluetooth_device_list_dialog.dart new file mode 100644 index 0000000..af0ab33 --- /dev/null +++ b/lib/bluetooth/widgets/bluetooth_device_list_dialog.dart @@ -0,0 +1,44 @@ +import 'package:flutter/material.dart'; +import 'package:flutter_bluetooth_serial/flutter_bluetooth_serial.dart'; + +/// A dialog that displays a list of paired Bluetooth devices for the user to select. +Future showBluetoothDeviceListDialog({ + required BuildContext context, + required List devices, +}) { + return showDialog( + context: context, + builder: (BuildContext context) { + return AlertDialog( + title: const Text('Select a Paired Device'), + content: SizedBox( + width: double.maxFinite, + child: ListView.builder( + itemCount: devices.length, + shrinkWrap: true, + itemBuilder: (BuildContext context, int index) { + final device = devices[index]; + return ListTile( + title: Text(device.name ?? 'Unknown Device'), + subtitle: Text(device.address), + onTap: () { + // When a device is tapped, pop the dialog and return the selected device. + Navigator.of(context).pop(device); + }, + ); + }, + ), + ), + actions: [ + TextButton( + child: const Text('Cancel'), + onPressed: () { + // Pop the dialog and return null if canceled. + Navigator.of(context).pop(null); + }, + ), + ], + ); + }, + ); +} diff --git a/lib/collapsible_sidebar.dart b/lib/collapsible_sidebar.dart new file mode 100644 index 0000000..1296def --- /dev/null +++ b/lib/collapsible_sidebar.dart @@ -0,0 +1,301 @@ +import 'package:flutter/material.dart'; + +// --- Data Structure for Sidebar Menu Items --- +class SidebarItem { + final IconData? icon; // Now nullable, as we might use an image + final String label; + final String? route; // Null if it's a parent category + final List? children; // Sub-items + final bool isParent; + final String? imagePath; // New: Optional path to an image asset + + SidebarItem({ + this.icon, + required this.label, + this.route, + this.children, + this.isParent = false, + this.imagePath, // Initialize the new property + }) : assert(icon != null || imagePath != null, 'Either icon or imagePath must be provided'); // Ensure one is present +} + +// --- Collapsible Sidebar Widget --- +class CollapsibleSidebar extends StatefulWidget { + final Function(String route) onNavigate; + final bool isCollapsed; // Receive collapse state from HomePage + final VoidCallback onToggle; // Receive toggle callback from HomePage (for AppBar button) + + const CollapsibleSidebar({ + super.key, + required this.onNavigate, + required this.isCollapsed, + required this.onToggle, + }); + + @override + State createState() => _CollapsibleSidebarState(); +} + +class _CollapsibleSidebarState extends State { + // Define your menu items here based on the routes you provided + late final List _menuItems; + + @override + void initState() { + super.initState(); + _menuItems = [ + SidebarItem( + // Reverted to IconData for the top-level 'Air' category + icon: Icons.cloud, + label: "Air", + isParent: true, + children: [ + // Added Manual sub-category for Air + SidebarItem( + icon: Icons.handshake, // Example icon for Manual + label: "Manual", + isParent: true, + children: [ + SidebarItem(icon: Icons.dashboard, label: "Dashboard", route: '/air/manual/dashboard'), + SidebarItem(icon: Icons.edit_note, label: "Manual Sampling", route: '/air/manual/manual-sampling'), + SidebarItem(icon: Icons.receipt_long, label: "Report", route: '/air/manual/report'), + SidebarItem(icon: Icons.article, label: "Data Log", route: '/air/manual/data-log'), + SidebarItem(icon: Icons.image, label: "Image Request", route: '/air/manual/image-request'), + ], + ), + SidebarItem( + icon: Icons.trending_up, label: "Continuous", isParent: true, children: [ + SidebarItem(icon: Icons.dashboard, label: "Dashboard", route: '/air/continuous/dashboard'), + SidebarItem(icon: Icons.info, label: "Overview", route: '/air/continuous/overview'), + SidebarItem(icon: Icons.input, label: "Entry", route: '/air/continuous/entry'), + SidebarItem(icon: Icons.receipt_long, label: "Report", route: '/air/continuous/report'), + ]), + SidebarItem( + icon: Icons.search, label: "Investigative", isParent: true, children: [ + SidebarItem(icon: Icons.dashboard, label: "Dashboard", route: '/air/investigative/dashboard'), + SidebarItem(icon: Icons.info, label: "Overview", route: '/air/investigative/overview'), + SidebarItem(icon: Icons.input, label: "Entry", route: '/air/investigative/entry'), + SidebarItem(icon: Icons.receipt_long, label: "Report", route: '/air/investigative/report'), + ]), + ], + ), + SidebarItem( + // Reverted to IconData for the top-level 'River' category + icon: Icons.water, + label: "River", + isParent: true, + children: [ + // Added Manual sub-category for River + SidebarItem( + icon: Icons.handshake, // Example icon for Manual + label: "Manual", + isParent: true, + children: [ + SidebarItem(icon: Icons.dashboard, label: "Dashboard", route: '/river/manual/dashboard'), + SidebarItem(icon: Icons.pin_drop, label: "In-Situ Sampling", route: '/river/manual/in-situ'), + SidebarItem(icon: Icons.receipt_long, label: "Report", route: '/river/manual/report'), + SidebarItem(icon: Icons.date_range, label: "Triennial Sampling", route: '/river/manual/triennial'), + SidebarItem(icon: Icons.article, label: "Data Log", route: '/river/manual/data-log'), + SidebarItem(icon: Icons.image, label: "Image Request", route: '/river/manual/image-request'), + ], + ), + SidebarItem( + icon: Icons.trending_up, label: "Continuous", isParent: true, children: [ + SidebarItem(icon: Icons.dashboard, label: "Dashboard", route: '/river/continuous/dashboard'), + SidebarItem(icon: Icons.info, label: "Overview", route: '/river/continuous/overview'), + SidebarItem(icon: Icons.input, label: "Entry", route: '/river/continuous/entry'), + SidebarItem(icon: Icons.receipt_long, label: "Report", route: '/river/continuous/report'), + ]), + SidebarItem( + icon: Icons.search, label: "Investigative", isParent: true, children: [ + SidebarItem(icon: Icons.dashboard, label: "Dashboard", route: '/river/investigative/dashboard'), + SidebarItem(icon: Icons.info, label: "Overview", route: '/river/investigative/overview'), + SidebarItem(icon: Icons.input, label: "Entry", route: '/river/investigative/entry'), + SidebarItem(icon: Icons.receipt_long, label: "Report", route: '/river/investigative/report'), + ]), + ], + ), + SidebarItem( + // Reverted to IconData for the top-level 'Marine' category + icon: Icons.sailing, + label: "Marine", + isParent: true, + children: [ + // Added Manual sub-category for Marine + SidebarItem( + icon: Icons.handshake, // Example icon for Manual + label: "Manual", + isParent: true, + children: [ + SidebarItem(icon: Icons.dashboard, label: "Dashboard", route: '/marine/manual/dashboard'), + SidebarItem(icon: Icons.description, label: "Info Centre Document", route: '/marine/manual/info'), + SidebarItem(icon: Icons.assignment, label: "Pre-Sampling", route: '/marine/manual/pre-sampling'), + SidebarItem(icon: Icons.pin_drop, label: "In-Situ Sampling", route: '/marine/manual/in-situ'), + SidebarItem(icon: Icons.waves, label: "Tarball Sampling", route: '/marine/manual/tarball'), + SidebarItem(icon: Icons.receipt_long, label: "Report", route: '/marine/manual/report'), + SidebarItem(icon: Icons.article, label: "Data Log", route: '/marine/manual/data-log'), + SidebarItem(icon: Icons.image, label: "Image Request", route: '/marine/manual/image-request'), + ], + ), + SidebarItem( + icon: Icons.trending_up, label: "Continuous", isParent: true, children: [ + SidebarItem(icon: Icons.dashboard, label: "Dashboard", route: '/marine/continuous/dashboard'), + SidebarItem(icon: Icons.info, label: "Overview", route: '/marine/continuous/overview'), + SidebarItem(icon: Icons.input, label: "Entry", route: '/marine/continuous/entry'), + SidebarItem(icon: Icons.receipt_long, label: "Report", route: '/marine/continuous/report'), + ]), + SidebarItem( + icon: Icons.search, label: "Investigative", isParent: true, children: [ + SidebarItem(icon: Icons.dashboard, label: "Dashboard", route: '/marine/investigative/dashboard'), + SidebarItem(icon: Icons.info, label: "Overview", route: '/marine/investigative/overview'), + SidebarItem(icon: Icons.input, label: "Entry", route: '/marine/investigative/entry'), + SidebarItem(icon: Icons.receipt_long, label: "Report", route: '/marine/investigative/report'), + ]), + ], + ), + // Added Settings menu item + SidebarItem(icon: Icons.settings, label: "Settings", route: '/settings'), + ]; + } + + @override + Widget build(BuildContext context) { + return Container( + width: widget.isCollapsed ? 70 : 280, // Increased expanded width for sub-menus + color: Theme.of(context).primaryColor, // Use theme primary color for sidebar + child: Column( + children: [ + const SizedBox(height: 16), // Spacing below the (now removed) toggle button area + + Expanded( + child: ListView( + padding: EdgeInsets.zero, // Remove default listview padding + children: [ + if (!widget.isCollapsed) ...[ + // If sidebar is expanded, show full categories with sub-menus + for (var item in _menuItems) + _buildExpandableNavItem(item), + ] else ...[ + // If sidebar is collapsed, only show icons for top-level items + for (var item in _menuItems) + _buildCollapsedNavItem(item), + ], + ], + ), + ), + const Divider(color: Colors.white24, height: 1), // Separator before logout + // Logout item, using an icon as it's a standard action + _buildNavItem(Icons.logout, "Logout", '/logout', isTopLevel: true), + ], + ), + ); + } + + // Helper to build the leading widget (Icon or Image) for a sidebar item + Widget _buildLeadingWidget(SidebarItem item) { + // Now only checks for icon, as imagePath is not used for top-level items anymore + // but the property still exists on SidebarItem for potential future use or other items. + return Icon(item.icon, color: Colors.white); + } + + // Builds an expandable item for parent categories (only when sidebar is expanded) + Widget _buildExpandableNavItem(SidebarItem item) { + if (item.children == null || item.children!.isEmpty) { + // This case handles a top-level item that is NOT a parent, + // but if you have such an item, it should probably go through _buildNavItem directly. + // For this structure, all top-level items are parents. + return _buildNavItem(item.icon, item.label, item.route ?? '', isTopLevel: true, imagePath: item.imagePath); + } + + return Theme( + data: Theme.of(context).copyWith(dividerColor: Colors.transparent), // Hide divider in expansion tile + child: ExpansionTile( + initiallyExpanded: false, // You can set this to true if you want some categories open by default + leading: _buildLeadingWidget(item), // Use the helper for leading widget + title: Text(item.label, style: const TextStyle(color: Colors.white)), + iconColor: Colors.white, + collapsedIconColor: Colors.white, + childrenPadding: const EdgeInsets.only(left: 20.0), // Indent sub-items + children: item.children!.map((childItem) { + if (childItem.isParent) { + // Nested expansion tiles for sub-categories like "Manual", "Continuous" + return _buildExpandableNavItem(childItem); + } else { + // Leaf item (actual navigation link) + return _buildNavItem(childItem.icon, childItem.label, childItem.route ?? '', imagePath: childItem.imagePath); + } + }).toList(), + ), + ); + } + + // Builds a regular navigation item (for sub-items when expanded, or top-level when collapsed) + Widget _buildNavItem(IconData? icon, String label, String route, {bool isTopLevel = false, String? imagePath}) { + return InkWell( + onTap: () { + if (route.isNotEmpty) { + widget.onNavigate(route); + } + }, + child: Padding( + padding: EdgeInsets.symmetric( + vertical: 12, + horizontal: isTopLevel && widget.isCollapsed ? 0 : 8, // Center icon if top-level and collapsed + ), + child: isTopLevel && widget.isCollapsed + ? Center( + child: icon != null + ? Icon(icon, color: Colors.white) + : const SizedBox.shrink(), // Fallback if no icon or imagePath + ) // Only icon when collapsed + : Row( + children: [ + icon != null + ? Icon(icon, color: Colors.white) + : const SizedBox.shrink(), // Fallback if no icon or imagePath + const SizedBox(width: 12), + Expanded( // Use Expanded to prevent text overflow + child: Text(label, style: const TextStyle(color: Colors.white)), + ), + ], + ), + ), + ); + } + + // Builds a collapsed navigation item (only icon/image) for top-level categories + Widget _buildCollapsedNavItem(SidebarItem item) { + return InkWell( + onTap: () { + if (item.route != null && item.route!.isNotEmpty) { + widget.onNavigate(item.route!); + } else { + // If a parent item is tapped when collapsed, expand the sidebar + widget.onToggle(); + } + }, + child: Padding( + padding: const EdgeInsets.symmetric(vertical: 8.0, horizontal: 0), // Adjusted vertical padding + child: Column( + mainAxisSize: MainAxisSize.min, // Use minimum space + children: [ + item.icon != null + ? Icon(item.icon, color: Colors.white, size: 24) // Icon size + : const SizedBox.shrink(), // Fallback if no icon + const SizedBox(height: 4), // Small space between icon and text + Text( + item.label, + style: const TextStyle( + color: Colors.white, + fontSize: 10, // Smaller font size to fit + ), + overflow: TextOverflow.ellipsis, // Handle long labels + maxLines: 1, // Ensure it stays on one line + textAlign: TextAlign.center, // Center the text + ), + ], + ), + ), + ); + } +} diff --git a/lib/home_page.dart b/lib/home_page.dart new file mode 100644 index 0000000..fc4bb75 --- /dev/null +++ b/lib/home_page.dart @@ -0,0 +1,105 @@ +import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; +import 'package:environment_monitoring_app/auth_provider.dart'; +import 'package:environment_monitoring_app/collapsible_sidebar.dart'; // Import your sidebar widget + +class HomePage extends StatefulWidget { + const HomePage({super.key}); + + @override + State createState() => _HomePageState(); +} + +class _HomePageState extends State { + bool _isSidebarCollapsed = true; + String _currentSelectedRoute = '/home'; + + @override + Widget build(BuildContext context) { + final auth = Provider.of(context); + + return Scaffold( + appBar: AppBar( + leading: IconButton( + icon: Icon(_isSidebarCollapsed ? Icons.menu : Icons.close, color: Colors.white), + onPressed: () { + setState(() { + _isSidebarCollapsed = !_isSidebarCollapsed; + }); + }, + ), + title: const Text("Environment Monitoring"), + actions: [ + IconButton( + icon: const Icon(Icons.person), + onPressed: () { + Navigator.pushNamed(context, '/profile'); + }, + ), + ], + ), + body: Row( + children: [ + CollapsibleSidebar( + isCollapsed: _isSidebarCollapsed, + onToggle: () { + setState(() { + _isSidebarCollapsed = !_isSidebarCollapsed; + }); + }, + onNavigate: (route) { + setState(() { + _currentSelectedRoute = route; + }); + Navigator.pushNamed(context, route); + }, + ), + Expanded( + child: Padding( + padding: const EdgeInsets.all(24), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + "Welcome, ${auth.userEmail ?? 'User'}", + style: Theme.of(context).textTheme.headlineSmall?.copyWith( + fontWeight: FontWeight.bold, + ), + ), + const SizedBox(height: 32), + Text( + "Select a Department:", + style: Theme.of(context).textTheme.titleMedium, + ), + const SizedBox(height: 16), + Wrap( + spacing: 16, + runSpacing: 16, + children: [ + // Updated navigation to the new department home pages + _buildNavButton(context, "Air", Icons.cloud, '/air/home'), + _buildNavButton(context, "River", Icons.water, '/river/home'), + _buildNavButton(context, "Marine", Icons.sailing, '/marine/home'), + ], + ), + ], + ), + ), + ), + ], + ), + ); + } + + Widget _buildNavButton(BuildContext context, String label, IconData icon, String route) { + return ElevatedButton.icon( + onPressed: () => Navigator.pushNamed(context, route), + icon: Icon(icon, size: 24), + label: Text(label), + style: ElevatedButton.styleFrom( + padding: const EdgeInsets.symmetric(horizontal: 24, vertical: 16), + textStyle: const TextStyle(fontSize: 16), + ), + ); + } +} diff --git a/lib/main.dart b/lib/main.dart new file mode 100644 index 0000000..208e164 --- /dev/null +++ b/lib/main.dart @@ -0,0 +1,269 @@ +// lib/main.dart + +import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; +import 'package:connectivity_plus/connectivity_plus.dart'; + +// CHANGED: Added imports for MultiProvider and the services to be provided. +import 'package:provider/single_child_widget.dart'; +import 'package:environment_monitoring_app/services/local_storage_service.dart'; +import 'package:environment_monitoring_app/services/river_in_situ_sampling_service.dart'; +import 'package:environment_monitoring_app/services/telegram_service.dart'; + +import 'package:environment_monitoring_app/theme.dart'; +import 'package:environment_monitoring_app/auth_provider.dart'; + +// Core Screens +import 'package:environment_monitoring_app/screens/login.dart'; +import 'package:environment_monitoring_app/screens/register.dart'; +import 'package:environment_monitoring_app/screens/forgot_password.dart'; +import 'package:environment_monitoring_app/screens/logout.dart'; +import 'package:environment_monitoring_app/home_page.dart'; +import 'package:environment_monitoring_app/screens/profile.dart'; +import 'package:environment_monitoring_app/screens/settings.dart'; + +// Department Home Pages +import 'package:environment_monitoring_app/screens/air/air_home_page.dart'; +import 'package:environment_monitoring_app/screens/river/river_home_page.dart'; +import 'package:environment_monitoring_app/screens/marine/marine_home_page.dart'; + +// Air Screens +import 'package:environment_monitoring_app/screens/air/manual/air_manual_dashboard.dart'; +import 'package:environment_monitoring_app/screens/air/manual/manual_sampling.dart' as airManualSampling; +import 'package:environment_monitoring_app/screens/air/manual/report.dart' as airManualReport; +import 'package:environment_monitoring_app/screens/air/manual/data_status_log.dart' as airManualDataStatusLog; +import 'package:environment_monitoring_app/screens/air/manual/image_request.dart' as airManualImageRequest; +import 'package:environment_monitoring_app/screens/air/continuous/air_continuous_dashboard.dart'; +import 'package:environment_monitoring_app/screens/air/continuous/overview.dart' as airContinuousOverview; +import 'package:environment_monitoring_app/screens/air/continuous/entry.dart' as airContinuousEntry; +import 'package:environment_monitoring_app/screens/air/continuous/report.dart' as airContinuousReport; +import 'package:environment_monitoring_app/screens/air/investigative/air_investigative_dashboard.dart'; +import 'package:environment_monitoring_app/screens/air/investigative/overview.dart' as airInvestigativeOverview; +import 'package:environment_monitoring_app/screens/air/investigative/entry.dart' as airInvestigativeEntry; +import 'package:environment_monitoring_app/screens/air/investigative/report.dart' as airInvestigativeReport; + +// River Screens +import 'package:environment_monitoring_app/screens/river/manual/river_manual_dashboard.dart'; +// NOTE: This import points to the main stepper screen for the River In-Situ workflow. +import 'package:environment_monitoring_app/screens/river/manual/in_situ_sampling.dart' as riverManualInSituSampling; +import 'package:environment_monitoring_app/screens/river/manual/data_status_log.dart' as riverManualDataStatusLog; + +//import 'package:environment_monitoring_app/screens/river/manual/in_situ_sampling.dart' as riverManualInSituSampling; +import 'package:environment_monitoring_app/screens/river/manual/report.dart' as riverManualReport; +import 'package:environment_monitoring_app/screens/river/manual/triennial_sampling.dart' as riverManualTriennialSampling; +//import 'package:environment_monitoring_app/screens/river/manual/data_status_log.dart' as riverManualDataStatusLog; +import 'package:environment_monitoring_app/screens/river/manual/image_request.dart' as riverManualImageRequest; +import 'package:environment_monitoring_app/screens/river/continuous/river_continuous_dashboard.dart'; +import 'package:environment_monitoring_app/screens/river/continuous/overview.dart' as riverContinuousOverview; +import 'package:environment_monitoring_app/screens/river/continuous/entry.dart' as riverContinuousEntry; +import 'package:environment_monitoring_app/screens/river/continuous/report.dart' as riverContinuousReport; +import 'package:environment_monitoring_app/screens/river/investigative/river_investigative_dashboard.dart'; +import 'package:environment_monitoring_app/screens/river/investigative/overview.dart' as riverInvestigativeOverview; +import 'package:environment_monitoring_app/screens/river/investigative/entry.dart' as riverInvestigativeEntry; +import 'package:environment_monitoring_app/screens/river/investigative/report.dart' as riverInvestigativeReport; + +// Marine Screens +import 'package:environment_monitoring_app/screens/marine/manual/marine_manual_dashboard.dart'; +import 'package:environment_monitoring_app/screens/marine/manual/info_centre_document.dart' as marineManualInfoCentreDocument; +import 'package:environment_monitoring_app/screens/marine/manual/pre_sampling.dart' as marineManualPreSampling; +import 'package:environment_monitoring_app/screens/marine/manual/in_situ_sampling.dart' as marineManualInSituSampling; +import 'package:environment_monitoring_app/screens/marine/manual/report.dart' as marineManualReport; +import 'package:environment_monitoring_app/screens/marine/manual/data_status_log.dart' as marineManualDataStatusLog; +import 'package:environment_monitoring_app/screens/marine/manual/image_request.dart' as marineManualImageRequest; +import 'package:environment_monitoring_app/screens/marine/continuous/marine_continuous_dashboard.dart'; +import 'package:environment_monitoring_app/screens/marine/continuous/overview.dart' as marineContinuousOverview; +import 'package:environment_monitoring_app/screens/marine/continuous/entry.dart' as marineContinuousEntry; +import 'package:environment_monitoring_app/screens/marine/continuous/report.dart' as marineContinuousReport; +import 'package:environment_monitoring_app/screens/marine/investigative/marine_investigative_dashboard.dart'; +import 'package:environment_monitoring_app/screens/marine/investigative/overview.dart' as marineInvestigativeOverview; +import 'package:environment_monitoring_app/screens/marine/investigative/entry.dart' as marineInvestigativeEntry; +import 'package:environment_monitoring_app/screens/marine/investigative/report.dart' as marineInvestigativeReport; + +import 'package:environment_monitoring_app/models/tarball_data.dart'; +import 'package:environment_monitoring_app/screens/marine/manual/tarball_sampling_step1.dart'; +import 'package:environment_monitoring_app/screens/marine/manual/tarball_sampling_step2.dart'; +import 'package:environment_monitoring_app/screens/marine/manual/tarball_sampling_step3_summary.dart'; + + +void main() async { + WidgetsFlutterBinding.ensureInitialized(); + + setupServices(); + + runApp( + // CHANGED: Converted to MultiProvider to support all necessary services. + MultiProvider( + providers: [ + // The original AuthProvider + ChangeNotifierProvider(create: (_) => AuthProvider()), + // Provider for Local Storage Service + Provider(create: (_) => LocalStorageService()), + // Provider for the River In-Situ Sampling Service + Provider(create: (_) => RiverInSituSamplingService()), + // NOTE: You would also add your Marine InSituSamplingService here if needed by Provider. + ], + child: const RootApp(), + ), + ); +} + +void setupServices() { + final telegramService = TelegramService(); + + Future.delayed(const Duration(seconds: 5), () { + debugPrint("[Main] Performing initial alert queue processing on app start."); + telegramService.processAlertQueue(); + }); + + Connectivity().onConnectivityChanged.listen((List results) { + if (results.contains(ConnectivityResult.mobile) || results.contains(ConnectivityResult.wifi)) { + debugPrint("[Main] Internet connection detected. Triggering alert queue processing."); + telegramService.processAlertQueue(); + } else { + debugPrint("[Main] Internet connection lost."); + } + }); +} + +class RootApp extends StatelessWidget { + const RootApp({super.key}); + + @override + Widget build(BuildContext context) { + return Consumer( + builder: (context, auth, child) { + Widget homeWidget; + if (auth.isLoading) { + homeWidget = const SplashScreen(); + } else if (auth.isLoggedIn) { + homeWidget = const HomePage(); + } else { + homeWidget = const LoginScreen(); + } + + return MaterialApp( + title: 'Environment Monitoring App', + theme: AppTheme.darkBlueTheme, + debugShowCheckedModeBanner: false, + home: homeWidget, + + onGenerateRoute: (settings) { + if (settings.name == '/marine/manual/tarball/step2') { + final args = settings.arguments as TarballSamplingData; + return MaterialPageRoute(builder: (context) { + return TarballSamplingStep2(data: args); + }); + } + if (settings.name == '/marine/manual/tarball/step3') { + final args = settings.arguments as TarballSamplingData; + return MaterialPageRoute(builder: (context) { + return TarballSamplingStep3Summary(data: args); + }); + } + // NOTE: The River In-Situ form uses an internal stepper, + // so it does not require onGenerateRoute logic for its steps. + return null; + }, + routes: { + // Auth Routes + '/register': (context) => const RegisterScreen(), + '/forgot-password': (context) => ForgotPasswordScreen(), + '/logout': (context) => const LogoutScreen(), + '/home': (context) => const HomePage(), + '/profile': (context) => const ProfileScreen(), + '/settings': (context) => const SettingsScreen(), + + // Department Home Pages + '/air/home': (context) => const AirHomePage(), + '/river/home': (context) => const RiverHomePage(), + '/marine/home': (context) => const MarineHomePage(), + + // Air Manual + '/air/manual/dashboard': (context) => AirManualDashboard(), + '/air/manual/manual-sampling': (context) => airManualSampling.AirManualSampling(), + '/air/manual/report': (context) => airManualReport.AirManualReport(), + '/air/manual/data-log': (context) => airManualDataStatusLog.AirManualDataStatusLog(), + '/air/manual/image-request': (context) => airManualImageRequest.AirManualImageRequest(), + + // Air Continuous + '/air/continuous/dashboard': (context) => AirContinuousDashboard(), + '/air/continuous/overview': (context) => airContinuousOverview.OverviewScreen(), + '/air/continuous/entry': (context) => airContinuousEntry.EntryScreen(), + '/air/continuous/report': (context) => airContinuousReport.ReportScreen(), + + // Air Investigative + '/air/investigative/dashboard': (context) => AirInvestigativeDashboard(), + '/air/investigative/overview': (context) => airInvestigativeOverview.OverviewScreen(), + '/air/investigative/entry': (context) => airInvestigativeEntry.EntryScreen(), + '/air/investigative/report': (context) => airInvestigativeReport.ReportScreen(), + + // River Manual + '/river/manual/dashboard': (context) => RiverManualDashboard(), + '/river/manual/in-situ': (context) => riverManualInSituSampling.RiverInSituSamplingScreen(), + + //'/river/manual/in-situ': (context) => riverManualInSituSampling.RiverInSituSampling(), + '/river/manual/report': (context) => riverManualReport.RiverManualReport(), + '/river/manual/triennial': (context) => riverManualTriennialSampling.RiverTriennialSampling(), + '/river/manual/data-log': (context) => riverManualDataStatusLog.RiverDataStatusLog(), + //'/river/manual/data-log': (context) => riverManualDataStatusLog.RiverManualDataStatusLog(), + '/river/manual/image-request': (context) => riverManualImageRequest.RiverManualImageRequest(), + + // River Continuous + '/river/continuous/dashboard': (context) => RiverContinuousDashboard(), + '/river/continuous/overview': (context) => riverContinuousOverview.OverviewScreen(), + '/river/continuous/entry': (context) => riverContinuousEntry.EntryScreen(), + '/river/continuous/report': (context) => riverContinuousReport.ReportScreen(), + + // River Investigative + '/river/investigative/dashboard': (context) => RiverInvestigativeDashboard(), + '/river/investigative/overview': (context) => riverInvestigativeOverview.OverviewScreen(), + '/river/investigative/entry': (context) => riverInvestigativeEntry.EntryScreen(), + '/river/investigative/report': (context) => riverInvestigativeReport.ReportScreen(), + + // Marine Manual + '/marine/manual/dashboard': (context) => MarineManualDashboard(), + '/marine/manual/info': (context) => marineManualInfoCentreDocument.MarineInfoCentreDocument(), + '/marine/manual/pre-sampling': (context) => marineManualPreSampling.MarinePreSampling(), + '/marine/manual/in-situ': (context) => marineManualInSituSampling.MarineInSituSampling(), + '/marine/manual/tarball': (context) => const TarballSamplingStep1(), + '/marine/manual/report': (context) => marineManualReport.MarineManualReport(), + '/marine/manual/data-log': (context) => marineManualDataStatusLog.MarineManualDataStatusLog(), + '/marine/manual/image-request': (context) => marineManualImageRequest.MarineManualImageRequest(), + + // Marine Continuous + '/marine/continuous/dashboard': (context) => MarineContinuousDashboard(), + '/marine/continuous/overview': (context) => marineContinuousOverview.OverviewScreen(), + '/marine/continuous/entry': (context) => marineContinuousEntry.EntryScreen(), + '/marine/continuous/report': (context) => marineContinuousReport.ReportScreen(), + + // Marine Investigative + '/marine/investigative/dashboard': (context) => MarineInvestigativeDashboard(), + '/marine/investigative/overview': (context) => marineInvestigativeOverview.OverviewScreen(), + '/marine/investigative/entry': (context) => marineInvestigativeEntry.EntryScreen(), + '/marine/investigative/report': (context) => marineInvestigativeReport.ReportScreen(), + }, + ); + }, + ); + } +} + +class SplashScreen extends StatelessWidget { + const SplashScreen({super.key}); + + @override + Widget build(BuildContext context) { + return const Scaffold( + body: Center( + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + CircularProgressIndicator(), + SizedBox(height: 20), + Text('Loading app data...', style: TextStyle(fontSize: 16)), + ], + ), + ), + ); + } +} \ No newline at end of file diff --git a/lib/models/in_situ_sampling_data.dart b/lib/models/in_situ_sampling_data.dart new file mode 100644 index 0000000..9c38ff3 --- /dev/null +++ b/lib/models/in_situ_sampling_data.dart @@ -0,0 +1,144 @@ +import 'dart:io'; + +/// A data model class to hold all information for the multi-step +/// In-Situ Sampling form. +class InSituSamplingData { + // --- Step 1: Sampling & Station Info --- + String? firstSamplerName; + int? firstSamplerUserId; + Map? secondSampler; + String? samplingDate; + String? samplingTime; + String? samplingType; + String? sampleIdCode; + + String? selectedStateName; + String? selectedCategoryName; + Map? selectedStation; + + String? stationLatitude; + String? stationLongitude; + String? currentLatitude; + String? currentLongitude; + double? distanceDifferenceInKm; + String? distanceDifferenceRemarks; + + // --- Step 2: Site Info & Photos --- + String? weather; + String? tideLevel; + String? seaCondition; + String? eventRemarks; + String? labRemarks; + + File? leftLandViewImage; + File? rightLandViewImage; + File? waterFillingImage; + File? seawaterColorImage; + File? phPaperImage; + + File? optionalImage1; + String? optionalRemark1; + File? optionalImage2; + String? optionalRemark2; + File? optionalImage3; + String? optionalRemark3; + File? optionalImage4; + String? optionalRemark4; + + // --- Step 3: Data Capture --- + String? sondeId; + String? dataCaptureDate; + String? dataCaptureTime; + double? oxygenConcentration; + double? oxygenSaturation; + double? ph; + double? salinity; + double? electricalConductivity; + double? temperature; + double? tds; + double? turbidity; + double? tss; + double? batteryVoltage; + + // --- Post-Submission Status --- + String? submissionStatus; + String? submissionMessage; + String? reportId; + + // REPAIRED: Added a constructor to accept initial values. + InSituSamplingData({ + this.samplingDate, + this.samplingTime, + }); + + /// Converts the data model into a Map for the API form data. + Map toApiFormData() { + final Map map = {}; + + void add(String key, dynamic value) { + if (value != null) { + map[key] = value.toString(); + } + } + + // Step 1 Data + add('first_sampler_user_id', firstSamplerUserId); + add('man_second_sampler_id', secondSampler?['user_id']); + add('man_date', samplingDate); + add('man_time', samplingTime); + add('man_type', samplingType); + add('man_sample_id_code', sampleIdCode); + add('station_id', selectedStation?['station_id']); + add('man_current_latitude', currentLatitude); + add('man_current_longitude', currentLongitude); + add('man_distance_difference', distanceDifferenceInKm); + add('man_distance_difference_remarks', distanceDifferenceRemarks); + + // Step 2 Data + add('man_weather', weather); + add('man_tide_level', tideLevel); + add('man_sea_condition', seaCondition); + add('man_event_remark', eventRemarks); + add('man_lab_remark', labRemarks); + add('man_optional_photo_01_remarks', optionalRemark1); + add('man_optional_photo_02_remarks', optionalRemark2); + add('man_optional_photo_03_remarks', optionalRemark3); + add('man_optional_photo_04_remarks', optionalRemark4); + + // Step 3 Data + add('man_sondeID', sondeId); + add('data_capture_date', dataCaptureDate); + add('data_capture_time', dataCaptureTime); + add('man_oxygen_conc', oxygenConcentration); + add('man_oxygen_sat', oxygenSaturation); + add('man_ph', ph); + add('man_salinity', salinity); + add('man_conductivity', electricalConductivity); + add('man_temperature', temperature); + add('man_tds', tds); + add('man_turbidity', turbidity); + add('man_tss', tss); + add('man_battery_volt', batteryVoltage); + + add('first_sampler_name', firstSamplerName); + add('man_station_code', selectedStation?['man_station_code']); + add('man_station_name', selectedStation?['man_station_name']); + + return map; + } + + /// Converts the image properties into a Map for the multipart API request. + Map toApiImageFiles() { + return { + 'man_left_side_land_view': leftLandViewImage, + 'man_right_side_land_view': rightLandViewImage, + 'man_filling_water_into_sample_bottle': waterFillingImage, + 'man_seawater_in_clear_glass_bottle': seawaterColorImage, + 'man_examine_preservative_ph_paper': phPaperImage, + 'man_optional_photo_01': optionalImage1, + 'man_optional_photo_02': optionalImage2, + 'man_optional_photo_03': optionalImage3, + 'man_optional_photo_04': optionalImage4, + }; + } +} \ No newline at end of file diff --git a/lib/models/river_in_situ_sampling_data.dart b/lib/models/river_in_situ_sampling_data.dart new file mode 100644 index 0000000..bdc1540 --- /dev/null +++ b/lib/models/river_in_situ_sampling_data.dart @@ -0,0 +1,164 @@ +// lib/models/river_in_situ_sampling_data.dart + +import 'dart:io'; + +/// A data model class to hold all information for the multi-step +/// River In-Situ Sampling form. +class RiverInSituSamplingData { + // --- Step 1: Sampling & Station Info --- + String? firstSamplerName; + int? firstSamplerUserId; + Map? secondSampler; + String? samplingDate; + String? samplingTime; + String? samplingType; + String? sampleIdCode; + + String? selectedStateName; + String? selectedCategoryName; + Map? selectedStation; + + String? stationLatitude; + String? stationLongitude; + String? currentLatitude; + String? currentLongitude; + double? distanceDifferenceInKm; + String? distanceDifferenceRemarks; + + // --- Step 2: Site Info & Photos --- + String? weather; + // CHANGED: Renamed for river context + String? waterLevel; + String? riverCondition; + String? eventRemarks; + String? labRemarks; + + // CHANGED: Image descriptions adapted for river context + File? leftBankViewImage; + File? rightBankViewImage; + File? waterFillingImage; + File? waterColorImage; + File? phPaperImage; + + File? optionalImage1; + String? optionalRemark1; + File? optionalImage2; + String? optionalRemark2; + File? optionalImage3; + String? optionalRemark3; + File? optionalImage4; + String? optionalRemark4; + + // --- Step 3: Data Capture --- + String? sondeId; + String? dataCaptureDate; + String? dataCaptureTime; + double? oxygenConcentration; + double? oxygenSaturation; + double? ph; + double? salinity; + double? electricalConductivity; + double? temperature; + double? tds; + double? turbidity; + double? tss; + double? batteryVoltage; + + // --- START: Add your river-specific parameters here --- + // Example: + // double? flowRate; + // --- END: Add your river-specific parameters here --- + + + // --- Post-Submission Status --- + String? submissionStatus; + String? submissionMessage; + String? reportId; + + RiverInSituSamplingData({ + this.samplingDate, + this.samplingTime, + }); + + /// Converts the data model into a Map for the API form data. + Map toApiFormData() { + final Map map = {}; + + void add(String key, dynamic value) { + if (value != null) { + map[key] = value.toString(); + } + } + + // IMPORTANT: The keys below are prefixed with 'r_man_' for river manual sampling. + // Ensure these match your backend API requirements. + + // Step 1 Data + add('first_sampler_user_id', firstSamplerUserId); + add('r_man_second_sampler_id', secondSampler?['user_id']); + add('r_man_date', samplingDate); + add('r_man_time', samplingTime); + add('r_man_type', samplingType); + add('r_man_sample_id_code', sampleIdCode); + add('station_id', selectedStation?['station_id']); + add('r_man_current_latitude', currentLatitude); + add('r_man_current_longitude', currentLongitude); + add('r_man_distance_difference', distanceDifferenceInKm); + add('r_man_distance_difference_remarks', distanceDifferenceRemarks); + + // Step 2 Data + add('r_man_weather', weather); + add('r_man_water_level', waterLevel); + add('r_man_river_condition', riverCondition); + add('r_man_event_remark', eventRemarks); + add('r_man_lab_remark', labRemarks); + add('r_man_optional_photo_01_remarks', optionalRemark1); + add('r_man_optional_photo_02_remarks', optionalRemark2); + add('r_man_optional_photo_03_remarks', optionalRemark3); + add('r_man_optional_photo_04_remarks', optionalRemark4); + + // Step 3 Data + add('r_man_sondeID', sondeId); + add('data_capture_date', dataCaptureDate); + add('data_capture_time', dataCaptureTime); + add('r_man_oxygen_conc', oxygenConcentration); + add('r_man_oxygen_sat', oxygenSaturation); + add('r_man_ph', ph); + add('r_man_salinity', salinity); + add('r_man_conductivity', electricalConductivity); + add('r_man_temperature', temperature); + add('r_man_tds', tds); + add('r_man_turbidity', turbidity); + add('r_man_tss', tss); + add('r_man_battery_volt', batteryVoltage); + + // --- START: Add your new river parameters to the form data map --- + // Example: + // add('r_man_flow_rate', flowRate); + // --- END: Add your new river parameters to the form data map --- + + // Additional data for display or logging, adapted from the original model + add('first_sampler_name', firstSamplerName); + // Assuming river station keys are prefixed with 'r_man_' + add('r_man_station_code', selectedStation?['r_man_station_code']); + add('r_man_station_name', selectedStation?['r_man_station_name']); + + return map; + } + + /// Converts the image properties into a Map for the multipart API request. + Map toApiImageFiles() { + // IMPORTANT: Keys adapted for river context. + return { + 'r_man_left_bank_view': leftBankViewImage, + 'r_man_right_bank_view': rightBankViewImage, + 'r_man_filling_water_into_sample_bottle': waterFillingImage, + 'r_man_water_in_clear_glass_bottle': waterColorImage, + 'r_man_examine_preservative_ph_paper': phPaperImage, + 'r_man_optional_photo_01': optionalImage1, + 'r_man_optional_photo_02': optionalImage2, + 'r_man_optional_photo_03': optionalImage3, + 'r_man_optional_photo_04': optionalImage4, + }; + } +} \ No newline at end of file diff --git a/lib/models/tarball_data.dart b/lib/models/tarball_data.dart new file mode 100644 index 0000000..f73807a --- /dev/null +++ b/lib/models/tarball_data.dart @@ -0,0 +1,83 @@ +import 'dart:io'; + +/// This class holds all the data collected across the multi-step tarball sampling form. +/// It acts as a temporary data container that is passed between screens. +class TarballSamplingData { + // --- Step 1 Data: Collected in TarballSamplingStep1 --- + String? firstSampler; + int? firstSamplerUserId; + Map? secondSampler; // Holds the full user map for the 2nd sampler + String? samplingDate; + String? samplingTime; + String? selectedStateName; + String? selectedCategoryName; + Map? selectedStation; // Holds the full station map + String? stationLatitude; + String? stationLongitude; + String? currentLatitude; + String? currentLongitude; + double? distanceDifference; + + // --- Step 2 Data: Collected in TarballSamplingStep2 --- + int? classificationId; // CORRECTED: Only the ID is needed. + File? leftCoastalViewImage; + File? rightCoastalViewImage; + File? verticalLinesImage; + File? horizontalLineImage; + File? optionalImage1; + String? optionalRemark1; + File? optionalImage2; + String? optionalRemark2; + File? optionalImage3; + String? optionalRemark3; + File? optionalImage4; + String? optionalRemark4; + + // --- Step 3 Data: For handling the submission response --- + String? reportId; + String? submissionStatus; + String? submissionMessage; + + /// Converts the form's text and selection data into a Map suitable for JSON encoding. + /// This map will be sent as the body of the first API request. + Map toFormData() { + final Map data = { + // Required fields + 'station_id': selectedStation?['station_id']?.toString() ?? '', + 'sampling_date': samplingDate ?? '', + 'sampling_time': samplingTime ?? '', + + // User ID fields + 'first_sampler_user_id': firstSamplerUserId?.toString() ?? '', + 'second_sampler_user_id': secondSampler?['user_id']?.toString() ?? '', + + // Foreign Key ID for classification + 'classification_id': classificationId?.toString() ?? '', + + // Other nullable fields + 'current_latitude': currentLatitude ?? '', + 'current_longitude': currentLongitude ?? '', + 'distance_difference': distanceDifference?.toString() ?? '', + 'optional_photo_remark_01': optionalRemark1 ?? '', + 'optional_photo_remark_02': optionalRemark2 ?? '', + 'optional_photo_remark_03': optionalRemark3 ?? '', + 'optional_photo_remark_04': optionalRemark4 ?? '', + }; + return data; + } + + /// Gathers all non-null image files into a Map. + /// This map is used to build the multipart request for the second API call (image upload). + Map toImageFiles() { + return { + 'left_side_coastal_view': leftCoastalViewImage, + 'right_side_coastal_view': rightCoastalViewImage, + 'drawing_vertical_lines': verticalLinesImage, + 'drawing_horizontal_line': horizontalLineImage, + 'optional_photo_01': optionalImage1, + 'optional_photo_02': optionalImage2, + 'optional_photo_03': optionalImage3, + 'optional_photo_04': optionalImage4, + }; + } +} diff --git a/lib/screens/air/air_home_page.dart b/lib/screens/air/air_home_page.dart new file mode 100644 index 0000000..f47e117 --- /dev/null +++ b/lib/screens/air/air_home_page.dart @@ -0,0 +1,164 @@ +import 'package:flutter/material.dart'; + +// Re-defining SidebarItem here for self-containment, +// ideally this would be in a shared utility file if used across many screens. +class SidebarItem { + final IconData? icon; + final String label; + final String? route; + final List? children; + final bool isParent; + final String? imagePath; + + const SidebarItem({ + this.icon, + required this.label, + this.route, + this.children, + this.isParent = false, + this.imagePath, + }) : assert(icon != null || imagePath != null, 'Either icon or imagePath must be provided'); +} + +class AirHomePage extends StatelessWidget { + const AirHomePage({super.key}); + + // Define Air's sub-menu structure (Manual, Continuous, Investigative) + // This mirrors the structure from collapsible_sidebar.dart for consistency. + final List _airSubMenus = const [ + SidebarItem( + icon: Icons.handshake, // Example icon for Manual + label: "Manual", + isParent: true, + children: [ + SidebarItem(icon: Icons.dashboard, label: "Dashboard", route: '/air/manual/dashboard'), + SidebarItem(icon: Icons.edit_note, label: "Manual Sampling", route: '/air/manual/manual-sampling'), + SidebarItem(icon: Icons.receipt_long, label: "Report", route: '/air/manual/report'), + SidebarItem(icon: Icons.article, label: "Data Log", route: '/air/manual/data-log'), + SidebarItem(icon: Icons.image, label: "Image Request", route: '/air/manual/image-request'), + ], + ), + SidebarItem( + icon: Icons.trending_up, + label: "Continuous", + isParent: true, + children: [ + SidebarItem(icon: Icons.dashboard, label: "Dashboard", route: '/air/continuous/dashboard'), + SidebarItem(icon: Icons.info, label: "Overview", route: '/air/continuous/overview'), + SidebarItem(icon: Icons.input, label: "Entry", route: '/air/continuous/entry'), + SidebarItem(icon: Icons.receipt_long, label: "Report", route: '/air/continuous/report'), + ], + ), + SidebarItem( + icon: Icons.search, + label: "Investigative", + isParent: true, + children: [ + SidebarItem(icon: Icons.dashboard, label: "Dashboard", route: '/air/investigative/dashboard'), + SidebarItem(icon: Icons.info, label: "Overview", route: '/air/investigative/overview'), + SidebarItem(icon: Icons.input, label: "Entry", route: '/air/investigative/entry'), + SidebarItem(icon: Icons.receipt_long, label: "Report", route: '/air/investigative/report'), + ], + ), + ]; + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar( + title: const Text("Air Department"), + ), + body: SingleChildScrollView( + padding: const EdgeInsets.all(24.0), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + "Explore Air Monitoring Sections", + style: Theme.of(context).textTheme.headlineSmall?.copyWith( + fontWeight: FontWeight.bold, + ), + ), + const SizedBox(height: 24), + Column( + children: _airSubMenus.map((category) { + return _buildCategorySection(context, category); + }).toList(), + ), + ], + ), + ), + ); + } + + // Method to build each category section (Manual, Continuous, Investigative) + Widget _buildCategorySection(BuildContext context, SidebarItem category) { + return Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + // Category header (icon + label) + Padding( + padding: const EdgeInsets.symmetric(vertical: 8.0), + child: Row( + children: [ + Icon(category.icon, size: 30, color: Theme.of(context).iconTheme.color), + const SizedBox(width: 12), + Text( + category.label, + style: Theme.of(context).textTheme.titleLarge?.copyWith( + fontWeight: FontWeight.bold, + ), + ), + ], + ), + ), + const Divider(height: 24, thickness: 1, color: Colors.white24), // Divider below category title + // Grid of sub-menu items + GridView.builder( + shrinkWrap: true, + physics: const NeverScrollableScrollPhysics(), + gridDelegate: const SliverGridDelegateWithFixedCrossAxisCount( + crossAxisCount: 3, // 3 columns for sub-menu items + crossAxisSpacing: 0.0, // Removed horizontal spacing + mainAxisSpacing: 0.0, // Removed vertical spacing + childAspectRatio: 2.8, // Adjusted aspect ratio for horizontal icon-label layout with bigger content + ), + itemCount: category.children?.length ?? 0, + itemBuilder: (context, index) { + final subItem = category.children![index]; + return InkWell( + onTap: () { + if (subItem.route != null) { + Navigator.pushNamed(context, subItem.route!); + } + }, + borderRadius: BorderRadius.circular(0), // Removed border radius for seamless grid + child: Padding( + padding: const EdgeInsets.all(8.0), // Padding around the row content + child: Row( // Changed from Column to Row + mainAxisAlignment: MainAxisAlignment.start, // Align content to start + children: [ + subItem.icon != null + ? Icon(subItem.icon, color: Colors.white70, size: 24) // Increased icon size from 22 to 24 + : const SizedBox.shrink(), + const SizedBox(width: 8), // Space between icon and text (horizontal) + Expanded( // Allow text to take remaining space + child: Text( + subItem.label, + style: Theme.of(context).textTheme.bodySmall?.copyWith(color: Colors.white70, fontSize: 11), // Increased text size from 10 to 11 + textAlign: TextAlign.left, // Align text to left + overflow: TextOverflow.ellipsis, + maxLines: 1, // Single line for label + ), + ), + ], + ), + ), + ); + }, + ), + const SizedBox(height: 16), // Reduced gap after each category group + ], + ); + } +} diff --git a/lib/screens/air/continuous/air_continuous_dashboard.dart b/lib/screens/air/continuous/air_continuous_dashboard.dart new file mode 100644 index 0000000..5d442d9 --- /dev/null +++ b/lib/screens/air/continuous/air_continuous_dashboard.dart @@ -0,0 +1,42 @@ +import 'package:flutter/material.dart'; + +class AirContinuousDashboard extends StatelessWidget { + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: Text("Air Continuous Monitoring")), + body: Padding( + padding: const EdgeInsets.all(24), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text("Continuous Monitoring", style: TextStyle(fontSize: 20, fontWeight: FontWeight.bold)), + SizedBox(height: 24), + Wrap( + spacing: 16, + runSpacing: 16, + children: [ + _buildNavButton(context, "Overview", Icons.info, '/air/continuous/overview'), + _buildNavButton(context, "Entry", Icons.edit, '/air/continuous/entry'), + _buildNavButton(context, "Report", Icons.insert_chart, '/air/continuous/report'), + ], + ), + ], + ), + ), + ); + } + + Widget _buildNavButton(BuildContext context, String label, IconData icon, String route) { + return ElevatedButton.icon( + onPressed: () => Navigator.pushNamed(context, route), + icon: Icon(icon), + label: Text(label), + style: ElevatedButton.styleFrom( + padding: EdgeInsets.symmetric(horizontal: 24, vertical: 16), + backgroundColor: Colors.blue[800], + foregroundColor: Colors.white, + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/air/continuous/entry.dart b/lib/screens/air/continuous/entry.dart new file mode 100644 index 0000000..b99b980 --- /dev/null +++ b/lib/screens/air/continuous/entry.dart @@ -0,0 +1,62 @@ +import 'package:flutter/material.dart'; + +class EntryScreen extends StatefulWidget { + @override + State createState() => _EntryScreenState(); +} + +class _EntryScreenState extends State { + final _formKey = GlobalKey(); + String station = ''; + String parameter = ''; + String value = ''; + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: Text("Air Continuous Entry")), + body: Padding( + padding: const EdgeInsets.all(24), + child: Form( + key: _formKey, + child: ListView( + children: [ + Text("Enter Monitoring Data", style: TextStyle(fontSize: 18, fontWeight: FontWeight.bold)), + SizedBox(height: 24), + TextFormField( + decoration: InputDecoration(labelText: "Station"), + onChanged: (val) => station = val, + validator: (val) => val == null || val.isEmpty ? "Required" : null, + ), + SizedBox(height: 16), + TextFormField( + decoration: InputDecoration(labelText: "Parameter"), + onChanged: (val) => parameter = val, + validator: (val) => val == null || val.isEmpty ? "Required" : null, + ), + SizedBox(height: 16), + TextFormField( + decoration: InputDecoration(labelText: "Value"), + keyboardType: TextInputType.number, + onChanged: (val) => value = val, + validator: (val) => val == null || val.isEmpty ? "Required" : null, + ), + SizedBox(height: 24), + ElevatedButton( + onPressed: () { + if (_formKey.currentState!.validate()) { + // Save logic here + ScaffoldMessenger.of(context).showSnackBar( + SnackBar(content: Text("Data submitted")), + ); + } + }, + child: Text("Submit"), + ), + ], + ), + ), + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/air/continuous/overview.dart b/lib/screens/air/continuous/overview.dart new file mode 100644 index 0000000..02cd337 --- /dev/null +++ b/lib/screens/air/continuous/overview.dart @@ -0,0 +1,17 @@ +import 'package:flutter/material.dart'; + +class OverviewScreen extends StatelessWidget { + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: Text("Air Continuous Overview")), + body: Padding( + padding: const EdgeInsets.all(24), + child: Text( + "This screen provides an overview of continuous air monitoring data, including trends, summaries, and station status.", + style: TextStyle(fontSize: 16), + ), + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/air/continuous/report.dart b/lib/screens/air/continuous/report.dart new file mode 100644 index 0000000..ce3c690 --- /dev/null +++ b/lib/screens/air/continuous/report.dart @@ -0,0 +1,39 @@ +import 'package:flutter/material.dart'; + +class ReportScreen extends StatelessWidget { + final List> sampleData = [ + {"Station": "Site A", "Parameter": "PM2.5", "Value": "35"}, + {"Station": "Site B", "Parameter": "O3", "Value": "22"}, + ]; + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: Text("Air Continuous Report")), + body: Padding( + padding: const EdgeInsets.all(24), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text("Monitoring Report", style: TextStyle(fontSize: 18, fontWeight: FontWeight.bold)), + SizedBox(height: 16), + DataTable( + columns: [ + DataColumn(label: Text("Station")), + DataColumn(label: Text("Parameter")), + DataColumn(label: Text("Value")), + ], + rows: sampleData.map((data) { + return DataRow(cells: [ + DataCell(Text(data["Station"]!)), + DataCell(Text(data["Parameter"]!)), + DataCell(Text(data["Value"]!)), + ]); + }).toList(), + ), + ], + ), + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/air/investigative/air_investigative_dashboard.dart b/lib/screens/air/investigative/air_investigative_dashboard.dart new file mode 100644 index 0000000..fc39fed --- /dev/null +++ b/lib/screens/air/investigative/air_investigative_dashboard.dart @@ -0,0 +1,42 @@ +import 'package:flutter/material.dart'; + +class AirInvestigativeDashboard extends StatelessWidget { + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: Text("Air Investigative Study")), + body: Padding( + padding: const EdgeInsets.all(24), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text("Investigative Study", style: TextStyle(fontSize: 20, fontWeight: FontWeight.bold)), + SizedBox(height: 24), + Wrap( + spacing: 16, + runSpacing: 16, + children: [ + _buildNavButton(context, "Overview", Icons.info, '/air/investigative/overview'), + _buildNavButton(context, "Entry", Icons.edit, '/air/investigative/entry'), + _buildNavButton(context, "Report", Icons.insert_chart, '/air/investigative/report'), + ], + ), + ], + ), + ), + ); + } + + Widget _buildNavButton(BuildContext context, String label, IconData icon, String route) { + return ElevatedButton.icon( + onPressed: () => Navigator.pushNamed(context, route), + icon: Icon(icon), + label: Text(label), + style: ElevatedButton.styleFrom( + padding: EdgeInsets.symmetric(horizontal: 24, vertical: 16), + backgroundColor: Colors.blue[800], + foregroundColor: Colors.white, + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/air/investigative/entry.dart b/lib/screens/air/investigative/entry.dart new file mode 100644 index 0000000..ce74912 --- /dev/null +++ b/lib/screens/air/investigative/entry.dart @@ -0,0 +1,61 @@ +import 'package:flutter/material.dart'; + +class EntryScreen extends StatefulWidget { + @override + State createState() => _EntryScreenState(); +} + +class _EntryScreenState extends State { + final _formKey = GlobalKey(); + String location = ''; + String pollutant = ''; + String concentration = ''; + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: Text("Air Investigative Entry")), + body: Padding( + padding: const EdgeInsets.all(24), + child: Form( + key: _formKey, + child: ListView( + children: [ + Text("Enter Air Study Data", style: TextStyle(fontSize: 18, fontWeight: FontWeight.bold)), + SizedBox(height: 24), + TextFormField( + decoration: InputDecoration(labelText: "Location"), + onChanged: (val) => location = val, + validator: (val) => val == null || val.isEmpty ? "Required" : null, + ), + SizedBox(height: 16), + TextFormField( + decoration: InputDecoration(labelText: "Pollutant"), + onChanged: (val) => pollutant = val, + validator: (val) => val == null || val.isEmpty ? "Required" : null, + ), + SizedBox(height: 16), + TextFormField( + decoration: InputDecoration(labelText: "Concentration (µg/m³)"), + keyboardType: TextInputType.number, + onChanged: (val) => concentration = val, + validator: (val) => val == null || val.isEmpty ? "Required" : null, + ), + SizedBox(height: 24), + ElevatedButton( + onPressed: () { + if (_formKey.currentState!.validate()) { + ScaffoldMessenger.of(context).showSnackBar( + SnackBar(content: Text("Air data submitted")), + ); + } + }, + child: Text("Submit"), + ), + ], + ), + ), + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/air/investigative/overview.dart b/lib/screens/air/investigative/overview.dart new file mode 100644 index 0000000..4d28e70 --- /dev/null +++ b/lib/screens/air/investigative/overview.dart @@ -0,0 +1,17 @@ +import 'package:flutter/material.dart'; + +class OverviewScreen extends StatelessWidget { + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: Text("Air Investigative Overview")), + body: Padding( + padding: const EdgeInsets.all(24), + child: Text( + "This screen provides an overview of investigative air quality studies. These studies are conducted in response to unusual pollution events, complaints, or targeted assessments. Data may include PM levels, VOCs, and meteorological conditions.", + style: TextStyle(fontSize: 16), + ), + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/air/investigative/report.dart b/lib/screens/air/investigative/report.dart new file mode 100644 index 0000000..1ec4527 --- /dev/null +++ b/lib/screens/air/investigative/report.dart @@ -0,0 +1,39 @@ +import 'package:flutter/material.dart'; + +class ReportScreen extends StatelessWidget { + final List> sampleData = [ + {"Location": "Zone A", "Pollutant": "PM10", "Concentration": "45 µg/m³"}, + {"Location": "Zone B", "Pollutant": "VOC", "Concentration": "12 µg/m³"}, + ]; + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: Text("Air Investigative Report")), + body: Padding( + padding: const EdgeInsets.all(24), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text("Investigative Study Report", style: TextStyle(fontSize: 18, fontWeight: FontWeight.bold)), + SizedBox(height: 16), + DataTable( + columns: [ + DataColumn(label: Text("Location")), + DataColumn(label: Text("Pollutant")), + DataColumn(label: Text("Concentration")), + ], + rows: sampleData.map((data) { + return DataRow(cells: [ + DataCell(Text(data["Location"]!)), + DataCell(Text(data["Pollutant"]!)), + DataCell(Text(data["Concentration"]!)), + ]); + }).toList(), + ), + ], + ), + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/air/manual/air_manual_dashboard.dart b/lib/screens/air/manual/air_manual_dashboard.dart new file mode 100644 index 0000000..4ddf26b --- /dev/null +++ b/lib/screens/air/manual/air_manual_dashboard.dart @@ -0,0 +1,42 @@ +import 'package:flutter/material.dart'; + +class AirManualDashboard extends StatelessWidget { + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: Text("Air Manual Sampling")), + body: Padding( + padding: const EdgeInsets.all(24), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text("Manual Sampling", style: TextStyle(fontSize: 20, fontWeight: FontWeight.bold)), + SizedBox(height: 24), + Wrap( + spacing: 16, + runSpacing: 16, + children: [ + _buildNavButton(context, "Overview", Icons.info, '/air/manual/overview'), + _buildNavButton(context, "Entry", Icons.edit, '/air/manual/entry'), + _buildNavButton(context, "Report", Icons.insert_chart, '/air/manual/report'), + ], + ), + ], + ), + ), + ); + } + + Widget _buildNavButton(BuildContext context, String label, IconData icon, String route) { + return ElevatedButton.icon( + onPressed: () => Navigator.pushNamed(context, route), + icon: Icon(icon), + label: Text(label), + style: ElevatedButton.styleFrom( + padding: EdgeInsets.symmetric(horizontal: 24, vertical: 16), + backgroundColor: Colors.blue[800], + foregroundColor: Colors.white, + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/air/manual/data_status_log.dart b/lib/screens/air/manual/data_status_log.dart new file mode 100644 index 0000000..4961fae --- /dev/null +++ b/lib/screens/air/manual/data_status_log.dart @@ -0,0 +1,32 @@ +import 'package:flutter/material.dart'; + +class AirManualDataStatusLog extends StatelessWidget { + final List> logEntries = [ + {"Date": "2025-07-15", "Status": "Submitted", "User": "analyst_air"}, + {"Date": "2025-07-16", "Status": "Approved", "User": "supervisor_air"}, + ]; + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: Text("Air Manual Data Status Log")), + body: Padding( + padding: const EdgeInsets.all(24), + child: DataTable( + columns: [ + DataColumn(label: Text("Date")), + DataColumn(label: Text("Status")), + DataColumn(label: Text("User")), + ], + rows: logEntries.map((entry) { + return DataRow(cells: [ + DataCell(Text(entry["Date"]!)), + DataCell(Text(entry["Status"]!)), + DataCell(Text(entry["User"]!)), + ]); + }).toList(), + ), + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/air/manual/image_request.dart b/lib/screens/air/manual/image_request.dart new file mode 100644 index 0000000..8ea2cb1 --- /dev/null +++ b/lib/screens/air/manual/image_request.dart @@ -0,0 +1,61 @@ +import 'package:flutter/material.dart'; +import 'package:image_picker/image_picker.dart'; +import 'dart:io'; // Add this line at the top of these files + + +class AirManualImageRequest extends StatefulWidget { + @override + State createState() => _AirManualImageRequestState(); +} + +class _AirManualImageRequestState extends State { + XFile? _image; + final picker = ImagePicker(); + final _descriptionController = TextEditingController(); + + Future _pickImage() async { + final pickedFile = await picker.pickImage(source: ImageSource.camera); + setState(() => _image = pickedFile); + } + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: Text("Air Manual Image Request")), + body: Padding( + padding: const EdgeInsets.all(24), + child: Column( + children: [ + ElevatedButton.icon( + icon: Icon(Icons.camera_alt), + label: Text("Capture Image"), + onPressed: _pickImage, + ), + SizedBox(height: 16), + if (_image != null) + Image.file( + File(_image!.path), + height: 200, + ), + SizedBox(height: 16), + TextField( + controller: _descriptionController, + decoration: InputDecoration(labelText: "Description"), + maxLines: 3, + ), + SizedBox(height: 24), + ElevatedButton( + onPressed: () { + // Submit logic here + ScaffoldMessenger.of(context).showSnackBar( + SnackBar(content: Text("Image request submitted")), + ); + }, + child: Text("Submit Request"), + ), + ], + ), + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/air/manual/manual_sampling.dart b/lib/screens/air/manual/manual_sampling.dart new file mode 100644 index 0000000..2d85ce4 --- /dev/null +++ b/lib/screens/air/manual/manual_sampling.dart @@ -0,0 +1,61 @@ +import 'package:flutter/material.dart'; + +class AirManualSampling extends StatefulWidget { + @override + State createState() => _AirManualSamplingState(); +} + +class _AirManualSamplingState extends State { + final _formKey = GlobalKey(); + String station = ''; + String parameter = ''; + String value = ''; + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: Text("Air Manual Sampling")), + body: Padding( + padding: const EdgeInsets.all(24), + child: Form( + key: _formKey, + child: ListView( + children: [ + Text("Enter Sampling Data", style: TextStyle(fontSize: 18, fontWeight: FontWeight.bold)), + SizedBox(height: 24), + TextFormField( + decoration: InputDecoration(labelText: "Station"), + onChanged: (val) => station = val, + validator: (val) => val == null || val.isEmpty ? "Required" : null, + ), + SizedBox(height: 16), + TextFormField( + decoration: InputDecoration(labelText: "Parameter"), + onChanged: (val) => parameter = val, + validator: (val) => val == null || val.isEmpty ? "Required" : null, + ), + SizedBox(height: 16), + TextFormField( + decoration: InputDecoration(labelText: "Value"), + keyboardType: TextInputType.number, + onChanged: (val) => value = val, + validator: (val) => val == null || val.isEmpty ? "Required" : null, + ), + SizedBox(height: 24), + ElevatedButton( + onPressed: () { + if (_formKey.currentState!.validate()) { + ScaffoldMessenger.of(context).showSnackBar( + SnackBar(content: Text("Air sampling data submitted")), + ); + } + }, + child: Text("Submit"), + ), + ], + ), + ), + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/air/manual/report.dart b/lib/screens/air/manual/report.dart new file mode 100644 index 0000000..e3e591e --- /dev/null +++ b/lib/screens/air/manual/report.dart @@ -0,0 +1,39 @@ +import 'package:flutter/material.dart'; + +class AirManualReport extends StatelessWidget { + final List> sampleData = [ + {"Station": "Air Site A", "Parameter": "PM2.5", "Value": "42"}, + {"Station": "Air Site B", "Parameter": "SO2", "Value": "18"}, + ]; + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: Text("Air Manual Report")), + body: Padding( + padding: const EdgeInsets.all(24), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text("Manual Sampling Report", style: TextStyle(fontSize: 18, fontWeight: FontWeight.bold)), + SizedBox(height: 16), + DataTable( + columns: [ + DataColumn(label: Text("Station")), + DataColumn(label: Text("Parameter")), + DataColumn(label: Text("Value")), + ], + rows: sampleData.map((data) { + return DataRow(cells: [ + DataCell(Text(data["Station"]!)), + DataCell(Text(data["Parameter"]!)), + DataCell(Text(data["Value"]!)), + ]); + }).toList(), + ), + ], + ), + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/forgot_password.dart b/lib/screens/forgot_password.dart new file mode 100644 index 0000000..1799fad --- /dev/null +++ b/lib/screens/forgot_password.dart @@ -0,0 +1,61 @@ +import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; +import '../auth_provider.dart'; + +class ForgotPasswordScreen extends StatefulWidget { + @override + State createState() => _ForgotPasswordScreenState(); +} + +class _ForgotPasswordScreenState extends State { + final _formKey = GlobalKey(); + String email = ''; + String message = ''; + + @override + Widget build(BuildContext context) { + final auth = Provider.of(context); + + return Scaffold( + appBar: AppBar(title: Text("Forgot Password")), + body: Padding( + padding: const EdgeInsets.all(24), + child: Form( + key: _formKey, + child: ListView( + children: [ + Text("Reset Password", style: TextStyle(fontSize: 24, fontWeight: FontWeight.bold)), + SizedBox(height: 32), + TextFormField( + decoration: InputDecoration(labelText: "Email"), + keyboardType: TextInputType.emailAddress, + onChanged: (val) => email = val, + validator: (val) => val == null || val.isEmpty ? "Enter your email" : null, + ), + SizedBox(height: 24), + ElevatedButton( + onPressed: () { + if (_formKey.currentState!.validate()) { + auth.resetPassword(email); + setState(() => message = "Reset link sent to $email"); + } + }, + child: Text("Send Reset Link"), + ), + if (message.isNotEmpty) + Padding( + padding: const EdgeInsets.only(top: 12), + child: Text(message, style: TextStyle(color: Colors.green)), + ), + SizedBox(height: 24), + TextButton( + onPressed: () => Navigator.pushReplacementNamed(context, '/'), + child: Text("Back to Login"), + ), + ], + ), + ), + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/login.dart b/lib/screens/login.dart new file mode 100644 index 0000000..0663b19 --- /dev/null +++ b/lib/screens/login.dart @@ -0,0 +1,195 @@ +import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; +import 'package:connectivity_plus/connectivity_plus.dart'; + +import 'package:environment_monitoring_app/services/api_service.dart'; +import 'package:environment_monitoring_app/auth_provider.dart'; +import 'package:environment_monitoring_app/home_page.dart'; + +class LoginScreen extends StatefulWidget { + const LoginScreen({super.key}); + + @override + State createState() => _LoginScreenState(); +} + +class _LoginScreenState extends State { + final _formKey = GlobalKey(); + final TextEditingController _emailController = TextEditingController(); + final TextEditingController _passwordController = TextEditingController(); + final ApiService _apiService = ApiService(); + bool _isLoading = false; + String _errorMessage = ''; + + @override + void dispose() { + _emailController.dispose(); + _passwordController.dispose(); + super.dispose(); + } + + Future _login() async { + if (!_formKey.currentState!.validate()) { + return; + } + + setState(() { + _isLoading = true; + _errorMessage = ''; + }); + + final auth = Provider.of(context, listen: false); + + // --- Offline Check for First Login --- + if (auth.isFirstLogin) { + final connectivityResult = await Connectivity().checkConnectivity(); + if (connectivityResult == ConnectivityResult.none) { + if (!mounted) return; + setState(() { + _isLoading = false; + _errorMessage = 'An internet connection is required for the first login to sync initial data.'; + }); + _showSnackBar(_errorMessage, isError: true); + return; + } + } + + // --- API Call --- + final Map result = await _apiService.login( + _emailController.text.trim(), + _passwordController.text.trim(), + ); + + if (!mounted) return; + + if (result['success'] == true) { + // --- Update AuthProvider --- + final String token = result['data']['token']; + // CORRECTED: The API now returns a 'profile' object on login, not 'user'. + final Map profile = result['data']['profile']; + + // The login method in AuthProvider now handles setting the token, profile, + // and triggering the full data sync. + await auth.login(token, profile); + + if (auth.isFirstLogin) { + await auth.setIsFirstLogin(false); + } + + if (!mounted) return; + + // Navigate to the home screen + Navigator.of(context).pushReplacement( + MaterialPageRoute(builder: (context) => const HomePage()), + ); + + } else { + // Login failed, show error message + setState(() { + _isLoading = false; + _errorMessage = result['message'] ?? 'An unknown error occurred.'; + }); + _showSnackBar(_errorMessage, isError: true); + } + } + + void _showSnackBar(String message, {bool isError = false}) { + if (mounted) { + ScaffoldMessenger.of(context).showSnackBar( + SnackBar( + content: Text(message), + backgroundColor: isError ? Theme.of(context).colorScheme.error : null, + ), + ); + } + } + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar( + title: const Text('Login'), + centerTitle: true, + ), + body: Center( + child: SingleChildScrollView( + padding: const EdgeInsets.all(16.0), + child: Form( + key: _formKey, + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Text( + "PSTW MMS V4", + style: Theme.of(context).textTheme.headlineMedium?.copyWith( + fontWeight: FontWeight.bold, + ), + ), + const SizedBox(height: 32), + Center( + child: Image.asset( + 'assets/icon_3_512x512.png', + height: 120, + width: 120, + ), + ), + const SizedBox(height: 48), + TextFormField( + controller: _emailController, + decoration: const InputDecoration(labelText: "Email"), + keyboardType: TextInputType.emailAddress, + validator: (val) => val == null || val.isEmpty ? "Enter your email" : null, + ), + const SizedBox(height: 16), + TextFormField( + controller: _passwordController, + decoration: const InputDecoration(labelText: "Password"), + obscureText: true, + validator: (val) => val == null || val.length < 6 ? "Minimum 6 characters" : null, + ), + const SizedBox(height: 24), + _isLoading + ? const CircularProgressIndicator() + : ElevatedButton( + onPressed: _login, + style: ElevatedButton.styleFrom( + minimumSize: const Size(double.infinity, 50), + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(10), + ), + ), + child: const Text( + 'Login', + style: TextStyle(fontSize: 18), + ), + ), + if (_errorMessage.isNotEmpty) + Padding( + padding: const EdgeInsets.only(top: 12), + child: Text( + _errorMessage, + style: TextStyle(color: Theme.of(context).colorScheme.error), + textAlign: TextAlign.center, + ), + ), + const SizedBox(height: 15), + TextButton( + onPressed: () { + Navigator.pushNamed(context, '/forgot-password'); + }, + child: const Text('Forgot Password?'), + ), + TextButton( + onPressed: () { + Navigator.pushNamed(context, '/register'); + }, + child: const Text('Don\'t have an account? Register'), + ), + ], + ), + ), + ), + ), + ); + } +} diff --git a/lib/screens/logout.dart b/lib/screens/logout.dart new file mode 100644 index 0000000..e538d26 --- /dev/null +++ b/lib/screens/logout.dart @@ -0,0 +1,62 @@ +import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; +import '../auth_provider.dart'; + +class LogoutScreen extends StatelessWidget { + const LogoutScreen({super.key}); + + @override + Widget build(BuildContext context) { + final auth = Provider.of(context, listen: false); + + // Use addPostFrameCallback to ensure the dialog is shown after the widget + // has been built, preventing errors like "setState() called during build". + WidgetsBinding.instance.addPostFrameCallback((_) { + // Check if a dialog is already open to prevent multiple dialogs + // This is a simple check, more robust solutions might involve a state variable + // if this screen could be rebuilt frequently without navigation. + if (Navigator.of(context).canPop() && ModalRoute.of(context)?.isCurrent == true) { + showDialog( + context: context, + barrierDismissible: false, // User must choose an action (Cancel/Logout) + builder: (dialogContext) => AlertDialog( + title: const Text("Are you sure?"), + content: const Text("Do you really want to log out?"), + actions: [ + TextButton( + onPressed: () { + Navigator.pop(dialogContext); // Close dialog + // Go back to the previous screen if user cancels logout + Navigator.pop(context); + }, + child: const Text("Cancel"), + ), + ElevatedButton( + onPressed: () { + Navigator.pop(dialogContext); // Close dialog + auth.logout(); + // Navigate to login screen and remove all routes below it + Navigator.pushNamedAndRemoveUntil(context, '/', (route) => false); + }, + style: ElevatedButton.styleFrom( + backgroundColor: Colors.red[700], + foregroundColor: Colors.white, + ), + child: const Text("Logout"), + ), + ], + ), + ); + } + }); + + // The LogoutScreen itself can be an empty Scaffold, as its primary + // purpose is to trigger the dialog immediately upon navigation. + return Scaffold( + appBar: AppBar(title: const Text("Logout")), + body: const Center( + child: CircularProgressIndicator(), // Show a loading indicator briefly + ), + ); + } +} diff --git a/lib/screens/marine/continuous/entry.dart b/lib/screens/marine/continuous/entry.dart new file mode 100644 index 0000000..439b385 --- /dev/null +++ b/lib/screens/marine/continuous/entry.dart @@ -0,0 +1,61 @@ +import 'package:flutter/material.dart'; + +class EntryScreen extends StatefulWidget { + @override + State createState() => _EntryScreenState(); +} + +class _EntryScreenState extends State { + final _formKey = GlobalKey(); + String station = ''; + String parameter = ''; + String value = ''; + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: Text("Marine Continuous Entry")), + body: Padding( + padding: const EdgeInsets.all(24), + child: Form( + key: _formKey, + child: ListView( + children: [ + Text("Enter Monitoring Data", style: TextStyle(fontSize: 18, fontWeight: FontWeight.bold)), + SizedBox(height: 24), + TextFormField( + decoration: InputDecoration(labelText: "Station"), + onChanged: (val) => station = val, + validator: (val) => val == null || val.isEmpty ? "Required" : null, + ), + SizedBox(height: 16), + TextFormField( + decoration: InputDecoration(labelText: "Parameter"), + onChanged: (val) => parameter = val, + validator: (val) => val == null || val.isEmpty ? "Required" : null, + ), + SizedBox(height: 16), + TextFormField( + decoration: InputDecoration(labelText: "Value"), + keyboardType: TextInputType.number, + onChanged: (val) => value = val, + validator: (val) => val == null || val.isEmpty ? "Required" : null, + ), + SizedBox(height: 24), + ElevatedButton( + onPressed: () { + if (_formKey.currentState!.validate()) { + ScaffoldMessenger.of(context).showSnackBar( + SnackBar(content: Text("Data submitted")), + ); + } + }, + child: Text("Submit"), + ), + ], + ), + ), + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/marine/continuous/marine_continuous_dashboard.dart b/lib/screens/marine/continuous/marine_continuous_dashboard.dart new file mode 100644 index 0000000..873ee09 --- /dev/null +++ b/lib/screens/marine/continuous/marine_continuous_dashboard.dart @@ -0,0 +1,42 @@ +import 'package:flutter/material.dart'; + +class MarineContinuousDashboard extends StatelessWidget { + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: Text("Marine Continuous Monitoring")), + body: Padding( + padding: const EdgeInsets.all(24), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text("Continuous Monitoring", style: TextStyle(fontSize: 20, fontWeight: FontWeight.bold)), + SizedBox(height: 24), + Wrap( + spacing: 16, + runSpacing: 16, + children: [ + _buildNavButton(context, "Overview", Icons.info, '/marine/continuous/overview'), + _buildNavButton(context, "Entry", Icons.edit, '/marine/continuous/entry'), + _buildNavButton(context, "Report", Icons.insert_chart, '/marine/continuous/report'), + ], + ), + ], + ), + ), + ); + } + + Widget _buildNavButton(BuildContext context, String label, IconData icon, String route) { + return ElevatedButton.icon( + onPressed: () => Navigator.pushNamed(context, route), + icon: Icon(icon), + label: Text(label), + style: ElevatedButton.styleFrom( + padding: EdgeInsets.symmetric(horizontal: 24, vertical: 16), + backgroundColor: Colors.blue[800], + foregroundColor: Colors.white, + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/marine/continuous/overview.dart b/lib/screens/marine/continuous/overview.dart new file mode 100644 index 0000000..9bb23e5 --- /dev/null +++ b/lib/screens/marine/continuous/overview.dart @@ -0,0 +1,17 @@ +import 'package:flutter/material.dart'; + +class OverviewScreen extends StatelessWidget { + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: Text("Marine Continuous Overview")), + body: Padding( + padding: const EdgeInsets.all(24), + child: Text( + "This screen provides an overview of continuous marine monitoring data, including salinity, turbidity, and station status.", + style: TextStyle(fontSize: 16), + ), + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/marine/continuous/report.dart b/lib/screens/marine/continuous/report.dart new file mode 100644 index 0000000..6135677 --- /dev/null +++ b/lib/screens/marine/continuous/report.dart @@ -0,0 +1,39 @@ +import 'package:flutter/material.dart'; + +class ReportScreen extends StatelessWidget { + final List> sampleData = [ + {"Station": "Marine Site A", "Parameter": "Salinity", "Value": "35 PSU"}, + {"Station": "Marine Site B", "Parameter": "Turbidity", "Value": "4 NTU"}, + ]; + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: Text("Marine Continuous Report")), + body: Padding( + padding: const EdgeInsets.all(24), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text("Monitoring Report", style: TextStyle(fontSize: 18, fontWeight: FontWeight.bold)), + SizedBox(height: 16), + DataTable( + columns: [ + DataColumn(label: Text("Station")), + DataColumn(label: Text("Parameter")), + DataColumn(label: Text("Value")), + ], + rows: sampleData.map((data) { + return DataRow(cells: [ + DataCell(Text(data["Station"]!)), + DataCell(Text(data["Parameter"]!)), + DataCell(Text(data["Value"]!)), + ]); + }).toList(), + ), + ], + ), + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/marine/investigative/entry.dart b/lib/screens/marine/investigative/entry.dart new file mode 100644 index 0000000..cc73fda --- /dev/null +++ b/lib/screens/marine/investigative/entry.dart @@ -0,0 +1,60 @@ +import 'package:flutter/material.dart'; + +class EntryScreen extends StatefulWidget { + @override + State createState() => _EntryScreenState(); +} + +class _EntryScreenState extends State { + final _formKey = GlobalKey(); + String zone = ''; + String observation = ''; + String severity = ''; + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: Text("Marine Investigative Entry")), + body: Padding( + padding: const EdgeInsets.all(24), + child: Form( + key: _formKey, + child: ListView( + children: [ + Text("Enter Marine Study Data", style: TextStyle(fontSize: 18, fontWeight: FontWeight.bold)), + SizedBox(height: 24), + TextFormField( + decoration: InputDecoration(labelText: "Zone"), + onChanged: (val) => zone = val, + validator: (val) => val == null || val.isEmpty ? "Required" : null, + ), + SizedBox(height: 16), + TextFormField( + decoration: InputDecoration(labelText: "Observation"), + onChanged: (val) => observation = val, + validator: (val) => val == null || val.isEmpty ? "Required" : null, + ), + SizedBox(height: 16), + TextFormField( + decoration: InputDecoration(labelText: "Severity Level"), + onChanged: (val) => severity = val, + validator: (val) => val == null || val.isEmpty ? "Required" : null, + ), + SizedBox(height: 24), + ElevatedButton( + onPressed: () { + if (_formKey.currentState!.validate()) { + ScaffoldMessenger.of(context).showSnackBar( + SnackBar(content: Text("Marine data submitted")), + ); + } + }, + child: Text("Submit"), + ), + ], + ), + ), + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/marine/investigative/marine_investigative_dashboard.dart b/lib/screens/marine/investigative/marine_investigative_dashboard.dart new file mode 100644 index 0000000..80516ab --- /dev/null +++ b/lib/screens/marine/investigative/marine_investigative_dashboard.dart @@ -0,0 +1,42 @@ +import 'package:flutter/material.dart'; + +class MarineInvestigativeDashboard extends StatelessWidget { + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: Text("Marine Investigative Study")), + body: Padding( + padding: const EdgeInsets.all(24), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text("Investigative Study", style: TextStyle(fontSize: 20, fontWeight: FontWeight.bold)), + SizedBox(height: 24), + Wrap( + spacing: 16, + runSpacing: 16, + children: [ + _buildNavButton(context, "Overview", Icons.info, '/marine/investigative/overview'), + _buildNavButton(context, "Entry", Icons.edit, '/marine/investigative/entry'), + _buildNavButton(context, "Report", Icons.insert_chart, '/marine/investigative/report'), + ], + ), + ], + ), + ), + ); + } + + Widget _buildNavButton(BuildContext context, String label, IconData icon, String route) { + return ElevatedButton.icon( + onPressed: () => Navigator.pushNamed(context, route), + icon: Icon(icon), + label: Text(label), + style: ElevatedButton.styleFrom( + padding: EdgeInsets.symmetric(horizontal: 24, vertical: 16), + backgroundColor: Colors.blue[800], + foregroundColor: Colors.white, + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/marine/investigative/overview.dart b/lib/screens/marine/investigative/overview.dart new file mode 100644 index 0000000..b2e6074 --- /dev/null +++ b/lib/screens/marine/investigative/overview.dart @@ -0,0 +1,17 @@ +import 'package:flutter/material.dart'; + +class OverviewScreen extends StatelessWidget { + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: Text("Marine Investigative Overview")), + body: Padding( + padding: const EdgeInsets.all(24), + child: Text( + "This screen provides an overview of investigative marine studies. These are conducted to assess oil spills, tarball sightings, or unusual biological activity. Data may include salinity, turbidity, hydrocarbon levels, and visual observations.", + style: TextStyle(fontSize: 16), + ), + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/marine/investigative/report.dart b/lib/screens/marine/investigative/report.dart new file mode 100644 index 0000000..55de68a --- /dev/null +++ b/lib/screens/marine/investigative/report.dart @@ -0,0 +1,39 @@ +import 'package:flutter/material.dart'; + +class ReportScreen extends StatelessWidget { + final List> sampleData = [ + {"Zone": "Coast A", "Observation": "Oil sheen", "Severity": "High"}, + {"Zone": "Coast B", "Observation": "Tarball", "Severity": "Moderate"}, + ]; + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: Text("Marine Investigative Report")), + body: Padding( + padding: const EdgeInsets.all(24), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text("Investigative Study Report", style: TextStyle(fontSize: 18, fontWeight: FontWeight.bold)), + SizedBox(height: 16), + DataTable( + columns: [ + DataColumn(label: Text("Zone")), + DataColumn(label: Text("Observation")), + DataColumn(label: Text("Severity")), + ], + rows: sampleData.map((data) { + return DataRow(cells: [ + DataCell(Text(data["Zone"]!)), + DataCell(Text(data["Observation"]!)), + DataCell(Text(data["Severity"]!)), + ]); + }).toList(), + ), + ], + ), + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/marine/manual/data_status_log.dart b/lib/screens/marine/manual/data_status_log.dart new file mode 100644 index 0000000..45c81a9 --- /dev/null +++ b/lib/screens/marine/manual/data_status_log.dart @@ -0,0 +1,407 @@ +import 'dart:io'; +import 'package:flutter/material.dart'; +import 'package:intl/intl.dart'; +import 'package:environment_monitoring_app/models/tarball_data.dart'; +import 'package:environment_monitoring_app/models/in_situ_sampling_data.dart'; // Import In-Situ model +import 'package:environment_monitoring_app/services/local_storage_service.dart'; +import 'package:environment_monitoring_app/services/marine_api_service.dart'; + +// A unified model to represent any type of submission log entry. +class SubmissionLogEntry { + final String type; // e.g., 'tarball', 'in-situ' + final String title; + final String stationCode; + final DateTime submissionDateTime; + final String? reportId; + final String status; + final String message; + final Map rawData; + bool isResubmitting; + + SubmissionLogEntry({ + required this.type, + required this.title, + required this.stationCode, + required this.submissionDateTime, + this.reportId, + required this.status, + required this.message, + required this.rawData, + this.isResubmitting = false, + }); +} + +class MarineManualDataStatusLog extends StatefulWidget { + const MarineManualDataStatusLog({super.key}); + + @override + State createState() => _MarineManualDataStatusLogState(); +} + +class _MarineManualDataStatusLogState extends State { + final LocalStorageService _localStorageService = LocalStorageService(); + final MarineApiService _marineApiService = MarineApiService(); + + Map> _groupedLogs = {}; + Map> _filteredLogs = {}; + final Map _isCategoryExpanded = {}; + + bool _isLoading = true; + final TextEditingController _searchController = TextEditingController(); + + @override + void initState() { + super.initState(); + _loadAllLogs(); + _searchController.addListener(_filterLogs); + } + + @override + void dispose() { + _searchController.dispose(); + super.dispose(); + } + + /// Loads logs from all available modules (Tarball, In-Situ, etc.) + Future _loadAllLogs() async { + setState(() => _isLoading = true); + + // --- Fetch logs for all types --- + final tarballLogs = await _localStorageService.getAllTarballLogs(); + final inSituLogs = await _localStorageService.getAllInSituLogs(); + + final Map> tempGroupedLogs = {}; + + // Map tarball logs (Unchanged) + final List tarballEntries = []; + for (var log in tarballLogs) { + tarballEntries.add(SubmissionLogEntry( + type: 'Tarball Sampling', + title: log['selectedStation']?['tbl_station_name'] ?? 'Unknown Station', + stationCode: log['selectedStation']?['tbl_station_code'] ?? 'N/A', + submissionDateTime: DateTime.tryParse('${log['sampling_date']} ${log['sampling_time']}') ?? DateTime.now(), + reportId: log['reportId']?.toString(), + status: log['submissionStatus'] ?? 'L1', + message: log['submissionMessage'] ?? 'No status message.', + rawData: log, + )); + } + if (tarballEntries.isNotEmpty) { + tarballEntries.sort((a, b) => b.submissionDateTime.compareTo(a.submissionDateTime)); + tempGroupedLogs['Tarball Sampling'] = tarballEntries; + } + + // --- Map In-Situ logs --- + final List inSituEntries = []; + for (var log in inSituLogs) { + // REPAIRED: Use the correct date/time keys for In-Situ data. + final String dateStr = log['data_capture_date'] ?? log['sampling_date'] ?? ''; + final String timeStr = log['data_capture_time'] ?? log['sampling_time'] ?? ''; + + inSituEntries.add(SubmissionLogEntry( + type: 'In-Situ Sampling', + title: log['selectedStation']?['man_station_name'] ?? 'Unknown Station', + stationCode: log['selectedStation']?['man_station_code'] ?? 'N/A', + submissionDateTime: DateTime.tryParse('$dateStr $timeStr') ?? DateTime.now(), + reportId: log['reportId']?.toString(), + status: log['submissionStatus'] ?? 'L1', + message: log['submissionMessage'] ?? 'No status message.', + rawData: log, + )); + } + if (inSituEntries.isNotEmpty) { + inSituEntries.sort((a, b) => b.submissionDateTime.compareTo(a.submissionDateTime)); + tempGroupedLogs['In-Situ Sampling'] = inSituEntries; + } + // --- END of In-Situ mapping --- + + if (mounted) { + setState(() { + _groupedLogs = tempGroupedLogs; + _filteredLogs = tempGroupedLogs; + _isLoading = false; + }); + } + } + + void _filterLogs() { + final query = _searchController.text.toLowerCase(); + final Map> tempFiltered = {}; + + _groupedLogs.forEach((category, logs) { + final filtered = logs.where((log) { + return log.title.toLowerCase().contains(query) || + log.stationCode.toLowerCase().contains(query) || + (log.reportId?.toLowerCase() ?? '').contains(query); + }).toList(); + + if (filtered.isNotEmpty) { + tempFiltered[category] = filtered; + } + }); + + setState(() { + _filteredLogs = tempFiltered; + }); + } + + /// Main router for resubmitting data based on its type. + Future _resubmitData(SubmissionLogEntry log) async { + setState(() => log.isResubmitting = true); + + switch (log.type) { + case 'Tarball Sampling': + await _resubmitTarballData(log); + break; + case 'In-Situ Sampling': + await _resubmitInSituData(log); + break; + default: + if (mounted) { + ScaffoldMessenger.of(context).showSnackBar( + SnackBar(content: Text("Resubmission for '${log.type}' is not implemented."), backgroundColor: Colors.orange), + ); + setState(() => log.isResubmitting = false); + } + } + } + + /// Handles resubmission for Tarball data. (Unchanged) + Future _resubmitTarballData(SubmissionLogEntry log) async { + final logData = log.rawData; + + final int? firstSamplerId = int.tryParse(logData['first_sampler_user_id']?.toString() ?? ''); + final int? classificationId = int.tryParse(logData['classification_id']?.toString() ?? ''); + + final TarballSamplingData dataToResubmit = TarballSamplingData() + ..selectedStation = logData['selectedStation'] + ..samplingDate = logData['sampling_date'] + ..samplingTime = logData['sampling_time'] + ..firstSamplerUserId = firstSamplerId + ..secondSampler = logData['secondSampler'] + ..classificationId = classificationId + ..currentLatitude = logData['current_latitude']?.toString() + ..currentLongitude = logData['current_longitude']?.toString() + ..distanceDifference = logData['distance_difference'] + ..optionalRemark1 = logData['optional_photo_remark_01'] + ..optionalRemark2 = logData['optional_photo_remark_02'] + ..optionalRemark3 = logData['optional_photo_remark_03'] + ..optionalRemark4 = logData['optional_photo_remark_04']; + + final Map imageFiles = {}; + final imageKeys = ['left_side_coastal_view', 'right_side_coastal_view', 'drawing_vertical_lines', 'drawing_horizontal_line', 'optional_photo_01', 'optional_photo_02', 'optional_photo_03', 'optional_photo_04']; + for (var key in imageKeys) { + final imagePath = logData[key]; + if (imagePath != null && imagePath.isNotEmpty) { + final file = File(imagePath); + if (await file.exists()) imageFiles[key] = file; + } + } + + final result = await _marineApiService.submitTarballSample(formData: dataToResubmit.toFormData(), imageFiles: imageFiles); + + logData['submissionStatus'] = result['status']; + logData['submissionMessage'] = result['message']; + logData['reportId'] = result['reportId']?.toString() ?? logData['reportId']; + await _localStorageService.updateTarballLog(logData); + + if (mounted) await _loadAllLogs(); + } + + /// Handles resubmission for In-Situ data. (Unchanged) + Future _resubmitInSituData(SubmissionLogEntry log) async { + final logData = log.rawData; + + // Reconstruct the InSituSamplingData object from the raw map + final InSituSamplingData dataToResubmit = InSituSamplingData() + ..firstSamplerUserId = int.tryParse(logData['first_sampler_user_id']?.toString() ?? '') + ..secondSampler = logData['secondSampler'] + ..samplingDate = logData['sampling_date'] + ..samplingTime = logData['sampling_time'] + ..samplingType = logData['sampling_type'] + ..sampleIdCode = logData['sample_id_code'] + ..selectedStation = logData['selectedStation'] + ..currentLatitude = logData['current_latitude']?.toString() + ..currentLongitude = logData['current_longitude']?.toString() + ..distanceDifferenceInKm = double.tryParse(logData['distance_difference']?.toString() ?? '0.0') + ..weather = logData['weather'] + ..tideLevel = logData['tide_level'] + ..seaCondition = logData['sea_condition'] + ..eventRemarks = logData['event_remarks'] + ..labRemarks = logData['lab_remarks'] + ..optionalRemark1 = logData['optional_photo_remark_1'] + ..optionalRemark2 = logData['optional_photo_remark_2'] + ..optionalRemark3 = logData['optional_photo_remark_3'] + ..optionalRemark4 = logData['optional_photo_remark_4'] + ..sondeId = logData['sonde_id'] + ..dataCaptureDate = logData['data_capture_date'] + ..dataCaptureTime = logData['data_capture_time'] + ..oxygenConcentration = double.tryParse(logData['oxygen_concentration_mg_l']?.toString() ?? '0.0') + ..oxygenSaturation = double.tryParse(logData['oxygen_saturation_percent']?.toString() ?? '0.0') + ..ph = double.tryParse(logData['ph']?.toString() ?? '0.0') + ..salinity = double.tryParse(logData['salinity_ppt']?.toString() ?? '0.0') + ..electricalConductivity = double.tryParse(logData['ec_us_cm']?.toString() ?? '0.0') + ..temperature = double.tryParse(logData['temperature_c']?.toString() ?? '0.0') + ..tds = double.tryParse(logData['tds_mg_l']?.toString() ?? '0.0') + ..turbidity = double.tryParse(logData['turbidity_ntu']?.toString() ?? '0.0') + ..tss = double.tryParse(logData['tss_mg_l']?.toString() ?? '0.0') + ..batteryVoltage = double.tryParse(logData['battery_v']?.toString() ?? '0.0'); + + // Reconstruct image files + final Map imageFiles = {}; + // Use the keys from the model to ensure consistency + final imageKeys = dataToResubmit.toApiImageFiles().keys; + for (var key in imageKeys) { + final imagePath = logData[key]; + if (imagePath is String && imagePath.isNotEmpty) { + final file = File(imagePath); + if (await file.exists()) { + imageFiles[key] = file; + } + } + } + + // Submit the data via the API service + final result = await _marineApiService.submitInSituSample( + formData: dataToResubmit.toApiFormData(), + imageFiles: imageFiles, + ); + + // Update the local log file with the new submission status + logData['submissionStatus'] = result['status']; + logData['submissionMessage'] = result['message']; + logData['reportId'] = result['reportId']?.toString() ?? logData['reportId']; + + // Use the correct update method for In-Situ logs + await _localStorageService.updateInSituLog(logData); + + // Reload logs to refresh the UI + if (mounted) await _loadAllLogs(); + } + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: const Text('Marine Manual Data Status Log')), + body: Column( + children: [ + Padding( + padding: const EdgeInsets.all(8.0), + child: TextField( + controller: _searchController, + decoration: InputDecoration( + labelText: 'Search Logs...', + prefixIcon: const Icon(Icons.search), + border: OutlineInputBorder(borderRadius: BorderRadius.circular(12.0)), + ), + ), + ), + Expanded( + child: _isLoading + ? const Center(child: CircularProgressIndicator()) + : RefreshIndicator( + onRefresh: _loadAllLogs, + child: _filteredLogs.isEmpty + ? Center(child: Text(_groupedLogs.isEmpty ? 'No submission logs found.' : 'No logs match your search.')) + : ListView( + children: _filteredLogs.entries.map((entry) { + return _buildCategorySection(entry.key, entry.value); + }).toList(), + ), + ), + ), + ], + ), + ); + } + + Widget _buildCategorySection(String category, List logs) { + final bool isExpanded = _isCategoryExpanded[category] ?? false; + final int itemCount = isExpanded ? logs.length : (logs.length > 5 ? 5 : logs.length); + + return Card( + margin: const EdgeInsets.symmetric(horizontal: 8.0, vertical: 6.0), + child: Padding( + padding: const EdgeInsets.all(8.0), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text(category, style: Theme.of(context).textTheme.titleLarge?.copyWith(fontWeight: FontWeight.bold)), + const Divider(), + ListView.builder( + shrinkWrap: true, + physics: const NeverScrollableScrollPhysics(), + itemCount: itemCount, + itemBuilder: (context, index) { + return _buildLogListItem(logs[index]); + }, + ), + if (logs.length > 5) + TextButton( + onPressed: () { + setState(() { + _isCategoryExpanded[category] = !isExpanded; + }); + }, + child: Text(isExpanded ? 'Show Less' : 'Show More (${logs.length - 5} more)'), + ), + ], + ), + ), + ); + } + + Widget _buildLogListItem(SubmissionLogEntry log) { + final isFailed = log.status != 'L3'; + final title = '${log.title} (${log.stationCode})'; + final subtitle = DateFormat('yyyy-MM-dd HH:mm').format(log.submissionDateTime); + + return ExpansionTile( + leading: Icon( + isFailed ? Icons.error_outline : Icons.check_circle_outline, + color: isFailed ? Colors.red : Colors.green, + ), + title: Text(title, style: const TextStyle(fontWeight: FontWeight.w500)), + subtitle: Text(subtitle), + trailing: isFailed + ? (log.isResubmitting + ? const SizedBox( + height: 24, + width: 24, + child: CircularProgressIndicator(strokeWidth: 3), + ) + : IconButton( + icon: const Icon(Icons.sync, color: Colors.blue), + tooltip: 'Resubmit', + onPressed: () => _resubmitData(log), + )) + : null, + children: [ + Padding( + padding: const EdgeInsets.symmetric(horizontal: 16.0, vertical: 8.0), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + _buildDetailRow('Report ID:', log.reportId ?? 'N/A'), + _buildDetailRow('Status:', log.message), + _buildDetailRow('Submission Type:', log.type), + ], + ), + ) + ], + ); + } + + Widget _buildDetailRow(String label, String value) { + return Padding( + padding: const EdgeInsets.symmetric(vertical: 2.0), + child: Row( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text('$label ', style: const TextStyle(fontWeight: FontWeight.bold)), + Expanded(child: Text(value)), + ], + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/marine/manual/image_request.dart b/lib/screens/marine/manual/image_request.dart new file mode 100644 index 0000000..30073ae --- /dev/null +++ b/lib/screens/marine/manual/image_request.dart @@ -0,0 +1,61 @@ +import 'package:flutter/material.dart'; +import 'package:image_picker/image_picker.dart'; +import 'dart:io'; // Add this line at the top of these files + + +class MarineManualImageRequest extends StatefulWidget { + @override + State createState() => _MarineManualImageRequestState(); +} + +class _MarineManualImageRequestState extends State { + XFile? _image; + final picker = ImagePicker(); + final _descriptionController = TextEditingController(); + + Future _pickImage() async { + final pickedFile = await picker.pickImage(source: ImageSource.camera); + setState(() => _image = pickedFile); + } + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: Text("Marine Manual Image Request")), + body: Padding( + padding: const EdgeInsets.all(24), + child: Column( + children: [ + ElevatedButton.icon( + icon: Icon(Icons.camera_alt), + label: Text("Capture Image"), + onPressed: _pickImage, + ), + SizedBox(height: 16), + if (_image != null) + Image.file( + File(_image!.path), + height: 200, + ), + SizedBox(height: 16), + TextField( + controller: _descriptionController, + decoration: InputDecoration(labelText: "Description"), + maxLines: 3, + ), + SizedBox(height: 24), + ElevatedButton( + onPressed: () { + // Submit logic here + ScaffoldMessenger.of(context).showSnackBar( + SnackBar(content: Text("Image request submitted")), + ); + }, + child: Text("Submit Request"), + ), + ], + ), + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/marine/manual/in_situ_sampling.dart b/lib/screens/marine/manual/in_situ_sampling.dart new file mode 100644 index 0000000..9eb8074 --- /dev/null +++ b/lib/screens/marine/manual/in_situ_sampling.dart @@ -0,0 +1,149 @@ +import 'package:flutter/material.dart'; +import 'package:intl/intl.dart'; // ADDED: Import for date formatting +import 'package:provider/provider.dart'; + +import '../../../models/in_situ_sampling_data.dart'; +import '../../../services/in_situ_sampling_service.dart'; +import '../../../services/local_storage_service.dart'; +import 'widgets/in_situ_step_1_sampling_info.dart'; +import 'widgets/in_situ_step_2_site_info.dart'; +import 'widgets/in_situ_step_3_data_capture.dart'; +import 'widgets/in_situ_step_4_summary.dart'; + +/// The main screen for the In-Situ Sampling feature. +/// This stateful widget orchestrates the multi-step process using a PageView. +/// It manages the overall data model and the service layer for the entire workflow. +class MarineInSituSampling extends StatefulWidget { + const MarineInSituSampling({super.key}); + + @override + State createState() => _MarineInSituSamplingState(); +} + +class _MarineInSituSamplingState extends State { + final PageController _pageController = PageController(); + + // REPAIRED: Changed from `final` to `late` to allow re-initialization. + late InSituSamplingData _data; + + // A single instance of the service to be used by all child widgets. + final InSituSamplingService _samplingService = InSituSamplingService(); + + // Service for saving submission logs locally. + final LocalStorageService _localStorageService = LocalStorageService(); + + int _currentPage = 0; + bool _isLoading = false; + + // ADDED: initState to create a fresh data object each time the widget is created. + @override + void initState() { + super.initState(); + // This is the core of the fix. It creates a NEW data object with the + // CURRENT date and time every time the user starts a new sampling. + _data = InSituSamplingData( + samplingDate: DateFormat('yyyy-MM-dd').format(DateTime.now()), + samplingTime: DateFormat('HH:mm:ss').format(DateTime.now()), + ); + } + + @override + void dispose() { + _pageController.dispose(); + // Dispose the service to clean up its resources (e.g., stream controllers). + _samplingService.dispose(); + super.dispose(); + } + + /// Navigates to the next page in the form. + void _nextPage() { + if (_currentPage < 3) { + _pageController.nextPage( + duration: const Duration(milliseconds: 300), + curve: Curves.easeInOut, + ); + } + } + + /// Navigates to the previous page in the form. + void _previousPage() { + if (_currentPage > 0) { + _pageController.previousPage( + duration: const Duration(milliseconds: 300), + curve: Curves.easeInOut, + ); + } + } + + /// Handles the final submission process. + Future _submitForm() async { + setState(() => _isLoading = true); + + // Use the service to submit the data. + final result = await _samplingService.submitData(_data); + + if (!mounted) return; + + // Update the data model with the submission result. + _data.submissionStatus = result['status']; + _data.submissionMessage = result['message']; + _data.reportId = result['reportId']?.toString(); + + // Save a log of the submission locally. + await _localStorageService.saveInSituSamplingData(_data); + + setState(() => _isLoading = false); + + // Show feedback to the user based on the result. + final message = result['message'] ?? 'An unknown error occurred.'; + final color = (result['status'] == 'L3') + ? Colors.green + : (result['status'] == 'L2' ? Colors.orange : Colors.red); + + ScaffoldMessenger.of(context).showSnackBar( + SnackBar(content: Text(message), backgroundColor: color, duration: const Duration(seconds: 4)), + ); + + // If submission was fully successful, navigate back to the home screen. + if (result['status'] == 'L3') { + Navigator.of(context).popUntil((route) => route.isFirst); + } + } + + @override + Widget build(BuildContext context) { + // Use Provider.value to provide the existing service instance to all child widgets. + return Provider.value( + value: _samplingService, + child: Scaffold( + appBar: AppBar( + title: Text('In-Situ Sampling (${_currentPage + 1}/4)'), + // Show a back button on all pages except the first one. + leading: _currentPage > 0 + ? IconButton( + icon: const Icon(Icons.arrow_back), + onPressed: _previousPage, + ) + : null, + ), + body: PageView( + controller: _pageController, + // Disable manual swiping between pages. + physics: const NeverScrollableScrollPhysics(), + onPageChanged: (page) { + setState(() { + _currentPage = page; + }); + }, + children: [ + // Each step is a separate widget, receiving the data model and navigation callbacks. + InSituStep1SamplingInfo(data: _data, onNext: _nextPage), + InSituStep2SiteInfo(data: _data, onNext: _nextPage), + InSituStep3DataCapture(data: _data, onNext: _nextPage), + InSituStep4Summary(data: _data, onSubmit: _submitForm, isLoading: _isLoading), + ], + ), + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/marine/manual/info_centre_document.dart b/lib/screens/marine/manual/info_centre_document.dart new file mode 100644 index 0000000..e42df24 --- /dev/null +++ b/lib/screens/marine/manual/info_centre_document.dart @@ -0,0 +1,58 @@ +import 'package:flutter/material.dart'; +import 'package:file_picker/file_picker.dart'; + +class MarineInfoCentreDocument extends StatefulWidget { + @override + State createState() => _MarineInfoCentreDocumentState(); +} + +class _MarineInfoCentreDocumentState extends State { + String? selectedFileName; + + Future _pickDocument() async { + final result = await FilePicker.platform.pickFiles(); + if (result != null && result.files.isNotEmpty) { + setState(() => selectedFileName = result.files.first.name); + ScaffoldMessenger.of(context).showSnackBar( + SnackBar(content: Text("Document '${result.files.first.name}' selected")), + ); + } + } + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: Text("Marine Info Centre Document")), + body: Padding( + padding: const EdgeInsets.all(24), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text("Upload or View Reference Documents", style: TextStyle(fontSize: 18, fontWeight: FontWeight.bold)), + SizedBox(height: 24), + ElevatedButton.icon( + icon: Icon(Icons.upload_file), + label: Text("Select Document"), + onPressed: _pickDocument, + ), + SizedBox(height: 16), + if (selectedFileName != null) + Text("Selected: $selectedFileName", style: TextStyle(fontSize: 16)), + SizedBox(height: 24), + ElevatedButton( + onPressed: selectedFileName != null + ? () { + // Submit logic here + ScaffoldMessenger.of(context).showSnackBar( + SnackBar(content: Text("Document submitted")), + ); + } + : null, + child: Text("Submit Document"), + ), + ], + ), + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/marine/manual/marine_manual_dashboard.dart b/lib/screens/marine/manual/marine_manual_dashboard.dart new file mode 100644 index 0000000..2602da3 --- /dev/null +++ b/lib/screens/marine/manual/marine_manual_dashboard.dart @@ -0,0 +1,42 @@ +import 'package:flutter/material.dart'; + +class MarineManualDashboard extends StatelessWidget { + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: Text("Marine Manual Sampling")), + body: Padding( + padding: const EdgeInsets.all(24), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text("Manual Sampling", style: TextStyle(fontSize: 20, fontWeight: FontWeight.bold)), + SizedBox(height: 24), + Wrap( + spacing: 16, + runSpacing: 16, + children: [ + _buildNavButton(context, "Overview", Icons.info, '/marine/manual/overview'), + _buildNavButton(context, "Entry", Icons.edit, '/marine/manual/entry'), + _buildNavButton(context, "Report", Icons.insert_chart, '/marine/manual/report'), + ], + ), + ], + ), + ), + ); + } + + Widget _buildNavButton(BuildContext context, String label, IconData icon, String route) { + return ElevatedButton.icon( + onPressed: () => Navigator.pushNamed(context, route), + icon: Icon(icon), + label: Text(label), + style: ElevatedButton.styleFrom( + padding: EdgeInsets.symmetric(horizontal: 24, vertical: 16), + backgroundColor: Colors.blue[800], + foregroundColor: Colors.white, + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/marine/manual/pre_sampling.dart b/lib/screens/marine/manual/pre_sampling.dart new file mode 100644 index 0000000..e11552c --- /dev/null +++ b/lib/screens/marine/manual/pre_sampling.dart @@ -0,0 +1,60 @@ +import 'package:flutter/material.dart'; + +class MarinePreSampling extends StatefulWidget { + @override + State createState() => _MarinePreSamplingState(); +} + +class _MarinePreSamplingState extends State { + final _formKey = GlobalKey(); + String site = ''; + String weather = ''; + String tide = ''; + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: Text("Marine Pre-Sampling")), + body: Padding( + padding: const EdgeInsets.all(24), + child: Form( + key: _formKey, + child: ListView( + children: [ + Text("Enter Pre-Sampling Conditions", style: TextStyle(fontSize: 18, fontWeight: FontWeight.bold)), + SizedBox(height: 24), + TextFormField( + decoration: InputDecoration(labelText: "Site"), + onChanged: (val) => site = val, + validator: (val) => val == null || val.isEmpty ? "Required" : null, + ), + SizedBox(height: 16), + TextFormField( + decoration: InputDecoration(labelText: "Weather"), + onChanged: (val) => weather = val, + validator: (val) => val == null || val.isEmpty ? "Required" : null, + ), + SizedBox(height: 16), + TextFormField( + decoration: InputDecoration(labelText: "Tide Condition"), + onChanged: (val) => tide = val, + validator: (val) => val == null || val.isEmpty ? "Required" : null, + ), + SizedBox(height: 24), + ElevatedButton( + onPressed: () { + if (_formKey.currentState!.validate()) { + ScaffoldMessenger.of(context).showSnackBar( + SnackBar(content: Text("Pre-sampling data submitted")), + ); + } + }, + child: Text("Submit"), + ), + ], + ), + ), + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/marine/manual/report.dart b/lib/screens/marine/manual/report.dart new file mode 100644 index 0000000..7018953 --- /dev/null +++ b/lib/screens/marine/manual/report.dart @@ -0,0 +1,39 @@ +import 'package:flutter/material.dart'; + +class MarineManualReport extends StatelessWidget { + final List> sampleData = [ + {"Station": "Marine Site A", "Parameter": "Salinity", "Value": "34 PSU"}, + {"Station": "Marine Site B", "Parameter": "Turbidity", "Value": "5 NTU"}, + ]; + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: Text("Marine Manual Report")), + body: Padding( + padding: const EdgeInsets.all(24), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text("Manual Sampling Report", style: TextStyle(fontSize: 18, fontWeight: FontWeight.bold)), + SizedBox(height: 16), + DataTable( + columns: [ + DataColumn(label: Text("Station")), + DataColumn(label: Text("Parameter")), + DataColumn(label: Text("Value")), + ], + rows: sampleData.map((data) { + return DataRow(cells: [ + DataCell(Text(data["Station"]!)), + DataCell(Text(data["Parameter"]!)), + DataCell(Text(data["Value"]!)), + ]); + }).toList(), + ), + ], + ), + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/marine/manual/tarball_sampling.dart b/lib/screens/marine/manual/tarball_sampling.dart new file mode 100644 index 0000000..39c83c8 --- /dev/null +++ b/lib/screens/marine/manual/tarball_sampling.dart @@ -0,0 +1,156 @@ +// lib/screens/marine/manual/tarball_sampling.dart + +import 'dart:io'; +import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; +import 'package:dropdown_search/dropdown_search.dart'; +import 'package:image_picker/image_picker.dart'; +import 'package:intl/intl.dart'; +import 'package:geolocator/geolocator.dart'; +import 'package:path_provider/path_provider.dart'; +import 'package:path/path.dart' as path; +import 'package:image/image.dart' as img; + +import 'package:environment_monitoring_app/auth_provider.dart'; +import 'package:environment_monitoring_app/services/marine_api_service.dart'; +import 'package:environment_monitoring_app/models/tarball_data.dart'; + +class MarineTarballSampling extends StatefulWidget { + const MarineTarballSampling({super.key}); + + @override + State createState() => _MarineTarballSamplingState(); +} + +class _MarineTarballSamplingState extends State { + final _formKey1 = GlobalKey(); + final _formKey2 = GlobalKey(); + int _currentStep = 1; + + final MarineApiService _marineApiService = MarineApiService(); + bool _isLoading = false; + + final TarballSamplingData _data = TarballSamplingData(); + + List _statesList = []; + List _categoriesForState = []; + List> _stationsForCategory = []; + + @override + void initState() { + super.initState(); + _initializeForm(); + } + + void _initializeForm() { + final auth = Provider.of(context, listen: false); + _data.firstSampler = auth.profileData?['first_name'] ?? 'Current User'; + final now = DateTime.now(); + _data.samplingDate = DateFormat('yyyy-MM-dd').format(now); + _data.samplingTime = DateFormat('HH:mm:ss').format(now); + + final allStations = auth.tarballStations ?? []; + if (allStations.isNotEmpty) { + final states = allStations.map((s) => s['state_name'] as String?).whereType().toSet().toList(); + states.sort(); + _statesList = states; + } + } + + Future _pickAndProcessImage(ImageSource source) async { + final picker = ImagePicker(); + final XFile? photo = await picker.pickImage(source: source, imageQuality: 85, maxWidth: 1024); + if (photo == null) return null; + + final bytes = await photo.readAsBytes(); + img.Image? originalImage = img.decodeImage(bytes); + if (originalImage == null) return null; + + final String timestamp = DateFormat('yyyy-MM-dd HH:mm:ss').format(DateTime.now()); + + // Shadow for visibility + img.drawString(originalImage, timestamp, font: img.arial24, x: 11, y: 11, color: img.ColorRgb8(0, 0, 0)); + // Foreground text + img.drawString(originalImage, timestamp, font: img.arial24, x: 10, y: 10, color: img.ColorRgb8(255, 255, 255)); + + final tempDir = await getTemporaryDirectory(); + final filePath = path.join(tempDir.path, '${DateTime.now().millisecondsSinceEpoch}.jpg'); + return File(filePath)..writeAsBytesSync(img.encodeJpg(originalImage)); + } + + void _setImage(Function(File?) setImageCallback, ImageSource source) async { + final file = await _pickAndProcessImage(source); + if (file != null) setState(() => setImageCallback(file)); + } + + Future _getCurrentLocation() async { /* ... Location logic ... */ } + void _calculateDistance() { /* ... Distance logic ... */ } + + Future _submitForm() async { + setState(() => _isLoading = true); + + final result = await _marineApiService.submitTarballSample( + formData: _data.toFormData(), + imageFiles: _data.toImageFiles(), + ); + + if (!mounted) return; + setState(() => _isLoading = false); + + if (result['success'] == true) { + _showSnackBar("Data submitted successfully!"); + Navigator.of(context).pop(); + } else { + _showSnackBar("Submission failed: ${result['message']}"); + } + } + + void _showSnackBar(String message) { + if (mounted) ScaffoldMessenger.of(context).showSnackBar(SnackBar(content: Text(message))); + } + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: const Text("Marine Tarball Sampling")), + body: Stepper( + currentStep: _currentStep - 1, + onStepContinue: () { + if (_currentStep == 1 && _formKey1.currentState!.validate()) { + _formKey1.currentState!.save(); + setState(() => _currentStep++); + } else if (_currentStep == 2 && _formKey2.currentState!.validate()) { + _formKey2.currentState!.save(); + setState(() => _currentStep++); + } + }, + onStepCancel: () { + if (_currentStep > 1) setState(() => _currentStep--); + }, + controlsBuilder: (context, details) { + return Padding( + padding: const EdgeInsets.only(top: 16.0), + child: _isLoading + ? const Center(child: CircularProgressIndicator()) + : Row( + children: [ + if (_currentStep < 3) ElevatedButton(onPressed: details.onStepContinue, child: const Text('Next')), + if (_currentStep == 3) ElevatedButton(onPressed: _submitForm, child: const Text('Submit')), + if (_currentStep > 1) TextButton(onPressed: details.onStepCancel, child: const Text('Back')), + ], + ), + ); + }, + steps: [ + Step(title: const Text('Sampling Info'), content: _buildForm1(), isActive: _currentStep >= 1), + Step(title: const Text('On-Site Info'), content: _buildForm2(), isActive: _currentStep >= 2), + Step(title: const Text('Summary'), content: _buildForm3(), isActive: _currentStep >= 3), + ], + ), + ); + } + + Widget _buildForm1() { /* ... UI for Step 1 ... */ return Container(); } + Widget _buildForm2() { /* ... UI for Step 2 ... */ return Container(); } + Widget _buildForm3() { /* ... UI for Step 3 ... */ return Container(); } +} diff --git a/lib/screens/marine/manual/tarball_sampling_step1.dart b/lib/screens/marine/manual/tarball_sampling_step1.dart new file mode 100644 index 0000000..66bb186 --- /dev/null +++ b/lib/screens/marine/manual/tarball_sampling_step1.dart @@ -0,0 +1,319 @@ +import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; +import 'package:dropdown_search/dropdown_search.dart'; +import 'package:intl/intl.dart'; +import 'package:geolocator/geolocator.dart'; + +import 'package:environment_monitoring_app/auth_provider.dart'; +import 'package:environment_monitoring_app/models/tarball_data.dart'; +import 'package:environment_monitoring_app/screens/marine/manual/tarball_sampling_step2.dart'; + +class TarballSamplingStep1 extends StatefulWidget { + const TarballSamplingStep1({super.key}); + + @override + State createState() => _TarballSamplingStep1State(); +} + +class _TarballSamplingStep1State extends State { + final _formKey = GlobalKey(); + final _data = TarballSamplingData(); + bool _isLoading = false; + + // --- Controllers for UI fields --- + final TextEditingController _firstSamplerController = TextEditingController(); + final TextEditingController _dateController = TextEditingController(); + final TextEditingController _timeController = TextEditingController(); + final TextEditingController _stationLatController = TextEditingController(); + final TextEditingController _stationLonController = TextEditingController(); + final TextEditingController _currentLatController = TextEditingController(); + final TextEditingController _currentLonController = TextEditingController(); + + // --- State for Dropdowns and Location --- + List _statesList = []; + List _categoriesForState = []; + List> _stationsForCategory = []; + double? _distanceDifference; + + @override + void initState() { + super.initState(); + _initializeForm(); + } + + @override + void dispose() { + // Dispose all controllers to prevent memory leaks + _firstSamplerController.dispose(); + _dateController.dispose(); + _timeController.dispose(); + _stationLatController.dispose(); + _stationLonController.dispose(); + _currentLatController.dispose(); + _currentLonController.dispose(); + super.dispose(); + } + + void _initializeForm() { + final auth = Provider.of(context, listen: false); + + // Set initial values for the data model and controllers + // This relies on the AuthProvider having been populated with data, + // which works offline if the data was fetched and cached previously. + _data.firstSampler = auth.profileData?['first_name'] ?? 'Current User'; + _data.firstSamplerUserId = auth.profileData?['user_id']; + _firstSamplerController.text = _data.firstSampler!; + + final now = DateTime.now(); + _data.samplingDate = DateFormat('yyyy-MM-dd').format(now); + _data.samplingTime = DateFormat('HH:mm:ss').format(now); + _dateController.text = _data.samplingDate!; + _timeController.text = _data.samplingTime!; + + // Populate the initial list of unique states from all available stations. + // This also relies on cached data in AuthProvider for offline use. + final allStations = auth.tarballStations ?? []; + if (allStations.isNotEmpty) { + final states = allStations.map((s) => s['state_name'] as String?).whereType().toSet().toList(); + states.sort(); + _statesList = states; + } + } + + /// Fetches the device's location with an offline-first approach. + Future _getCurrentLocation() async { + bool serviceEnabled; + LocationPermission permission; + + // Check if location services are enabled. + serviceEnabled = await Geolocator.isLocationServiceEnabled(); + if (!serviceEnabled) { + _showSnackBar('Location services are disabled. Please enable them.'); + return; + } + + permission = await Geolocator.checkPermission(); + if (permission == LocationPermission.denied) { + permission = await Geolocator.requestPermission(); + if (permission == LocationPermission.denied) { + _showSnackBar('Location permissions are denied.'); + return; + } + } + + if (permission == LocationPermission.deniedForever) { + _showSnackBar('Location permissions are permanently denied. We cannot request permissions.'); + return; + } + + setState(() => _isLoading = true); + + try { + // --- OFFLINE-FIRST LOGIC --- + // 1. Try to get the last known position. This is fast and works offline. + Position? position = await Geolocator.getLastKnownPosition(); + + // 2. If no last known position, get the current position using GPS. + // This can work offline but may take longer. + position ??= await Geolocator.getCurrentPosition(desiredAccuracy: LocationAccuracy.high); + + if (mounted) { + setState(() { + _data.currentLatitude = position!.latitude.toString(); + _data.currentLongitude = position.longitude.toString(); + _currentLatController.text = _data.currentLatitude!; + _currentLonController.text = _data.currentLongitude!; + _calculateDistance(); + }); + } + } catch (e) { + _showSnackBar('Failed to get location: $e'); + } finally { + if (mounted) { + setState(() => _isLoading = false); + } + } + } + + void _calculateDistance() { + if (_stationLatController.text.isNotEmpty && _currentLatController.text.isNotEmpty) { + final double lat1 = double.parse(_stationLatController.text); + final double lon1 = double.parse(_stationLonController.text); + final double lat2 = double.parse(_currentLatController.text); + final double lon2 = double.parse(_currentLonController.text); + + double distanceInMeters = Geolocator.distanceBetween(lat1, lon1, lat2, lon2); + setState(() { + _distanceDifference = distanceInMeters / 1000; + _data.distanceDifference = _distanceDifference; + }); + } + } + + void _goToNextStep() { + if (_formKey.currentState!.validate()) { + _formKey.currentState!.save(); + Navigator.push( + context, + MaterialPageRoute(builder: (context) => TarballSamplingStep2(data: _data)), + ); + } + } + + void _showSnackBar(String message) { + if (mounted) { + ScaffoldMessenger.of(context).showSnackBar(SnackBar(content: Text(message))); + } + } + + @override + Widget build(BuildContext context) { + // For offline functionality, all data used in the dropdowns (tarballStations, allUsers) + // must be fetched and cached in the AuthProvider when the app is online. + final auth = Provider.of(context, listen: false); + final allStations = auth.tarballStations ?? []; + + final currentUser = auth.profileData; + final allUsers = auth.allUsers ?? []; + final secondSamplersList = allUsers.where((user) => user['user_id'] != currentUser?['user_id']).toList(); + + return Scaffold( + appBar: AppBar(title: const Text("Tarball Sampling (1/3)")), + body: Form( + key: _formKey, + child: ListView( + padding: const EdgeInsets.all(24.0), + children: [ + Text("Sampling Information", style: Theme.of(context).textTheme.headlineSmall), + const SizedBox(height: 24), + TextFormField(controller: _firstSamplerController, readOnly: true, decoration: const InputDecoration(labelText: '1st Sampler')), + const SizedBox(height: 16), + + DropdownSearch>( + // --- CORRECTED: Added a ValueKey to prevent the "Duplicate GlobalKey" error --- + // This ensures the widget rebuilds cleanly when its item list changes. + key: ValueKey(allUsers.length), + items: secondSamplersList, + itemAsString: (sampler) => "${sampler['first_name']} ${sampler['last_name']}", + onChanged: (sampler) => setState(() => _data.secondSampler = sampler), + popupProps: const PopupProps.menu( + showSearchBox: true, + searchFieldProps: TextFieldProps(decoration: InputDecoration(hintText: "Search Sampler...")), + ), + dropdownDecoratorProps: const DropDownDecoratorProps( + dropdownSearchDecoration: InputDecoration(labelText: '2nd Sampler (Optional)'), + ), + ), + + const SizedBox(height: 16), + Row( + children: [ + Expanded(child: TextFormField(controller: _dateController, readOnly: true, decoration: const InputDecoration(labelText: 'Date'))), + const SizedBox(width: 16), + Expanded(child: TextFormField(controller: _timeController, readOnly: true, decoration: const InputDecoration(labelText: 'Time'))), + ], + ), + const SizedBox(height: 16), + DropdownSearch( + items: _statesList, + popupProps: const PopupProps.menu(showSearchBox: true, searchFieldProps: TextFieldProps(decoration: InputDecoration(hintText: "Search State..."))), + dropdownDecoratorProps: const DropDownDecoratorProps(dropdownSearchDecoration: InputDecoration(labelText: "Select State *")), + onChanged: (state) { + setState(() { + _data.selectedStateName = state; + _data.selectedCategoryName = null; + _data.selectedStation = null; + _stationLatController.clear(); + _stationLonController.clear(); + _distanceDifference = null; + + if (state != null) { + _categoriesForState = allStations.where((s) => s['state_name'] == state).map((s) => s['category_name'] as String?).whereType().toSet().toList(); + _categoriesForState.sort(); + } else { + _categoriesForState = []; + } + _stationsForCategory = []; + }); + }, + validator: (val) => val == null ? "State is required" : null, + ), + const SizedBox(height: 16), + DropdownSearch( + items: _categoriesForState, + enabled: _data.selectedStateName != null, + popupProps: const PopupProps.menu(showSearchBox: true, searchFieldProps: TextFieldProps(decoration: InputDecoration(hintText: "Search Category..."))), + dropdownDecoratorProps: const DropDownDecoratorProps(dropdownSearchDecoration: InputDecoration(labelText: "Select Category *")), + onChanged: (category) { + setState(() { + _data.selectedCategoryName = category; + _data.selectedStation = null; + _stationLatController.clear(); + _stationLonController.clear(); + _distanceDifference = null; + + if (category != null) { + _stationsForCategory = allStations.where((s) => s['state_name'] == _data.selectedStateName && s['category_name'] == category).toList(); + } else { + _stationsForCategory = []; + } + }); + }, + validator: (val) => _data.selectedStateName != null && val == null ? "Category is required" : null, + ), + const SizedBox(height: 16), + DropdownSearch>( + items: _stationsForCategory, + enabled: _data.selectedCategoryName != null, + itemAsString: (station) => "${station['tbl_station_code']} - ${station['tbl_station_name']}", + popupProps: const PopupProps.menu(showSearchBox: true, searchFieldProps: TextFieldProps(decoration: InputDecoration(hintText: "Search Station..."))), + dropdownDecoratorProps: const DropDownDecoratorProps(dropdownSearchDecoration: InputDecoration(labelText: "Select Station *")), + onChanged: (station) => setState(() { + _data.selectedStation = station; + _data.stationLatitude = station?['tbl_latitude']?.toString(); + _data.stationLongitude = station?['tbl_longitude']?.toString(); + _stationLatController.text = _data.stationLatitude ?? ''; + _stationLonController.text = _data.stationLongitude ?? ''; + _calculateDistance(); + }), + validator: (val) => _data.selectedCategoryName != null && val == null ? "Station is required" : null, + onSaved: (station) => _data.selectedStation = station, + ), + const SizedBox(height: 16), + TextFormField(controller: _stationLatController, readOnly: true, decoration: const InputDecoration(labelText: 'Station Latitude')), + const SizedBox(height: 16), + TextFormField(controller: _stationLonController, readOnly: true, decoration: const InputDecoration(labelText: 'Station Longitude')), + const SizedBox(height: 24), + Text("Location Verification", style: Theme.of(context).textTheme.titleLarge), + const SizedBox(height: 16), + TextFormField(controller: _currentLatController, readOnly: true, decoration: const InputDecoration(labelText: 'Current Latitude')), + const SizedBox(height: 16), + TextFormField(controller: _currentLonController, readOnly: true, decoration: const InputDecoration(labelText: 'Current Longitude')), + if (_distanceDifference != null) + Padding( + padding: const EdgeInsets.only(top: 16.0), + child: Text('Distance from Station: ${_distanceDifference!.toStringAsFixed(2)} km', + style: TextStyle( + fontWeight: FontWeight.bold, + color: _distanceDifference! > 1.0 ? Colors.red : Colors.green, + ) + ), + ), + const SizedBox(height: 16), + OutlinedButton.icon( + onPressed: _isLoading ? null : _getCurrentLocation, + icon: _isLoading ? const SizedBox(width: 20, height: 20, child: CircularProgressIndicator(strokeWidth: 2)) : const Icon(Icons.location_searching), + label: const Text("Get Current Location"), + ), + const SizedBox(height: 32), + ElevatedButton( + onPressed: _goToNextStep, + style: ElevatedButton.styleFrom(padding: const EdgeInsets.symmetric(vertical: 16)), + child: const Text('Next'), + ), + ], + ), + ), + ); + } +} diff --git a/lib/screens/marine/manual/tarball_sampling_step2.dart b/lib/screens/marine/manual/tarball_sampling_step2.dart new file mode 100644 index 0000000..8b1dd61 --- /dev/null +++ b/lib/screens/marine/manual/tarball_sampling_step2.dart @@ -0,0 +1,330 @@ +import 'dart:io'; +import 'package:flutter/material.dart'; +import 'package:image_picker/image_picker.dart'; +import 'package:provider/provider.dart'; +import 'package:path_provider/path_provider.dart'; +import 'package:path/path.dart' as path; +import 'package:image/image.dart' as img; + +import 'package:environment_monitoring_app/auth_provider.dart'; +import 'package:environment_monitoring_app/models/tarball_data.dart'; +import 'package:environment_monitoring_app/screens/marine/manual/tarball_sampling_step3_summary.dart'; + +class TarballSamplingStep2 extends StatefulWidget { + final TarballSamplingData data; + const TarballSamplingStep2({super.key, required this.data}); + + @override + State createState() => _TarballSamplingStep2State(); +} + +class _TarballSamplingStep2State extends State { + final _formKey = GlobalKey(); + bool _isPickingImage = false; + + Map? _selectedClassification; + + late final TextEditingController _remark1Controller; + late final TextEditingController _remark2Controller; + late final TextEditingController _remark3Controller; + late final TextEditingController _remark4Controller; + + @override + void initState() { + super.initState(); + + _remark1Controller = TextEditingController(text: widget.data.optionalRemark1); + _remark2Controller = TextEditingController(text: widget.data.optionalRemark2); + _remark3Controller = TextEditingController(text: widget.data.optionalRemark3); + _remark4Controller = TextEditingController(text: widget.data.optionalRemark4); + + WidgetsBinding.instance.addPostFrameCallback((_) { + if (widget.data.classificationId != null) { + final auth = Provider.of(context, listen: false); + final classifications = auth.tarballClassifications ?? []; + if (classifications.isNotEmpty) { + try { + final foundClassification = classifications.firstWhere( + (c) => c['classification_id'] == widget.data.classificationId, + ); + if (mounted) { + setState(() { + _selectedClassification = foundClassification; + }); + } + } catch (e) { + debugPrint("Could not find pre-selected classification with ID: ${widget.data.classificationId}"); + } + } + } + }); + } + + @override + void dispose() { + _remark1Controller.dispose(); + _remark2Controller.dispose(); + _remark3Controller.dispose(); + _remark4Controller.dispose(); + super.dispose(); + } + + /// Shows a dialog to the user informing them about the image orientation requirement. + void _showOrientationDialog() { + showDialog( + context: context, + builder: (BuildContext context) { + return AlertDialog( + title: const Text("Incorrect Image Orientation"), + content: const Text("Required photos must be taken in a horizontal (landscape) orientation."), + actions: [ + TextButton( + child: const Text("OK"), + onPressed: () => Navigator.of(context).pop(), + ), + ], + ); + }, + ); + } + + /// Picks an image, processes it (checks orientation, adds watermark), and returns the file. + Future _pickAndProcessImage(ImageSource source, String imageInfo, {required bool isRequired}) async { + if (_isPickingImage) return null; + setState(() => _isPickingImage = true); + + final picker = ImagePicker(); + final XFile? photo = await picker.pickImage(source: source, imageQuality: 85, maxWidth: 1024); + + if (photo == null) { + setState(() => _isPickingImage = false); + return null; + } + + final bytes = await photo.readAsBytes(); + img.Image? originalImage = img.decodeImage(bytes); + if (originalImage == null) { + setState(() => _isPickingImage = false); + return null; + } + + // --- NEW: Validate image orientation for required photos --- + if (isRequired && originalImage.height > originalImage.width) { + _showOrientationDialog(); + setState(() => _isPickingImage = false); + return null; // Reject the vertical image + } + + // --- MODIFIED: Reduced watermark font size --- + final String watermarkTimestamp = "${widget.data.samplingDate} ${widget.data.samplingTime}"; + final font = img.arial24; // Reduced from arial48 + const int padding = 10; + + final textWidth = watermarkTimestamp.length * 12; + final textHeight = 24; + img.fillRect( + originalImage, + x1: padding - 5, y1: padding - 5, + x2: padding + textWidth + 5, y2: padding + textHeight + 5, + color: img.ColorRgb8(255, 255, 255), + ); + + img.drawString( + originalImage, + watermarkTimestamp, + font: font, + x: padding, y: padding, + color: img.ColorRgb8(0, 0, 0), + ); + + final stationCode = widget.data.selectedStation?['tbl_station_code'] ?? 'NO_STATION'; + final fileTimestamp = "${widget.data.samplingDate}-${widget.data.samplingTime}".replaceAll(':', '-'); + final sanitizedImageInfo = imageInfo.replaceAll(' ', '').toUpperCase(); + final newFileName = "${stationCode}_${fileTimestamp}_${sanitizedImageInfo}.jpg"; + + final tempDir = await getTemporaryDirectory(); + final filePath = path.join(tempDir.path, newFileName); + final processedFile = await File(filePath).writeAsBytes(img.encodeJpg(originalImage)); + + setState(() => _isPickingImage = false); + return processedFile; + } + + void _setImage(Function(File?) setImageCallback, ImageSource source, String imageInfo, {required bool isRequired}) async { + final file = await _pickAndProcessImage(source, imageInfo, isRequired: isRequired); + if (file != null) { + setState(() { + setImageCallback(file); + }); + } + } + + void _goToNextStep() { + if (_formKey.currentState!.validate()) { + // --- NEW: Validate that a classification has been selected --- + if (widget.data.classificationId == null) { + ScaffoldMessenger.of(context).showSnackBar( + const SnackBar( + content: Text('Please select a tarball classification before proceeding.'), + backgroundColor: Colors.red, + ), + ); + return; + } + + // --- NEW: Validate that all required photos have been attached --- + if (widget.data.leftCoastalViewImage == null || + widget.data.rightCoastalViewImage == null || + widget.data.verticalLinesImage == null || + widget.data.horizontalLineImage == null) { + ScaffoldMessenger.of(context).showSnackBar( + const SnackBar( + content: Text('Please attach all required photos before proceeding.'), + backgroundColor: Colors.red, + ), + ); + return; // Stop the function if validation fails + } + + widget.data.optionalRemark1 = _remark1Controller.text; + widget.data.optionalRemark2 = _remark2Controller.text; + widget.data.optionalRemark3 = _remark3Controller.text; + widget.data.optionalRemark4 = _remark4Controller.text; + + Navigator.push( + context, + MaterialPageRoute(builder: (context) => TarballSamplingStep3Summary(data: widget.data)), + ); + } + } + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: const Text("On-Site Info (2/3)")), + body: Form( + key: _formKey, + child: ListView( + padding: const EdgeInsets.all(24.0), + children: [ + Text("On-Site Information", style: Theme.of(context).textTheme.headlineSmall), + const SizedBox(height: 24), + + Consumer( + builder: (context, auth, child) { + if (auth.tarballClassifications == null || auth.tarballClassifications!.isEmpty) { + return DropdownButtonFormField( + decoration: const InputDecoration( + labelText: 'Tarball Classification *', + hintText: 'Loading or no classifications found...', + ), + items: const [], + onChanged: null, + ); + } + + return DropdownButtonFormField>( + decoration: const InputDecoration(labelText: 'Tarball Classification *'), + value: _selectedClassification, + items: auth.tarballClassifications!.map((classification) { + return DropdownMenuItem>( + value: classification, + child: Text(classification['classification_name']?.toString() ?? 'Unnamed'), + ); + }).toList(), + onChanged: (value) { + setState(() { + _selectedClassification = value; + widget.data.classificationId = value?['classification_id']; + }); + }, + validator: (value) => value == null ? 'Classification is required' : null, + ); + }, + ), + + const SizedBox(height: 24), + // --- MODIFIED: Added asterisk to indicate required section --- + Text("Required Photos *", style: Theme.of(context).textTheme.titleLarge), + _buildImagePicker('Left Side Coastal View', 'LEFTSIDECOASTALVIEW', widget.data.leftCoastalViewImage, (file) => widget.data.leftCoastalViewImage = file, isRequired: true), + _buildImagePicker('Right Side Coastal View', 'RIGHTSIDECOASTALVIEW', widget.data.rightCoastalViewImage, (file) => widget.data.rightCoastalViewImage = file, isRequired: true), + _buildImagePicker('Drawing Vertical Lines', 'VERTICALLINES', widget.data.verticalLinesImage, (file) => widget.data.verticalLinesImage = file, isRequired: true), + _buildImagePicker('Drawing Horizontal Line', 'HORIZONTALLINE', widget.data.horizontalLineImage, (file) => widget.data.horizontalLineImage = file, isRequired: true), + + const SizedBox(height: 24), + Text("Optional Photos & Remarks", style: Theme.of(context).textTheme.titleLarge), + const SizedBox(height: 8), + _buildImagePicker('Optional Photo 1', 'OPTIONAL1', widget.data.optionalImage1, (file) => widget.data.optionalImage1 = file, remarkController: _remark1Controller), + _buildImagePicker('Optional Photo 2', 'OPTIONAL2', widget.data.optionalImage2, (file) => widget.data.optionalImage2 = file, remarkController: _remark2Controller), + _buildImagePicker('Optional Photo 3', 'OPTIONAL3', widget.data.optionalImage3, (file) => widget.data.optionalImage3 = file, remarkController: _remark3Controller), + _buildImagePicker('Optional Photo 4', 'OPTIONAL4', widget.data.optionalImage4, (file) => widget.data.optionalImage4 = file, remarkController: _remark4Controller), + + const SizedBox(height: 32), + ElevatedButton( + onPressed: _goToNextStep, + style: ElevatedButton.styleFrom(padding: const EdgeInsets.symmetric(vertical: 16)), + child: const Text('Next'), + ), + ], + ), + ), + ); + } + + // --- MODIFIED: Added isRequired flag --- + Widget _buildImagePicker(String title, String imageInfo, File? imageFile, Function(File?) setImageCallback, {TextEditingController? remarkController, bool isRequired = false}) { + return Padding( + padding: const EdgeInsets.symmetric(vertical: 8.0), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + // --- MODIFIED: Add asterisk to title if required --- + Text(title + (isRequired ? ' *' : ''), style: const TextStyle(fontSize: 16, fontWeight: FontWeight.w500)), + const SizedBox(height: 8), + if (imageFile != null) + Stack( + alignment: Alignment.topRight, + children: [ + ClipRRect( + borderRadius: BorderRadius.circular(8.0), + child: Image.file(imageFile, key: UniqueKey(), height: 150, width: double.infinity, fit: BoxFit.cover) + ), + Container( + margin: const EdgeInsets.all(4), + decoration: BoxDecoration( + color: Colors.black.withOpacity(0.6), + shape: BoxShape.circle, + ), + child: IconButton( + visualDensity: VisualDensity.compact, + icon: const Icon(Icons.close, color: Colors.white, size: 20), + onPressed: () => setState(() => setImageCallback(null)), + ), + ), + ], + ) + else + Row( + mainAxisAlignment: MainAxisAlignment.spaceEvenly, + children: [ + ElevatedButton.icon(onPressed: _isPickingImage ? null : () => _setImage(setImageCallback, ImageSource.camera, imageInfo, isRequired: isRequired), icon: const Icon(Icons.camera_alt), label: const Text("Camera")), + ElevatedButton.icon(onPressed: _isPickingImage ? null : () => _setImage(setImageCallback, ImageSource.gallery, imageInfo, isRequired: isRequired), icon: const Icon(Icons.photo_library), label: const Text("Gallery")), + ], + ), + if (remarkController != null) + Padding( + padding: const EdgeInsets.only(top: 8.0), + child: TextFormField( + controller: remarkController, + decoration: InputDecoration( + labelText: 'Remarks for $title', + hintText: 'Add an optional remark...', + border: const OutlineInputBorder(), + ), + ), + ), + ], + ), + ); + } +} diff --git a/lib/screens/marine/manual/tarball_sampling_step3_summary.dart b/lib/screens/marine/manual/tarball_sampling_step3_summary.dart new file mode 100644 index 0000000..703c613 --- /dev/null +++ b/lib/screens/marine/manual/tarball_sampling_step3_summary.dart @@ -0,0 +1,260 @@ +import 'dart:io'; +import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; + +import 'package:environment_monitoring_app/auth_provider.dart'; +import 'package:environment_monitoring_app/models/tarball_data.dart'; +import 'package:environment_monitoring_app/services/marine_api_service.dart'; +import 'package:environment_monitoring_app/services/local_storage_service.dart'; + +class TarballSamplingStep3Summary extends StatefulWidget { + final TarballSamplingData data; + const TarballSamplingStep3Summary({super.key, required this.data}); + + @override + State createState() => _TarballSamplingStep3SummaryState(); +} + +class _TarballSamplingStep3SummaryState extends State { + final MarineApiService _marineApiService = MarineApiService(); + final LocalStorageService _localStorageService = LocalStorageService(); + bool _isLoading = false; + + Future _submitForm() async { + setState(() => _isLoading = true); + + // Step 1: Orchestrated Server Submission + final result = await _marineApiService.submitTarballSample( + formData: widget.data.toFormData(), + imageFiles: widget.data.toImageFiles(), + ); + + if (!mounted) return; + + // Step 2: Update the data model with submission results + widget.data.submissionStatus = result['status']; + widget.data.submissionMessage = result['message']; + widget.data.reportId = result['reportId']?.toString(); + + // Step 3: Local Save with the complete data, including submission status. + final String? localPath = await _localStorageService.saveTarballSamplingData(widget.data); + + if (mounted) { + if (localPath != null) { + ScaffoldMessenger.of(context).showSnackBar( + SnackBar(content: Text("Submission log saved locally to: $localPath")), + ); + } else { + ScaffoldMessenger.of(context).showSnackBar( + const SnackBar(content: Text("Warning: Could not save submission log locally."), backgroundColor: Colors.orange), + ); + } + } + + setState(() => _isLoading = false); + + // Step 4: Handle UI feedback based on the final status + final status = result['status']; + final message = result['message'] ?? 'An unknown error occurred.'; + + debugPrint("Submission final status: $status. Report ID: ${widget.data.reportId}. Message: $message"); + + if (status == 'L3') { + ScaffoldMessenger.of(context).showSnackBar( + SnackBar(content: Text(message), backgroundColor: Colors.green), + ); + Navigator.of(context).popUntil((route) => route.isFirst); + } else { // L1 or L2 failures + ScaffoldMessenger.of(context).showSnackBar( + SnackBar(content: Text(message), backgroundColor: (status == 'L2' ? Colors.orange : Colors.red), duration: const Duration(seconds: 5)), + ); + } + } + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: const Text("Summary & Confirmation (3/3)")), + body: ListView( + padding: const EdgeInsets.all(16.0), + children: [ + Text( + "Please review all information before submitting.", + style: Theme.of(context).textTheme.titleMedium, + textAlign: TextAlign.center, + ), + const SizedBox(height: 16), + + _buildSectionCard( + "Sampling Details", + [ + _buildDetailRow("1st Sampler:", widget.data.firstSampler), + _buildDetailRow("2nd Sampler:", widget.data.secondSampler?['first_name']?.toString()), + _buildDetailRow("Sampling Date:", widget.data.samplingDate), + _buildDetailRow("Sampling Time:", widget.data.samplingTime), + ], + ), + + _buildSectionCard( + "Station Information", + [ + _buildDetailRow("State:", widget.data.selectedStateName), + _buildDetailRow("Category:", widget.data.selectedCategoryName), + _buildDetailRow("Station Code:", widget.data.selectedStation?['tbl_station_code']?.toString()), + _buildDetailRow("Station Name:", widget.data.selectedStation?['tbl_station_name']?.toString()), + _buildDetailRow("Station Latitude:", widget.data.stationLatitude), + _buildDetailRow("Station Longitude:", widget.data.stationLongitude), + ], + ), + + _buildSectionCard( + "Location Verification", + [ + _buildDetailRow("Current Latitude:", widget.data.currentLatitude), + _buildDetailRow("Current Longitude:", widget.data.currentLongitude), + _buildDetailRow("Distance Difference:", + widget.data.distanceDifference != null + ? "${widget.data.distanceDifference!.toStringAsFixed(2)} km" + : "N/A" + ), + ], + ), + + _buildSectionCard( + "On-Site Information & Photos", + [ + // CORRECTED: Look up the classification name from the provider using the ID. + Consumer( + builder: (context, auth, child) { + String classificationName = 'N/A'; + if (widget.data.classificationId != null && auth.tarballClassifications != null) { + try { + final classification = auth.tarballClassifications!.firstWhere( + (c) => c['classification_id'] == widget.data.classificationId, + ); + classificationName = classification['classification_name'] ?? 'ID not found'; + } catch (e) { + classificationName = 'ID: ${widget.data.classificationId}'; + } + } + return _buildDetailRow("Tarball Classification:", classificationName); + }, + ), + const Divider(height: 24), + _buildImageCard("Left Side Coastal View", widget.data.leftCoastalViewImage), + _buildImageCard("Right Side Coastal View", widget.data.rightCoastalViewImage), + _buildImageCard("Drawing Vertical Lines", widget.data.verticalLinesImage), + _buildImageCard("Drawing Horizontal Line", widget.data.horizontalLineImage), + const Divider(height: 24), + Text("Optional Photos", style: Theme.of(context).textTheme.titleMedium?.copyWith(fontWeight: FontWeight.bold)), + const SizedBox(height: 8), + _buildImageCard("Optional Photo 1", widget.data.optionalImage1, remark: widget.data.optionalRemark1), + _buildImageCard("Optional Photo 2", widget.data.optionalImage2, remark: widget.data.optionalRemark2), + _buildImageCard("Optional Photo 3", widget.data.optionalImage3, remark: widget.data.optionalRemark3), + _buildImageCard("Optional Photo 4", widget.data.optionalImage4, remark: widget.data.optionalRemark4), + ], + ), + + const SizedBox(height: 24), + _isLoading + ? const Center(child: CircularProgressIndicator()) + : ElevatedButton.icon( + onPressed: _submitForm, + icon: const Icon(Icons.cloud_upload), + label: const Text('Confirm & Submit'), + style: ElevatedButton.styleFrom( + padding: const EdgeInsets.symmetric(vertical: 16), + textStyle: const TextStyle(fontSize: 18, fontWeight: FontWeight.bold), + ), + ), + const SizedBox(height: 16), + ], + ), + ); + } + + Widget _buildSectionCard(String title, List children) { + return Card( + margin: const EdgeInsets.symmetric(vertical: 8.0), + elevation: 2, + shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(12)), + child: Padding( + padding: const EdgeInsets.all(16.0), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + title, + style: Theme.of(context).textTheme.titleLarge?.copyWith( + fontWeight: FontWeight.bold, + color: Theme.of(context).primaryColor, + ), + ), + const Divider(height: 20, thickness: 1), + ...children, + ], + ), + ), + ); + } + + Widget _buildDetailRow(String label, String? value) { + return Padding( + padding: const EdgeInsets.symmetric(vertical: 6.0), + child: Row( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Expanded( + flex: 2, + child: Text( + label, + style: const TextStyle(fontWeight: FontWeight.bold), + ), + ), + const SizedBox(width: 8), + Expanded( + flex: 3, + child: Text( + value != null && value.isNotEmpty ? value : 'N/A', + style: Theme.of(context).textTheme.bodyLarge, + ), + ), + ], + ), + ); + } + + Widget _buildImageCard(String title, File? image, {String? remark}) { + return Padding( + padding: const EdgeInsets.symmetric(vertical: 8.0), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text(title, style: const TextStyle(fontWeight: FontWeight.bold, fontSize: 16)), + const SizedBox(height: 8), + if (image != null) + ClipRRect( + borderRadius: BorderRadius.circular(8.0), + child: Image.file(image, key: UniqueKey(), height: 200, width: double.infinity, fit: BoxFit.cover), + ) + else + Container( + height: 100, + width: double.infinity, + decoration: BoxDecoration( + color: Colors.grey[200], + borderRadius: BorderRadius.circular(8.0), + border: Border.all(color: Colors.grey[300]!) + ), + child: const Center(child: Text('No Image Attached', style: TextStyle(color: Colors.grey))), + ), + if (remark != null && remark.isNotEmpty) + Padding( + padding: const EdgeInsets.only(top: 8.0), + child: Text('Remark: $remark', style: const TextStyle(fontStyle: FontStyle.italic, color: Colors.black54)), + ), + ], + ), + ); + } +} diff --git a/lib/screens/marine/manual/widgets/in_situ_step_1_sampling_info.dart b/lib/screens/marine/manual/widgets/in_situ_step_1_sampling_info.dart new file mode 100644 index 0000000..f37895d --- /dev/null +++ b/lib/screens/marine/manual/widgets/in_situ_step_1_sampling_info.dart @@ -0,0 +1,443 @@ +import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; +import 'package:dropdown_search/dropdown_search.dart'; +import 'package:intl/intl.dart'; +import 'package:simple_barcode_scanner/simple_barcode_scanner.dart'; + +import '../../../../auth_provider.dart'; +import '../../../../models/in_situ_sampling_data.dart'; +import '../../../../services/in_situ_sampling_service.dart'; + +class InSituStep1SamplingInfo extends StatefulWidget { + final InSituSamplingData data; + final VoidCallback onNext; + + const InSituStep1SamplingInfo({ + super.key, + required this.data, + required this.onNext, + }); + + @override + State createState() => _InSituStep1SamplingInfoState(); +} + +class _InSituStep1SamplingInfoState extends State { + final _formKey = GlobalKey(); + bool _isLoadingLocation = false; + + late final TextEditingController _firstSamplerController; + late final TextEditingController _dateController; + late final TextEditingController _timeController; + late final TextEditingController _barcodeController; + late final TextEditingController _stationLatController; + late final TextEditingController _stationLonController; + late final TextEditingController _currentLatController; + late final TextEditingController _currentLonController; + + List _statesList = []; + List _categoriesForState = []; + List> _stationsForCategory = []; + final List _samplingTypes = ['Schedule', 'Ad-Hoc', 'Complaint']; + + @override + void initState() { + super.initState(); + _initializeControllers(); + _initializeForm(); + } + + @override + void dispose() { + _firstSamplerController.dispose(); + _dateController.dispose(); + _timeController.dispose(); + _barcodeController.dispose(); + _stationLatController.dispose(); + _stationLonController.dispose(); + _currentLatController.dispose(); + _currentLonController.dispose(); + super.dispose(); + } + + void _initializeControllers() { + _firstSamplerController = TextEditingController(); + _dateController = TextEditingController(); + _timeController = TextEditingController(); + _barcodeController = TextEditingController(text: widget.data.sampleIdCode); + _stationLatController = TextEditingController(text: widget.data.stationLatitude); + _stationLonController = TextEditingController(text: widget.data.stationLongitude); + _currentLatController = TextEditingController(text: widget.data.currentLatitude); + _currentLonController = TextEditingController(text: widget.data.currentLongitude); + } + + void _initializeForm() { + final auth = Provider.of(context, listen: false); + + widget.data.firstSamplerName = auth.profileData?['first_name'] ?? 'Current User'; + widget.data.firstSamplerUserId = auth.profileData?['user_id']; + _firstSamplerController.text = widget.data.firstSamplerName!; + + final now = DateTime.now(); + if (widget.data.samplingDate == null || widget.data.samplingDate!.isEmpty) { + widget.data.samplingDate = DateFormat('yyyy-MM-dd').format(now); + widget.data.samplingTime = DateFormat('HH:mm:ss').format(now); + } + _dateController.text = widget.data.samplingDate!; + _timeController.text = widget.data.samplingTime!; + + final allStations = auth.manualStations ?? []; + if (allStations.isNotEmpty) { + final states = allStations.map((s) => s['state_name'] as String?).whereType().toSet().toList(); + states.sort(); + + if (widget.data.selectedStateName != null) { + final categories = allStations + .where((s) => s['state_name'] == widget.data.selectedStateName) + .map((s) => s['category_name'] as String?) + .whereType() + .toSet() + .toList(); + categories.sort(); + _categoriesForState = categories; + } + if (widget.data.selectedCategoryName != null) { + _stationsForCategory = allStations + .where((s) => + s['state_name'] == widget.data.selectedStateName && + s['category_name'] == widget.data.selectedCategoryName) + .toList(); + } + + setState(() { + _statesList = states; + }); + } + } + + Future _getCurrentLocation() async { + setState(() => _isLoadingLocation = true); + final service = Provider.of(context, listen: false); + + try { + final position = await service.getCurrentLocation(); + if (mounted) { + setState(() { + widget.data.currentLatitude = position.latitude.toString(); + widget.data.currentLongitude = position.longitude.toString(); + _currentLatController.text = widget.data.currentLatitude!; + _currentLonController.text = widget.data.currentLongitude!; + _calculateDistance(); + }); + } + } catch (e) { + if(mounted) { + ScaffoldMessenger.of(context).showSnackBar(SnackBar(content: Text('Failed to get location: $e'))); + } + } finally { + if (mounted) { + setState(() => _isLoadingLocation = false); + } + } + } + + void _calculateDistance() { + final lat1Str = widget.data.stationLatitude; + final lon1Str = widget.data.stationLongitude; + final lat2Str = widget.data.currentLatitude; + final lon2Str = widget.data.currentLongitude; + + if (lat1Str != null && lon1Str != null && lat2Str != null && lon2Str != null) { + final service = Provider.of(context, listen: false); + final lat1 = double.tryParse(lat1Str); + final lon1 = double.tryParse(lon1Str); + final lat2 = double.tryParse(lat2Str); + final lon2 = double.tryParse(lon2Str); + + if (lat1 != null && lon1 != null && lat2 != null && lon2 != null) { + final distance = service.calculateDistance(lat1, lon1, lat2, lon2); + setState(() { + widget.data.distanceDifferenceInKm = distance; + }); + } + } + } + + Future _scanBarcode() async { + final result = await Navigator.push( + context, + MaterialPageRoute(builder: (context) => const SimpleBarcodeScannerPage()), + ); + if (result is String && result != '-1' && mounted) { + setState(() { + widget.data.sampleIdCode = result; + _barcodeController.text = result; + }); + } + } + + /// Validates the form and distance, then proceeds to the next step. + void _goToNextStep() { + if (_formKey.currentState!.validate()) { + _formKey.currentState!.save(); + + final distanceInMeters = (widget.data.distanceDifferenceInKm ?? 0) * 1000; + + if (distanceInMeters > 700) { + _showDistanceRemarkDialog(); + } else { + // If distance is okay, clear any previous remarks and proceed. + widget.data.distanceDifferenceRemarks = null; + widget.onNext(); + } + } + } + + /// Shows a dialog to force the user to enter remarks for large distance differences. + Future _showDistanceRemarkDialog() async { + final remarkController = TextEditingController(text: widget.data.distanceDifferenceRemarks); + final dialogFormKey = GlobalKey(); + + return showDialog( + context: context, + barrierDismissible: false, // User must interact with the dialog + builder: (BuildContext context) { + return AlertDialog( + title: const Text('Distance Warning'), + content: SingleChildScrollView( + child: Form( + key: dialogFormKey, + child: Column( + mainAxisSize: MainAxisSize.min, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const Text('Your current location is more than 700m away from the station.'), + const SizedBox(height: 16), + TextFormField( + controller: remarkController, + decoration: const InputDecoration( + labelText: 'Remarks *', + hintText: 'Please provide a reason...', + border: OutlineInputBorder(), + ), + validator: (value) { + if (value == null || value.trim().isEmpty) { + return 'Remarks are required to continue.'; + } + return null; + }, + maxLines: 3, + ), + ], + ), + ), + ), + actions: [ + TextButton( + child: const Text('Cancel'), + onPressed: () { + Navigator.of(context).pop(); + }, + ), + FilledButton( + child: const Text('Confirm'), + onPressed: () { + if (dialogFormKey.currentState!.validate()) { + setState(() { + widget.data.distanceDifferenceRemarks = remarkController.text; + }); + Navigator.of(context).pop(); + widget.onNext(); // Proceed to next step + } + }, + ), + ], + ); + }, + ); + } + + @override + Widget build(BuildContext context) { + final auth = Provider.of(context, listen: false); + final allStations = auth.manualStations ?? []; + final allUsers = auth.allUsers ?? []; + final secondSamplersList = allUsers.where((user) => user['user_id'] != auth.profileData?['user_id']).toList(); + + return Form( + key: _formKey, + child: ListView( + padding: const EdgeInsets.all(24.0), + children: [ + // Sampling Information section... (unchanged) + Text("Sampling Information", style: Theme.of(context).textTheme.headlineSmall), + const SizedBox(height: 24), + TextFormField(controller: _firstSamplerController, readOnly: true, decoration: const InputDecoration(labelText: '1st Sampler')), + const SizedBox(height: 16), + DropdownSearch>( + items: secondSamplersList, + selectedItem: widget.data.secondSampler, + itemAsString: (sampler) => "${sampler['first_name']} ${sampler['last_name']}", + onChanged: (sampler) => widget.data.secondSampler = sampler, + popupProps: const PopupProps.menu(showSearchBox: true, searchFieldProps: TextFieldProps(decoration: InputDecoration(hintText: "Search Sampler..."))), + dropdownDecoratorProps: const DropDownDecoratorProps(dropdownSearchDecoration: InputDecoration(labelText: '2nd Sampler (Optional)')), + ), + const SizedBox(height: 16), + Row( + children: [ + Expanded(child: TextFormField(controller: _dateController, readOnly: true, decoration: const InputDecoration(labelText: 'Date'))), + const SizedBox(width: 16), + Expanded(child: TextFormField(controller: _timeController, readOnly: true, decoration: const InputDecoration(labelText: 'Time'))), + ], + ), + const SizedBox(height: 16), + DropdownButtonFormField( + value: widget.data.samplingType, + items: _samplingTypes.map((type) => DropdownMenuItem(value: type, child: Text(type))).toList(), + onChanged: (value) => setState(() => widget.data.samplingType = value), + decoration: const InputDecoration(labelText: 'Sampling Type *'), + validator: (value) => value == null ? 'Please select a type' : null, + ), + const SizedBox(height: 24), + + // Station Selection section... (unchanged) + DropdownSearch( + items: _statesList, + selectedItem: widget.data.selectedStateName, + popupProps: const PopupProps.menu(showSearchBox: true, searchFieldProps: TextFieldProps(decoration: InputDecoration(hintText: "Search State..."))), + dropdownDecoratorProps: const DropDownDecoratorProps(dropdownSearchDecoration: InputDecoration(labelText: "Select State *")), + onChanged: (state) { + setState(() { + widget.data.selectedStateName = state; + widget.data.selectedCategoryName = null; + widget.data.selectedStation = null; + _stationLatController.clear(); + _stationLonController.clear(); + widget.data.distanceDifferenceInKm = null; + + final categories = state != null + ? allStations + .where((s) => s['state_name'] == state) + .map((s) => s['category_name'] as String?) + .whereType() + .toSet() + .toList() + : []; + categories.sort(); + _categoriesForState = categories; + + _stationsForCategory = []; + }); + }, + validator: (val) => val == null ? "State is required" : null, + ), + const SizedBox(height: 16), + DropdownSearch( + items: _categoriesForState, + selectedItem: widget.data.selectedCategoryName, + enabled: widget.data.selectedStateName != null, + popupProps: const PopupProps.menu(showSearchBox: true, searchFieldProps: TextFieldProps(decoration: InputDecoration(hintText: "Search Category..."))), + dropdownDecoratorProps: const DropDownDecoratorProps(dropdownSearchDecoration: InputDecoration(labelText: "Select Category *")), + onChanged: (category) { + setState(() { + widget.data.selectedCategoryName = category; + widget.data.selectedStation = null; + _stationLatController.clear(); + _stationLonController.clear(); + widget.data.distanceDifferenceInKm = null; + _stationsForCategory = category != null ? allStations.where((s) => s['state_name'] == widget.data.selectedStateName && s['category_name'] == category).toList() : []; + }); + }, + validator: (val) => widget.data.selectedStateName != null && val == null ? "Category is required" : null, + ), + const SizedBox(height: 16), + DropdownSearch>( + items: _stationsForCategory, + selectedItem: widget.data.selectedStation, + enabled: widget.data.selectedCategoryName != null, + itemAsString: (station) => "${station['man_station_code']} - ${station['man_station_name']}", + popupProps: const PopupProps.menu(showSearchBox: true, searchFieldProps: TextFieldProps(decoration: InputDecoration(hintText: "Search Station..."))), + dropdownDecoratorProps: const DropDownDecoratorProps(dropdownSearchDecoration: InputDecoration(labelText: "Select Station *")), + onChanged: (station) => setState(() { + widget.data.selectedStation = station; + widget.data.stationLatitude = station?['man_latitude']?.toString(); + widget.data.stationLongitude = station?['man_longitude']?.toString(); + _stationLatController.text = widget.data.stationLatitude ?? ''; + _stationLonController.text = widget.data.stationLongitude ?? ''; + _calculateDistance(); + }), + validator: (val) => widget.data.selectedCategoryName != null && val == null ? "Station is required" : null, + ), + const SizedBox(height: 16), + TextFormField(controller: _stationLatController, readOnly: true, decoration: const InputDecoration(labelText: 'Station Latitude')), + const SizedBox(height: 16), + TextFormField(controller: _stationLonController, readOnly: true, decoration: const InputDecoration(labelText: 'Station Longitude')), + const SizedBox(height: 24), + + // Location Verification section... + Text("Location Verification", style: Theme.of(context).textTheme.titleLarge), + const SizedBox(height: 16), + TextFormField(controller: _currentLatController, readOnly: true, decoration: const InputDecoration(labelText: 'Current Latitude')), + const SizedBox(height: 16), + TextFormField(controller: _currentLonController, readOnly: true, decoration: const InputDecoration(labelText: 'Current Longitude')), + // MODIFIED: Distance text is now more prominent and styled + if (widget.data.distanceDifferenceInKm != null) + Padding( + padding: const EdgeInsets.only(top: 16.0), + child: Container( + padding: const EdgeInsets.all(12), + decoration: BoxDecoration( + color: ((widget.data.distanceDifferenceInKm ?? 0) * 1000) > 700 ? Colors.red.withOpacity(0.1) : Colors.green.withOpacity(0.1), + borderRadius: BorderRadius.circular(8), + border: Border.all(color: ((widget.data.distanceDifferenceInKm ?? 0) * 1000) > 700 ? Colors.red : Colors.green), + ), + child: RichText( + textAlign: TextAlign.center, + text: TextSpan( + style: Theme.of(context).textTheme.bodyLarge, + children: [ + const TextSpan(text: 'Distance from Station: '), + TextSpan( + text: '${(widget.data.distanceDifferenceInKm! * 1000).toStringAsFixed(0)} meters', + style: TextStyle( + fontWeight: FontWeight.bold, + color: ((widget.data.distanceDifferenceInKm ?? 0) * 1000) > 700 ? Colors.red : Colors.green + ), + ), + ], + ), + ), + ), + ), + const SizedBox(height: 16), + OutlinedButton.icon( + onPressed: _isLoadingLocation ? null : _getCurrentLocation, + icon: _isLoadingLocation ? const SizedBox(width: 20, height: 20, child: CircularProgressIndicator(strokeWidth: 2)) : const Icon(Icons.location_searching), + label: const Text("Get Current Location"), + ), + const SizedBox(height: 16), + + TextFormField( + controller: _barcodeController, + decoration: InputDecoration( + labelText: 'Sample ID Code *', + suffixIcon: IconButton( + icon: const Icon(Icons.qr_code_scanner), + onPressed: _scanBarcode, + ), + ), + validator: (val) => val == null || val.isEmpty ? "Sample ID is required" : null, + onSaved: (val) => widget.data.sampleIdCode = val, + onChanged: (val) => widget.data.sampleIdCode = val, + ), + const SizedBox(height: 32), + ElevatedButton( + onPressed: _goToNextStep, + style: ElevatedButton.styleFrom(padding: const EdgeInsets.symmetric(vertical: 16)), + child: const Text('Next'), + ), + ], + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/marine/manual/widgets/in_situ_step_2_site_info.dart b/lib/screens/marine/manual/widgets/in_situ_step_2_site_info.dart new file mode 100644 index 0000000..febeb37 --- /dev/null +++ b/lib/screens/marine/manual/widgets/in_situ_step_2_site_info.dart @@ -0,0 +1,248 @@ +import 'dart:io'; +import 'package:flutter/material.dart'; +import 'package:image_picker/image_picker.dart'; +import 'package:provider/provider.dart'; + +import '../../../../models/in_situ_sampling_data.dart'; +import '../../../../services/in_situ_sampling_service.dart'; + +/// The second step of the In-Situ Sampling form. +/// Gathers on-site conditions (weather, tide) and handles all photo attachments. +class InSituStep2SiteInfo extends StatefulWidget { + final InSituSamplingData data; + final VoidCallback onNext; + + const InSituStep2SiteInfo({ + super.key, + required this.data, + required this.onNext, + }); + + @override + State createState() => _InSituStep2SiteInfoState(); +} + +class _InSituStep2SiteInfoState extends State { + final _formKey = GlobalKey(); + bool _isPickingImage = false; + + // --- UI Controllers for remarks --- + late final TextEditingController _eventRemarksController; + late final TextEditingController _labRemarksController; + late final TextEditingController _optionalRemark1Controller; + late final TextEditingController _optionalRemark2Controller; + late final TextEditingController _optionalRemark3Controller; + late final TextEditingController _optionalRemark4Controller; + + + final List _weatherOptions = ['Clear', 'Rainy', 'Cloudy']; + final List _tideOptions = ['High', 'Low', 'Mid']; + final List _seaConditionOptions = ['Calm', 'Moderate Wave', 'High Wave']; + + @override + void initState() { + super.initState(); + _eventRemarksController = TextEditingController(text: widget.data.eventRemarks); + _labRemarksController = TextEditingController(text: widget.data.labRemarks); + _optionalRemark1Controller = TextEditingController(text: widget.data.optionalRemark1); + _optionalRemark2Controller = TextEditingController(text: widget.data.optionalRemark2); + _optionalRemark3Controller = TextEditingController(text: widget.data.optionalRemark3); + _optionalRemark4Controller = TextEditingController(text: widget.data.optionalRemark4); + } + + @override + void dispose() { + _eventRemarksController.dispose(); + _labRemarksController.dispose(); + _optionalRemark1Controller.dispose(); + _optionalRemark2Controller.dispose(); + _optionalRemark3Controller.dispose(); + _optionalRemark4Controller.dispose(); + super.dispose(); + } + + /// Handles picking and processing an image using the dedicated service. + void _setImage(Function(File?) setImageCallback, ImageSource source, String imageInfo, {required bool isRequired}) async { + if (_isPickingImage) return; + setState(() => _isPickingImage = true); + + final service = Provider.of(context, listen: false); + + final file = await service.pickAndProcessImage(source, data: widget.data, imageInfo: imageInfo, isRequired: isRequired); + + if (file != null) { + setState(() => setImageCallback(file)); + } else if (mounted) { + _showSnackBar('Image selection failed. Please ensure all photos are taken in landscape mode.', isError: true); + } + + if (mounted) { + setState(() => _isPickingImage = false); + } + } + + /// Validates the form and all required images before proceeding. + void _goToNextStep() { + if (!_formKey.currentState!.validate()) { + return; + } + + if (widget.data.leftLandViewImage == null || + widget.data.rightLandViewImage == null || + widget.data.waterFillingImage == null || + widget.data.seawaterColorImage == null || + widget.data.phPaperImage == null) { + _showSnackBar('Please attach all 5 required photos before proceeding.', isError: true); + return; + } + + _formKey.currentState!.save(); + // --- FIXED: Correctly save remarks text to the data model's remark properties --- + widget.data.optionalRemark1 = _optionalRemark1Controller.text; + widget.data.optionalRemark2 = _optionalRemark2Controller.text; + widget.data.optionalRemark3 = _optionalRemark3Controller.text; + widget.data.optionalRemark4 = _optionalRemark4Controller.text; + widget.onNext(); + } + + void _showSnackBar(String message, {bool isError = false}) { + if (mounted) { + ScaffoldMessenger.of(context).showSnackBar(SnackBar( + content: Text(message), + backgroundColor: isError ? Colors.red : null, + )); + } + } + + @override + Widget build(BuildContext context) { + return Form( + key: _formKey, + child: ListView( + padding: const EdgeInsets.all(24.0), + children: [ + // --- Section: On-Site Information --- + Text("On-Site Information", style: Theme.of(context).textTheme.headlineSmall), + const SizedBox(height: 24), + DropdownButtonFormField( + value: widget.data.weather, + items: _weatherOptions.map((item) => DropdownMenuItem(value: item, child: Text(item))).toList(), + onChanged: (value) => setState(() => widget.data.weather = value), + decoration: const InputDecoration(labelText: 'Weather *'), + validator: (value) => value == null ? 'Weather is required' : null, + ), + const SizedBox(height: 16), + DropdownButtonFormField( + value: widget.data.tideLevel, + items: _tideOptions.map((item) => DropdownMenuItem(value: item, child: Text(item))).toList(), + onChanged: (value) => setState(() => widget.data.tideLevel = value), + decoration: const InputDecoration(labelText: 'Tide Level *'), + validator: (value) => value == null ? 'Tide level is required' : null, + ), + const SizedBox(height: 16), + DropdownButtonFormField( + value: widget.data.seaCondition, + items: _seaConditionOptions.map((item) => DropdownMenuItem(value: item, child: Text(item))).toList(), + onChanged: (value) => setState(() => widget.data.seaCondition = value), + decoration: const InputDecoration(labelText: 'Sea Condition *'), + validator: (value) => value == null ? 'Sea condition is required' : null, + ), + const SizedBox(height: 24), + + // --- Section: Required Photos --- + Text("Required Photos *", style: Theme.of(context).textTheme.titleLarge), + const Text("All photos must be taken in landscape (horizontal) orientation.", style: TextStyle(color: Colors.grey)), + const SizedBox(height: 8), + _buildImagePicker('Left Side Land View', 'LEFT_LAND_VIEW', widget.data.leftLandViewImage, (file) => widget.data.leftLandViewImage = file, isRequired: true), + _buildImagePicker('Right Side Land View', 'RIGHT_LAND_VIEW', widget.data.rightLandViewImage, (file) => widget.data.rightLandViewImage = file, isRequired: true), + _buildImagePicker('Filling Water into Sample Bottle', 'WATER_FILLING', widget.data.waterFillingImage, (file) => widget.data.waterFillingImage = file, isRequired: true), + _buildImagePicker('Seawater in Clear Glass Bottle', 'SEAWATER_COLOR', widget.data.seawaterColorImage, (file) => widget.data.seawaterColorImage = file, isRequired: true), + _buildImagePicker('Examine Preservative (pH paper)', 'PH_PAPER', widget.data.phPaperImage, (file) => widget.data.phPaperImage = file, isRequired: true), + const SizedBox(height: 24), + + // --- Section: Optional Photos --- + Text("Optional Photos & Remarks", style: Theme.of(context).textTheme.titleLarge), + const SizedBox(height: 8), + _buildImagePicker('Optional Photo 1', 'OPTIONAL_1', widget.data.optionalImage1, (file) => widget.data.optionalImage1 = file, remarkController: _optionalRemark1Controller, isRequired: true), + _buildImagePicker('Optional Photo 2', 'OPTIONAL_2', widget.data.optionalImage2, (file) => widget.data.optionalImage2 = file, remarkController: _optionalRemark2Controller, isRequired: true), + _buildImagePicker('Optional Photo 3', 'OPTIONAL_3', widget.data.optionalImage3, (file) => widget.data.optionalImage3 = file, remarkController: _optionalRemark3Controller, isRequired: true), + _buildImagePicker('Optional Photo 4', 'OPTIONAL_4', widget.data.optionalImage4, (file) => widget.data.optionalImage4 = file, remarkController: _optionalRemark4Controller, isRequired: true), + const SizedBox(height: 24), + + // --- Section: Remarks --- + Text("Remarks", style: Theme.of(context).textTheme.titleLarge), + const SizedBox(height: 16), + TextFormField( + controller: _eventRemarksController, + decoration: const InputDecoration(labelText: 'Event Remarks (Optional)', hintText: 'e.g., unusual smells, colors, etc.'), + onSaved: (value) => widget.data.eventRemarks = value, + maxLines: 3, + ), + const SizedBox(height: 16), + TextFormField( + controller: _labRemarksController, + decoration: const InputDecoration(labelText: 'Lab Remarks (Optional)'), + onSaved: (value) => widget.data.labRemarks = value, + maxLines: 3, + ), + const SizedBox(height: 32), + ElevatedButton( + onPressed: _goToNextStep, + style: ElevatedButton.styleFrom(padding: const EdgeInsets.symmetric(vertical: 16)), + child: const Text('Next'), + ), + ], + ), + ); + } + + /// A reusable widget for picking and displaying an image, matching the tarball design. + Widget _buildImagePicker(String title, String imageInfo, File? imageFile, Function(File?) setImageCallback, {TextEditingController? remarkController, bool isRequired = false}) { + return Padding( + padding: const EdgeInsets.symmetric(vertical: 8.0), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text(title + (isRequired ? ' *' : ''), style: const TextStyle(fontSize: 16, fontWeight: FontWeight.w500)), + const SizedBox(height: 8), + if (imageFile != null) + Stack( + alignment: Alignment.topRight, + children: [ + ClipRRect(borderRadius: BorderRadius.circular(8.0), child: Image.file(imageFile, key: UniqueKey(), height: 150, width: double.infinity, fit: BoxFit.cover)), + Container( + margin: const EdgeInsets.all(4), + decoration: BoxDecoration(color: Colors.black.withOpacity(0.6), shape: BoxShape.circle), + child: IconButton( + visualDensity: VisualDensity.compact, + icon: const Icon(Icons.close, color: Colors.white, size: 20), + onPressed: () => setState(() => setImageCallback(null)), + ), + ), + ], + ) + else + Row( + mainAxisAlignment: MainAxisAlignment.spaceEvenly, + children: [ + ElevatedButton.icon(onPressed: _isPickingImage ? null : () => _setImage(setImageCallback, ImageSource.camera, imageInfo, isRequired: isRequired), icon: const Icon(Icons.camera_alt), label: const Text("Camera")), + ElevatedButton.icon(onPressed: _isPickingImage ? null : () => _setImage(setImageCallback, ImageSource.gallery, imageInfo, isRequired: isRequired), icon: const Icon(Icons.photo_library), label: const Text("Gallery")), + ], + ), + if (remarkController != null) + Padding( + padding: const EdgeInsets.only(top: 8.0), + child: TextFormField( + controller: remarkController, + decoration: InputDecoration( + labelText: 'Remarks for $title', + hintText: 'Add an optional remark...', + border: const OutlineInputBorder(), + ), + ), + ), + ], + ), + ); + } +} diff --git a/lib/screens/marine/manual/widgets/in_situ_step_3_data_capture.dart b/lib/screens/marine/manual/widgets/in_situ_step_3_data_capture.dart new file mode 100644 index 0000000..d184ac3 --- /dev/null +++ b/lib/screens/marine/manual/widgets/in_situ_step_3_data_capture.dart @@ -0,0 +1,500 @@ +import 'dart:async'; +import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; +import 'package:flutter_bluetooth_serial/flutter_bluetooth_serial.dart'; +import 'package:usb_serial/usb_serial.dart'; + +import '../../../../models/in_situ_sampling_data.dart'; +import '../../../../services/in_situ_sampling_service.dart'; +import '../../../../bluetooth/bluetooth_manager.dart'; // For connection state enum +import '../../../../serial/serial_manager.dart'; // For connection state enum +import '../../../../bluetooth/widgets/bluetooth_device_list_dialog.dart'; +import '../../../../serial/widget/serial_port_list_dialog.dart'; + +class InSituStep3DataCapture extends StatefulWidget { + final InSituSamplingData data; + final VoidCallback onNext; + + const InSituStep3DataCapture({ + super.key, + required this.data, + required this.onNext, + }); + + @override + State createState() => _InSituStep3DataCaptureState(); +} + +class _InSituStep3DataCaptureState extends State { + final _formKey = GlobalKey(); + bool _isLoading = false; + bool _isAutoReading = false; + StreamSubscription? _dataSubscription; + + final List> _parameters = []; + + final _sondeIdController = TextEditingController(); + final _dateController = TextEditingController(); + final _timeController = TextEditingController(); + final _oxyConcController = TextEditingController(); + final _oxySatController = TextEditingController(); + final _phController = TextEditingController(); + final _salinityController = TextEditingController(); + final _ecController = TextEditingController(); + final _tempController = TextEditingController(); + final _tdsController = TextEditingController(); + final _turbidityController = TextEditingController(); + final _tssController = TextEditingController(); + final _batteryController = TextEditingController(); + + @override + void initState() { + super.initState(); + _initializeControllers(); + } + + @override + void dispose() { + _dataSubscription?.cancel(); + _disposeControllers(); + super.dispose(); + } + + void _initializeControllers() { + // Use the date and time from Step 1 + widget.data.dataCaptureDate = widget.data.samplingDate; + widget.data.dataCaptureTime = widget.data.samplingTime; + + _sondeIdController.text = widget.data.sondeId ?? ''; + _dateController.text = widget.data.dataCaptureDate ?? ''; + _timeController.text = widget.data.dataCaptureTime ?? ''; + + // Set temporary default values to -999 for robust validation. + widget.data.oxygenConcentration ??= -999.0; + widget.data.oxygenSaturation ??= -999.0; + widget.data.ph ??= -999.0; + widget.data.salinity ??= -999.0; + widget.data.electricalConductivity ??= -999.0; + widget.data.temperature ??= -999.0; + widget.data.tds ??= -999.0; + widget.data.turbidity ??= -999.0; + widget.data.tss ??= -999.0; + widget.data.batteryVoltage ??= -999.0; + + _oxyConcController.text = widget.data.oxygenConcentration!.toString(); + _oxySatController.text = widget.data.oxygenSaturation!.toString(); + _phController.text = widget.data.ph!.toString(); + _salinityController.text = widget.data.salinity!.toString(); + _ecController.text = widget.data.electricalConductivity!.toString(); + _tempController.text = widget.data.temperature!.toString(); + _tdsController.text = widget.data.tds!.toString(); + _turbidityController.text = widget.data.turbidity!.toString(); + _tssController.text = widget.data.tss!.toString(); + _batteryController.text = widget.data.batteryVoltage!.toString(); + + // REPAIRED: Reordered parameters to match Step 4 and added icons. + if (_parameters.isEmpty) { + _parameters.addAll([ + {'icon': Icons.air, 'label': 'Oxygen Conc.', 'unit': 'mg/L', 'controller': _oxyConcController}, + {'icon': Icons.percent, 'label': 'Oxygen Sat.', 'unit': '%', 'controller': _oxySatController}, + {'icon': Icons.science_outlined, 'label': 'pH', 'unit': '', 'controller': _phController}, + {'icon': Icons.waves, 'label': 'Salinity', 'unit': 'ppt', 'controller': _salinityController}, + {'icon': Icons.flash_on, 'label': 'Conductivity', 'unit': 'µS/cm', 'controller': _ecController}, + {'icon': Icons.thermostat, 'label': 'Temperature', 'unit': '°C', 'controller': _tempController}, + {'icon': Icons.grain, 'label': 'TDS', 'unit': 'mg/L', 'controller': _tdsController}, + {'icon': Icons.opacity, 'label': 'Turbidity', 'unit': 'NTU', 'controller': _turbidityController}, + {'icon': Icons.filter_alt_outlined, 'label': 'TSS', 'unit': 'mg/L', 'controller': _tssController}, + {'icon': Icons.battery_charging_full, 'label': 'Battery', 'unit': 'V', 'controller': _batteryController}, + ]); + } + } + + void _disposeControllers() { + _sondeIdController.dispose(); + _dateController.dispose(); + _timeController.dispose(); + _oxyConcController.dispose(); + _oxySatController.dispose(); + _phController.dispose(); + _salinityController.dispose(); + _ecController.dispose(); + _tempController.dispose(); + _tdsController.dispose(); + _turbidityController.dispose(); + _tssController.dispose(); + _batteryController.dispose(); + } + + /// Handles the entire connection flow, including a permission check. + Future _handleConnectionAttempt(String type) async { + final service = context.read(); + + final bool hasPermissions = await service.requestDevicePermissions(); + if (!hasPermissions && mounted) { + _showSnackBar("Bluetooth & Location permissions are required to connect.", isError: true); + return; + } + + _disconnectFromAll(); + await Future.delayed(const Duration(milliseconds: 250)); + + final bool connectionSuccess = await _connectToDevice(type); + + if (connectionSuccess && mounted) { + _dataSubscription?.cancel(); + final stream = type == 'bluetooth' ? service.bluetoothDataStream : service.serialDataStream; + + _dataSubscription = stream.listen((readings) { + if (mounted) { + _updateTextFields(readings); + } + }); + } + } + + Future _connectToDevice(String type) async { + setState(() => _isLoading = true); + final service = context.read(); + bool success = false; + + try { + if (type == 'bluetooth') { + final devices = await service.getPairedBluetoothDevices(); + if (devices.isEmpty && mounted) { + _showSnackBar('No paired Bluetooth devices found.', isError: true); + return false; + } + final selectedDevice = await showBluetoothDeviceListDialog(context: context, devices: devices); + if (selectedDevice != null) { + await service.connectToBluetoothDevice(selectedDevice); + success = true; + } + } else if (type == 'serial') { + final devices = await service.getAvailableSerialDevices(); + if (devices.isEmpty && mounted) { + _showSnackBar('No USB Serial devices found.', isError: true); + return false; + } + final selectedDevice = await showSerialPortListDialog(context: context, devices: devices); + if (selectedDevice != null) { + await service.connectToSerialDevice(selectedDevice); + success = true; + } + } + } catch (e) { + if (mounted) _showSnackBar('Connection failed: $e', isError: true); + success = false; + } finally { + if (mounted) setState(() => _isLoading = false); + } + return success; + } + + void _toggleAutoReading(String activeType) { + final service = context.read(); + setState(() { + _isAutoReading = !_isAutoReading; + if (_isAutoReading) { + if (activeType == 'bluetooth') service.startBluetoothAutoReading(); + else service.startSerialAutoReading(); + } else { + if (activeType == 'bluetooth') service.stopBluetoothAutoReading(); + else service.stopSerialAutoReading(); + } + }); + } + + void _disconnect(String type) { + final service = context.read(); + if (type == 'bluetooth') { + service.disconnectFromBluetooth(); + } else { + service.disconnectFromSerial(); + } + _dataSubscription?.cancel(); + _dataSubscription = null; + if (mounted) { + setState(() => _isAutoReading = false); + } + } + + void _disconnectFromAll() { + final service = context.read(); + if (service.bluetoothConnectionState.value != BluetoothConnectionState.disconnected) { + _disconnect('bluetooth'); + } + if (service.serialConnectionState.value != SerialConnectionState.disconnected) { + _disconnect('serial'); + } + } + + void _updateTextFields(Map readings) { + const defaultValue = -999.0; + setState(() { + _oxyConcController.text = (readings['Optical Dissolved Oxygen: Compensated mg/L'] ?? defaultValue).toStringAsFixed(5); + _oxySatController.text = (readings['Optical Dissolved Oxygen: Compensated % Saturation'] ?? defaultValue).toStringAsFixed(5); + _phController.text = (readings['PH: PH units'] ?? defaultValue).toStringAsFixed(5); + _tempController.text = (readings['External Temp: Degrees Celcius'] ?? defaultValue).toStringAsFixed(5); + _ecController.text = (readings['Conductivity: us/cm'] ?? defaultValue).toStringAsFixed(5); + _salinityController.text = (readings['Conductivity: Salinity'] ?? defaultValue).toStringAsFixed(5); + _tdsController.text = (readings['Conductivity:TDS mg/L'] ?? defaultValue).toStringAsFixed(5); + _tssController.text = (readings['Turbidity: TSS'] ?? defaultValue).toStringAsFixed(5); + _turbidityController.text = (readings['Turbidity: FNU'] ?? defaultValue).toStringAsFixed(5); + _batteryController.text = (readings['Sonde: Battery Voltage'] ?? defaultValue).toStringAsFixed(5); + }); + } + + void _goToNextStep() { + if (_isAutoReading) { + showDialog( + context: context, + builder: (BuildContext context) { + return AlertDialog( + title: const Text('Data Collection Active'), + content: const Text('Please stop the live data collection before proceeding.'), + actions: [ + TextButton( + child: const Text('OK'), + onPressed: () { + Navigator.of(context).pop(); + }, + ), + ], + ); + }, + ); + return; + } + + _formKey.currentState!.save(); + + try { + const defaultValue = -999.0; + widget.data.temperature = double.tryParse(_tempController.text) ?? defaultValue; + widget.data.ph = double.tryParse(_phController.text) ?? defaultValue; + widget.data.salinity = double.tryParse(_salinityController.text) ?? defaultValue; + widget.data.electricalConductivity = double.tryParse(_ecController.text) ?? defaultValue; + widget.data.oxygenConcentration = double.tryParse(_oxyConcController.text) ?? defaultValue; + widget.data.oxygenSaturation = double.tryParse(_oxySatController.text) ?? defaultValue; + widget.data.tds = double.tryParse(_tdsController.text) ?? defaultValue; + widget.data.turbidity = double.tryParse(_turbidityController.text) ?? defaultValue; + widget.data.tss = double.tryParse(_tssController.text) ?? defaultValue; + widget.data.batteryVoltage = double.tryParse(_batteryController.text) ?? defaultValue; + } catch (e) { + _showSnackBar("Could not save parameters due to a data format error.", isError: true); + return; + } + + widget.onNext(); + } + + void _showSnackBar(String message, {bool isError = false}) { + if (mounted) { + ScaffoldMessenger.of(context).showSnackBar(SnackBar( + content: Text(message), + backgroundColor: isError ? Colors.red : null, + )); + } + } + + Map? _getActiveConnectionDetails() { + final service = context.watch(); + if (service.bluetoothConnectionState.value != BluetoothConnectionState.disconnected) { + return { + 'type': 'bluetooth', + 'state': service.bluetoothConnectionState.value, + 'name': service.connectedBluetoothDeviceName, + }; + } + if (service.serialConnectionState.value != SerialConnectionState.disconnected) { + return { + 'type': 'serial', + 'state': service.serialConnectionState.value, + 'name': service.connectedSerialDeviceName, + }; + } + return null; + } + + @override + Widget build(BuildContext context) { + final service = context.watch(); + final activeConnection = _getActiveConnectionDetails(); + final String? activeType = activeConnection?['type'] as String?; + + return Form( + key: _formKey, + child: ListView( + padding: const EdgeInsets.all(24.0), + children: [ + Text("Data Capture", style: Theme.of(context).textTheme.headlineSmall), + const SizedBox(height: 16), + Row( + children: [ + Expanded( + child: activeType == 'bluetooth' + ? FilledButton.icon( + icon: const Icon(Icons.bluetooth_connected), + label: const Text("Bluetooth"), + onPressed: _isLoading ? null : () => _handleConnectionAttempt('bluetooth'), + ) + : OutlinedButton.icon( + icon: const Icon(Icons.bluetooth), + label: const Text("Bluetooth"), + onPressed: _isLoading ? null : () => _handleConnectionAttempt('bluetooth'), + ), + ), + const SizedBox(width: 16), + Expanded( + child: activeType == 'serial' + ? FilledButton.icon( + icon: const Icon(Icons.usb), + label: const Text("USB Serial"), + onPressed: _isLoading ? null : () => _handleConnectionAttempt('serial'), + ) + : OutlinedButton.icon( + icon: const Icon(Icons.usb), + label: const Text("USB Serial"), + onPressed: _isLoading ? null : () => _handleConnectionAttempt('serial'), + ), + ), + ], + ), + const SizedBox(height: 16), + if (activeConnection != null) + _buildConnectionCard( + type: activeConnection['type'], + connectionState: activeConnection['state'], + deviceName: activeConnection['name'], + ), + const SizedBox(height: 24), + + ValueListenableBuilder( + valueListenable: service.sondeId, + builder: (context, sondeId, child) { + final newSondeId = sondeId ?? ''; + if (_sondeIdController.text != newSondeId) { + _sondeIdController.text = newSondeId; + widget.data.sondeId = newSondeId; + } + return TextFormField( + controller: _sondeIdController, + decoration: const InputDecoration( + labelText: 'Sonde ID *', + hintText: 'Connect device or enter manually'), + validator: (v) => v!.isEmpty ? 'Sonde ID is required' : null, + onChanged: (value) { + widget.data.sondeId = value; + }, + onSaved: (v) => widget.data.sondeId = v, + ); + }, + ), + + const SizedBox(height: 16), + Row( + children: [ + Expanded(child: TextFormField(controller: _dateController, readOnly: true, decoration: const InputDecoration(labelText: 'Date'))), + const SizedBox(width: 16), + Expanded(child: TextFormField(controller: _timeController, readOnly: true, decoration: const InputDecoration(labelText: 'Time'))), + ], + ), + const Divider(height: 32), + + // REPAIRED: Replaced GridView with a Column of modern list items. + Column( + children: _parameters.map((param) { + return _buildParameterListItem( + icon: param['icon'] as IconData, + label: param['label'] as String, + unit: param['unit'] as String, + controller: param['controller'] as TextEditingController, + ); + }).toList(), + ), + + const SizedBox(height: 32), + ElevatedButton( + onPressed: _goToNextStep, + style: ElevatedButton.styleFrom(padding: const EdgeInsets.symmetric(vertical: 16)), + child: const Text('Next'), + ), + ], + ), + ); + } + + // ADDED: New helper for modern list item view + Widget _buildParameterListItem({ + required IconData icon, + required String label, + required String unit, + required TextEditingController controller, + }) { + final bool isMissing = controller.text.isEmpty || controller.text.contains('-999'); + final String displayValue = isMissing ? '-.--' : controller.text; + final String displayLabel = unit.isEmpty ? label : '$label ($unit)'; + + return Card( + margin: const EdgeInsets.symmetric(vertical: 4.0), + child: ListTile( + leading: Icon(icon, color: Theme.of(context).primaryColor, size: 32), + title: Text(displayLabel), + trailing: Text( + displayValue, + style: Theme.of(context).textTheme.titleMedium?.copyWith( + fontWeight: FontWeight.bold, + color: isMissing ? Colors.grey : Theme.of(context).colorScheme.primary), + ), + ), + ); + } + + Widget _buildConnectionCard({required String type, required dynamic connectionState, String? deviceName}) { + final isConnected = connectionState == BluetoothConnectionState.connected || connectionState == SerialConnectionState.connected; + final isConnecting = connectionState == BluetoothConnectionState.connecting || connectionState == SerialConnectionState.connecting; + + Color statusColor = isConnected ? Colors.green : Colors.red; + String statusText = isConnected ? 'Connected to ${deviceName ?? 'device'}' : 'Disconnected'; + if (isConnecting) { + statusColor = Colors.orange; + statusText = 'Connecting...'; + } + + return Card( + elevation: 2, + child: Padding( + padding: const EdgeInsets.all(16.0), + child: Column( + children: [ + Text(statusText, style: TextStyle(color: statusColor, fontWeight: FontWeight.bold, fontSize: 16)), + const SizedBox(height: 16), + if (isConnecting || _isLoading) + const CircularProgressIndicator() + else if (isConnected) + Row( + mainAxisAlignment: MainAxisAlignment.spaceEvenly, + children: [ + ElevatedButton.icon( + icon: Icon(_isAutoReading ? Icons.stop_circle_outlined : Icons.play_circle_outlined), + label: Text(_isAutoReading ? 'Stop Reading' : 'Start Reading'), + onPressed: () => _toggleAutoReading(type), + style: ElevatedButton.styleFrom( + backgroundColor: _isAutoReading ? Colors.orange : Colors.green, + foregroundColor: Colors.white, + ), + ), + TextButton.icon( + icon: const Icon(Icons.link_off), + label: const Text('Disconnect'), + onPressed: () => _disconnect(type), + style: TextButton.styleFrom(foregroundColor: Colors.red), + ) + ], + ) + ], + ), + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/marine/manual/widgets/in_situ_step_4_summary.dart b/lib/screens/marine/manual/widgets/in_situ_step_4_summary.dart new file mode 100644 index 0000000..a57b6bb --- /dev/null +++ b/lib/screens/marine/manual/widgets/in_situ_step_4_summary.dart @@ -0,0 +1,225 @@ +import 'dart:io'; +import 'package:flutter/material.dart'; + +import '../../../../models/in_situ_sampling_data.dart'; + +class InSituStep4Summary extends StatelessWidget { + final InSituSamplingData data; + final VoidCallback onSubmit; + final bool isLoading; + + const InSituStep4Summary({ + super.key, + required this.data, + required this.onSubmit, + required this.isLoading, + }); + + @override + Widget build(BuildContext context) { + return ListView( + padding: const EdgeInsets.all(16.0), + children: [ + Text( + "Please review all information before submitting.", + style: Theme.of(context).textTheme.titleMedium, + textAlign: TextAlign.center, + ), + const SizedBox(height: 16), + + _buildSectionCard( + context, + "Sampling & Station Details", + [ + _buildDetailRow("1st Sampler:", data.firstSamplerName), + _buildDetailRow("2nd Sampler:", data.secondSampler?['first_name']?.toString()), + _buildDetailRow("Sampling Date:", data.samplingDate), + _buildDetailRow("Sampling Time:", data.samplingTime), + _buildDetailRow("Sampling Type:", data.samplingType), + _buildDetailRow("Sample ID Code:", data.sampleIdCode), + const Divider(height: 20), + _buildDetailRow("State:", data.selectedStateName), + _buildDetailRow("Category:", data.selectedCategoryName), + _buildDetailRow("Station Code:", data.selectedStation?['man_station_code']?.toString()), + _buildDetailRow("Station Name:", data.selectedStation?['man_station_name']?.toString()), + _buildDetailRow("Station Location:", "${data.stationLatitude}, ${data.stationLongitude}"), + ], + ), + + _buildSectionCard( + context, + "Location & On-Site Info", + [ + _buildDetailRow("Current Location:", "${data.currentLatitude}, ${data.currentLongitude}"), + _buildDetailRow("Distance Difference:", data.distanceDifferenceInKm != null ? "${(data.distanceDifferenceInKm! * 1000).toStringAsFixed(0)} meters" : "N/A"), + if (data.distanceDifferenceRemarks != null && data.distanceDifferenceRemarks!.isNotEmpty) + _buildDetailRow("Distance Remarks:", data.distanceDifferenceRemarks), + const Divider(height: 20), + _buildDetailRow("Weather:", data.weather), + _buildDetailRow("Tide Level:", data.tideLevel), + _buildDetailRow("Sea Condition:", data.seaCondition), + _buildDetailRow("Event Remarks:", data.eventRemarks), + _buildDetailRow("Lab Remarks:", data.labRemarks), + ], + ), + + _buildSectionCard( + context, + "Attached Photos", + [ + _buildImageCard("Left Side Land View", data.leftLandViewImage), + _buildImageCard("Right Side Land View", data.rightLandViewImage), + _buildImageCard("Filling Water into Bottle", data.waterFillingImage), + _buildImageCard("Seawater Color in Bottle", data.seawaterColorImage), + _buildImageCard("Examine Preservative (pH paper)", data.phPaperImage), + const Divider(height: 24), + Text("Optional Photos", style: Theme.of(context).textTheme.titleMedium?.copyWith(fontWeight: FontWeight.bold)), + const SizedBox(height: 8), + _buildImageCard("Optional Photo 1", data.optionalImage1, remark: data.optionalRemark1), + _buildImageCard("Optional Photo 2", data.optionalImage2, remark: data.optionalRemark2), + _buildImageCard("Optional Photo 3", data.optionalImage3, remark: data.optionalRemark3), + _buildImageCard("Optional Photo 4", data.optionalImage4, remark: data.optionalRemark4), + ], + ), + + _buildSectionCard( + context, + "Captured Parameters", + [ + _buildDetailRow("Sonde ID:", data.sondeId), + _buildDetailRow("Capture Time:", "${data.dataCaptureDate} ${data.dataCaptureTime}"), + const Divider(height: 20), + _buildParameterListItem(context, icon: Icons.air, label: "Oxygen Conc.", unit: "mg/L", value: data.oxygenConcentration?.toStringAsFixed(2)), + _buildParameterListItem(context, icon: Icons.percent, label: "Oxygen Sat.", unit: "%", value: data.oxygenSaturation?.toStringAsFixed(2)), + _buildParameterListItem(context, icon: Icons.science_outlined, label: "pH", unit: "", value: data.ph?.toStringAsFixed(2)), + _buildParameterListItem(context, icon: Icons.waves, label: "Salinity", unit: "ppt", value: data.salinity?.toStringAsFixed(2)), + _buildParameterListItem(context, icon: Icons.flash_on, label: "Conductivity", unit: "µS/cm", value: data.electricalConductivity?.toStringAsFixed(0)), + _buildParameterListItem(context, icon: Icons.thermostat, label: "Temperature", unit: "°C", value: data.temperature?.toStringAsFixed(2)), + _buildParameterListItem(context, icon: Icons.grain, label: "TDS", unit: "mg/L", value: data.tds?.toStringAsFixed(2)), + _buildParameterListItem(context, icon: Icons.opacity, label: "Turbidity", unit: "NTU", value: data.turbidity?.toStringAsFixed(2)), + _buildParameterListItem(context, icon: Icons.filter_alt_outlined, label: "TSS", unit: "mg/L", value: data.tss?.toStringAsFixed(2)), + _buildParameterListItem(context, icon: Icons.battery_charging_full, label: "Battery", unit: "V", value: data.batteryVoltage?.toStringAsFixed(2)), + ], + ), + + const SizedBox(height: 24), + isLoading + ? const Center(child: CircularProgressIndicator()) + : ElevatedButton.icon( + onPressed: onSubmit, + icon: const Icon(Icons.cloud_upload), + label: const Text('Confirm & Submit'), + style: ElevatedButton.styleFrom( + padding: const EdgeInsets.symmetric(vertical: 16), + textStyle: const TextStyle(fontSize: 18, fontWeight: FontWeight.bold), + ), + ), + const SizedBox(height: 16), + ], + ); + } + + /// A reusable widget to create a consistent section card. + Widget _buildSectionCard(BuildContext context, String title, List children) { + return Card( + margin: const EdgeInsets.symmetric(vertical: 8.0), + elevation: 2, + shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(12)), + child: Padding( + padding: const EdgeInsets.all(16.0), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + title, + style: TextStyle( + fontSize: 18, + fontWeight: FontWeight.bold, + color: Theme.of(context).primaryColor, + ), + ), + const Divider(height: 20, thickness: 1), + ...children, + ], + ), + ), + ); + } + + /// A reusable widget for a label-value row. + Widget _buildDetailRow(String label, String? value) { + return Padding( + padding: const EdgeInsets.symmetric(vertical: 6.0), + child: Row( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Expanded( + flex: 2, + child: Text(label, style: const TextStyle(fontWeight: FontWeight.bold)), + ), + const SizedBox(width: 8), + Expanded( + flex: 3, + child: Text(value != null && value.isNotEmpty ? value : 'N/A', style: const TextStyle(fontSize: 16)), + ), + ], + ), + ); + } + + Widget _buildParameterListItem(BuildContext context, {required IconData icon, required String label, required String unit, required String? value}) { + // REPAIRED: Only check if the value is null. It will now display numerical + // values like -999.00 instead of converting them to 'N/A'. + final bool isMissing = value == null; + final String displayValue = isMissing ? 'N/A' : '$value ${unit}'.trim(); + + return ListTile( + dense: true, + contentPadding: EdgeInsets.zero, + leading: Icon(icon, color: Theme.of(context).primaryColor, size: 28), + title: Text(label, style: const TextStyle(fontWeight: FontWeight.bold)), + trailing: Text( + displayValue, + style: Theme.of(context).textTheme.bodyLarge?.copyWith( + color: isMissing ? Colors.grey : null, + fontWeight: isMissing ? null : FontWeight.bold, + ), + ), + ); + } + + /// A reusable widget to display an attached image or a placeholder. + Widget _buildImageCard(String title, File? image, {String? remark}) { + final bool hasRemark = remark != null && remark.isNotEmpty; + return Padding( + padding: const EdgeInsets.symmetric(vertical: 8.0), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text(title, style: const TextStyle(fontWeight: FontWeight.bold, fontSize: 16)), + const SizedBox(height: 8), + if (image != null) + ClipRRect( + borderRadius: BorderRadius.circular(8.0), + child: Image.file(image, key: UniqueKey(), height: 200, width: double.infinity, fit: BoxFit.cover), + ) + else + Container( + height: 100, + width: double.infinity, + decoration: BoxDecoration( + color: Colors.grey[200], + borderRadius: BorderRadius.circular(8.0), + border: Border.all(color: Colors.grey[300]!)), + child: const Center(child: Text('No Image Attached', style: TextStyle(color: Colors.grey))), + ), + if (hasRemark) + Padding( + padding: const EdgeInsets.only(top: 8.0), + child: Text('Remark: $remark', style: const TextStyle(fontStyle: FontStyle.italic)), + ), + ], + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/marine/marine_home_page.dart b/lib/screens/marine/marine_home_page.dart new file mode 100644 index 0000000..53b7fd0 --- /dev/null +++ b/lib/screens/marine/marine_home_page.dart @@ -0,0 +1,166 @@ +import 'package:flutter/material.dart'; + +// Re-defining SidebarItem here for self-containment, +// ideally this would be in a shared utility file if used across many screens. +class SidebarItem { + final IconData? icon; + final String label; + final String? route; + final List? children; + final bool isParent; + final String? imagePath; + + const SidebarItem({ + this.icon, + required this.label, + this.route, + this.children, + this.isParent = false, + this.imagePath, + }) : assert(icon != null || imagePath != null, 'Either icon or imagePath must be provided'); +} + +class MarineHomePage extends StatelessWidget { + const MarineHomePage({super.key}); + + // Define Marine's sub-menu structure (Manual, Continuous, Investigative) + final List _marineSubMenus = const [ + SidebarItem( + icon: Icons.handshake, + label: "Manual", + isParent: true, + children: [ + SidebarItem(icon: Icons.dashboard, label: "Dashboard", route: '/marine/manual/dashboard'), + SidebarItem(icon: Icons.description, label: "Info Centre Document", route: '/marine/manual/info'), + SidebarItem(icon: Icons.assignment, label: "Pre-Sampling", route: '/marine/manual/pre-sampling'), + SidebarItem(icon: Icons.pin_drop, label: "In-Situ Sampling", route: '/marine/manual/in-situ'), + SidebarItem(icon: Icons.waves, label: "Tarball Sampling", route: '/marine/manual/tarball'), + SidebarItem(icon: Icons.receipt_long, label: "Report", route: '/marine/manual/report'), + SidebarItem(icon: Icons.article, label: "Data Log", route: '/marine/manual/data-log'), + SidebarItem(icon: Icons.image, label: "Image Request", route: '/marine/manual/image-request'), + ], + ), + SidebarItem( + icon: Icons.trending_up, + label: "Continuous", + isParent: true, + children: [ + SidebarItem(icon: Icons.dashboard, label: "Dashboard", route: '/marine/continuous/dashboard'), + SidebarItem(icon: Icons.info, label: "Overview", route: '/marine/continuous/overview'), + SidebarItem(icon: Icons.input, label: "Entry", route: '/marine/continuous/entry'), + SidebarItem(icon: Icons.receipt_long, label: "Report", route: '/marine/continuous/report'), + ], + ), + SidebarItem( + icon: Icons.search, + label: "Investigative", + isParent: true, + children: [ + SidebarItem(icon: Icons.dashboard, label: "Dashboard", route: '/marine/investigative/dashboard'), + SidebarItem(icon: Icons.info, label: "Overview", route: '/marine/investigative/overview'), + SidebarItem(icon: Icons.input, label: "Entry", route: '/marine/investigative/entry'), + SidebarItem(icon: Icons.receipt_long, label: "Report", route: '/marine/investigative/report'), + ], + ), + ]; + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar( + title: const Text("Marine Department"), + ), + body: SingleChildScrollView( + padding: const EdgeInsets.all(24.0), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + "Explore Marine Monitoring Sections", + style: Theme.of(context).textTheme.headlineSmall?.copyWith( + fontWeight: FontWeight.bold, + ), + ), + const SizedBox(height: 24), + Column( + children: _marineSubMenus.map((category) { + return _buildCategorySection(context, category); + }).toList(), + ), + ], + ), + ), + ); + } + + // Method to build each category section (Manual, Continuous, Investigative) + Widget _buildCategorySection(BuildContext context, SidebarItem category) { + return Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + // Category header (icon + label) + Padding( + padding: const EdgeInsets.symmetric(vertical: 8.0), + child: Row( + children: [ + Icon(category.icon, size: 30, color: Theme.of(context).iconTheme.color), + const SizedBox(width: 12), + Text( + category.label, + style: Theme.of(context).textTheme.titleLarge?.copyWith( + fontWeight: FontWeight.bold, + ), + ), + ], + ), + ), + const Divider(height: 24, thickness: 1, color: Colors.white24), // Divider below category title + // Grid of sub-menu items + GridView.builder( + shrinkWrap: true, + physics: const NeverScrollableScrollPhysics(), + gridDelegate: const SliverGridDelegateWithFixedCrossAxisCount( + crossAxisCount: 3, // 3 columns for sub-menu items + crossAxisSpacing: 0.0, // Removed horizontal spacing + mainAxisSpacing: 0.0, // Removed vertical spacing + childAspectRatio: 2.8, // Adjusted aspect ratio for horizontal icon-label layout with bigger content + ), + itemCount: category.children?.length ?? 0, + itemBuilder: (context, index) { + final subItem = category.children![index]; + return InkWell( + onTap: () { + if (subItem.route != null) { + Navigator.pushNamed(context, subItem.route!); + } + }, + borderRadius: BorderRadius.circular(0), // Removed border radius for seamless grid + child: Padding( + padding: const EdgeInsets.all(8.0), // Padding around the row content + child: Row( // Changed from Column to Row + mainAxisAlignment: MainAxisAlignment.start, // Align content to start + children: [ + subItem.icon != null + ? Icon(subItem.icon, color: Colors.white70, size: 24) // Increased icon size from 22 to 24 + : const SizedBox.shrink(), + const SizedBox(width: 8), // Space between icon and text (horizontal) + Expanded( // Allow text to take remaining space + child: Text( + subItem.label, + style: Theme.of(context).textTheme.bodySmall?.copyWith(color: Colors.white70, fontSize: 11), // Increased text size from 10 to 11 + textAlign: TextAlign.left, // Align text to left + overflow: TextOverflow.ellipsis, + maxLines: 1, // Single line for label + ), + ), + ], + ), + ), + ); + }, + ), + const SizedBox(height: 16), // Reduced gap after each category group + ], + ); + } +} diff --git a/lib/screens/profile.dart b/lib/screens/profile.dart new file mode 100644 index 0000000..e14b6d6 --- /dev/null +++ b/lib/screens/profile.dart @@ -0,0 +1,357 @@ +import 'dart:io'; +import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; +import 'package:image_picker/image_picker.dart'; +import 'package:path_provider/path_provider.dart'; +import 'package:path/path.dart' as p; + +import 'package:environment_monitoring_app/auth_provider.dart'; +import 'package:environment_monitoring_app/services/api_service.dart'; + +class ProfileScreen extends StatefulWidget { + const ProfileScreen({super.key}); + + @override + State createState() => _ProfileScreenState(); +} + +class _ProfileScreenState extends State { + final ApiService _apiService = ApiService(); + bool _isLoading = false; + String _errorMessage = ''; + File? _profileImageFile; + + @override + void initState() { + super.initState(); + // Load the image from cache first, then refresh data from the provider + _loadLocalProfileImage().then((_) { + // If no profile data is available at all, trigger a refresh + if (Provider.of(context, listen: false).profileData == null) { + _refreshProfile(); + } + }); + } + + /// Refreshes only the profile data using the dedicated provider method. + Future _refreshProfile() async { + setState(() { + _isLoading = true; + _errorMessage = ''; + }); + + try { + final auth = Provider.of(context, listen: false); + // Call the efficient refreshProfile method instead of the full sync. + await auth.refreshProfile(); + // After syncing, reload the potentially new profile image + await _loadLocalProfileImage(); + } catch (e) { + if (mounted) { + setState(() { + _errorMessage = 'An unexpected error occurred during sync: ${e.toString()}'; + }); + } + } finally { + if (mounted) { + setState(() { + _isLoading = false; + }); + } + } + } + + /// Loads the profile image from the local cache or downloads it if not present. + Future _loadLocalProfileImage() async { + final auth = Provider.of(context, listen: false); + final String? serverImagePath = auth.profileData?['profile_picture']; + + if (serverImagePath != null && serverImagePath.isNotEmpty) { + final String localFileName = p.basename(serverImagePath); + final Directory appDocDir = await getApplicationDocumentsDirectory(); + final String localFilePath = p.join(appDocDir.path, 'profile_pictures', localFileName); + final File localFile = File(localFilePath); + + if (await localFile.exists()) { + if (mounted) setState(() => _profileImageFile = localFile); + } else { + final String fullImageUrl = ApiService.imageBaseUrl + serverImagePath; + final downloadedFile = await _apiService.downloadProfilePicture(fullImageUrl, localFilePath); + if (downloadedFile != null && mounted) { + setState(() => _profileImageFile = downloadedFile); + } + } + } else { + if (mounted) setState(() => _profileImageFile = null); + } + } + + /// Shows a modal bottom sheet for selecting an image source. + Future _showImageSourceSelection() async { + showModalBottomSheet( + context: context, + builder: (BuildContext context) { + return SafeArea( + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + ListTile( + leading: const Icon(Icons.camera_alt), + title: const Text('Take a photo'), + onTap: () { + Navigator.pop(context); + _pickAndUploadImage(ImageSource.camera); + }, + ), + ListTile( + leading: const Icon(Icons.photo_library), + title: const Text('Choose from gallery'), + onTap: () { + Navigator.pop(context); + _pickAndUploadImage(ImageSource.gallery); + }, + ), + ], + ), + ); + }, + ); + } + + /// Picks an image and initiates the upload process. + Future _pickAndUploadImage(ImageSource source) async { + final ImagePicker picker = ImagePicker(); + final XFile? pickedFile = await picker.pickImage(source: source, imageQuality: 85, maxWidth: 1024); + + if (pickedFile != null) { + setState(() => _isLoading = true); + final File imageFile = File(pickedFile.path); + + final uploadResult = await _apiService.uploadProfilePicture(imageFile); + + if (mounted) { + if (uploadResult['success']) { + // After a successful upload, efficiently refresh only the profile data. + await _refreshProfile(); + _showSnackBar("Profile picture updated successfully.", isError: false); + } else { + setState(() { + _errorMessage = uploadResult['message'] ?? 'Failed to upload profile picture.'; + }); + _showSnackBar(_errorMessage, isError: true); + } + setState(() => _isLoading = false); + } + } + } + + void _showSnackBar(String message, {bool isError = false}) { + if (mounted) { + ScaffoldMessenger.of(context).showSnackBar( + SnackBar( + content: Text(message), + backgroundColor: isError ? Theme.of(context).colorScheme.error : Colors.green, + ), + ); + } + } + + @override + Widget build(BuildContext context) { + final auth = Provider.of(context); + final profileData = auth.profileData; + + return Scaffold( + appBar: AppBar( + title: const Text("User Profile"), + actions: [ + IconButton( + icon: const Icon(Icons.refresh), + onPressed: _isLoading ? null : _refreshProfile, + ), + ], + ), + body: Column( + children: [ + Expanded( + child: _isLoading && profileData == null + ? const Center(child: CircularProgressIndicator()) + : _errorMessage.isNotEmpty + ? Center( + child: Padding( + padding: const EdgeInsets.all(16.0), + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Icon(Icons.error_outline, color: Theme.of(context).colorScheme.error, size: 50), + const SizedBox(height: 16), + Text( + _errorMessage, + textAlign: TextAlign.center, + style: TextStyle(color: Theme.of(context).colorScheme.error, fontSize: 16), + ), + const SizedBox(height: 24), + ElevatedButton( + onPressed: _isLoading ? null : _refreshProfile, + child: const Text('Retry'), + ), + ], + ), + ), + ) + : profileData == null + ? const Center(child: Text('No profile data available.')) + : RefreshIndicator( + onRefresh: _refreshProfile, + child: SingleChildScrollView( + physics: const AlwaysScrollableScrollPhysics(), + padding: const EdgeInsets.all(24.0), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Center( + child: GestureDetector( + onTap: _isLoading ? null : _showImageSourceSelection, + child: Stack( + alignment: Alignment.bottomRight, + children: [ + CircleAvatar( + radius: 60, + backgroundColor: Theme.of(context).colorScheme.secondary, + backgroundImage: _profileImageFile != null ? FileImage(_profileImageFile!) : null, + child: _profileImageFile == null ? Icon(Icons.person, size: 80, color: Theme.of(context).colorScheme.onSecondary) : null, + ), + if (!_isLoading) + Positioned( + right: 0, + bottom: 0, + child: CircleAvatar( + radius: 20, + backgroundColor: Theme.of(context).primaryColor, + child: Icon(Icons.edit, color: Theme.of(context).colorScheme.onPrimary, size: 20), + ), + ), + ], + ), + ), + ), + const SizedBox(height: 32), + _buildProfileSection(context, "Personal Information", [ + _buildProfileDetail(context, "Username:", profileData['username']), + _buildProfileDetail(context, "Email:", profileData['email']), + _buildProfileDetail(context, "First Name:", profileData['first_name']), + _buildProfileDetail(context, "Last Name:", profileData['last_name']), + _buildProfileDetail(context, "Phone Number:", profileData['phone_number']), + ]), + const SizedBox(height: 24), + _buildProfileSection(context, "Organizational Details", [ + _buildProfileDetail(context, "Role:", profileData['role_name']), + _buildProfileDetail(context, "Department:", profileData['department_name']), + _buildProfileDetail(context, "Company:", profileData['company_name']), + _buildProfileDetail(context, "Position:", profileData['position_name']), + ]), + const SizedBox(height: 24), + _buildProfileSection(context, "Account Status", [ + _buildProfileDetail(context, "Account Status:", profileData['account_status']), + _buildProfileDetail(context, "Registered On:", profileData['date_registered']), + ]), + ], + ), + ), + ), + ), + Padding( + padding: const EdgeInsets.all(24.0), + child: Center( + child: ElevatedButton.icon( + icon: const Icon(Icons.logout), + label: const Text("Logout"), + onPressed: () { + showDialog( + context: context, + barrierDismissible: false, + builder: (dialogContext) => AlertDialog( + title: const Text("Confirm Logout"), + content: const Text("Are you sure you want to log out?"), + actions: [ + TextButton( + onPressed: () => Navigator.pop(dialogContext), + child: const Text("Cancel"), + ), + ElevatedButton( + onPressed: () { + Navigator.pop(dialogContext); + auth.logout(); + Navigator.pushNamedAndRemoveUntil(context, '/', (route) => false); + }, + style: ElevatedButton.styleFrom( + backgroundColor: Colors.red[700], + foregroundColor: Colors.white, + ), + child: const Text("Logout"), + ), + ], + ), + ); + }, + style: ElevatedButton.styleFrom( + backgroundColor: Colors.red[700], + foregroundColor: Colors.white, + padding: const EdgeInsets.symmetric(horizontal: 24, vertical: 16), + ), + ), + ), + ), + ], + ), + ); + } + + Widget _buildProfileSection(BuildContext context, String title, List details) { + return Card( + elevation: 4, + margin: const EdgeInsets.symmetric(vertical: 8.0), + shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(12)), + child: Padding( + padding: const EdgeInsets.all(16.0), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + title, + style: Theme.of(context).textTheme.headlineSmall?.copyWith(fontWeight: FontWeight.bold, color: Theme.of(context).primaryColor), + ), + const Divider(height: 20, thickness: 1.5), + ...details, + ], + ), + ), + ); + } + + Widget _buildProfileDetail(BuildContext context, String label, dynamic value) { + return Padding( + padding: const EdgeInsets.symmetric(vertical: 8.0), + child: Row( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Expanded( + flex: 2, + child: Text( + label, + style: Theme.of(context).textTheme.titleMedium?.copyWith(fontWeight: FontWeight.bold), + ), + ), + const SizedBox(width: 16), + Expanded( + flex: 3, + child: Text( + value?.toString() ?? 'N/A', + style: Theme.of(context).textTheme.bodyLarge, + ), + ), + ], + ), + ); + } +} diff --git a/lib/screens/register.dart b/lib/screens/register.dart new file mode 100644 index 0000000..22151c5 --- /dev/null +++ b/lib/screens/register.dart @@ -0,0 +1,224 @@ +import 'package:flutter/material.dart'; +import 'package:connectivity_plus/connectivity_plus.dart'; +import 'package:provider/provider.dart'; +import 'package:dropdown_search/dropdown_search.dart'; + +import 'package:environment_monitoring_app/services/api_service.dart'; +import 'package:environment_monitoring_app/auth_provider.dart'; + +class RegisterScreen extends StatefulWidget { + const RegisterScreen({super.key}); + + @override + State createState() => _RegisterScreenState(); +} + +class _RegisterScreenState extends State { + final _formKey = GlobalKey(); + final ApiService _apiService = ApiService(); + bool _isLoading = false; + String _errorMessage = ''; + + // Controllers for text fields + final TextEditingController _usernameController = TextEditingController(); + final TextEditingController _firstNameController = TextEditingController(); + final TextEditingController _lastNameController = TextEditingController(); + final TextEditingController _emailController = TextEditingController(); + final TextEditingController _passwordController = TextEditingController(); + final TextEditingController _confirmPasswordController = TextEditingController(); + final TextEditingController _phoneController = TextEditingController(); + + // State for dropdown selections + int? _selectedDepartmentId; + int? _selectedCompanyId; + int? _selectedPositionId; + + @override + void dispose() { + _usernameController.dispose(); + _firstNameController.dispose(); + _lastNameController.dispose(); + _emailController.dispose(); + _passwordController.dispose(); + _confirmPasswordController.dispose(); + _phoneController.dispose(); + super.dispose(); + } + + Future _register() async { + if (!_formKey.currentState!.validate()) { + return; + } + + setState(() { + _isLoading = true; + _errorMessage = ''; + }); + + final connectivityResult = await Connectivity().checkConnectivity(); + if (connectivityResult == ConnectivityResult.none) { + if (!mounted) return; + setState(() { + _isLoading = false; + _errorMessage = 'An internet connection is required to register.'; + }); + _showSnackBar(_errorMessage, isError: true); + return; + } + + final result = await _apiService.register( + username: _usernameController.text.trim(), + firstName: _firstNameController.text.trim(), + lastName: _lastNameController.text.trim(), + email: _emailController.text.trim(), + password: _passwordController.text.trim(), + phoneNumber: _phoneController.text.trim(), + departmentId: _selectedDepartmentId, + companyId: _selectedCompanyId, + positionId: _selectedPositionId, + ); + + if (!mounted) return; + + if (result['success'] == true) { + _showSnackBar('Registration successful! Please log in.', isError: false); + Navigator.of(context).pop(); + } else { + setState(() { + _isLoading = false; + _errorMessage = result['message'] ?? 'An unknown registration error occurred.'; + }); + _showSnackBar(_errorMessage, isError: true); + } + } + + void _showSnackBar(String message, {bool isError = false}) { + if (mounted) { + ScaffoldMessenger.of(context).showSnackBar( + SnackBar( + content: Text(message), + backgroundColor: isError ? Theme.of(context).colorScheme.error : Colors.green, + ), + ); + } + } + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: const Text('Register')), + body: SingleChildScrollView( + padding: const EdgeInsets.all(16.0), + // Use a Consumer to rebuild the form when the provider's data changes + child: Consumer( + builder: (context, auth, child) { + // Access the cached data from the listening AuthProvider + final departments = auth.departments ?? []; + final companies = auth.companies ?? []; + final positions = auth.positions ?? []; + + return Form( + key: _formKey, + child: Column( + children: [ + TextFormField( + controller: _usernameController, + decoration: const InputDecoration(labelText: 'Username *'), + validator: (value) => value!.isEmpty ? 'Username is required' : null, + ), + const SizedBox(height: 16), + TextFormField( + controller: _firstNameController, + decoration: const InputDecoration(labelText: 'First Name'), + ), + const SizedBox(height: 16), + TextFormField( + controller: _lastNameController, + decoration: const InputDecoration(labelText: 'Last Name'), + ), + const SizedBox(height: 16), + TextFormField( + controller: _emailController, + decoration: const InputDecoration(labelText: 'Email *'), + keyboardType: TextInputType.emailAddress, + validator: (value) { + if (value == null || value.isEmpty) return 'Email is required'; + if (!RegExp(r'\S+@\S+\.\S+').hasMatch(value)) return 'Please enter a valid email'; + return null; + }, + ), + const SizedBox(height: 16), + TextFormField( + controller: _passwordController, + decoration: const InputDecoration(labelText: 'Password *'), + obscureText: true, + validator: (value) => (value?.length ?? 0) < 6 ? 'Password must be at least 6 characters' : null, + ), + const SizedBox(height: 16), + TextFormField( + controller: _confirmPasswordController, + decoration: const InputDecoration(labelText: 'Confirm Password *'), + obscureText: true, + validator: (value) { + if (value != _passwordController.text) return 'Passwords do not match'; + return null; + }, + ), + const SizedBox(height: 16), + TextFormField( + controller: _phoneController, + decoration: const InputDecoration(labelText: 'Phone Number'), + keyboardType: TextInputType.phone, + ), + const SizedBox(height: 16), + DropdownSearch>( + items: departments, + itemAsString: (item) => item['department_name'], + onChanged: (value) => setState(() => _selectedDepartmentId = value?['department_id']), + popupProps: const PopupProps.menu(showSearchBox: true), + dropdownDecoratorProps: const DropDownDecoratorProps(dropdownSearchDecoration: InputDecoration(labelText: "Department")), + ), + const SizedBox(height: 16), + DropdownSearch>( + items: companies, + itemAsString: (item) => item['company_name'], + onChanged: (value) => setState(() => _selectedCompanyId = value?['company_id']), + popupProps: const PopupProps.menu(showSearchBox: true), + dropdownDecoratorProps: const DropDownDecoratorProps(dropdownSearchDecoration: InputDecoration(labelText: "Company")), + ), + const SizedBox(height: 16), + DropdownSearch>( + items: positions, + itemAsString: (item) => item['position_name'], + onChanged: (value) => setState(() => _selectedPositionId = value?['position_id']), + popupProps: const PopupProps.menu(showSearchBox: true), + dropdownDecoratorProps: const DropDownDecoratorProps(dropdownSearchDecoration: InputDecoration(labelText: "Position")), + ), + const SizedBox(height: 24), + _isLoading + ? const CircularProgressIndicator() + : ElevatedButton( + onPressed: _register, + style: ElevatedButton.styleFrom( + minimumSize: const Size(double.infinity, 50), + ), + child: const Text('Register'), + ), + if (_errorMessage.isNotEmpty) + Padding( + padding: const EdgeInsets.only(top: 12), + child: Text( + _errorMessage, + style: TextStyle(color: Theme.of(context).colorScheme.error), + textAlign: TextAlign.center, + ), + ), + ], + ), + ); + }, + ), + ), + ); + } +} diff --git a/lib/screens/river/continuous/entry.dart b/lib/screens/river/continuous/entry.dart new file mode 100644 index 0000000..c724b5f --- /dev/null +++ b/lib/screens/river/continuous/entry.dart @@ -0,0 +1,61 @@ +import 'package:flutter/material.dart'; + +class EntryScreen extends StatefulWidget { + @override + State createState() => _EntryScreenState(); +} + +class _EntryScreenState extends State { + final _formKey = GlobalKey(); + String station = ''; + String parameter = ''; + String value = ''; + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: Text("River Continuous Entry")), + body: Padding( + padding: const EdgeInsets.all(24), + child: Form( + key: _formKey, + child: ListView( + children: [ + Text("Enter Monitoring Data", style: TextStyle(fontSize: 18, fontWeight: FontWeight.bold)), + SizedBox(height: 24), + TextFormField( + decoration: InputDecoration(labelText: "Station"), + onChanged: (val) => station = val, + validator: (val) => val == null || val.isEmpty ? "Required" : null, + ), + SizedBox(height: 16), + TextFormField( + decoration: InputDecoration(labelText: "Parameter"), + onChanged: (val) => parameter = val, + validator: (val) => val == null || val.isEmpty ? "Required" : null, + ), + SizedBox(height: 16), + TextFormField( + decoration: InputDecoration(labelText: "Value"), + keyboardType: TextInputType.number, + onChanged: (val) => value = val, + validator: (val) => val == null || val.isEmpty ? "Required" : null, + ), + SizedBox(height: 24), + ElevatedButton( + onPressed: () { + if (_formKey.currentState!.validate()) { + ScaffoldMessenger.of(context).showSnackBar( + SnackBar(content: Text("Data submitted")), + ); + } + }, + child: Text("Submit"), + ), + ], + ), + ), + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/river/continuous/overview.dart b/lib/screens/river/continuous/overview.dart new file mode 100644 index 0000000..8a7af10 --- /dev/null +++ b/lib/screens/river/continuous/overview.dart @@ -0,0 +1,17 @@ +import 'package:flutter/material.dart'; + +class OverviewScreen extends StatelessWidget { + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: Text("River Continuous Overview")), + body: Padding( + padding: const EdgeInsets.all(24), + child: Text( + "This screen provides an overview of continuous river monitoring data, including flow rates, water quality, and station status.", + style: TextStyle(fontSize: 16), + ), + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/river/continuous/report.dart b/lib/screens/river/continuous/report.dart new file mode 100644 index 0000000..89fb0b1 --- /dev/null +++ b/lib/screens/river/continuous/report.dart @@ -0,0 +1,39 @@ +import 'package:flutter/material.dart'; + +class ReportScreen extends StatelessWidget { + final List> sampleData = [ + {"Station": "River A", "Parameter": "DO", "Value": "6.5"}, + {"Station": "River B", "Parameter": "pH", "Value": "7.2"}, + ]; + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: Text("River Continuous Report")), + body: Padding( + padding: const EdgeInsets.all(24), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text("Monitoring Report", style: TextStyle(fontSize: 18, fontWeight: FontWeight.bold)), + SizedBox(height: 16), + DataTable( + columns: [ + DataColumn(label: Text("Station")), + DataColumn(label: Text("Parameter")), + DataColumn(label: Text("Value")), + ], + rows: sampleData.map((data) { + return DataRow(cells: [ + DataCell(Text(data["Station"]!)), + DataCell(Text(data["Parameter"]!)), + DataCell(Text(data["Value"]!)), + ]); + }).toList(), + ), + ], + ), + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/river/continuous/river_continuous_dashboard.dart b/lib/screens/river/continuous/river_continuous_dashboard.dart new file mode 100644 index 0000000..c1f787d --- /dev/null +++ b/lib/screens/river/continuous/river_continuous_dashboard.dart @@ -0,0 +1,42 @@ +import 'package:flutter/material.dart'; + +class RiverContinuousDashboard extends StatelessWidget { + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: Text("River Continuous Monitoring")), + body: Padding( + padding: const EdgeInsets.all(24), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text("Continuous Monitoring", style: TextStyle(fontSize: 20, fontWeight: FontWeight.bold)), + SizedBox(height: 24), + Wrap( + spacing: 16, + runSpacing: 16, + children: [ + _buildNavButton(context, "Overview", Icons.info, '/river/continuous/overview'), + _buildNavButton(context, "Entry", Icons.edit, '/river/continuous/entry'), + _buildNavButton(context, "Report", Icons.insert_chart, '/river/continuous/report'), + ], + ), + ], + ), + ), + ); + } + + Widget _buildNavButton(BuildContext context, String label, IconData icon, String route) { + return ElevatedButton.icon( + onPressed: () => Navigator.pushNamed(context, route), + icon: Icon(icon), + label: Text(label), + style: ElevatedButton.styleFrom( + padding: EdgeInsets.symmetric(horizontal: 24, vertical: 16), + backgroundColor: Colors.blue[800], + foregroundColor: Colors.white, + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/river/investigative/entry.dart b/lib/screens/river/investigative/entry.dart new file mode 100644 index 0000000..7f24a36 --- /dev/null +++ b/lib/screens/river/investigative/entry.dart @@ -0,0 +1,61 @@ +import 'package:flutter/material.dart'; + +class EntryScreen extends StatefulWidget { + @override + State createState() => _EntryScreenState(); +} + +class _EntryScreenState extends State { + final _formKey = GlobalKey(); + String site = ''; + String parameter = ''; + String value = ''; + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: Text("River Investigative Entry")), + body: Padding( + padding: const EdgeInsets.all(24), + child: Form( + key: _formKey, + child: ListView( + children: [ + Text("Enter River Study Data", style: TextStyle(fontSize: 18, fontWeight: FontWeight.bold)), + SizedBox(height: 24), + TextFormField( + decoration: InputDecoration(labelText: "Site"), + onChanged: (val) => site = val, + validator: (val) => val == null || val.isEmpty ? "Required" : null, + ), + SizedBox(height: 16), + TextFormField( + decoration: InputDecoration(labelText: "Parameter"), + onChanged: (val) => parameter = val, + validator: (val) => val == null || val.isEmpty ? "Required" : null, + ), + SizedBox(height: 16), + TextFormField( + decoration: InputDecoration(labelText: "Value"), + keyboardType: TextInputType.number, + onChanged: (val) => value = val, + validator: (val) => val == null || val.isEmpty ? "Required" : null, + ), + SizedBox(height: 24), + ElevatedButton( + onPressed: () { + if (_formKey.currentState!.validate()) { + ScaffoldMessenger.of(context).showSnackBar( + SnackBar(content: Text("River data submitted")), + ); + } + }, + child: Text("Submit"), + ), + ], + ), + ), + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/river/investigative/overview.dart b/lib/screens/river/investigative/overview.dart new file mode 100644 index 0000000..cd013f5 --- /dev/null +++ b/lib/screens/river/investigative/overview.dart @@ -0,0 +1,17 @@ +import 'package:flutter/material.dart'; + +class OverviewScreen extends StatelessWidget { + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: Text("River Investigative Overview")), + body: Padding( + padding: const EdgeInsets.all(24), + child: Text( + "This screen provides an overview of investigative river studies. These are initiated to examine pollution sources, illegal discharges, or anomalies in water quality. Parameters may include DO, BOD, COD, and heavy metals.", + style: TextStyle(fontSize: 16), + ), + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/river/investigative/report.dart b/lib/screens/river/investigative/report.dart new file mode 100644 index 0000000..ca0ecbc --- /dev/null +++ b/lib/screens/river/investigative/report.dart @@ -0,0 +1,39 @@ +import 'package:flutter/material.dart'; + +class ReportScreen extends StatelessWidget { + final List> sampleData = [ + {"Site": "River X", "Parameter": "BOD", "Value": "3.2 mg/L"}, + {"Site": "River Y", "Parameter": "COD", "Value": "12.5 mg/L"}, + ]; + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: Text("River Investigative Report")), + body: Padding( + padding: const EdgeInsets.all(24), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text("Investigative Study Report", style: TextStyle(fontSize: 18, fontWeight: FontWeight.bold)), + SizedBox(height: 16), + DataTable( + columns: [ + DataColumn(label: Text("Site")), + DataColumn(label: Text("Parameter")), + DataColumn(label: Text("Value")), + ], + rows: sampleData.map((data) { + return DataRow(cells: [ + DataCell(Text(data["Site"]!)), + DataCell(Text(data["Parameter"]!)), + DataCell(Text(data["Value"]!)), + ]); + }).toList(), + ), + ], + ), + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/river/investigative/river_investigative_dashboard.dart b/lib/screens/river/investigative/river_investigative_dashboard.dart new file mode 100644 index 0000000..35a6157 --- /dev/null +++ b/lib/screens/river/investigative/river_investigative_dashboard.dart @@ -0,0 +1,42 @@ +import 'package:flutter/material.dart'; + +class RiverInvestigativeDashboard extends StatelessWidget { + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: Text("River Investigative Study")), + body: Padding( + padding: const EdgeInsets.all(24), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text("Investigative Study", style: TextStyle(fontSize: 20, fontWeight: FontWeight.bold)), + SizedBox(height: 24), + Wrap( + spacing: 16, + runSpacing: 16, + children: [ + _buildNavButton(context, "Overview", Icons.info, '/river/investigative/overview'), + _buildNavButton(context, "Entry", Icons.edit, '/river/investigative/entry'), + _buildNavButton(context, "Report", Icons.insert_chart, '/river/investigative/report'), + ], + ), + ], + ), + ), + ); + } + + Widget _buildNavButton(BuildContext context, String label, IconData icon, String route) { + return ElevatedButton.icon( + onPressed: () => Navigator.pushNamed(context, route), + icon: Icon(icon), + label: Text(label), + style: ElevatedButton.styleFrom( + padding: EdgeInsets.symmetric(horizontal: 24, vertical: 16), + backgroundColor: Colors.blue[800], + foregroundColor: Colors.white, + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/river/manual/data_status_log.dart b/lib/screens/river/manual/data_status_log.dart new file mode 100644 index 0000000..0c691f8 --- /dev/null +++ b/lib/screens/river/manual/data_status_log.dart @@ -0,0 +1,351 @@ +// lib/screens/river/manual/widgets/data_status_log.dart + +import 'dart:io'; +import 'package:flutter/material.dart'; +import 'package:intl/intl.dart'; + +// CHANGED: Import River-specific models and services +import '../../../../models/river_in_situ_sampling_data.dart'; +import '../../../../services/local_storage_service.dart'; +import '../../../../services/river_api_service.dart'; + +// A unified model to represent any type of submission log entry. +class SubmissionLogEntry { + final String type; // e.g., 'in-situ' + final String title; + final String stationCode; + final DateTime submissionDateTime; + final String? reportId; + final String status; + final String message; + final Map rawData; + bool isResubmitting; + + SubmissionLogEntry({ + required this.type, + required this.title, + required this.stationCode, + required this.submissionDateTime, + this.reportId, + required this.status, + required this.message, + required this.rawData, + this.isResubmitting = false, + }); +} + +// CHANGED: Renamed widget for River context +class RiverDataStatusLog extends StatefulWidget { + const RiverDataStatusLog({super.key}); + + @override + // CHANGED: Renamed state class + State createState() => _RiverDataStatusLogState(); +} + +// CHANGED: Renamed state class +class _RiverDataStatusLogState extends State { + final LocalStorageService _localStorageService = LocalStorageService(); + // CHANGED: Use RiverApiService + final RiverApiService _riverApiService = RiverApiService(); + + Map> _groupedLogs = {}; + Map> _filteredLogs = {}; + final Map _isCategoryExpanded = {}; + + bool _isLoading = true; + final TextEditingController _searchController = TextEditingController(); + + @override + void initState() { + super.initState(); + _loadAllLogs(); + _searchController.addListener(_filterLogs); + } + + @override + void dispose() { + _searchController.dispose(); + super.dispose(); + } + + /// Loads logs for the river in-situ module. + Future _loadAllLogs() async { + setState(() => _isLoading = true); + + // NOTE: Assumes a method exists in your local storage service for river logs. + final inSituLogs = await _localStorageService.getAllRiverInSituLogs(); + + final Map> tempGroupedLogs = {}; + + // REMOVED: The entire block for fetching and mapping Tarball logs was here. + + // Map In-Situ logs for River + final List inSituEntries = []; + for (var log in inSituLogs) { + final String dateStr = log['data_capture_date'] ?? log['sampling_date'] ?? ''; + final String timeStr = log['data_capture_time'] ?? log['sampling_time'] ?? ''; + + inSituEntries.add(SubmissionLogEntry( + type: 'In-Situ Sampling', + // CHANGED: Use river-specific station keys + title: log['selectedStation']?['r_man_station_name'] ?? 'Unknown Station', + stationCode: log['selectedStation']?['r_man_station_code'] ?? 'N/A', + submissionDateTime: DateTime.tryParse('$dateStr $timeStr') ?? DateTime.now(), + reportId: log['reportId']?.toString(), + status: log['submissionStatus'] ?? 'L1', + message: log['submissionMessage'] ?? 'No status message.', + rawData: log, + )); + } + if (inSituEntries.isNotEmpty) { + inSituEntries.sort((a, b) => b.submissionDateTime.compareTo(a.submissionDateTime)); + tempGroupedLogs['In-Situ Sampling'] = inSituEntries; + } + + if (mounted) { + setState(() { + _groupedLogs = tempGroupedLogs; + _filteredLogs = tempGroupedLogs; + _isLoading = false; + }); + } + } + + void _filterLogs() { + final query = _searchController.text.toLowerCase(); + final Map> tempFiltered = {}; + + _groupedLogs.forEach((category, logs) { + final filtered = logs.where((log) { + return log.title.toLowerCase().contains(query) || + log.stationCode.toLowerCase().contains(query) || + (log.reportId?.toLowerCase() ?? '').contains(query); + }).toList(); + + if (filtered.isNotEmpty) { + tempFiltered[category] = filtered; + } + }); + + setState(() { + _filteredLogs = tempFiltered; + }); + } + + /// Main router for resubmitting data based on its type. + Future _resubmitData(SubmissionLogEntry log) async { + setState(() => log.isResubmitting = true); + + switch (log.type) { + // REMOVED: The case for 'Tarball Sampling' was here. + case 'In-Situ Sampling': + await _resubmitInSituData(log); + break; + default: + if (mounted) { + ScaffoldMessenger.of(context).showSnackBar( + SnackBar(content: Text("Resubmission for '${log.type}' is not implemented."), backgroundColor: Colors.orange), + ); + setState(() => log.isResubmitting = false); + } + } + } + + // REMOVED: The entire _resubmitTarballData method was here. + + /// Handles resubmission for River In-Situ data. + Future _resubmitInSituData(SubmissionLogEntry log) async { + final logData = log.rawData; + + // CHANGED: Reconstruct the RiverInSituSamplingData object + final RiverInSituSamplingData dataToResubmit = RiverInSituSamplingData() + ..firstSamplerUserId = int.tryParse(logData['first_sampler_user_id']?.toString() ?? '') + ..secondSampler = logData['secondSampler'] + ..samplingDate = logData['sampling_date'] + ..samplingTime = logData['sampling_time'] + ..samplingType = logData['sampling_type'] + ..sampleIdCode = logData['sample_id_code'] + ..selectedStation = logData['selectedStation'] + ..currentLatitude = logData['current_latitude']?.toString() + ..currentLongitude = logData['current_longitude']?.toString() + ..distanceDifferenceInKm = double.tryParse(logData['distance_difference']?.toString() ?? '0.0') + ..weather = logData['weather'] + // CHANGED: Use river-specific fields + ..waterLevel = logData['water_level'] + ..riverCondition = logData['river_condition'] + ..eventRemarks = logData['event_remarks'] + ..labRemarks = logData['lab_remarks'] + ..optionalRemark1 = logData['optional_photo_remark_1'] + ..optionalRemark2 = logData['optional_photo_remark_2'] + ..optionalRemark3 = logData['optional_photo_remark_3'] + ..optionalRemark4 = logData['optional_photo_remark_4'] + ..sondeId = logData['sonde_id'] + ..dataCaptureDate = logData['data_capture_date'] + ..dataCaptureTime = logData['data_capture_time'] + ..oxygenConcentration = double.tryParse(logData['oxygen_concentration_mg_l']?.toString() ?? '0.0') + ..oxygenSaturation = double.tryParse(logData['oxygen_saturation_percent']?.toString() ?? '0.0') + ..ph = double.tryParse(logData['ph']?.toString() ?? '0.0') + ..salinity = double.tryParse(logData['salinity_ppt']?.toString() ?? '0.0') + ..electricalConductivity = double.tryParse(logData['ec_us_cm']?.toString() ?? '0.0') + ..temperature = double.tryParse(logData['temperature_c']?.toString() ?? '0.0') + ..tds = double.tryParse(logData['tds_mg_l']?.toString() ?? '0.0') + ..turbidity = double.tryParse(logData['turbidity_ntu']?.toString() ?? '0.0') + ..tss = double.tryParse(logData['tss_mg_l']?.toString() ?? '0.0') + ..batteryVoltage = double.tryParse(logData['battery_v']?.toString() ?? '0.0'); + + final Map imageFiles = {}; + final imageKeys = dataToResubmit.toApiImageFiles().keys; + for (var key in imageKeys) { + final imagePath = logData[key]; + if (imagePath is String && imagePath.isNotEmpty) { + final file = File(imagePath); + if (await file.exists()) { + imageFiles[key] = file; + } + } + } + + // CHANGED: Submit the data via the RiverApiService + final result = await _riverApiService.submitInSituSample( + formData: dataToResubmit.toApiFormData(), + imageFiles: imageFiles, + ); + + logData['submissionStatus'] = result['status']; + logData['submissionMessage'] = result['message']; + logData['reportId'] = result['reportId']?.toString() ?? logData['reportId']; + + // NOTE: Assumes a method exists to update river logs. + await _localStorageService.updateRiverInSituLog(logData); + + if (mounted) await _loadAllLogs(); + } + + @override + Widget build(BuildContext context) { + return Scaffold( + // CHANGED: Updated AppBar title + appBar: AppBar(title: const Text('River Data Status Log')), + body: Column( + children: [ + Padding( + padding: const EdgeInsets.all(8.0), + child: TextField( + controller: _searchController, + decoration: InputDecoration( + labelText: 'Search Logs...', + prefixIcon: const Icon(Icons.search), + border: OutlineInputBorder(borderRadius: BorderRadius.circular(12.0)), + ), + ), + ), + Expanded( + child: _isLoading + ? const Center(child: CircularProgressIndicator()) + : RefreshIndicator( + onRefresh: _loadAllLogs, + child: _filteredLogs.isEmpty + ? Center(child: Text(_groupedLogs.isEmpty ? 'No submission logs found.' : 'No logs match your search.')) + : ListView( + children: _filteredLogs.entries.map((entry) { + return _buildCategorySection(entry.key, entry.value); + }).toList(), + ), + ), + ), + ], + ), + ); + } + + Widget _buildCategorySection(String category, List logs) { + final bool isExpanded = _isCategoryExpanded[category] ?? false; + final int itemCount = isExpanded ? logs.length : (logs.length > 5 ? 5 : logs.length); + + return Card( + margin: const EdgeInsets.symmetric(horizontal: 8.0, vertical: 6.0), + child: Padding( + padding: const EdgeInsets.all(8.0), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text(category, style: Theme.of(context).textTheme.titleLarge?.copyWith(fontWeight: FontWeight.bold)), + const Divider(), + ListView.builder( + shrinkWrap: true, + physics: const NeverScrollableScrollPhysics(), + itemCount: itemCount, + itemBuilder: (context, index) { + return _buildLogListItem(logs[index]); + }, + ), + if (logs.length > 5) + TextButton( + onPressed: () { + setState(() { + _isCategoryExpanded[category] = !isExpanded; + }); + }, + child: Text(isExpanded ? 'Show Less' : 'Show More (${logs.length - 5} more)'), + ), + ], + ), + ), + ); + } + + Widget _buildLogListItem(SubmissionLogEntry log) { + final isFailed = log.status != 'L3'; + final title = '${log.title} (${log.stationCode})'; + final subtitle = DateFormat('yyyy-MM-dd HH:mm').format(log.submissionDateTime); + + return ExpansionTile( + leading: Icon( + isFailed ? Icons.error_outline : Icons.check_circle_outline, + color: isFailed ? Colors.red : Colors.green, + ), + title: Text(title, style: const TextStyle(fontWeight: FontWeight.w500)), + subtitle: Text(subtitle), + trailing: isFailed + ? (log.isResubmitting + ? const SizedBox( + height: 24, + width: 24, + child: CircularProgressIndicator(strokeWidth: 3), + ) + : IconButton( + icon: const Icon(Icons.sync, color: Colors.blue), + tooltip: 'Resubmit', + onPressed: () => _resubmitData(log), + )) + : null, + children: [ + Padding( + padding: const EdgeInsets.symmetric(horizontal: 16.0, vertical: 8.0), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + _buildDetailRow('Report ID:', log.reportId ?? 'N/A'), + _buildDetailRow('Status:', log.message), + _buildDetailRow('Submission Type:', log.type), + ], + ), + ) + ], + ); + } + + Widget _buildDetailRow(String label, String value) { + return Padding( + padding: const EdgeInsets.symmetric(vertical: 2.0), + child: Row( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text('$label ', style: const TextStyle(fontWeight: FontWeight.bold)), + Expanded(child: Text(value)), + ], + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/river/manual/image_request.dart b/lib/screens/river/manual/image_request.dart new file mode 100644 index 0000000..7cacac0 --- /dev/null +++ b/lib/screens/river/manual/image_request.dart @@ -0,0 +1,61 @@ +import 'package:flutter/material.dart'; +import 'package:image_picker/image_picker.dart'; +import 'dart:io'; // Add this line at the top of these files + + +class RiverManualImageRequest extends StatefulWidget { + @override + State createState() => _RiverManualImageRequestState(); +} + +class _RiverManualImageRequestState extends State { + XFile? _image; + final picker = ImagePicker(); + final _descriptionController = TextEditingController(); + + Future _pickImage() async { + final pickedFile = await picker.pickImage(source: ImageSource.camera); + setState(() => _image = pickedFile); + } + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: Text("River Manual Image Request")), + body: Padding( + padding: const EdgeInsets.all(24), + child: Column( + children: [ + ElevatedButton.icon( + icon: Icon(Icons.camera_alt), + label: Text("Capture Image"), + onPressed: _pickImage, + ), + SizedBox(height: 16), + if (_image != null) + Image.file( + File(_image!.path), + height: 200, + ), + SizedBox(height: 16), + TextField( + controller: _descriptionController, + decoration: InputDecoration(labelText: "Description"), + maxLines: 3, + ), + SizedBox(height: 24), + ElevatedButton( + onPressed: () { + // Submit logic here + ScaffoldMessenger.of(context).showSnackBar( + SnackBar(content: Text("Image request submitted")), + ); + }, + child: Text("Submit Request"), + ), + ], + ), + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/river/manual/in_situ_sampling.dart b/lib/screens/river/manual/in_situ_sampling.dart new file mode 100644 index 0000000..792cb7c --- /dev/null +++ b/lib/screens/river/manual/in_situ_sampling.dart @@ -0,0 +1,142 @@ +// lib/screens/river/manual/in_situ_sampling.dart + +import 'package:flutter/material.dart'; +import 'package:intl/intl.dart'; +import 'package:provider/provider.dart'; + +import '../../../models/river_in_situ_sampling_data.dart'; +import '../../../services/river_in_situ_sampling_service.dart'; +import '../../../services/local_storage_service.dart'; +import 'widgets/river_in_situ_step_1_sampling_info.dart'; +import 'widgets/river_in_situ_step_2_site_info.dart'; +import 'widgets/river_in_situ_step_3_data_capture.dart'; +import 'widgets/river_in_situ_step_4_summary.dart'; + +/// The main screen for the River In-Situ Sampling feature. +/// This stateful widget orchestrates the multi-step process using a PageView. +/// It manages the overall data model and the service layer for the entire workflow. +class RiverInSituSamplingScreen extends StatefulWidget { + const RiverInSituSamplingScreen({super.key}); + + @override + State createState() => _RiverInSituSamplingScreenState(); +} + +class _RiverInSituSamplingScreenState extends State { + final PageController _pageController = PageController(); + + late RiverInSituSamplingData _data; + + // A single instance of the service to be used by all child widgets. + final RiverInSituSamplingService _samplingService = RiverInSituSamplingService(); + + // Service for saving submission logs locally. + final LocalStorageService _localStorageService = LocalStorageService(); + + int _currentPage = 0; + bool _isLoading = false; + + @override + void initState() { + super.initState(); + // Creates a NEW data object with the CURRENT date and time + // every time the user starts a new sampling. + _data = RiverInSituSamplingData( + samplingDate: DateFormat('yyyy-MM-dd').format(DateTime.now()), + samplingTime: DateFormat('HH:mm:ss').format(DateTime.now()), + ); + } + + @override + void dispose() { + _pageController.dispose(); + _samplingService.dispose(); + super.dispose(); + } + + /// Navigates to the next page in the form. + void _nextPage() { + if (_currentPage < 3) { + _pageController.nextPage( + duration: const Duration(milliseconds: 300), + curve: Curves.easeInOut, + ); + } + } + + /// Navigates to the previous page in the form. + void _previousPage() { + if (_currentPage > 0) { + _pageController.previousPage( + duration: const Duration(milliseconds: 300), + curve: Curves.easeInOut, + ); + } + } + + /// Handles the final submission process. + Future _submitForm() async { + setState(() => _isLoading = true); + + final result = await _samplingService.submitData(_data); + + if (!mounted) return; + + _data.submissionStatus = result['status']; + _data.submissionMessage = result['message']; + _data.reportId = result['reportId']?.toString(); + + // Save a log of the submission locally using the river-specific method. + await _localStorageService.saveRiverInSituSamplingData(_data); + + setState(() => _isLoading = false); + + final message = result['message'] ?? 'An unknown error occurred.'; + final color = (result['status'] == 'L3') + ? Colors.green + : (result['status'] == 'L2' ? Colors.orange : Colors.red); + + ScaffoldMessenger.of(context).showSnackBar( + SnackBar(content: Text(message), backgroundColor: color, duration: const Duration(seconds: 4)), + ); + + if (result['status'] == 'L3') { + Navigator.of(context).popUntil((route) => route.isFirst); + } + } + + @override + Widget build(BuildContext context) { + // Use Provider.value to provide the existing river service instance to all child widgets. + return Provider.value( + value: _samplingService, + child: Scaffold( + appBar: AppBar( + title: Text('In-Situ Sampling (${_currentPage + 1}/4)'), + leading: _currentPage > 0 + ? IconButton( + icon: const Icon(Icons.arrow_back), + onPressed: _previousPage, + ) + : null, + ), + body: PageView( + controller: _pageController, + physics: const NeverScrollableScrollPhysics(), + onPageChanged: (page) { + setState(() { + _currentPage = page; + }); + }, + children: [ + // Each step is a separate river-specific widget. + RiverInSituStep1SamplingInfo(data: _data, onNext: _nextPage), + RiverInSituStep2SiteInfo(data: _data, onNext: _nextPage), + RiverInSituStep3DataCapture(data: _data, onNext: _nextPage), + RiverInSituStep4Summary(data: _data, onSubmit: _submitForm, isLoading: _isLoading), + ], + ), + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/river/manual/report.dart b/lib/screens/river/manual/report.dart new file mode 100644 index 0000000..210bd06 --- /dev/null +++ b/lib/screens/river/manual/report.dart @@ -0,0 +1,39 @@ +import 'package:flutter/material.dart'; + +class RiverManualReport extends StatelessWidget { + final List> sampleData = [ + {"Station": "River Site A", "Parameter": "DO", "Value": "6.8"}, + {"Station": "River Site B", "Parameter": "pH", "Value": "7.1"}, + ]; + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: Text("River Manual Report")), + body: Padding( + padding: const EdgeInsets.all(24), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text("Manual Sampling Report", style: TextStyle(fontSize: 18, fontWeight: FontWeight.bold)), + SizedBox(height: 16), + DataTable( + columns: [ + DataColumn(label: Text("Station")), + DataColumn(label: Text("Parameter")), + DataColumn(label: Text("Value")), + ], + rows: sampleData.map((data) { + return DataRow(cells: [ + DataCell(Text(data["Station"]!)), + DataCell(Text(data["Parameter"]!)), + DataCell(Text(data["Value"]!)), + ]); + }).toList(), + ), + ], + ), + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/river/manual/river_manual_dashboard.dart b/lib/screens/river/manual/river_manual_dashboard.dart new file mode 100644 index 0000000..5ad1d98 --- /dev/null +++ b/lib/screens/river/manual/river_manual_dashboard.dart @@ -0,0 +1,42 @@ +import 'package:flutter/material.dart'; + +class RiverManualDashboard extends StatelessWidget { + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: Text("River Manual Sampling")), + body: Padding( + padding: const EdgeInsets.all(24), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text("Manual Sampling", style: TextStyle(fontSize: 20, fontWeight: FontWeight.bold)), + SizedBox(height: 24), + Wrap( + spacing: 16, + runSpacing: 16, + children: [ + _buildNavButton(context, "Overview", Icons.info, '/river/manual/overview'), + _buildNavButton(context, "Entry", Icons.edit, '/river/manual/entry'), + _buildNavButton(context, "Report", Icons.insert_chart, '/river/manual/report'), + ], + ), + ], + ), + ), + ); + } + + Widget _buildNavButton(BuildContext context, String label, IconData icon, String route) { + return ElevatedButton.icon( + onPressed: () => Navigator.pushNamed(context, route), + icon: Icon(icon), + label: Text(label), + style: ElevatedButton.styleFrom( + padding: EdgeInsets.symmetric(horizontal: 24, vertical: 16), + backgroundColor: Colors.blue[800], + foregroundColor: Colors.white, + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/river/manual/triennial_sampling.dart b/lib/screens/river/manual/triennial_sampling.dart new file mode 100644 index 0000000..c492573 --- /dev/null +++ b/lib/screens/river/manual/triennial_sampling.dart @@ -0,0 +1,69 @@ +import 'package:flutter/material.dart'; + +class RiverTriennialSampling extends StatefulWidget { + @override + State createState() => _RiverTriennialSamplingState(); +} + +class _RiverTriennialSamplingState extends State { + final _formKey = GlobalKey(); + String site = ''; + String parameter = ''; + String value = ''; + String year = ''; + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: Text("River Triennial Sampling")), + body: Padding( + padding: const EdgeInsets.all(24), + child: Form( + key: _formKey, + child: ListView( + children: [ + Text("Enter Triennial Sampling Data", style: TextStyle(fontSize: 18, fontWeight: FontWeight.bold)), + SizedBox(height: 24), + TextFormField( + decoration: InputDecoration(labelText: "Site"), + onChanged: (val) => site = val, + validator: (val) => val == null || val.isEmpty ? "Required" : null, + ), + SizedBox(height: 16), + TextFormField( + decoration: InputDecoration(labelText: "Parameter"), + onChanged: (val) => parameter = val, + validator: (val) => val == null || val.isEmpty ? "Required" : null, + ), + SizedBox(height: 16), + TextFormField( + decoration: InputDecoration(labelText: "Value"), + keyboardType: TextInputType.number, + onChanged: (val) => value = val, + validator: (val) => val == null || val.isEmpty ? "Required" : null, + ), + SizedBox(height: 16), + TextFormField( + decoration: InputDecoration(labelText: "Year"), + keyboardType: TextInputType.number, + onChanged: (val) => year = val, + validator: (val) => val == null || val.isEmpty ? "Required" : null, + ), + SizedBox(height: 24), + ElevatedButton( + onPressed: () { + if (_formKey.currentState!.validate()) { + ScaffoldMessenger.of(context).showSnackBar( + SnackBar(content: Text("Triennial sampling data submitted")), + ); + } + }, + child: Text("Submit"), + ), + ], + ), + ), + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/river/manual/widgets/river_in_situ_step_1_sampling_info.dart b/lib/screens/river/manual/widgets/river_in_situ_step_1_sampling_info.dart new file mode 100644 index 0000000..62a18bb --- /dev/null +++ b/lib/screens/river/manual/widgets/river_in_situ_step_1_sampling_info.dart @@ -0,0 +1,440 @@ +// lib/screens/river/manual/widgets/river_in_situ_step_1_sampling_info.dart + +import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; +import 'package:dropdown_search/dropdown_search.dart'; +import 'package:intl/intl.dart'; +import 'package:simple_barcode_scanner/simple_barcode_scanner.dart'; + +import '../../../../auth_provider.dart'; +import '../../../../models/river_in_situ_sampling_data.dart'; +import '../../../../services/river_in_situ_sampling_service.dart'; + +class RiverInSituStep1SamplingInfo extends StatefulWidget { + final RiverInSituSamplingData data; + final VoidCallback onNext; + + const RiverInSituStep1SamplingInfo({ + super.key, + required this.data, + required this.onNext, + }); + + @override + State createState() => _RiverInSituStep1SamplingInfoState(); +} + +class _RiverInSituStep1SamplingInfoState extends State { + final _formKey = GlobalKey(); + bool _isLoadingLocation = false; + + late final TextEditingController _firstSamplerController; + late final TextEditingController _dateController; + late final TextEditingController _timeController; + late final TextEditingController _barcodeController; + late final TextEditingController _stationLatController; + late final TextEditingController _stationLonController; + late final TextEditingController _currentLatController; + late final TextEditingController _currentLonController; + + List _statesList = []; + List _categoriesForState = []; + List> _stationsForCategory = []; + final List _samplingTypes = ['Schedule', 'Ad-Hoc', 'Complaint']; + + @override + void initState() { + super.initState(); + _initializeControllers(); + _initializeForm(); + } + + @override + void dispose() { + _firstSamplerController.dispose(); + _dateController.dispose(); + _timeController.dispose(); + _barcodeController.dispose(); + _stationLatController.dispose(); + _stationLonController.dispose(); + _currentLatController.dispose(); + _currentLonController.dispose(); + super.dispose(); + } + + void _initializeControllers() { + _firstSamplerController = TextEditingController(); + _dateController = TextEditingController(); + _timeController = TextEditingController(); + _barcodeController = TextEditingController(text: widget.data.sampleIdCode); + _stationLatController = TextEditingController(text: widget.data.stationLatitude); + _stationLonController = TextEditingController(text: widget.data.stationLongitude); + _currentLatController = TextEditingController(text: widget.data.currentLatitude); + _currentLonController = TextEditingController(text: widget.data.currentLongitude); + } + + void _initializeForm() { + final auth = Provider.of(context, listen: false); + + widget.data.firstSamplerName = auth.profileData?['first_name'] ?? 'Current User'; + widget.data.firstSamplerUserId = auth.profileData?['user_id']; + _firstSamplerController.text = widget.data.firstSamplerName!; + + final now = DateTime.now(); + if (widget.data.samplingDate == null || widget.data.samplingDate!.isEmpty) { + widget.data.samplingDate = DateFormat('yyyy-MM-dd').format(now); + widget.data.samplingTime = DateFormat('HH:mm:ss').format(now); + } + _dateController.text = widget.data.samplingDate!; + _timeController.text = widget.data.samplingTime!; + + final allStations = auth.riverManualStations ?? []; + if (allStations.isNotEmpty) { + final states = allStations.map((s) => s['state_name'] as String?).whereType().toSet().toList(); + states.sort(); + + if (widget.data.selectedStateName != null) { + final categories = allStations + .where((s) => s['state_name'] == widget.data.selectedStateName) + .map((s) => s['category_name'] as String?) + .whereType() + .toSet() + .toList(); + categories.sort(); + _categoriesForState = categories; + } + if (widget.data.selectedCategoryName != null) { + _stationsForCategory = allStations + .where((s) => + s['state_name'] == widget.data.selectedStateName && + s['category_name'] == widget.data.selectedCategoryName) + .toList(); + } + + setState(() { + _statesList = states; + }); + } + } + + Future _getCurrentLocation() async { + setState(() => _isLoadingLocation = true); + final service = Provider.of(context, listen: false); + + try { + final position = await service.getCurrentLocation(); + if (mounted) { + setState(() { + widget.data.currentLatitude = position.latitude.toString(); + widget.data.currentLongitude = position.longitude.toString(); + _currentLatController.text = widget.data.currentLatitude!; + _currentLonController.text = widget.data.currentLongitude!; + _calculateDistance(); + }); + } + } catch (e) { + if(mounted) { + ScaffoldMessenger.of(context).showSnackBar(SnackBar(content: Text('Failed to get location: $e'))); + } + } finally { + if (mounted) { + setState(() => _isLoadingLocation = false); + } + } + } + + void _calculateDistance() { + final lat1Str = widget.data.stationLatitude; + final lon1Str = widget.data.stationLongitude; + final lat2Str = widget.data.currentLatitude; + final lon2Str = widget.data.currentLongitude; + + if (lat1Str != null && lon1Str != null && lat2Str != null && lon2Str != null) { + final service = Provider.of(context, listen: false); + final lat1 = double.tryParse(lat1Str); + final lon1 = double.tryParse(lon1Str); + final lat2 = double.tryParse(lat2Str); + final lon2 = double.tryParse(lon2Str); + + if (lat1 != null && lon1 != null && lat2 != null && lon2 != null) { + final distance = service.calculateDistance(lat1, lon1, lat2, lon2); + setState(() { + widget.data.distanceDifferenceInKm = distance; + }); + } + } + } + + Future _scanBarcode() async { + final result = await Navigator.push( + context, + MaterialPageRoute(builder: (context) => const SimpleBarcodeScannerPage()), + ); + if (result is String && result != '-1' && mounted) { + setState(() { + widget.data.sampleIdCode = result; + _barcodeController.text = result; + }); + } + } + + void _goToNextStep() { + if (_formKey.currentState!.validate()) { + _formKey.currentState!.save(); + + final distanceInMeters = (widget.data.distanceDifferenceInKm ?? 0) * 1000; + + if (distanceInMeters > 700) { + _showDistanceRemarkDialog(); + } else { + widget.data.distanceDifferenceRemarks = null; + widget.onNext(); + } + } + } + + Future _showDistanceRemarkDialog() async { + final remarkController = TextEditingController(text: widget.data.distanceDifferenceRemarks); + final dialogFormKey = GlobalKey(); + + return showDialog( + context: context, + barrierDismissible: false, + builder: (BuildContext context) { + return AlertDialog( + title: const Text('Distance Warning'), + content: SingleChildScrollView( + child: Form( + key: dialogFormKey, + child: Column( + mainAxisSize: MainAxisSize.min, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const Text('Your current location is more than 700m away from the station.'), + const SizedBox(height: 16), + TextFormField( + controller: remarkController, + decoration: const InputDecoration( + labelText: 'Remarks *', + hintText: 'Please provide a reason...', + border: OutlineInputBorder(), + ), + validator: (value) { + if (value == null || value.trim().isEmpty) { + return 'Remarks are required to continue.'; + } + return null; + }, + maxLines: 3, + ), + ], + ), + ), + ), + actions: [ + TextButton( + child: const Text('Cancel'), + onPressed: () { + Navigator.of(context).pop(); + }, + ), + FilledButton( + child: const Text('Confirm'), + onPressed: () { + if (dialogFormKey.currentState!.validate()) { + setState(() { + widget.data.distanceDifferenceRemarks = remarkController.text; + }); + Navigator.of(context).pop(); + widget.onNext(); + } + }, + ), + ], + ); + }, + ); + } + + @override + Widget build(BuildContext context) { + final auth = Provider.of(context, listen: false); + final allStations = auth.riverManualStations ?? []; + final allUsers = auth.allUsers ?? []; + final secondSamplersList = allUsers.where((user) => user['user_id'] != auth.profileData?['user_id']).toList(); + + return Form( + key: _formKey, + child: ListView( + // REMOVED: physics property to allow scrolling. + // shrinkWrap: true, // This can be kept or removed; it's less critical in PageView. + padding: const EdgeInsets.all(24.0), + children: [ + Text("Sampling Information", style: Theme.of(context).textTheme.headlineSmall), + const SizedBox(height: 24), + TextFormField(controller: _firstSamplerController, readOnly: true, decoration: const InputDecoration(labelText: '1st Sampler')), + const SizedBox(height: 16), + DropdownSearch>( + items: secondSamplersList, + selectedItem: widget.data.secondSampler, + itemAsString: (sampler) => "${sampler['first_name']} ${sampler['last_name']}", + onChanged: (sampler) => widget.data.secondSampler = sampler, + popupProps: const PopupProps.menu(showSearchBox: true, searchFieldProps: TextFieldProps(decoration: InputDecoration(hintText: "Search Sampler..."))), + dropdownDecoratorProps: const DropDownDecoratorProps(dropdownSearchDecoration: InputDecoration(labelText: '2nd Sampler (Optional)')), + ), + const SizedBox(height: 16), + Row( + children: [ + Expanded(child: TextFormField(controller: _dateController, readOnly: true, decoration: const InputDecoration(labelText: 'Date'))), + const SizedBox(width: 16), + Expanded(child: TextFormField(controller: _timeController, readOnly: true, decoration: const InputDecoration(labelText: 'Time'))), + ], + ), + const SizedBox(height: 16), + DropdownButtonFormField( + value: widget.data.samplingType, + items: _samplingTypes.map((type) => DropdownMenuItem(value: type, child: Text(type))).toList(), + onChanged: (value) => setState(() => widget.data.samplingType = value), + decoration: const InputDecoration(labelText: 'Sampling Type *'), + validator: (value) => value == null ? 'Please select a type' : null, + ), + const SizedBox(height: 24), + + DropdownSearch( + items: _statesList, + selectedItem: widget.data.selectedStateName, + popupProps: const PopupProps.menu(showSearchBox: true, searchFieldProps: TextFieldProps(decoration: InputDecoration(hintText: "Search State..."))), + dropdownDecoratorProps: const DropDownDecoratorProps(dropdownSearchDecoration: InputDecoration(labelText: "Select State *")), + onChanged: (state) { + setState(() { + widget.data.selectedStateName = state; + widget.data.selectedCategoryName = null; + widget.data.selectedStation = null; + _stationLatController.clear(); + _stationLonController.clear(); + widget.data.distanceDifferenceInKm = null; + + final categories = state != null + ? allStations + .where((s) => s['state_name'] == state) + .map((s) => s['category_name'] as String?) + .whereType() + .toSet() + .toList() + : []; + categories.sort(); + _categoriesForState = categories; + + _stationsForCategory = []; + }); + }, + validator: (val) => val == null ? "State is required" : null, + ), + const SizedBox(height: 16), + DropdownSearch( + items: _categoriesForState, + selectedItem: widget.data.selectedCategoryName, + enabled: widget.data.selectedStateName != null, + popupProps: const PopupProps.menu(showSearchBox: true, searchFieldProps: TextFieldProps(decoration: InputDecoration(hintText: "Search Category..."))), + dropdownDecoratorProps: const DropDownDecoratorProps(dropdownSearchDecoration: InputDecoration(labelText: "Select Category *")), + onChanged: (category) { + setState(() { + widget.data.selectedCategoryName = category; + widget.data.selectedStation = null; + _stationLatController.clear(); + _stationLonController.clear(); + widget.data.distanceDifferenceInKm = null; + _stationsForCategory = category != null ? allStations.where((s) => s['state_name'] == widget.data.selectedStateName && s['category_name'] == category).toList() : []; + }); + }, + validator: (val) => widget.data.selectedStateName != null && val == null ? "Category is required" : null, + ), + const SizedBox(height: 16), + DropdownSearch>( + items: _stationsForCategory, + selectedItem: widget.data.selectedStation, + enabled: widget.data.selectedCategoryName != null, + itemAsString: (station) => "${station['r_man_station_code']} - ${station['r_man_station_name']}", + popupProps: const PopupProps.menu(showSearchBox: true, searchFieldProps: TextFieldProps(decoration: InputDecoration(hintText: "Search Station..."))), + dropdownDecoratorProps: const DropDownDecoratorProps(dropdownSearchDecoration: InputDecoration(labelText: "Select Station *")), + onChanged: (station) => setState(() { + widget.data.selectedStation = station; + widget.data.stationLatitude = station?['r_man_latitude']?.toString(); + widget.data.stationLongitude = station?['r_man_longitude']?.toString(); + _stationLatController.text = widget.data.stationLatitude ?? ''; + _stationLonController.text = widget.data.stationLongitude ?? ''; + _calculateDistance(); + }), + validator: (val) => widget.data.selectedCategoryName != null && val == null ? "Station is required" : null, + ), + const SizedBox(height: 16), + TextFormField(controller: _stationLatController, readOnly: true, decoration: const InputDecoration(labelText: 'Station Latitude')), + const SizedBox(height: 16), + TextFormField(controller: _stationLonController, readOnly: true, decoration: const InputDecoration(labelText: 'Station Longitude')), + const SizedBox(height: 24), + + Text("Location Verification", style: Theme.of(context).textTheme.titleLarge), + const SizedBox(height: 16), + TextFormField(controller: _currentLatController, readOnly: true, decoration: const InputDecoration(labelText: 'Current Latitude')), + const SizedBox(height: 16), + TextFormField(controller: _currentLonController, readOnly: true, decoration: const InputDecoration(labelText: 'Current Longitude')), + if (widget.data.distanceDifferenceInKm != null) + Padding( + padding: const EdgeInsets.only(top: 16.0), + child: Container( + padding: const EdgeInsets.all(12), + decoration: BoxDecoration( + color: ((widget.data.distanceDifferenceInKm ?? 0) * 1000) > 700 ? Colors.red.withOpacity(0.1) : Colors.green.withOpacity(0.1), + borderRadius: BorderRadius.circular(8), + border: Border.all(color: ((widget.data.distanceDifferenceInKm ?? 0) * 1000) > 700 ? Colors.red : Colors.green), + ), + child: RichText( + textAlign: TextAlign.center, + text: TextSpan( + style: Theme.of(context).textTheme.bodyLarge, + children: [ + const TextSpan(text: 'Distance from Station: '), + TextSpan( + text: '${(widget.data.distanceDifferenceInKm! * 1000).toStringAsFixed(0)} meters', + style: TextStyle( + fontWeight: FontWeight.bold, + color: ((widget.data.distanceDifferenceInKm ?? 0) * 1000) > 700 ? Colors.red : Colors.green + ), + ), + ], + ), + ), + ), + ), + const SizedBox(height: 16), + OutlinedButton.icon( + onPressed: _isLoadingLocation ? null : _getCurrentLocation, + icon: _isLoadingLocation ? const SizedBox(width: 20, height: 20, child: CircularProgressIndicator(strokeWidth: 2)) : const Icon(Icons.location_searching), + label: const Text("Get Current Location"), + ), + const SizedBox(height: 16), + + TextFormField( + controller: _barcodeController, + decoration: InputDecoration( + labelText: 'Sample ID Code *', + suffixIcon: IconButton( + icon: const Icon(Icons.qr_code_scanner), + onPressed: _scanBarcode, + ), + ), + validator: (val) => val == null || val.isEmpty ? "Sample ID is required" : null, + onSaved: (val) => widget.data.sampleIdCode = val, + onChanged: (val) => widget.data.sampleIdCode = val, + ), + const SizedBox(height: 32), + ElevatedButton( + onPressed: _goToNextStep, + style: ElevatedButton.styleFrom(padding: const EdgeInsets.symmetric(vertical: 16)), + child: const Text('Next'), + ), + ], + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/river/manual/widgets/river_in_situ_step_2_site_info.dart b/lib/screens/river/manual/widgets/river_in_situ_step_2_site_info.dart new file mode 100644 index 0000000..07595b9 --- /dev/null +++ b/lib/screens/river/manual/widgets/river_in_situ_step_2_site_info.dart @@ -0,0 +1,238 @@ +// lib/screens/river/manual/widgets/river_in_situ_step_2_site_info.dart + +import 'dart:io'; +import 'package:flutter/material.dart'; +import 'package:image_picker/image_picker.dart'; +import 'package:provider/provider.dart'; + +import '../../../../models/river_in_situ_sampling_data.dart'; +import '../../../../services/river_in_situ_sampling_service.dart'; + +class RiverInSituStep2SiteInfo extends StatefulWidget { + final RiverInSituSamplingData data; + final VoidCallback onNext; + + const RiverInSituStep2SiteInfo({ + super.key, + required this.data, + required this.onNext, + }); + + @override + State createState() => _RiverInSituStep2SiteInfoState(); +} + +class _RiverInSituStep2SiteInfoState extends State { + final _formKey = GlobalKey(); + bool _isPickingImage = false; + + late final TextEditingController _eventRemarksController; + late final TextEditingController _labRemarksController; + late final TextEditingController _optionalRemark1Controller; + late final TextEditingController _optionalRemark2Controller; + late final TextEditingController _optionalRemark3Controller; + late final TextEditingController _optionalRemark4Controller; + + final List _weatherOptions = ['Clear', 'Rainy', 'Cloudy']; + final List _waterLevelOptions = ['Normal', 'High', 'Low']; + final List _riverConditionOptions = ['Calm', 'Moderate Flow', 'Fast Flow']; + + @override + void initState() { + super.initState(); + _eventRemarksController = TextEditingController(text: widget.data.eventRemarks); + _labRemarksController = TextEditingController(text: widget.data.labRemarks); + _optionalRemark1Controller = TextEditingController(text: widget.data.optionalRemark1); + _optionalRemark2Controller = TextEditingController(text: widget.data.optionalRemark2); + _optionalRemark3Controller = TextEditingController(text: widget.data.optionalRemark3); + _optionalRemark4Controller = TextEditingController(text: widget.data.optionalRemark4); + } + + @override + void dispose() { + _eventRemarksController.dispose(); + _labRemarksController.dispose(); + _optionalRemark1Controller.dispose(); + _optionalRemark2Controller.dispose(); + _optionalRemark3Controller.dispose(); + _optionalRemark4Controller.dispose(); + super.dispose(); + } + + void _setImage(Function(File?) setImageCallback, ImageSource source, String imageInfo, {required bool isRequired}) async { + if (_isPickingImage) return; + setState(() => _isPickingImage = true); + + final service = Provider.of(context, listen: false); + final file = await service.pickAndProcessImage(source, data: widget.data, imageInfo: imageInfo, isRequired: isRequired); + + if (file != null) { + setState(() => setImageCallback(file)); + } else if (mounted) { + _showSnackBar('Image selection failed. Please ensure all photos are taken in landscape mode.', isError: true); + } + + if (mounted) { + setState(() => _isPickingImage = false); + } + } + + void _goToNextStep() { + if (!_formKey.currentState!.validate()) { + return; + } + + if (widget.data.leftBankViewImage == null || + widget.data.rightBankViewImage == null || + widget.data.waterFillingImage == null || + widget.data.waterColorImage == null || + widget.data.phPaperImage == null) { + _showSnackBar('Please attach all 5 required photos before proceeding.', isError: true); + return; + } + + _formKey.currentState!.save(); + widget.data.optionalRemark1 = _optionalRemark1Controller.text; + widget.data.optionalRemark2 = _optionalRemark2Controller.text; + widget.data.optionalRemark3 = _optionalRemark3Controller.text; + widget.data.optionalRemark4 = _optionalRemark4Controller.text; + widget.onNext(); + } + + void _showSnackBar(String message, {bool isError = false}) { + if (mounted) { + ScaffoldMessenger.of(context).showSnackBar(SnackBar( + content: Text(message), + backgroundColor: isError ? Colors.red : null, + )); + } + } + + @override + Widget build(BuildContext context) { + return Form( + key: _formKey, + child: ListView( + // REMOVED: physics property to allow scrolling. + padding: const EdgeInsets.all(24.0), + children: [ + Text("On-Site Information", style: Theme.of(context).textTheme.headlineSmall), + const SizedBox(height: 24), + DropdownButtonFormField( + value: widget.data.weather, + items: _weatherOptions.map((item) => DropdownMenuItem(value: item, child: Text(item))).toList(), + onChanged: (value) => setState(() => widget.data.weather = value), + decoration: const InputDecoration(labelText: 'Weather *'), + validator: (value) => value == null ? 'Weather is required' : null, + ), + const SizedBox(height: 16), + DropdownButtonFormField( + value: widget.data.waterLevel, + items: _waterLevelOptions.map((item) => DropdownMenuItem(value: item, child: Text(item))).toList(), + onChanged: (value) => setState(() => widget.data.waterLevel = value), + decoration: const InputDecoration(labelText: 'Water Level *'), + validator: (value) => value == null ? 'Water level is required' : null, + ), + const SizedBox(height: 16), + DropdownButtonFormField( + value: widget.data.riverCondition, + items: _riverConditionOptions.map((item) => DropdownMenuItem(value: item, child: Text(item))).toList(), + onChanged: (value) => setState(() => widget.data.riverCondition = value), + decoration: const InputDecoration(labelText: 'River Condition *'), + validator: (value) => value == null ? 'River condition is required' : null, + ), + const SizedBox(height: 24), + + Text("Required Photos *", style: Theme.of(context).textTheme.titleLarge), + const Text("All photos must be taken in landscape (horizontal) orientation.", style: TextStyle(color: Colors.grey)), + const SizedBox(height: 8), + _buildImagePicker('Left Bank View', 'LEFT_BANK_VIEW', widget.data.leftBankViewImage, (file) => widget.data.leftBankViewImage = file, isRequired: true), + _buildImagePicker('Right Bank View', 'RIGHT_BANK_VIEW', widget.data.rightBankViewImage, (file) => widget.data.rightBankViewImage = file, isRequired: true), + _buildImagePicker('Filling Water into Sample Bottle', 'WATER_FILLING', widget.data.waterFillingImage, (file) => widget.data.waterFillingImage = file, isRequired: true), + _buildImagePicker('Water in Clear Glass Bottle', 'WATER_COLOR', widget.data.waterColorImage, (file) => widget.data.waterColorImage = file, isRequired: true), + _buildImagePicker('Examine Preservative (pH paper)', 'PH_PAPER', widget.data.phPaperImage, (file) => widget.data.phPaperImage = file, isRequired: true), + const SizedBox(height: 24), + + Text("Optional Photos & Remarks", style: Theme.of(context).textTheme.titleLarge), + const SizedBox(height: 8), + _buildImagePicker('Optional Photo 1', 'OPTIONAL_1', widget.data.optionalImage1, (file) => widget.data.optionalImage1 = file, remarkController: _optionalRemark1Controller, isRequired: false), + _buildImagePicker('Optional Photo 2', 'OPTIONAL_2', widget.data.optionalImage2, (file) => widget.data.optionalImage2 = file, remarkController: _optionalRemark2Controller, isRequired: false), + _buildImagePicker('Optional Photo 3', 'OPTIONAL_3', widget.data.optionalImage3, (file) => widget.data.optionalImage3 = file, remarkController: _optionalRemark3Controller, isRequired: false), + _buildImagePicker('Optional Photo 4', 'OPTIONAL_4', widget.data.optionalImage4, (file) => widget.data.optionalImage4 = file, remarkController: _optionalRemark4Controller, isRequired: false), + const SizedBox(height: 24), + + Text("Remarks", style: Theme.of(context).textTheme.titleLarge), + const SizedBox(height: 16), + TextFormField( + controller: _eventRemarksController, + decoration: const InputDecoration(labelText: 'Event Remarks (Optional)', hintText: 'e.g., unusual smells, colors, etc.'), + onSaved: (value) => widget.data.eventRemarks = value, + maxLines: 3, + ), + const SizedBox(height: 16), + TextFormField( + controller: _labRemarksController, + decoration: const InputDecoration(labelText: 'Lab Remarks (Optional)'), + onSaved: (value) => widget.data.labRemarks = value, + maxLines: 3, + ), + const SizedBox(height: 32), + ElevatedButton( + onPressed: _goToNextStep, + style: ElevatedButton.styleFrom(padding: const EdgeInsets.symmetric(vertical: 16)), + child: const Text('Next'), + ), + ], + ), + ); + } + + Widget _buildImagePicker(String title, String imageInfo, File? imageFile, Function(File?) setImageCallback, {TextEditingController? remarkController, bool isRequired = false}) { + return Padding( + padding: const EdgeInsets.symmetric(vertical: 8.0), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text(title + (isRequired ? ' *' : ''), style: const TextStyle(fontSize: 16, fontWeight: FontWeight.w500)), + const SizedBox(height: 8), + if (imageFile != null) + Stack( + alignment: Alignment.topRight, + children: [ + ClipRRect(borderRadius: BorderRadius.circular(8.0), child: Image.file(imageFile, key: UniqueKey(), height: 150, width: double.infinity, fit: BoxFit.cover)), + Container( + margin: const EdgeInsets.all(4), + decoration: BoxDecoration(color: Colors.black.withOpacity(0.6), shape: BoxShape.circle), + child: IconButton( + visualDensity: VisualDensity.compact, + icon: const Icon(Icons.close, color: Colors.white, size: 20), + onPressed: () => setState(() => setImageCallback(null)), + ), + ), + ], + ) + else + Row( + mainAxisAlignment: MainAxisAlignment.spaceEvenly, + children: [ + ElevatedButton.icon(onPressed: _isPickingImage ? null : () => _setImage(setImageCallback, ImageSource.camera, imageInfo, isRequired: isRequired), icon: const Icon(Icons.camera_alt), label: const Text("Camera")), + ElevatedButton.icon(onPressed: _isPickingImage ? null : () => _setImage(setImageCallback, ImageSource.gallery, imageInfo, isRequired: isRequired), icon: const Icon(Icons.photo_library), label: const Text("Gallery")), + ], + ), + if (remarkController != null) + Padding( + padding: const EdgeInsets.only(top: 8.0), + child: TextFormField( + controller: remarkController, + decoration: InputDecoration( + labelText: 'Remarks for $title', + hintText: 'Add an optional remark...', + border: const OutlineInputBorder(), + ), + ), + ), + ], + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/river/manual/widgets/river_in_situ_step_3_data_capture.dart b/lib/screens/river/manual/widgets/river_in_situ_step_3_data_capture.dart new file mode 100644 index 0000000..b0598a7 --- /dev/null +++ b/lib/screens/river/manual/widgets/river_in_situ_step_3_data_capture.dart @@ -0,0 +1,494 @@ +// lib/screens/river/manual/widgets/river_in_situ_step_3_data_capture.dart + +import 'dart:async'; +import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; +import 'package:flutter_bluetooth_serial/flutter_bluetooth_serial.dart'; +import 'package:usb_serial/usb_serial.dart'; + +import '../../../../models/river_in_situ_sampling_data.dart'; +import '../../../../services/river_in_situ_sampling_service.dart'; +import '../../../../bluetooth/bluetooth_manager.dart'; // For connection state enum +import '../../../../serial/serial_manager.dart'; // For connection state enum +import '../../../../bluetooth/widgets/bluetooth_device_list_dialog.dart'; +import '../../../../serial/widget/serial_port_list_dialog.dart'; + +class RiverInSituStep3DataCapture extends StatefulWidget { + final RiverInSituSamplingData data; + final VoidCallback onNext; + + const RiverInSituStep3DataCapture({ + super.key, + required this.data, + required this.onNext, + }); + + @override + State createState() => _RiverInSituStep3DataCaptureState(); +} + +class _RiverInSituStep3DataCaptureState extends State { + final _formKey = GlobalKey(); + bool _isLoading = false; + bool _isAutoReading = false; + StreamSubscription? _dataSubscription; + + final List> _parameters = []; + + final _sondeIdController = TextEditingController(); + final _dateController = TextEditingController(); + final _timeController = TextEditingController(); + final _oxyConcController = TextEditingController(); + final _oxySatController = TextEditingController(); + final _phController = TextEditingController(); + final _salinityController = TextEditingController(); + final _ecController = TextEditingController(); + final _tempController = TextEditingController(); + final _tdsController = TextEditingController(); + final _turbidityController = TextEditingController(); + final _tssController = TextEditingController(); + final _batteryController = TextEditingController(); + // NOTE: If you add river-specific parameters, add their controllers here. + + @override + void initState() { + super.initState(); + _initializeControllers(); + } + + @override + void dispose() { + _dataSubscription?.cancel(); + _disposeControllers(); + super.dispose(); + } + + void _initializeControllers() { + widget.data.dataCaptureDate = widget.data.samplingDate; + widget.data.dataCaptureTime = widget.data.samplingTime; + + _sondeIdController.text = widget.data.sondeId ?? ''; + _dateController.text = widget.data.dataCaptureDate ?? ''; + _timeController.text = widget.data.dataCaptureTime ?? ''; + + widget.data.oxygenConcentration ??= -999.0; + widget.data.oxygenSaturation ??= -999.0; + widget.data.ph ??= -999.0; + widget.data.salinity ??= -999.0; + widget.data.electricalConductivity ??= -999.0; + widget.data.temperature ??= -999.0; + widget.data.tds ??= -999.0; + widget.data.turbidity ??= -999.0; + widget.data.tss ??= -999.0; + widget.data.batteryVoltage ??= -999.0; + // NOTE: Initialize your river-specific parameters here (e.g., widget.data.flowRate ??= -999.0;) + + _oxyConcController.text = widget.data.oxygenConcentration!.toString(); + _oxySatController.text = widget.data.oxygenSaturation!.toString(); + _phController.text = widget.data.ph!.toString(); + _salinityController.text = widget.data.salinity!.toString(); + _ecController.text = widget.data.electricalConductivity!.toString(); + _tempController.text = widget.data.temperature!.toString(); + _tdsController.text = widget.data.tds!.toString(); + _turbidityController.text = widget.data.turbidity!.toString(); + _tssController.text = widget.data.tss!.toString(); + _batteryController.text = widget.data.batteryVoltage!.toString(); + + if (_parameters.isEmpty) { + _parameters.addAll([ + {'icon': Icons.air, 'label': 'Oxygen Conc.', 'unit': 'mg/L', 'controller': _oxyConcController}, + {'icon': Icons.percent, 'label': 'Oxygen Sat.', 'unit': '%', 'controller': _oxySatController}, + {'icon': Icons.science_outlined, 'label': 'pH', 'unit': '', 'controller': _phController}, + {'icon': Icons.waves, 'label': 'Salinity', 'unit': 'ppt', 'controller': _salinityController}, + {'icon': Icons.flash_on, 'label': 'Conductivity', 'unit': 'µS/cm', 'controller': _ecController}, + {'icon': Icons.thermostat, 'label': 'Temperature', 'unit': '°C', 'controller': _tempController}, + {'icon': Icons.grain, 'label': 'TDS', 'unit': 'mg/L', 'controller': _tdsController}, + {'icon': Icons.opacity, 'label': 'Turbidity', 'unit': 'NTU', 'controller': _turbidityController}, + {'icon': Icons.filter_alt_outlined, 'label': 'TSS', 'unit': 'mg/L', 'controller': _tssController}, + {'icon': Icons.battery_charging_full, 'label': 'Battery', 'unit': 'V', 'controller': _batteryController}, + // NOTE: If you add river-specific parameters, add them to this list. + ]); + } + } + + void _disposeControllers() { + _sondeIdController.dispose(); + _dateController.dispose(); + _timeController.dispose(); + _oxyConcController.dispose(); + _oxySatController.dispose(); + _phController.dispose(); + _salinityController.dispose(); + _ecController.dispose(); + _tempController.dispose(); + _tdsController.dispose(); + _turbidityController.dispose(); + _tssController.dispose(); + _batteryController.dispose(); + // NOTE: Dispose your river-specific controllers here. + } + + Future _handleConnectionAttempt(String type) async { + final service = context.read(); + + final bool hasPermissions = await service.requestDevicePermissions(); + if (!hasPermissions && mounted) { + _showSnackBar("Bluetooth & Location permissions are required to connect.", isError: true); + return; + } + + _disconnectFromAll(); + await Future.delayed(const Duration(milliseconds: 250)); + + final bool connectionSuccess = await _connectToDevice(type); + + if (connectionSuccess && mounted) { + _dataSubscription?.cancel(); + final stream = type == 'bluetooth' ? service.bluetoothDataStream : service.serialDataStream; + + _dataSubscription = stream.listen((readings) { + if (mounted) { + _updateTextFields(readings); + } + }); + } + } + + Future _connectToDevice(String type) async { + setState(() => _isLoading = true); + final service = context.read(); + bool success = false; + + try { + if (type == 'bluetooth') { + final devices = await service.getPairedBluetoothDevices(); + if (devices.isEmpty && mounted) { + _showSnackBar('No paired Bluetooth devices found.', isError: true); + return false; + } + final selectedDevice = await showBluetoothDeviceListDialog(context: context, devices: devices); + if (selectedDevice != null) { + await service.connectToBluetoothDevice(selectedDevice); + success = true; + } + } else if (type == 'serial') { + final devices = await service.getAvailableSerialDevices(); + if (devices.isEmpty && mounted) { + _showSnackBar('No USB Serial devices found.', isError: true); + return false; + } + final selectedDevice = await showSerialPortListDialog(context: context, devices: devices); + if (selectedDevice != null) { + await service.connectToSerialDevice(selectedDevice); + success = true; + } + } + } catch (e) { + if (mounted) _showSnackBar('Connection failed: $e', isError: true); + success = false; + } finally { + if (mounted) setState(() => _isLoading = false); + } + return success; + } + + void _toggleAutoReading(String activeType) { + final service = context.read(); + setState(() { + _isAutoReading = !_isAutoReading; + if (_isAutoReading) { + if (activeType == 'bluetooth') service.startBluetoothAutoReading(); + else service.startSerialAutoReading(); + } else { + if (activeType == 'bluetooth') service.stopBluetoothAutoReading(); + else service.stopSerialAutoReading(); + } + }); + } + + void _disconnect(String type) { + final service = context.read(); + if (type == 'bluetooth') { + service.disconnectFromBluetooth(); + } else { + service.disconnectFromSerial(); + } + _dataSubscription?.cancel(); + _dataSubscription = null; + if (mounted) { + setState(() => _isAutoReading = false); + } + } + + void _disconnectFromAll() { + final service = context.read(); + if (service.bluetoothConnectionState.value != BluetoothConnectionState.disconnected) { + _disconnect('bluetooth'); + } + if (service.serialConnectionState.value != SerialConnectionState.disconnected) { + _disconnect('serial'); + } + } + + void _updateTextFields(Map readings) { + const defaultValue = -999.0; + setState(() { + _oxyConcController.text = (readings['Optical Dissolved Oxygen: Compensated mg/L'] ?? defaultValue).toStringAsFixed(5); + _oxySatController.text = (readings['Optical Dissolved Oxygen: Compensated % Saturation'] ?? defaultValue).toStringAsFixed(5); + _phController.text = (readings['PH: PH units'] ?? defaultValue).toStringAsFixed(5); + _tempController.text = (readings['External Temp: Degrees Celcius'] ?? defaultValue).toStringAsFixed(5); + _ecController.text = (readings['Conductivity: us/cm'] ?? defaultValue).toStringAsFixed(5); + _salinityController.text = (readings['Conductivity: Salinity'] ?? defaultValue).toStringAsFixed(5); + _tdsController.text = (readings['Conductivity:TDS mg/L'] ?? defaultValue).toStringAsFixed(5); + _tssController.text = (readings['Turbidity: TSS'] ?? defaultValue).toStringAsFixed(5); + _turbidityController.text = (readings['Turbidity: FNU'] ?? defaultValue).toStringAsFixed(5); + _batteryController.text = (readings['Sonde: Battery Voltage'] ?? defaultValue).toStringAsFixed(5); + }); + } + + void _goToNextStep() { + if (_isAutoReading) { + showDialog( + context: context, + builder: (BuildContext context) { + return AlertDialog( + title: const Text('Data Collection Active'), + content: const Text('Please stop the live data collection before proceeding.'), + actions: [ + TextButton( + child: const Text('OK'), + onPressed: () { + Navigator.of(context).pop(); + }, + ), + ], + ); + }, + ); + return; + } + + if (_formKey.currentState!.validate()){ + _formKey.currentState!.save(); + + try { + const defaultValue = -999.0; + widget.data.temperature = double.tryParse(_tempController.text) ?? defaultValue; + widget.data.ph = double.tryParse(_phController.text) ?? defaultValue; + widget.data.salinity = double.tryParse(_salinityController.text) ?? defaultValue; + widget.data.electricalConductivity = double.tryParse(_ecController.text) ?? defaultValue; + widget.data.oxygenConcentration = double.tryParse(_oxyConcController.text) ?? defaultValue; + widget.data.oxygenSaturation = double.tryParse(_oxySatController.text) ?? defaultValue; + widget.data.tds = double.tryParse(_tdsController.text) ?? defaultValue; + widget.data.turbidity = double.tryParse(_turbidityController.text) ?? defaultValue; + widget.data.tss = double.tryParse(_tssController.text) ?? defaultValue; + widget.data.batteryVoltage = double.tryParse(_batteryController.text) ?? defaultValue; + } catch (e) { + _showSnackBar("Could not save parameters due to a data format error.", isError: true); + return; + } + + widget.onNext(); + } + } + + void _showSnackBar(String message, {bool isError = false}) { + if (mounted) { + ScaffoldMessenger.of(context).showSnackBar(SnackBar( + content: Text(message), + backgroundColor: isError ? Colors.red : null, + )); + } + } + + Map? _getActiveConnectionDetails() { + final service = context.watch(); + if (service.bluetoothConnectionState.value != BluetoothConnectionState.disconnected) { + return {'type': 'bluetooth', 'state': service.bluetoothConnectionState.value, 'name': service.connectedBluetoothDeviceName}; + } + if (service.serialConnectionState.value != SerialConnectionState.disconnected) { + return {'type': 'serial', 'state': service.serialConnectionState.value, 'name': service.connectedSerialDeviceName}; + } + return null; + } + + @override + Widget build(BuildContext context) { + final service = context.watch(); + final activeConnection = _getActiveConnectionDetails(); + final String? activeType = activeConnection?['type'] as String?; + + return Form( + key: _formKey, + child: ListView( + // CORRECTED: Scrolling is enabled by removing the physics property. + padding: const EdgeInsets.all(24.0), + children: [ + Text("Data Capture", style: Theme.of(context).textTheme.headlineSmall), + const SizedBox(height: 16), + Row( + children: [ + Expanded( + child: activeType == 'bluetooth' + ? FilledButton.icon( + icon: const Icon(Icons.bluetooth_connected), + label: const Text("Bluetooth"), + onPressed: _isLoading ? null : () => _handleConnectionAttempt('bluetooth'), + ) + : OutlinedButton.icon( + icon: const Icon(Icons.bluetooth), + label: const Text("Bluetooth"), + onPressed: _isLoading ? null : () => _handleConnectionAttempt('bluetooth'), + ), + ), + const SizedBox(width: 16), + Expanded( + child: activeType == 'serial' + ? FilledButton.icon( + icon: const Icon(Icons.usb), + label: const Text("USB Serial"), + onPressed: _isLoading ? null : () => _handleConnectionAttempt('serial'), + ) + : OutlinedButton.icon( + icon: const Icon(Icons.usb), + label: const Text("USB Serial"), + onPressed: _isLoading ? null : () => _handleConnectionAttempt('serial'), + ), + ), + ], + ), + const SizedBox(height: 16), + if (activeConnection != null) + _buildConnectionCard( + type: activeConnection['type'], + connectionState: activeConnection['state'], + deviceName: activeConnection['name'], + ), + const SizedBox(height: 24), + + ValueListenableBuilder( + valueListenable: service.sondeId, + builder: (context, sondeId, child) { + final newSondeId = sondeId ?? ''; + if (_sondeIdController.text != newSondeId) { + _sondeIdController.text = newSondeId; + widget.data.sondeId = newSondeId; + } + return TextFormField( + controller: _sondeIdController, + decoration: const InputDecoration( + labelText: 'Sonde ID *', + hintText: 'Connect device or enter manually'), + validator: (v) => v == null || v.isEmpty ? 'Sonde ID is required' : null, + onChanged: (value) { + widget.data.sondeId = value; + }, + onSaved: (v) => widget.data.sondeId = v, + ); + }, + ), + const SizedBox(height: 16), + Row( + children: [ + Expanded(child: TextFormField(controller: _dateController, readOnly: true, decoration: const InputDecoration(labelText: 'Date'))), + const SizedBox(width: 16), + Expanded(child: TextFormField(controller: _timeController, readOnly: true, decoration: const InputDecoration(labelText: 'Time'))), + ], + ), + const Divider(height: 32), + + Column( + children: _parameters.map((param) { + return _buildParameterListItem( + icon: param['icon'] as IconData, + label: param['label'] as String, + unit: param['unit'] as String, + controller: param['controller'] as TextEditingController, + ); + }).toList(), + ), + + const SizedBox(height: 32), + ElevatedButton( + onPressed: _goToNextStep, + style: ElevatedButton.styleFrom(padding: const EdgeInsets.symmetric(vertical: 16)), + child: const Text('Next'), + ), + ], + ), + ); + } + + Widget _buildParameterListItem({ + required IconData icon, + required String label, + required String unit, + required TextEditingController controller, + }) { + final bool isMissing = controller.text.isEmpty || controller.text.contains('-999'); + final String displayValue = isMissing ? '-.--' : controller.text; + final String displayLabel = unit.isEmpty ? label : '$label ($unit)'; + + return Card( + margin: const EdgeInsets.symmetric(vertical: 4.0), + child: ListTile( + leading: Icon(icon, color: Theme.of(context).primaryColor, size: 32), + title: Text(displayLabel), + trailing: Text( + displayValue, + style: Theme.of(context).textTheme.titleMedium?.copyWith( + fontWeight: FontWeight.bold, + color: isMissing ? Colors.grey : Theme.of(context).colorScheme.primary), + ), + ), + ); + } + + Widget _buildConnectionCard({required String type, required dynamic connectionState, String? deviceName}) { + final isConnected = connectionState == BluetoothConnectionState.connected || connectionState == SerialConnectionState.connected; + final isConnecting = connectionState == BluetoothConnectionState.connecting || connectionState == SerialConnectionState.connecting; + + Color statusColor = isConnected ? Colors.green : Colors.red; + String statusText = isConnected ? 'Connected to ${deviceName ?? 'device'}' : 'Disconnected'; + if (isConnecting) { + statusColor = Colors.orange; + statusText = 'Connecting...'; + } + + return Card( + elevation: 2, + child: Padding( + padding: const EdgeInsets.all(16.0), + child: Column( + children: [ + Text(statusText, style: TextStyle(color: statusColor, fontWeight: FontWeight.bold, fontSize: 16)), + const SizedBox(height: 16), + if (isConnecting || _isLoading) + const CircularProgressIndicator() + else if (isConnected) + Row( + mainAxisAlignment: MainAxisAlignment.spaceEvenly, + children: [ + ElevatedButton.icon( + icon: Icon(_isAutoReading ? Icons.stop_circle_outlined : Icons.play_circle_outlined), + label: Text(_isAutoReading ? 'Stop Reading' : 'Start Reading'), + onPressed: () => _toggleAutoReading(type), + style: ElevatedButton.styleFrom( + backgroundColor: _isAutoReading ? Colors.orange : Colors.green, + foregroundColor: Colors.white, + ), + ), + TextButton.icon( + icon: const Icon(Icons.link_off), + label: const Text('Disconnect'), + onPressed: () => _disconnect(type), + style: TextButton.styleFrom(foregroundColor: Colors.red), + ) + ], + ) + ], + ), + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/river/manual/widgets/river_in_situ_step_4_summary.dart b/lib/screens/river/manual/widgets/river_in_situ_step_4_summary.dart new file mode 100644 index 0000000..4094d34 --- /dev/null +++ b/lib/screens/river/manual/widgets/river_in_situ_step_4_summary.dart @@ -0,0 +1,229 @@ +// lib/screens/river/manual/widgets/river_in_situ_step_4_summary.dart + +import 'dart:io'; +import 'package:flutter/material.dart'; + +// CHANGED: Import river-specific data model +import '../../../../models/river_in_situ_sampling_data.dart'; + +// CHANGED: Renamed class for river context +class RiverInSituStep4Summary extends StatelessWidget { + // CHANGED: Expects river-specific data model + final RiverInSituSamplingData data; + final VoidCallback onSubmit; + final bool isLoading; + + const RiverInSituStep4Summary({ + super.key, + required this.data, + required this.onSubmit, + required this.isLoading, + }); + + @override + Widget build(BuildContext context) { + return ListView( + padding: const EdgeInsets.all(16.0), + children: [ + Text( + "Please review all information before submitting.", + style: Theme.of(context).textTheme.titleMedium, + textAlign: TextAlign.center, + ), + const SizedBox(height: 16), + + _buildSectionCard( + context, + "Sampling & Station Details", + [ + _buildDetailRow("1st Sampler:", data.firstSamplerName), + _buildDetailRow("2nd Sampler:", data.secondSampler?['first_name']?.toString()), + _buildDetailRow("Sampling Date:", data.samplingDate), + _buildDetailRow("Sampling Time:", data.samplingTime), + _buildDetailRow("Sampling Type:", data.samplingType), + _buildDetailRow("Sample ID Code:", data.sampleIdCode), + const Divider(height: 20), + _buildDetailRow("State:", data.selectedStateName), + _buildDetailRow("Category:", data.selectedCategoryName), + // CHANGED: Use river-specific station keys + _buildDetailRow("Station Code:", data.selectedStation?['r_man_station_code']?.toString()), + _buildDetailRow("Station Name:", data.selectedStation?['r_man_station_name']?.toString()), + _buildDetailRow("Station Location:", "${data.stationLatitude}, ${data.stationLongitude}"), + ], + ), + + _buildSectionCard( + context, + "Location & On-Site Info", + [ + _buildDetailRow("Current Location:", "${data.currentLatitude}, ${data.currentLongitude}"), + _buildDetailRow("Distance Difference:", data.distanceDifferenceInKm != null ? "${(data.distanceDifferenceInKm! * 1000).toStringAsFixed(0)} meters" : "N/A"), + if (data.distanceDifferenceRemarks != null && data.distanceDifferenceRemarks!.isNotEmpty) + _buildDetailRow("Distance Remarks:", data.distanceDifferenceRemarks), + const Divider(height: 20), + _buildDetailRow("Weather:", data.weather), + // CHANGED: Use river-specific fields + _buildDetailRow("Water Level:", data.waterLevel), + _buildDetailRow("River Condition:", data.riverCondition), + _buildDetailRow("Event Remarks:", data.eventRemarks), + _buildDetailRow("Lab Remarks:", data.labRemarks), + ], + ), + + _buildSectionCard( + context, + "Attached Photos", + [ + // CHANGED: Use river-specific image properties and labels + _buildImageCard("Left Bank View", data.leftBankViewImage), + _buildImageCard("Right Bank View", data.rightBankViewImage), + _buildImageCard("Filling Water into Bottle", data.waterFillingImage), + _buildImageCard("Water Color in Bottle", data.waterColorImage), + _buildImageCard("Examine Preservative (pH paper)", data.phPaperImage), + const Divider(height: 24), + Text("Optional Photos", style: Theme.of(context).textTheme.titleMedium?.copyWith(fontWeight: FontWeight.bold)), + const SizedBox(height: 8), + _buildImageCard("Optional Photo 1", data.optionalImage1, remark: data.optionalRemark1), + _buildImageCard("Optional Photo 2", data.optionalImage2, remark: data.optionalRemark2), + _buildImageCard("Optional Photo 3", data.optionalImage3, remark: data.optionalRemark3), + _buildImageCard("Optional Photo 4", data.optionalImage4, remark: data.optionalRemark4), + ], + ), + + _buildSectionCard( + context, + "Captured Parameters", + [ + _buildDetailRow("Sonde ID:", data.sondeId), + _buildDetailRow("Capture Time:", "${data.dataCaptureDate} ${data.dataCaptureTime}"), + const Divider(height: 20), + _buildParameterListItem(context, icon: Icons.air, label: "Oxygen Conc.", unit: "mg/L", value: data.oxygenConcentration?.toStringAsFixed(2)), + _buildParameterListItem(context, icon: Icons.percent, label: "Oxygen Sat.", unit: "%", value: data.oxygenSaturation?.toStringAsFixed(2)), + _buildParameterListItem(context, icon: Icons.science_outlined, label: "pH", unit: "", value: data.ph?.toStringAsFixed(2)), + _buildParameterListItem(context, icon: Icons.waves, label: "Salinity", unit: "ppt", value: data.salinity?.toStringAsFixed(2)), + _buildParameterListItem(context, icon: Icons.flash_on, label: "Conductivity", unit: "µS/cm", value: data.electricalConductivity?.toStringAsFixed(0)), + _buildParameterListItem(context, icon: Icons.thermostat, label: "Temperature", unit: "°C", value: data.temperature?.toStringAsFixed(2)), + _buildParameterListItem(context, icon: Icons.grain, label: "TDS", unit: "mg/L", value: data.tds?.toStringAsFixed(2)), + _buildParameterListItem(context, icon: Icons.opacity, label: "Turbidity", unit: "NTU", value: data.turbidity?.toStringAsFixed(2)), + _buildParameterListItem(context, icon: Icons.filter_alt_outlined, label: "TSS", unit: "mg/L", value: data.tss?.toStringAsFixed(2)), + _buildParameterListItem(context, icon: Icons.battery_charging_full, label: "Battery", unit: "V", value: data.batteryVoltage?.toStringAsFixed(2)), + // NOTE: If you add river-specific parameters, display them here. + ], + ), + + const SizedBox(height: 24), + isLoading + ? const Center(child: CircularProgressIndicator()) + : ElevatedButton.icon( + onPressed: onSubmit, + icon: const Icon(Icons.cloud_upload), + label: const Text('Confirm & Submit'), + style: ElevatedButton.styleFrom( + padding: const EdgeInsets.symmetric(vertical: 16), + textStyle: const TextStyle(fontSize: 18, fontWeight: FontWeight.bold), + ), + ), + const SizedBox(height: 16), + ], + ); + } + + Widget _buildSectionCard(BuildContext context, String title, List children) { + return Card( + margin: const EdgeInsets.symmetric(vertical: 8.0), + elevation: 2, + shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(12)), + child: Padding( + padding: const EdgeInsets.all(16.0), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + title, + style: TextStyle( + fontSize: 18, + fontWeight: FontWeight.bold, + color: Theme.of(context).primaryColor, + ), + ), + const Divider(height: 20, thickness: 1), + ...children, + ], + ), + ), + ); + } + + Widget _buildDetailRow(String label, String? value) { + return Padding( + padding: const EdgeInsets.symmetric(vertical: 6.0), + child: Row( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Expanded( + flex: 2, + child: Text(label, style: const TextStyle(fontWeight: FontWeight.bold)), + ), + const SizedBox(width: 8), + Expanded( + flex: 3, + child: Text(value != null && value.isNotEmpty ? value : 'N/A', style: const TextStyle(fontSize: 16)), + ), + ], + ), + ); + } + + Widget _buildParameterListItem(BuildContext context, {required IconData icon, required String label, required String unit, required String? value}) { + final bool isMissing = value == null; + final String displayValue = isMissing ? 'N/A' : '$value ${unit}'.trim(); + + return ListTile( + dense: true, + contentPadding: EdgeInsets.zero, + leading: Icon(icon, color: Theme.of(context).primaryColor, size: 28), + title: Text(label, style: const TextStyle(fontWeight: FontWeight.bold)), + trailing: Text( + displayValue, + style: Theme.of(context).textTheme.bodyLarge?.copyWith( + color: isMissing ? Colors.grey : null, + fontWeight: isMissing ? null : FontWeight.bold, + ), + ), + ); + } + + Widget _buildImageCard(String title, File? image, {String? remark}) { + final bool hasRemark = remark != null && remark.isNotEmpty; + return Padding( + padding: const EdgeInsets.symmetric(vertical: 8.0), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text(title, style: const TextStyle(fontWeight: FontWeight.bold, fontSize: 16)), + const SizedBox(height: 8), + if (image != null) + ClipRRect( + borderRadius: BorderRadius.circular(8.0), + child: Image.file(image, key: UniqueKey(), height: 200, width: double.infinity, fit: BoxFit.cover), + ) + else + Container( + height: 100, + width: double.infinity, + decoration: BoxDecoration( + color: Colors.grey[200], + borderRadius: BorderRadius.circular(8.0), + border: Border.all(color: Colors.grey[300]!)), + child: const Center(child: Text('No Image Attached', style: TextStyle(color: Colors.grey))), + ), + if (hasRemark) + Padding( + padding: const EdgeInsets.only(top: 8.0), + child: Text('Remark: $remark', style: const TextStyle(fontStyle: FontStyle.italic)), + ), + ], + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/river/river_home_page.dart b/lib/screens/river/river_home_page.dart new file mode 100644 index 0000000..2094ecf --- /dev/null +++ b/lib/screens/river/river_home_page.dart @@ -0,0 +1,164 @@ +import 'package:flutter/material.dart'; + +// Re-defining SidebarItem here for self-containment, +// ideally this would be in a shared utility file if used across many screens. +class SidebarItem { + final IconData? icon; + final String label; + final String? route; + final List? children; + final bool isParent; + final String? imagePath; + + const SidebarItem({ + this.icon, + required this.label, + this.route, + this.children, + this.isParent = false, + this.imagePath, + }) : assert(icon != null || imagePath != null, 'Either icon or imagePath must be provided'); +} + +class RiverHomePage extends StatelessWidget { + const RiverHomePage({super.key}); + + // Define River's sub-menu structure (Manual, Continuous, Investigative) + final List _riverSubMenus = const [ + SidebarItem( + icon: Icons.handshake, + label: "Manual", + isParent: true, + children: [ + SidebarItem(icon: Icons.dashboard, label: "Dashboard", route: '/river/manual/dashboard'), + SidebarItem(icon: Icons.pin_drop, label: "In-Situ Sampling", route: '/river/manual/in-situ'), + SidebarItem(icon: Icons.receipt_long, label: "Report", route: '/river/manual/report'), + SidebarItem(icon: Icons.date_range, label: "Triennial Sampling", route: '/river/manual/triennial'), + SidebarItem(icon: Icons.article, label: "Data Log", route: '/river/manual/data-log'), + SidebarItem(icon: Icons.image, label: "Image Request", route: '/river/manual/image-request'), + ], + ), + SidebarItem( + icon: Icons.trending_up, + label: "Continuous", + isParent: true, + children: [ + SidebarItem(icon: Icons.dashboard, label: "Dashboard", route: '/river/continuous/dashboard'), + SidebarItem(icon: Icons.info, label: "Overview", route: '/river/continuous/overview'), + SidebarItem(icon: Icons.input, label: "Entry", route: '/river/continuous/entry'), + SidebarItem(icon: Icons.receipt_long, label: "Report", route: '/river/continuous/report'), + ], + ), + SidebarItem( + icon: Icons.search, + label: "Investigative", + isParent: true, + children: [ + SidebarItem(icon: Icons.dashboard, label: "Dashboard", route: '/river/investigative/dashboard'), + SidebarItem(icon: Icons.info, label: "Overview", route: '/river/investigative/overview'), + SidebarItem(icon: Icons.input, label: "Entry", route: '/river/investigative/entry'), + SidebarItem(icon: Icons.receipt_long, label: "Report", route: '/river/investigative/report'), + ], + ), + ]; + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar( + title: const Text("River Department"), + ), + body: SingleChildScrollView( + padding: const EdgeInsets.all(24.0), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + "Explore River Monitoring Sections", + style: Theme.of(context).textTheme.headlineSmall?.copyWith( + fontWeight: FontWeight.bold, + ), + ), + const SizedBox(height: 24), + Column( + children: _riverSubMenus.map((category) { + return _buildCategorySection(context, category); + }).toList(), + ), + ], + ), + ), + ); + } + + // Method to build each category section (Manual, Continuous, Investigative) + Widget _buildCategorySection(BuildContext context, SidebarItem category) { + return Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + // Category header (icon + label) + Padding( + padding: const EdgeInsets.symmetric(vertical: 8.0), + child: Row( + children: [ + Icon(category.icon, size: 30, color: Theme.of(context).iconTheme.color), + const SizedBox(width: 12), + Text( + category.label, + style: Theme.of(context).textTheme.titleLarge?.copyWith( + fontWeight: FontWeight.bold, + ), + ), + ], + ), + ), + const Divider(height: 24, thickness: 1, color: Colors.white24), // Divider below category title + // Grid of sub-menu items + GridView.builder( + shrinkWrap: true, + physics: const NeverScrollableScrollPhysics(), + gridDelegate: const SliverGridDelegateWithFixedCrossAxisCount( + crossAxisCount: 3, // 3 columns for sub-menu items + crossAxisSpacing: 0.0, // Removed horizontal spacing + mainAxisSpacing: 0.0, // Removed vertical spacing + childAspectRatio: 2.8, // Adjusted aspect ratio for horizontal icon-label layout with bigger content + ), + itemCount: category.children?.length ?? 0, + itemBuilder: (context, index) { + final subItem = category.children![index]; + return InkWell( + onTap: () { + if (subItem.route != null) { + Navigator.pushNamed(context, subItem.route!); + } + }, + borderRadius: BorderRadius.circular(0), // Removed border radius for seamless grid + child: Padding( + padding: const EdgeInsets.all(8.0), // Padding around the row content + child: Row( // Changed from Column to Row + mainAxisAlignment: MainAxisAlignment.start, // Align content to start + children: [ + subItem.icon != null + ? Icon(subItem.icon, color: Colors.white70, size: 24) // Increased icon size from 22 to 24 + : const SizedBox.shrink(), + const SizedBox(width: 8), // Space between icon and text (horizontal) + Expanded( // Allow text to take remaining space + child: Text( + subItem.label, + style: Theme.of(context).textTheme.bodySmall?.copyWith(color: Colors.white70, fontSize: 11), // Increased text size from 10 to 11 + textAlign: TextAlign.left, // Align text to left + overflow: TextOverflow.ellipsis, + maxLines: 1, // Single line for label + ), + ), + ], + ), + ), + ); + }, + ), + const SizedBox(height: 16), // Reduced gap after each category group + ], + ); + } +} diff --git a/lib/screens/settings.dart b/lib/screens/settings.dart new file mode 100644 index 0000000..ce42afe --- /dev/null +++ b/lib/screens/settings.dart @@ -0,0 +1,344 @@ +import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; +import 'package:intl/intl.dart'; +import 'package:environment_monitoring_app/auth_provider.dart'; +import 'package:environment_monitoring_app/services/settings_service.dart'; + +class SettingsScreen extends StatefulWidget { + const SettingsScreen({super.key}); + + @override + State createState() => _SettingsScreenState(); +} + +class _SettingsScreenState extends State { + final SettingsService _settingsService = SettingsService(); + bool _isSyncingData = false; + bool _isSyncingSettings = false; + + String _inSituChatId = 'Loading...'; + String _tarballChatId = 'Loading...'; + + final TextEditingController _tarballSearchController = TextEditingController(); + String _tarballSearchQuery = ''; + final TextEditingController _manualSearchController = TextEditingController(); + String _manualSearchQuery = ''; + final TextEditingController _riverManualSearchController = TextEditingController(); + String _riverManualSearchQuery = ''; + final TextEditingController _riverTriennialSearchController = TextEditingController(); + String _riverTriennialSearchQuery = ''; + + @override + void initState() { + super.initState(); + _loadCurrentSettings(); + _tarballSearchController.addListener(_onTarballSearchChanged); + _manualSearchController.addListener(_onManualSearchChanged); + _riverManualSearchController.addListener(_onRiverManualSearchChanged); + _riverTriennialSearchController.addListener(_onRiverTriennialSearchChanged); + } + + @override + void dispose() { + _tarballSearchController.dispose(); + _manualSearchController.dispose(); + _riverManualSearchController.dispose(); + _riverTriennialSearchController.dispose(); + super.dispose(); + } + + Future _loadCurrentSettings() async { + final inSituId = await _settingsService.getInSituChatId(); + final tarballId = await _settingsService.getTarballChatId(); + if (mounted) { + setState(() { + _inSituChatId = inSituId.isNotEmpty ? inSituId : 'Not Set'; + _tarballChatId = tarballId.isNotEmpty ? tarballId : 'Not Set'; + }); + } + } + + void _onTarballSearchChanged() { + setState(() { _tarballSearchQuery = _tarballSearchController.text; }); + } + + void _onManualSearchChanged() { + setState(() { _manualSearchQuery = _manualSearchController.text; }); + } + + void _onRiverManualSearchChanged() { + setState(() { _riverManualSearchQuery = _riverManualSearchController.text; }); + } + + void _onRiverTriennialSearchChanged() { + setState(() { _riverTriennialSearchQuery = _riverTriennialSearchController.text; }); + } + + // --- FIXED: This method now uses try/catch to handle success and failure --- + Future _manualDataSync() async { + if (_isSyncingData) return; + setState(() => _isSyncingData = true); + + final auth = Provider.of(context, listen: false); + + try { + // This function doesn't return a value, so we don't assign it to a variable. + await auth.syncAllData(forceRefresh: true); + + // If no error was thrown, the sync was successful. + if (mounted) { + _showSnackBar('Data synced successfully.', isError: false); + } + } catch (e) { + // If an error was thrown during the sync, we catch it here. + if (mounted) { + _showSnackBar('Data sync failed. Please check your connection.', isError: true); + } + } finally { + // This will run whether the sync succeeded or failed. + if (mounted) { + setState(() => _isSyncingData = false); + } + } + } + + Future _manualSettingsSync() async { + if (_isSyncingSettings) return; + setState(() => _isSyncingSettings = true); + + final success = await _settingsService.syncFromServer(); + + if (mounted) { + final message = success ? 'Telegram settings synced successfully.' : 'Failed to sync settings.'; + _showSnackBar(message, isError: !success); + if (success) { + await _loadCurrentSettings(); + } + setState(() => _isSyncingSettings = false); + } + } + + void _showSnackBar(String message, {bool isError = false}) { + if (mounted) { + ScaffoldMessenger.of(context).showSnackBar( + SnackBar( + content: Text(message), + backgroundColor: isError ? Theme.of(context).colorScheme.error : Colors.green, + ), + ); + } + } + + @override + Widget build(BuildContext context) { + final auth = Provider.of(context); + final lastSync = auth.lastSyncTimestamp; + + // Filtering logic is unchanged + final filteredTarballStations = auth.tarballStations?.where((station) { + final stationName = station['tbl_station_name']?.toLowerCase() ?? ''; + final stationCode = station['tbl_station_code']?.toLowerCase() ?? ''; + final query = _tarballSearchQuery.toLowerCase(); + return stationName.contains(query) || stationCode.contains(query); + }).toList(); + final filteredManualStations = auth.manualStations?.where((station) { + final stationName = station['man_station_name']?.toLowerCase() ?? ''; + final stationCode = station['man_station_code']?.toLowerCase() ?? ''; + final query = _manualSearchQuery.toLowerCase(); + return stationName.contains(query) || stationCode.contains(query); + }).toList(); + final filteredRiverManualStations = auth.riverManualStations?.where((station) { + final riverName = station['sampling_river']?.toLowerCase() ?? ''; + final stationCode = station['sampling_station_code']?.toLowerCase() ?? ''; + final basinName = station['sampling_basin']?.toLowerCase() ?? ''; + final query = _riverManualSearchQuery.toLowerCase(); + return riverName.contains(query) || stationCode.contains(query) || basinName.contains(query); + }).toList(); + final filteredRiverTriennialStations = auth.riverTriennialStations?.where((station) { + final riverName = station['triennial_river']?.toLowerCase() ?? ''; + final stationCode = station['triennial_station_code']?.toLowerCase() ?? ''; + final basinName = station['triennial_basin']?.toLowerCase() ?? ''; + final query = _riverTriennialSearchQuery.toLowerCase(); + return riverName.contains(query) || stationCode.contains(query) || basinName.contains(query); + }).toList(); + + return Scaffold( + appBar: AppBar( + title: const Text("Settings"), + ), + body: SingleChildScrollView( + padding: const EdgeInsets.all(24.0), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text("Synchronization", style: Theme.of(context).textTheme.headlineSmall?.copyWith(fontWeight: FontWeight.bold)), + const SizedBox(height: 16), + Card( + margin: EdgeInsets.zero, + child: Padding( + padding: const EdgeInsets.all(16.0), + child: Column( + crossAxisAlignment: CrossAxisAlignment.stretch, + children: [ + Text("Last Data Sync:", style: Theme.of(context).textTheme.titleMedium), + const SizedBox(height: 4), + Text(lastSync != null ? DateFormat('yyyy-MM-dd HH:mm:ss').format(lastSync) : 'Never', style: Theme.of(context).textTheme.bodyLarge), + const SizedBox(height: 16), + ElevatedButton.icon( + onPressed: _isSyncingData ? null : _manualDataSync, + icon: _isSyncingData ? const SizedBox(width: 20, height: 20, child: CircularProgressIndicator(strokeWidth: 2, color: Colors.white)) : const Icon(Icons.cloud_sync), + label: Text(_isSyncingData ? 'Syncing Data...' : 'Sync App Data'), + style: ElevatedButton.styleFrom(minimumSize: const Size(double.infinity, 50)), + ), + ], + ), + ), + ), + const SizedBox(height: 32), + + Text("Telegram Alert Settings", style: Theme.of(context).textTheme.headlineSmall?.copyWith(fontWeight: FontWeight.bold)), + const SizedBox(height: 16), + Card( + margin: EdgeInsets.zero, + child: Padding( + padding: const EdgeInsets.all(16.0), + child: Column( + crossAxisAlignment: CrossAxisAlignment.stretch, + children: [ + ListTile( + contentPadding: EdgeInsets.zero, + leading: const Icon(Icons.telegram), + title: const Text('Marine In-Situ Chat ID'), + subtitle: Text(_inSituChatId), + ), + ListTile( + contentPadding: EdgeInsets.zero, + leading: const Icon(Icons.telegram), + title: const Text('Marine Tarball Chat ID'), + subtitle: Text(_tarballChatId), + ), + const SizedBox(height: 16), + ElevatedButton.icon( + onPressed: _isSyncingSettings ? null : _manualSettingsSync, + icon: _isSyncingSettings ? const SizedBox(width: 20, height: 20, child: CircularProgressIndicator(strokeWidth: 2, color: Colors.white)) : const Icon(Icons.settings_backup_restore), + label: Text(_isSyncingSettings ? 'Syncing Settings...' : 'Sync Telegram Settings'), + style: ElevatedButton.styleFrom( + backgroundColor: Theme.of(context).colorScheme.secondary, + minimumSize: const Size(double.infinity, 50), + ), + ), + ], + ), + ), + ), + const SizedBox(height: 32), + + Text("Marine Tarball Stations (${filteredTarballStations?.length ?? 0} found)", style: Theme.of(context).textTheme.headlineSmall?.copyWith(fontWeight: FontWeight.bold)), + const SizedBox(height: 16), + Card( + margin: EdgeInsets.zero, + child: Padding( + padding: const EdgeInsets.all(16.0), + child: Column( + children: [ + TextField(controller: _tarballSearchController, decoration: InputDecoration(labelText: 'Search Tarball Stations', hintText: 'Search by name or code', prefixIcon: const Icon(Icons.search), border: OutlineInputBorder(borderRadius: BorderRadius.circular(8.0)), suffixIcon: _tarballSearchController.text.isNotEmpty ? IconButton(icon: const Icon(Icons.clear), onPressed: () => _tarballSearchController.clear()) : null)), + const SizedBox(height: 16), + _buildStationList(filteredTarballStations, 'No matching tarball stations found.', 'No tarball stations available. Sync to download.', (station) => ListTile(title: Text(station['tbl_station_name'] ?? 'N/A'), subtitle: Text('Code: ${station['tbl_station_code'] ?? 'N/A'}'))), + ], + ), + ), + ), + const SizedBox(height: 32), + + Text("Marine Manual Stations (${filteredManualStations?.length ?? 0} found)", style: Theme.of(context).textTheme.headlineSmall?.copyWith(fontWeight: FontWeight.bold)), + const SizedBox(height: 16), + Card( + margin: EdgeInsets.zero, + child: Padding( + padding: const EdgeInsets.all(16.0), + child: Column( + children: [ + TextField(controller: _manualSearchController, decoration: InputDecoration(labelText: 'Search Manual Stations', hintText: 'Search by name or code', prefixIcon: const Icon(Icons.search), border: OutlineInputBorder(borderRadius: BorderRadius.circular(8.0)), suffixIcon: _manualSearchController.text.isNotEmpty ? IconButton(icon: const Icon(Icons.clear), onPressed: () => _manualSearchController.clear()) : null)), + const SizedBox(height: 16), + _buildStationList(filteredManualStations, 'No matching manual stations found.', 'No manual stations available. Sync to download.', (station) => ListTile(title: Text(station['man_station_name'] ?? 'N/A'), subtitle: Text('Code: ${station['man_station_code'] ?? 'N/A'}'))), + ], + ), + ), + ), + const SizedBox(height: 32), + + Text("River Manual Stations (${filteredRiverManualStations?.length ?? 0} found)", style: Theme.of(context).textTheme.headlineSmall?.copyWith(fontWeight: FontWeight.bold)), + const SizedBox(height: 16), + Card( + margin: EdgeInsets.zero, + child: Padding( + padding: const EdgeInsets.all(16.0), + child: Column( + children: [ + TextField(controller: _riverManualSearchController, decoration: InputDecoration(labelText: 'Search River Manual Stations', hintText: 'Search by river, basin, or code', prefixIcon: const Icon(Icons.search), border: OutlineInputBorder(borderRadius: BorderRadius.circular(8.0)), suffixIcon: _riverManualSearchController.text.isNotEmpty ? IconButton(icon: const Icon(Icons.clear), onPressed: () => _riverManualSearchController.clear()) : null)), + const SizedBox(height: 16), + _buildStationList(filteredRiverManualStations, 'No matching river manual stations found.', 'No river manual stations available. Sync to download.', (station) => ListTile(title: Text(station['sampling_river'] ?? 'N/A'), subtitle: Column(crossAxisAlignment: CrossAxisAlignment.start, children: [Text('Code: ${station['sampling_station_code'] ?? 'N/A'}'), Text('Basin: ${station['sampling_basin'] ?? 'N/A'}'), Text('State: ${station['state_name'] ?? 'N/A'}')]))), + ], + ), + ), + ), + const SizedBox(height: 32), + + Text("River Triennial Stations (${filteredRiverTriennialStations?.length ?? 0} found)", style: Theme.of(context).textTheme.headlineSmall?.copyWith(fontWeight: FontWeight.bold)), + const SizedBox(height: 16), + Card( + margin: EdgeInsets.zero, + child: Padding( + padding: const EdgeInsets.all(16.0), + child: Column( + children: [ + TextField(controller: _riverTriennialSearchController, decoration: InputDecoration(labelText: 'Search River Triennial Stations', hintText: 'Search by river, basin, or code', prefixIcon: const Icon(Icons.search), border: OutlineInputBorder(borderRadius: BorderRadius.circular(8.0)), suffixIcon: _riverTriennialSearchController.text.isNotEmpty ? IconButton(icon: const Icon(Icons.clear), onPressed: () => _riverTriennialSearchController.clear()) : null)), + const SizedBox(height: 16), + _buildStationList(filteredRiverTriennialStations, 'No matching river triennial stations found.', 'No river triennial stations available. Sync to download.', (station) => ListTile(title: Text(station['triennial_river'] ?? 'N/A'), subtitle: Column(crossAxisAlignment: CrossAxisAlignment.start, children: [Text('Code: ${station['triennial_station_code'] ?? 'N/A'}'), Text('Basin: ${station['triennial_basin'] ?? 'N/A'}'), Text('State: ${station['state_name'] ?? 'N/A'}')]))), + ], + ), + ), + ), + const SizedBox(height: 32), + + Text("General Settings", style: Theme.of(context).textTheme.headlineSmall?.copyWith(fontWeight: FontWeight.bold)), + const SizedBox(height: 16), + Card( + margin: EdgeInsets.zero, + child: Column( + children: [ + ListTile(leading: const Icon(Icons.info_outline), title: const Text('App Version'), subtitle: const Text('1.0.0')), + ListTile(leading: const Icon(Icons.privacy_tip_outlined), title: const Text('Privacy Policy'), onTap: () {}), + ], + ), + ), + ], + ), + ), + ); + } + + Widget _buildStationList(List>? stations, String noMatchText, String noDataText, Widget Function(Map) itemBuilder) { + if (stations == null || stations.isEmpty) { + return Center( + child: Padding( + padding: const EdgeInsets.all(16.0), + child: Text( + _isSyncingData ? 'Loading...' : (stations == null ? noDataText : noMatchText), + ), + ), + ); + } + + return SizedBox( + height: 250, + child: ListView.builder( + itemCount: stations.length, + itemBuilder: (context, index) { + final station = stations[index]; + return itemBuilder(station); + }, + ), + ); + } +} \ No newline at end of file diff --git a/lib/serial/serial_manager.dart b/lib/serial/serial_manager.dart new file mode 100644 index 0000000..024e62a --- /dev/null +++ b/lib/serial/serial_manager.dart @@ -0,0 +1,522 @@ +// lib/serial/serial_manager.dart +import 'dart:async'; +import 'dart:typed_data'; +import 'package:flutter/foundation.dart'; // For debugPrint +import 'package:usb_serial/usb_serial.dart'; + +import 'utils/converter.dart'; +import 'utils/crc_calculator.dart'; +import 'utils/parameter_helper.dart'; + +enum SerialConnectionState { disconnected, connecting, connected } + +/// Manages the connection and data communication with a USB Serial device. +class SerialManager { + UsbPort? _port; + // Using ValueNotifier to easily notify UI about connection state changes. + final ValueNotifier connectionState = ValueNotifier( + SerialConnectionState.disconnected, + ); + // ValueNotifier to expose the connected device's name. + final ValueNotifier connectedDeviceName = ValueNotifier(null); + + // --- ADDED: ValueNotifier for Sonde ID --- + // This will be updated when the Sonde ID is parsed from Level 0 data. + final ValueNotifier sondeId = ValueNotifier(null); + + // StreamController to broadcast parsed data readings to multiple listeners. + final StreamController> _dataStreamController = + StreamController>.broadcast(); + Stream> get dataStream => _dataStreamController.stream; + + // --- Protocol State Variables --- + int _runningCounter = 0; // Sequence number for commands + int _communicationLevel = 0; // Tracks the current step in the 3-level protocol + String? _parentAddress; // Address parsed from Level 0 response + String? _serialNumber; // Serial number parsed from Level 0 response (used internally for now) + List _parameterList = []; // List of parameters parsed from Level 1 response + + Timer? _dataRequestTimer; // Timer for periodic auto-reading + Timer? _responseTimeoutTimer; // Timer to detect if a response is not received in time + + // Buffer to accumulate incoming serial data, as messages may arrive in chunks. + final StringBuffer _responseBuffer = StringBuffer(); + // String to look for at the start of an expected response (e.g., '7E02 + seqNo') + String? _lookupString; + // Flag to prevent sending new commands before the current read cycle is complete. + bool _isReading = false; + + /// Fetches a list of available USB devices connected to the Android device. + Future> getAvailableDevices() async { + return UsbSerial.listDevices(); + } + + /// Connects to the specified USB device. + /// Handles opening the port, setting parameters, and starting the input stream listener. + Future connect(UsbDevice device) async { + // Prevent connecting if already connected + if (connectionState.value == SerialConnectionState.connected) { + debugPrint("SerialManager: Already connected. Disconnecting existing connection."); + // Now that disconnect() is async and returns Future, awaiting it is correct. + await disconnect(); // Disconnect cleanly before new connection + } + + try { + connectionState.value = SerialConnectionState.connecting; + connectedDeviceName.value = device.productName ?? 'Unknown Device'; // Update device name early + + _port = await device.create(); + if (_port == null) { + debugPrint("SerialManager: Failed to create USB serial port for device: ${device.productName}."); + // No need to call disconnect, as nothing was connected yet. + connectionState.value = SerialConnectionState.disconnected; // Reset state + connectedDeviceName.value = null; // Clear device name + throw Exception("Failed to create USB serial port."); + } + + bool openResult = await _port!.open(); + if (!openResult) { + debugPrint("SerialManager: Failed to open USB serial port for device: ${device.productName}."); + _port = null; // Clear port reference + connectionState.value = SerialConnectionState.disconnected; // Reset state + connectedDeviceName.value = null; // Clear device name + throw Exception("Failed to open USB serial port."); + } + + await _port!.setDTR(true); + await _port!.setRTS(true); + + _port!.setPortParameters( + 115200, // Baud Rate + UsbPort.DATABITS_8, + UsbPort.STOPBITS_1, + UsbPort.PARITY_NONE, + ); + + // Listen for incoming data from the USB serial port. + _port!.inputStream!.listen( + _onDataReceived, + onError: (e) { + debugPrint("SerialManager: Stream Error: $e"); + // Since disconnect() is now async, calling it directly here without await is fine + // because we don't need to wait for it within the error handler. + disconnect(); + }, + onDone: () { + debugPrint("SerialManager: Stream Closed"); + // Same here, no need to await within onDone. + disconnect(); + }, + ); + + connectionState.value = SerialConnectionState.connected; + debugPrint("SerialManager: Connected to ${connectedDeviceName.value}"); + + // Start the live reading cycle immediately after connecting + startLiveReading(); + + } catch (e) { + debugPrint("SerialManager: Connection Error: $e"); + // Ensure all states are reset on error during connection + connectionState.value = SerialConnectionState.disconnected; + connectedDeviceName.value = null; + sondeId.value = null; // Clear Sonde ID + _port = null; + _responseBuffer.clear(); + _isReading = false; + _cancelTimeout(); + rethrow; // Re-throw the exception for UI handling + } + } + + /// Disconnects from the currently connected USB device. + /// Cleans up resources: cancels timers, closes port, resets state. + // MODIFIED: Changed from void to Future and added async. + Future disconnect() async { + if (connectionState.value != SerialConnectionState.disconnected) { + debugPrint("SerialManager: Disconnecting..."); + stopAutoReading(); // Stop any active auto-reading timer and timeout + await _port?.close(); // Now correctly awaiting the close operation + _port = null; // Clear port reference + connectedDeviceName.value = null; // Clear device name + sondeId.value = null; // Clear Sonde ID on disconnect + connectionState.value = SerialConnectionState.disconnected; // Update connection state + _responseBuffer.clear(); // Clear any buffered data + _isReading = false; // Reset reading flag + _communicationLevel = 0; // Reset communication level + _parentAddress = null; + _serialNumber = null; + _parameterList.clear(); + debugPrint("SerialManager: Disconnected."); + } + } + + /// Starts a periodic timer to automatically request data from the device. + void startAutoReading({Duration interval = const Duration(seconds: 5)}) { + stopAutoReading(); // Stop any existing auto-reading timer first + if (connectionState.value == SerialConnectionState.connected) { + //startLiveReading(); // Initiate the first reading immediately + // Set up a periodic timer to call startLiveReading at the specified interval. + _dataRequestTimer = Timer.periodic(interval, (_) => startLiveReading()); + debugPrint("SerialManager: Auto reading started with interval ${interval.inSeconds}s."); + } else { + debugPrint("SerialManager: Cannot start auto reading, not connected."); + } + } + + /// Stops the automatic data refresh timer. + void stopAutoReading() { + _dataRequestTimer?.cancel(); // Cancel the periodic timer + _dataRequestTimer = null; // Clear timer reference + _cancelTimeout(); // Also cancel any pending response timeout + _isReading = false; // Ensure the reading flag is reset + debugPrint("SerialManager: Auto reading stopped."); + } + + /// Initiates a full 3-step data reading sequence (Level 0, Level 1, Level 2). + /// This function prevents overlapping read cycles using the `_isReading` flag. + void startLiveReading() { + // Only proceed if connected and not already in a reading cycle + if (connectionState.value != SerialConnectionState.connected || _isReading) { + debugPrint("SerialManager: Cannot start live reading. Connected: ${connectionState.value == SerialConnectionState.connected}, Is Reading: $_isReading"); + return; + } + _isReading = true; // Mark as busy to prevent re-entry + debugPrint("--- SerialManager: Starting New Read Cycle ---"); + _communicationLevel = 0; // Start at communication level 0 + _responseBuffer.clear(); // Clear the buffer for a fresh start + _lookupString = null; // Reset lookup string until a new command is sent + _sendCommand(0); // Send the Level 0 command + } + + /// Callback function for the serial port's input stream. + /// Appends incoming data chunks to a buffer and attempts to process it. + void _onDataReceived(Uint8List data) { + if (data.isEmpty) return; + String responseHex = Converter.byteArrayToHexString(data); + _responseBuffer.write(responseHex); // Append to the shared buffer + // debugPrint("SerialManager: Received Chunk (Buffer: ${_responseBuffer.length} chars): $responseHex"); // Too verbose normally + _processBuffer(); // Attempt to process the buffer for complete messages + } + + /// Attempts to extract and process complete messages from the `_responseBuffer`. + /// Handles partial messages, garbage data, and CRC validation. + void _processBuffer() { + String buffer = _responseBuffer.toString(); + // Cannot process without an expected lookup string (set after sending a command) + if (_lookupString == null) { + // debugPrint("SerialManager: _processBuffer: No lookup string set. Waiting for command."); // Too verbose + return; + } + + int startIndex = buffer.indexOf(_lookupString!); // Find the start of the expected message + if (startIndex == -1) { + // debugPrint("SerialManager: _processBuffer: Lookup string not found in buffer. Waiting for more data."); // Too verbose + return; // Expected start of message not found, wait for more data + } + + // Discard any data before the expected start of the message (garbage or old data) + if (startIndex > 0) { + debugPrint("SerialManager: _processBuffer: Discarding ${startIndex} garbage characters from buffer."); + buffer = buffer.substring(startIndex); // Remove leading garbage + _responseBuffer.clear(); // Clear and rewrite the buffer to contain only valid data from startIndex + _responseBuffer.write(buffer); + } + + // A minimum of 34 hex characters are needed to parse the dataBlockLength (offset 30, length 4) + if (buffer.length < 34) { + // debugPrint("SerialManager: _processBuffer: Buffer too short for header (${buffer.length} < 34). Waiting for more data."); // Too verbose + return; // Not enough data to even read the length field + } + + try { + // Parse the data block length from the message header + int dataBlockLength = int.parse(buffer.substring(30, 34), radix: 16); + // Calculate the total expected length of the complete message (Header + Data Block + CRC) + int totalMessageLength = 34 + (dataBlockLength * 2) + 4; // 34 chars for header, dataBlockLength bytes * 2 chars/byte, 4 chars for CRC + + // If the buffer contains a complete message + if (buffer.length >= totalMessageLength) { + _cancelTimeout(); // Message received, cancel the response timeout timer + String completeResponse = buffer.substring(0, totalMessageLength); + + // --- CRC Validation --- + Uint8List responseBytes = Converter.hexStringToByteArray(completeResponse); + // CRC is calculated over the entire message *excluding* the final 2 CRC bytes themselves + Uint8List dataBytesForCrc = responseBytes.sublist(0, responseBytes.length - 2); + String calculatedCrc = Crc16Ccitt.computeCrc16Ccitt(dataBytesForCrc); + String receivedCrc = completeResponse.substring(completeResponse.length - 4); // Last 4 hex chars are the CRC + + if (calculatedCrc.toUpperCase() != receivedCrc.toUpperCase()) { + debugPrint("SerialManager: CRC Mismatch! Calculated: $calculatedCrc, Received: $receivedCrc for response: $completeResponse. Discarding message."); + // Discard the invalid message from the buffer and attempt to process the rest + _responseBuffer.clear(); + _responseBuffer.write(buffer.substring(totalMessageLength)); + _isReading = false; // Consider ending the cycle or signaling an error that might require a retry. + if(_responseBuffer.isNotEmpty) _processBuffer(); // Check if more messages are in the buffer + return; + } + + // Message is valid. Remove it from the buffer. + _responseBuffer.clear(); + _responseBuffer.write(buffer.substring(totalMessageLength)); + + debugPrint("SerialManager: Processing Full Valid Response (Lvl: $_communicationLevel): $completeResponse"); + _handleResponse(completeResponse); // Route the complete message for parsing + + // Recursively call _processBuffer in case multiple messages arrived in one chunk, + // or a new message started immediately after the processed one. + if(_responseBuffer.isNotEmpty) _processBuffer(); + } + } catch (e) { + debugPrint("SerialManager: Buffer processing error: $e. Resetting cycle and clearing buffer."); + _responseBuffer.clear(); + _isReading = false; // End this cycle on error + } + } + + /// Dispatches the complete and validated response string to the appropriate handler + /// based on the current communication level. + void _handleResponse(String response) { + switch (_communicationLevel) { + case 0: + _handleResponseLevel0(response); + break; + case 1: + _handleResponseLevel1(response); + break; + case 2: + _handleResponseLevel2(response); + break; + default: + debugPrint("SerialManager: Unknown communication level: $_communicationLevel for response: $response"); + _isReading = false; // Ensure reading lock is released if level is invalid + } + } + + /// Handles and parses the response for communication Level 0. + /// Extracts parent address and serial number. + void _handleResponseLevel0(String responseHex) { + try { + // Minimum length check to ensure substrings are safe + // 34 (header) + 40 (data block for L0) + 4 (CRC) = 78 expected min length for full response + // It looks like your previous code assumed data block starts at 34 and contains 4 bytes (8 chars) + // for parent address at offset 86, and 9 bytes (18 chars) for serial at 68. + // Let's refine based on typical structure. + // If `responseHex.substring(68, 86)` and `responseHex.substring(86, 94)` are correct from your sensor, + // then total length for serial number (18) + parent address (8) + other header/footer must be respected. + // 18 chars for serial, 8 chars for parent. Total 26 chars / 2 = 13 bytes data length. + // So, total expected response length = 34 + (13*2) + 4 = 34 + 26 + 4 = 64. + // If your sensor gives 94 chars: 34 (header) + (94-34-4=56 data chars) + 4 (CRC) -> 28 bytes data. + // This means offsets 68-86 and 86-94 might be within a larger data block. + // This response example is for a specific sensor protocol. Adjust offsets if yours differs. + if (responseHex.length < 94) { // Assuming 94 is the correct full length including all L0 data. + debugPrint("SerialManager: Error: Level 0 response too short. Length: ${responseHex.length} (expected at least 94)"); + _isReading = false; + return; + } + + // Re-evaluate based on your specific protocol: + // The offsets 68-86 and 86-94 suggest a specific structure within the *data block* of the response. + // The `dataBlockLength` field (at 30-34) specifies the length of the data portion *after* the header. + // Let's assume these substrings are correct as per your sensor's documentation: + _parentAddress = responseHex.substring(86, 94); // Extract parent address (8 hex chars = 4 bytes) + _serialNumber = Converter.hexToAscii(responseHex.substring(68, 86)); // Extract serial number (18 hex chars = 9 bytes, then convert to ASCII) + + debugPrint("SerialManager: Parsed L0 -> Address: $_parentAddress, Serial: $_serialNumber"); + + // --- Update sondeId ValueNotifier here --- + if (_serialNumber != null && _serialNumber!.isNotEmpty) { + sondeId.value = _serialNumber; + debugPrint("SerialManager: Updated Sonde ID: ${sondeId.value}"); + } else { + sondeId.value = "N/A"; // Or handle empty/null serial number appropriately + } + + + if (_parentAddress != "00000000") { // Check for valid parent address + _communicationLevel = 1; // Advance to Level 1 + // Delay before sending next command to allow device time to process + Future.delayed(const Duration(milliseconds: 200), () => _sendCommand(1)); + } else { + debugPrint("SerialManager: Parent address is 00000000, not proceeding to Level 1. Ending cycle."); + _isReading = false; // End the cycle if parent address is invalid + } + } catch (e) { + debugPrint("SerialManager: Error parsing L0: $e"); + _isReading = false; // End this cycle on error + } + } + + /// Handles and parses the response for communication Level 1. + /// Extracts the list of available parameters. + void _handleResponseLevel1(String responseHex) { + try { + if (responseHex.length < 34) { + debugPrint("SerialManager: Error: Level 1 response too short for dataBlockLength. Length: ${responseHex.length}"); + _isReading = false; + return; + } + int dataBlockLength = int.parse(responseHex.substring(30, 34), radix: 16); + int expectedParamsBlockEnd = 34 + (dataBlockLength * 2); + + if (expectedParamsBlockEnd > responseHex.length) { + debugPrint("SerialManager: Error: Level 1 parameters block calculated end index ($expectedParamsBlockEnd) exceeds received data length (${responseHex.length}). dataBlockLength was: $dataBlockLength (0x${dataBlockLength.toRadixString(16).padLeft(4, '0')})"); + _isReading = false; + return; + } + + String paramsBlock = responseHex.substring(34, expectedParamsBlockEnd); + _parameterList.clear(); + + // Each parameter entry is 6 hex characters (3 bytes). + // Parameter code (2 bytes) is typically at index 2-5 within each 6-char block. + // Example: '005A00' -> code '5A00' + for (int i = 0; i <= paramsBlock.length - 6; i += 6) { + String parameterCode = paramsBlock.substring(i + 2, i + 6); + _parameterList.add(ParameterHelper.getDescription(parameterCode)); + } + debugPrint("SerialManager: Parsed L1 -> Parameters: $_parameterList"); + _communicationLevel = 2; // Advance to Level 2 + Future.delayed(const Duration(milliseconds: 200), () => _sendCommand(2)); + } catch (e) { + debugPrint("SerialManager: Error parsing L1: $e"); + _isReading = false; + } + } + + /// Handles and parses the response for communication Level 2. + /// Extracts the actual values for the previously identified parameters. + void _handleResponseLevel2(String responseHex) { + try { + if (responseHex.length < 34) { + debugPrint("SerialManager: Error: Level 2 response too short for dataBlockLength. Length: ${responseHex.length}"); + _isReading = false; + return; + } + int dataBlockLength = int.parse(responseHex.substring(30, 34), radix: 16); + int expectedValuesBlockEnd = 34 + (dataBlockLength * 2); + + if (expectedValuesBlockEnd > responseHex.length) { + debugPrint("SerialManager: Error: Level 2 values block calculated end index ($expectedValuesBlockEnd) exceeds received data length (${responseHex.length}). dataBlockLength was: $dataBlockLength (0x${dataBlockLength.toRadixString(16).padLeft(4, '0')})"); + _isReading = false; + return; + } + + String valuesBlock = responseHex.substring(34, expectedValuesBlockEnd); + List values = []; + + // Each value is 8 hex characters (4 bytes) representing a float + for (int i = 0; i <= valuesBlock.length - 8; i += 8) { + String valueHex = valuesBlock.substring(i, i + 8); + try { + values.add(Converter.hexToFloat(valueHex)); + } catch (e) { + debugPrint("SerialManager: Error converting hex '$valueHex' to float in Level 2: $e"); + values.add(double.nan); // Add NaN or a default error value if conversion fails + } + } + + // Ensure the number of parsed parameters matches the number of parsed values. + if (_parameterList.length == values.length) { + Map finalReadings = Map.fromIterables(_parameterList, values); + _dataStreamController.add(finalReadings); // Broadcast the final parsed readings + debugPrint("SerialManager: Final Parsed Readings: $finalReadings"); + } else { + debugPrint("SerialManager: L2 Data Mismatch: ${values.length} values for ${_parameterList.length} parameters. Parameter list: $_parameterList, Values: $values"); + } + } catch (e) { + debugPrint("SerialManager: Error parsing L2: $e"); + } finally { + _isReading = false; // Mark the read cycle as complete, allowing the next one to start + debugPrint("--- SerialManager: Read Cycle Complete ---"); + } + } + + /// Constructs and sends the appropriate command based on the current communication level. + void _sendCommand(int level) async { + // Generate a sequence number (0-255), padded to 2 hex characters. + String seqNo = (_runningCounter++ & 255).toRadixString(16).padLeft(2, '0').toUpperCase(); + + // Set the lookup string for the expected response. This is the start of the message + // that the `_processBuffer` will look for to identify a complete response. + _lookupString = '7E02${seqNo}'; // Assuming responses start with 7E02 and the same sequence number. + + String commandBody; + switch (level) { + case 0: + commandBody = '0000000002000000200000010000'; // Command for Level 0 + break; + case 1: + if (_parentAddress == null) { + debugPrint("SerialManager: Error: _parentAddress is null for Level 1 command. Cannot send. Ending cycle."); + _isReading = false; // Release the reading lock + // Call disconnect (now async void) without await here as we don't need to block + disconnect(); // Disconnect due to invalid state + return; + } + commandBody = '${_parentAddress}02000000200000180000'; // Command for Level 1, includes parent address + break; + case 2: + if (_parentAddress == null) { + debugPrint("SerialManager: Error: _parentAddress is null for Level 2 command. Cannot send. Ending cycle."); + _isReading = false; // Release the reading lock + // Call disconnect (now async void) without await here as we don't need to block + disconnect(); // Disconnect due to invalid state + return; + } + commandBody = '${_parentAddress}02000000200000190000'; // Command for Level 2, includes parent address + break; + default: + debugPrint("SerialManager: Attempted to send command for unknown level: $level. Resetting cycle."); + _isReading = false; + return; + } + + String commandHex = '7E02$seqNo$commandBody'; // Full command without CRC + Uint8List commandBytes = Converter.hexStringToByteArray(commandHex); // Convert command hex to bytes + String crc = Crc16Ccitt.computeCrc16Ccitt(commandBytes); // Compute CRC for the command bytes + String finalPacket = commandHex + crc; // Append CRC to the command + + try { + await _port?.write(Converter.hexStringToByteArray(finalPacket)); // Send the full packet over serial + debugPrint("SerialManager: Sent (Lvl: $level): $finalPacket (Expecting lookup: $_lookupString)"); + + // Set a timeout. If no valid response is received within this duration, + // it's assumed the command failed, and the reading cycle is reset. + _cancelTimeout(); // Cancel any previous timeout + _responseTimeoutTimer = Timer(const Duration(seconds: 3), () { + debugPrint("SerialManager: Response timeout for Level $level. Unlocking for next cycle."); + _isReading = false; // Allow the next read cycle to start + _responseBuffer.clear(); // Clear buffer on timeout to avoid stale or partial data confusing future reads + // Optionally, you might want to trigger a retry for the current level here + // or just let the auto-reading timer trigger the next full cycle. + }); + } catch (e) { + debugPrint("SerialManager: Error sending command (Lvl: $level): $e. Disconnecting."); + _isReading = false; // Release the reading lock on send error + // Call disconnect (now async void) without await here as we don't need to block + disconnect(); // Disconnect if sending fails + } + } + + /// Cancels the current response timeout timer if it's active. + void _cancelTimeout() { + _responseTimeoutTimer?.cancel(); + _responseTimeoutTimer = null; + } + + /// Cleans up all resources held by the SerialManager when it's no longer needed. + void dispose() { + debugPrint("SerialManager: Disposing."); + // No need to await disconnect here, as dispose shouldn't necessarily block + // on a full disconnection completion before proceeding with other disposals. + // However, if you *must* ensure full disconnection before other disposals, + // you could add `await disconnect();`. For now, a fire-and-forget call is fine. + disconnect(); // Ensure full disconnection and cleanup + _dataStreamController.close(); // Close the data stream controller + connectionState.dispose(); // Dispose the ValueNotifier + connectedDeviceName.dispose(); // Dispose the ValueNotifier + sondeId.dispose(); // Dispose the Sonde ID ValueNotifier + } +} \ No newline at end of file diff --git a/lib/serial/utils/converter.dart b/lib/serial/utils/converter.dart new file mode 100644 index 0000000..bfce790 --- /dev/null +++ b/lib/serial/utils/converter.dart @@ -0,0 +1,34 @@ +// utils/converter.dart +import 'dart:typed_data'; + +class Converter { + static Uint8List hexStringToByteArray(String hex) { + hex = hex.replaceAll(" ", "").toUpperCase(); + if (hex.length % 2 != 0) hex = '0' + hex; + return Uint8List.fromList( + List.generate(hex.length ~/ 2, (i) => int.parse(hex.substring(i * 2, i * 2 + 2), radix: 16)), + ); + } + + static String byteArrayToHexString(Uint8List bytes) { + return bytes.map((byte) => byte.toRadixString(16).padLeft(2, '0')).join('').toUpperCase(); + } + + static double hexToFloat(String hexString) { + if (hexString.length != 8) throw ArgumentError("Hex string must be 8 characters for a 32-bit float."); + final int intValue = int.parse(hexString, radix: 16); + final ByteData byteData = ByteData(4); + byteData.setUint32(0, intValue, Endian.big); + return byteData.getFloat32(0, Endian.big); + } + + static String hexToAscii(String hexString) { + // Matches Converter.hexToAscii from Converter.java + StringBuffer output = StringBuffer(); + for (int i = 0; i < hexString.length; i += 2) { + String str = hexString.substring(i, i + 2); + output.write(String.fromCharCode(int.parse(str, radix: 16))); + } + return output.toString(); + } +} \ No newline at end of file diff --git a/lib/serial/utils/crc_calculator.dart b/lib/serial/utils/crc_calculator.dart new file mode 100644 index 0000000..85dfe9a --- /dev/null +++ b/lib/serial/utils/crc_calculator.dart @@ -0,0 +1,19 @@ +// utils/crc_calculator.dart +import 'dart:typed_data'; + +class Crc16Ccitt { + static String computeCrc16Ccitt(Uint8List bytes) { + int crc = 0xFFFF; // Initial value + int polynomial = 0x1021; // Matches Java's 0x1021 + for (int b in bytes) { + for (int i = 0; i < 8; i++) { + bool bit = ((b >> (7 - i) & 1) == 1); + bool c15 = ((crc >> 15 & 1) == 1); + crc <<= 1; + if (c15 ^ bit) crc ^= polynomial; + } + } + crc &= 0xffff; + return crc.toRadixString(16).padLeft(4, '0').toUpperCase(); + } +} \ No newline at end of file diff --git a/lib/serial/utils/parameter_helper.dart b/lib/serial/utils/parameter_helper.dart new file mode 100644 index 0000000..d906aaf --- /dev/null +++ b/lib/serial/utils/parameter_helper.dart @@ -0,0 +1,185 @@ +/// A utility class that translates YSI instrument hex codes into human-readable descriptions. +/// This replaces the `ParameterHelper.java` class using a more efficient Map data structure. +class ParameterHelper { + /// A private, static, and constant map for maximum performance. + /// The map is created only once when the app starts. + static const Map _parameterMap = { + '000100010001': 'Combo Probe for PH and ORP, original HW', + '000100010002': 'PH only, Original HW', + '000100010003': 'ammonium', + '000100010004': 'Potasium', + '000100010005': 'Nitrate', + '000100010006': 'Chloride', + '000100010007': 'Combo Probe for PH and ORP, hybrid HW for PH drift', + '000100010008': 'PH only, hybrid HW for PH drift', + '000100010009': 'Combo Probe for PH and ORP, VREF offset HW for PH drift', + '00010001000A': 'PH only, VREF offset HW for PH drift', + '00010001000B': 'Combo Probe for PH and ORP, Floating Reference is at 1.5V', + '00010001000C': 'PH only, Floating Reference is at 1.5V', + '000100020001': 'Probe for ODO', + '000100030001': 'Combo Probe for Conductivity and Temperature', + '000100030002': 'Combo Probe for Wet Cal Conductivity and Temperature', + '000100030003': 'Combo Probe for High accuracy Conductivity and Temperature', + '000100030004': 'Combo Probe for Conductivity and Temperature, Wiped', + '00010003FFFF': 'Mfg tester for Conductivity for CT probe', + '000100040001': 'Probe for Turbidity', + '000100050001': 'EXO1 - 4 port Sonde', + '000100050002': 'EXO2 - 6 port Sonde', + '000100050003': 'EXO3 - 8 port Sonde', + '000100060001': 'Combo of Chlorophyll and BGA-PC', + '000100060002': 'Combo of Chlorophyll and BGA-PE', + '000100070001': 'depth probe, Non-Vented, Standard 0-250m', + '000100070002': 'depth probe, Non-Vented, Medium 0-100m', + '000100070003': 'depth probe, Non-Vented, Shallow 0-10m', + '000100070004': 'depth probe, Vented, 0-10m', + '000100080001': 'Wiper probe', + '000100090001': 'Signal Output Adapter - DCP', + '0001000A0001': 'Original Handheld (used primarily during manufacturing Testing)', + '0001000A0002': 'New Handheld (ProDSS Style) with GPS', + '0001000A0003': 'New Handheld (ProDSS Style) w/out GPS', + '0001000B0001': 'fDOM', + '0001000C0001': 'metal', + '0001000E0001': 'EXO Test Board (reserved for R&D)', + '0001000E0002': 'High Accuracy CT Test board', + '0001000E0003': 'Phloptode', + '0001000F0001': 'Deep UV A Channel T Channel wastewater sensor', + '0001000F0002': 'Deep UV NOx Nitrate+Nitrite sensor', + '000100100001': 'Signal Output Adapter - DCP Gen 2', + '000100100002': 'Signal Output Adapter - DCP Gen 2 - Modbus', + '000100110001': 'Used on both EXO and DSS platforms.', + '000200010001': 'Variable Flourometer Sensor', + '000300010001': 'Combo ODO/Conductivity/Temperature', + '0000': 'Common Message', + '0001': 'Sonde', + '0002': 'PH', + '0003': 'PH: PH units', + '0004': 'PH: mV', + '0005': 'ORP', + '0006': 'ORP: mV', + '0007': 'ORP: mV UnAdjusted', + '0008': 'Optical Dissolved Oxygen', + '0009': 'Optical Dissolved Oxygen: Compensated % Saturation', + '000A': 'Optical Dissolved Oxygen: Compensated mg/L', + '000B': 'Internal uP Temp', + '000C': 'Internal uP Temp: Degrees Celcius', + '000D': 'External Temp', + '000E': 'External Temp: Degrees Celcius', + '000F': 'Barometer', + '0010': 'Barometer: mmHg', + '0011': 'Conductivity', + '0012': 'Conductivity: us/cm', + '0013': 'Conductivity: Salinity', + '0014': 'Turbidity', + '0015': 'Turbidity: FNU', + '0016': 'Turbidity: TSS', + '0017': 'Turbidity: RAW', + '0018': 'Conductivity: Specific Conductivity', + '0019': 'Chlorophyll', + '001A': 'Chlorophyll: ug/L', + '001B': 'BGA-PE', + '001C': 'BGA-PE: cells/mL - replaced with ug/L (0x003B)', + '001D': 'BGA-PC', + '001E': 'BGA-PC: cells/mL - replaced with ug/L (0x003A)', + '001F': 'Chlorophyll: RFU', + '0020': 'BGA-PE: RFU', + '0021': 'BGA-PC: RFU', + '0022': 'Pressure:', + '0023': 'Pressure: psi a', + '0024': 'Pressure: depth', + '0025': 'Etime', + '0026': 'Wiper:', + '0027': 'Wiper: Position Volts', + '0028': 'Sonde: Date and Time', + '0029': 'Sonde: Battery Voltage', + '002A': 'Sonde: External Voltage', + '002B': 'Sonde: Internal Pressure Voltage', + '002C': 'fDOM:', + '002D': 'fDOM: RAW', + '002E': 'fDOM: RFU', + '002F': 'Chlorophyll: RAW', + '0030': 'BGA-PE: RAW', + '0031': 'BGA-PC: RAW', + '0032': 'Wiper: Current(mA)', + '0033': 'Wiper: Profile Time(s)', + '0034': 'Pressure: RAW', + '0035': 'ODO: RAW %Sat', + '0036': 'ODO: RAW mg/L', + '0037': 'fDOM: QSU', + '0038': 'Wiper: Peak Current (mA)', + '0039': 'Wiper: Parking Retries', + '003A': 'BGA-PC: ug/L', + '003B': 'BGA-PE: ug/L', + '003C': 'GPS Latitude', + '003D': 'GPS Longitude', + '003E': 'Conductivity: RAW us/cm', + '003F': 'Pressure: psi g', + '0040': 'Reference Temp', + '0041': 'ODO: % EU', + '0042': 'Ammonium', + '0043': 'Ammonium (NH4+) mV', + '0044': 'Ammonium (NH4+) mg/L', + '0048': 'Nitrate', + '0049': 'Nitrate (NO-3) mV', + '004A': 'Nitrate (NO-3) mg/L', + '004B': 'Chloride', + '004C': 'Chloride (Cl-) mV', + '004D': 'Chloride (Cl-) mg/L', + '004E': 'Ammonia (NH3)', + '004F': 'ODO: % Local', + '0050': 'Conductivity: nLF us/cm', + '0051': 'Sonde: Sensor Power mW', + '0052': 'Sonde: RTC Battery Voltage', + '0053': 'Variable Flourescent (VF) meter', + '0054': 'VF: Units TBD', + '0055': 'Conductivity:TDS mg/L', + '0056': 'Pressure: vert pos', + '0057': 'GPS Date', + '0058': 'GPS Time', + '0059': 'GPS Altitude', + '005A': 'GPS Speed Over Ground (SOG)', + '005B': 'GPS Course Over Ground (COG)', + '005C': 'Barometer Temperature', + '005D': 'Conductivity Resistance (ohms)', + '005E': 'ODO ppm', + '005F': 'Turbidity NTU', + '0060': 'Temprorary Calibration Value', + '0061': 'Sigma', + '0062': 'Sigma-T', + '0063': 'Deep UV Wastewater: Channel A', + '0064': 'Deep UV Wastewater: Channel A Raw', + '0065': 'Deep UV Wastewater: Channel A RFU', + '0066': 'Deep UV Wastewater: Channel A Concentration', + '0067': 'Deep UV Wastewater: Channel T', + '0068': 'Deep UV Wastewater: Channel T Raw', + '0069': 'Deep UV Wastewater: Channel T RFU', + '006A': 'Deep UV Wastewater: Channel T Concentration', + '006B': 'Deep UV Wastewater: Ratio', + '006C': 'Deep UV NOx Ch238', + '006D': 'Deep UV NOx Ch238 Raw', + '006E': 'Deep UV NOx Ch238Ref', + '006F': 'Deep UV NOx Ch238Ref Raw', + '0070': 'Deep UV NOx Ch238 Absorbance', + '0071': 'Deep UV NOx Ch238 Absorbance Turb Corrected', + '0072': 'Deep UV NOx Ch275', + '0073': 'Deep UV NOx Ch275 Raw', + '0074': 'Deep UV NOx Ch275Ref', + '0075': 'Deep UV NOx Ch275Ref Raw', + '0076': 'Deep UV NOx Ch275 Absorbance', + '0077': 'Deep UV NOx Ch275 Absorbance Turb Corrected', + '0078': 'Deep UV NOx', + '0079': 'Deep UV NOx RAW', + '007A': 'Deep UV NOx mg/L', + '007B': 'fDOM ppb', + '9900': 'SOA/DCP', + 'FF00': 'Handheld', + 'FF01': 'Hipster', + 'FF11': 'Conductivity Manufacturing Tester', + }; + + /// Takes a hex code string and returns its human-readable description. + /// If the code is not found, it returns 'UNKNOWN'. + static String getDescription(String hexCode) { + // The '??' operator provides a default value if the key is not in the map. + return _parameterMap[hexCode.toUpperCase()] ?? 'UNKNOWN'; + } +} \ No newline at end of file diff --git a/lib/serial/widget/serial_port_list_dialog.dart b/lib/serial/widget/serial_port_list_dialog.dart new file mode 100644 index 0000000..1ae08d2 --- /dev/null +++ b/lib/serial/widget/serial_port_list_dialog.dart @@ -0,0 +1,27 @@ +import 'package:flutter/material.dart'; +import 'package:usb_serial/usb_serial.dart'; + +Future showSerialPortListDialog({ + required BuildContext context, + required List devices, + String title = 'Select a Serial Device', +}) { + return showDialog( + context: context, + builder: (BuildContext context) { + return SimpleDialog( + title: Text(title), + children: devices.map((device) { + return SimpleDialogOption( + onPressed: () => Navigator.of(context).pop(device), + child: ListTile( + leading: Icon(Icons.usb), + title: Text(device.productName ?? 'Unknown Device'), + subtitle: Text('VID: ${device.vid}, PID: ${device.pid}'), + ), + ); + }).toList(), + ); + }, + ); +} \ No newline at end of file diff --git a/lib/services/air_api_service.dart b/lib/services/air_api_service.dart new file mode 100644 index 0000000..ef8d49e --- /dev/null +++ b/lib/services/air_api_service.dart @@ -0,0 +1,13 @@ +// lib/services/air_api_service.dart + +import 'package:environment_monitoring_app/services/base_api_service.dart'; + +class AirApiService { + final BaseApiService _baseService = BaseApiService(); + +// You can add methods for air-related API calls here in the future +// For example: +// Future> getAirQualityData() { +// return _baseService.get('air/dashboard'); +// } +} diff --git a/lib/services/api_service.dart b/lib/services/api_service.dart new file mode 100644 index 0000000..9f13faf --- /dev/null +++ b/lib/services/api_service.dart @@ -0,0 +1,346 @@ +// lib/services/api_service.dart + +import 'dart:io'; +import 'dart:convert'; +import 'package:flutter/foundation.dart'; +import 'package:http/http.dart' as http; +import 'package:path/path.dart' as p; +import 'package:sqflite/sqflite.dart'; +import 'package:path_provider/path_provider.dart'; + +import 'package:environment_monitoring_app/services/base_api_service.dart'; + +// ======================================================================= +// Part 1: Unified API Service +// ======================================================================= + +/// A unified service that consolidates all API interactions for the application. +/// It is organized by feature (e.g., marine, river) for clarity and provides +/// a central point for data synchronization. +class ApiService { + final BaseApiService _baseService = BaseApiService(); + final DatabaseHelper _dbHelper = DatabaseHelper(); + + late final MarineApiService marine; + late final RiverApiService river; + + static const String imageBaseUrl = 'https://dev14.pstw.com.my/'; + + ApiService() { + marine = MarineApiService(_baseService); + river = RiverApiService(_baseService); + } + + // --- Core API Methods --- + + Future> login(String email, String password) { + return _baseService.post('auth/login', {'email': email, 'password': password}); + } + + Future> register({ + required String username, + String? firstName, + String? lastName, + required String email, + required String password, + String? phoneNumber, + int? departmentId, + int? companyId, + int? positionId, + }) { + final Map body = { + 'username': username, + 'email': email, + 'password': password, + 'first_name': firstName ?? '', + 'last_name': lastName ?? '', + 'phone_number': phoneNumber ?? '', + 'department_id': departmentId, + 'company_id': companyId, + 'position_id': positionId, + }; + body.removeWhere((key, value) => value == null); + return _baseService.post('auth/register', body); + } + + Future> post(String endpoint, Map data) { + return _baseService.post(endpoint, data); + } + + Future> getProfile() => _baseService.get('profile'); + Future> getAllUsers() => _baseService.get('users'); + + Future> getAllDepartments() => _baseService.get('departments'); + Future> getAllCompanies() => _baseService.get('companies'); + Future> getAllPositions() => _baseService.get('positions'); + + // --- ADDED: Method to send a queued Telegram alert to your server --- + Future> sendTelegramAlert({ + required String chatId, + required String message, + }) { + return _baseService.post('marine/telegram-alert', { + 'chat_id': chatId, + 'message': message, + }); + } + // --- END --- + + Future downloadProfilePicture(String imageUrl, String localPath) async { + try { + final response = await http.get(Uri.parse(imageUrl)); + if (response.statusCode == 200) { + final File file = File(localPath); + await file.parent.create(recursive: true); + await file.writeAsBytes(response.bodyBytes); + return file; + } + } catch (e) { + debugPrint('Error downloading profile picture: $e'); + } + return null; + } + + Future> uploadProfilePicture(File imageFile) { + return _baseService.postMultipart( + endpoint: 'profile/upload-picture', + fields: {}, + files: {'profile_picture': imageFile} + ); + } + + /// --- A dedicated method to refresh only the profile --- + Future> refreshProfile() async { + debugPrint('ApiService: Refreshing profile data from server...'); + final result = await getProfile(); + if (result['success'] == true && result['data'] != null) { + await _dbHelper.saveProfile(result['data']); + debugPrint('ApiService: Profile data refreshed and saved to local DB.'); + } + return result; + } + + + /// Orchestrates a full data sync from the server to the local database. + Future> syncAllData() async { + debugPrint('ApiService: Starting full data sync from server...'); + try { + final results = await Future.wait([ + getProfile(), + getAllUsers(), + marine.getTarballStations(), + marine.getManualStations(), + marine.getTarballClassifications(), + river.getManualStations(), + river.getTriennialStations(), + getAllDepartments(), + getAllCompanies(), + getAllPositions(), + ]); + + final Map syncedData = { + 'profile': results[0]['success'] == true ? results[0]['data'] : null, + 'allUsers': results[1]['success'] == true ? results[1]['data'] : null, + 'tarballStations': results[2]['success'] == true ? results[2]['data'] : null, + 'manualStations': results[3]['success'] == true ? results[3]['data'] : null, + 'tarballClassifications': results[4]['success'] == true ? results[4]['data'] : null, + 'riverManualStations': results[5]['success'] == true ? results[5]['data'] : null, + 'riverTriennialStations': results[6]['success'] == true ? results[6]['data'] : null, + 'departments': results[7]['success'] == true ? results[7]['data'] : null, + 'companies': results[8]['success'] == true ? results[8]['data'] : null, + 'positions': results[9]['success'] == true ? results[9]['data'] : null, + }; + + if (syncedData['profile'] != null) await _dbHelper.saveProfile(syncedData['profile']); + if (syncedData['allUsers'] != null) await _dbHelper.saveUsers(List>.from(syncedData['allUsers'])); + if (syncedData['tarballStations'] != null) await _dbHelper.saveTarballStations(List>.from(syncedData['tarballStations'])); + if (syncedData['manualStations'] != null) await _dbHelper.saveManualStations(List>.from(syncedData['manualStations'])); + if (syncedData['tarballClassifications'] != null) await _dbHelper.saveTarballClassifications(List>.from(syncedData['tarballClassifications'])); + if (syncedData['riverManualStations'] != null) await _dbHelper.saveRiverManualStations(List>.from(syncedData['riverManualStations'])); + if (syncedData['riverTriennialStations'] != null) await _dbHelper.saveRiverTriennialStations(List>.from(syncedData['riverTriennialStations'])); + if (syncedData['departments'] != null) await _dbHelper.saveDepartments(List>.from(syncedData['departments'])); + if (syncedData['companies'] != null) await _dbHelper.saveCompanies(List>.from(syncedData['companies'])); + if (syncedData['positions'] != null) await _dbHelper.savePositions(List>.from(syncedData['positions'])); + + debugPrint('ApiService: Sync complete. Data saved to local DB.'); + return {'success': true, 'data': syncedData}; + + } catch (e) { + debugPrint('ApiService: Full data sync failed: $e'); + return {'success': false, 'message': 'Data sync failed: $e'}; + } + } +} + +// ======================================================================= +// Part 2: Feature-Specific API Services +// ======================================================================= + +class MarineApiService { + final BaseApiService _baseService; + MarineApiService(this._baseService); + + Future> getTarballStations() => _baseService.get('marine/tarball/stations'); + Future> getManualStations() => _baseService.get('marine/manual/stations'); + Future> getTarballClassifications() => _baseService.get('marine/tarball/classifications'); + + Future> submitTarballSample({ + required Map formData, + required Map imageFiles, + }) async { + final dataResult = await _baseService.post('marine/tarball/sample', formData); + if (dataResult['success'] != true) return {'status': 'L1', 'success': false, 'message': 'Failed to submit data: ${dataResult['message']}'}; + + final recordId = dataResult['data']?['autoid']; + if (recordId == null) return {'status': 'L2', 'success': false, 'message': 'Data submitted, but failed to get a record ID.'}; + + final filesToUpload = {}; + imageFiles.forEach((key, value) { if (value != null) filesToUpload[key] = value; }); + + if (filesToUpload.isEmpty) return {'status': 'L3', 'success': true, 'message': 'Data submitted successfully.', 'reportId': recordId}; + + final imageResult = await _baseService.postMultipart(endpoint: 'marine/tarball/images', fields: {'autoid': recordId.toString()}, files: filesToUpload); + if (imageResult['success'] != true) return {'status': 'L2', 'success': false, 'message': 'Data submitted, but image upload failed: ${imageResult['message']}', 'reportId': recordId}; + + return {'status': 'L3', 'success': true, 'message': 'Data and images submitted successfully.', 'reportId': recordId}; + } +} + +class RiverApiService { + final BaseApiService _baseService; + RiverApiService(this._baseService); + + Future> getManualStations() => _baseService.get('river/manual-stations'); + Future> getTriennialStations() => _baseService.get('river/triennial-stations'); +} + +// ======================================================================= +// Part 3: Local Database Helper +// ======================================================================= + +class DatabaseHelper { + static Database? _database; + static const String _dbName = 'app_data.db'; + // FIXED: Incremented database version to trigger onUpgrade and create the new table + static const int _dbVersion = 10; + + static const String _profileTable = 'user_profile'; + static const String _usersTable = 'all_users'; + static const String _tarballStationsTable = 'marine_tarball_stations'; + static const String _manualStationsTable = 'marine_manual_stations'; + static const String _riverManualStationsTable = 'river_manual_stations'; + static const String _riverTriennialStationsTable = 'river_triennial_stations'; + static const String _tarballClassificationsTable = 'marine_tarball_classifications'; + static const String _departmentsTable = 'departments'; + static const String _companiesTable = 'companies'; + static const String _positionsTable = 'positions'; + // --- ADDED: Table name for the alert queue --- + static const String _alertQueueTable = 'alert_queue'; + + Future get database async { + if (_database != null) return _database!; + _database = await _initDB(); + return _database!; + } + + Future _initDB() async { + String dbPath = p.join(await getDatabasesPath(), _dbName); + return await openDatabase(dbPath, version: _dbVersion, onCreate: _onCreate, onUpgrade: _onUpgrade); + } + + Future _onCreate(Database db, int version) async { + await db.execute('CREATE TABLE $_profileTable(user_id INTEGER PRIMARY KEY, profile_json TEXT)'); + await db.execute('CREATE TABLE $_usersTable(user_id INTEGER PRIMARY KEY, user_json TEXT)'); + await db.execute('CREATE TABLE $_tarballStationsTable(station_id INTEGER PRIMARY KEY, station_json TEXT)'); + await db.execute('CREATE TABLE $_manualStationsTable(station_id INTEGER PRIMARY KEY, station_json TEXT)'); + await db.execute('CREATE TABLE $_riverManualStationsTable(station_id INTEGER PRIMARY KEY, station_json TEXT)'); + await db.execute('CREATE TABLE $_riverTriennialStationsTable(station_id INTEGER PRIMARY KEY, station_json TEXT)'); + await db.execute('CREATE TABLE $_tarballClassificationsTable(classification_id INTEGER PRIMARY KEY, classification_json TEXT)'); + await db.execute('CREATE TABLE $_departmentsTable(department_id INTEGER PRIMARY KEY, department_json TEXT)'); + await db.execute('CREATE TABLE $_companiesTable(company_id INTEGER PRIMARY KEY, company_json TEXT)'); + await db.execute('CREATE TABLE $_positionsTable(position_id INTEGER PRIMARY KEY, position_json TEXT)'); + + // --- ADDED: Create the alert_queue table --- + await db.execute(''' + CREATE TABLE $_alertQueueTable ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + chat_id TEXT NOT NULL, + message TEXT NOT NULL, + created_at TEXT NOT NULL + ) + '''); + } + + Future _onUpgrade(Database db, int oldVersion, int newVersion) async { + if (oldVersion < 10) { + await db.execute('DROP TABLE IF EXISTS $_profileTable'); + await db.execute('DROP TABLE IF EXISTS $_usersTable'); + await db.execute('DROP TABLE IF EXISTS $_tarballStationsTable'); + await db.execute('DROP TABLE IF EXISTS $_manualStationsTable'); + await db.execute('DROP TABLE IF EXISTS $_riverManualStationsTable'); + await db.execute('DROP TABLE IF EXISTS $_riverTriennialStationsTable'); + await db.execute('DROP TABLE IF EXISTS $_tarballClassificationsTable'); + await db.execute('DROP TABLE IF EXISTS $_departmentsTable'); + await db.execute('DROP TABLE IF EXISTS $_companiesTable'); + await db.execute('DROP TABLE IF EXISTS $_positionsTable'); + // --- ADDED: Drop the alert_queue table during upgrade --- + await db.execute('DROP TABLE IF EXISTS $_alertQueueTable'); + await _onCreate(db, newVersion); + } + } + + Future _saveData(String table, String idKey, List> data) async { + final db = await database; + await db.delete(table); + for (var item in data) { + await db.insert(table, {'${idKey}_id': item[idKey], '${idKey}_json': jsonEncode(item)}, conflictAlgorithm: ConflictAlgorithm.replace); + } + } + + Future>?> _loadData(String table, String idKey) async { + final db = await database; + final List> maps = await db.query(table); + if (maps.isNotEmpty) { + return maps.map((map) => jsonDecode(map['${idKey}_json']) as Map).toList(); + } + return null; + } + + Future saveProfile(Map profile) async { + final db = await database; + await db.insert(_profileTable, {'user_id': profile['user_id'], 'profile_json': jsonEncode(profile)}, conflictAlgorithm: ConflictAlgorithm.replace); + } + Future?> loadProfile() async { + final db = await database; + final List> maps = await db.query(_profileTable); + if(maps.isNotEmpty) return jsonDecode(maps.first['profile_json']); + return null; + } + + Future saveUsers(List> users) => _saveData(_usersTable, 'user', users); + Future>?> loadUsers() => _loadData(_usersTable, 'user'); + + Future saveTarballStations(List> stations) => _saveData(_tarballStationsTable, 'station', stations); + Future>?> loadTarballStations() => _loadData(_tarballStationsTable, 'station'); + + Future saveManualStations(List> stations) => _saveData(_manualStationsTable, 'station', stations); + Future>?> loadManualStations() => _loadData(_manualStationsTable, 'station'); + + Future saveRiverManualStations(List> stations) => _saveData(_riverManualStationsTable, 'station', stations); + Future>?> loadRiverManualStations() => _loadData(_riverManualStationsTable, 'station'); + + Future saveRiverTriennialStations(List> stations) => _saveData(_riverTriennialStationsTable, 'station', stations); + Future>?> loadRiverTriennialStations() => _loadData(_riverTriennialStationsTable, 'station'); + + Future saveTarballClassifications(List> data) => _saveData(_tarballClassificationsTable, 'classification', data); + Future>?> loadTarballClassifications() => _loadData(_tarballClassificationsTable, 'classification'); + + Future saveDepartments(List> data) => _saveData(_departmentsTable, 'department', data); + Future>?> loadDepartments() => _loadData(_departmentsTable, 'department'); + + Future saveCompanies(List> data) => _saveData(_companiesTable, 'company', data); + Future>?> loadCompanies() => _loadData(_companiesTable, 'company'); + + Future savePositions(List> data) => _saveData(_positionsTable, 'position', data); + Future>?> loadPositions() => _loadData(_positionsTable, 'position'); +} \ No newline at end of file diff --git a/lib/services/base_api_service.dart b/lib/services/base_api_service.dart new file mode 100644 index 0000000..beb2827 --- /dev/null +++ b/lib/services/base_api_service.dart @@ -0,0 +1,134 @@ +import 'dart:convert'; +import 'dart:io'; +import 'package:flutter/foundation.dart'; +import 'package:http/http.dart' as http; +import 'package:shared_preferences/shared_preferences.dart'; +import 'package:path/path.dart' as path; +import 'package:environment_monitoring_app/auth_provider.dart'; + +class BaseApiService { + final String _baseUrl = 'https://dev14.pstw.com.my/v1'; + + // Private helper to construct headers with the auth token + Future> _getHeaders() async { + final prefs = await SharedPreferences.getInstance(); + final String? token = prefs.getString(AuthProvider.tokenKey); + // For multipart requests, 'Content-Type' is set by the http client. + // We only need Authorization here. + return { + if (token != null) 'Authorization': 'Bearer $token', + }; + } + + // Private helper for JSON headers + Future> _getJsonHeaders() async { + final headers = await _getHeaders(); + headers['Content-Type'] = 'application/json'; + return headers; + } + + // Generic GET request handler + Future> get(String endpoint) async { + final url = Uri.parse('$_baseUrl/$endpoint'); + try { + final response = await http.get(url, headers: await _getJsonHeaders()); + return _handleResponse(response); + } catch (e) { + debugPrint('GET request failed: $e'); + return {'success': false, 'message': 'Network error: $e'}; + } + } + + // Generic POST request handler for JSON data + Future> post(String endpoint, Map body) async { + final url = Uri.parse('$_baseUrl/$endpoint'); + try { + final response = await http.post( + url, + headers: await _getJsonHeaders(), + body: jsonEncode(body), + ); + return _handleResponse(response); + } catch (e) { + debugPrint('POST request failed: $e'); + return {'success': false, 'message': 'Network error: $e'}; + } + } + + // Generic handler for multipart (file upload) requests + Future> postMultipart({ + required String endpoint, + required Map fields, + required Map files, + }) async { + final url = Uri.parse('$_baseUrl/$endpoint'); + debugPrint('Starting multipart upload to: $url'); + + try { + var request = http.MultipartRequest('POST', url); + + // Get and add headers (Authorization token) + final headers = await _getHeaders(); + request.headers.addAll(headers); + debugPrint('Headers added to multipart request.'); + + // CORRECTED: Send all text fields as a single JSON string under the key 'data'. + // This is a common pattern for APIs that handle mixed file/data uploads and + // helps prevent issues where servers fail to parse individual fields. + if (fields.isNotEmpty) { + request.fields['data'] = jsonEncode(fields); + debugPrint('Fields added as a single JSON string under the key "data".'); + } + + // Add files + for (var entry in files.entries) { + debugPrint('Adding file: ${entry.key}, path: ${entry.value.path}'); + request.files.add(await http.MultipartFile.fromPath( + entry.key, + entry.value.path, + filename: path.basename(entry.value.path), + )); + } + debugPrint('${files.length} files added to the request.'); + + debugPrint('Sending multipart request...'); + var streamedResponse = await request.send(); + debugPrint('Received response with status code: ${streamedResponse.statusCode}'); + + final responseBody = await streamedResponse.stream.bytesToString(); + // We create a standard http.Response to use our standard handler + return _handleResponse(http.Response(responseBody, streamedResponse.statusCode)); + + } catch (e, s) { // Catching both Exception and Error (e.g., OutOfMemoryError) + debugPrint('FATAL: An error occurred during multipart upload: $e'); + debugPrint('Stack trace: $s'); + return { + 'success': false, + 'message': 'Upload failed due to a critical error. This might be caused by low device memory or a network issue.' + }; + } + } + + // Centralized response handling + Map _handleResponse(http.Response response) { + debugPrint('Handling response. Status: ${response.statusCode}, Body: ${response.body}'); + try { + final Map responseData = jsonDecode(response.body); + if (response.statusCode >= 200 && response.statusCode < 300) { + // Assuming the API returns a 'status' field in the JSON body + if (responseData['status'] == 'success' || responseData['success'] == true) { + return {'success': true, 'data': responseData['data'], 'message': responseData['message']}; + } else { + return {'success': false, 'message': responseData['message'] ?? 'An unknown API error occurred.'}; + } + } else { + // Handle server errors (4xx, 5xx) + return {'success': false, 'message': responseData['message'] ?? 'Server error: ${response.statusCode}'}; + } + } catch (e) { + // Handle cases where the response body is not valid JSON + debugPrint('Failed to parse server response: $e'); + return {'success': false, 'message': 'Failed to parse server response. Body: ${response.body}'}; + } + } +} diff --git a/lib/services/in_situ_sampling_service.dart b/lib/services/in_situ_sampling_service.dart new file mode 100644 index 0000000..6dd04a0 --- /dev/null +++ b/lib/services/in_situ_sampling_service.dart @@ -0,0 +1,153 @@ +import 'dart:async'; +import 'dart:io'; +import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; +import 'package:image_picker/image_picker.dart'; +import 'package:path_provider/path_provider.dart'; +import 'package:path/path.dart' as path; +import 'package:image/image.dart' as img; +import 'package:geolocator/geolocator.dart'; +import 'package:permission_handler/permission_handler.dart'; +import 'package:flutter_bluetooth_serial/flutter_bluetooth_serial.dart'; +import 'package:usb_serial/usb_serial.dart'; + +import 'location_service.dart'; +import 'marine_api_service.dart'; +import '../models/in_situ_sampling_data.dart'; +import '../bluetooth/bluetooth_manager.dart'; +import '../serial/serial_manager.dart'; + +/// A dedicated service to handle all business logic for the In-Situ Sampling feature. +/// This includes location, image processing, device communication, and data submission. +class InSituSamplingService { + final LocationService _locationService = LocationService(); + final MarineApiService _marineApiService = MarineApiService(); + final BluetoothManager _bluetoothManager = BluetoothManager(); + final SerialManager _serialManager = SerialManager(); + + // This channel name MUST match the one defined in MainActivity.kt + static const platform = MethodChannel('com.example.environment_monitoring_app/usb'); + + + // --- Location Services --- + Future getCurrentLocation() => _locationService.getCurrentLocation(); + double calculateDistance(double lat1, double lon1, double lat2, double lon2) => _locationService.calculateDistance(lat1, lon1, lat2, lon2); + + // --- Image Processing --- + Future pickAndProcessImage(ImageSource source, { + required InSituSamplingData data, + required String imageInfo, + bool isRequired = false, + }) async { + final picker = ImagePicker(); + final XFile? photo = await picker.pickImage(source: source, imageQuality: 85, maxWidth: 1024); + if (photo == null) return null; + + final bytes = await photo.readAsBytes(); + img.Image? originalImage = img.decodeImage(bytes); + if (originalImage == null) return null; + + if (isRequired && originalImage.height > originalImage.width) { + debugPrint("Image rejected: Must be in landscape orientation."); + return null; + } + + final String watermarkTimestamp = "${data.samplingDate} ${data.samplingTime}"; + final font = img.arial24; + final textWidth = watermarkTimestamp.length * 12; + img.fillRect(originalImage, x1: 5, y1: 5, x2: textWidth + 15, y2: 35, color: img.ColorRgb8(255, 255, 255)); + img.drawString(originalImage, watermarkTimestamp, font: font, x: 10, y: 10, color: img.ColorRgb8(0, 0, 0)); + + final tempDir = await getTemporaryDirectory(); + final stationCode = data.selectedStation?['man_station_code'] ?? 'NA'; + final fileTimestamp = "${data.samplingDate}-${data.samplingTime}".replaceAll(':', '-'); + final newFileName = "${stationCode}_${fileTimestamp}_${imageInfo.replaceAll(' ', '')}.jpg"; + final filePath = path.join(tempDir.path, newFileName); + + return File(filePath)..writeAsBytesSync(img.encodeJpg(originalImage)); + } + + // --- Device Connection (Delegated to Managers) --- + ValueNotifier get bluetoothConnectionState => _bluetoothManager.connectionState; + ValueNotifier get serialConnectionState => _serialManager.connectionState; + + // REPAIRED: This getter now dynamically returns the correct Sonde ID notifier + // based on the active connection, which is essential for the UI. + ValueNotifier get sondeId { + if (_bluetoothManager.connectionState.value != BluetoothConnectionState.disconnected) { + return _bluetoothManager.sondeId; + } + return _serialManager.sondeId; + } + + Stream> get bluetoothDataStream => _bluetoothManager.dataStream; + Stream> get serialDataStream => _serialManager.dataStream; + + // REPAIRED: Added .value to both getters for consistency and to prevent errors. + String? get connectedBluetoothDeviceName => _bluetoothManager.connectedDeviceName.value; + String? get connectedSerialDeviceName => _serialManager.connectedDeviceName.value; + + // --- Permissions --- + Future requestDevicePermissions() async { + Map statuses = await [ + Permission.bluetoothScan, + Permission.bluetoothConnect, + Permission.locationWhenInUse, + ].request(); + + // Return true only if the essential permissions are granted. + if (statuses[Permission.bluetoothScan] == PermissionStatus.granted && + statuses[Permission.bluetoothConnect] == PermissionStatus.granted) { + return true; + } else { + return false; + } + } + + // --- Bluetooth Methods --- + Future> getPairedBluetoothDevices() => _bluetoothManager.getPairedDevices(); + Future connectToBluetoothDevice(BluetoothDevice device) => _bluetoothManager.connect(device); + void disconnectFromBluetooth() => _bluetoothManager.disconnect(); + void startBluetoothAutoReading({Duration? interval}) => _bluetoothManager.startAutoReading(interval: interval ?? const Duration(seconds: 5)); + void stopBluetoothAutoReading() => _bluetoothManager.stopAutoReading(); + + + // --- USB Serial Methods --- + Future> getAvailableSerialDevices() => _serialManager.getAvailableDevices(); + + Future requestUsbPermission(UsbDevice device) async { + try { + return await platform.invokeMethod('requestUsbPermission', {'vid': device.vid, 'pid': device.pid}) ?? false; + } on PlatformException catch (e) { + debugPrint("Failed to request USB permission: '${e.message}'."); + return false; + } + } + + Future connectToSerialDevice(UsbDevice device) async { + final bool permissionGranted = await requestUsbPermission(device); + if (permissionGranted) { + await _serialManager.connect(device); + } else { + throw Exception("USB permission was not granted."); + } + } + + void disconnectFromSerial() => _serialManager.disconnect(); + void startSerialAutoReading({Duration? interval}) => _serialManager.startAutoReading(interval: interval ?? const Duration(seconds: 5)); + void stopSerialAutoReading() => _serialManager.stopAutoReading(); + + + void dispose() { + _bluetoothManager.dispose(); + _serialManager.dispose(); + } + + // --- Data Submission --- + Future> submitData(InSituSamplingData data) { + return _marineApiService.submitInSituSample( + formData: data.toApiFormData(), + imageFiles: data.toApiImageFiles(), + ); + } +} \ No newline at end of file diff --git a/lib/services/local_storage_service.dart b/lib/services/local_storage_service.dart new file mode 100644 index 0000000..f50571f --- /dev/null +++ b/lib/services/local_storage_service.dart @@ -0,0 +1,368 @@ +// lib/services/local_storage_service.dart + +import 'dart:io'; +import 'dart:convert'; +import 'package:flutter/foundation.dart'; +import 'package:path_provider/path_provider.dart'; +import 'package:permission_handler/permission_handler.dart'; +import 'package:path/path.dart' as p; + +import '../models/tarball_data.dart'; +import '../models/in_situ_sampling_data.dart'; +// ADDED: Import the river-specific data model +import '../models/river_in_situ_sampling_data.dart'; + +/// A comprehensive service for handling all local data storage for offline submissions. +class LocalStorageService { + + // ======================================================================= + // Part 1: Public Storage Setup + // ======================================================================= + + /// Checks for and requests necessary storage permissions for public storage. + Future _requestPermissions() async { + var status = await Permission.manageExternalStorage.request(); + return status.isGranted; + } + + /// Gets the public external storage directory and creates the base MMSV4 folder. + Future _getPublicMMSV4Directory() async { + if (await _requestPermissions()) { + final Directory? externalDir = await getExternalStorageDirectory(); + if (externalDir != null) { + // Navigates up from the app-specific folder to the public root + final publicRootPath = externalDir.path.split('/Android/')[0]; + final mmsv4Dir = Directory(p.join(publicRootPath, 'MMSV4')); + if (!await mmsv4Dir.exists()) { + await mmsv4Dir.create(recursive: true); + } + return mmsv4Dir; + } + } + debugPrint("LocalStorageService: Manage External Storage permission was not granted."); + return null; + } + + // ======================================================================= + // Part 2: Tarball Specific Methods + // ======================================================================= + + /// Gets the base directory for storing tarball sampling data logs. + Future _getTarballBaseDir() async { + final mmsv4Dir = await _getPublicMMSV4Directory(); + if (mmsv4Dir == null) return null; + + final tarballDir = Directory(p.join(mmsv4Dir.path, 'marine', 'marine_tarball_sampling')); + if (!await tarballDir.exists()) { + await tarballDir.create(recursive: true); + } + return tarballDir; + } + + /// Saves a single tarball sampling record to a unique folder in public storage. + Future saveTarballSamplingData(TarballSamplingData data) async { + final baseDir = await _getTarballBaseDir(); + if (baseDir == null) { + debugPrint("Could not get public storage directory. Check permissions."); + return null; + } + + try { + final stationCode = data.selectedStation?['tbl_station_code'] ?? 'UNKNOWN_STATION'; + final timestamp = "${data.samplingDate}_${data.samplingTime?.replaceAll(':', '-')}"; + final eventFolderName = "${stationCode}_$timestamp"; + final eventDir = Directory(p.join(baseDir.path, eventFolderName)); + + if (!await eventDir.exists()) { + await eventDir.create(recursive: true); + } + + final Map jsonData = { ...data.toFormData(), 'submissionStatus': data.submissionStatus, 'submissionMessage': data.submissionMessage, 'reportId': data.reportId }; + + jsonData['selectedStation'] = data.selectedStation; + + final imageFiles = data.toImageFiles(); + + for (var entry in imageFiles.entries) { + final File? imageFile = entry.value; + if (imageFile != null) { + final String originalFileName = p.basename(imageFile.path); + final File newFile = await imageFile.copy(p.join(eventDir.path, originalFileName)); + jsonData[entry.key] = newFile.path; + } + } + + final jsonFile = File(p.join(eventDir.path, 'data.json')); + await jsonFile.writeAsString(jsonEncode(jsonData)); + debugPrint("Tarball log saved to: ${jsonFile.path}"); + + return eventDir.path; + + } catch (e) { + debugPrint("Error saving tarball log to local storage: $e"); + return null; + } + } + + /// Retrieves all saved tarball submission logs from public storage. + Future>> getAllTarballLogs() async { + final baseDir = await _getTarballBaseDir(); + if (baseDir == null || !await baseDir.exists()) return []; + + try { + final List> logs = []; + final entities = baseDir.listSync(); + + for (var entity in entities) { + if (entity is Directory) { + final jsonFile = File(p.join(entity.path, 'data.json')); + if (await jsonFile.exists()) { + final content = await jsonFile.readAsString(); + final data = jsonDecode(content) as Map; + data['logDirectory'] = entity.path; // Add directory path for resubmission/update + logs.add(data); + } + } + } + return logs; + } catch (e) { + debugPrint("Error getting all tarball logs: $e"); + return []; + } + } + + /// Updates an existing log file with new submission status. + Future updateTarballLog(Map updatedLogData) async { + final logDir = updatedLogData['logDirectory']; + if (logDir == null) { + debugPrint("Cannot update log: logDirectory key is missing."); + return; + } + + try { + final jsonFile = File(p.join(logDir, 'data.json')); + if (await jsonFile.exists()) { + updatedLogData.remove('isResubmitting'); + await jsonFile.writeAsString(jsonEncode(updatedLogData)); + debugPrint("Log updated successfully at: ${jsonFile.path}"); + } + } catch (e) { + debugPrint("Error updating tarball log: $e"); + } + } + + + // ======================================================================= + // Part 3: Marine In-Situ Specific Methods + // ======================================================================= + + /// Gets the base directory for storing marine in-situ sampling data logs. + Future _getInSituBaseDir() async { + final mmsv4Dir = await _getPublicMMSV4Directory(); + if (mmsv4Dir == null) return null; + + final inSituDir = Directory(p.join(mmsv4Dir.path, 'marine', 'marine_in_situ_sampling')); + if (!await inSituDir.exists()) { + await inSituDir.create(recursive: true); + } + return inSituDir; + } + + /// Saves a single marine in-situ sampling record to a unique folder in public storage. + Future saveInSituSamplingData(InSituSamplingData data) async { + final baseDir = await _getInSituBaseDir(); + if (baseDir == null) { + debugPrint("Could not get public storage directory for In-Situ. Check permissions."); + return null; + } + + try { + final stationCode = data.selectedStation?['man_station_code'] ?? 'UNKNOWN_STATION'; + final timestamp = "${data.samplingDate}_${data.samplingTime?.replaceAll(':', '-')}"; + final eventFolderName = "${stationCode}_$timestamp"; + final eventDir = Directory(p.join(baseDir.path, eventFolderName)); + + if (!await eventDir.exists()) { + await eventDir.create(recursive: true); + } + + final Map jsonData = { ...data.toApiFormData(), 'submissionStatus': data.submissionStatus, 'submissionMessage': data.submissionMessage, 'reportId': data.reportId }; + + jsonData['selectedStation'] = data.selectedStation; + + final imageFiles = data.toApiImageFiles(); + for (var entry in imageFiles.entries) { + final File? imageFile = entry.value; + if (imageFile != null) { + final String originalFileName = p.basename(imageFile.path); + final File newFile = await imageFile.copy(p.join(eventDir.path, originalFileName)); + jsonData[entry.key] = newFile.path; + } + } + + final jsonFile = File(p.join(eventDir.path, 'data.json')); + await jsonFile.writeAsString(jsonEncode(jsonData)); + debugPrint("In-Situ log saved to: ${jsonFile.path}"); + + return eventDir.path; + + } catch (e) { + debugPrint("Error saving In-Situ log to local storage: $e"); + return null; + } + } + + /// Retrieves all saved marine in-situ submission logs from public storage. + Future>> getAllInSituLogs() async { + final baseDir = await _getInSituBaseDir(); + if (baseDir == null || !await baseDir.exists()) return []; + + try { + final List> logs = []; + final entities = baseDir.listSync(); + + for (var entity in entities) { + if (entity is Directory) { + final jsonFile = File(p.join(entity.path, 'data.json')); + if (await jsonFile.exists()) { + final content = await jsonFile.readAsString(); + final data = jsonDecode(content) as Map; + data['logDirectory'] = entity.path; + logs.add(data); + } + } + } + return logs; + } catch (e) { + debugPrint("Error getting all in-situ logs: $e"); + return []; + } + } + + /// Updates an existing marine in-situ log file with new submission status. + Future updateInSituLog(Map updatedLogData) async { + final logDir = updatedLogData['logDirectory']; + if (logDir == null) { + debugPrint("Cannot update log: logDirectory key is missing."); + return; + } + + try { + final jsonFile = File(p.join(logDir, 'data.json')); + if (await jsonFile.exists()) { + updatedLogData.remove('isResubmitting'); + await jsonFile.writeAsString(jsonEncode(updatedLogData)); + debugPrint("Log updated successfully at: ${jsonFile.path}"); + } + } catch (e) { + debugPrint("Error updating in-situ log: $e"); + } + } + + // ======================================================================= + // ADDED: Part 4: River In-Situ Specific Methods + // ======================================================================= + + /// Gets the base directory for storing river in-situ sampling data logs. + Future _getRiverInSituBaseDir() async { + final mmsv4Dir = await _getPublicMMSV4Directory(); + if (mmsv4Dir == null) return null; + + final inSituDir = Directory(p.join(mmsv4Dir.path, 'river', 'river_in_situ_sampling')); + if (!await inSituDir.exists()) { + await inSituDir.create(recursive: true); + } + return inSituDir; + } + + /// Saves a single river in-situ sampling record to a unique folder in public storage. + Future saveRiverInSituSamplingData(RiverInSituSamplingData data) async { + final baseDir = await _getRiverInSituBaseDir(); + if (baseDir == null) { + debugPrint("Could not get public storage directory for River In-Situ. Check permissions."); + return null; + } + + try { + final stationCode = data.selectedStation?['r_man_station_code'] ?? 'UNKNOWN_STATION'; + final timestamp = "${data.samplingDate}_${data.samplingTime?.replaceAll(':', '-')}"; + final eventFolderName = "${stationCode}_$timestamp"; + final eventDir = Directory(p.join(baseDir.path, eventFolderName)); + + if (!await eventDir.exists()) { + await eventDir.create(recursive: true); + } + + final Map jsonData = { ...data.toApiFormData(), 'submissionStatus': data.submissionStatus, 'submissionMessage': data.submissionMessage, 'reportId': data.reportId }; + + jsonData['selectedStation'] = data.selectedStation; + + final imageFiles = data.toApiImageFiles(); + for (var entry in imageFiles.entries) { + final File? imageFile = entry.value; + if (imageFile != null) { + final String originalFileName = p.basename(imageFile.path); + final File newFile = await imageFile.copy(p.join(eventDir.path, originalFileName)); + jsonData[entry.key] = newFile.path; + } + } + + final jsonFile = File(p.join(eventDir.path, 'data.json')); + await jsonFile.writeAsString(jsonEncode(jsonData)); + debugPrint("River In-Situ log saved to: ${jsonFile.path}"); + + return eventDir.path; + + } catch (e) { + debugPrint("Error saving River In-Situ log to local storage: $e"); + return null; + } + } + + /// Retrieves all saved river in-situ submission logs from public storage. + Future>> getAllRiverInSituLogs() async { + final baseDir = await _getRiverInSituBaseDir(); + if (baseDir == null || !await baseDir.exists()) return []; + + try { + final List> logs = []; + final entities = baseDir.listSync(); + + for (var entity in entities) { + if (entity is Directory) { + final jsonFile = File(p.join(entity.path, 'data.json')); + if (await jsonFile.exists()) { + final content = await jsonFile.readAsString(); + final data = jsonDecode(content) as Map; + data['logDirectory'] = entity.path; + logs.add(data); + } + } + } + return logs; + } catch (e) { + debugPrint("Error getting all river in-situ logs: $e"); + return []; + } + } + + /// Updates an existing river in-situ log file with new submission status. + Future updateRiverInSituLog(Map updatedLogData) async { + final logDir = updatedLogData['logDirectory']; + if (logDir == null) { + debugPrint("Cannot update log: logDirectory key is missing."); + return; + } + + try { + final jsonFile = File(p.join(logDir, 'data.json')); + if (await jsonFile.exists()) { + updatedLogData.remove('isResubmitting'); + await jsonFile.writeAsString(jsonEncode(updatedLogData)); + debugPrint("Log updated successfully at: ${jsonFile.path}"); + } + } catch (e) { + debugPrint("Error updating river in-situ log: $e"); + } + } +} \ No newline at end of file diff --git a/lib/services/location_service.dart b/lib/services/location_service.dart new file mode 100644 index 0000000..21dbc19 --- /dev/null +++ b/lib/services/location_service.dart @@ -0,0 +1,71 @@ +import 'dart:math'; +import 'package:geolocator/geolocator.dart'; +import 'package:permission_handler/permission_handler.dart'; + +/// A dedicated service for handling all location-based functionalities. +class LocationService { + + /// Checks for and requests location permissions, then fetches the current GPS position. + /// This includes an offline-first approach by trying to get the last known position. + Future getCurrentLocation() async { + bool serviceEnabled; + LocationPermission permission; + + // Check if location services are enabled on the device. + serviceEnabled = await Geolocator.isLocationServiceEnabled(); + if (!serviceEnabled) { + return Future.error('Location services are disabled.'); + } + + permission = await Geolocator.checkPermission(); + if (permission == LocationPermission.denied) { + permission = await Geolocator.requestPermission(); + if (permission == LocationPermission.denied) { + return Future.error('Location permissions are denied'); + } + } + + if (permission == LocationPermission.deniedForever) { + return Future.error( + 'Location permissions are permanently denied, we cannot request permissions.'); + } + + // Attempt to get the last known position for a fast, offline-capable response. + Position? position = await Geolocator.getLastKnownPosition(); + + // If no last known position, fetch the current position. + position ??= await Geolocator.getCurrentPosition( + desiredAccuracy: LocationAccuracy.high); + + return position; + } + + /// Calculates the distance in kilometers between two latitude/longitude pairs. + double calculateDistance(double lat1, double lon1, double lat2, double lon2) { + const earthRadius = 6371; // Radius of the Earth in km + + final dLat = _degreesToRadians(lat2 - lat1); + final dLon = _degreesToRadians(lon2 - lon1); + + final a = sin(dLat / 2) * sin(dLat / 2) + + cos(_degreesToRadians(lat1)) * + cos(_degreesToRadians(lat2)) * + sin(dLon / 2) * + sin(dLon / 2); + + final c = 2 * atan2(sqrt(a), sqrt(1 - a)); + + return earthRadius * c; // Distance in km + } + + double _degreesToRadians(double degree) { + return degree * pi / 180; + } + + /// A helper method to request location permissions explicitly if needed. + Future requestPermissions() async { + await [ + Permission.locationWhenInUse, + ].request(); + } +} diff --git a/lib/services/marine_api_service.dart b/lib/services/marine_api_service.dart new file mode 100644 index 0000000..df5d75c --- /dev/null +++ b/lib/services/marine_api_service.dart @@ -0,0 +1,226 @@ +import 'dart:io'; +import 'package:flutter/foundation.dart'; +import 'package:intl/intl.dart'; +import 'package:environment_monitoring_app/services/base_api_service.dart'; +import 'package:environment_monitoring_app/services/telegram_service.dart'; +import 'package:environment_monitoring_app/services/settings_service.dart'; + +class MarineApiService { + final BaseApiService _baseService = BaseApiService(); + final TelegramService _telegramService = TelegramService(); + final SettingsService _settingsService = SettingsService(); + + Future> getTarballStations() { + return _baseService.get('marine/tarball/stations'); + } + + Future> getManualStations() { + return _baseService.get('marine/manual/stations'); + } + + Future> getTarballClassifications() { + return _baseService.get('marine/tarball/classifications'); + } + + /// Orchestrates a two-step submission process for tarball samples. (Unchanged) + /// Returns a detailed status code and the report ID upon success. + Future> submitTarballSample({ + required Map formData, + required Map imageFiles, + }) async { + // --- Step 1: Submit Text Data Only --- + debugPrint("Step 1: Submitting tarball form data to the server..."); + final dataResult = await _baseService.post('marine/tarball/sample', formData); + + if (dataResult['success'] != true) { + // Data submission failed. This is an L1 failure. + return { + 'status': 'L1', + 'success': false, + 'message': 'Failed to submit data to server: ${dataResult['message']}', + 'reportId': null, + }; + } + debugPrint("Step 1 successful. Tarball data submitted."); + + // --- Step 2: Upload Image Files --- + final recordId = dataResult['data']?['autoid']; + if (recordId == null) { + // Data was saved, but we can't link the images. This is an L2 failure. + return { + 'status': 'L2', + 'success': false, + 'message': 'Data submitted, but failed to get a record ID to link images.', + 'reportId': null, + }; + } + + final filesToUpload = {}; + imageFiles.forEach((key, value) { + if (value != null) filesToUpload[key] = value; + }); + + if (filesToUpload.isEmpty) { + // If there are no images, the process is complete. + return { + 'status': 'L3', + 'success': true, + 'message': 'Data submitted successfully. No images were attached.', + 'reportId': recordId, + }; + } + + debugPrint("Step 2: Uploading ${filesToUpload.length} tarball images for record ID: $recordId"); + final imageResult = await _baseService.postMultipart( + endpoint: 'marine/tarball/images', + fields: {'autoid': recordId.toString()}, + files: filesToUpload, + ); + + if (imageResult['success'] != true) { + // Image upload failed. This is an L2 failure. + return { + 'status': 'L2', + 'success': false, + 'message': 'Data submitted to server, but image upload failed: ${imageResult['message']}', + 'reportId': recordId, + }; + } + + // Both steps were successful. + return { + 'status': 'L3', + 'success': true, + 'message': 'Data and images submitted to server successfully.', + 'reportId': recordId, + }; + } + + /// Orchestrates a two-step submission process for in-situ samples. + Future> submitInSituSample({ + required Map formData, + required Map imageFiles, + }) async { + // --- Step 1: Submit Form Data --- + debugPrint("Step 1: Submitting in-situ form data to the server..."); + final dataResult = await _baseService.post('marine/manual/sample', formData); + + if (dataResult['success'] != true) { + return { + 'status': 'L1', + 'success': false, + 'message': 'Failed to submit in-situ data: ${dataResult['message']}', + 'reportId': null, + }; + } + debugPrint("Step 1 successful. In-situ data submitted."); + + // --- Step 2: Upload Image Files --- + final recordId = dataResult['data']?['man_id']; + if (recordId == null) { + return { + 'status': 'L2', + 'success': false, + 'message': 'In-situ data submitted, but failed to get a record ID for images.', + 'reportId': null, + }; + } + + final filesToUpload = {}; + imageFiles.forEach((key, value) { + if (value != null) filesToUpload[key] = value; + }); + + if (filesToUpload.isEmpty) { + // Handle alert for successful data-only submission. + _handleInSituSuccessAlert(formData, isDataOnly: true); + + return { + 'status': 'L3', + 'success': true, + 'message': 'In-situ data submitted successfully. No images were attached.', + 'reportId': recordId.toString(), + }; + } + + debugPrint("Step 2: Uploading ${filesToUpload.length} in-situ images for record ID: $recordId"); + final imageResult = await _baseService.postMultipart( + endpoint: 'marine/manual/images', + fields: {'man_id': recordId.toString()}, + files: filesToUpload, + ); + + if (imageResult['success'] != true) { + return { + 'status': 'L2', + 'success': false, + 'message': 'In-situ data submitted, but image upload failed: ${imageResult['message']}', + 'reportId': recordId.toString(), + }; + } + + // Handle alert for successful data and image submission. + _handleInSituSuccessAlert(formData, isDataOnly: false); + + return { + 'status': 'L3', + 'success': true, + 'message': 'In-situ data and images submitted successfully.', + 'reportId': recordId.toString(), + }; + } + + /// A private helper method to build and send the detailed in-situ alert. + Future _handleInSituSuccessAlert(Map formData, {required bool isDataOnly}) async { + try { + final groupChatId = await _settingsService.getInSituChatId(); + if (groupChatId.isNotEmpty) { + // Extract data from the formData map with fallbacks + final submissionType = isDataOnly ? "(Data Only)" : "(Data & Images)"; + final stationName = formData['man_station_name'] ?? 'N/A'; + final stationCode = formData['man_station_code'] ?? 'N/A'; + final submissionDate = formData['sampling_date'] ?? DateFormat('yyyy-MM-dd').format(DateTime.now()); + final submitter = formData['first_sampler_name'] ?? 'N/A'; + final manualsondeID = formData['man_sondeID'] ?? 'N/A'; + //final distanceKm = double.tryParse(formData['distance_difference_km'] ?? '0') ?? 0; + //final distanceMeters = (distanceKm * 1000).toStringAsFixed(0); + //final distanceRemarks = formData['distance_difference_remarks']; + + final distanceKm = double.tryParse(formData['man_distance_difference'] ?? '0') ?? 0; + final distanceMeters = (distanceKm * 1000).toStringAsFixed(0); + final distanceRemarks = formData['man_distance_difference_remarks'] ?? 'N/A'; + + + // Build the message using a StringBuffer for clarity + final buffer = StringBuffer(); + buffer.writeln('✅ *In-Situ Sample ${submissionType} Submitted:*'); + buffer.writeln(); // Blank line + buffer.writeln('*Station Name & Code:* $stationName ($stationCode)'); + buffer.writeln('*Date of Submitted:* $submissionDate'); + buffer.writeln('*Submitted by User:* $submitter'); + buffer.writeln('*Sonde ID:* $manualsondeID'); + buffer.writeln('*Status of Submission:* Successful'); + + // Only include the Alert section if distance or remarks are relevant + if (distanceKm > 0 || (distanceRemarks != null && distanceRemarks.isNotEmpty)) { + buffer.writeln(); // Blank line + buffer.writeln('🔔 *Alert:*'); + buffer.writeln('*Distance from station:* $distanceMeters meters'); + if (distanceRemarks != null && distanceRemarks.isNotEmpty) { + buffer.writeln('*Remarks for distance:* $distanceRemarks'); + } + } + + final String message = buffer.toString(); + + // Try to send immediately, or queue on failure + final bool wasSent = await _telegramService.sendAlertImmediately('marine_in_situ', message); + if (!wasSent) { + await _telegramService.queueMessage('marine_in_situ', message); + } + } + } catch (e) { + debugPrint("Failed to handle Telegram alert: $e"); + } + } +} \ No newline at end of file diff --git a/lib/services/river_api_service.dart b/lib/services/river_api_service.dart new file mode 100644 index 0000000..2c87e1e --- /dev/null +++ b/lib/services/river_api_service.dart @@ -0,0 +1,135 @@ +// lib/services/river_api_service.dart + +import 'dart:io'; +import 'package:flutter/foundation.dart'; +import 'package:intl/intl.dart'; + +import 'package:environment_monitoring_app/services/base_api_service.dart'; +import 'package:environment_monitoring_app/services/telegram_service.dart'; +import 'package:environment_monitoring_app/services/settings_service.dart'; + +class RiverApiService { + final BaseApiService _baseService = BaseApiService(); + final TelegramService _telegramService = TelegramService(); + final SettingsService _settingsService = SettingsService(); + + Future> getManualStations() { + return _baseService.get('river/manual-stations'); + } + + Future> getTriennialStations() { + return _baseService.get('river/triennial-stations'); + } + + Future> submitInSituSample({ + required Map formData, + required Map imageFiles, + }) async { + // --- Step 1: Submit Form Data --- + final dataResult = await _baseService.post('river/manual/sample', formData); + + if (dataResult['success'] != true) { + return { + 'status': 'L1', + 'success': false, + 'message': 'Failed to submit river in-situ data: ${dataResult['message']}', + 'reportId': null + }; + } + + // --- Step 2: Upload Image Files --- + final recordId = dataResult['data']?['r_man_id']; + if (recordId == null) { + return { + 'status': 'L2', + 'success': false, + 'message': 'Data submitted, but failed to get a record ID for images.', + 'reportId': null + }; + } + + final filesToUpload = {}; + imageFiles.forEach((key, value) { + if (value != null) filesToUpload[key] = value; + }); + + if (filesToUpload.isEmpty) { + _handleInSituSuccessAlert(formData, isDataOnly: true); + return { + 'status': 'L3', + 'success': true, + 'message': 'Data submitted successfully. No images were attached.', + 'reportId': recordId.toString() + }; + } + + final imageResult = await _baseService.postMultipart( + endpoint: 'river/manual/images', + fields: {'r_man_id': recordId.toString()}, + files: filesToUpload, + ); + + if (imageResult['success'] != true) { + return { + 'status': 'L2', + 'success': false, + 'message': 'Data submitted, but image upload failed: ${imageResult['message']}', + 'reportId': recordId.toString() + }; + } + + _handleInSituSuccessAlert(formData, isDataOnly: false); + return { + 'status': 'L3', + 'success': true, + 'message': 'Data and images submitted successfully.', + 'reportId': recordId.toString() + }; + } + + Future _handleInSituSuccessAlert(Map formData, {required bool isDataOnly}) async { + try { + final groupChatId = await _settingsService.getInSituChatId(); + if (groupChatId.isNotEmpty) { + final submissionType = isDataOnly ? "(Data Only)" : "(Data & Images)"; + final stationName = formData['r_man_station_name'] ?? 'N/A'; + final stationCode = formData['r_man_station_code'] ?? 'N/A'; + final submissionDate = formData['r_man_date'] ?? DateFormat('yyyy-MM-dd').format(DateTime.now()); + final submitter = formData['first_sampler_name'] ?? 'N/A'; + final sondeID = formData['r_man_sondeID'] ?? 'N/A'; + final distanceKm = double.tryParse(formData['r_man_distance_difference'] ?? '0') ?? 0; + final distanceMeters = (distanceKm * 1000).toStringAsFixed(0); + final distanceRemarks = formData['r_man_distance_difference_remarks'] ?? 'N/A'; + + final buffer = StringBuffer() + ..writeln('✅ *River In-Situ Sample ${submissionType} Submitted:*') + ..writeln() + ..writeln('*Station Name & Code:* $stationName ($stationCode)') + ..writeln('*Date of Submitted:* $submissionDate') + ..writeln('*Submitted by User:* $submitter') + ..writeln('*Sonde ID:* $sondeID') + ..writeln('*Status of Submission:* Successful'); + + if (distanceKm > 0 || (distanceRemarks.isNotEmpty && distanceRemarks != 'N/A')) { + // CORRECTED: The cascade operator '..' was missing on the next line. + buffer + ..writeln() + ..writeln('🔔 *Alert:*') + ..writeln('*Distance from station:* $distanceMeters meters'); + if (distanceRemarks.isNotEmpty && distanceRemarks != 'N/A') { + buffer.writeln('*Remarks for distance:* $distanceRemarks'); + } + } + + final String message = buffer.toString(); + + final bool wasSent = await _telegramService.sendAlertImmediately('river_in_situ', message); + if (!wasSent) { + await _telegramService.queueMessage('river_in_situ', message); + } + } + } catch (e) { + debugPrint("Failed to handle River Telegram alert: $e"); + } + } +} \ No newline at end of file diff --git a/lib/services/river_in_situ_sampling_service.dart b/lib/services/river_in_situ_sampling_service.dart new file mode 100644 index 0000000..7a91ee8 --- /dev/null +++ b/lib/services/river_in_situ_sampling_service.dart @@ -0,0 +1,160 @@ +// lib/services/river_in_situ_sampling_service.dart + +import 'dart:async'; +import 'dart:io'; +import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; +import 'package:image_picker/image_picker.dart'; +import 'package:path_provider/path_provider.dart'; +import 'package:path/path.dart' as path; +import 'package:image/image.dart' as img; +import 'package:geolocator/geolocator.dart'; +import 'package:permission_handler/permission_handler.dart'; +import 'package:flutter_bluetooth_serial/flutter_bluetooth_serial.dart'; +import 'package:usb_serial/usb_serial.dart'; + +// CHANGED: Import river-specific services and models +import 'location_service.dart'; +import 'river_api_service.dart'; +import '../models/river_in_situ_sampling_data.dart'; +import '../bluetooth/bluetooth_manager.dart'; +import '../serial/serial_manager.dart'; + +/// A dedicated service to handle all business logic for the River In-Situ Sampling feature. +// CHANGED: Renamed class for the River In-Situ Sampling Service +class RiverInSituSamplingService { + final LocationService _locationService = LocationService(); + // CHANGED: Use the river-specific API service + final RiverApiService _riverApiService = RiverApiService(); + final BluetoothManager _bluetoothManager = BluetoothManager(); + final SerialManager _serialManager = SerialManager(); + + // This channel name MUST match the one defined in MainActivity.kt + static const platform = MethodChannel('com.example.environment_monitoring_app/usb'); + + + // --- Location Services --- + Future getCurrentLocation() => _locationService.getCurrentLocation(); + double calculateDistance(double lat1, double lon1, double lat2, double lon2) => _locationService.calculateDistance(lat1, lon1, lat2, lon2); + + // --- Image Processing --- + Future pickAndProcessImage(ImageSource source, { + // CHANGED: Use the river-specific data model + required RiverInSituSamplingData data, + required String imageInfo, + bool isRequired = false, + }) async { + final picker = ImagePicker(); + final XFile? photo = await picker.pickImage(source: source, imageQuality: 85, maxWidth: 1024); + if (photo == null) return null; + + final bytes = await photo.readAsBytes(); + img.Image? originalImage = img.decodeImage(bytes); + if (originalImage == null) return null; + + if (isRequired && originalImage.height > originalImage.width) { + debugPrint("Image rejected: Must be in landscape orientation."); + return null; + } + + final String watermarkTimestamp = "${data.samplingDate} ${data.samplingTime}"; + final font = img.arial24; + final textWidth = watermarkTimestamp.length * 12; + img.fillRect(originalImage, x1: 5, y1: 5, x2: textWidth + 15, y2: 35, color: img.ColorRgb8(255, 255, 255)); + img.drawString(originalImage, watermarkTimestamp, font: font, x: 10, y: 10, color: img.ColorRgb8(0, 0, 0)); + + final tempDir = await getTemporaryDirectory(); + // CHANGED: Assumes the station code key for rivers is 'r_man_station_code'. Adjust if necessary. + final stationCode = data.selectedStation?['r_man_station_code'] ?? 'NA'; + final fileTimestamp = "${data.samplingDate}-${data.samplingTime}".replaceAll(':', '-'); + final newFileName = "${stationCode}_${fileTimestamp}_${imageInfo.replaceAll(' ', '')}.jpg"; + final filePath = path.join(tempDir.path, newFileName); + + return File(filePath)..writeAsBytesSync(img.encodeJpg(originalImage)); + } + + // --- Device Connection (Delegated to Managers) --- + ValueNotifier get bluetoothConnectionState => _bluetoothManager.connectionState; + ValueNotifier get serialConnectionState => _serialManager.connectionState; + + // This getter now dynamically returns the correct Sonde ID notifier + // based on the active connection, which is essential for the UI. + ValueNotifier get sondeId { + if (_bluetoothManager.connectionState.value != BluetoothConnectionState.disconnected) { + return _bluetoothManager.sondeId; + } + return _serialManager.sondeId; + } + + Stream> get bluetoothDataStream => _bluetoothManager.dataStream; + Stream> get serialDataStream => _serialManager.dataStream; + + String? get connectedBluetoothDeviceName => _bluetoothManager.connectedDeviceName.value; + String? get connectedSerialDeviceName => _serialManager.connectedDeviceName.value; + + // --- Permissions --- + Future requestDevicePermissions() async { + Map statuses = await [ + Permission.bluetoothScan, + Permission.bluetoothConnect, + Permission.locationWhenInUse, + ].request(); + + // Return true only if the essential permissions are granted. + if (statuses[Permission.bluetoothScan] == PermissionStatus.granted && + statuses[Permission.bluetoothConnect] == PermissionStatus.granted) { + return true; + } else { + return false; + } + } + + // --- Bluetooth Methods --- + Future> getPairedBluetoothDevices() => _bluetoothManager.getPairedDevices(); + Future connectToBluetoothDevice(BluetoothDevice device) => _bluetoothManager.connect(device); + void disconnectFromBluetooth() => _bluetoothManager.disconnect(); + void startBluetoothAutoReading({Duration? interval}) => _bluetoothManager.startAutoReading(interval: interval ?? const Duration(seconds: 5)); + void stopBluetoothAutoReading() => _bluetoothManager.stopAutoReading(); + + + // --- USB Serial Methods --- + Future> getAvailableSerialDevices() => _serialManager.getAvailableDevices(); + + Future requestUsbPermission(UsbDevice device) async { + try { + return await platform.invokeMethod('requestUsbPermission', {'vid': device.vid, 'pid': device.pid}) ?? false; + } on PlatformException catch (e) { + debugPrint("Failed to request USB permission: '${e.message}'."); + return false; + } + } + + Future connectToSerialDevice(UsbDevice device) async { + final bool permissionGranted = await requestUsbPermission(device); + if (permissionGranted) { + await _serialManager.connect(device); + } else { + throw Exception("USB permission was not granted."); + } + } + + void disconnectFromSerial() => _serialManager.disconnect(); + void startSerialAutoReading({Duration? interval}) => _serialManager.startAutoReading(interval: interval ?? const Duration(seconds: 5)); + void stopSerialAutoReading() => _serialManager.stopAutoReading(); + + + void dispose() { + _bluetoothManager.dispose(); + _serialManager.dispose(); + } + + // --- Data Submission --- + // CHANGED: Use the river-specific data model + Future> submitData(RiverInSituSamplingData data) { + // CHANGED: Call the river-specific API service method + return _riverApiService.submitInSituSample( + formData: data.toApiFormData(), + imageFiles: data.toApiImageFiles(), + ); + } +} \ No newline at end of file diff --git a/lib/services/settings_service.dart b/lib/services/settings_service.dart new file mode 100644 index 0000000..2a0c3b3 --- /dev/null +++ b/lib/services/settings_service.dart @@ -0,0 +1,42 @@ +// lib/services/settings_service.dart + +import 'package:shared_preferences/shared_preferences.dart'; +import 'package:environment_monitoring_app/services/base_api_service.dart'; + +class SettingsService { + final BaseApiService _baseService = BaseApiService(); + static const _inSituChatIdKey = 'telegram_in_situ_chat_id'; + static const _tarballChatIdKey = 'telegram_tarball_chat_id'; + + /// Fetches settings from the server and saves them to local storage. + Future syncFromServer() async { + final result = await _baseService.get('settings'); + + if (result['success'] == true && result['data'] is Map) { + final settings = result['data'] as Map; + final prefs = await SharedPreferences.getInstance(); + + // Save the chat IDs from the nested map + final inSituSettings = settings['marine_in_situ'] as Map?; + await prefs.setString(_inSituChatIdKey, inSituSettings?['telegram_chat_id'] ?? ''); + + final tarballSettings = settings['marine_tarball'] as Map?; + await prefs.setString(_tarballChatIdKey, tarballSettings?['telegram_chat_id'] ?? ''); + + return true; + } + return false; + } + + /// Gets the locally stored Chat ID for the In-Situ module. + Future getInSituChatId() async { + final prefs = await SharedPreferences.getInstance(); + return prefs.getString(_inSituChatIdKey) ?? ''; + } + + /// Gets the locally stored Chat ID for the Tarball module. + Future getTarballChatId() async { + final prefs = await SharedPreferences.getInstance(); + return prefs.getString(_tarballChatIdKey) ?? ''; + } +} \ No newline at end of file diff --git a/lib/services/telegram_service.dart b/lib/services/telegram_service.dart new file mode 100644 index 0000000..6bef8ee --- /dev/null +++ b/lib/services/telegram_service.dart @@ -0,0 +1,113 @@ +import 'package:flutter/foundation.dart'; +import 'package:sqflite/sqflite.dart'; +import 'package:environment_monitoring_app/services/api_service.dart'; +import 'package:environment_monitoring_app/services/settings_service.dart'; + +class TelegramService { + final ApiService _apiService = ApiService(); + final DatabaseHelper _dbHelper = DatabaseHelper(); + final SettingsService _settingsService = SettingsService(); + + bool _isProcessing = false; + + // --- ADDED: New method to attempt immediate sending --- + /// Tries to send an alert immediately over the network. + /// Returns `true` on success, `false` on failure. + Future sendAlertImmediately(String module, String message) async { + debugPrint("[TelegramService] Attempting to send alert immediately..."); + String chatId = ''; + if (module == 'marine_in_situ') { + chatId = await _settingsService.getInSituChatId(); + } else if (module == 'marine_tarball') { + chatId = await _settingsService.getTarballChatId(); + } + + if (chatId.isEmpty) { + debugPrint("[TelegramService] ❌ Cannot send immediately. Chat ID for module '$module' is not configured."); + return false; // Cannot succeed if no chat ID is set. + } + + final result = await _apiService.sendTelegramAlert( + chatId: chatId, + message: message, + ); + + if (result['success'] == true) { + debugPrint("[TelegramService] ✅ Alert sent immediately."); + return true; + } else { + debugPrint("[TelegramService] ❌ Immediate send failed. Reason: ${result['message']}"); + return false; + } + } + + /// Saves an alert to the local database queue. (This is now the fallback) + Future queueMessage(String module, String message) async { + String chatId = ''; + if (module == 'marine_in_situ') { + chatId = await _settingsService.getInSituChatId(); + } else if (module == 'marine_tarball') { + chatId = await _settingsService.getTarballChatId(); + } + + if (chatId.isEmpty) { + debugPrint("[TelegramService] ❌ ERROR: Cannot queue alert. Chat ID for module '$module' is not configured."); + return; + } + + debugPrint("[TelegramService] ⬇️ Immediate send failed. Saving alert to local queue."); + final db = await _dbHelper.database; + await db.insert( + 'alert_queue', + { + 'chat_id': chatId, + 'message': message, + 'created_at': DateTime.now().toIso8601String(), + }, + ); + debugPrint("[TelegramService] ✅ Alert queued for module: $module"); + } + + /// Processes all pending alerts in the queue. (Unchanged) + Future processAlertQueue() async { + if (_isProcessing) { + debugPrint("[TelegramService] ⏳ Queue is already being processed. Skipping."); + return; + } + + _isProcessing = true; + debugPrint("[TelegramService] ▶️ Starting to process alert queue..."); + + final db = await _dbHelper.database; + final List> pendingAlerts = await db.query('alert_queue', orderBy: 'created_at'); + + if (pendingAlerts.isEmpty) { + debugPrint("[TelegramService] ⏹️ Queue is empty. Nothing to process."); + _isProcessing = false; + return; + } + + debugPrint("[TelegramService] 🔎 Found ${pendingAlerts.length} pending alerts."); + + for (var alert in pendingAlerts) { + final alertId = alert['id']; + final chatId = alert['chat_id']; + debugPrint("[TelegramService] - Processing alert ID: $alertId for Chat ID: $chatId"); + + final result = await _apiService.sendTelegramAlert( + chatId: chatId, + message: alert['message'], + ); + + if (result['success'] == true) { + await db.delete('alert_queue', where: 'id = ?', whereArgs: [alertId]); + debugPrint("[TelegramService] ✅ SUCCESS: Alert ID $alertId sent and removed from queue."); + } else { + debugPrint("[TelegramService] ❌ FAILED: Alert ID $alertId could not be sent. Reason: ${result['message']}"); + } + } + + debugPrint("[TelegramService] ⏹️ Finished processing alert queue."); + _isProcessing = false; + } +} \ No newline at end of file diff --git a/lib/theme.dart b/lib/theme.dart new file mode 100644 index 0000000..2813460 --- /dev/null +++ b/lib/theme.dart @@ -0,0 +1,46 @@ +import 'package:flutter/material.dart'; +import 'package:google_fonts/google_fonts.dart'; + +class AppTheme { + static ThemeData get darkBlueTheme { + return ThemeData( + brightness: Brightness.dark, + primaryColor: Colors.blue[900], + scaffoldBackgroundColor: Colors.grey[900], + appBarTheme: AppBarTheme( + backgroundColor: Colors.blue[900], + foregroundColor: Colors.white, + elevation: 0, + titleTextStyle: GoogleFonts.roboto( + fontSize: 20, + fontWeight: FontWeight.bold, + color: Colors.white, + ), + ), + textTheme: GoogleFonts.robotoTextTheme().apply( + bodyColor: Colors.white, + displayColor: Colors.white, + ), + elevatedButtonTheme: ElevatedButtonThemeData( + style: ElevatedButton.styleFrom( + backgroundColor: Colors.blue[800], + foregroundColor: Colors.white, + padding: EdgeInsets.symmetric(horizontal: 16, vertical: 12), + textStyle: TextStyle(fontSize: 16, fontWeight: FontWeight.w500), + ), + ), + inputDecorationTheme: InputDecorationTheme( + filled: true, + fillColor: Colors.grey[850], + border: OutlineInputBorder( + borderRadius: BorderRadius.circular(8), + ), + hintStyle: TextStyle(color: Colors.white70), + labelStyle: TextStyle(color: Colors.white), + ), + cardColor: Colors.grey[850], + iconTheme: IconThemeData(color: Colors.white), + dividerColor: Colors.white24, + ); + } +} \ No newline at end of file diff --git a/linux/.gitignore b/linux/.gitignore new file mode 100644 index 0000000..d3896c9 --- /dev/null +++ b/linux/.gitignore @@ -0,0 +1 @@ +flutter/ephemeral diff --git a/linux/CMakeLists.txt b/linux/CMakeLists.txt new file mode 100644 index 0000000..0e385cb --- /dev/null +++ b/linux/CMakeLists.txt @@ -0,0 +1,128 @@ +# Project-level configuration. +cmake_minimum_required(VERSION 3.13) +project(runner LANGUAGES CXX) + +# The name of the executable created for the application. Change this to change +# the on-disk name of your application. +set(BINARY_NAME "environment_monitoring_app") +# The unique GTK application identifier for this application. See: +# https://wiki.gnome.org/HowDoI/ChooseApplicationID +set(APPLICATION_ID "com.example.environment_monitoring_app") + +# Explicitly opt in to modern CMake behaviors to avoid warnings with recent +# versions of CMake. +cmake_policy(SET CMP0063 NEW) + +# Load bundled libraries from the lib/ directory relative to the binary. +set(CMAKE_INSTALL_RPATH "$ORIGIN/lib") + +# Root filesystem for cross-building. +if(FLUTTER_TARGET_PLATFORM_SYSROOT) + set(CMAKE_SYSROOT ${FLUTTER_TARGET_PLATFORM_SYSROOT}) + set(CMAKE_FIND_ROOT_PATH ${CMAKE_SYSROOT}) + set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) + set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY) + set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) + set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) +endif() + +# Define build configuration options. +if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES) + set(CMAKE_BUILD_TYPE "Debug" CACHE + STRING "Flutter build mode" FORCE) + set_property(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS + "Debug" "Profile" "Release") +endif() + +# Compilation settings that should be applied to most targets. +# +# Be cautious about adding new options here, as plugins use this function by +# default. In most cases, you should add new options to specific targets instead +# of modifying this function. +function(APPLY_STANDARD_SETTINGS TARGET) + target_compile_features(${TARGET} PUBLIC cxx_std_14) + target_compile_options(${TARGET} PRIVATE -Wall -Werror) + target_compile_options(${TARGET} PRIVATE "$<$>:-O3>") + target_compile_definitions(${TARGET} PRIVATE "$<$>:NDEBUG>") +endfunction() + +# Flutter library and tool build rules. +set(FLUTTER_MANAGED_DIR "${CMAKE_CURRENT_SOURCE_DIR}/flutter") +add_subdirectory(${FLUTTER_MANAGED_DIR}) + +# System-level dependencies. +find_package(PkgConfig REQUIRED) +pkg_check_modules(GTK REQUIRED IMPORTED_TARGET gtk+-3.0) + +# Application build; see runner/CMakeLists.txt. +add_subdirectory("runner") + +# Run the Flutter tool portions of the build. This must not be removed. +add_dependencies(${BINARY_NAME} flutter_assemble) + +# Only the install-generated bundle's copy of the executable will launch +# correctly, since the resources must in the right relative locations. To avoid +# people trying to run the unbundled copy, put it in a subdirectory instead of +# the default top-level location. +set_target_properties(${BINARY_NAME} + PROPERTIES + RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/intermediates_do_not_run" +) + + +# Generated plugin build rules, which manage building the plugins and adding +# them to the application. +include(flutter/generated_plugins.cmake) + + +# === Installation === +# By default, "installing" just makes a relocatable bundle in the build +# directory. +set(BUILD_BUNDLE_DIR "${PROJECT_BINARY_DIR}/bundle") +if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) + set(CMAKE_INSTALL_PREFIX "${BUILD_BUNDLE_DIR}" CACHE PATH "..." FORCE) +endif() + +# Start with a clean build bundle directory every time. +install(CODE " + file(REMOVE_RECURSE \"${BUILD_BUNDLE_DIR}/\") + " COMPONENT Runtime) + +set(INSTALL_BUNDLE_DATA_DIR "${CMAKE_INSTALL_PREFIX}/data") +set(INSTALL_BUNDLE_LIB_DIR "${CMAKE_INSTALL_PREFIX}/lib") + +install(TARGETS ${BINARY_NAME} RUNTIME DESTINATION "${CMAKE_INSTALL_PREFIX}" + COMPONENT Runtime) + +install(FILES "${FLUTTER_ICU_DATA_FILE}" DESTINATION "${INSTALL_BUNDLE_DATA_DIR}" + COMPONENT Runtime) + +install(FILES "${FLUTTER_LIBRARY}" DESTINATION "${INSTALL_BUNDLE_LIB_DIR}" + COMPONENT Runtime) + +foreach(bundled_library ${PLUGIN_BUNDLED_LIBRARIES}) + install(FILES "${bundled_library}" + DESTINATION "${INSTALL_BUNDLE_LIB_DIR}" + COMPONENT Runtime) +endforeach(bundled_library) + +# Copy the native assets provided by the build.dart from all packages. +set(NATIVE_ASSETS_DIR "${PROJECT_BUILD_DIR}native_assets/linux/") +install(DIRECTORY "${NATIVE_ASSETS_DIR}" + DESTINATION "${INSTALL_BUNDLE_LIB_DIR}" + COMPONENT Runtime) + +# Fully re-copy the assets directory on each build to avoid having stale files +# from a previous install. +set(FLUTTER_ASSET_DIR_NAME "flutter_assets") +install(CODE " + file(REMOVE_RECURSE \"${INSTALL_BUNDLE_DATA_DIR}/${FLUTTER_ASSET_DIR_NAME}\") + " COMPONENT Runtime) +install(DIRECTORY "${PROJECT_BUILD_DIR}/${FLUTTER_ASSET_DIR_NAME}" + DESTINATION "${INSTALL_BUNDLE_DATA_DIR}" COMPONENT Runtime) + +# Install the AOT library on non-Debug builds only. +if(NOT CMAKE_BUILD_TYPE MATCHES "Debug") + install(FILES "${AOT_LIBRARY}" DESTINATION "${INSTALL_BUNDLE_LIB_DIR}" + COMPONENT Runtime) +endif() diff --git a/linux/flutter/CMakeLists.txt b/linux/flutter/CMakeLists.txt new file mode 100644 index 0000000..d5bd016 --- /dev/null +++ b/linux/flutter/CMakeLists.txt @@ -0,0 +1,88 @@ +# This file controls Flutter-level build steps. It should not be edited. +cmake_minimum_required(VERSION 3.10) + +set(EPHEMERAL_DIR "${CMAKE_CURRENT_SOURCE_DIR}/ephemeral") + +# Configuration provided via flutter tool. +include(${EPHEMERAL_DIR}/generated_config.cmake) + +# TODO: Move the rest of this into files in ephemeral. See +# https://github.com/flutter/flutter/issues/57146. + +# Serves the same purpose as list(TRANSFORM ... PREPEND ...), +# which isn't available in 3.10. +function(list_prepend LIST_NAME PREFIX) + set(NEW_LIST "") + foreach(element ${${LIST_NAME}}) + list(APPEND NEW_LIST "${PREFIX}${element}") + endforeach(element) + set(${LIST_NAME} "${NEW_LIST}" PARENT_SCOPE) +endfunction() + +# === Flutter Library === +# System-level dependencies. +find_package(PkgConfig REQUIRED) +pkg_check_modules(GTK REQUIRED IMPORTED_TARGET gtk+-3.0) +pkg_check_modules(GLIB REQUIRED IMPORTED_TARGET glib-2.0) +pkg_check_modules(GIO REQUIRED IMPORTED_TARGET gio-2.0) + +set(FLUTTER_LIBRARY "${EPHEMERAL_DIR}/libflutter_linux_gtk.so") + +# Published to parent scope for install step. +set(FLUTTER_LIBRARY ${FLUTTER_LIBRARY} PARENT_SCOPE) +set(FLUTTER_ICU_DATA_FILE "${EPHEMERAL_DIR}/icudtl.dat" PARENT_SCOPE) +set(PROJECT_BUILD_DIR "${PROJECT_DIR}/build/" PARENT_SCOPE) +set(AOT_LIBRARY "${PROJECT_DIR}/build/lib/libapp.so" PARENT_SCOPE) + +list(APPEND FLUTTER_LIBRARY_HEADERS + "fl_basic_message_channel.h" + "fl_binary_codec.h" + "fl_binary_messenger.h" + "fl_dart_project.h" + "fl_engine.h" + "fl_json_message_codec.h" + "fl_json_method_codec.h" + "fl_message_codec.h" + "fl_method_call.h" + "fl_method_channel.h" + "fl_method_codec.h" + "fl_method_response.h" + "fl_plugin_registrar.h" + "fl_plugin_registry.h" + "fl_standard_message_codec.h" + "fl_standard_method_codec.h" + "fl_string_codec.h" + "fl_value.h" + "fl_view.h" + "flutter_linux.h" +) +list_prepend(FLUTTER_LIBRARY_HEADERS "${EPHEMERAL_DIR}/flutter_linux/") +add_library(flutter INTERFACE) +target_include_directories(flutter INTERFACE + "${EPHEMERAL_DIR}" +) +target_link_libraries(flutter INTERFACE "${FLUTTER_LIBRARY}") +target_link_libraries(flutter INTERFACE + PkgConfig::GTK + PkgConfig::GLIB + PkgConfig::GIO +) +add_dependencies(flutter flutter_assemble) + +# === Flutter tool backend === +# _phony_ is a non-existent file to force this command to run every time, +# since currently there's no way to get a full input/output list from the +# flutter tool. +add_custom_command( + OUTPUT ${FLUTTER_LIBRARY} ${FLUTTER_LIBRARY_HEADERS} + ${CMAKE_CURRENT_BINARY_DIR}/_phony_ + COMMAND ${CMAKE_COMMAND} -E env + ${FLUTTER_TOOL_ENVIRONMENT} + "${FLUTTER_ROOT}/packages/flutter_tools/bin/tool_backend.sh" + ${FLUTTER_TARGET_PLATFORM} ${CMAKE_BUILD_TYPE} + VERBATIM +) +add_custom_target(flutter_assemble DEPENDS + "${FLUTTER_LIBRARY}" + ${FLUTTER_LIBRARY_HEADERS} +) diff --git a/linux/flutter/generated_plugin_registrant.cc b/linux/flutter/generated_plugin_registrant.cc new file mode 100644 index 0000000..64a0ece --- /dev/null +++ b/linux/flutter/generated_plugin_registrant.cc @@ -0,0 +1,15 @@ +// +// Generated file. Do not edit. +// + +// clang-format off + +#include "generated_plugin_registrant.h" + +#include + +void fl_register_plugins(FlPluginRegistry* registry) { + g_autoptr(FlPluginRegistrar) file_selector_linux_registrar = + fl_plugin_registry_get_registrar_for_plugin(registry, "FileSelectorPlugin"); + file_selector_plugin_register_with_registrar(file_selector_linux_registrar); +} diff --git a/linux/flutter/generated_plugin_registrant.h b/linux/flutter/generated_plugin_registrant.h new file mode 100644 index 0000000..e0f0a47 --- /dev/null +++ b/linux/flutter/generated_plugin_registrant.h @@ -0,0 +1,15 @@ +// +// Generated file. Do not edit. +// + +// clang-format off + +#ifndef GENERATED_PLUGIN_REGISTRANT_ +#define GENERATED_PLUGIN_REGISTRANT_ + +#include + +// Registers Flutter plugins. +void fl_register_plugins(FlPluginRegistry* registry); + +#endif // GENERATED_PLUGIN_REGISTRANT_ diff --git a/linux/flutter/generated_plugins.cmake b/linux/flutter/generated_plugins.cmake new file mode 100644 index 0000000..2db3c22 --- /dev/null +++ b/linux/flutter/generated_plugins.cmake @@ -0,0 +1,24 @@ +# +# Generated file, do not edit. +# + +list(APPEND FLUTTER_PLUGIN_LIST + file_selector_linux +) + +list(APPEND FLUTTER_FFI_PLUGIN_LIST +) + +set(PLUGIN_BUNDLED_LIBRARIES) + +foreach(plugin ${FLUTTER_PLUGIN_LIST}) + add_subdirectory(flutter/ephemeral/.plugin_symlinks/${plugin}/linux plugins/${plugin}) + target_link_libraries(${BINARY_NAME} PRIVATE ${plugin}_plugin) + list(APPEND PLUGIN_BUNDLED_LIBRARIES $) + list(APPEND PLUGIN_BUNDLED_LIBRARIES ${${plugin}_bundled_libraries}) +endforeach(plugin) + +foreach(ffi_plugin ${FLUTTER_FFI_PLUGIN_LIST}) + add_subdirectory(flutter/ephemeral/.plugin_symlinks/${ffi_plugin}/linux plugins/${ffi_plugin}) + list(APPEND PLUGIN_BUNDLED_LIBRARIES ${${ffi_plugin}_bundled_libraries}) +endforeach(ffi_plugin) diff --git a/linux/runner/CMakeLists.txt b/linux/runner/CMakeLists.txt new file mode 100644 index 0000000..e97dabc --- /dev/null +++ b/linux/runner/CMakeLists.txt @@ -0,0 +1,26 @@ +cmake_minimum_required(VERSION 3.13) +project(runner LANGUAGES CXX) + +# Define the application target. To change its name, change BINARY_NAME in the +# top-level CMakeLists.txt, not the value here, or `flutter run` will no longer +# work. +# +# Any new source files that you add to the application should be added here. +add_executable(${BINARY_NAME} + "main.cc" + "my_application.cc" + "${FLUTTER_MANAGED_DIR}/generated_plugin_registrant.cc" +) + +# Apply the standard set of build settings. This can be removed for applications +# that need different build settings. +apply_standard_settings(${BINARY_NAME}) + +# Add preprocessor definitions for the application ID. +add_definitions(-DAPPLICATION_ID="${APPLICATION_ID}") + +# Add dependency libraries. Add any application-specific dependencies here. +target_link_libraries(${BINARY_NAME} PRIVATE flutter) +target_link_libraries(${BINARY_NAME} PRIVATE PkgConfig::GTK) + +target_include_directories(${BINARY_NAME} PRIVATE "${CMAKE_SOURCE_DIR}") diff --git a/linux/runner/main.cc b/linux/runner/main.cc new file mode 100644 index 0000000..e7c5c54 --- /dev/null +++ b/linux/runner/main.cc @@ -0,0 +1,6 @@ +#include "my_application.h" + +int main(int argc, char** argv) { + g_autoptr(MyApplication) app = my_application_new(); + return g_application_run(G_APPLICATION(app), argc, argv); +} diff --git a/linux/runner/my_application.cc b/linux/runner/my_application.cc new file mode 100644 index 0000000..17ec4f2 --- /dev/null +++ b/linux/runner/my_application.cc @@ -0,0 +1,130 @@ +#include "my_application.h" + +#include +#ifdef GDK_WINDOWING_X11 +#include +#endif + +#include "flutter/generated_plugin_registrant.h" + +struct _MyApplication { + GtkApplication parent_instance; + char** dart_entrypoint_arguments; +}; + +G_DEFINE_TYPE(MyApplication, my_application, GTK_TYPE_APPLICATION) + +// Implements GApplication::activate. +static void my_application_activate(GApplication* application) { + MyApplication* self = MY_APPLICATION(application); + GtkWindow* window = + GTK_WINDOW(gtk_application_window_new(GTK_APPLICATION(application))); + + // Use a header bar when running in GNOME as this is the common style used + // by applications and is the setup most users will be using (e.g. Ubuntu + // desktop). + // If running on X and not using GNOME then just use a traditional title bar + // in case the window manager does more exotic layout, e.g. tiling. + // If running on Wayland assume the header bar will work (may need changing + // if future cases occur). + gboolean use_header_bar = TRUE; +#ifdef GDK_WINDOWING_X11 + GdkScreen* screen = gtk_window_get_screen(window); + if (GDK_IS_X11_SCREEN(screen)) { + const gchar* wm_name = gdk_x11_screen_get_window_manager_name(screen); + if (g_strcmp0(wm_name, "GNOME Shell") != 0) { + use_header_bar = FALSE; + } + } +#endif + if (use_header_bar) { + GtkHeaderBar* header_bar = GTK_HEADER_BAR(gtk_header_bar_new()); + gtk_widget_show(GTK_WIDGET(header_bar)); + gtk_header_bar_set_title(header_bar, "environment_monitoring_app"); + gtk_header_bar_set_show_close_button(header_bar, TRUE); + gtk_window_set_titlebar(window, GTK_WIDGET(header_bar)); + } else { + gtk_window_set_title(window, "environment_monitoring_app"); + } + + gtk_window_set_default_size(window, 1280, 720); + gtk_widget_show(GTK_WIDGET(window)); + + g_autoptr(FlDartProject) project = fl_dart_project_new(); + fl_dart_project_set_dart_entrypoint_arguments(project, self->dart_entrypoint_arguments); + + FlView* view = fl_view_new(project); + gtk_widget_show(GTK_WIDGET(view)); + gtk_container_add(GTK_CONTAINER(window), GTK_WIDGET(view)); + + fl_register_plugins(FL_PLUGIN_REGISTRY(view)); + + gtk_widget_grab_focus(GTK_WIDGET(view)); +} + +// Implements GApplication::local_command_line. +static gboolean my_application_local_command_line(GApplication* application, gchar*** arguments, int* exit_status) { + MyApplication* self = MY_APPLICATION(application); + // Strip out the first argument as it is the binary name. + self->dart_entrypoint_arguments = g_strdupv(*arguments + 1); + + g_autoptr(GError) error = nullptr; + if (!g_application_register(application, nullptr, &error)) { + g_warning("Failed to register: %s", error->message); + *exit_status = 1; + return TRUE; + } + + g_application_activate(application); + *exit_status = 0; + + return TRUE; +} + +// Implements GApplication::startup. +static void my_application_startup(GApplication* application) { + //MyApplication* self = MY_APPLICATION(object); + + // Perform any actions required at application startup. + + G_APPLICATION_CLASS(my_application_parent_class)->startup(application); +} + +// Implements GApplication::shutdown. +static void my_application_shutdown(GApplication* application) { + //MyApplication* self = MY_APPLICATION(object); + + // Perform any actions required at application shutdown. + + G_APPLICATION_CLASS(my_application_parent_class)->shutdown(application); +} + +// Implements GObject::dispose. +static void my_application_dispose(GObject* object) { + MyApplication* self = MY_APPLICATION(object); + g_clear_pointer(&self->dart_entrypoint_arguments, g_strfreev); + G_OBJECT_CLASS(my_application_parent_class)->dispose(object); +} + +static void my_application_class_init(MyApplicationClass* klass) { + G_APPLICATION_CLASS(klass)->activate = my_application_activate; + G_APPLICATION_CLASS(klass)->local_command_line = my_application_local_command_line; + G_APPLICATION_CLASS(klass)->startup = my_application_startup; + G_APPLICATION_CLASS(klass)->shutdown = my_application_shutdown; + G_OBJECT_CLASS(klass)->dispose = my_application_dispose; +} + +static void my_application_init(MyApplication* self) {} + +MyApplication* my_application_new() { + // Set the program name to the application ID, which helps various systems + // like GTK and desktop environments map this running application to its + // corresponding .desktop file. This ensures better integration by allowing + // the application to be recognized beyond its binary name. + g_set_prgname(APPLICATION_ID); + + return MY_APPLICATION(g_object_new(my_application_get_type(), + "application-id", APPLICATION_ID, + "flags", G_APPLICATION_NON_UNIQUE, + nullptr)); +} diff --git a/linux/runner/my_application.h b/linux/runner/my_application.h new file mode 100644 index 0000000..72271d5 --- /dev/null +++ b/linux/runner/my_application.h @@ -0,0 +1,18 @@ +#ifndef FLUTTER_MY_APPLICATION_H_ +#define FLUTTER_MY_APPLICATION_H_ + +#include + +G_DECLARE_FINAL_TYPE(MyApplication, my_application, MY, APPLICATION, + GtkApplication) + +/** + * my_application_new: + * + * Creates a new Flutter-based application. + * + * Returns: a new #MyApplication. + */ +MyApplication* my_application_new(); + +#endif // FLUTTER_MY_APPLICATION_H_ diff --git a/macos/.gitignore b/macos/.gitignore new file mode 100644 index 0000000..746adbb --- /dev/null +++ b/macos/.gitignore @@ -0,0 +1,7 @@ +# Flutter-related +**/Flutter/ephemeral/ +**/Pods/ + +# Xcode-related +**/dgph +**/xcuserdata/ diff --git a/macos/Flutter/Flutter-Debug.xcconfig b/macos/Flutter/Flutter-Debug.xcconfig new file mode 100644 index 0000000..c2efd0b --- /dev/null +++ b/macos/Flutter/Flutter-Debug.xcconfig @@ -0,0 +1 @@ +#include "ephemeral/Flutter-Generated.xcconfig" diff --git a/macos/Flutter/Flutter-Release.xcconfig b/macos/Flutter/Flutter-Release.xcconfig new file mode 100644 index 0000000..c2efd0b --- /dev/null +++ b/macos/Flutter/Flutter-Release.xcconfig @@ -0,0 +1 @@ +#include "ephemeral/Flutter-Generated.xcconfig" diff --git a/macos/Flutter/GeneratedPluginRegistrant.swift b/macos/Flutter/GeneratedPluginRegistrant.swift new file mode 100644 index 0000000..f92cb6d --- /dev/null +++ b/macos/Flutter/GeneratedPluginRegistrant.swift @@ -0,0 +1,24 @@ +// +// Generated file. Do not edit. +// + +import FlutterMacOS +import Foundation + +import connectivity_plus +import file_picker +import file_selector_macos +import geolocator_apple +import path_provider_foundation +import shared_preferences_foundation +import sqflite_darwin + +func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) { + ConnectivityPlusPlugin.register(with: registry.registrar(forPlugin: "ConnectivityPlusPlugin")) + FilePickerPlugin.register(with: registry.registrar(forPlugin: "FilePickerPlugin")) + FileSelectorPlugin.register(with: registry.registrar(forPlugin: "FileSelectorPlugin")) + GeolocatorPlugin.register(with: registry.registrar(forPlugin: "GeolocatorPlugin")) + PathProviderPlugin.register(with: registry.registrar(forPlugin: "PathProviderPlugin")) + SharedPreferencesPlugin.register(with: registry.registrar(forPlugin: "SharedPreferencesPlugin")) + SqflitePlugin.register(with: registry.registrar(forPlugin: "SqflitePlugin")) +} diff --git a/macos/Runner.xcodeproj/project.pbxproj b/macos/Runner.xcodeproj/project.pbxproj new file mode 100644 index 0000000..f952639 --- /dev/null +++ b/macos/Runner.xcodeproj/project.pbxproj @@ -0,0 +1,705 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 54; + objects = { + +/* Begin PBXAggregateTarget section */ + 33CC111A2044C6BA0003C045 /* Flutter Assemble */ = { + isa = PBXAggregateTarget; + buildConfigurationList = 33CC111B2044C6BA0003C045 /* Build configuration list for PBXAggregateTarget "Flutter Assemble" */; + buildPhases = ( + 33CC111E2044C6BF0003C045 /* ShellScript */, + ); + dependencies = ( + ); + name = "Flutter Assemble"; + productName = FLX; + }; +/* End PBXAggregateTarget section */ + +/* Begin PBXBuildFile section */ + 331C80D8294CF71000263BE5 /* RunnerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 331C80D7294CF71000263BE5 /* RunnerTests.swift */; }; + 335BBD1B22A9A15E00E9071D /* GeneratedPluginRegistrant.swift in Sources */ = {isa = PBXBuildFile; fileRef = 335BBD1A22A9A15E00E9071D /* GeneratedPluginRegistrant.swift */; }; + 33CC10F12044A3C60003C045 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33CC10F02044A3C60003C045 /* AppDelegate.swift */; }; + 33CC10F32044A3C60003C045 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 33CC10F22044A3C60003C045 /* Assets.xcassets */; }; + 33CC10F62044A3C60003C045 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 33CC10F42044A3C60003C045 /* MainMenu.xib */; }; + 33CC11132044BFA00003C045 /* MainFlutterWindow.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33CC11122044BFA00003C045 /* MainFlutterWindow.swift */; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + 331C80D9294CF71000263BE5 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 33CC10E52044A3C60003C045 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 33CC10EC2044A3C60003C045; + remoteInfo = Runner; + }; + 33CC111F2044C79F0003C045 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 33CC10E52044A3C60003C045 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 33CC111A2044C6BA0003C045; + remoteInfo = FLX; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXCopyFilesBuildPhase section */ + 33CC110E2044A8840003C045 /* Bundle Framework */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + ); + name = "Bundle Framework"; + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + 331C80D5294CF71000263BE5 /* RunnerTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = RunnerTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + 331C80D7294CF71000263BE5 /* RunnerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RunnerTests.swift; sourceTree = ""; }; + 333000ED22D3DE5D00554162 /* Warnings.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Warnings.xcconfig; sourceTree = ""; }; + 335BBD1A22A9A15E00E9071D /* GeneratedPluginRegistrant.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GeneratedPluginRegistrant.swift; sourceTree = ""; }; + 33CC10ED2044A3C60003C045 /* environment_monitoring_app.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "environment_monitoring_app.app"; sourceTree = BUILT_PRODUCTS_DIR; }; + 33CC10F02044A3C60003C045 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; + 33CC10F22044A3C60003C045 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Assets.xcassets; path = Runner/Assets.xcassets; sourceTree = ""; }; + 33CC10F52044A3C60003C045 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/MainMenu.xib; sourceTree = ""; }; + 33CC10F72044A3C60003C045 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = Info.plist; path = Runner/Info.plist; sourceTree = ""; }; + 33CC11122044BFA00003C045 /* MainFlutterWindow.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MainFlutterWindow.swift; sourceTree = ""; }; + 33CEB47222A05771004F2AC0 /* Flutter-Debug.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = "Flutter-Debug.xcconfig"; sourceTree = ""; }; + 33CEB47422A05771004F2AC0 /* Flutter-Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = "Flutter-Release.xcconfig"; sourceTree = ""; }; + 33CEB47722A0578A004F2AC0 /* Flutter-Generated.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = "Flutter-Generated.xcconfig"; path = "ephemeral/Flutter-Generated.xcconfig"; sourceTree = ""; }; + 33E51913231747F40026EE4D /* DebugProfile.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = DebugProfile.entitlements; sourceTree = ""; }; + 33E51914231749380026EE4D /* Release.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.entitlements; path = Release.entitlements; sourceTree = ""; }; + 33E5194F232828860026EE4D /* AppInfo.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = AppInfo.xcconfig; sourceTree = ""; }; + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Release.xcconfig; sourceTree = ""; }; + 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = Debug.xcconfig; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 331C80D2294CF70F00263BE5 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 33CC10EA2044A3C60003C045 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 331C80D6294CF71000263BE5 /* RunnerTests */ = { + isa = PBXGroup; + children = ( + 331C80D7294CF71000263BE5 /* RunnerTests.swift */, + ); + path = RunnerTests; + sourceTree = ""; + }; + 33BA886A226E78AF003329D5 /* Configs */ = { + isa = PBXGroup; + children = ( + 33E5194F232828860026EE4D /* AppInfo.xcconfig */, + 9740EEB21CF90195004384FC /* Debug.xcconfig */, + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */, + 333000ED22D3DE5D00554162 /* Warnings.xcconfig */, + ); + path = Configs; + sourceTree = ""; + }; + 33CC10E42044A3C60003C045 = { + isa = PBXGroup; + children = ( + 33FAB671232836740065AC1E /* Runner */, + 33CEB47122A05771004F2AC0 /* Flutter */, + 331C80D6294CF71000263BE5 /* RunnerTests */, + 33CC10EE2044A3C60003C045 /* Products */, + D73912EC22F37F3D000D13A0 /* Frameworks */, + ); + sourceTree = ""; + }; + 33CC10EE2044A3C60003C045 /* Products */ = { + isa = PBXGroup; + children = ( + 33CC10ED2044A3C60003C045 /* environment_monitoring_app.app */, + 331C80D5294CF71000263BE5 /* RunnerTests.xctest */, + ); + name = Products; + sourceTree = ""; + }; + 33CC11242044D66E0003C045 /* Resources */ = { + isa = PBXGroup; + children = ( + 33CC10F22044A3C60003C045 /* Assets.xcassets */, + 33CC10F42044A3C60003C045 /* MainMenu.xib */, + 33CC10F72044A3C60003C045 /* Info.plist */, + ); + name = Resources; + path = ..; + sourceTree = ""; + }; + 33CEB47122A05771004F2AC0 /* Flutter */ = { + isa = PBXGroup; + children = ( + 335BBD1A22A9A15E00E9071D /* GeneratedPluginRegistrant.swift */, + 33CEB47222A05771004F2AC0 /* Flutter-Debug.xcconfig */, + 33CEB47422A05771004F2AC0 /* Flutter-Release.xcconfig */, + 33CEB47722A0578A004F2AC0 /* Flutter-Generated.xcconfig */, + ); + path = Flutter; + sourceTree = ""; + }; + 33FAB671232836740065AC1E /* Runner */ = { + isa = PBXGroup; + children = ( + 33CC10F02044A3C60003C045 /* AppDelegate.swift */, + 33CC11122044BFA00003C045 /* MainFlutterWindow.swift */, + 33E51913231747F40026EE4D /* DebugProfile.entitlements */, + 33E51914231749380026EE4D /* Release.entitlements */, + 33CC11242044D66E0003C045 /* Resources */, + 33BA886A226E78AF003329D5 /* Configs */, + ); + path = Runner; + sourceTree = ""; + }; + D73912EC22F37F3D000D13A0 /* Frameworks */ = { + isa = PBXGroup; + children = ( + ); + name = Frameworks; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 331C80D4294CF70F00263BE5 /* RunnerTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 331C80DE294CF71000263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */; + buildPhases = ( + 331C80D1294CF70F00263BE5 /* Sources */, + 331C80D2294CF70F00263BE5 /* Frameworks */, + 331C80D3294CF70F00263BE5 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 331C80DA294CF71000263BE5 /* PBXTargetDependency */, + ); + name = RunnerTests; + productName = RunnerTests; + productReference = 331C80D5294CF71000263BE5 /* RunnerTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; + 33CC10EC2044A3C60003C045 /* Runner */ = { + isa = PBXNativeTarget; + buildConfigurationList = 33CC10FB2044A3C60003C045 /* Build configuration list for PBXNativeTarget "Runner" */; + buildPhases = ( + 33CC10E92044A3C60003C045 /* Sources */, + 33CC10EA2044A3C60003C045 /* Frameworks */, + 33CC10EB2044A3C60003C045 /* Resources */, + 33CC110E2044A8840003C045 /* Bundle Framework */, + 3399D490228B24CF009A79C7 /* ShellScript */, + ); + buildRules = ( + ); + dependencies = ( + 33CC11202044C79F0003C045 /* PBXTargetDependency */, + ); + name = Runner; + productName = Runner; + productReference = 33CC10ED2044A3C60003C045 /* environment_monitoring_app.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 33CC10E52044A3C60003C045 /* Project object */ = { + isa = PBXProject; + attributes = { + BuildIndependentTargetsInParallel = YES; + LastSwiftUpdateCheck = 0920; + LastUpgradeCheck = 1510; + ORGANIZATIONNAME = ""; + TargetAttributes = { + 331C80D4294CF70F00263BE5 = { + CreatedOnToolsVersion = 14.0; + TestTargetID = 33CC10EC2044A3C60003C045; + }; + 33CC10EC2044A3C60003C045 = { + CreatedOnToolsVersion = 9.2; + LastSwiftMigration = 1100; + ProvisioningStyle = Automatic; + SystemCapabilities = { + com.apple.Sandbox = { + enabled = 1; + }; + }; + }; + 33CC111A2044C6BA0003C045 = { + CreatedOnToolsVersion = 9.2; + ProvisioningStyle = Manual; + }; + }; + }; + buildConfigurationList = 33CC10E82044A3C60003C045 /* Build configuration list for PBXProject "Runner" */; + compatibilityVersion = "Xcode 9.3"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = 33CC10E42044A3C60003C045; + productRefGroup = 33CC10EE2044A3C60003C045 /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 33CC10EC2044A3C60003C045 /* Runner */, + 331C80D4294CF70F00263BE5 /* RunnerTests */, + 33CC111A2044C6BA0003C045 /* Flutter Assemble */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 331C80D3294CF70F00263BE5 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 33CC10EB2044A3C60003C045 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 33CC10F32044A3C60003C045 /* Assets.xcassets in Resources */, + 33CC10F62044A3C60003C045 /* MainMenu.xib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXShellScriptBuildPhase section */ + 3399D490228B24CF009A79C7 /* ShellScript */ = { + isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + ); + outputFileListPaths = ( + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "echo \"$PRODUCT_NAME.app\" > \"$PROJECT_DIR\"/Flutter/ephemeral/.app_filename && \"$FLUTTER_ROOT\"/packages/flutter_tools/bin/macos_assemble.sh embed\n"; + }; + 33CC111E2044C6BF0003C045 /* ShellScript */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + Flutter/ephemeral/FlutterInputs.xcfilelist, + ); + inputPaths = ( + Flutter/ephemeral/tripwire, + ); + outputFileListPaths = ( + Flutter/ephemeral/FlutterOutputs.xcfilelist, + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"$FLUTTER_ROOT\"/packages/flutter_tools/bin/macos_assemble.sh && touch Flutter/ephemeral/tripwire"; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 331C80D1294CF70F00263BE5 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 331C80D8294CF71000263BE5 /* RunnerTests.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 33CC10E92044A3C60003C045 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 33CC11132044BFA00003C045 /* MainFlutterWindow.swift in Sources */, + 33CC10F12044A3C60003C045 /* AppDelegate.swift in Sources */, + 335BBD1B22A9A15E00E9071D /* GeneratedPluginRegistrant.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + 331C80DA294CF71000263BE5 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 33CC10EC2044A3C60003C045 /* Runner */; + targetProxy = 331C80D9294CF71000263BE5 /* PBXContainerItemProxy */; + }; + 33CC11202044C79F0003C045 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 33CC111A2044C6BA0003C045 /* Flutter Assemble */; + targetProxy = 33CC111F2044C79F0003C045 /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin PBXVariantGroup section */ + 33CC10F42044A3C60003C045 /* MainMenu.xib */ = { + isa = PBXVariantGroup; + children = ( + 33CC10F52044A3C60003C045 /* Base */, + ); + name = MainMenu.xib; + path = Runner; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + 331C80DB294CF71000263BE5 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = com.example.environmentMonitoringApp.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/environment_monitoring_app.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/environment_monitoring_app"; + }; + name = Debug; + }; + 331C80DC294CF71000263BE5 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = com.example.environmentMonitoringApp.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/environment_monitoring_app.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/environment_monitoring_app"; + }; + name = Release; + }; + 331C80DD294CF71000263BE5 /* Profile */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = com.example.environmentMonitoringApp.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/environment_monitoring_app.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/environment_monitoring_app"; + }; + name = Profile; + }; + 338D0CE9231458BD00FA5F75 /* Profile */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CODE_SIGN_IDENTITY = "-"; + COPY_PHASE_STRIP = NO; + DEAD_CODE_STRIPPING = YES; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 10.14; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = macosx; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + }; + name = Profile; + }; + 338D0CEA231458BD00FA5F75 /* Profile */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 33E5194F232828860026EE4D /* AppInfo.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_ENTITLEMENTS = Runner/DebugProfile.entitlements; + CODE_SIGN_STYLE = Automatic; + COMBINE_HIDPI_IMAGES = YES; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + ); + PROVISIONING_PROFILE_SPECIFIER = ""; + SWIFT_VERSION = 5.0; + }; + name = Profile; + }; + 338D0CEB231458BD00FA5F75 /* Profile */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_STYLE = Manual; + PRODUCT_NAME = "$(TARGET_NAME)"; + }; + name = Profile; + }; + 33CC10F92044A3C60003C045 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CODE_SIGN_IDENTITY = "-"; + COPY_PHASE_STRIP = NO; + DEAD_CODE_STRIPPING = YES; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 10.14; + MTL_ENABLE_DEBUG_INFO = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = macosx; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + }; + name = Debug; + }; + 33CC10FA2044A3C60003C045 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CODE_SIGN_IDENTITY = "-"; + COPY_PHASE_STRIP = NO; + DEAD_CODE_STRIPPING = YES; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 10.14; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = macosx; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + }; + name = Release; + }; + 33CC10FC2044A3C60003C045 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 33E5194F232828860026EE4D /* AppInfo.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_ENTITLEMENTS = Runner/DebugProfile.entitlements; + CODE_SIGN_STYLE = Automatic; + COMBINE_HIDPI_IMAGES = YES; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + ); + PROVISIONING_PROFILE_SPECIFIER = ""; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + }; + name = Debug; + }; + 33CC10FD2044A3C60003C045 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 33E5194F232828860026EE4D /* AppInfo.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_ENTITLEMENTS = Runner/Release.entitlements; + CODE_SIGN_STYLE = Automatic; + COMBINE_HIDPI_IMAGES = YES; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + ); + PROVISIONING_PROFILE_SPECIFIER = ""; + SWIFT_VERSION = 5.0; + }; + name = Release; + }; + 33CC111C2044C6BA0003C045 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_STYLE = Manual; + PRODUCT_NAME = "$(TARGET_NAME)"; + }; + name = Debug; + }; + 33CC111D2044C6BA0003C045 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_STYLE = Automatic; + PRODUCT_NAME = "$(TARGET_NAME)"; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 331C80DE294CF71000263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 331C80DB294CF71000263BE5 /* Debug */, + 331C80DC294CF71000263BE5 /* Release */, + 331C80DD294CF71000263BE5 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 33CC10E82044A3C60003C045 /* Build configuration list for PBXProject "Runner" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 33CC10F92044A3C60003C045 /* Debug */, + 33CC10FA2044A3C60003C045 /* Release */, + 338D0CE9231458BD00FA5F75 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 33CC10FB2044A3C60003C045 /* Build configuration list for PBXNativeTarget "Runner" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 33CC10FC2044A3C60003C045 /* Debug */, + 33CC10FD2044A3C60003C045 /* Release */, + 338D0CEA231458BD00FA5F75 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 33CC111B2044C6BA0003C045 /* Build configuration list for PBXAggregateTarget "Flutter Assemble" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 33CC111C2044C6BA0003C045 /* Debug */, + 33CC111D2044C6BA0003C045 /* Release */, + 338D0CEB231458BD00FA5F75 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 33CC10E52044A3C60003C045 /* Project object */; +} diff --git a/macos/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/macos/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/macos/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme new file mode 100644 index 0000000..ec54886 --- /dev/null +++ b/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -0,0 +1,99 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/macos/Runner.xcworkspace/contents.xcworkspacedata b/macos/Runner.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..1d526a1 --- /dev/null +++ b/macos/Runner.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/macos/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/macos/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/macos/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/macos/Runner/AppDelegate.swift b/macos/Runner/AppDelegate.swift new file mode 100644 index 0000000..b3c1761 --- /dev/null +++ b/macos/Runner/AppDelegate.swift @@ -0,0 +1,13 @@ +import Cocoa +import FlutterMacOS + +@main +class AppDelegate: FlutterAppDelegate { + override func applicationShouldTerminateAfterLastWindowClosed(_ sender: NSApplication) -> Bool { + return true + } + + override func applicationSupportsSecureRestorableState(_ app: NSApplication) -> Bool { + return true + } +} diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json b/macos/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 0000000..a2ec33f --- /dev/null +++ b/macos/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,68 @@ +{ + "images" : [ + { + "size" : "16x16", + "idiom" : "mac", + "filename" : "app_icon_16.png", + "scale" : "1x" + }, + { + "size" : "16x16", + "idiom" : "mac", + "filename" : "app_icon_32.png", + "scale" : "2x" + }, + { + "size" : "32x32", + "idiom" : "mac", + "filename" : "app_icon_32.png", + "scale" : "1x" + }, + { + "size" : "32x32", + "idiom" : "mac", + "filename" : "app_icon_64.png", + "scale" : "2x" + }, + { + "size" : "128x128", + "idiom" : "mac", + "filename" : "app_icon_128.png", + "scale" : "1x" + }, + { + "size" : "128x128", + "idiom" : "mac", + "filename" : "app_icon_256.png", + "scale" : "2x" + }, + { + "size" : "256x256", + "idiom" : "mac", + "filename" : "app_icon_256.png", + "scale" : "1x" + }, + { + "size" : "256x256", + "idiom" : "mac", + "filename" : "app_icon_512.png", + "scale" : "2x" + }, + { + "size" : "512x512", + "idiom" : "mac", + "filename" : "app_icon_512.png", + "scale" : "1x" + }, + { + "size" : "512x512", + "idiom" : "mac", + "filename" : "app_icon_1024.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png new file mode 100644 index 0000000000000000000000000000000000000000..82b6f9d9a33e198f5747104729e1fcef999772a5 GIT binary patch literal 102994 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ⅅ8MglG&ER{i5lN315cO?EdHNLrg? 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 z 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 Pe7HEdAEg|=c=LY&YVNkY literal 0 HcmV?d00001 diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png new file mode 100644 index 0000000000000000000000000000000000000000..13b35eba55c6dabc3aac36f33d859266c18fa0d0 GIT binary patch literal 5680 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 literal 0 HcmV?d00001 diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_16.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_16.png new file mode 100644 index 0000000000000000000000000000000000000000..0a3f5fa40fb3d1e0710331a48de5d256da3f275d GIT binary patch literal 520 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 literal 0 HcmV?d00001 diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_64.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_64.png new file mode 100644 index 0000000000000000000000000000000000000000..2f1632cfddf3d9dade342351e627a0a75609fb46 GIT binary patch literal 2218 zcmV;b2vzrqP)Px#L}ge>W=%~1DgXcg2mk?xX#fNO00031000^Q000001E2u_0{{R30RRC20H6W@ z1ONa40RR91K%fHv1ONa40RR91KmY&$07g+lumAuE6iGxuRCodHTWf3-RTMruyW6Fu zQYeUM04eX6D5c0FCjKKPrco1(K`<0SL=crI{PC3-^hZU0kQie$gh-5!7z6SH6Q0J% zqot*`H1q{R5fHFYS}dje@;kG=v$L0(yY0?wY2%*c?A&{2?!D*x?m71{of2gv!$5|C z3>qG_BW}7K_yUcT3A5C6QD<+{aq?x;MAUyAiJn#Jv8_zZtQ{P zTRzbL3U9!qVuZzS$xKU10KiW~Bgdcv1-!uAhQxf3a7q+dU6lj?yoO4Lq4TUN4}h{N z*fIM=SS8|C2$(T>w$`t@3Tka!(r!7W`x z-isCVgQD^mG-MJ;XtJuK3V{Vy72GQ83KRWsHU?e*wrhKk=ApIYeDqLi;JI1e zuvv}5^Dc=k7F7?nm3nIw$NVmU-+R>> zyqOR$-2SDpJ}Pt;^RkJytDVXNTsu|mI1`~G7yw`EJR?VkGfNdqK9^^8P`JdtTV&tX4CNcV4 z&N06nZa??Fw1AgQOUSE2AmPE@WO(Fvo`%m`cDgiv(fAeRA%3AGXUbsGw{7Q`cY;1BI#ac3iN$$Hw z0LT0;xc%=q)me?Y*$xI@GRAw?+}>=9D+KTk??-HJ4=A>`V&vKFS75@MKdSF1JTq{S zc1!^8?YA|t+uKigaq!sT;Z!&0F2=k7F0PIU;F$leJLaw2UI6FL^w}OG&!;+b%ya1c z1n+6-inU<0VM-Y_s5iTElq)ThyF?StVcebpGI znw#+zLx2@ah{$_2jn+@}(zJZ{+}_N9BM;z)0yr|gF-4=Iyu@hI*Lk=-A8f#bAzc9f z`Kd6K--x@t04swJVC3JK1cHY-Hq+=|PN-VO;?^_C#;coU6TDP7Bt`;{JTG;!+jj(` zw5cLQ-(Cz-Tlb`A^w7|R56Ce;Wmr0)$KWOUZ6ai0PhzPeHwdl0H(etP zUV`va_i0s-4#DkNM8lUlqI7>YQLf)(lz9Q3Uw`)nc(z3{m5ZE77Ul$V%m)E}3&8L0 z-XaU|eB~Is08eORPk;=<>!1w)Kf}FOVS2l&9~A+@R#koFJ$Czd%Y(ENTV&A~U(IPI z;UY+gf+&6ioZ=roly<0Yst8ck>(M=S?B-ys3mLdM&)ex!hbt+ol|T6CTS+Sc0jv(& z7ijdvFwBq;0a{%3GGwkDKTeG`b+lyj0jjS1OMkYnepCdoosNY`*zmBIo*981BU%%U z@~$z0V`OVtIbEx5pa|Tct|Lg#ZQf5OYMUMRD>Wdxm5SAqV2}3!ceE-M2 z@O~lQ0OiKQp}o9I;?uxCgYVV?FH|?Riri*U$Zi_`V2eiA>l zdSm6;SEm6#T+SpcE8Ro_f2AwxzI z44hfe^WE3!h@W3RDyA_H440cpmYkv*)6m1XazTqw%=E5Xv7^@^^T7Q2wxr+Z2kVYr + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/macos/Runner/Configs/AppInfo.xcconfig b/macos/Runner/Configs/AppInfo.xcconfig new file mode 100644 index 0000000..b3a271f --- /dev/null +++ b/macos/Runner/Configs/AppInfo.xcconfig @@ -0,0 +1,14 @@ +// Application-level settings for the Runner target. +// +// This may be replaced with something auto-generated from metadata (e.g., pubspec.yaml) in the +// future. If not, the values below would default to using the project name when this becomes a +// 'flutter create' template. + +// The application's name. By default this is also the title of the Flutter window. +PRODUCT_NAME = environment_monitoring_app + +// The application's bundle identifier +PRODUCT_BUNDLE_IDENTIFIER = com.example.environmentMonitoringApp + +// The copyright displayed in application information +PRODUCT_COPYRIGHT = Copyright © 2025 com.example. All rights reserved. diff --git a/macos/Runner/Configs/Debug.xcconfig b/macos/Runner/Configs/Debug.xcconfig new file mode 100644 index 0000000..36b0fd9 --- /dev/null +++ b/macos/Runner/Configs/Debug.xcconfig @@ -0,0 +1,2 @@ +#include "../../Flutter/Flutter-Debug.xcconfig" +#include "Warnings.xcconfig" diff --git a/macos/Runner/Configs/Release.xcconfig b/macos/Runner/Configs/Release.xcconfig new file mode 100644 index 0000000..dff4f49 --- /dev/null +++ b/macos/Runner/Configs/Release.xcconfig @@ -0,0 +1,2 @@ +#include "../../Flutter/Flutter-Release.xcconfig" +#include "Warnings.xcconfig" diff --git a/macos/Runner/Configs/Warnings.xcconfig b/macos/Runner/Configs/Warnings.xcconfig new file mode 100644 index 0000000..42bcbf4 --- /dev/null +++ b/macos/Runner/Configs/Warnings.xcconfig @@ -0,0 +1,13 @@ +WARNING_CFLAGS = -Wall -Wconditional-uninitialized -Wnullable-to-nonnull-conversion -Wmissing-method-return-type -Woverlength-strings +GCC_WARN_UNDECLARED_SELECTOR = YES +CLANG_UNDEFINED_BEHAVIOR_SANITIZER_NULLABILITY = YES +CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE +CLANG_WARN__DUPLICATE_METHOD_MATCH = YES +CLANG_WARN_PRAGMA_PACK = YES +CLANG_WARN_STRICT_PROTOTYPES = YES +CLANG_WARN_COMMA = YES +GCC_WARN_STRICT_SELECTOR_MATCH = YES +CLANG_WARN_OBJC_REPEATED_USE_OF_WEAK = YES +CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES +GCC_WARN_SHADOW = YES +CLANG_WARN_UNREACHABLE_CODE = YES diff --git a/macos/Runner/DebugProfile.entitlements b/macos/Runner/DebugProfile.entitlements new file mode 100644 index 0000000..dddb8a3 --- /dev/null +++ b/macos/Runner/DebugProfile.entitlements @@ -0,0 +1,12 @@ + + + + + com.apple.security.app-sandbox + + com.apple.security.cs.allow-jit + + com.apple.security.network.server + + + diff --git a/macos/Runner/Info.plist b/macos/Runner/Info.plist new file mode 100644 index 0000000..4789daa --- /dev/null +++ b/macos/Runner/Info.plist @@ -0,0 +1,32 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIconFile + + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + APPL + CFBundleShortVersionString + $(FLUTTER_BUILD_NAME) + CFBundleVersion + $(FLUTTER_BUILD_NUMBER) + LSMinimumSystemVersion + $(MACOSX_DEPLOYMENT_TARGET) + NSHumanReadableCopyright + $(PRODUCT_COPYRIGHT) + NSMainNibFile + MainMenu + NSPrincipalClass + NSApplication + + diff --git a/macos/Runner/MainFlutterWindow.swift b/macos/Runner/MainFlutterWindow.swift new file mode 100644 index 0000000..3cc05eb --- /dev/null +++ b/macos/Runner/MainFlutterWindow.swift @@ -0,0 +1,15 @@ +import Cocoa +import FlutterMacOS + +class MainFlutterWindow: NSWindow { + override func awakeFromNib() { + let flutterViewController = FlutterViewController() + let windowFrame = self.frame + self.contentViewController = flutterViewController + self.setFrame(windowFrame, display: true) + + RegisterGeneratedPlugins(registry: flutterViewController) + + super.awakeFromNib() + } +} diff --git a/macos/Runner/Release.entitlements b/macos/Runner/Release.entitlements new file mode 100644 index 0000000..852fa1a --- /dev/null +++ b/macos/Runner/Release.entitlements @@ -0,0 +1,8 @@ + + + + + com.apple.security.app-sandbox + + + diff --git a/macos/RunnerTests/RunnerTests.swift b/macos/RunnerTests/RunnerTests.swift new file mode 100644 index 0000000..61f3bd1 --- /dev/null +++ b/macos/RunnerTests/RunnerTests.swift @@ -0,0 +1,12 @@ +import Cocoa +import FlutterMacOS +import XCTest + +class RunnerTests: XCTestCase { + + func testExample() { + // If you add code to the Runner application, consider adding tests here. + // See https://developer.apple.com/documentation/xctest for more information about using XCTest. + } + +} diff --git a/pubspec.lock b/pubspec.lock new file mode 100644 index 0000000..e4fc48a --- /dev/null +++ b/pubspec.lock @@ -0,0 +1,939 @@ +# Generated by pub +# See https://dart.dev/tools/pub/glossary#lockfile +packages: + archive: + dependency: transitive + description: + name: archive + sha256: "2fde1607386ab523f7a36bb3e7edb43bd58e6edaf2ffb29d8a6d578b297fdbbd" + url: "https://pub.dev" + source: hosted + version: "4.0.7" + args: + dependency: transitive + description: + name: args + sha256: d0481093c50b1da8910eb0bb301626d4d8eb7284aa739614d2b394ee09e3ea04 + url: "https://pub.dev" + source: hosted + version: "2.7.0" + async: + dependency: transitive + description: + name: async + sha256: "758e6d74e971c3e5aceb4110bfd6698efc7f501675bcfe0c775459a8140750eb" + url: "https://pub.dev" + source: hosted + version: "2.13.0" + boolean_selector: + dependency: transitive + description: + name: boolean_selector + sha256: "8aab1771e1243a5063b8b0ff68042d67334e3feab9e95b9490f9a6ebf73b42ea" + url: "https://pub.dev" + source: hosted + version: "2.1.2" + characters: + dependency: transitive + description: + name: characters + sha256: f71061c654a3380576a52b451dd5532377954cf9dbd272a78fc8479606670803 + url: "https://pub.dev" + source: hosted + version: "1.4.0" + checked_yaml: + dependency: transitive + description: + name: checked_yaml + sha256: "959525d3162f249993882720d52b7e0c833978df229be20702b33d48d91de70f" + url: "https://pub.dev" + source: hosted + version: "2.0.4" + cli_util: + dependency: transitive + description: + name: cli_util + sha256: ff6785f7e9e3c38ac98b2fb035701789de90154024a75b6cb926445e83197d1c + url: "https://pub.dev" + source: hosted + version: "0.4.2" + clock: + dependency: transitive + description: + name: clock + sha256: fddb70d9b5277016c77a80201021d40a2247104d9f4aa7bab7157b7e3f05b84b + url: "https://pub.dev" + source: hosted + version: "1.1.2" + collection: + dependency: transitive + description: + name: collection + sha256: "2f5709ae4d3d59dd8f7cd309b4e023046b57d8a6c82130785d2b0e5868084e76" + url: "https://pub.dev" + source: hosted + version: "1.19.1" + connectivity_plus: + dependency: "direct main" + description: + name: connectivity_plus + sha256: "051849e2bd7c7b3bc5844ea0d096609ddc3a859890ec3a9ac4a65a2620cc1f99" + url: "https://pub.dev" + source: hosted + version: "6.1.4" + connectivity_plus_platform_interface: + dependency: transitive + description: + name: connectivity_plus_platform_interface + sha256: "42657c1715d48b167930d5f34d00222ac100475f73d10162ddf43e714932f204" + url: "https://pub.dev" + source: hosted + version: "2.0.1" + cross_file: + dependency: transitive + description: + name: cross_file + sha256: "7caf6a750a0c04effbb52a676dce9a4a592e10ad35c34d6d2d0e4811160d5670" + url: "https://pub.dev" + source: hosted + version: "0.3.4+2" + crypto: + dependency: transitive + description: + name: crypto + sha256: "1e445881f28f22d6140f181e07737b22f1e099a5e1ff94b0af2f9e4a463f4855" + url: "https://pub.dev" + source: hosted + version: "3.0.6" + cupertino_icons: + dependency: "direct main" + description: + name: cupertino_icons + sha256: ba631d1c7f7bef6b729a622b7b752645a2d076dba9976925b8f25725a30e1ee6 + url: "https://pub.dev" + source: hosted + version: "1.0.8" + dbus: + dependency: transitive + description: + name: dbus + sha256: "79e0c23480ff85dc68de79e2cd6334add97e48f7f4865d17686dd6ea81a47e8c" + url: "https://pub.dev" + source: hosted + version: "0.7.11" + dropdown_search: + dependency: "direct main" + description: + name: dropdown_search + sha256: "55106e8290acaa97ed15bea1fdad82c3cf0c248dd410e651f5a8ac6870f783ab" + url: "https://pub.dev" + source: hosted + version: "5.0.6" + fake_async: + dependency: transitive + description: + name: fake_async + sha256: "5368f224a74523e8d2e7399ea1638b37aecfca824a3cc4dfdf77bf1fa905ac44" + url: "https://pub.dev" + source: hosted + version: "1.3.3" + ffi: + dependency: transitive + description: + name: ffi + sha256: "289279317b4b16eb2bb7e271abccd4bf84ec9bdcbe999e278a94b804f5630418" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + file: + dependency: transitive + description: + name: file + sha256: a3b4f84adafef897088c160faf7dfffb7696046cb13ae90b508c2cbc95d3b8d4 + url: "https://pub.dev" + source: hosted + version: "7.0.1" + file_picker: + dependency: "direct main" + description: + name: file_picker + sha256: ab13ae8ef5580a411c458d6207b6774a6c237d77ac37011b13994879f68a8810 + url: "https://pub.dev" + source: hosted + version: "8.3.7" + file_selector_linux: + dependency: transitive + description: + name: file_selector_linux + sha256: "54cbbd957e1156d29548c7d9b9ec0c0ebb6de0a90452198683a7d23aed617a33" + url: "https://pub.dev" + source: hosted + version: "0.9.3+2" + file_selector_macos: + dependency: transitive + description: + name: file_selector_macos + sha256: "8c9250b2bd2d8d4268e39c82543bacbaca0fda7d29e0728c3c4bbb7c820fd711" + url: "https://pub.dev" + source: hosted + version: "0.9.4+3" + file_selector_platform_interface: + dependency: transitive + description: + name: file_selector_platform_interface + sha256: a3994c26f10378a039faa11de174d7b78eb8f79e4dd0af2a451410c1a5c3f66b + url: "https://pub.dev" + source: hosted + version: "2.6.2" + file_selector_windows: + dependency: transitive + description: + name: file_selector_windows + sha256: "320fcfb6f33caa90f0b58380489fc5ac05d99ee94b61aa96ec2bff0ba81d3c2b" + url: "https://pub.dev" + source: hosted + version: "0.9.3+4" + fixnum: + dependency: transitive + description: + name: fixnum + sha256: b6dc7065e46c974bc7c5f143080a6764ec7a4be6da1285ececdc37be96de53be + url: "https://pub.dev" + source: hosted + version: "1.1.1" + flutter: + dependency: "direct main" + description: flutter + source: sdk + version: "0.0.0" + flutter_bluetooth_serial: + dependency: "direct main" + description: + path: "." + ref: my-edits + resolved-ref: "8b87c191ae658e1b59fe2e73e19d55c76dcb5fe5" + url: "https://github.com/PSTPSYCO/flutter_bluetooth_serial.git" + source: git + version: "0.4.0" + flutter_launcher_icons: + dependency: "direct dev" + description: + name: flutter_launcher_icons + sha256: "526faf84284b86a4cb36d20a5e45147747b7563d921373d4ee0559c54fcdbcea" + url: "https://pub.dev" + source: hosted + version: "0.13.1" + flutter_lints: + dependency: "direct dev" + description: + name: flutter_lints + sha256: "9e8c3858111da373efc5aa341de011d9bd23e2c5c5e0c62bccf32438e192d7b1" + url: "https://pub.dev" + source: hosted + version: "3.0.2" + flutter_plugin_android_lifecycle: + dependency: transitive + description: + name: flutter_plugin_android_lifecycle + sha256: f948e346c12f8d5480d2825e03de228d0eb8c3a737e4cdaa122267b89c022b5e + url: "https://pub.dev" + source: hosted + version: "2.0.28" + flutter_svg: + dependency: "direct main" + description: + name: flutter_svg + sha256: cd57f7969b4679317c17af6fd16ee233c1e60a82ed209d8a475c54fd6fd6f845 + url: "https://pub.dev" + source: hosted + version: "2.2.0" + flutter_test: + dependency: "direct dev" + description: flutter + source: sdk + version: "0.0.0" + flutter_web_plugins: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + geolocator: + dependency: "direct main" + description: + name: geolocator + sha256: "6cb9fb6e5928b58b9a84bdf85012d757fd07aab8215c5205337021c4999bad27" + url: "https://pub.dev" + source: hosted + version: "11.1.0" + geolocator_android: + dependency: transitive + description: + name: geolocator_android + sha256: fcb1760a50d7500deca37c9a666785c047139b5f9ee15aa5469fae7dbbe3170d + url: "https://pub.dev" + source: hosted + version: "4.6.2" + geolocator_apple: + dependency: transitive + description: + name: geolocator_apple + sha256: dbdd8789d5aaf14cf69f74d4925ad1336b4433a6efdf2fce91e8955dc921bf22 + url: "https://pub.dev" + source: hosted + version: "2.3.13" + geolocator_platform_interface: + dependency: transitive + description: + name: geolocator_platform_interface + sha256: "30cb64f0b9adcc0fb36f628b4ebf4f731a2961a0ebd849f4b56200205056fe67" + url: "https://pub.dev" + source: hosted + version: "4.2.6" + geolocator_web: + dependency: transitive + description: + name: geolocator_web + sha256: "49d8f846ebeb5e2b6641fe477a7e97e5dd73f03cbfef3fd5c42177b7300fb0ed" + url: "https://pub.dev" + source: hosted + version: "3.0.0" + geolocator_windows: + dependency: transitive + description: + name: geolocator_windows + sha256: "175435404d20278ffd220de83c2ca293b73db95eafbdc8131fe8609be1421eb6" + url: "https://pub.dev" + source: hosted + version: "0.2.5" + google_fonts: + dependency: "direct main" + description: + name: google_fonts + sha256: b1ac0fe2832c9cc95e5e88b57d627c5e68c223b9657f4b96e1487aa9098c7b82 + url: "https://pub.dev" + source: hosted + version: "6.2.1" + http: + dependency: "direct main" + description: + name: http + sha256: "2c11f3f94c687ee9bad77c171151672986360b2b001d109814ee7140b2cf261b" + url: "https://pub.dev" + source: hosted + version: "1.4.0" + http_parser: + dependency: transitive + description: + name: http_parser + sha256: "178d74305e7866013777bab2c3d8726205dc5a4dd935297175b19a23a2e66571" + url: "https://pub.dev" + source: hosted + version: "4.1.2" + image: + dependency: "direct main" + description: + name: image + sha256: "4e973fcf4caae1a4be2fa0a13157aa38a8f9cb049db6529aa00b4d71abc4d928" + url: "https://pub.dev" + source: hosted + version: "4.5.4" + image_picker: + dependency: "direct main" + description: + name: image_picker + sha256: "021834d9c0c3de46bf0fe40341fa07168407f694d9b2bb18d532dc1261867f7a" + url: "https://pub.dev" + source: hosted + version: "1.1.2" + image_picker_android: + dependency: transitive + description: + name: image_picker_android + sha256: "6fae381e6af2bbe0365a5e4ce1db3959462fa0c4d234facf070746024bb80c8d" + url: "https://pub.dev" + source: hosted + version: "0.8.12+24" + image_picker_for_web: + dependency: transitive + description: + name: image_picker_for_web + sha256: "717eb042ab08c40767684327be06a5d8dbb341fe791d514e4b92c7bbe1b7bb83" + url: "https://pub.dev" + source: hosted + version: "3.0.6" + image_picker_ios: + dependency: transitive + description: + name: image_picker_ios + sha256: "05da758e67bc7839e886b3959848aa6b44ff123ab4b28f67891008afe8ef9100" + url: "https://pub.dev" + source: hosted + version: "0.8.12+2" + image_picker_linux: + dependency: transitive + description: + name: image_picker_linux + sha256: "34a65f6740df08bbbeb0a1abd8e6d32107941fd4868f67a507b25601651022c9" + url: "https://pub.dev" + source: hosted + version: "0.2.1+2" + image_picker_macos: + dependency: transitive + description: + name: image_picker_macos + sha256: "1b90ebbd9dcf98fb6c1d01427e49a55bd96b5d67b8c67cf955d60a5de74207c1" + url: "https://pub.dev" + source: hosted + version: "0.2.1+2" + image_picker_platform_interface: + dependency: transitive + description: + name: image_picker_platform_interface + sha256: "886d57f0be73c4b140004e78b9f28a8914a09e50c2d816bdd0520051a71236a0" + url: "https://pub.dev" + source: hosted + version: "2.10.1" + image_picker_windows: + dependency: transitive + description: + name: image_picker_windows + sha256: "6ad07afc4eb1bc25f3a01084d28520496c4a3bb0cb13685435838167c9dcedeb" + url: "https://pub.dev" + source: hosted + version: "0.2.1+1" + intl: + dependency: "direct main" + description: + name: intl + sha256: "3bc132a9dbce73a7e4a21a17d06e1878839ffbf975568bc875c60537824b0c4d" + url: "https://pub.dev" + source: hosted + version: "0.18.1" + json_annotation: + dependency: transitive + description: + name: json_annotation + sha256: "1ce844379ca14835a50d2f019a3099f419082cfdd231cd86a142af94dd5c6bb1" + url: "https://pub.dev" + source: hosted + version: "4.9.0" + leak_tracker: + dependency: transitive + description: + name: leak_tracker + sha256: "6bb818ecbdffe216e81182c2f0714a2e62b593f4a4f13098713ff1685dfb6ab0" + url: "https://pub.dev" + source: hosted + version: "10.0.9" + leak_tracker_flutter_testing: + dependency: transitive + description: + name: leak_tracker_flutter_testing + sha256: f8b613e7e6a13ec79cfdc0e97638fddb3ab848452eff057653abd3edba760573 + url: "https://pub.dev" + source: hosted + version: "3.0.9" + leak_tracker_testing: + dependency: transitive + description: + name: leak_tracker_testing + sha256: "6ba465d5d76e67ddf503e1161d1f4a6bc42306f9d66ca1e8f079a47290fb06d3" + url: "https://pub.dev" + source: hosted + version: "3.0.1" + lints: + dependency: transitive + description: + name: lints + sha256: cbf8d4b858bb0134ef3ef87841abdf8d63bfc255c266b7bf6b39daa1085c4290 + url: "https://pub.dev" + source: hosted + version: "3.0.0" + matcher: + dependency: transitive + description: + name: matcher + sha256: dc58c723c3c24bf8d3e2d3ad3f2f9d7bd9cf43ec6feaa64181775e60190153f2 + url: "https://pub.dev" + source: hosted + version: "0.12.17" + material_color_utilities: + dependency: transitive + description: + name: material_color_utilities + sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec + url: "https://pub.dev" + source: hosted + version: "0.11.1" + meta: + dependency: transitive + description: + name: meta + sha256: e3641ec5d63ebf0d9b41bd43201a66e3fc79a65db5f61fc181f04cd27aab950c + url: "https://pub.dev" + source: hosted + version: "1.16.0" + mime: + dependency: transitive + description: + name: mime + sha256: "41a20518f0cb1256669420fdba0cd90d21561e560ac240f26ef8322e45bb7ed6" + url: "https://pub.dev" + source: hosted + version: "2.0.0" + nested: + dependency: transitive + description: + name: nested + sha256: "03bac4c528c64c95c722ec99280375a6f2fc708eec17c7b3f07253b626cd2a20" + url: "https://pub.dev" + source: hosted + version: "1.0.0" + nm: + dependency: transitive + description: + name: nm + sha256: "2c9aae4127bdc8993206464fcc063611e0e36e72018696cd9631023a31b24254" + url: "https://pub.dev" + source: hosted + version: "0.5.0" + path: + dependency: "direct main" + description: + name: path + sha256: "75cca69d1490965be98c73ceaea117e8a04dd21217b37b292c9ddbec0d955bc5" + url: "https://pub.dev" + source: hosted + version: "1.9.1" + path_parsing: + dependency: transitive + description: + name: path_parsing + sha256: "883402936929eac138ee0a45da5b0f2c80f89913e6dc3bf77eb65b84b409c6ca" + url: "https://pub.dev" + source: hosted + version: "1.1.0" + path_provider: + dependency: "direct main" + description: + name: path_provider + sha256: "50c5dd5b6e1aaf6fb3a78b33f6aa3afca52bf903a8a5298f53101fdaee55bbcd" + url: "https://pub.dev" + source: hosted + version: "2.1.5" + path_provider_android: + dependency: transitive + description: + name: path_provider_android + sha256: d0d310befe2c8ab9e7f393288ccbb11b60c019c6b5afc21973eeee4dda2b35e9 + url: "https://pub.dev" + source: hosted + version: "2.2.17" + path_provider_foundation: + dependency: transitive + description: + name: path_provider_foundation + sha256: "4843174df4d288f5e29185bd6e72a6fbdf5a4a4602717eed565497429f179942" + url: "https://pub.dev" + source: hosted + version: "2.4.1" + path_provider_linux: + dependency: transitive + description: + name: path_provider_linux + sha256: f7a1fe3a634fe7734c8d3f2766ad746ae2a2884abe22e241a8b301bf5cac3279 + url: "https://pub.dev" + source: hosted + version: "2.2.1" + path_provider_platform_interface: + dependency: transitive + description: + name: path_provider_platform_interface + sha256: "88f5779f72ba699763fa3a3b06aa4bf6de76c8e5de842cf6f29e2e06476c2334" + url: "https://pub.dev" + source: hosted + version: "2.1.2" + path_provider_windows: + dependency: transitive + description: + name: path_provider_windows + sha256: bd6f00dbd873bfb70d0761682da2b3a2c2fccc2b9e84c495821639601d81afe7 + url: "https://pub.dev" + source: hosted + version: "2.3.0" + permission_handler: + dependency: "direct main" + description: + name: permission_handler + sha256: "59adad729136f01ea9e35a48f5d1395e25cba6cea552249ddbe9cf950f5d7849" + url: "https://pub.dev" + source: hosted + version: "11.4.0" + permission_handler_android: + dependency: transitive + description: + name: permission_handler_android + sha256: d3971dcdd76182a0c198c096b5db2f0884b0d4196723d21a866fc4cdea057ebc + url: "https://pub.dev" + source: hosted + version: "12.1.0" + permission_handler_apple: + dependency: transitive + description: + name: permission_handler_apple + sha256: f000131e755c54cf4d84a5d8bd6e4149e262cc31c5a8b1d698de1ac85fa41023 + url: "https://pub.dev" + source: hosted + version: "9.4.7" + permission_handler_html: + dependency: transitive + description: + name: permission_handler_html + sha256: "38f000e83355abb3392140f6bc3030660cfaef189e1f87824facb76300b4ff24" + url: "https://pub.dev" + source: hosted + version: "0.1.3+5" + permission_handler_platform_interface: + dependency: transitive + description: + name: permission_handler_platform_interface + sha256: eb99b295153abce5d683cac8c02e22faab63e50679b937fa1bf67d58bb282878 + url: "https://pub.dev" + source: hosted + version: "4.3.0" + permission_handler_windows: + dependency: transitive + description: + name: permission_handler_windows + sha256: "1a790728016f79a41216d88672dbc5df30e686e811ad4e698bfc51f76ad91f1e" + url: "https://pub.dev" + source: hosted + version: "0.2.1" + petitparser: + dependency: transitive + description: + name: petitparser + sha256: "07c8f0b1913bcde1ff0d26e57ace2f3012ccbf2b204e070290dad3bb22797646" + url: "https://pub.dev" + source: hosted + version: "6.1.0" + platform: + dependency: transitive + description: + name: platform + sha256: "5d6b1b0036a5f331ebc77c850ebc8506cbc1e9416c27e59b439f917a902a4984" + url: "https://pub.dev" + source: hosted + version: "3.1.6" + plugin_platform_interface: + dependency: transitive + description: + name: plugin_platform_interface + sha256: "4820fbfdb9478b1ebae27888254d445073732dae3d6ea81f0b7e06d5dedc3f02" + url: "https://pub.dev" + source: hosted + version: "2.1.8" + posix: + dependency: transitive + description: + name: posix + sha256: "6323a5b0fa688b6a010df4905a56b00181479e6d10534cecfecede2aa55add61" + url: "https://pub.dev" + source: hosted + version: "6.0.3" + provider: + dependency: "direct main" + description: + name: provider + sha256: "4abbd070a04e9ddc287673bf5a030c7ca8b685ff70218720abab8b092f53dd84" + url: "https://pub.dev" + source: hosted + version: "6.1.5" + shared_preferences: + dependency: "direct main" + description: + name: shared_preferences + sha256: "6e8bf70b7fef813df4e9a36f658ac46d107db4b4cfe1048b477d4e453a8159f5" + url: "https://pub.dev" + source: hosted + version: "2.5.3" + shared_preferences_android: + dependency: transitive + description: + name: shared_preferences_android + sha256: "20cbd561f743a342c76c151d6ddb93a9ce6005751e7aa458baad3858bfbfb6ac" + url: "https://pub.dev" + source: hosted + version: "2.4.10" + shared_preferences_foundation: + dependency: transitive + description: + name: shared_preferences_foundation + sha256: "6a52cfcdaeac77cad8c97b539ff688ccfc458c007b4db12be584fbe5c0e49e03" + url: "https://pub.dev" + source: hosted + version: "2.5.4" + shared_preferences_linux: + dependency: transitive + description: + name: shared_preferences_linux + sha256: "580abfd40f415611503cae30adf626e6656dfb2f0cee8f465ece7b6defb40f2f" + url: "https://pub.dev" + source: hosted + version: "2.4.1" + shared_preferences_platform_interface: + dependency: transitive + description: + name: shared_preferences_platform_interface + sha256: "57cbf196c486bc2cf1f02b85784932c6094376284b3ad5779d1b1c6c6a816b80" + url: "https://pub.dev" + source: hosted + version: "2.4.1" + shared_preferences_web: + dependency: transitive + description: + name: shared_preferences_web + sha256: c49bd060261c9a3f0ff445892695d6212ff603ef3115edbb448509d407600019 + url: "https://pub.dev" + source: hosted + version: "2.4.3" + shared_preferences_windows: + dependency: transitive + description: + name: shared_preferences_windows + sha256: "94ef0f72b2d71bc3e700e025db3710911bd51a71cefb65cc609dd0d9a982e3c1" + url: "https://pub.dev" + source: hosted + version: "2.4.1" + simple_barcode_scanner: + dependency: "direct main" + description: + name: simple_barcode_scanner + sha256: "2b6ec05e10fbf4f07687f3687c5cf46d3dcf873492e0a5758211bd957c854113" + url: "https://pub.dev" + source: hosted + version: "0.3.0" + sky_engine: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + source_span: + dependency: transitive + description: + name: source_span + sha256: "254ee5351d6cb365c859e20ee823c3bb479bf4a293c22d17a9f1bf144ce86f7c" + url: "https://pub.dev" + source: hosted + version: "1.10.1" + sprintf: + dependency: transitive + description: + name: sprintf + sha256: "1fc9ffe69d4df602376b52949af107d8f5703b77cda567c4d7d86a0693120f23" + url: "https://pub.dev" + source: hosted + version: "7.0.0" + sqflite: + dependency: "direct main" + description: + name: sqflite + sha256: e2297b1da52f127bc7a3da11439985d9b536f75070f3325e62ada69a5c585d03 + url: "https://pub.dev" + source: hosted + version: "2.4.2" + sqflite_android: + dependency: transitive + description: + name: sqflite_android + sha256: "2b3070c5fa881839f8b402ee4a39c1b4d561704d4ebbbcfb808a119bc2a1701b" + url: "https://pub.dev" + source: hosted + version: "2.4.1" + sqflite_common: + dependency: transitive + description: + name: sqflite_common + sha256: "84731e8bfd8303a3389903e01fb2141b6e59b5973cacbb0929021df08dddbe8b" + url: "https://pub.dev" + source: hosted + version: "2.5.5" + sqflite_darwin: + dependency: transitive + description: + name: sqflite_darwin + sha256: "279832e5cde3fe99e8571879498c9211f3ca6391b0d818df4e17d9fff5c6ccb3" + url: "https://pub.dev" + source: hosted + version: "2.4.2" + sqflite_platform_interface: + dependency: transitive + description: + name: sqflite_platform_interface + sha256: "8dd4515c7bdcae0a785b0062859336de775e8c65db81ae33dd5445f35be61920" + url: "https://pub.dev" + source: hosted + version: "2.4.0" + stack_trace: + dependency: transitive + description: + name: stack_trace + sha256: "8b27215b45d22309b5cddda1aa2b19bdfec9df0e765f2de506401c071d38d1b1" + url: "https://pub.dev" + source: hosted + version: "1.12.1" + stream_channel: + dependency: transitive + description: + name: stream_channel + sha256: "969e04c80b8bcdf826f8f16579c7b14d780458bd97f56d107d3950fdbeef059d" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + string_scanner: + dependency: transitive + description: + name: string_scanner + sha256: "921cd31725b72fe181906c6a94d987c78e3b98c2e205b397ea399d4054872b43" + url: "https://pub.dev" + source: hosted + version: "1.4.1" + synchronized: + dependency: transitive + description: + name: synchronized + sha256: c254ade258ec8282947a0acbbc90b9575b4f19673533ee46f2f6e9b3aeefd7c0 + url: "https://pub.dev" + source: hosted + version: "3.4.0" + term_glyph: + dependency: transitive + description: + name: term_glyph + sha256: "7f554798625ea768a7518313e58f83891c7f5024f88e46e7182a4558850a4b8e" + url: "https://pub.dev" + source: hosted + version: "1.2.2" + test_api: + dependency: transitive + description: + name: test_api + sha256: fb31f383e2ee25fbbfe06b40fe21e1e458d14080e3c67e7ba0acfde4df4e0bbd + url: "https://pub.dev" + source: hosted + version: "0.7.4" + typed_data: + dependency: transitive + description: + name: typed_data + sha256: f9049c039ebfeb4cf7a7104a675823cd72dba8297f264b6637062516699fa006 + url: "https://pub.dev" + source: hosted + version: "1.4.0" + usb_serial: + dependency: "direct main" + description: + name: usb_serial + sha256: a605a600e34e7f28d4e80851ca3999ef747e42e406138887b8a88b8c382a8b07 + url: "https://pub.dev" + source: hosted + version: "0.5.2" + uuid: + dependency: transitive + description: + name: uuid + sha256: a5be9ef6618a7ac1e964353ef476418026db906c4facdedaa299b7a2e71690ff + url: "https://pub.dev" + source: hosted + version: "4.5.1" + vector_graphics: + dependency: transitive + description: + name: vector_graphics + sha256: a4f059dc26fc8295b5921376600a194c4ec7d55e72f2fe4c7d2831e103d461e6 + url: "https://pub.dev" + source: hosted + version: "1.1.19" + vector_graphics_codec: + dependency: transitive + description: + name: vector_graphics_codec + sha256: "99fd9fbd34d9f9a32efd7b6a6aae14125d8237b10403b422a6a6dfeac2806146" + url: "https://pub.dev" + source: hosted + version: "1.1.13" + vector_graphics_compiler: + dependency: transitive + description: + name: vector_graphics_compiler + sha256: "557a315b7d2a6dbb0aaaff84d857967ce6bdc96a63dc6ee2a57ce5a6ee5d3331" + url: "https://pub.dev" + source: hosted + version: "1.1.17" + vector_math: + dependency: transitive + description: + name: vector_math + sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + vm_service: + dependency: transitive + description: + name: vm_service + sha256: ddfa8d30d89985b96407efce8acbdd124701f96741f2d981ca860662f1c0dc02 + url: "https://pub.dev" + source: hosted + version: "15.0.0" + web: + dependency: transitive + description: + name: web + sha256: "868d88a33d8a87b18ffc05f9f030ba328ffefba92d6c127917a2ba740f9cfe4a" + url: "https://pub.dev" + source: hosted + version: "1.1.1" + webview_windows: + dependency: transitive + description: + name: webview_windows + sha256: "47fcad5875a45db29dbb5c9e6709bf5c88dcc429049872701343f91ed7255730" + url: "https://pub.dev" + source: hosted + version: "0.4.0" + win32: + dependency: transitive + description: + name: win32 + sha256: "66814138c3562338d05613a6e368ed8cfb237ad6d64a9e9334be3f309acfca03" + url: "https://pub.dev" + source: hosted + version: "5.14.0" + xdg_directories: + dependency: transitive + description: + name: xdg_directories + sha256: "7a3f37b05d989967cdddcbb571f1ea834867ae2faa29725fd085180e0883aa15" + url: "https://pub.dev" + source: hosted + version: "1.1.0" + xml: + dependency: transitive + description: + name: xml + sha256: b015a8ad1c488f66851d762d3090a21c600e479dc75e68328c52774040cf9226 + url: "https://pub.dev" + source: hosted + version: "6.5.0" + yaml: + dependency: transitive + description: + name: yaml + sha256: b9da305ac7c39faa3f030eccd175340f968459dae4af175130b3fc47e40d76ce + url: "https://pub.dev" + source: hosted + version: "3.1.3" +sdks: + dart: ">=3.8.0 <4.0.0" + flutter: ">=3.27.0" diff --git a/pubspec.yaml b/pubspec.yaml new file mode 100644 index 0000000..0660998 --- /dev/null +++ b/pubspec.yaml @@ -0,0 +1,67 @@ +name: environment_monitoring_app +description: "A new Flutter project." + +publish_to: 'none' + +version: 1.0.0+1 + +environment: + sdk: '>=3.1.0 <4.0.0' + +dependencies: + flutter: + sdk: flutter + + # --- Core Packages --- + provider: ^6.1.1 + http: ^1.2.1 + intl: ^0.18.1 + + # --- Local Storage & Offline Capabilities --- + shared_preferences: ^2.2.3 + sqflite: ^2.3.3 + path_provider: ^2.1.3 + path: ^1.8.3 # Explicitly added for path manipulation + connectivity_plus: ^6.0.1 + + # --- UI Components & Utilities --- + cupertino_icons: ^1.0.8 + flutter_svg: ^2.0.9 + google_fonts: ^6.1.0 + dropdown_search: ^5.0.6 # For searchable dropdowns in forms + + # --- Device & Hardware Access --- + image_picker: ^1.0.7 + file_picker: ^8.0.0+1 + geolocator: ^11.0.0 # For GPS functionality + image: ^4.1.3 # For image processing (watermarks) + permission_handler: ^11.3.1 + # --- Added for In-Situ Sampling Module --- + simple_barcode_scanner: ^0.3.0 # For scanning sample IDs + #flutter_blue_classic: ^0.0.3 # For Bluetooth sonde connection + + flutter_bluetooth_serial: + git: + url: https://github.com/PSTPSYCO/flutter_bluetooth_serial.git + ref: my-edits + + usb_serial: ^0.5.2 # For USB Serial sonde connection + + +dev_dependencies: + flutter_test: + sdk: flutter + + flutter_lints: ^3.0.0 + flutter_launcher_icons: ^0.13.1 + +flutter: + uses-material-design: true + + assets: + - assets/ + +flutter_launcher_icons: + android: true + ios: true + image_path: "assets/icon_2_512x512.png" \ No newline at end of file diff --git a/test/widget_test.dart b/test/widget_test.dart new file mode 100644 index 0000000..270bf6a --- /dev/null +++ b/test/widget_test.dart @@ -0,0 +1,30 @@ +// This is a basic Flutter widget test. +// +// To perform an interaction with a widget in your test, use the WidgetTester +// utility in the flutter_test package. For example, you can send tap and scroll +// gestures. You can also use WidgetTester to find child widgets in the widget +// tree, read text, and verify that the values of widget properties are correct. + +import 'package:flutter/material.dart'; +import 'package:flutter_test/flutter_test.dart'; + +import 'package:environment_monitoring_app/main.dart'; + +void main() { + testWidgets('Counter increments smoke test', (WidgetTester tester) async { + // Build our app and trigger a frame. + await tester.pumpWidget(const MyApp()); + + // Verify that our counter starts at 0. + expect(find.text('0'), findsOneWidget); + expect(find.text('1'), findsNothing); + + // Tap the '+' icon and trigger a frame. + await tester.tap(find.byIcon(Icons.add)); + await tester.pump(); + + // Verify that our counter has incremented. + expect(find.text('0'), findsNothing); + expect(find.text('1'), findsOneWidget); + }); +} diff --git a/web/favicon.png b/web/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..8aaa46ac1ae21512746f852a42ba87e4165dfdd1 GIT binary patch literal 917 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|I14-?iy0X7 zltGxWVyS%@P(fs7NJL45ua8x7ey(0(N`6wRUPW#JP&EUCO@$SZnVVXYs8ErclUHn2 zVXFjIVFhG^g!Ppaz)DK8ZIvQ?0~DO|i&7O#^-S~(l1AfjnEK zjFOT9D}DX)@^Za$W4-*MbbUihOG|wNBYh(yU7!lx;>x^|#0uTKVr7USFmqf|i<65o z3raHc^AtelCMM;Vme?vOfh>Xph&xL%(-1c06+^uR^q@XSM&D4+Kp$>4P^%3{)XKjo zGZknv$b36P8?Z_gF{nK@`XI}Z90TzwSQO}0J1!f2c(B=V`5aP@1P1a|PZ!4!3&Gl8 zTYqUsf!gYFyJnXpu0!n&N*SYAX-%d(5gVjrHJWqXQshj@!Zm{!01WsQrH~9=kTxW#6SvuapgMqt>$=j#%eyGrQzr zP{L-3gsMA^$I1&gsBAEL+vxi1*Igl=8#8`5?A-T5=z-sk46WA1IUT)AIZHx1rdUrf zVJrJn<74DDw`j)Ki#gt}mIT-Q`XRa2-jQXQoI%w`nb|XblvzK${ZzlV)m-XcwC(od z71_OEC5Bt9GEXosOXaPTYOia#R4ID2TiU~`zVMl08TV_C%DnU4^+HE>9(CE4D6?Fz oujB08i7adh9xk7*FX66dWH6F5TM;?E2b5PlUHx3vIVCg!0Dx9vYXATM literal 0 HcmV?d00001 diff --git a/web/icons/Icon-192.png b/web/icons/Icon-192.png new file mode 100644 index 0000000000000000000000000000000000000000..b749bfef07473333cf1dd31e9eed89862a5d52aa GIT binary patch literal 5292 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 literal 0 HcmV?d00001 diff --git a/web/icons/Icon-512.png b/web/icons/Icon-512.png new file mode 100644 index 0000000000000000000000000000000000000000..88cfd48dff1169879ba46840804b412fe02fefd6 GIT binary patch literal 8252 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 literal 0 HcmV?d00001 diff --git a/web/icons/Icon-maskable-192.png b/web/icons/Icon-maskable-192.png new file mode 100644 index 0000000000000000000000000000000000000000..eb9b4d76e525556d5d89141648c724331630325d GIT binary patch literal 5594 zcmdT|`#%%j|KDb2V@0DPm$^(Lx5}lO%Yv(=e*7hl@QqKS50#~#^IQPxBmuh|i9sXnt4ch@VT0F7% zMtrs@KWIOo+QV@lSs66A>2pz6-`9Jk=0vv&u?)^F@HZ)-6HT=B7LF;rdj zskUyBfbojcX#CS>WrIWo9D=DIwcXM8=I5D{SGf$~=gh-$LwY?*)cD%38%sCc?5OsX z-XfkyL-1`VavZ?>(pI-xp-kYq=1hsnyP^TLb%0vKRSo^~r{x?ISLY1i7KjSp z*0h&jG(Rkkq2+G_6eS>n&6>&Xk+ngOMcYrk<8KrukQHzfx675^^s$~<@d$9X{VBbg z2Fd4Z%g`!-P}d#`?B4#S-9x*eNlOVRnDrn#jY@~$jfQ-~3Od;A;x-BI1BEDdvr`pI z#D)d)!2_`GiZOUu1crb!hqH=ezs0qk<_xDm_Kkw?r*?0C3|Io6>$!kyDl;eH=aqg$B zsH_|ZD?jP2dc=)|L>DZmGyYKa06~5?C2Lc0#D%62p(YS;%_DRCB1k(+eLGXVMe+=4 zkKiJ%!N6^mxqM=wq`0+yoE#VHF%R<{mMamR9o_1JH8jfnJ?NPLs$9U!9!dq8 z0B{dI2!M|sYGH&9TAY34OlpIsQ4i5bnbG>?cWwat1I13|r|_inLE?FS@Hxdxn_YZN z3jfUO*X9Q@?HZ>Q{W0z60!bbGh557XIKu1?)u|cf%go`pwo}CD=0tau-}t@R2OrSH zQzZr%JfYa`>2!g??76=GJ$%ECbQh7Q2wLRp9QoyiRHP7VE^>JHm>9EqR3<$Y=Z1K^SHuwxCy-5@z3 zVM{XNNm}yM*pRdLKp??+_2&!bp#`=(Lh1vR{~j%n;cJv~9lXeMv)@}Odta)RnK|6* zC+IVSWumLo%{6bLDpn)Gz>6r&;Qs0^+Sz_yx_KNz9Dlt^ax`4>;EWrIT#(lJ_40<= z750fHZ7hI{}%%5`;lwkI4<_FJw@!U^vW;igL0k+mK)-j zYuCK#mCDK3F|SC}tC2>m$ZCqNB7ac-0UFBJ|8RxmG@4a4qdjvMzzS&h9pQmu^x&*= zGvapd1#K%Da&)8f?<9WN`2H^qpd@{7In6DNM&916TRqtF4;3`R|Nhwbw=(4|^Io@T zIjoR?tB8d*sO>PX4vaIHF|W;WVl6L1JvSmStgnRQq zTX4(>1f^5QOAH{=18Q2Vc1JI{V=yOr7yZJf4Vpfo zeHXdhBe{PyY;)yF;=ycMW@Kb>t;yE>;f79~AlJ8k`xWucCxJfsXf2P72bAavWL1G#W z;o%kdH(mYCM{$~yw4({KatNGim49O2HY6O07$B`*K7}MvgI=4x=SKdKVb8C$eJseA$tmSFOztFd*3W`J`yIB_~}k%Sd_bPBK8LxH)?8#jM{^%J_0|L z!gFI|68)G}ex5`Xh{5pB%GtlJ{Z5em*e0sH+sU1UVl7<5%Bq+YrHWL7?X?3LBi1R@_)F-_OqI1Zv`L zb6^Lq#H^2@d_(Z4E6xA9Z4o3kvf78ZDz!5W1#Mp|E;rvJz&4qj2pXVxKB8Vg0}ek%4erou@QM&2t7Cn5GwYqy%{>jI z)4;3SAgqVi#b{kqX#$Mt6L8NhZYgonb7>+r#BHje)bvaZ2c0nAvrN3gez+dNXaV;A zmyR0z@9h4@6~rJik-=2M-T+d`t&@YWhsoP_XP-NsVO}wmo!nR~QVWU?nVlQjNfgcTzE-PkfIX5G z1?&MwaeuzhF=u)X%Vpg_e@>d2yZwxl6-r3OMqDn8_6m^4z3zG##cK0Fsgq8fcvmhu z{73jseR%X%$85H^jRAcrhd&k!i^xL9FrS7qw2$&gwAS8AfAk#g_E_tP;x66fS`Mn@SNVrcn_N;EQm z`Mt3Z%rw%hDqTH-s~6SrIL$hIPKL5^7ejkLTBr46;pHTQDdoErS(B>``t;+1+M zvU&Se9@T_BeK;A^p|n^krIR+6rH~BjvRIugf`&EuX9u69`9C?9ANVL8l(rY6#mu^i z=*5Q)-%o*tWl`#b8p*ZH0I}hn#gV%|jt6V_JanDGuekR*-wF`u;amTCpGG|1;4A5$ zYbHF{?G1vv5;8Ph5%kEW)t|am2_4ik!`7q{ymfHoe^Z99c|$;FAL+NbxE-_zheYbV z3hb0`uZGTsgA5TG(X|GVDSJyJxsyR7V5PS_WSnYgwc_D60m7u*x4b2D79r5UgtL18 zcCHWk+K6N1Pg2c;0#r-)XpwGX?|Iv)^CLWqwF=a}fXUSM?n6E;cCeW5ER^om#{)Jr zJR81pkK?VoFm@N-s%hd7@hBS0xuCD0-UDVLDDkl7Ck=BAj*^ps`393}AJ+Ruq@fl9 z%R(&?5Nc3lnEKGaYMLmRzKXow1+Gh|O-LG7XiNxkG^uyv zpAtLINwMK}IWK65hOw&O>~EJ}x@lDBtB`yKeV1%GtY4PzT%@~wa1VgZn7QRwc7C)_ zpEF~upeDRg_<#w=dLQ)E?AzXUQpbKXYxkp>;c@aOr6A|dHA?KaZkL0svwB^U#zmx0 zzW4^&G!w7YeRxt<9;d@8H=u(j{6+Uj5AuTluvZZD4b+#+6Rp?(yJ`BC9EW9!b&KdPvzJYe5l7 zMJ9aC@S;sA0{F0XyVY{}FzW0Vh)0mPf_BX82E+CD&)wf2!x@{RO~XBYu80TONl3e+ zA7W$ra6LcDW_j4s-`3tI^VhG*sa5lLc+V6ONf=hO@q4|p`CinYqk1Ko*MbZ6_M05k zSwSwkvu;`|I*_Vl=zPd|dVD0lh&Ha)CSJJvV{AEdF{^Kn_Yfsd!{Pc1GNgw}(^~%)jk5~0L~ms|Rez1fiK~s5t(p1ci5Gq$JC#^JrXf?8 z-Y-Zi_Hvi>oBzV8DSRG!7dm|%IlZg3^0{5~;>)8-+Nk&EhAd(}s^7%MuU}lphNW9Q zT)DPo(ob{tB7_?u;4-qGDo!sh&7gHaJfkh43QwL|bbFVi@+oy;i;M zM&CP^v~lx1U`pi9PmSr&Mc<%HAq0DGH?Ft95)WY`P?~7O z`O^Nr{Py9M#Ls4Y7OM?e%Y*Mvrme%=DwQaye^Qut_1pOMrg^!5u(f9p(D%MR%1K>% zRGw%=dYvw@)o}Fw@tOtPjz`45mfpn;OT&V(;z75J*<$52{sB65$gDjwX3Xa!x_wE- z!#RpwHM#WrO*|~f7z}(}o7US(+0FYLM}6de>gQdtPazXz?OcNv4R^oYLJ_BQOd_l172oSK$6!1r@g+B@0ofJ4*{>_AIxfe-#xp>(1 z@Y3Nfd>fmqvjL;?+DmZk*KsfXJf<%~(gcLwEez%>1c6XSboURUh&k=B)MS>6kw9bY z{7vdev7;A}5fy*ZE23DS{J?8at~xwVk`pEwP5^k?XMQ7u64;KmFJ#POzdG#np~F&H ze-BUh@g54)dsS%nkBb}+GuUEKU~pHcYIg4vSo$J(J|U36bs0Use+3A&IMcR%6@jv$ z=+QI+@wW@?iu}Hpyzlvj-EYeop{f65GX0O%>w#0t|V z1-svWk`hU~m`|O$kw5?Yn5UhI%9P-<45A(v0ld1n+%Ziq&TVpBcV9n}L9Tus-TI)f zd_(g+nYCDR@+wYNQm1GwxhUN4tGMLCzDzPqY$~`l<47{+l<{FZ$L6(>J)|}!bi<)| zE35dl{a2)&leQ@LlDxLQOfUDS`;+ZQ4ozrleQwaR-K|@9T{#hB5Z^t#8 zC-d_G;B4;F#8A2EBL58s$zF-=SCr`P#z zNCTnHF&|X@q>SkAoYu>&s9v@zCpv9lLSH-UZzfhJh`EZA{X#%nqw@@aW^vPcfQrlPs(qQxmC|4tp^&sHy!H!2FH5eC{M@g;ElWNzlb-+ zxpfc0m4<}L){4|RZ>KReag2j%Ot_UKkgpJN!7Y_y3;Ssz{9 z!K3isRtaFtQII5^6}cm9RZd5nTp9psk&u1C(BY`(_tolBwzV_@0F*m%3G%Y?2utyS zY`xM0iDRT)yTyYukFeGQ&W@ReM+ADG1xu@ruq&^GK35`+2r}b^V!m1(VgH|QhIPDE X>c!)3PgKfL&lX^$Z>Cpu&6)6jvi^Z! literal 0 HcmV?d00001 diff --git a/web/icons/Icon-maskable-512.png b/web/icons/Icon-maskable-512.png new file mode 100644 index 0000000000000000000000000000000000000000..d69c56691fbdb0b7efa65097c7cc1edac12a6d3e GIT binary patch literal 20998 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 MPgg&ebxsLQ025IeI{*Lx literal 0 HcmV?d00001 diff --git a/web/index.html b/web/index.html new file mode 100644 index 0000000..8e5680d --- /dev/null +++ b/web/index.html @@ -0,0 +1,38 @@ + + + + + + + + + + + + + + + + + + + + environment_monitoring_app + + + + + + diff --git a/web/manifest.json b/web/manifest.json new file mode 100644 index 0000000..6eb3e8e --- /dev/null +++ b/web/manifest.json @@ -0,0 +1,35 @@ +{ + "name": "environment_monitoring_app", + "short_name": "environment_monitoring_app", + "start_url": ".", + "display": "standalone", + "background_color": "#0175C2", + "theme_color": "#0175C2", + "description": "A new Flutter project.", + "orientation": "portrait-primary", + "prefer_related_applications": false, + "icons": [ + { + "src": "icons/Icon-192.png", + "sizes": "192x192", + "type": "image/png" + }, + { + "src": "icons/Icon-512.png", + "sizes": "512x512", + "type": "image/png" + }, + { + "src": "icons/Icon-maskable-192.png", + "sizes": "192x192", + "type": "image/png", + "purpose": "maskable" + }, + { + "src": "icons/Icon-maskable-512.png", + "sizes": "512x512", + "type": "image/png", + "purpose": "maskable" + } + ] +} diff --git a/windows/.gitignore b/windows/.gitignore new file mode 100644 index 0000000..d492d0d --- /dev/null +++ b/windows/.gitignore @@ -0,0 +1,17 @@ +flutter/ephemeral/ + +# Visual Studio user-specific files. +*.suo +*.user +*.userosscache +*.sln.docstates + +# Visual Studio build-related files. +x64/ +x86/ + +# Visual Studio cache files +# files ending in .cache can be ignored +*.[Cc]ache +# but keep track of directories ending in .cache +!*.[Cc]ache/ diff --git a/windows/CMakeLists.txt b/windows/CMakeLists.txt new file mode 100644 index 0000000..dbe5d7a --- /dev/null +++ b/windows/CMakeLists.txt @@ -0,0 +1,108 @@ +# Project-level configuration. +cmake_minimum_required(VERSION 3.14) +project(environment_monitoring_app LANGUAGES CXX) + +# The name of the executable created for the application. Change this to change +# the on-disk name of your application. +set(BINARY_NAME "environment_monitoring_app") + +# Explicitly opt in to modern CMake behaviors to avoid warnings with recent +# versions of CMake. +cmake_policy(VERSION 3.14...3.25) + +# Define build configuration option. +get_property(IS_MULTICONFIG GLOBAL PROPERTY GENERATOR_IS_MULTI_CONFIG) +if(IS_MULTICONFIG) + set(CMAKE_CONFIGURATION_TYPES "Debug;Profile;Release" + CACHE STRING "" FORCE) +else() + if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES) + set(CMAKE_BUILD_TYPE "Debug" CACHE + STRING "Flutter build mode" FORCE) + set_property(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS + "Debug" "Profile" "Release") + endif() +endif() +# Define settings for the Profile build mode. +set(CMAKE_EXE_LINKER_FLAGS_PROFILE "${CMAKE_EXE_LINKER_FLAGS_RELEASE}") +set(CMAKE_SHARED_LINKER_FLAGS_PROFILE "${CMAKE_SHARED_LINKER_FLAGS_RELEASE}") +set(CMAKE_C_FLAGS_PROFILE "${CMAKE_C_FLAGS_RELEASE}") +set(CMAKE_CXX_FLAGS_PROFILE "${CMAKE_CXX_FLAGS_RELEASE}") + +# Use Unicode for all projects. +add_definitions(-DUNICODE -D_UNICODE) + +# Compilation settings that should be applied to most targets. +# +# Be cautious about adding new options here, as plugins use this function by +# default. In most cases, you should add new options to specific targets instead +# of modifying this function. +function(APPLY_STANDARD_SETTINGS TARGET) + target_compile_features(${TARGET} PUBLIC cxx_std_17) + target_compile_options(${TARGET} PRIVATE /W4 /WX /wd"4100") + target_compile_options(${TARGET} PRIVATE /EHsc) + target_compile_definitions(${TARGET} PRIVATE "_HAS_EXCEPTIONS=0") + target_compile_definitions(${TARGET} PRIVATE "$<$:_DEBUG>") +endfunction() + +# Flutter library and tool build rules. +set(FLUTTER_MANAGED_DIR "${CMAKE_CURRENT_SOURCE_DIR}/flutter") +add_subdirectory(${FLUTTER_MANAGED_DIR}) + +# Application build; see runner/CMakeLists.txt. +add_subdirectory("runner") + + +# Generated plugin build rules, which manage building the plugins and adding +# them to the application. +include(flutter/generated_plugins.cmake) + + +# === Installation === +# Support files are copied into place next to the executable, so that it can +# run in place. This is done instead of making a separate bundle (as on Linux) +# so that building and running from within Visual Studio will work. +set(BUILD_BUNDLE_DIR "$") +# Make the "install" step default, as it's required to run. +set(CMAKE_VS_INCLUDE_INSTALL_TO_DEFAULT_BUILD 1) +if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) + set(CMAKE_INSTALL_PREFIX "${BUILD_BUNDLE_DIR}" CACHE PATH "..." FORCE) +endif() + +set(INSTALL_BUNDLE_DATA_DIR "${CMAKE_INSTALL_PREFIX}/data") +set(INSTALL_BUNDLE_LIB_DIR "${CMAKE_INSTALL_PREFIX}") + +install(TARGETS ${BINARY_NAME} RUNTIME DESTINATION "${CMAKE_INSTALL_PREFIX}" + COMPONENT Runtime) + +install(FILES "${FLUTTER_ICU_DATA_FILE}" DESTINATION "${INSTALL_BUNDLE_DATA_DIR}" + COMPONENT Runtime) + +install(FILES "${FLUTTER_LIBRARY}" DESTINATION "${INSTALL_BUNDLE_LIB_DIR}" + COMPONENT Runtime) + +if(PLUGIN_BUNDLED_LIBRARIES) + install(FILES "${PLUGIN_BUNDLED_LIBRARIES}" + DESTINATION "${INSTALL_BUNDLE_LIB_DIR}" + COMPONENT Runtime) +endif() + +# Copy the native assets provided by the build.dart from all packages. +set(NATIVE_ASSETS_DIR "${PROJECT_BUILD_DIR}native_assets/windows/") +install(DIRECTORY "${NATIVE_ASSETS_DIR}" + DESTINATION "${INSTALL_BUNDLE_LIB_DIR}" + COMPONENT Runtime) + +# Fully re-copy the assets directory on each build to avoid having stale files +# from a previous install. +set(FLUTTER_ASSET_DIR_NAME "flutter_assets") +install(CODE " + file(REMOVE_RECURSE \"${INSTALL_BUNDLE_DATA_DIR}/${FLUTTER_ASSET_DIR_NAME}\") + " COMPONENT Runtime) +install(DIRECTORY "${PROJECT_BUILD_DIR}/${FLUTTER_ASSET_DIR_NAME}" + DESTINATION "${INSTALL_BUNDLE_DATA_DIR}" COMPONENT Runtime) + +# Install the AOT library on non-Debug builds only. +install(FILES "${AOT_LIBRARY}" DESTINATION "${INSTALL_BUNDLE_DATA_DIR}" + CONFIGURATIONS Profile;Release + COMPONENT Runtime) diff --git a/windows/flutter/CMakeLists.txt b/windows/flutter/CMakeLists.txt new file mode 100644 index 0000000..903f489 --- /dev/null +++ b/windows/flutter/CMakeLists.txt @@ -0,0 +1,109 @@ +# This file controls Flutter-level build steps. It should not be edited. +cmake_minimum_required(VERSION 3.14) + +set(EPHEMERAL_DIR "${CMAKE_CURRENT_SOURCE_DIR}/ephemeral") + +# Configuration provided via flutter tool. +include(${EPHEMERAL_DIR}/generated_config.cmake) + +# TODO: Move the rest of this into files in ephemeral. See +# https://github.com/flutter/flutter/issues/57146. +set(WRAPPER_ROOT "${EPHEMERAL_DIR}/cpp_client_wrapper") + +# Set fallback configurations for older versions of the flutter tool. +if (NOT DEFINED FLUTTER_TARGET_PLATFORM) + set(FLUTTER_TARGET_PLATFORM "windows-x64") +endif() + +# === Flutter Library === +set(FLUTTER_LIBRARY "${EPHEMERAL_DIR}/flutter_windows.dll") + +# Published to parent scope for install step. +set(FLUTTER_LIBRARY ${FLUTTER_LIBRARY} PARENT_SCOPE) +set(FLUTTER_ICU_DATA_FILE "${EPHEMERAL_DIR}/icudtl.dat" PARENT_SCOPE) +set(PROJECT_BUILD_DIR "${PROJECT_DIR}/build/" PARENT_SCOPE) +set(AOT_LIBRARY "${PROJECT_DIR}/build/windows/app.so" PARENT_SCOPE) + +list(APPEND FLUTTER_LIBRARY_HEADERS + "flutter_export.h" + "flutter_windows.h" + "flutter_messenger.h" + "flutter_plugin_registrar.h" + "flutter_texture_registrar.h" +) +list(TRANSFORM FLUTTER_LIBRARY_HEADERS PREPEND "${EPHEMERAL_DIR}/") +add_library(flutter INTERFACE) +target_include_directories(flutter INTERFACE + "${EPHEMERAL_DIR}" +) +target_link_libraries(flutter INTERFACE "${FLUTTER_LIBRARY}.lib") +add_dependencies(flutter flutter_assemble) + +# === Wrapper === +list(APPEND CPP_WRAPPER_SOURCES_CORE + "core_implementations.cc" + "standard_codec.cc" +) +list(TRANSFORM CPP_WRAPPER_SOURCES_CORE PREPEND "${WRAPPER_ROOT}/") +list(APPEND CPP_WRAPPER_SOURCES_PLUGIN + "plugin_registrar.cc" +) +list(TRANSFORM CPP_WRAPPER_SOURCES_PLUGIN PREPEND "${WRAPPER_ROOT}/") +list(APPEND CPP_WRAPPER_SOURCES_APP + "flutter_engine.cc" + "flutter_view_controller.cc" +) +list(TRANSFORM CPP_WRAPPER_SOURCES_APP PREPEND "${WRAPPER_ROOT}/") + +# Wrapper sources needed for a plugin. +add_library(flutter_wrapper_plugin STATIC + ${CPP_WRAPPER_SOURCES_CORE} + ${CPP_WRAPPER_SOURCES_PLUGIN} +) +apply_standard_settings(flutter_wrapper_plugin) +set_target_properties(flutter_wrapper_plugin PROPERTIES + POSITION_INDEPENDENT_CODE ON) +set_target_properties(flutter_wrapper_plugin PROPERTIES + CXX_VISIBILITY_PRESET hidden) +target_link_libraries(flutter_wrapper_plugin PUBLIC flutter) +target_include_directories(flutter_wrapper_plugin PUBLIC + "${WRAPPER_ROOT}/include" +) +add_dependencies(flutter_wrapper_plugin flutter_assemble) + +# Wrapper sources needed for the runner. +add_library(flutter_wrapper_app STATIC + ${CPP_WRAPPER_SOURCES_CORE} + ${CPP_WRAPPER_SOURCES_APP} +) +apply_standard_settings(flutter_wrapper_app) +target_link_libraries(flutter_wrapper_app PUBLIC flutter) +target_include_directories(flutter_wrapper_app PUBLIC + "${WRAPPER_ROOT}/include" +) +add_dependencies(flutter_wrapper_app flutter_assemble) + +# === Flutter tool backend === +# _phony_ is a non-existent file to force this command to run every time, +# since currently there's no way to get a full input/output list from the +# flutter tool. +set(PHONY_OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/_phony_") +set_source_files_properties("${PHONY_OUTPUT}" PROPERTIES SYMBOLIC TRUE) +add_custom_command( + OUTPUT ${FLUTTER_LIBRARY} ${FLUTTER_LIBRARY_HEADERS} + ${CPP_WRAPPER_SOURCES_CORE} ${CPP_WRAPPER_SOURCES_PLUGIN} + ${CPP_WRAPPER_SOURCES_APP} + ${PHONY_OUTPUT} + COMMAND ${CMAKE_COMMAND} -E env + ${FLUTTER_TOOL_ENVIRONMENT} + "${FLUTTER_ROOT}/packages/flutter_tools/bin/tool_backend.bat" + ${FLUTTER_TARGET_PLATFORM} $ + VERBATIM +) +add_custom_target(flutter_assemble DEPENDS + "${FLUTTER_LIBRARY}" + ${FLUTTER_LIBRARY_HEADERS} + ${CPP_WRAPPER_SOURCES_CORE} + ${CPP_WRAPPER_SOURCES_PLUGIN} + ${CPP_WRAPPER_SOURCES_APP} +) diff --git a/windows/flutter/generated_plugin_registrant.cc b/windows/flutter/generated_plugin_registrant.cc new file mode 100644 index 0000000..3bf1db5 --- /dev/null +++ b/windows/flutter/generated_plugin_registrant.cc @@ -0,0 +1,26 @@ +// +// Generated file. Do not edit. +// + +// clang-format off + +#include "generated_plugin_registrant.h" + +#include +#include +#include +#include +#include + +void RegisterPlugins(flutter::PluginRegistry* registry) { + ConnectivityPlusWindowsPluginRegisterWithRegistrar( + registry->GetRegistrarForPlugin("ConnectivityPlusWindowsPlugin")); + FileSelectorWindowsRegisterWithRegistrar( + registry->GetRegistrarForPlugin("FileSelectorWindows")); + GeolocatorWindowsRegisterWithRegistrar( + registry->GetRegistrarForPlugin("GeolocatorWindows")); + PermissionHandlerWindowsPluginRegisterWithRegistrar( + registry->GetRegistrarForPlugin("PermissionHandlerWindowsPlugin")); + WebviewWindowsPluginRegisterWithRegistrar( + registry->GetRegistrarForPlugin("WebviewWindowsPlugin")); +} diff --git a/windows/flutter/generated_plugin_registrant.h b/windows/flutter/generated_plugin_registrant.h new file mode 100644 index 0000000..dc139d8 --- /dev/null +++ b/windows/flutter/generated_plugin_registrant.h @@ -0,0 +1,15 @@ +// +// Generated file. Do not edit. +// + +// clang-format off + +#ifndef GENERATED_PLUGIN_REGISTRANT_ +#define GENERATED_PLUGIN_REGISTRANT_ + +#include + +// Registers Flutter plugins. +void RegisterPlugins(flutter::PluginRegistry* registry); + +#endif // GENERATED_PLUGIN_REGISTRANT_ diff --git a/windows/flutter/generated_plugins.cmake b/windows/flutter/generated_plugins.cmake new file mode 100644 index 0000000..d4c7652 --- /dev/null +++ b/windows/flutter/generated_plugins.cmake @@ -0,0 +1,28 @@ +# +# Generated file, do not edit. +# + +list(APPEND FLUTTER_PLUGIN_LIST + connectivity_plus + file_selector_windows + geolocator_windows + permission_handler_windows + webview_windows +) + +list(APPEND FLUTTER_FFI_PLUGIN_LIST +) + +set(PLUGIN_BUNDLED_LIBRARIES) + +foreach(plugin ${FLUTTER_PLUGIN_LIST}) + add_subdirectory(flutter/ephemeral/.plugin_symlinks/${plugin}/windows plugins/${plugin}) + target_link_libraries(${BINARY_NAME} PRIVATE ${plugin}_plugin) + list(APPEND PLUGIN_BUNDLED_LIBRARIES $) + list(APPEND PLUGIN_BUNDLED_LIBRARIES ${${plugin}_bundled_libraries}) +endforeach(plugin) + +foreach(ffi_plugin ${FLUTTER_FFI_PLUGIN_LIST}) + add_subdirectory(flutter/ephemeral/.plugin_symlinks/${ffi_plugin}/windows plugins/${ffi_plugin}) + list(APPEND PLUGIN_BUNDLED_LIBRARIES ${${ffi_plugin}_bundled_libraries}) +endforeach(ffi_plugin) diff --git a/windows/runner/CMakeLists.txt b/windows/runner/CMakeLists.txt new file mode 100644 index 0000000..394917c --- /dev/null +++ b/windows/runner/CMakeLists.txt @@ -0,0 +1,40 @@ +cmake_minimum_required(VERSION 3.14) +project(runner LANGUAGES CXX) + +# Define the application target. To change its name, change BINARY_NAME in the +# top-level CMakeLists.txt, not the value here, or `flutter run` will no longer +# work. +# +# Any new source files that you add to the application should be added here. +add_executable(${BINARY_NAME} WIN32 + "flutter_window.cpp" + "main.cpp" + "utils.cpp" + "win32_window.cpp" + "${FLUTTER_MANAGED_DIR}/generated_plugin_registrant.cc" + "Runner.rc" + "runner.exe.manifest" +) + +# Apply the standard set of build settings. This can be removed for applications +# that need different build settings. +apply_standard_settings(${BINARY_NAME}) + +# Add preprocessor definitions for the build version. +target_compile_definitions(${BINARY_NAME} PRIVATE "FLUTTER_VERSION=\"${FLUTTER_VERSION}\"") +target_compile_definitions(${BINARY_NAME} PRIVATE "FLUTTER_VERSION_MAJOR=${FLUTTER_VERSION_MAJOR}") +target_compile_definitions(${BINARY_NAME} PRIVATE "FLUTTER_VERSION_MINOR=${FLUTTER_VERSION_MINOR}") +target_compile_definitions(${BINARY_NAME} PRIVATE "FLUTTER_VERSION_PATCH=${FLUTTER_VERSION_PATCH}") +target_compile_definitions(${BINARY_NAME} PRIVATE "FLUTTER_VERSION_BUILD=${FLUTTER_VERSION_BUILD}") + +# Disable Windows macros that collide with C++ standard library functions. +target_compile_definitions(${BINARY_NAME} PRIVATE "NOMINMAX") + +# Add dependency libraries and include directories. Add any application-specific +# dependencies here. +target_link_libraries(${BINARY_NAME} PRIVATE flutter flutter_wrapper_app) +target_link_libraries(${BINARY_NAME} PRIVATE "dwmapi.lib") +target_include_directories(${BINARY_NAME} PRIVATE "${CMAKE_SOURCE_DIR}") + +# Run the Flutter tool portions of the build. This must not be removed. +add_dependencies(${BINARY_NAME} flutter_assemble) diff --git a/windows/runner/Runner.rc b/windows/runner/Runner.rc new file mode 100644 index 0000000..04e1d82 --- /dev/null +++ b/windows/runner/Runner.rc @@ -0,0 +1,121 @@ +// Microsoft Visual C++ generated resource script. +// +#pragma code_page(65001) +#include "resource.h" + +#define APSTUDIO_READONLY_SYMBOLS +///////////////////////////////////////////////////////////////////////////// +// +// Generated from the TEXTINCLUDE 2 resource. +// +#include "winres.h" + +///////////////////////////////////////////////////////////////////////////// +#undef APSTUDIO_READONLY_SYMBOLS + +///////////////////////////////////////////////////////////////////////////// +// English (United States) resources + +#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU) +LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US + +#ifdef APSTUDIO_INVOKED +///////////////////////////////////////////////////////////////////////////// +// +// TEXTINCLUDE +// + +1 TEXTINCLUDE +BEGIN + "resource.h\0" +END + +2 TEXTINCLUDE +BEGIN + "#include ""winres.h""\r\n" + "\0" +END + +3 TEXTINCLUDE +BEGIN + "\r\n" + "\0" +END + +#endif // APSTUDIO_INVOKED + + +///////////////////////////////////////////////////////////////////////////// +// +// Icon +// + +// Icon with lowest ID value placed first to ensure application icon +// remains consistent on all systems. +IDI_APP_ICON ICON "resources\\app_icon.ico" + + +///////////////////////////////////////////////////////////////////////////// +// +// Version +// + +#if defined(FLUTTER_VERSION_MAJOR) && defined(FLUTTER_VERSION_MINOR) && defined(FLUTTER_VERSION_PATCH) && defined(FLUTTER_VERSION_BUILD) +#define VERSION_AS_NUMBER FLUTTER_VERSION_MAJOR,FLUTTER_VERSION_MINOR,FLUTTER_VERSION_PATCH,FLUTTER_VERSION_BUILD +#else +#define VERSION_AS_NUMBER 1,0,0,0 +#endif + +#if defined(FLUTTER_VERSION) +#define VERSION_AS_STRING FLUTTER_VERSION +#else +#define VERSION_AS_STRING "1.0.0" +#endif + +VS_VERSION_INFO VERSIONINFO + FILEVERSION VERSION_AS_NUMBER + PRODUCTVERSION VERSION_AS_NUMBER + FILEFLAGSMASK VS_FFI_FILEFLAGSMASK +#ifdef _DEBUG + FILEFLAGS VS_FF_DEBUG +#else + FILEFLAGS 0x0L +#endif + FILEOS VOS__WINDOWS32 + FILETYPE VFT_APP + FILESUBTYPE 0x0L +BEGIN + BLOCK "StringFileInfo" + BEGIN + BLOCK "040904e4" + BEGIN + VALUE "CompanyName", "com.example" "\0" + VALUE "FileDescription", "environment_monitoring_app" "\0" + VALUE "FileVersion", VERSION_AS_STRING "\0" + VALUE "InternalName", "environment_monitoring_app" "\0" + VALUE "LegalCopyright", "Copyright (C) 2025 com.example. All rights reserved." "\0" + VALUE "OriginalFilename", "environment_monitoring_app.exe" "\0" + VALUE "ProductName", "environment_monitoring_app" "\0" + VALUE "ProductVersion", VERSION_AS_STRING "\0" + END + END + BLOCK "VarFileInfo" + BEGIN + VALUE "Translation", 0x409, 1252 + END +END + +#endif // English (United States) resources +///////////////////////////////////////////////////////////////////////////// + + + +#ifndef APSTUDIO_INVOKED +///////////////////////////////////////////////////////////////////////////// +// +// Generated from the TEXTINCLUDE 3 resource. +// + + +///////////////////////////////////////////////////////////////////////////// +#endif // not APSTUDIO_INVOKED diff --git a/windows/runner/flutter_window.cpp b/windows/runner/flutter_window.cpp new file mode 100644 index 0000000..955ee30 --- /dev/null +++ b/windows/runner/flutter_window.cpp @@ -0,0 +1,71 @@ +#include "flutter_window.h" + +#include + +#include "flutter/generated_plugin_registrant.h" + +FlutterWindow::FlutterWindow(const flutter::DartProject& project) + : project_(project) {} + +FlutterWindow::~FlutterWindow() {} + +bool FlutterWindow::OnCreate() { + if (!Win32Window::OnCreate()) { + return false; + } + + RECT frame = GetClientArea(); + + // The size here must match the window dimensions to avoid unnecessary surface + // creation / destruction in the startup path. + flutter_controller_ = std::make_unique( + frame.right - frame.left, frame.bottom - frame.top, project_); + // Ensure that basic setup of the controller was successful. + if (!flutter_controller_->engine() || !flutter_controller_->view()) { + return false; + } + RegisterPlugins(flutter_controller_->engine()); + SetChildContent(flutter_controller_->view()->GetNativeWindow()); + + flutter_controller_->engine()->SetNextFrameCallback([&]() { + this->Show(); + }); + + // Flutter can complete the first frame before the "show window" callback is + // registered. The following call ensures a frame is pending to ensure the + // window is shown. It is a no-op if the first frame hasn't completed yet. + flutter_controller_->ForceRedraw(); + + return true; +} + +void FlutterWindow::OnDestroy() { + if (flutter_controller_) { + flutter_controller_ = nullptr; + } + + Win32Window::OnDestroy(); +} + +LRESULT +FlutterWindow::MessageHandler(HWND hwnd, UINT const message, + WPARAM const wparam, + LPARAM const lparam) noexcept { + // Give Flutter, including plugins, an opportunity to handle window messages. + if (flutter_controller_) { + std::optional result = + flutter_controller_->HandleTopLevelWindowProc(hwnd, message, wparam, + lparam); + if (result) { + return *result; + } + } + + switch (message) { + case WM_FONTCHANGE: + flutter_controller_->engine()->ReloadSystemFonts(); + break; + } + + return Win32Window::MessageHandler(hwnd, message, wparam, lparam); +} diff --git a/windows/runner/flutter_window.h b/windows/runner/flutter_window.h new file mode 100644 index 0000000..6da0652 --- /dev/null +++ b/windows/runner/flutter_window.h @@ -0,0 +1,33 @@ +#ifndef RUNNER_FLUTTER_WINDOW_H_ +#define RUNNER_FLUTTER_WINDOW_H_ + +#include +#include + +#include + +#include "win32_window.h" + +// A window that does nothing but host a Flutter view. +class FlutterWindow : public Win32Window { + public: + // Creates a new FlutterWindow hosting a Flutter view running |project|. + explicit FlutterWindow(const flutter::DartProject& project); + virtual ~FlutterWindow(); + + protected: + // Win32Window: + bool OnCreate() override; + void OnDestroy() override; + LRESULT MessageHandler(HWND window, UINT const message, WPARAM const wparam, + LPARAM const lparam) noexcept override; + + private: + // The project to run. + flutter::DartProject project_; + + // The Flutter instance hosted by this window. + std::unique_ptr flutter_controller_; +}; + +#endif // RUNNER_FLUTTER_WINDOW_H_ diff --git a/windows/runner/main.cpp b/windows/runner/main.cpp new file mode 100644 index 0000000..0faa875 --- /dev/null +++ b/windows/runner/main.cpp @@ -0,0 +1,43 @@ +#include +#include +#include + +#include "flutter_window.h" +#include "utils.h" + +int APIENTRY wWinMain(_In_ HINSTANCE instance, _In_opt_ HINSTANCE prev, + _In_ wchar_t *command_line, _In_ int show_command) { + // Attach to console when present (e.g., 'flutter run') or create a + // new console when running with a debugger. + if (!::AttachConsole(ATTACH_PARENT_PROCESS) && ::IsDebuggerPresent()) { + CreateAndAttachConsole(); + } + + // Initialize COM, so that it is available for use in the library and/or + // plugins. + ::CoInitializeEx(nullptr, COINIT_APARTMENTTHREADED); + + flutter::DartProject project(L"data"); + + std::vector command_line_arguments = + GetCommandLineArguments(); + + project.set_dart_entrypoint_arguments(std::move(command_line_arguments)); + + FlutterWindow window(project); + Win32Window::Point origin(10, 10); + Win32Window::Size size(1280, 720); + if (!window.Create(L"environment_monitoring_app", origin, size)) { + return EXIT_FAILURE; + } + window.SetQuitOnClose(true); + + ::MSG msg; + while (::GetMessage(&msg, nullptr, 0, 0)) { + ::TranslateMessage(&msg); + ::DispatchMessage(&msg); + } + + ::CoUninitialize(); + return EXIT_SUCCESS; +} diff --git a/windows/runner/resource.h b/windows/runner/resource.h new file mode 100644 index 0000000..66a65d1 --- /dev/null +++ b/windows/runner/resource.h @@ -0,0 +1,16 @@ +//{{NO_DEPENDENCIES}} +// Microsoft Visual C++ generated include file. +// Used by Runner.rc +// +#define IDI_APP_ICON 101 + +// Next default values for new objects +// +#ifdef APSTUDIO_INVOKED +#ifndef APSTUDIO_READONLY_SYMBOLS +#define _APS_NEXT_RESOURCE_VALUE 102 +#define _APS_NEXT_COMMAND_VALUE 40001 +#define _APS_NEXT_CONTROL_VALUE 1001 +#define _APS_NEXT_SYMED_VALUE 101 +#endif +#endif diff --git a/windows/runner/resources/app_icon.ico b/windows/runner/resources/app_icon.ico new file mode 100644 index 0000000000000000000000000000000000000000..c04e20caf6370ebb9253ad831cc31de4a9c965f6 GIT binary patch literal 33772 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 literal 0 HcmV?d00001 diff --git a/windows/runner/runner.exe.manifest b/windows/runner/runner.exe.manifest new file mode 100644 index 0000000..153653e --- /dev/null +++ b/windows/runner/runner.exe.manifest @@ -0,0 +1,14 @@ + + + + + PerMonitorV2 + + + + + + + + + diff --git a/windows/runner/utils.cpp b/windows/runner/utils.cpp new file mode 100644 index 0000000..3a0b465 --- /dev/null +++ b/windows/runner/utils.cpp @@ -0,0 +1,65 @@ +#include "utils.h" + +#include +#include +#include +#include + +#include + +void CreateAndAttachConsole() { + if (::AllocConsole()) { + FILE *unused; + if (freopen_s(&unused, "CONOUT$", "w", stdout)) { + _dup2(_fileno(stdout), 1); + } + if (freopen_s(&unused, "CONOUT$", "w", stderr)) { + _dup2(_fileno(stdout), 2); + } + std::ios::sync_with_stdio(); + FlutterDesktopResyncOutputStreams(); + } +} + +std::vector GetCommandLineArguments() { + // Convert the UTF-16 command line arguments to UTF-8 for the Engine to use. + int argc; + wchar_t** argv = ::CommandLineToArgvW(::GetCommandLineW(), &argc); + if (argv == nullptr) { + return std::vector(); + } + + std::vector command_line_arguments; + + // Skip the first argument as it's the binary name. + for (int i = 1; i < argc; i++) { + command_line_arguments.push_back(Utf8FromUtf16(argv[i])); + } + + ::LocalFree(argv); + + return command_line_arguments; +} + +std::string Utf8FromUtf16(const wchar_t* utf16_string) { + if (utf16_string == nullptr) { + return std::string(); + } + unsigned int target_length = ::WideCharToMultiByte( + CP_UTF8, WC_ERR_INVALID_CHARS, utf16_string, + -1, nullptr, 0, nullptr, nullptr) + -1; // remove the trailing null character + int input_length = (int)wcslen(utf16_string); + std::string utf8_string; + if (target_length == 0 || target_length > utf8_string.max_size()) { + return utf8_string; + } + utf8_string.resize(target_length); + int converted_length = ::WideCharToMultiByte( + CP_UTF8, WC_ERR_INVALID_CHARS, utf16_string, + input_length, utf8_string.data(), target_length, nullptr, nullptr); + if (converted_length == 0) { + return std::string(); + } + return utf8_string; +} diff --git a/windows/runner/utils.h b/windows/runner/utils.h new file mode 100644 index 0000000..3879d54 --- /dev/null +++ b/windows/runner/utils.h @@ -0,0 +1,19 @@ +#ifndef RUNNER_UTILS_H_ +#define RUNNER_UTILS_H_ + +#include +#include + +// Creates a console for the process, and redirects stdout and stderr to +// it for both the runner and the Flutter library. +void CreateAndAttachConsole(); + +// Takes a null-terminated wchar_t* encoded in UTF-16 and returns a std::string +// encoded in UTF-8. Returns an empty std::string on failure. +std::string Utf8FromUtf16(const wchar_t* utf16_string); + +// Gets the command line arguments passed in as a std::vector, +// encoded in UTF-8. Returns an empty std::vector on failure. +std::vector GetCommandLineArguments(); + +#endif // RUNNER_UTILS_H_ diff --git a/windows/runner/win32_window.cpp b/windows/runner/win32_window.cpp new file mode 100644 index 0000000..60608d0 --- /dev/null +++ b/windows/runner/win32_window.cpp @@ -0,0 +1,288 @@ +#include "win32_window.h" + +#include +#include + +#include "resource.h" + +namespace { + +/// Window attribute that enables dark mode window decorations. +/// +/// Redefined in case the developer's machine has a Windows SDK older than +/// version 10.0.22000.0. +/// See: https://docs.microsoft.com/windows/win32/api/dwmapi/ne-dwmapi-dwmwindowattribute +#ifndef DWMWA_USE_IMMERSIVE_DARK_MODE +#define DWMWA_USE_IMMERSIVE_DARK_MODE 20 +#endif + +constexpr const wchar_t kWindowClassName[] = L"FLUTTER_RUNNER_WIN32_WINDOW"; + +/// Registry key for app theme preference. +/// +/// A value of 0 indicates apps should use dark mode. A non-zero or missing +/// value indicates apps should use light mode. +constexpr const wchar_t kGetPreferredBrightnessRegKey[] = + L"Software\\Microsoft\\Windows\\CurrentVersion\\Themes\\Personalize"; +constexpr const wchar_t kGetPreferredBrightnessRegValue[] = L"AppsUseLightTheme"; + +// The number of Win32Window objects that currently exist. +static int g_active_window_count = 0; + +using EnableNonClientDpiScaling = BOOL __stdcall(HWND hwnd); + +// Scale helper to convert logical scaler values to physical using passed in +// scale factor +int Scale(int source, double scale_factor) { + return static_cast(source * scale_factor); +} + +// Dynamically loads the |EnableNonClientDpiScaling| from the User32 module. +// This API is only needed for PerMonitor V1 awareness mode. +void EnableFullDpiSupportIfAvailable(HWND hwnd) { + HMODULE user32_module = LoadLibraryA("User32.dll"); + if (!user32_module) { + return; + } + auto enable_non_client_dpi_scaling = + reinterpret_cast( + GetProcAddress(user32_module, "EnableNonClientDpiScaling")); + if (enable_non_client_dpi_scaling != nullptr) { + enable_non_client_dpi_scaling(hwnd); + } + FreeLibrary(user32_module); +} + +} // namespace + +// Manages the Win32Window's window class registration. +class WindowClassRegistrar { + public: + ~WindowClassRegistrar() = default; + + // Returns the singleton registrar instance. + static WindowClassRegistrar* GetInstance() { + if (!instance_) { + instance_ = new WindowClassRegistrar(); + } + return instance_; + } + + // Returns the name of the window class, registering the class if it hasn't + // previously been registered. + const wchar_t* GetWindowClass(); + + // Unregisters the window class. Should only be called if there are no + // instances of the window. + void UnregisterWindowClass(); + + private: + WindowClassRegistrar() = default; + + static WindowClassRegistrar* instance_; + + bool class_registered_ = false; +}; + +WindowClassRegistrar* WindowClassRegistrar::instance_ = nullptr; + +const wchar_t* WindowClassRegistrar::GetWindowClass() { + if (!class_registered_) { + WNDCLASS window_class{}; + window_class.hCursor = LoadCursor(nullptr, IDC_ARROW); + window_class.lpszClassName = kWindowClassName; + window_class.style = CS_HREDRAW | CS_VREDRAW; + window_class.cbClsExtra = 0; + window_class.cbWndExtra = 0; + window_class.hInstance = GetModuleHandle(nullptr); + window_class.hIcon = + LoadIcon(window_class.hInstance, MAKEINTRESOURCE(IDI_APP_ICON)); + window_class.hbrBackground = 0; + window_class.lpszMenuName = nullptr; + window_class.lpfnWndProc = Win32Window::WndProc; + RegisterClass(&window_class); + class_registered_ = true; + } + return kWindowClassName; +} + +void WindowClassRegistrar::UnregisterWindowClass() { + UnregisterClass(kWindowClassName, nullptr); + class_registered_ = false; +} + +Win32Window::Win32Window() { + ++g_active_window_count; +} + +Win32Window::~Win32Window() { + --g_active_window_count; + Destroy(); +} + +bool Win32Window::Create(const std::wstring& title, + const Point& origin, + const Size& size) { + Destroy(); + + const wchar_t* window_class = + WindowClassRegistrar::GetInstance()->GetWindowClass(); + + const POINT target_point = {static_cast(origin.x), + static_cast(origin.y)}; + HMONITOR monitor = MonitorFromPoint(target_point, MONITOR_DEFAULTTONEAREST); + UINT dpi = FlutterDesktopGetDpiForMonitor(monitor); + double scale_factor = dpi / 96.0; + + HWND window = CreateWindow( + window_class, title.c_str(), WS_OVERLAPPEDWINDOW, + Scale(origin.x, scale_factor), Scale(origin.y, scale_factor), + Scale(size.width, scale_factor), Scale(size.height, scale_factor), + nullptr, nullptr, GetModuleHandle(nullptr), this); + + if (!window) { + return false; + } + + UpdateTheme(window); + + return OnCreate(); +} + +bool Win32Window::Show() { + return ShowWindow(window_handle_, SW_SHOWNORMAL); +} + +// static +LRESULT CALLBACK Win32Window::WndProc(HWND const window, + UINT const message, + WPARAM const wparam, + LPARAM const lparam) noexcept { + if (message == WM_NCCREATE) { + auto window_struct = reinterpret_cast(lparam); + SetWindowLongPtr(window, GWLP_USERDATA, + reinterpret_cast(window_struct->lpCreateParams)); + + auto that = static_cast(window_struct->lpCreateParams); + EnableFullDpiSupportIfAvailable(window); + that->window_handle_ = window; + } else if (Win32Window* that = GetThisFromHandle(window)) { + return that->MessageHandler(window, message, wparam, lparam); + } + + return DefWindowProc(window, message, wparam, lparam); +} + +LRESULT +Win32Window::MessageHandler(HWND hwnd, + UINT const message, + WPARAM const wparam, + LPARAM const lparam) noexcept { + switch (message) { + case WM_DESTROY: + window_handle_ = nullptr; + Destroy(); + if (quit_on_close_) { + PostQuitMessage(0); + } + return 0; + + case WM_DPICHANGED: { + auto newRectSize = reinterpret_cast(lparam); + LONG newWidth = newRectSize->right - newRectSize->left; + LONG newHeight = newRectSize->bottom - newRectSize->top; + + SetWindowPos(hwnd, nullptr, newRectSize->left, newRectSize->top, newWidth, + newHeight, SWP_NOZORDER | SWP_NOACTIVATE); + + return 0; + } + case WM_SIZE: { + RECT rect = GetClientArea(); + if (child_content_ != nullptr) { + // Size and position the child window. + MoveWindow(child_content_, rect.left, rect.top, rect.right - rect.left, + rect.bottom - rect.top, TRUE); + } + return 0; + } + + case WM_ACTIVATE: + if (child_content_ != nullptr) { + SetFocus(child_content_); + } + return 0; + + case WM_DWMCOLORIZATIONCOLORCHANGED: + UpdateTheme(hwnd); + return 0; + } + + return DefWindowProc(window_handle_, message, wparam, lparam); +} + +void Win32Window::Destroy() { + OnDestroy(); + + if (window_handle_) { + DestroyWindow(window_handle_); + window_handle_ = nullptr; + } + if (g_active_window_count == 0) { + WindowClassRegistrar::GetInstance()->UnregisterWindowClass(); + } +} + +Win32Window* Win32Window::GetThisFromHandle(HWND const window) noexcept { + return reinterpret_cast( + GetWindowLongPtr(window, GWLP_USERDATA)); +} + +void Win32Window::SetChildContent(HWND content) { + child_content_ = content; + SetParent(content, window_handle_); + RECT frame = GetClientArea(); + + MoveWindow(content, frame.left, frame.top, frame.right - frame.left, + frame.bottom - frame.top, true); + + SetFocus(child_content_); +} + +RECT Win32Window::GetClientArea() { + RECT frame; + GetClientRect(window_handle_, &frame); + return frame; +} + +HWND Win32Window::GetHandle() { + return window_handle_; +} + +void Win32Window::SetQuitOnClose(bool quit_on_close) { + quit_on_close_ = quit_on_close; +} + +bool Win32Window::OnCreate() { + // No-op; provided for subclasses. + return true; +} + +void Win32Window::OnDestroy() { + // No-op; provided for subclasses. +} + +void Win32Window::UpdateTheme(HWND const window) { + DWORD light_mode; + DWORD light_mode_size = sizeof(light_mode); + LSTATUS result = RegGetValue(HKEY_CURRENT_USER, kGetPreferredBrightnessRegKey, + kGetPreferredBrightnessRegValue, + RRF_RT_REG_DWORD, nullptr, &light_mode, + &light_mode_size); + + if (result == ERROR_SUCCESS) { + BOOL enable_dark_mode = light_mode == 0; + DwmSetWindowAttribute(window, DWMWA_USE_IMMERSIVE_DARK_MODE, + &enable_dark_mode, sizeof(enable_dark_mode)); + } +} diff --git a/windows/runner/win32_window.h b/windows/runner/win32_window.h new file mode 100644 index 0000000..e901dde --- /dev/null +++ b/windows/runner/win32_window.h @@ -0,0 +1,102 @@ +#ifndef RUNNER_WIN32_WINDOW_H_ +#define RUNNER_WIN32_WINDOW_H_ + +#include + +#include +#include +#include + +// A class abstraction for a high DPI-aware Win32 Window. Intended to be +// inherited from by classes that wish to specialize with custom +// rendering and input handling +class Win32Window { + public: + struct Point { + unsigned int x; + unsigned int y; + Point(unsigned int x, unsigned int y) : x(x), y(y) {} + }; + + struct Size { + unsigned int width; + unsigned int height; + Size(unsigned int width, unsigned int height) + : width(width), height(height) {} + }; + + Win32Window(); + virtual ~Win32Window(); + + // Creates a win32 window with |title| that is positioned and sized using + // |origin| and |size|. New windows are created on the default monitor. Window + // sizes are specified to the OS in physical pixels, hence to ensure a + // consistent size this function will scale the inputted width and height as + // as appropriate for the default monitor. The window is invisible until + // |Show| is called. Returns true if the window was created successfully. + bool Create(const std::wstring& title, const Point& origin, const Size& size); + + // Show the current window. Returns true if the window was successfully shown. + bool Show(); + + // Release OS resources associated with window. + void Destroy(); + + // Inserts |content| into the window tree. + void SetChildContent(HWND content); + + // Returns the backing Window handle to enable clients to set icon and other + // window properties. Returns nullptr if the window has been destroyed. + HWND GetHandle(); + + // If true, closing this window will quit the application. + void SetQuitOnClose(bool quit_on_close); + + // Return a RECT representing the bounds of the current client area. + RECT GetClientArea(); + + protected: + // Processes and route salient window messages for mouse handling, + // size change and DPI. Delegates handling of these to member overloads that + // inheriting classes can handle. + virtual LRESULT MessageHandler(HWND window, + UINT const message, + WPARAM const wparam, + LPARAM const lparam) noexcept; + + // Called when CreateAndShow is called, allowing subclass window-related + // setup. Subclasses should return false if setup fails. + virtual bool OnCreate(); + + // Called when Destroy is called. + virtual void OnDestroy(); + + private: + friend class WindowClassRegistrar; + + // OS callback called by message pump. Handles the WM_NCCREATE message which + // is passed when the non-client area is being created and enables automatic + // non-client DPI scaling so that the non-client area automatically + // responds to changes in DPI. All other messages are handled by + // MessageHandler. + static LRESULT CALLBACK WndProc(HWND const window, + UINT const message, + WPARAM const wparam, + LPARAM const lparam) noexcept; + + // Retrieves a class instance pointer for |window| + static Win32Window* GetThisFromHandle(HWND const window) noexcept; + + // Update the window frame's theme to match the system theme. + static void UpdateTheme(HWND const window); + + bool quit_on_close_ = false; + + // window handle for top level window. + HWND window_handle_ = nullptr; + + // window handle for hosted content. + HWND child_content_ = nullptr; +}; + +#endif // RUNNER_WIN32_WINDOW_H_

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℞e-asD}%;wg`P9&WhyMY!t1t1+lzPJLR} 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 S%~Z4i0000L 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