From d351f4a6cef7b1ec740ea745c93d2aed536fcac6 Mon Sep 17 00:00:00 2001 From: Pixel20coder Date: Sat, 28 Mar 2026 18:35:10 +0530 Subject: [PATCH 1/2] Added Team Shivam - SheShield --- Team-Shivam/SheShield | 1 + 1 file changed, 1 insertion(+) create mode 160000 Team-Shivam/SheShield diff --git a/Team-Shivam/SheShield b/Team-Shivam/SheShield new file mode 160000 index 0000000..08a2866 --- /dev/null +++ b/Team-Shivam/SheShield @@ -0,0 +1 @@ +Subproject commit 08a286633082b753b7195a30c893709a1dbb2779 From c0fd9046374834c3854afa2a1ee398049342eadd Mon Sep 17 00:00:00 2001 From: Pixel20coder Date: Sat, 28 Mar 2026 18:36:19 +0530 Subject: [PATCH 2/2] Fixed project upload (removed nested git) --- .DS_Store | Bin 0 -> 6148 bytes Team-Shivam/.DS_Store | Bin 0 -> 6148 bytes Team-Shivam/SheShield | 1 - Team-Shivam/SheShield/.gitignore | 37 + Team-Shivam/SheShield/Get | 0 Team-Shivam/SheShield/README.md | 183 ++ Team-Shivam/SheShield/Run | 0 Team-Shivam/SheShield/SYSTEM_ARCHITECTURE.md | 244 +++ Team-Shivam/SheShield/Stellaris-Hackathon | 1 + Team-Shivam/SheShield/analysis_options.yaml | 1 + Team-Shivam/SheShield/android/.gitignore | 14 + .../SheShield/android/app/build.gradle.kts | 49 + .../android/app/google-services.json | 29 + .../android/app/src/debug/AndroidManifest.xml | 7 + .../android/app/src/main/AndroidManifest.xml | 73 + .../com/sheshield/sheshield/MainActivity.kt | 37 + .../res/drawable-v21/launch_background.xml | 11 + .../main/res/drawable-xxhdpi/splash_logo.png | Bin 0 -> 24450 bytes .../main/res/drawable/launch_background.xml | 9 + .../src/main/res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 5134 bytes .../src/main/res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 2792 bytes .../src/main/res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 7941 bytes .../main/res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 14576 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 22849 bytes .../app/src/main/res/values-night/styles.xml | 18 + .../app/src/main/res/values/styles.xml | 18 + .../app/src/profile/AndroidManifest.xml | 7 + .../SheShield/android/build.gradle.kts | 28 + .../SheShield/android/gradle.properties | 4 + .../gradle/wrapper/gradle-wrapper.properties | 5 + .../SheShield/android/settings.gradle.kts | 26 + Team-Shivam/SheShield/assets/images/logo.png | Bin 0 -> 394960 bytes ...d.builder.sdk.LicenceNotAcceptedException: | 0 .../SheShield/esp32/sheshield_band.ino | 229 +++ Team-Shivam/SheShield/lib/main.dart | 552 ++++++ .../lib/screens/bluetooth_screen.dart | 657 +++++++ .../lib/screens/contacts_screen.dart | 488 +++++ .../lib/screens/emergency_status_screen.dart | 333 ++++ .../lib/screens/fake_call_screen.dart | 281 +++ .../SheShield/lib/screens/home_screen.dart | 1709 +++++++++++++++++ .../lib/screens/location_screen.dart | 389 ++++ .../SheShield/lib/screens/login_screen.dart | 315 +++ .../lib/screens/nearby_police_screen.dart | 407 ++++ .../lib/screens/past_emergencies_screen.dart | 545 ++++++ .../SheShield/lib/screens/profile_screen.dart | 438 +++++ .../lib/screens/security_setup_screen.dart | 327 ++++ .../SheShield/lib/screens/sos_screen.dart | 253 +++ .../lib/screens/video_player_screen.dart | 221 +++ .../SheShield/lib/services/alert_service.dart | 63 + .../lib/services/bluetooth_service.dart | 285 +++ .../lib/services/bracelet_service.dart | 147 ++ .../lib/services/location_service.dart | 144 ++ .../lib/services/notification_service.dart | 59 + .../lib/services/places_service.dart | 215 +++ .../lib/services/risk_assessment_service.dart | 406 ++++ .../SheShield/lib/services/sms_service.dart | 85 + .../lib/services/storage_service.dart | 78 + .../lib/services/video_recording_service.dart | 176 ++ .../lib/services/voice_trigger_service.dart | 163 ++ Team-Shivam/SheShield/pubspec.yaml | 44 + .../add emergenc contacts .jpeg | Bin 0 -> 24565 bytes .../band not connected .jpeg | Bin 0 -> 47754 bytes .../bluetooth connected .jpeg | Bin 0 -> 49492 bytes .../screenshots & video/homepage 1 .jpeg | Bin 0 -> 42602 bytes .../screenshots & video/homepage.jpeg | Bin 0 -> 39585 bytes .../screenshots & video/live location.jpeg | Bin 0 -> 50563 bytes .../nearby police stations .jpeg | Bin 0 -> 74713 bytes .../past emergencies .jpeg | Bin 0 -> 54162 bytes .../screenshots & video/profile.jpeg | Bin 0 -> 31766 bytes .../screenshots & video/share location.jpeg | Bin 0 -> 43571 bytes .../screenshots & video/sign in .jpeg | Bin 0 -> 24391 bytes .../SheShield/screenshots & video/signup.jpeg | Bin 0 -> 27559 bytes .../screenshots & video/sos triggered.jpeg | Bin 0 -> 32074 bytes Team-Shivam/SheShield/test/widget_test.dart | 9 + 74 files changed, 9819 insertions(+), 1 deletion(-) create mode 100644 .DS_Store create mode 100644 Team-Shivam/.DS_Store delete mode 160000 Team-Shivam/SheShield create mode 100644 Team-Shivam/SheShield/.gitignore create mode 100644 Team-Shivam/SheShield/Get create mode 100644 Team-Shivam/SheShield/README.md create mode 100644 Team-Shivam/SheShield/Run create mode 100644 Team-Shivam/SheShield/SYSTEM_ARCHITECTURE.md create mode 160000 Team-Shivam/SheShield/Stellaris-Hackathon create mode 100644 Team-Shivam/SheShield/analysis_options.yaml create mode 100644 Team-Shivam/SheShield/android/.gitignore create mode 100644 Team-Shivam/SheShield/android/app/build.gradle.kts create mode 100644 Team-Shivam/SheShield/android/app/google-services.json create mode 100644 Team-Shivam/SheShield/android/app/src/debug/AndroidManifest.xml create mode 100644 Team-Shivam/SheShield/android/app/src/main/AndroidManifest.xml create mode 100644 Team-Shivam/SheShield/android/app/src/main/kotlin/com/sheshield/sheshield/MainActivity.kt create mode 100644 Team-Shivam/SheShield/android/app/src/main/res/drawable-v21/launch_background.xml create mode 100644 Team-Shivam/SheShield/android/app/src/main/res/drawable-xxhdpi/splash_logo.png create mode 100644 Team-Shivam/SheShield/android/app/src/main/res/drawable/launch_background.xml create mode 100644 Team-Shivam/SheShield/android/app/src/main/res/mipmap-hdpi/ic_launcher.png create mode 100644 Team-Shivam/SheShield/android/app/src/main/res/mipmap-mdpi/ic_launcher.png create mode 100644 Team-Shivam/SheShield/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png create mode 100644 Team-Shivam/SheShield/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 Team-Shivam/SheShield/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 Team-Shivam/SheShield/android/app/src/main/res/values-night/styles.xml create mode 100644 Team-Shivam/SheShield/android/app/src/main/res/values/styles.xml create mode 100644 Team-Shivam/SheShield/android/app/src/profile/AndroidManifest.xml create mode 100644 Team-Shivam/SheShield/android/build.gradle.kts create mode 100644 Team-Shivam/SheShield/android/gradle.properties create mode 100644 Team-Shivam/SheShield/android/gradle/wrapper/gradle-wrapper.properties create mode 100644 Team-Shivam/SheShield/android/settings.gradle.kts create mode 100644 Team-Shivam/SheShield/assets/images/logo.png create mode 100644 Team-Shivam/SheShield/com.android.builder.sdk.LicenceNotAcceptedException: create mode 100644 Team-Shivam/SheShield/esp32/sheshield_band.ino create mode 100644 Team-Shivam/SheShield/lib/main.dart create mode 100644 Team-Shivam/SheShield/lib/screens/bluetooth_screen.dart create mode 100644 Team-Shivam/SheShield/lib/screens/contacts_screen.dart create mode 100644 Team-Shivam/SheShield/lib/screens/emergency_status_screen.dart create mode 100644 Team-Shivam/SheShield/lib/screens/fake_call_screen.dart create mode 100644 Team-Shivam/SheShield/lib/screens/home_screen.dart create mode 100644 Team-Shivam/SheShield/lib/screens/location_screen.dart create mode 100644 Team-Shivam/SheShield/lib/screens/login_screen.dart create mode 100644 Team-Shivam/SheShield/lib/screens/nearby_police_screen.dart create mode 100644 Team-Shivam/SheShield/lib/screens/past_emergencies_screen.dart create mode 100644 Team-Shivam/SheShield/lib/screens/profile_screen.dart create mode 100644 Team-Shivam/SheShield/lib/screens/security_setup_screen.dart create mode 100644 Team-Shivam/SheShield/lib/screens/sos_screen.dart create mode 100644 Team-Shivam/SheShield/lib/screens/video_player_screen.dart create mode 100644 Team-Shivam/SheShield/lib/services/alert_service.dart create mode 100644 Team-Shivam/SheShield/lib/services/bluetooth_service.dart create mode 100644 Team-Shivam/SheShield/lib/services/bracelet_service.dart create mode 100644 Team-Shivam/SheShield/lib/services/location_service.dart create mode 100644 Team-Shivam/SheShield/lib/services/notification_service.dart create mode 100644 Team-Shivam/SheShield/lib/services/places_service.dart create mode 100644 Team-Shivam/SheShield/lib/services/risk_assessment_service.dart create mode 100644 Team-Shivam/SheShield/lib/services/sms_service.dart create mode 100644 Team-Shivam/SheShield/lib/services/storage_service.dart create mode 100644 Team-Shivam/SheShield/lib/services/video_recording_service.dart create mode 100644 Team-Shivam/SheShield/lib/services/voice_trigger_service.dart create mode 100644 Team-Shivam/SheShield/pubspec.yaml create mode 100644 Team-Shivam/SheShield/screenshots & video/add emergenc contacts .jpeg create mode 100644 Team-Shivam/SheShield/screenshots & video/band not connected .jpeg create mode 100644 Team-Shivam/SheShield/screenshots & video/bluetooth connected .jpeg create mode 100644 Team-Shivam/SheShield/screenshots & video/homepage 1 .jpeg create mode 100644 Team-Shivam/SheShield/screenshots & video/homepage.jpeg create mode 100644 Team-Shivam/SheShield/screenshots & video/live location.jpeg create mode 100644 Team-Shivam/SheShield/screenshots & video/nearby police stations .jpeg create mode 100644 Team-Shivam/SheShield/screenshots & video/past emergencies .jpeg create mode 100644 Team-Shivam/SheShield/screenshots & video/profile.jpeg create mode 100644 Team-Shivam/SheShield/screenshots & video/share location.jpeg create mode 100644 Team-Shivam/SheShield/screenshots & video/sign in .jpeg create mode 100644 Team-Shivam/SheShield/screenshots & video/signup.jpeg create mode 100644 Team-Shivam/SheShield/screenshots & video/sos triggered.jpeg create mode 100644 Team-Shivam/SheShield/test/widget_test.dart diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..fea335d0711497eb1237be5a70f1a8de8c9cb7b2 GIT binary patch literal 6148 zcmeHKOH0E*5T32oCKRCu1&<3}tJb&TC00FnHKGTVnwX-&BrAO$N+DXK8X203p`LfBkVIKe>>fLA+paK96I$^=Z;uE8O@(C;0mLj6i&q$#O%aB5J zoJ?eM!(UW@=FWu^oVNfXoVkzrQ#WCvLhPkqV;_C_O&dl4WjNK06qdk;JBXo&{PZ{( zV?BS5753W?cC451A&J|aTJ2R7ri#-uC8y++oh$!N_5DuJ>9*@Z>w;>hN+sba4#Kmz z*>6S5T0$TO(;SS3Oz1(Em~WD@e*r2cr~I2mD-qMgE1@pv4>K~SzpK}@pW`& zcUzFwqhe(SX1>YnOtSel>}CK!)Cb`fKoI~ORKkplW{%J}>5OD-B#S8YJvtCU8)67g z0ix_;^|h*f~2^l2QSZhUA#Z*D~}>^<3vx8Ny`di_e}U1YMk zrRBVncM8sp-%&%q-|7!~^;Y+auFjQ;gNfe?E~56ZSzJ9|n z_^oPLu{eQObmnmJ?01t`CHFWwshm_WG6T#2Gq9Kp*xk%2Eavoi*31Ai@PiD{{vc5a zJ&UP9y>+0`EdXK;!&=a%A4aN?7CnopK^#F5rWDbX3fp1`Q;uC$wBlirUo&B!ao9<1~$yVuQKon8^Kx0 literal 0 HcmV?d00001 diff --git a/Team-Shivam/SheShield b/Team-Shivam/SheShield deleted file mode 160000 index 08a2866..0000000 --- a/Team-Shivam/SheShield +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 08a286633082b753b7195a30c893709a1dbb2779 diff --git a/Team-Shivam/SheShield/.gitignore b/Team-Shivam/SheShield/.gitignore new file mode 100644 index 0000000..3a848e4 --- /dev/null +++ b/Team-Shivam/SheShield/.gitignore @@ -0,0 +1,37 @@ +# Flutter/Dart +.dart_tool/ +.packages +build/ +.flutter-plugins +.flutter-plugins-dependencies + +# Android +android/.gradle/ +android/app/build/ +android/build/ +**/android/**/GeneratedPluginRegistrant.java +*.apk + +# iOS +ios/Pods/ +ios/.symlinks/ +ios/Flutter/Flutter.framework +ios/Flutter/Flutter.podspec + +# IDE +.idea/ +.vscode/ +*.iml + +# Miscellaneous +*.class +*.log +*.pyc +*.swp +.DS_Store +.atom/ +.buildlog/ +.history +.svn/ +*.lock +pubspec.lock diff --git a/Team-Shivam/SheShield/Get b/Team-Shivam/SheShield/Get new file mode 100644 index 0000000..e69de29 diff --git a/Team-Shivam/SheShield/README.md b/Team-Shivam/SheShield/README.md new file mode 100644 index 0000000..5c255ad --- /dev/null +++ b/Team-Shivam/SheShield/README.md @@ -0,0 +1,183 @@ +# She Shield – Smart Safety Wearable System πŸ›‘οΈ + +SheShield is a women's safety wearable system developed for HackHerThon 2026. It consists of a **smart safety bracelet** (ESP32 hardware) and a **Flutter mobile app** (emergency response). The bracelet detects danger via SOS button and shake/motion sensor, then triggers the phone app over **Bluetooth Classic (SPP)** to send alerts, share location, record video, and contact emergency services. + +## **πŸ“Ή Prototype & App Demonstration Video** + +### **[β–Ά Click here to watch the full demo on Google Drive](https://drive.google.com/file/d/1BB_w9BKbrbSptshWBkR0CEz_fbgr8N_p/view?usp=sharing)** + +--- + +## System Architecture + +``` +β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” Bluetooth Classic (SPP) β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” +β”‚ ESP32 Bracelet β”‚ ──────────────────────────────────▢ β”‚ Flutter App β”‚ +β”‚ β”‚ β”‚ β”‚ +β”‚ β€’ SOS Button β”‚ "SOS\n" / "SHAKE\n" β”‚ β€’ SOS Alert UI β”‚ +β”‚ β€’ Accelerometer β”‚ ◀────────────────────────────────── β”‚ β€’ SMS to Contacts β”‚ +β”‚ β€’ Buzzer β”‚ "BUZZER_ON\n" / "LED_ON\n" β”‚ β€’ Live Location β”‚ +β”‚ β€’ LED β”‚ β”‚ β€’ Video Recording β”‚ +β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ β€’ Police Stations β”‚ + β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ +``` + +| Component | Role | +|---|---| +| **ESP32 Bracelet (Hardware)** | Trigger β€” SOS button, accelerometer shake, buzzer, LED | +| **Mobile App (Software)** | Response β€” GPS, alerts, SMS, video, maps, notifications | + +--- + +## Features + +### πŸ”§ ESP32 Bracelet (Trigger Device) +- πŸ”˜ **SOS Button** β€” Press to send `"SOS\n"` to the app +- πŸ“³ **Shake Detection** β€” MPU6050 accelerometer auto-sends `"SHAKE\n"` +- πŸ”Š **Remote Buzzer** β€” App can trigger buzzer via `"BUZZER_ON\n"` +- πŸ’‘ **Remote LED** β€” App controls LED via `"LED_ON\n"` / `"LED_OFF\n"` +- πŸ“‘ **Bluetooth Classic** β€” Broadcasts as `"SheShield"` via SPP/RFCOMM + +### πŸ“± Mobile App (Response System) +- πŸ” **Login / Sign-Up** β€” Firebase email/password authentication +- πŸ”΄ **SOS Button** β€” 3-second hold to prevent accidental triggers +- πŸ“ **Live Location** β€” GPS tracking with Google Maps (updates every 5s) +- πŸ“€ **Share Location** β€” WhatsApp, SMS, or clipboard +- πŸš” **Nearby Police Stations** β€” OpenStreetMap Overpass API, sorted by distance +- πŸ‘₯ **Emergency Contacts** β€” Add, delete, send SOS SMS to all with location link +- πŸ“‘ **Bluetooth Classic Pairing** β€” Connect to ESP32, persistent connection across screens +- πŸŽ™οΈ **Voice Commands** β€” Phone mic detects "help", "bachao", "danger", "police" +- πŸ“Ή **SOS Video Recording** β€” Auto-records 30s video, uploads to Firebase Storage +- πŸ”” **Push Notifications** β€” Firebase Cloud Messaging alerts +- πŸ—‚οΈ **Past Emergencies** β€” View history of triggered SOS events + +### πŸ”— Persistent Bluetooth Connection +- **Singleton service** β€” Connection stays alive across all screens +- **Global SOS listener** β€” Triggers emergency from any screen +- **Only disconnects** when user explicitly taps "Disconnect" + +--- + +## Setup + +### Prerequisites +- [Flutter SDK](https://docs.flutter.dev/get-started/install) (3.0+) +- Android Studio or VS Code with Flutter plugin +- Firebase project (Auth, Firestore, Storage, FCM) +- Google Maps API key +- [Arduino IDE](https://www.arduino.cc/en/software) (for ESP32) + +### 1. Install Flutter Dependencies + +```bash +cd sheshield +flutter pub get +``` + +### 2. Firebase Setup +- Add your `google-services.json` to `android/app/` +- Enable: Authentication (Email/Password), Firestore, Storage, Cloud Messaging + +### 3. Google Maps API Key +Already configured in `AndroidManifest.xml`. + +### 4. ESP32 Setup +1. Open `esp32/sheshield_band.ino` in Arduino IDE +2. Install ESP32 board via Board Manager +3. **Update pin numbers** at the top if your wiring differs: + +| Component | Default GPIO | +|-----------|-------------| +| Button | 4 | +| Buzzer | 5 | +| LED | 2 | +| MPU6050 SDA | 21 | +| MPU6050 SCL | 22 | + +4. Upload to your ESP32 + +### 5. Run the App + +```bash +flutter run +``` + +--- + +## Project Structure + +``` +sheshield/ +β”œβ”€β”€ lib/ +β”‚ β”œβ”€β”€ main.dart # App entry, auth routing, dark theme +β”‚ β”œβ”€β”€ screens/ +β”‚ β”‚ β”œβ”€β”€ login_screen.dart # Email/password login & sign-up +β”‚ β”‚ β”œβ”€β”€ home_screen.dart # SOS button, status, GPS, navigation +β”‚ β”‚ β”œβ”€β”€ location_screen.dart # Google Maps, live tracking, share +β”‚ β”‚ β”œβ”€β”€ contacts_screen.dart # Emergency contacts management +β”‚ β”‚ β”œβ”€β”€ nearby_police_screen.dart # Nearby police stations map +β”‚ β”‚ β”œβ”€β”€ bluetooth_screen.dart # Bluetooth Classic pairing UI +β”‚ β”‚ β”œβ”€β”€ past_emergencies_screen.dart # SOS event history +β”‚ β”‚ └── profile_screen.dart # User profile +β”‚ └── services/ +β”‚ β”œβ”€β”€ bracelet_service.dart # Bluetooth Classic singleton (persistent) +β”‚ β”œβ”€β”€ location_service.dart # Geolocator GPS wrapper +β”‚ β”œβ”€β”€ sms_service.dart # Send SOS SMS to contacts +β”‚ β”œβ”€β”€ video_recording_service.dart # 30s video recording + upload +β”‚ β”œβ”€β”€ notification_service.dart # FCM push notifications +β”‚ β”œβ”€β”€ alert_service.dart # Firestore SOS alerts +β”‚ β”œβ”€β”€ places_service.dart # OpenStreetMap police stations +β”‚ β”œβ”€β”€ voice_trigger_service.dart # Speech-to-text voice commands +β”‚ └── storage_service.dart # SharedPreferences contacts +β”œβ”€β”€ esp32/ +β”‚ └── sheshield_band.ino # ESP32 Bluetooth Classic sketch +β”œβ”€β”€ android/ +β”‚ └── app/src/main/AndroidManifest.xml +β”œβ”€β”€ pubspec.yaml +└── README.md +``` + +--- + +## Dependencies + +| Package | Purpose | +|---|---| +| `firebase_core` | Firebase initialization | +| `firebase_auth` | Email/password authentication | +| `cloud_firestore` | SOS alerts & location storage | +| `firebase_storage` | Video upload | +| `firebase_messaging` | Push notifications | +| `geolocator` | GPS location access | +| `google_maps_flutter` | Map display | +| `flutter_bluetooth_serial_ble` | Bluetooth Classic (SPP/RFCOMM) | +| `speech_to_text` | Voice command detection | +| `camera` | Video recording | +| `shared_preferences` | Local contact storage | +| `permission_handler` | Runtime permissions | +| `url_launcher` | Open URLs, SMS | +| `http` | HTTP requests | + +--- + +## ESP32 Communication Protocol + +### ESP32 β†’ App (Serial) +| Command | Trigger | +|---------|---------| +| `SOS\n` | Button pressed | +| `SHAKE\n` | Motion detected | + +### App β†’ ESP32 (Serial) +| Command | Action | +|---------|--------| +| `BUZZER_ON\n` | Activate buzzer | +| `BUZZER_OFF\n` | Stop buzzer | +| `LED_ON\n` | Turn LED on | +| `LED_OFF\n` | Turn LED off | + +--- + +## License + +Built for HackHerThon 2026 πŸ† diff --git a/Team-Shivam/SheShield/Run b/Team-Shivam/SheShield/Run new file mode 100644 index 0000000..e69de29 diff --git a/Team-Shivam/SheShield/SYSTEM_ARCHITECTURE.md b/Team-Shivam/SheShield/SYSTEM_ARCHITECTURE.md new file mode 100644 index 0000000..59049b9 --- /dev/null +++ b/Team-Shivam/SheShield/SYSTEM_ARCHITECTURE.md @@ -0,0 +1,244 @@ +# SheShield β€” System Architecture + +## Overview + +SheShield is a smart wearable safety system comprising a **hardware bracelet** (ESP32-based) and a **Flutter mobile app**. When an emergency is detected β€” via button press, shake gesture, or voice keywords β€” the system triggers multi-channel SOS alerts including SMS, live location sharing, push notifications, and audio/video recording. + +--- + +## High-Level Architecture + +``` +β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” +β”‚ SHESHIELD SYSTEM β”‚ +β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +β”‚ HARDWARE (Bracelet) β”‚ SOFTWARE (Mobile App) β”‚ +β”‚ β”‚ β”‚ +β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ +β”‚ β”‚ ESP32 MCU │◄─┼─── Bluetooth Classic (SPP) β”‚ β”‚ +β”‚ β”‚ (Main Brain) │──┼─►│ BluetoothService Singleton β”‚ β”‚ +β”‚ β””β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ +β”‚ β”‚ β”‚ β”‚ β”‚ +β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ +β”‚ β”‚ Sensors & I/O β”‚ β”‚ β”‚ Alert Engine β”‚ β”‚ +β”‚ β”‚ β€’ Push Button β”‚ β”‚ β”‚ β€’ Location Service (GPS) β”‚ β”‚ +β”‚ β”‚ β€’ Accelerometer β”‚ β”‚ β”‚ β€’ SMS Service β”‚ β”‚ +β”‚ β”‚ β€’ Buzzer/Alarm β”‚ β”‚ β”‚ β€’ Push Notifications (FCM) β”‚ β”‚ +β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ β”‚ β€’ Video Recording β”‚ β”‚ +β”‚ β”‚ β”‚ β€’ Alert Broadcast (Firestore) β”‚ β”‚ +β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ +β”‚ β”‚ Power System β”‚ β”‚ β”‚ +β”‚ β”‚ β€’ Li-Po Battery β”‚ β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ +β”‚ β”‚ β€’ TP4056 Chargerβ”‚ β”‚ β”‚ Voice Trigger Engine β”‚ β”‚ +β”‚ β”‚ β€’ USB-C Port β”‚ β”‚ β”‚ β€’ Speech-to-Text (On-device) β”‚ β”‚ +β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ β”‚ β€’ Keyword Detection β”‚ β”‚ +β”‚ β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ +β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ β”‚ +β”‚ β”‚ SIM Module β”‚ β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ +β”‚ β”‚ β€’ SIM800L GSM β”‚ β”‚ β”‚ Firebase Backend β”‚ β”‚ +β”‚ β”‚ β€’ SMS Fallback β”‚ β”‚ β”‚ β€’ Auth / Firestore / Storage β”‚ β”‚ +β”‚ β”‚ β€’ Emergency Callβ”‚ β”‚ β”‚ β€’ Cloud Messaging (FCM) β”‚ β”‚ +β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ +β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ +``` + +--- + +## Hardware Architecture + +### ESP32 Microcontroller (Main Brain) +| Spec | Detail | +|------|--------| +| **Chip** | ESP32-WROOM-32 | +| **Clock** | 240 MHz dual-core | +| **Flash** | 4 MB | +| **Connectivity** | Bluetooth Classic (SPP) + WiFi | +| **GPIO Used** | Button (GPIO 13), Buzzer (GPIO 25), IMU (I2C) | + +### Sensors & Input/Output +| Component | Purpose | Interface | +|-----------|---------|-----------| +| **Push Button** | Manual SOS trigger | GPIO 13 (pull-up) | +| **MPU6050 Accelerometer** | Shake/impact detection | I2C (SDA/SCL) | +| **Piezo Buzzer** | Audible alarm on SOS | GPIO 25 (PWM) | +| **LED Indicator** | Connection/SOS status | GPIO 2 (built-in) | + +### Power System +| Component | Specification | +|-----------|--------------| +| **Battery** | 3.7V 500mAh Li-Po (rechargeable) | +| **Charging IC** | TP4056 (1A linear charger) | +| **Charging Port** | Micro-USB / USB-C | +| **Protection** | Overcharge, over-discharge, short-circuit (DW01A + FS8205A) | +| **Voltage Regulator** | AMS1117-3.3V (stable 3.3V to ESP32) | +| **Battery Life** | ~8–12 hours (BT active, idle) | +| **Charge Time** | ~1.5 hours (0β†’100%) | + +### SIM / GSM Module +| Component | Specification | +|-----------|--------------| +| **Module** | SIM800L GSM/GPRS | +| **Band** | Quad-band 850/900/1800/1900 MHz | +| **SIM Type** | Nano-SIM / Micro-SIM | +| **Power** | 3.4V–4.4V (separate LDO from battery) | +| **Functions** | SMS fallback, emergency call (112/100) | +| **Antenna** | PCB helical antenna | +| **Interface** | UART (TXβ†’GPIO 16, RXβ†’GPIO 17) | + +### ESP32 Firmware Commands (sent over Bluetooth) +``` +BUTTON SOS β†’ Button pressed, trigger SOS +MOTION SOS β†’ Shake/impact detected, trigger SOS +VOICE SOS β†’ Reserved for voice relay +ACK β†’ Acknowledgment +``` + +### Hardware Block Diagram + +``` + β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” + USB-C ───►│ TP4056 β”‚ + β”‚ Charger IC β”‚ + β””β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”˜ + β”‚ VBAT + β”Œβ”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β” + β”‚ Li-Po β”‚ + β”‚ 3.7V 500mAhβ”‚ + β””β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”˜ + β”‚ + β”Œβ”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β” + β”‚ AMS1117-3.3V│◄── Voltage Regulator + β””β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”˜ + β”‚ 3.3V + β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” + β”‚ β”‚ β”‚ + β”Œβ”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”΄β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β” + β”‚ ESP32 β”‚ β”‚MPU β”‚ β”‚ SIM800L β”‚ + β”‚ MCU β”‚ β”‚6050 β”‚ β”‚ GSM β”‚ + β”‚ β”‚ β”‚(I2C) β”‚ β”‚ Module β”‚ + β”‚ BT Classic β”‚ β””β”€β”€β”€β”€β”€β”€β”˜ β”‚ β”‚ + β”‚ (to Phone) β”‚ β”‚ Nano-SIM β”‚ + β””β”€β”€β”¬β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ + β”‚ β”‚ + β”Œβ”€β”€β”€β”€β”˜ └────┐ + β”‚ β”‚ +β”Œβ”€β”€β”€β”€β”΄β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β” +β”‚ Button β”‚ β”‚ Buzzer β”‚ +β”‚ (GPIO13)β”‚ β”‚ (GPIO 25) β”‚ +β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ +``` + +--- + +## Software Architecture + +### App Layer Stack + +``` +β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” +β”‚ UI Layer (Screens) β”‚ +β”‚ HomeScreen β”‚ SOSScreen β”‚ BluetoothScreenβ”‚ +β”‚ LoginScreenβ”‚ ProfileScreen β”‚ MapScreen β”‚ +β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +β”‚ Service Layer β”‚ +β”‚ BluetoothService β”‚ LocationService β”‚ +β”‚ AlertService β”‚ SmsService β”‚ +β”‚ NotificationServiceβ”‚ VideoRecording β”‚ +β”‚ VoiceTriggerServiceβ”‚ PlacesService β”‚ +β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +β”‚ Backend (Firebase) β”‚ +β”‚ Auth β”‚ Firestore β”‚ Storage β”‚ FCM β”‚ +β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ +β”‚ Platform (Android) β”‚ +β”‚ Bluetooth SPP β”‚ GPS β”‚ Camera β”‚ SMS β”‚ +β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ +``` + +### Key Services + +| Service | File | Responsibility | +|---------|------|----------------| +| **BluetoothService** | `bluetooth_service.dart` | Singleton, auto-reconnect, command parsing, buzzer control | +| **LocationService** | `location_service.dart` | GPS tracking, live Firestore updates every 5s | +| **AlertService** | `alert_service.dart` | Writes SOS alerts to Firestore `alerts` collection | +| **SmsService** | `sms_service.dart` | Sends SMS with Google Maps link to emergency contacts | +| **NotificationService** | `notification_service.dart` | FCM push notifications to emergency contacts | +| **VideoRecordingService** | `video_recording_service.dart` | Camera recording, uploads to Firebase Storage | +| **VoiceTriggerService** | `voice_trigger_service.dart` | Continuous speech recognition, keyword matching | +| **PlacesService** | `places_service.dart` | Overpass API β†’ nearby police stations (100km radius) | + +--- + +## SOS Trigger Flow + +``` + β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” + β”‚ BUTTON PRESS β”‚ β”‚ SHAKE DETECT β”‚ β”‚ VOICE KEYWORD β”‚ + β”‚ (Hardware) β”‚ β”‚ (Hardware) β”‚ β”‚ (App Mic) β”‚ + β””β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”˜ + β”‚ β”‚ β”‚ + β”‚ "BUTTON SOS" β”‚ "MOTION SOS" β”‚ keyword match + β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ + β”‚ Bluetooth SPP β”‚ + β–Ό β–Ό + β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” + β”‚ BluetoothService.onCommand β”‚ + β”‚ _triggerGlobalSOS() β”‚ + β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ + β”‚ + β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” + β”‚ β”‚ β”‚ + β–Ό β–Ό β–Ό + β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” + β”‚ Location β”‚ β”‚ SMS to β”‚ β”‚ FCM Push β”‚ + β”‚ to Firestoreβ”‚ β”‚ Contacts β”‚ β”‚ Notif β”‚ + β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ + β”‚ β”‚ β”‚ + β–Ό β–Ό β–Ό + β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” + β”‚ Video β”‚ β”‚ Alert to β”‚ β”‚ Buzzer β”‚ + β”‚ Recording β”‚ β”‚ Firestore β”‚ β”‚ Activate β”‚ + β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ + β”‚ + β–Ό + β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” + β”‚ Full-Screen SOS UI β”‚ + β”‚ (Flashing Red Alert) β”‚ + β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ +``` + +--- + +## Communication Protocol + +| Layer | Protocol | Details | +|-------|----------|---------| +| **Bracelet ↔ Phone** | Bluetooth Classic SPP | 9600 baud, UTF-8 newline-delimited | +| **Phone ↔ Firebase** | HTTPS / WebSocket | Firestore real-time streams | +| **Phone ↔ Contacts** | SMS (native) | Google Maps link included | +| **Phone ↔ Contacts** | FCM Push | Via Firebase Cloud Functions | +| **Bracelet ↔ Network** | GSM (SIM800L) | SMS fallback if phone disconnected | + +--- + +## Security & Privacy + +- Firebase Authentication (email/password) +- Firestore security rules (user-scoped data) +- Location data encrypted in transit (HTTPS/TLS) +- Emergency contacts stored locally (SharedPreferences) +- No data shared with third parties + +--- + +## Tech Stack Summary + +| Category | Technology | +|----------|-----------| +| **Hardware** | ESP32, MPU6050, SIM800L, TP4056, Li-Po | +| **Mobile** | Flutter (Dart) | +| **Backend** | Firebase (Auth, Firestore, Storage, FCM) | +| **Maps** | Google Maps Flutter + Overpass API | +| **Bluetooth** | flutter_bluetooth_serial_ble (Classic SPP) | +| **Speech** | speech_to_text (on-device) | +| **Camera** | camera package (auto-record on SOS) | diff --git a/Team-Shivam/SheShield/Stellaris-Hackathon b/Team-Shivam/SheShield/Stellaris-Hackathon new file mode 160000 index 0000000..787ed03 --- /dev/null +++ b/Team-Shivam/SheShield/Stellaris-Hackathon @@ -0,0 +1 @@ +Subproject commit 787ed038b5ed37f926a21847201d0f88dfe65a02 diff --git a/Team-Shivam/SheShield/analysis_options.yaml b/Team-Shivam/SheShield/analysis_options.yaml new file mode 100644 index 0000000..f9b3034 --- /dev/null +++ b/Team-Shivam/SheShield/analysis_options.yaml @@ -0,0 +1 @@ +include: package:flutter_lints/flutter.yaml diff --git a/Team-Shivam/SheShield/android/.gitignore b/Team-Shivam/SheShield/android/.gitignore new file mode 100644 index 0000000..be3943c --- /dev/null +++ b/Team-Shivam/SheShield/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/Team-Shivam/SheShield/android/app/build.gradle.kts b/Team-Shivam/SheShield/android/app/build.gradle.kts new file mode 100644 index 0000000..23634a5 --- /dev/null +++ b/Team-Shivam/SheShield/android/app/build.gradle.kts @@ -0,0 +1,49 @@ +plugins { + id("com.android.application") + id("kotlin-android") + // The Flutter Gradle Plugin must be applied after the Android and Kotlin Gradle plugins. + id("dev.flutter.flutter-gradle-plugin") + id("com.google.gms.google-services") +} + +android { + namespace = "com.sheshield.sheshield" + compileSdk = flutter.compileSdkVersion + ndkVersion = flutter.ndkVersion + + compileOptions { + sourceCompatibility = JavaVersion.VERSION_17 + targetCompatibility = JavaVersion.VERSION_17 + } + + kotlinOptions { + jvmTarget = JavaVersion.VERSION_17.toString() + } + + defaultConfig { + // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). + applicationId = "com.sheshield.sheshield" + // You can update the following values to match your application needs. + // For more information, see: https://flutter.dev/to/review-gradle-config. + minSdk = flutter.minSdkVersion + targetSdk = flutter.targetSdkVersion + versionCode = flutter.versionCode + versionName = flutter.versionName + } + + buildTypes { + release { + // TODO: Add your own signing config for the release build. + // Signing with the debug keys for now, so `flutter run --release` works. + signingConfig = signingConfigs.getByName("debug") + } + } +} + +dependencies { + implementation("androidx.concurrent:concurrent-futures:1.2.0") +} + +flutter { + source = "../.." +} diff --git a/Team-Shivam/SheShield/android/app/google-services.json b/Team-Shivam/SheShield/android/app/google-services.json new file mode 100644 index 0000000..dad0f53 --- /dev/null +++ b/Team-Shivam/SheShield/android/app/google-services.json @@ -0,0 +1,29 @@ +{ + "project_info": { + "project_number": "898358425014", + "project_id": "sheshield-ea683", + "storage_bucket": "sheshield-ea683.firebasestorage.app" + }, + "client": [ + { + "client_info": { + "mobilesdk_app_id": "1:898358425014:android:02ebb5555ee0bb9f9f3d17", + "android_client_info": { + "package_name": "com.sheshield.sheshield" + } + }, + "oauth_client": [], + "api_key": [ + { + "current_key": "AIzaSyBDnxhDACM9N698Q3Z54YPPisAhH6FzYj8" + } + ], + "services": { + "appinvite_service": { + "other_platform_oauth_client": [] + } + } + } + ], + "configuration_version": "1" +} \ No newline at end of file diff --git a/Team-Shivam/SheShield/android/app/src/debug/AndroidManifest.xml b/Team-Shivam/SheShield/android/app/src/debug/AndroidManifest.xml new file mode 100644 index 0000000..399f698 --- /dev/null +++ b/Team-Shivam/SheShield/android/app/src/debug/AndroidManifest.xml @@ -0,0 +1,7 @@ + + + + diff --git a/Team-Shivam/SheShield/android/app/src/main/AndroidManifest.xml b/Team-Shivam/SheShield/android/app/src/main/AndroidManifest.xml new file mode 100644 index 0000000..dcf2d06 --- /dev/null +++ b/Team-Shivam/SheShield/android/app/src/main/AndroidManifest.xml @@ -0,0 +1,73 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Team-Shivam/SheShield/android/app/src/main/kotlin/com/sheshield/sheshield/MainActivity.kt b/Team-Shivam/SheShield/android/app/src/main/kotlin/com/sheshield/sheshield/MainActivity.kt new file mode 100644 index 0000000..1f04300 --- /dev/null +++ b/Team-Shivam/SheShield/android/app/src/main/kotlin/com/sheshield/sheshield/MainActivity.kt @@ -0,0 +1,37 @@ +package com.sheshield.sheshield + +import android.telephony.SmsManager +import io.flutter.embedding.android.FlutterActivity +import io.flutter.embedding.engine.FlutterEngine +import io.flutter.plugin.common.MethodChannel + +class MainActivity : FlutterActivity() { + private val CHANNEL = "com.sheshield/sms" + + override fun configureFlutterEngine(flutterEngine: FlutterEngine) { + super.configureFlutterEngine(flutterEngine) + + MethodChannel(flutterEngine.dartExecutor.binaryMessenger, CHANNEL) + .setMethodCallHandler { call, result -> + if (call.method == "sendSms") { + val phone = call.argument("phone") + val message = call.argument("message") + + if (phone != null && message != null) { + try { + val smsManager = SmsManager.getDefault() + val parts = smsManager.divideMessage(message) + smsManager.sendMultipartTextMessage(phone, null, parts, null, null) + result.success(true) + } catch (e: Exception) { + result.error("SMS_ERROR", e.message, null) + } + } else { + result.error("INVALID_ARGS", "Phone or message is null", null) + } + } else { + result.notImplemented() + } + } + } +} diff --git a/Team-Shivam/SheShield/android/app/src/main/res/drawable-v21/launch_background.xml b/Team-Shivam/SheShield/android/app/src/main/res/drawable-v21/launch_background.xml new file mode 100644 index 0000000..c1083fa --- /dev/null +++ b/Team-Shivam/SheShield/android/app/src/main/res/drawable-v21/launch_background.xml @@ -0,0 +1,11 @@ + + + + + + + + + diff --git a/Team-Shivam/SheShield/android/app/src/main/res/drawable-xxhdpi/splash_logo.png b/Team-Shivam/SheShield/android/app/src/main/res/drawable-xxhdpi/splash_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..83e2cd1ec7f4f1771ad747e1b91cbe1f7320b53c GIT binary patch literal 24450 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 + + + + + + diff --git a/Team-Shivam/SheShield/android/app/src/main/res/mipmap-hdpi/ic_launcher.png b/Team-Shivam/SheShield/android/app/src/main/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..4de5ae2e5ccebff95eb13a38f735b84137141331 GIT binary patch literal 5134 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 literal 0 HcmV?d00001 diff --git a/Team-Shivam/SheShield/android/app/src/main/res/mipmap-mdpi/ic_launcher.png b/Team-Shivam/SheShield/android/app/src/main/res/mipmap-mdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..e1f017127d93565650806539b331fdfe1d15789c GIT binary patch literal 2792 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%0DfVo(oQ=> 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 literal 0 HcmV?d00001 diff --git a/Team-Shivam/SheShield/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/Team-Shivam/SheShield/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..96483871a4e985588da0c4e2737a546bfb8459f6 GIT binary patch literal 14576 zcmb_@RZt~9toOlTfyH%kcXwxzgS)%C!@(UEcXxMp_r=}a-5nNNxch(kzL)!WAJU}# zrPG;CnoimzTtNzHeRnW-__a9ky<{1TaR+1ou0+K-3Fd$`!j_lBU;b26 z+FT%1aLL`xqM@j7V~XVfUFYND8Q001foqwsXOQB{nedevh2V1S-lj<_JNS+(38QSX zR9~N;VIr8~9+&;`_N=WiMc*Nx07b(9GSfy3$CCuufRkSsC@$AWeL^Na4tZuMU}@tX z&Lnyuhe5;0TYKdEk?0mX02~+8uKSC+;W$haS4~Q;5f@cNA%r zwLlTk=A!9JL;H9r1t|}gi_|~3hUVIjq@gr7=sdxCmkxYdz#)$GIeOJl7@PKj#5Y;} z?y?~)cZYDTJ65a;phE6}l5*9foD|yM{vBMx83xU0Ie7&$u#_H6h~0un@AWbgB^Hns znj2xWHZIBmHwh6TK#w0TLI%s^<|F-JuBF4}Zn!Nxtu2+56GVf49-tE_7ta@Yev{uF94 z;;)bJu)|R)Ii3PP@%sDx(_EB~p8xHfYqSt?+7yliSsIOl8l?dunMu(-R;-xoA5xT2 z^)>AKblwcH-;#(1OIN6uQws1qyjo1*i;sl;A&`aB>jtX3BqN zUu|Z(MT! zGjBe`VscuE+Q8e)?miv#ys^jQ7y#y(B_uZYlMq`Ii2mU;2NKuvmz&XxE>b3jeM(O? z?s=!@8;UzYC@KF-Fh;tk9WBcRgT_pr`BGB2UKsvapqrT}rQHyyB%S~QJd}5(`D0Ru z*M(5XiVdJ7RhDcSER-K~O{JVl)-JZfQ^{M=9!aQ&INcw|3y3oLm;yUaUOHc zwF&VmaV)mw9tWpx<7!?PaMxE1xpi?99fcxw?Av?oSphv~`*#_R5pf>jaRK0fjXT1V zadpBRFIjkMTcyhhwjjLO!IitQ6;0ED$+^S>N;+9av532Apv;ZD4=*N|8)`&AT`Z=p zlBDalP$4yh_es5vBf4hYB35Qu^ODP#4z-qT*0c5)T$Eo;ml+@rmTBa8XD)r#48NQPhljE&#;oTdwKSGITBajq1 z7tqo@IdPP0Pjx556wagSrhyf`GqhhrNa!m6Rl^&&Y)*3XFZ6M76o4EWrM6ttk?Auo1_i9MC`$qg~ zYWSXDd0qmrUgym}q(Gg29f}kB0a;a$GDBbvk*shO1zdMPhIAb=LR73WMieUEK{N_#n5#| zs26qStg6NLf@`R~maflfi>+A1d0x5b%d{Z8p0R+U=V8cJJkh?=VDBa+u*IeGf%Zy( z6U3OyPx~xWsIq#vZGrB;^xHM@(zVfdgxkonAsx5@VK(h;a6^*DajHCtQP5K@=7TOD zD05xMt{L?evF9YnZN64pxXAmwF3y7s?a;AxWYC8|qVju1_n%4NhoRQ`B~0+^``;Lu z0^c563%n;TNCYpqBGd+X6s35s^pDDgBku9V7#85GQr(nOl~tSG0rRs;$tTe}WHHdV zUN7MqpYmTQ)t!V9At8${BH)oy62&U&gX}Pq5f)kAE|1-Nrxx43gc)`reS>VFRkWtf zQuC!$&25VNY%2P%yXI}TRJh^kmn11QNh#9r)Ph5jlv~^if56Ox@x^rRl{;ok=iDhh zaVKc6k|NlBC_T_h&xizj0gL1-{D38Tiz^nyCh88xGB(c*pZd$2o`?cl&G{iA8m!{} zxKltRaw;;`xW_w-SpwZ-BV zMAmo#l!}+AK)+QGxtGjQItevD4Cvkk^_!*(`^%_NvhX%UQR8LTsZMzs1Nfi?yzL(G zK@JFhM-AA$`(}N=EhdtwNY$T`HZ2xF;Dv$84614TkkN}n#Y_RQfbSUTCX^!b^~yc? zSTPlZS&n54S8tsKLoOl*9}9Ge+=>w_-TH?_ypDeOx-P1cTT}sR)nJ2b(HuiYkP&y3 zsl)eQ?-(H^ryNDfB#ijS9I8DXn7}!jZ1b4O$d4&O z-W`}kkO|+_mA6jNOJhpACE|jr$zrf--?a5>Ne3Z4LZD!Z~`y(a}x$J z&Z)d{Q-3yna@qs#0Bi<7xE3r39TTwx->bt)b0V`;3--|nxZ9(7Sup`Gg&TN$Uys;4 zd!yJr`{vB|&4eU=VZcT7n)$YT+8XjlIB0QUC`fNqDv5IV?#X>MyfeL%b$B7}P!~1D zBD<4P-dbAaD{A$vf(;>vBEeXHR23V{e-`cmLrW@#mC{ul%Tj;{dgd-A_yHyIhSI$y3UX0OyRAu- zQX$Dcnn6l%uBb5~usf<1;%1OK(hs71ZSgyrVR1Z=Hg%9DIKQXrOJ8cIM(T1EA}orh z4t+A#@1V=T(o0txT~4+=>50d(BOOn(6G)_L`FD&rn&FC|Hzj}&Y`NN)w7rhpzaPTm zMU#ue_4QYX5+p}=FJfb|;(-tS`YbpRwhi+?6()cnpWC#TLcJGwI_S8HwP`LCqd@Ek z)pi~^pITNNE+pR~=-YnhribNUW{W%Cd>6Br?U~F#lG;nJ6|uXU9r?WlVqaB_lLuEd zM`b-X6d}G}xcOFLuIerE&4i!*PyV|e^1q6z20zC{RR+RCp4An*o^dW#-eb7>Ab<4! z^>rb(Fn${6Ww1;xC}g2%VO8{j!t9sYq}(b6SJK?4*r%apG)=3)uOK8p>*^OFr_`i& zWP|v&M!BMc!}>x%U2HQ;w7{?LW{$4k8|ai3AF=L!(xGxTbkuR$k=cp6iU_7yq_Bw% zTn9IPoSU#OxJdX69)#mY3qH3nX~h|E4jS@_)@|Vg%WxBv!6NQM(E{;j+h$g%g;H-s zc)`L!(%5Y*9bLq86}7mueeiD5ShhK?9g-u%@tqrW6UZ+AYKToy-kRM?S|1hW$)vRl zzYiHA)1!Yt_xjzNwD(5)SLI>VfjVZ6A5czy0TahyK?+t>@}v8%h6=}LEejk8ZA1mj za8aDC3y2%O+F^Iu)7U&m&XaPfUbXB`RQ^sJz=aNU;z^Wy)yyN0x=`&C*YSfJP{feO zN_Os0u~TI}O8Go5i?G8S)Lgkw_1t^;o!Irvl*uizDrTEAHDYlctgax23V7S^Tp_2O zE(Zwd7Uf8)Zgp`hEZJ$yuGuIfu}M-6gufRVHfZH`i2`zI2j-Tq2_PdP^6L31Y9mMs znbv*_A(Ylro>8zk;&M7=N^~gOWLLBu(i_ORP^)T+2NjevyjhnXuH!G!7#5h7q=qfk zMXM8{(yLiE5%|m}whd@d!w(*Ok2Si{&1Ue*^5A!zE$2%AJ`tX2`whx&+_t)R>p+M` zZV=5;lnrM(ayHSi$ddSjmKX)o{XG8vH z>=I%1gq_KIR|(K=Tz=!sbn@Vck|2A(Vs%JbB|qA^A`DCvzlelLeyL3R-(B4>TJcKQ zZRAM>GG)(Reh`gd3E`Ku#-YfhfF&r2(^|sXq!^&i6zw_h@jM_C^w7pE#hSxl#>lBj zR_{=U+Q@S-7*{pT_^pD+5FmL(U#bBa8x+I zbr@w35o!!Xo~WMh>y1s&p*-3Blo)w?#H!eqJI{f+EGyoW$U6GMYq1xlRC=O%rdsx| z_~9ef*G`geEBvDB>e@jwGvWFyhUI_~2eo{Y&>O)X;CVX9$+b_$iTYLW z@cz590#|F_xBH-ULhTyx3^Da)7A*g^2P7#YUi0{~u{A4Wl?(;`a8i(tUNITgRf{?Y zn;NTdp(yd=VL@eXZ#LL!8Azn;`z5Dpz9d&S-c6mhPlJ_gJ~-OjA)|g~hmkJr0S^*r zLn%dNIJ~hA2u(&`C4KtZ-f$1lV*ZfF61$spzSe@|i=BpK0kJzE&|)aKtlJxR00t~IXI*xv?V2N+Omd_){g5C|8o(HM&d54@^d zl>3|PlIg2atAre$^Muz5{@OqhBzKHf`ZiEugRcQp^>&lxar}4xEx|C!aPQ<=YqlLf@LJrc7-W0O9n5~2ZU_n|eRdv}WV<2JPU5@$_zE~AI zn$z&7_7H^}s#lV5vi+}|29`5q3#E3G0*mSDLY>e=BtO-s(FK(7EUWVxM7dcmha2p- z+8YxoQ!?>1ScdD7BvIa=IG|MZ%ZKGVPBmZg^sf%W>erQ~DMc7HDEZGrko*3#=i&5~ z2}SOZ_|PSff7h^dV08!M)dnlviV=!#0JAT|D>X`8U<5#+SbmUn5lfXTqHTZe1ZOKs ztOsJkuQ@!)6cO7t`xk?#eKsV4X<1!F8F*~h6X^~5HSN~Y+Dk#i9+%X9s;CnRt?iFm zL7L;Po2j|3*BtEkd!%`I;#&p(&&M01m*mMsnASOI1t!BPc1s+N#rm6TQK#u~AElZ_ zEoP8kQ+pLt=T!$15j}d6z)zn>*X6WeS`Xt5vLMGZMERdL=iwKe>Edd<3r85IzFKt9 zHkac@g7kluTwSDU8Ahz2;`tS4cG(nMW`xNgCWeY|7ZcZ0KuL127cTgan5RRAZ!`S- zZ+boURUd3>iBWBAjHzoiti8Dsv$G*$clc0L2>_I@?l*b*D>$fMKhzqWh&th?ZWK^)tthIGBk4?-h-5#hzZt2$db&Tu0Qpo1GuDg zi*q`lv>{t!rW`H;;a;gDi%Qeo!BoG}!M>7QiZB3)in|ScHi%X)%Y~x12}$T2_x&q_ z>VU3L5ydC;I(J)qRsrj5m|W&hbL~m9oUKHH!bND@Tp$cfPO z4D6HF#{mnJfShb^B@Z&pd*z|*R6n+PlS7RL^X5mClF*uJmNWir!yNN4or> z2QGU+*=5j)EX*KOTo9YoYTU#LbJkMOy9B)gTK`~i_t)xtWz zxohmyt0_?i)?JWF_Cj{8=#pNq9ofC7b`f?4OrRpqRBoP zq0Pfpi8>geVZQ*{1N2+q$3z(fQTIKI+)x=@ytInjQu^lgDb#8NS}imx0^oQ266w9!!Pp_s-M!9o6Ih0YthkTBS&xSR^s7c%;Qy4VzWaL&6ezN1LXVyCRPCQ2Oy1-CV8c|qcI`YS;c69b9w}@zs zEL-4+-zPkf(0eI=j>|^SRoEC^;%=Gjhs1X|!SQJp#MbfL-`*l&DjHX%8;8jSAXIHf zD|KC7ji*7?(sS{;>a6o>Q!aTvG~=D_mgnsC^yKz)qb1jL4yc(u_3p zY+2dEl+J_*$0`=3eJwF3wJg(DS_T;^6c>-Bh1JB5Yxd!S-NVn0GT6aSWO*fJy3@lO7YNg^x}afjBC+UsRJl$-=RR-C!AT~OFd7{EHYuxQU;q1H)`Q$H`u<;5obhD?joWE2We6KgCM2b7L$Wx4JHc(n; z+JY?xrbF+v`{;FQQWpcC=@OT zp_x>&${^O_cMjipGI^ldpVHUHekR7&r*urILSiaww^L=4le}vRl2)@=LM5Ru$0&k@ z)2OgJfJW(tWO~aZG5W@|zwlCqMrE0;QjK;=+i!YCjH0qdIMywVoe>oV#nSyUsX3hi z^L7;(jwu8ZoffuzPxy75AMr0%maVQNKP&1alwf4Cc)g%N#=!FuxNA_lU>5Q%}UxqV{gJvI5nvs#r~(1iWq;t|83h;;8;m*(V1E4?v+X||!+ zV*5E5%ioH&=_|7(D*vw8jmnnY#APp<#JV5adKkU$8K)I_RT*?q#Rx~uXyvf#?1$$d zEataAYy9_64~1oJh?Ng}RSsWN-S&sXp)in>d1Xm))xewx%!xqUWWHjMDZIdAj7Ip{ z1uU)Vlszt6fF-TOH_@jZQSO?OiHeI!O`(0pV*>?NOe6cf zr_pGeu$z|UTscO9SI^oOH6A~^Op8|^D=p;EJ*>_XI?#%VN>4Y$y3gnQx#9(K`7Dx|a*V zFkuewc{7#Iu2yx{u*C|%Yh0)^NHbY5{Y*BO3pEXa1B;B@s3HhGK}lwvL`bN795d`Z zXF;-v-yF_0Kh=unTCqn;1!vwA=8`=buO!RN3~W%{s_QlW&C5s4i(f9-`Z8*hEWKPX zHsAQWVZr^V2_xyE!)cN)596VBJTjoEsl$+7ZqSBlG5dX+)#!Re5M89#S?$ofzHW9J z6FLgD9kP@o?o##rOvkZ+CPbLrX2q`zf-aa69ktK-heVceoDi8Dd2x{-ZecVJ=X^WI z+xO6Q$qo)5c1P%~NiYe~eEZZ0-GdDGQ%U&fi|b+c3DfTr78U(v1@UiM}i zYMID~YZR^ty7P6K*${@{aUByN_Of{=i5oVTYdPQB^@~(nZZ=1nO}ee zKJSwYNZ3~hiqM6>PHKOS1FtCM2CD zTR1MPFhm4WTS}KB9h7?fwHxy}As3DuaXjpFq0Ntj0|HlC@=ZP^r{CiQ-a#Ut0XcRm#GMNO|SEc571;t@%mz1c}=qd zr-mSxnc=-^bM4}W&CK?aEp3sqzsD6q$+w1h_=bEHwd^GPXu<#Dt|dph3rl}LSUgRm zTlx+Ov7{`7Oj#d0{nQ_+*LaMEj(?OAs=<_0s@i@ssh43m~%CLI-{QDdMom)i*`)5No za%qqiZbJ}~its4=l%u@mi6DYyOu-34_#}yqnvGU;&-7JH*i7K~8J*e+TpvlO(@^e`s(*#hjVv@&!U|3i|(_Ft#Q z&hTLuGX&}I)Gk|cmKl+R_nu9jl?Kj4;8iz@9uY;Hg8g{|Mc0l=#hysr57EqzA;yPj zP|!wDR>2g!%dL-a!9XT1<1&T`fFq%A7BFPMg{Gz}IaMal^f9@6-@n|1`HGDdi3lax zu1Zu}>;9;H+V!xM3%NFCTx!*qLr$Ys`LLPbLbln8$kwDW zE%RFOPSN6N2-jbSU6S)g4;L^O#+~TPU8Rj!A-afnLx_f@x+q5MA1((PNDpc0GY{qufjO?`FmyDbB0qUsb z>FW(QEAHiL2edV1)$#!wSoL8^KWprXHZJxK;iyUU96O!H{-mD@b97zDfzQf-bBd3B;g7{{i6~s-eVTgO2irv$!p|MK&gFK;aSa1<&?7UdpEE!ZLUA&> zsy~?7zsll8?m8YzbChZ|Ej#yo5Bq6}JhhNmU4QE`L!19F;o3R&{gzp?Af0!lu)?S& zRxrq?0TH*htLF&_hi48P(~s@*>OZpS^UuhQZh3Ia?vQ#9OGMCj12(OGnSb77qdCv2 z{4w01+qV+T2{1+q4{`M!3D1*liP!!tmNvem>}m$c?1-C|K@HI+B7^Za_i@ zl_vN-hB!-XN?LOBvh?lQAgg*<9k$-X?}UH$zT~-0s(;8HEmEvWr3h8JKPNuhnPoD4 zl`khUf~$^4l^@qp&xa#V(s2qpg7M^+;-D5PeipikPCwISi(2qM1ajstLRuC$isfaz zk&vzY7SzU@5O|l38cShGm(qKAeMrq(5T^x?<$^IcA%K54AI6L2QuTgE8!}=ct;W0< zZ-R+)kqOD=&gQ~yS8QpI5f3gy!~7uTSUD#tl{Pt7%A=$exMQ~oiCe0hzcilcN^kPg zBMjG{SJdb!Xp2J89HWd=v;Tk=zisa$EpS0C=_##O|2PfNcvjcH1*)OC z&n6Q&m~-o50aF}n1r>GS5kbedgXQp8>U#-9GcK{U_2T%7C@(osJf@}Q^u2EUwj>9Bkk87qwo`d?A0adX zynrIDc?Ir``rxPmC|Gf=YAcCt-!NP%+t?U**yaSJTZZ?;73I_=&b~jpL#pnBTD%%S z%6B}Gw_#=~7FrQcxPEA5U{(hgn&NI=WP%5fP{;QAJMU1S*!$pzm=};Rv6Ec++jhQ; zt5g?4p?~H9_W^26va+J&<&FWEZZ(HFbqRxF4l=apVwTusg?w0YvCE8w`RrcDE8NUBx zh^3g-=dgNyx=2nO%Ceu1sa&1sg2&*~g0}JF8}GbH2`N(qI6ejkDrbTq!M*}DQNNU~ z*~MM4cjrFAh28PrF)vcVxOQ@oV#Ez;G04+&TyaCd8t5~j;L^G;dTd8?F-<<_chFsb z)j1soMd*RFweDJfA2?wIrMnK@X^b%xsMkj@NkS(VSQmPn%~(-CfRqck;l(7@m6vHv z3c1~63T3~)gEu-%s7w^w^Ydy=b|E1tk_qh;Y>Vw=%_gpEi~CMtXR9^P+*+9Ll}N(s zg&BSKOMPgUV`Gqm@Ld6cNl4>$Epn9^QlxJBBrjO5^t!d}d3w}$+9f(C2nylr~9_y41iyPvs4X$p)>#*`}zPfF09pTbGIM2ilj2S?61%$EtxtDJQ z6e4uLH?1Da`|*ZsKTrSw^-#!SC7E=Y#>{UssiMl-mqv#ikNu6L8yFMA-)oHQ$ku?q zTD3ECR(-{;Mi8(y8${;-B@Q{9opymYOhMd@&swCxS?XG|=PzsTU$C^3=iF+-5WeKP z>K=DXF1j)qRMQ)$9glF8=j58?pLA{M*#M>Avj#pej1f_YFl+(1mko0ryAh&g!3kFB zja*Q2(e?#l)?}p|weAv8cW`5Ye8)zae4(b3DYX?sAT$VjLF%^{KB^3dW{fW+ax(a5 zlLjkgL>87*<&_e{ULo+4x$RiQU0nx2L`EO zIbcKQ>pY+cMJ@H5LrVn~m(oh%EC5CQE|EPv8UpIF77Zztu|wX!dhBUp z#Ir7!WJ;_6d5Dbcuw~~7<=4`wjhiPXlLB$JY~2O&ek(EVLr0uI*CYC|&?`OMULT5F z>sj>4OHgAfMER8a1HZiM=h@u6c#=c#vY5IU@d2w2p)2phbkMEu#t{83`Z4!+Iduvm z$#i?`?LQK9@24jPucyk)fY!S~8gWgCldb?pNcz|#zXx)^j67mq<1yxOanLNWe;sVY z*I)Z^XzLH>K2(|NC_gkX{Vl|e3n{pa?7*(T-nN8Jb{|sFP0`o-;PQ|4Wb6*Z1{Ox! z*OLsT5zNfO)XT++8?RH+-#A&a`gv-vjcZde?RALF$cTK;|5C4B?oH2vI=s_8cIEvR z9*m5hq`xj%KfmP(x@n^5{g646pT3WSG~{lJ;+hE*e62nebdT>gF>k!L@5PLpNq={Z`7$4MRcSJxd91Km7@BO zu52w@>k+(e=$jkR7+)EyeEj|u&)?4hIwzPBAa-h@%(>cCJeackZgPJQ5%4DO7u^YS zp}R|D{PnzLHC}+S@iDDkS={eWR*yJ;s-Gv>dmTlT5^~*u)F5V@-22FNp5X+W1@G_T zmrzQl48})~y~uz)-r@ZiZt?HiDZY@GrslmZH;NoYwb{{EYS1d_k zKlYQyTlN)4SMQaygC<$n-El9O!xSZzRzGGSuGus*GINVX0Z1D`dU(mRW8{7zPf;hE z6Fsg;P~_wL*q<<$iTQ)*+DX(7_E1uJ+6kvGer&{B+&HKx5v~5hqy8r;kGSV&4~%6J zO(E|O|Bb^@vIJ{fhfwIPoz<@oEKD&0+`qjbXtY*F(F_Dsw1n$os|{?VGAsa?brr;{7MhbrbJiDuoeo8$g~M+9WyO7-`(oEkg>MPhp= zG!KgpaY&6#@8|EhMbdX>h-Q2a1R(l-p-t-o){V@y$FI8{Y#~^}-V?(gJJ!Xgu!Wt_ zgIVt*H+zYjp(HY_14^ls=@CvwtygPpsDSzvqk|XHg4gT|5(4dSLPT6YjE?PnbPw0b z_7kiDD*=kv4I=2?R^@=j7OapSaE~>0xmM3# zHUa=8?fF~8Wnqs~I!&@5+k>dTMko!oLaVvD_EmjGSWiL}KaUlhVQ8 zQBj!ctq)E%4HYp;r(NCbkt-fs?JYF;pO}9E<8i{-BOlE5!3rIJD;) ze^R}l8ng8U6o86zak#!@;}>r8Ie+APJ|yqo33l0eNuHB=}$pYP)tr>mM1v z*!4ap#Rf2ljFXB4=dEeGiK$;teTQE+k0a!7eU!%-&U;KSfAU?ao0t~NpHJ}6chFH| zLVX8|W{|miWX1+5!l_(h8ROxmw7{)qAF{c zGw%yKM!N4{b0#9wd%eaLU|_AETs64B!a{^=j$4Wjoan_EUWD!$-*3z?XnK6swaMj& z8(dEsLI2X-hspt}1NX4c-9T5Zj38uzOgaSB&S=NXPy!2Gc}Vsq_>0kzo>6h>37J8> zr>|X@=@z1o&0N12Q$D0TRdEKClRS9ll>o~};wrm8;j!*X#g`)*v>YF2_G0Zx&FWfJ zFemj462CpGz#(&p*?u2W!9o37{u@bG_;$s|uqwwAyA>o}>A}xU6mrAoJ?Ht-Zr%1~ zbIuJP&IyL9tui+6ptGoaB;$#~n;;U2)|w7_altQLdzohX5_F%mfQolVdB{IZBD*H| zvDc2If}fgIAA{=r>Lt}qw$PPzJOV^C8q(0$G{~n$_%-0E0^a*}(sL>@SG6??l?qHo z4{m#$#b@E7E-LWsF_5KO$aBsJ7Ck+6@XBAeEh-9+~+%cAUI-x?-MPqn!{J^PxL+6KQSquz!Xg8B2?5J z<{Pn2Tc`Bh82M45Y%g4*Xa6frxY_ZH;8aHmJs6+WCq0aiFRqZw-)!b*OK~j#l`%D=#Hj9F1NVvWbvCm8&%(j(q+hMf5(N^ny zZ7&|gr3%Ma?9LCUtYMaT*eaaQjO4iGPFpI@)9AP&T08)X1iHS^T|jGniobCUX&w1w z5gThExfGdV+1q2( zF_LXD8{C3I(GRS1kpit0X**&L+D!=E%YRS@NcZjwpKp_Ojp$)_f#vjcyKNNoH-Z48 z^5IK_6qTe1ciMuTE4-Z(tF#C21`y`i$i{*l)ETWt=0$J{0U}%JfZzv<3L{3z@B1NK zXN5QvMhEtl>puLgMW+$*iasJfOvzP<+WY8lBX!=k!Vw zXe0U4>|e0mXInFobkd~<5z$Tfmi1G@1RDBX#K0`7YX;fO`jdi*4>YyK2oH6mM;!kw z!dQKq;pKkQOsLMQ4tOZTKWbqByoQSz(lM__*u6aL92+;!h=wD^MQt_O9d_ce_; zwS-6-#81T?;%6fg%}1blaK#=K*u=g0y|1k5#m1*>s?FLK!^rk(6Z)T*hN`-=Llfbe zi;0DZcT`I(K8iqLITJKuG-5gv(K{{=3<$UmuaFE4U-R04`YbsQFa^I==DOIL`{!R< zzi7*p>3yIb&oZGtxE-SXDNkH9K)tz(_-;~^-{pwC}G zAMmurG$yL2merPYtO>K~WOlomNV=jP(&DsRBz^%_W*6#G(~goEZ(SUsu1|FHh+oG9 zz3S?2K#P&2Zd;^!wzg2OpyLsb<&E_&R}M$;W?1Zqn+TWw>5X z9aW$vv=mkT)@95xlPs+mJ?pHT(rOgXsafj)>Q;bplBcn z7pwvZ{7aU+y9fCJPfSeJn5SSCT2m|1oBu$F|3mQQYe0!%JZ*wj`@d>KNijLmnx6)N F{{t8-3~&Gd literal 0 HcmV?d00001 diff --git a/Team-Shivam/SheShield/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/Team-Shivam/SheShield/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..75938aab049801ca5e6801cedd3df8ec066173fe GIT binary patch literal 22849 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 + + + + + + diff --git a/Team-Shivam/SheShield/android/app/src/main/res/values/styles.xml b/Team-Shivam/SheShield/android/app/src/main/res/values/styles.xml new file mode 100644 index 0000000..cb1ef88 --- /dev/null +++ b/Team-Shivam/SheShield/android/app/src/main/res/values/styles.xml @@ -0,0 +1,18 @@ + + + + + + + diff --git a/Team-Shivam/SheShield/android/app/src/profile/AndroidManifest.xml b/Team-Shivam/SheShield/android/app/src/profile/AndroidManifest.xml new file mode 100644 index 0000000..399f698 --- /dev/null +++ b/Team-Shivam/SheShield/android/app/src/profile/AndroidManifest.xml @@ -0,0 +1,7 @@ + + + + diff --git a/Team-Shivam/SheShield/android/build.gradle.kts b/Team-Shivam/SheShield/android/build.gradle.kts new file mode 100644 index 0000000..14c3ed2 --- /dev/null +++ b/Team-Shivam/SheShield/android/build.gradle.kts @@ -0,0 +1,28 @@ +plugins { + id("com.google.gms.google-services") version "4.4.2" apply false +} + +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/Team-Shivam/SheShield/android/gradle.properties b/Team-Shivam/SheShield/android/gradle.properties new file mode 100644 index 0000000..505dc50 --- /dev/null +++ b/Team-Shivam/SheShield/android/gradle.properties @@ -0,0 +1,4 @@ +org.gradle.jvmargs=-Xmx8G -XX:MaxMetaspaceSize=4G -XX:ReservedCodeCacheSize=512m -XX:+HeapDumpOnOutOfMemoryError +android.useAndroidX=true +android.enableJetifier=true +android.defaults.buildfeatures.buildconfig=true diff --git a/Team-Shivam/SheShield/android/gradle/wrapper/gradle-wrapper.properties b/Team-Shivam/SheShield/android/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..e4ef43f --- /dev/null +++ b/Team-Shivam/SheShield/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.14-all.zip diff --git a/Team-Shivam/SheShield/android/settings.gradle.kts b/Team-Shivam/SheShield/android/settings.gradle.kts new file mode 100644 index 0000000..ca7fe06 --- /dev/null +++ b/Team-Shivam/SheShield/android/settings.gradle.kts @@ -0,0 +1,26 @@ +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.11.1" apply false + id("org.jetbrains.kotlin.android") version "2.2.20" apply false +} + +include(":app") diff --git a/Team-Shivam/SheShield/assets/images/logo.png b/Team-Shivam/SheShield/assets/images/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..3c8d6ae8dff86ab5cc9cc366ef6eb9b67227955c GIT binary patch literal 394960 zcmagGby$?!7dAW$Fdz)l-JQ}YE!{03H8eF5 zfBdWyZ~U;_oN&6J7k)s%tP}o(i8*oJAU)DY)5gxr>jS$EfrbdV3K|0*CR%)PDFJ5A zr?jn4LtfPSQz5cu7$7fdvI#GU_W$oc%>{ftcRbL6Au@DGr2qQ^?)nUN&z(oc8Nh|9 z#)kUeg9>9{9(xS@%(~71yl2Y)JqG?WOvcr%a2ZBag+fOZ`hU;!Yw~#@N+u%usQ~p0 ztbJC%%Lg{MfVoD?cv|n{z(6m0Zjou85M|+23pO4l0F6QSzg8wgSLsie(|SQVxS+w> z36gmszxSUSkb%_6%47f-&Zt$QZ~!kDs&5(PBM&*rvOmv^U%&+%z@Sy(}1)%<>Xs5To?x@@j>d>M1~;hmU-SXR<52| zqe9fw9}xccJX|hlBxHd|>jJ2j+@iL^82AJ0I2_n>?K@_-Y~)jXBlndmluA0T+*>r8 z!U4pN6Bh=MbTNOt#iqvOA)NUyabWKNgj=_)hn=CahOZk0{}O*E@D@>y@TRvSkV`Hb zkyp57$OPUr!WTJYds<%OmLVVU&Yq2Sf#9q#LW5hx)qSv()I~uF$bP0dam(pd!wAu$ za&!g+Fi7Z--=cqFG%3F~RVaJCXYww$2qTDhmaKymrWimpd7CgYOXFQ+NMXXYCoukd zAERkQw5TnS!f?o2{`C;_j_7-94@y@{cNcS=fc$fyd zWe@Iz4D+W<1J1Y{p5M0HzIbQqjQ_x(8Is+$mFOYE!Y`39&c4sRZjnY5?<^)i0ttg@ zly(~oO33j2a3oB5#Pi#Z(>DIu0OLO}U}M4m-X}C~Az*g%4H9N2O(FW0gFD5rCk93O zkYSWZf_MJgCcK$}*~Pm^7>N>vjN4%7_Zpx`7cq=(B8YVh3^6eK{UQ=3pkATuHW<1+ zG5=U3%pFrf>|0>af!TG#NSLM`g~nT8)*1I2{9}+XIA(&kxIJ%SV0LRO66SJRq5n1* zhCOs>G!BdhU@nMri!>}ii-Pw^7={gn+1p^~_nt$ekT7T#f_HC$Apu&HXCq;(&J?z9 zgQ43)_eYu^4<Re^x4@8n zhIrE55vzZtIF%Zh&b0Z+aZ;k;sei`l(8nj}tPeDirwF4|_Z29%o2piyJ7PDUgLM9- z=gerh_trgOKrLbXH|66c6JmmE1;m26#p8f}JDG({$Luo>7*$fnhx09MoVr>6GR@$J5R^7+Q`FK}UC)cpGC%%;SMeVeee;_=2I+4Vk+^YyAr+V$}~*}{?N7U{wR3WGWD z2#buOhDp)+&pfKX8`+2%@?*vY>7BI%+YNu4No5lL$kd5v1$q5&_>c7B3xs8>d_~eF zqEm$LaJEr<{(#JRl5(T@L~1PBE%(!nvGet$+4SYCf5IXHkG=oVB1I3`O+N1Vwgc;; z`BT#0lkIF`I!|37-P8{(d(l6R!J8Y1bwT__!1+`Ia8nrUib)i+>T(EH^r`4L%KoXe ze}b`bOaSdiupw6T(2GvUAvw}0zSlU;h{;Sc$rGTiF=N|OE2*{QX=Zk-Ab2t5sP4FRkn1@uOHGHV4!s#dK3Jc8Q14%}Zk4P!TL(8b*v(9RidjleO zsza|C_LFJZ>e+c~PWi#YxH=05WZ@zb5tl!el)IQ8q=>r$<3D&5{N2&%8BFK(YtcqG z`?zo1|JooLpdC$*K$nu1^nnPMj?|Ha@C||nY#vOjr-z!gK3-G-FIlkND7%)JH;jo3 z^>Q{n!UlsRSBed-5hAB_@1fKP!q8B~s2j(-l{^A+rhfx*r6=C>LNhYYJy8_A{Ifvu zJ1FRDkRrNf4A6mFFzg#Gt-M#as`_TxWq(mljzuzg&v-{aO*<MxegO-z(fX*pJ#gqVIf;;x%6AV`XbrNbF1mS2 z>%LByM)6R&KSfqH_+jNj)`7j4wOyCvB4Z%vV1oQC&i0`Yb6<|8GywB!(OZmaWlHh#mY(+1_a0 z&kEnudp}#=`&YJ`O^l*2n%D5-vEm_dm|s6AP(Zr%6G{H!98RMXbCI2*GWeRf`~yXi z-iE5XG$@jgGJko93qm*#5r`+Y_v$w9v{WvL~3_{Xrz@PFkL(;zfo2dQpVTl5={b^PGj)nHB9 z`JiOU4FV4#FwS<8HAV^~GwCPb6`wSh#D2sV4EVuLsV+!B3Qg2CJK8D$BGrM z@;Ts%c+(vr8Mi~c^DnQ+uGh>b-nYbt9wXdPYb>=JEmS8oKKUFMfl5l z&3ihqn0if&>TiM#mp~)i;Pf?g*VKhutWz+1A@G|Ea?)APj|JXa9Yu@7FtQY~@jnK^ za6h8X!fJ(Irm&Z&H;Z9N@+udr6JO>!L6Aq8Qzn1VP#7I(wQ2Sgs zb~oG|{_7if6=C=l4;%!rDx86kuFehm^Qo)-+91G2i}6DKVIoRa62ag zjSKYDNxa-#T!_9zJR)l9T{!_E1x5cFJ^1L3Ye@ZH;iyBXeQz8w5O=5k3O7Ozr~CR9 z&k&^&_^qQlcs}@wWui_h96{>C(7Y!cW!^@CDv(ow5?61WvcaDzX8-E2maE%5B}l5O z*^MT?(fUbI*JG|qQT7j_npk$}NrOF}c<}wi)K#Gx z*!OUj*6PSUD?BNxPD*C$)VNb7O)QZ=(fbY=8KLnemT@X(R@UpV^JwJ)!;i z$G^-IguHu^UH+}NE_CM8s?caVdgcX1cXWLf)RxYf!-=p>aTt7a+@%4_qo9|*Bv5Q^AU(F`0gR6;&q?I4 zyYb0opg03cM>glEiI0H%4?lFhBKp@_?f}IR!lKK&8{D6Rf7?u@KRv|Z+Qq}L%QxLC zs*D(wwNF^`v-@g4+4YHeLAQl`Hp<6iC}25Au^Fb>(-jC>LA8&j2-kh-b6*wF{4F}pOR_uUEUQ@)>>B%-CYV= zne8VR4Bs9#|MGxE_c9+Q~d?dmSrf}(`>p)}%%De>r zmhQu7W{R2VPqaUu@qehIdhllflysHtZuCF)X!62-TRj9<7LFRc;FLfR^BggW3`&P# z%BK=xZAF7@M?Tl-Z8geOoGuPS9q>me!sKt#_^Lt^Di3N$_zk^BtDc(lfWMRX*dvC8 z>d>Zb8$3YySEmX$CaG34aV??Ww@IzfPv6U&7v}R8_}w!Jq=Yjb*J_=oY!skGH;veo zk_r{FWLp$1?)!>qo@$S>rSiI>9YOCn{=g`4^~KDWmViNz#R0Qv4TbU#5+(PBHE^>; zYPc0i{?rvLm^){)%Hl228}xq<3%<7dBVGp$u)*O4ZEn-?9eokWn6}1k9U}A^u(6Zk zSN;M_P`m!;bCSItNX3(K9r1IBHTs#2d#GvEXPg<_S1JA_#cDA`+71#dgEV;fjL_|*%6ENc=>X;GGbih&Zu^vFm42+bwY!Ut{$X8BbHv=t$*k~Gd96w z%vFeskevW~17CvBP|O6U_THSdM|;6#`xV*sD*e(RE@X~P`Dt#42_E*Jq|@61&HHnv z*Ws4t2FIu0t3*p70n#{eUOclDs6Br4{NtG~XfkZr`sm^!-rN^e@{4b|iD3^@T%v7> z;!i_hY%+^H@j5}6?V?0UE*(Wv^#d=&>+SGIhP-<`ILu);TP1RQXWxi7%sfddrBQ=x z4fsJTH33K11$uE^6LmZaEgOO{f_2+vK8vx zqfVqU!#Yq);cW(c#|<^-Idxm_iYIGpFwCgWFWPf}BhxKbI-880JJsqGYd&TJbs8V4}Hw0f)gqH|z(gtcG{o?CG-F=o= z)ERsKl_-;{hVD(QAWyN$o|OJ#21Sm=ShqC~MFdSn56_)xt-Q1w!$!_*^P#)Le*w??xR z4T2*1ZKeu(2eQ25DiT*l7J4H6;I7#FA40wF5Th=SqF_MwuFCk%zBW{b8Rpp0y#ve) zN(AVNKD_#LF^=H`mlbc%nV5tny8Ki@OlbeHm#@?0`tH^#2X5C;gD zWvKY$JKxe*CUuoL`m=fw&;KFy)UZ(k(@iZ4+j5M?g@<#XKfPjH{XT0IV(hxgWV7zF z7p~d732D{r^;@~CSOCzfm!vs{r7NVoQrpcFCM?iq{hqXfQ^;$_G^5%L&&J9b#=#&e zDRR%N8evCy-BHj|14tN=T}6`uPF>s%0*BRISWuckm*)`~vUvG1eD+;>1ba zE`)bTAMtM3sg)l3SPrcDgu7IFA#UsRl)m+hCFVGiM{{gx6Zn{u=C8HWqj`VP9v|9b zL;NA2Qz(F4klM;;9pk%*&N}URgsA(j=SJ%Xl;%8)?PD3j@N%#fiXdOfi&>c6bb(C$ z+pvnRoXDh^QhW;kI(~}CCb&9ErQTo^Mc2|70&0_x%l#OC<@M~CYiYCS@6|kvyW*X` zO`z%b2`d(66ejHgcVJJ`>YH|sXSNAuA6f3j0#4kzsiN9WD`a-d)^or5lZ#Lng_sI0 zf3ri8pQ8YDcVj`<$X4Q999Nc~r5ZDvQ*2^b$RZGaa7+LEqJ)f60R%7EG)fIDT`VMZHr}6q zIKgo@QFGn$TFWJgnGDtaMp#BC$7e`o<7Pv3#Z#-(VMNI+1(r@wUSxkxPZLj@BJ^;B z-;RM_D^bCGgTFR)n!j>^=As&I1Sl8g9Z#)d3Yx26^`N?&Ve zWcgaa=Dbc>XE+)DaCs!i)X$Cgje(E3y~Js-=Wi}xRPRsbQHBTc9fWB62>?~FzzSII zPNl@HW0*y>Qzlm=NJ0kPcgvz_U&>lLONz2sgFMn<_Zzb)acd1N8iW>0qS;H4= z63kV-2bdz|Z$8QjgUXp63rgKbli2$~FOc@GIECKAi#zJZ17~N)S{s+3J8LG~4gmg; zI%DIgE6u5;YA0NGWn;@pDK;42>$LEK+KUdf_zA6Zis!R?cC*f4jHu0{O(`QDxs74lw>Aa)CPHl4km59l^%bbWVRj z&6(il2R=bu@MeBGMSQfw2Bi?e=K=iWQ#gi1y-Bv#lI;O-xZ1G|i>8$l{~<>y@zeWy z!gZk(U-j%G$35HNt>xO|!BV?K1+A^1PTOLD|MA--Gmr+~HmRo#m#@Yn9*4cRs;BVs z?`ukf<7ZF5dKjH7JH_)zQVWDhl_pZ6P)NH3$b5I1e#gJ;zRT#pU{`G%p)dJGZ^Jb$ zuk;PeQ@ijEzN2HP#3@KMkZ}nYm#+25^#eW};mY>ahP*LdfUJY~ccQbSj^_Q?!qjqS z;yUlcpV*N~2kFAg46)SUSImoC4fO~Ja-uF3&pNuX8Zw7c($sBtUy;>c$Z%4S7j~2v zsN*~Lvr%a#wJjHLi6`o(>l6buNitS4wVgRALq35|+LnxEpA_DBEN!$yq+75y%j^Ld zJnNCIp9+Wvrz7U=t1?xe;X+a(UUV66FPxZ#U$5Fj_QE*%?w>oTdwSA2ef&78o#`9w z+*4&|)2lC>Uo7L2#H1D9Q3MPH1-*UMgZ*@-_j|z?ABrPwBOL!NV*S=8?8$5z;KSB+ zN)+gM%w0dqPsC})+gwI}j{FDw>4q!hE%H#OIP{mNK$<+Spv`c22PDn}rN=EeVlUiH?B5Rr};2sS$}+uTN+77Mmcih71-HPGkcwWY8LM#0p84A ze2xfLf{A?Dx6OSi{BePql6_0$PofLg442Vc(frB( z>5p$j-gBhSvrDNrC?0=#LAJ0@R7y#!uv_ReA{VZ43}>sNM}JOZQ?0{dtY$;w!;$l9 zL4}<2O}ZgxR$-S`O6O)4KTaB5G(`+lMg0l-xc(dMSPuQj17`cYv;9}f_EeFdv?OB( z00{wYJk~Syr#TCR{S1MP45wH}n$i^gEk5XDlk1iUWKuAZ%|8M{?=HJ| zHE^M80{1lm#pgFSsS2BCl@NwAY>Eq+X$p3htIJIi>mTDd8ZQPf(@S47giE)gPQKFu zI*HUbblo*y;5oO+OYODl`OPoEy%iw#;^PzbA1-39|HQ%{;jorRyMo_F`(xHFQ_soU zHd_xlE&NFZ>ZC%pin>Sq{q8{@!c%YnS8xk{!2~)0de$=k@e(tOWT%*lH`pQ<>S5q5 z4zRxKt5;`vf@cjnQGQ$p~E8&Ji8l) zA{g2~V3wj;orHCdyg^x!i2m;VL`{7%=MlNDPUO&r2SF>$$nUuYniy{%f-k>KS(u2nbfu3|bRWL@k3_wD|r{ zQ5kwbE9uS$(jsng>M%Ep@GUjgoClt}ypJeS={wLmqGOjRg>%fGt0bzfco8A}@W*t< zahPLyV);~PK|*0mu90G?T|8|NN&8I;dOjuXgXXnB_Yq|ZQgOVWP|0V_2rLrvnX;~RW`>T_32UOK&;uIU(VoX8N9(#Oe2@_I9a)^_Pev}oZH zPfs%II+188gth6uqxWZEDnpA(P0)`D&N9Z6URRO`l-cmoVo5p0`pi%Th1j<*-VpL@ zeLlRt04}yrZMwY=%?u!WVyRu}2)?w9I_Yzn{bE~Y_NJUNziY9liS?z0G?BxL-51v) zLvjd&Ldji8Jg-6VWp;7j)(>R+EluxPWPH%pD-BBk2*j+21WkM|nOQ z)!jy?LHOu3yH4{SOOcx|Ch|a?Mc(Lh#AAWx=ZFBPL#Bp%n7TOR&xEUo=2l}3ve*QK z7|>_<dZ&(K~p}(hW6esZPO-L>OE!4H?O5SulCfwY&T38k^=d0@YO$MOiRb6 zaTt4%J}UHlsC9~aL4A3sqqm`JV3zL?j7Wgb2~4NnRocBsMNQ3$99{6wt?&)zg%b?) z7!av|`j;m8RW)9hd&Yw0&8Jlri@Qc04_{dKL#5B+h=g}v2yR%z`H0HQ+Xvi!wjI6y zDSx~XU5S%%luE{QKD90TRTVe)&&|CQHn8!t@Q*0X{NX^|Xar9}mMUcDGfHayG6;qN=Dp|6(E9G`) zrc*gZBWRcZ#cYmDhzhUOIbgFXiSKOT75uz7*Hrj9RKGff{q3uAW$<)vmwx|Zn*LAa zwd%uaEbak2-N;9=af7z!#YpT$yhOL z{kT}wESfUS7C~MYtcVY9$m`du6;;f$y%?fs&D-ENHjtauYWF;HQI7jAiG8tx8D$IV z=jEDCFukk6FwfM0gq-w!S40E`ZHd>V1M1V5tA2hc* zuPCX6_*WnCoAnqLX%&`NUna_7shgMDrd!**ez$rN@u;YlhWslg8}tt9)kC;AZO*4- zkC-4&+|rAz5D!MU!w+^;==m{?Ub;dRUqcq?@Yp)+_htPF1kHQ!9kTVXqD>O|>pF27 z3rHjAN8Qc>(h_=W1!sNL1^_vyvtA;Jav(1o zSP?p&sj)#!mDqf&lOn*w$f$Fu&^^&WmPDIOBOl>|{+Gwc2cP;%wC zu%!qZc>J}r)T4+XbM$2cSIsZP-m)}e$>W|A*r>l(a_!y0db^XJjzhj6e z|I7~S<0V7g3N5(l<9UCMHz`?m*?Pcf4#f`BiKWqsjV;Kb1WyyiS4}?KRX3KmyO&Uf zy&8jO+`WSC)rSLe;g8v#RD3=J(%;BHTS-T&`E~}8#N@#w^_1gQXY$@Sbbi2s}1b4?HADW~F}aXk~IxKsz@*D#DQyOX?=G zLZ$vhcBYr>vk&@N^%!?j!IQp$b?xxij+o^rOro}Z3;_NmvYbWk4OSw(f>U8Yo%G9t z;=0_HD;3BO=wh7m93DXx^CH3Z-EbQLF@--(4sa?oZv$lGjyLhasN4TCN;nB78>DZ< z_&t3BD@aSYT)Xx1Zs}~cV&J--a@kZ~_t%fkVll~E)-RLao#(I_%D#rvvA&QnDRv0r79V;EGnb2vAXpCMJE8eC0_;YHiybG@U>4dGzPMF{2oV(kDy)VWit((Hvu z1THQrPc!yF@?01{k#li{Pu~As1gFoq`Yd6kkFQg zLohrnmQ9S()N=16c|CM5%>|_piGdOkoCMrC(vuqOk(*J&_?7^{$5|wXN85ws4xhAY zr><;I66Ws^`}-2yMQk;-$KNTfWQgT(MG)QDTw$!b6i>|^)_8R=5~i&=HHW#htw|{m zmX1Q5H!bm-3+NzxSv+EAtllF3lk8*rjshX^nQMrAgTu-|HRj6FE0rVlo9iD0Evy}$ zgBqA$90(ciX|eUuJ5O?!1oy|nvJ+_h@QvysFLc5~cU5pS+}Qt?S26h0UO+>Q#)`v@ zU)|-9VMQ7G6lFFxGBvE)FF_GoZT32gXKXwBsoEQ@mYi6;uM^4P0QJ!Qr)F(r(_Nr) zpF+Of2&?rs-$PXr$Oi=ieccyQ#7)pkxW_?JD-w@vmMr*e<^;o_yTtIx_0K`>Vq;?6 zdFG>XlL+Oxcf10)Xp;fz6S+8iRWB@F-r46B;7#bjd8^!GnwuQ(Zu>1w)CW!Y5{6;k z*-2r^OEId|5=FDro|GBTQkg99J(v`nwyJT@iPygdWL1$ol0ZbrALhI4J0ME;Fum&K zeHc}feqDK7GJ*4t`zy1Cc@uR&SAPPd4|kzjWq0oJ`GCjJeqF)sBw+4*&d_YE+}*hU zzkCZK@<67odgH?!!LrCrmv9m1is2WA#onCFFRzq`o1Y5~CQasL7Lj3w$|6KD4Ozh- zkDY!*wexQqJ!9uh%7GT2(;J$Ql-a_UwBP)Yyl<`E9cI3(SW}TCoyk&6qi?7cr@h;X z>;A)!EhvC_tf8B}E~K?8(5kD$lDs3Mx`B#Fnka3%zvtWk>vbYqQ6UuzSf4Q%!cx6mDhtxibhDMa7TQmAH)fc+?}z4Qk;w&mIMWnZna8;UVhJj$6P-{3G!eg za}#YS>LnQy5=!{hO0c7exzp$GX!x-43FfHJFURr|CPO&k?8l1r__5+pRKjBlzJ`R* zVCU%w=xTq7n=e`Yy5lq@E$@PArTMT68FRvi!bo;qRzvw>{(F{0$?}op8nP^$>9WTh zzQu&E%t6(_;F+>}E;xv87w{LSIS6?dycPJ^RXO~D4|_)@{PCFRsG^HPg*EvTrckU2yTrt&x{>p0Hm0a6OfX$&TNQc)QlnkV7r7%={(wdYAf%%IkesV6jz@I6#DvS5z(}-QG1NXkZ4Z3KW%P+J8>x`O~^H6>k)ofULN2m%xR8G=0eUN97kaY zzNDLa^1uSm?eQbRhpLO4M9Dfr+}_K&;$QiyRK-+UdRGLtF)pTu2tMe`P@+w)ktbvP zzzA4oIBNCh+gWLk$3TBvv&tgZ7tLTx;D-GR99{m zik}EpRg|nhm1@6|gR$-}sWh2xNS261suWK}s^T8Setmg4*!dYvB-L>z5=R3l5S3U< z7wq;{m(t+g`o*-a;`a-t=4%@FL&B0^Kh~|rEYN~kcb#8&y6nwF)4n54^sjDEh=>AY zYT@D6nt7$&UsW&ijg&54MUOgQI^X_UffhTxPWqzxi$vC|{0y=)X(a7b5`K&Uc_!aK z5K#^!}sJM;`?^pBJ5U0jQpgtu`{iY!?UW5u*7PUlwVw}Gq z7(04>(ca?ChgfVS+U#i87KoUrBNG)(3+PG59Aq|NRJc~a$7}hl*O7`t({}XQ$Tkh}O^7Vhmq<8Hv84ZJH;~YR^XmnS-xjWxmD|8JK5xWhO#H=x zjbc+TQC;3OB}87oNxpNNSkLkNg4Kezx9u8Zu2zu{K@{9k5 zh{!`o7ZZz$%p{&|Nd0m*J~A+R+#E7RG?{(%&^9~867wL8c5!6G1G0_c;d_O}dU{^% zrECCh%giI$M2Zm7Xy>n39NJXHwR8OSxudwgHL85)`CUmXuXT%yxn4z00Ktg1h<7x$ zF~T^0-`~GSSVX+twTSsXAs3P*E1RC~=Qg6y;ONG|uINQGL#iYbfweoN$MT7T@ZiLY zq<=&TKp^4p(5Zq9>)fSCpBP}$cOV6UmpcBOo^y#GiopwY~t^1PO=4ik}68KV*9N=o?atgc-c0v z0SFjQFpc8+tpHhw;UY%ypqb>e4e4Lsy=9DNb(P7Dw#vF(=w>r)i5h*!nLryrb5%E$ zn+n|{3?7L>NhKq&MVDYWx2zg{JEAiiwpFloX7o_fQFmB-_$u1|OQa{H3oy{m(Py4b zPIOnGbdzAU?E-n*`QWBB`2K3oTG{nu)mFQ;H9JrQ;O;m@f~`P4%b2$;Joji|{?6Bq zfq|Uy;7M(!6A-E?t8DRl3%>hz{4~T#q0veH`y8obBQR%97CC>JrRjNE!r`$<3#d1BCR2sLb6@PAWuc(XW<9Qps?(a0WvIBp5wOy+*0F4j!t2R`KhH09! zVx+QSB_7-FeTUfPr4vj#?OHya(v$cR3_O{5d?fWXh9-<=eDRDkYF|&AqAa2B`%lCB zSXN`vYZFzWkt7t9xPQp0Ive#?kjcmyN)#)Y(Psfizx!a+|f485{Bsq?133CwrQE&4NVrC)9)8WdtCjW-z77(~Pu`deWkaGRc-90mb*#|UP0O0FsJBaTD{ zd<}-KrTgz^Bfj;e@_Dw)_4riC?;{%7O0=43P)W0Vbx)Rh*5>UDNl5)_p4~Z+eOs=| zqwEl2Jtq1Z=$X#0OHeg^)GMQ=Sp6!C`=C%F>aw zHb0rG3!lT7Tb`&3E&4R@PFG>%)nA()1^F@~>qq(LG!{4bM9J+g0!QY2ElLw9Jd%){ zD5wYf8@+WEbkekYbZUjm!5%e*2B~K%TOGzjK{Mp#+3^T;L_5~z%#_YG!ZjucT6W{A z803Sh{YA>gS}kx^HhIPy`}@Vb*T>&YWt9huizPPwB zbn9OD5;a8oO(r~t#rT1&Yesm9xgXLQWk2w1Z)c+kMh`n4-#}ilSV0|LvI~%hk&MuX z@sVu2Q=8C;TK;b25ICaDf#2z|)u$M1qeJSfQuO++MB8yVR6n_fGa$MTajVef9m9oA^Y_P z2)sfO&Vm6C1!CcoX)=K*u!IS;=#JH{CmDHinl^Q8KrBd3LoPc+zsi|BrY+bGlDJLb z{5d6^HHCa|@(IGVFFW2}{sXMJCf0yQhe=?+LesT5OZ94xQb}j~1*W56@FrP-o7wl` zHe|WjBjGX0&T(&4Xo`K$d4$DYRt+DeWlqXDn3D;F2uKKI%u)LGENtWgp|BBn!&##F z#SLv@P!Uiz!U^yY7OWk=cu>4aW>M;lO`u?I6ZdhLj@34aX@-+@sLN&caXKsa;IvPL zD9b^|K2aD=)F5NQ`WL#JbNb|)!9m!pAp^1r+R^A-QRaKjr0K5x@f;NVt6!+n7te@@ zQ6<`nh%e&LDFQ6V+EK+Y5oIuei0?agARELtN&Ar(PsjJ-+OvYFJC(*aHaV}E*!C<( zhV8UR(6X%TTu9=_(U%>+^yD__5nae9zKaM+4j7fS<_@MPP_9-ME}a}g?arx!v6f)v zYz@lkQ^^E=^-x}HKx-}=MtgZ5V9rD9Y|r#srU33J(NqPiPhkLFBkWqrnR=O8G-S~i zbpr~E&wfhn;~ljG-a#NNP(R{B?i@RS(s!A+nd{Jb#xpulp(K}AT_-MLdYuHmc*EXY zy+-oQ1VUEUuk~n1+1vwMJ5JqyE==v9Qh~JnUtP8jLS7e!nxrMS(`rEi?9=Oflx4_pgyG7Q~+c?rw$cGq%dzlV-@-j2UlW zA|@$+wKdDO8wkp$q>&BU6Dz2jq92uSHFs4&L6>|dMCQX5GD;kSB1+_v&cF(wR`MC` zrSiy|+Z12;1oQkF87*Ucx-4%Ea$DMTq%r7`xHs5u2v~m;^&MG7`mB;ywx7tYrP**> z*nvKTuSC(<_45*krSJj+9M3r@2EYyk12G*8ix@;1sm<9CR+^}55uWdg@W~$1H<9VY zoZ2bGk6o?W2riq!mG>4s74xt_=E(-$=?d!;LRoJebc^xb1YLffB(fW+aa1?&H#=X( zyxsUQT`Wu?NVR-6u8;dQf8$*c>2Wq~+Xic$&r06vXH>3 z9-sA-&0mt0HfDuO-jE;!7>UAAoJUZ}keS_upz<^Bs2HJ*^q?m7pEsGWv8a1{Rv+dx zkgh5`QH#>^#l*h!$;G((iVPHOkEJ82&pR_bk!uEaX(LUweyKzZ+@pxE4<1fOONq2lK|OcHAn$ z%{+wd?uz3H1nefyVfF|P%}w`#2Lv|Sa97XS@$Ai(6A|jVf%$2HH>x~|3k^F)4&;R_ zRnpedcy-|T7&i}}mD*TM=#MVrR+->Vz*VdO8%-ekB+u^WqgE2m=!M^0zun4?ZOmyyuzhRcsOo;Yi^2_^i9#M}$iJ`6PUn0l*;wvN14umgu2LxA}?=}>v2bbmt<9;=M z%AHB6Q+X#*)Am3;H1CFQ|Im)<+}%q2NnmYk_NZ0%>Sf6j0Z8Vx{1STdji1O?_F`PX zlqcL|+mcz*&iC~3IG$4PMb2wt^>@LO^uH^)AJ5@=`}vNpqhJ;g!T+qYG7xWxf+mXk zW5m?w7RFB2NMeS8Qgy)sGF0Eijs$i%e2hU5BDqId5#j*N9vW*SWnZOU9U&-9dSdnn!&d5bp9_phLAx^6uoIiQZqzn*a^xjDi+=--ve4*X;-?upwc=!!El z&#$%P=c6Z}LslFFkog43Q^INvr ziQczFw^b@0E}kBvaOTj`kH>99npo;HvsFTbHNnH|{o)Wo)Bfc=y{9rCP-q(1dMnuNhrDxS&{vIEwlDxOp5%JTl7KH67xOd0vU)b z+L5=@BFFVLUw*hge+f4^@l;^TO`J5*m76K-8n*(CTY`Eu4x2scS(>g%D0bVQj?1G&>s-Ad!2MoqgQrhVNDn)c3za6ERvpo)(den2Q-FW zMqFuomQzsprW-H6iXDuh$gwNbQG0Lxk_*p>45dZxtY!Z`DiMISrA{8|^e{!oQvj^A z6SrVEB!AOr$Y2&oZ+BM;kWs8u@`9L>8MbR|m&~`Dr`LjO|BAzhxtAd&b}sVZOCm`A zLl-r6qLBBKaXa+IL*wOdX}Kl1&|MeU{0-Gs_I%`)y$_vU*VkiZ1IYz& z&yI=w@5*=yo1rr8wP(>I_4dfBUutv4MLVi%@%2I7>Lx#0JVDdC$O2^r;heN}D}%Mi zCID+8t!*)qQ9W??j7eT}LeneGvwi4fZx=SV@`qS?rRts63H_2ix$34JEdnBB_4X*R zaXq^|=~C@U=03)|p=O>mQEpjrPZ###^!{?ei`g^bd=&Cs4^{2L8JPXN1KU(f*?dSM zIPs=|D9hqqF%2QR#0j#y3<6JDUJ!^WODHJ~o|-KLi$O`>JX@9i1Zs9O5BavQ1bOXt z{1}SK+auhJfzwn{AgOF#(3M0gahSJ7nft+BWs)H(i^=ENL%RM;8OJ0|(?CY@a{H(3 z7BJ%E8EGFO2$4apc?eLZZBW+Ty7GEgT>IukYNgv8^u<+%Vp5s+k)Z1|Iy#T5^_P$H zip#wJr(*)*qX^NNH+iI=AKCUxckby~>p3|JfrEri&mS&&a`~y=1)Uv_m+7!?w0bc+ zua+tA20uggr?ZB25y~i@I$%0Xoq9$;>0@h)!S?NCQUfiAx7DMt@K}c^4$NmqQG4B= zCuYQ)kJkT`IzY$nX*zQZek;hx=aAS^!I69gT#ZzMSBTSIz0V4JIwlK0c#xG7G{7Pr zVlh_F%ahcS?`NO`MxzSpI8Ev~T4PApVc5s%PRyVqe{>*stTGOX8(FSqtc$Cvi|3zxa&@#JhK1&HithiaPTvf z1i(|)^GagbHY;2}`-|11vd3GoeNC>6rS|4Ze%;G#ZUN7tPg3I-%)4`>+izy2vX1CI zRx6a-B5_`=D4ELNw0!pAR#02!pS2%(M%DC4F*1^PfPV4k2TnaPOMCE79B`PZ9WD*g zvylaLJslKYqp|nphMXy=>sg=mCZqZ451tY!(L~H?1y$Zb9RP!3{`tKgaXgfk`MJgg zPj22ME>(o7PRUu;(46UZ=2Ogv0f!7b$8l5b6)l+U?ROs-KP-7sSjXS&beuJ1Ux?k+ z8ynO_+t)&=w7r(WOJu_-oPES6a5Ew6%C~M+NcA%E)koW*j{9p1idR)`r=Ry{qoiVn zqdNw%{m-daOdjST&VQ6#yVD-@O~G(Q&i4j3VpcM|noeJ5+Xg?Zsql;5YLi~;bNKPA z-Fcc3-^fPfoxv0Xr7rk?@0LrFq6l!mQh6lfbnjm2ofq}#xyq5--d~ZgS6=l!iuoBt zv8oY=irWnP{?2P-v@&f=C`9^)Blzhe4Mcz~&Hb*g8LRaIbF)Jhv@K7GgP)|=Dzwfk zJ(Jz2r&P0C3w(AFxbjuog(8o}!+JR$HGx~25E%p_LRm{|7m1EeukPC(n^+3qSa8q9 zJ*Sl#7Y`8XKSV^n?#})sXy1dXFnyL^@)HYq}(R)roBpU>I<7AW1vm>OsNwkiz{{2S_Ji?yk%rq+>&X z8JY(+f7(VR#f7|L+IfI>WPUXK)>iq8cFeB9vVD19P3wz8{kYxD{L0I2L(9F>DLD6i z>SHO+rB*^-3Mf@YZP#!lp-K8>ZYZ)ft>xld_$AlClfVi9g=K(7&ryi5fah}NT+mz zbcck*P`bMXq)VxdW_ylbfB)y@UT(Y3eXi@1GzC;(^U3Z%h!h1_%Bt?qdJ>=A0FXyi zUoV+PyWUp$yrr@@O^3-p7uyF$l$bwhvqiLec>lH$Su*6B&t9RWt2*Y-UX7okPXn+}B%gAi3?`*E`$kk(X6Y;P6z*FMGt3kP*;LbaEPZzkuYUJEPqc<@wF0Ot-kl zN>a2fHBUch6!gvP9p)+1@3tt6-JLl6h_!5jJQv}o+LNX&Wg}lwMRgW*ufNpKfueST z8W5i4y@m#NvbK97?)l>-;dgZzPNJoGtb?v2S6zZWTZ)J6UU8?b4~s8OH%?CN2c{u~ z0DgJILnhyWbGU-5$MAuy(wy;l67|M35_9WevtHH$c?&Ab0lpj?O<_P=Zpb{|x5-Uv z`}Fx$i*?sx(s5?tIqQle6JJ_o%{LH{w*grtcih*6Rh>D(Y+bj19S-?k+YyJaLQb~#B=Y?Ue6n1HQ zuuC#;)Z6O()Gvn10lFZ4N^5;t9n?Z3d&A2<4;peEr7DAj5Q`vWzr|ck>0LL_X$YaQ zi-?SH7zSXTdB(*T}T|}E{WoRTQh;z+3dwwbYL5(-^cNZ=4GJS5sl}2i_A4~@*yLYG*MM| za%3C}OtQz!BB6YP&8DH7OzmOagH;)w&e$XIYtT(fw&26#;}k+6v~}@^s*#7ZQ&|^| z&{csY&Hs|r>ZMugu}-xN#+d0|;{786*ghdGHvL5Lh97t}o@!dsw7r-xawGkAym&9a z7JC=os=EP70%y$}vrkBjZ zO;@7*oTlcbuVan2NO!`DvVMkcha%RIj;RfO6ok3-=-UX7aCMZ<<8Y^YZZzwETr2(5 zX|z)cUeI>n|NM&hPaaOGHn|Lui91&8#vmC~@0_wckX+~NcAkrJVb z#d%7JEBXQ7Tf(!Sb-}Ch$4=uS@H2J0mb|AzKSC+-Ddt+A8;vGV;=gn=w+p^2!ODC1 z=6Y(SD)K(lTr4#%8!2k;m<<4>KSIZ<$`PLO5eTrbYERoJ!W`SNomzJRJ|-;3pzy{( zMA>R;{*2wYok>=j_US)cKVayJ0XO?K^ACXgGydB(Op>wOmQS`9Ld|1LcwJzvCq;Jj z&gPma5i+>`r!0n5mTF#;!tjl&U%x0{S8XU=qy(<8M!?NJjYiSLgjx1W>$@iR=f<{w za>`k<<7s_n&&=oEf|i7{Mar7QVvIt0m$=y*h~G1((ps<~6E{P0WDu_cKaxBM_$>qN z@h5XqN#H1$qE~3$_&08ig6;ji%yuoh!LN= zxf^S*2yeV)eMIvWRXfe`L&vl6NcI#tH|ns-+X_>Rc5?5>kDJDtZ+yDrp{;m&Oj+Q4 zuA#2>JHgxmys?H}SddugGRFs8eX~SUdj)cscX$WOjO{!2T{8ws8#p&Jg$DtrBxFI} z^cO1jZ<-NuoYY9izKo$SU7~6-Z(hHtishBlwT!&VG6-I+ob`Pd%YT=Wlz{?1f1jVA z*U@29lj^hyOYN5=sViCWtqo4S{WQeshw%y_c(S}0@`^#}aig{PuK#!WsVRDA*9784 zFoil@`Ynd?{g_*ir$aEc@IToEME@BG9B(u`v_)qc`_GWT_A!_O#*Du_mKDx}v?>vI z*V4kt;ETLVuXDF}e-3q2mwD8|%QEP}WVsDB)!9jovD*&KDzQSn78U)vsM7OC_kq;k z{lVNB)y&m<=Qq;gEe5(;r|+ku?YDVv+#3StUPH+3i@hJw)%WRe4|>k5#YIsm&)m~@ za%rO!fg|@Rm|ETt$LaPqv3ye5y;oPSZt}&Ki^BUN@A=FF#P~dCH~1-VY}H!)C6A(C zp|1&ep0pv`+nw2?=Ti&3>))N*{VJ1Ydet{!E6i@JZBuPb`gyF_27eXoQO-YIe)o5$_*5`b-c$4((GyJ z0D0s7oC+BM7?Kg z3w_iqd!34^#e9pZ8`ucOaB6?!!$eSn2m~1diB5`Ub^R}&l~idfNu7g0r*Z);#b0oR zw}*sR+ok@7H)bdVpLYkz(HLRK^9f)~JoKFrC+5~q3YE+zY_UUb4<5&j>bWOXe0O>| zsUOmR5If)a3iIuoxICN*+n1C=au}3(l&eQxv8*^=P8??nf(u0Qw2nev#ubtJDB-}H zRvJTKq&y9R3=HZ*yJ1SSWZ|CJ{f$p>)|JkWUe&*PqV$;G3WAc(;HO&o&<@y_8c|1G z+b?)A%m17BcmmNVju!DR}D9x*nn#tWj~QK7*{Bc zuN;!VR!@ulkBor9Ia(2604e6b{CF&jAnuvtPD~>VEX<*kD>VGI`Lq8%M`9qcg52#UcrZk*kJmi@LkKphERI8{x4} z6UMW{I8Dor`C3i*N-jKfa%lY!hXo$DBKKr9FG7hPXY>Juj zmQR24u&DC+if+}_?e#BEOLZJ97U7vnJ($vei150>a;5NJW@J|1s9;fp1usT*1=S~5 z0*1N@g@S)C6KQX<+1tQxuO~Zk)>F_Rz}Xg!4)z(4#&EEGU94jJs;vuvoCUEaij+fcuN-6Q#p41M9l}f-MX}PN(+UC>GT^$tt z15AX!amgN$V>wK^6H`g`3?Mge5Z1T2xbCVmNUdioUB^SdF+>$Sd>=?iMXRr$8wniL zeHu$FdtBQY0^~Jk&C}h1d?yzvN!n6WzWLojyBV5Z<(X_@)c=VN=|2U_yrJ_$ zpRwQ&6RhC&_gg(XjZ7~_$k&Ehc*vtgOabxFmuYRDiasvyV+o)zl4 zBXAqFE{9*foI|*yR&K0CJ}iwwq<<1(qa5)G&TcPacWUDNNy$-}YN5IZV+eb^d;U+$ zRZmZ3(#JQ${NxoL?|)R)@A%-%b{#9sJLXgs{tSMknAAj`UeD00UiKZz^>eGrT33I( z+jx%GI<=~PA7n|4*BAIfs85WiEgc=2IkdKoz5oN>RbfdZZHEHBBxyK(Vl`~pop<6@ zk~oegx^AN9TExe!m}9?E<*r4Xo!NNB?&z||#XM~3-vSDXK`3GPd3n=S)J=Tna2n?_ ztS124E{zhhr`M}PEAJ7NugET^)fmJ#TB%wiPb}fjP@<{bs}RI|7UrmH<;h;D1b`W| z?iH?&ZZ>e9P5XRiCF=uU1vRqeFu64-Vb5F`F0TEBa9PCf{nT&Is#?=Df7hC(Xqb2kAq)vt#hkWKo2Jl>1&qnNBkL&i{$#c1;4YYLxRYkSl zR3vB8y=-XU^x8WEyO5_T|Ll47vcx81-7{~Vn8*I__lyhH4pF{vv{Ppl4hwX^p)F1F zEy`!`#fCX^>up@1oo#xkS8b@Q$b1BQC|Gs%7Z9>u8rdw=fsa4dfZF$jlE)S^xAXp%kT&j@<>6|zo^*Gu2u=< zWl+eje`|8*vC^gylfMyi$I)5<-?b=rwZc9KqA=;f9(bh*b)+jF3YbclpY@b)>Wcig zV^XSs^jdXd{5%EQ{)0TeVxpKgb{aYZKhX7CrpRLib z<}!kND+~e;QhNm4el8{ELs2&?lBr?UL*@k+ZEri}zTj-fJcG)SkDpz}gC%=Q<|d5n!z1BSZGC*_kA5w{0cUQ#n)Oq5YvzNlY2&Y2Cc zkD<8&UXK}Iu-sr4{@*hJAy9&>M8=>PTk~(hiOae-_ZvV=m%_t7lrlG%S5F|?a%hJu zP1A_MW6(wy%I?#_f*p26N#QW_G|+4WG&Anjf~auHMTkof3T)C<36_$b zgn$MkB)Av+k?wu6Xi+kY8`73q{cSJ)<#PMKMx$sATS78ftJ8`78^ZSqvXkYcZ#Pe& z5%Vj)na>jywK*?b`*`DL@Ewrs!{9@(`&*}|!=AjL4%P!>@{FGI?{CJ0E^#Jh4B&2{ zS<;1gGNsq8+(n!<&9>U zJUrl+{)MbU;Ua=phYq)&U2EyaM1q|mQi9j8=4%&PfH1_fhllc54kgbgDjVs#@GoT+ z1m*xj5SZl8x$0jcz9}rPC9llJiP1bv61FW%OXs`2`VtVKxtP&lh0S`X{9kqsBrhJq z+=FNy8l?R37tNQ&L*{E}yUMaKJiKaQ_mIU+9$p*pGEaOvZ4}e=eGH@;iY(JRh{?dx z0~H&Iv{dlIM1_CLyJCprviv~UHLe70YkMK{Yw-;+`l^5^x1!{>L?=&XiHK?1NryH_ zvFOuQjBD5K8}5+`Shcd5isIu2{Vb{qK=yRt=sM|0L3PrL-#ac2BqLdK_ut zAgNeQO)H$fkuVy!=OY{-xYiTuF!4)_A~6PSO{L7yU?vGbAJ3);-|NC9?!h?H}_$u3Cf9&+PP=*BxT#ajUg{hfE>{*d4 z3NCbL{mq~{`bDX`eu4I!_vnc)_SJ=1iC4DX6j<;;sfQ1r?@w02#u7RAffDvf4^t&u z$~gPV^L>#jFAb^sb=>^a3jUeU(mAD)E8fL7X))6c9qPe%GjDTKxfbURdrnsS3}o_l zUe}S=8zd-pT=10C<)KUOQw8I~WjJ-4;wTzGhygqI@TSm#|BnUyjW7eXss%In2AmXX zY0F|N!)t;`2~5T>=4Y?NH!;Q!4fN)jYsB(=r5bi{ibuIS-M=2YVocrNgyL!M5NX@5 zUJdn0Jr3uHGjL5F@!$AVAmfzh?p`M*@S`9ExZIbDiH6K1q(ocCy~t4mhcRllN${dV zhdiIPbmQMJ1Q5^v=Jt(lB7vb!{s2^I{eyTn_?$l9^V47;vj^%nvEAo!F~-jwa+*%U zqsA!fxSF(`*)@*h_YU4l3tmmw@TF^2WfHx@H{DNUJ|$=7we&hF<#JW(Rlj3HyyX)6 z99+L-&%YVF4YHC>_Y^yMAbkx06n=?R(6C6eW_11*w%Pb-in@F$n`Ml@2gM}}DgQ|z zzaO(eJj^~!4E3T>&h4R>vsMcA&=rVr8eC+w^2ZoKB~*|_xfr-IO(C5s<_&vosBo!X zD9$dcgZEIjPa*jrvR9_to}arL4;PORTiGL?ZK|ovhJ82G|w$ z2Vmji*0(H9uq{#U-{2Lco*$|*dydg z9AvBKw)rNKisf%Qs4O-zud2#VSq@Z6GgdAq6Q-UX(n?7YEAbwgL7!JRxnbxM zlx2YchCX%UKSmb8vNL{nUW)?@a&>&vl-S}5OX6hX>bzUP$-0GGbPpX_Eu0%_M z+9+-tn{)UX~W_;Xn(tcjpI_>kH~?4`Id>pY6CWd)V0#Z0bUjOSzNYePBhj z#6$d69eY@GrUL(H4}|lAezM<0AO)X07qowD7~0QLCI1Vfo&3S#3AxwQ1jP#W{XM{> zL=G=)@UF&(7vphm7KJv0T<|L+^CIC9J>AD|m#piGOdgS=VY8e*LY8j7-p0CQ_fyh) z$(wyqseb8iZ5ig+W5>HEHD>7~_Nt&+_mM)Zd6n6h(4$4)OQbb|%_vcnB}L(#^i}|} z|BK6JUXR=w74LC_*1IWGy?kF3H(pe@YfggaG&X>&VLrA7w3vCE#D^nKyz&lxrVR7x zauoOv$NE5lVuvB@=(3VencAPyTRvZ`hI!Mi2XVLTorR|mD1sj)IpNoJKj87%$dviv z7xiI!)Z(<_gvgINoEO7F&^31*CnsjR%9IJoe8-6|_Fc*8Pu=K*Jl-_;f@WP_{#rp7 z4q6bj&U&SzvTsbDDl4$4{G;#&RqryQV_GR0wuT+z{q)5hkd&j4Fvsxupy&L_OjngI z;=%=B!R!F9IO^`W4x{`n*V$DhWPmA_7B`9@c_Ur4wfD8>p9WICp26HH9nZhv+D%wI z=udgW6$hvQ-ydj^rNC=+htrV4t3$)IgLlMS_pRVFv2R4lOi`LFH*XwCby62&ch zrC!%O^PROWcli*Cj2Kmii$7%R&M9#Dof*LAWWO)b(%aWmuUYLiax2A18DvtEj&i*q z>IWx>lp8oqi$VNWCh>7z_({#HzOF+)N&TT`{z2>x;lmrvV1;Q8maAkTP&DP3 zn-xY1voS;QQ(f)zFhg$5Gucv&>5F~5UDE}p8+grB2*;~dFmZK=IqgZE-zt089<|{l zOY3La*nx`BGVaJ4a1Zq5b9Az>i;dpfg2i6kMIcoen_OBq*7d|dH$8@Wf{=ED)}nvu zxbz+@UW@f8UP6x{(#Ij0B<|yTL>1f|UQ8F?*T%rF^S3Oyi+B5#BP7yF`TWT2KSBGew+&ycT)!3t*bJ+wZ3=18I~vaU z=5wX&@iaO_@{-jWE)cDXe7_pneW7gi23W%q6s?5GTdX4}I=j{P^qZ>_qqN2in*E_n zL;C_#J$pP*n0R{`J%O|he?j^j$xoF!BCp+lGIA#!G^qcfdf=@DaKRr{ph&m`l~i@d zZk^UCo-)*7)^<_-uuceui--6{Ox`wrRO^Q46jQRxwPYTAsZ6@%ne(9S%sFPY)R9mb zoeS_wR!YvRgR_=A9L5b$tmi&|H^5Zk=*^N#`dN;`y>91a6AgHcPUckU+f4A2Umg8V zPFs7flu9_PFkE)ozXqypZn!Gk=C>By%_^|#OHfv>f`d+&J&N0y?rh~V z(Jb3@H*EMbE5U#uzCj=5G3vhwZQ>c|Ei@%Va?+RXZqF4L_bh*7TZCeU3A z8rXr|W$Rf5*As|{2@kaF9n0nVZ$2g@wI5XE`{R@AJcnBG8MVsA-~F)%{lx-~Q2{lU z6Y5g%YlI=g0T`?yANX#a7t)ESUDSv_|H8f`39+(*$)6!@RvQ516Xs#`>|a;q z$!0*}J-RHoX8Aq8IF#xiiIy9$aLp+!w@6hQs>8oyE4!KTn8YVZ9oEx@)78^OaC6kp znIK8Wmhat7Eg<~S73p#r^QZumI=@#{{^byN*J0t3>}mf#k?Z{E7O$v|Dh1SyOb@DT z$~WA3K#e;SWoV~|=RnRIR;yuZn{*7wys41FYq<-m~#Fahk zR^LHU3n(avk14QY2@ccK&y|R3aajOYZbtLq`+#-FvRO0xc8*n_a_oXLoxd3SzL;y@ zZg}$yWU-h(u+T!jFH247G4)1Uj3v(xpL@Pro zC}GH*Ry@<11Ld$P##uQ20i|n385o})v;QK$4n2Y1&-_S$GxCK?Xuy~ktJa8}rMfO_ zU(~YZVsOjZlj!c63w7iuRf~O1BG}P6LF$xWf7PR~6``<& z;hmMKXmCK^#-q`vvgX-C z_sts3jf^@gzgIDnT6C^qJ-qbbzm|sjZDJEH*^)0pQ&jeU2LXSyX2`)1$b5sUEmrZh z0y0F^+}0`MyvMcL${!af1%P!;iUnQ!TyyP2T7?3%#|&Tu1QBIZozR8_yue37f2aU3 zNi`|u^Txavs!s*CzhnL`!r(IaT`^msAl#ayjb;p?{_5Vs-XzwUt}$C1sK0+9BfTiN zebauD9PBb3>B7@DtaB@$r8xp`ep_|7V})(*4VUu-xtX$3#8}>@Eh2 z_^td}rN8(PpByPHPa`w11rsu{dBulBuk_)tog0Nar-|36?o5+q*TH0=6dm$BzfK}#dPzht z6gJoN&91pQTz$i3yEIZvu3BC}531|Lrw62+iKAO00YRrQ9alA&>l)Eb!m2Ld&$OAS z@tvm?m?(>)<;ar7y?ZV|wniu5?zLq=9L^K6t?=LLwTZ|?=&^)Nc!tX1?_cJL*7g;W z!BxvD_JXDEHj(4rQBVGk>*D7mD=7FrHqDLxnAK9!w!) zp6VcpW`z$9Decev^Bk94E{=z~Q;E08B!X}Gh!(kVmmS51`;nsW+zY;cHc?-7IXdm{(r^XP2C~B+E0+V88t_wl&yi5g9iH197RbFSri!r|&{MW~(n+h5BDKaNgg&SBUa6z)mGc zT50N%M&*}fm44Hp(fk%I$n(Acnv+($ovf1c9xCc5?kTUI%%k*E7v(^^krWB+Od_G? zZHq%K;{3E}jcufIQ{iI_IZu59Ikrt4u~E5K5M81eck{BI%@U*HrCmd{!gSR%t+VR+ z!fL%*9)?RB;q88_oAo9;V64Rz-Cw_JNKdjdJr0rst(l9hr!a~MU#W!N*0^(O_54My zAq2{x!!~VA`*Oh<1<<65LJSsfEyXiN9Zp*VVGu>W?l(>bGwe^^JLII)={RQlZom2= zUXQ9fK+bbN=|gl(>|g%+)C7C&ng_}faP>e#rQ_^m@|~*wUL!&qrc#0QnaavMwcORg zb_RcGj+VDi#jM;j$C25pe&{8u!J%OtQuerF0OWU&)_{b zF(igB<_<@Rl?%rA?WW1;I!p{7ur6*nkQQ^oJz>=9_Lp;r161A9`N+_~cCz8Hjw5ve z$%aM{8>tjuJJYVnzwjRjp917&Oxxe#{4g>?6ZJ*f7xDOUN$1-P==el5ZB6p!1cnqkeMFB*o;E4um-rm^mJrfyZp5 z`TQ{yw-Zm#_d>~n&l#EXy_4+YR4 z((__HSCZ<(uAl7<$46vN?;M3re0{nsW*V*sTs**JOd0ZLdG5USy5{pZ-V1>VTKFeh zR9U;nX;&V)HoU{J;%US>+W}%5cE&*RFcQw0AWyT~xLZE5=X-1reNLUDJ`j;b38kat zu+7k6Ig`3GvM-=l5q2jYP0bKDAgJ17n}5$Wyo{Trxx1FXds5|vE|B4p(@t%EwJ$q0 zl+m@L%?3`g(c`G%PVx-2BI^*!HSNKCbcy$Q!|--nWQO*%$Oj1Y*GfR@X{UwhvfdQR4hg0 z?Z(e^&twg=wWtCxWmIh3ZZ!A2jO@q2X*2oF^n|Uah;|NSuR}C3(qM8qAGD>= z4o7CE5a&h*kK2o&jSf0kCdZrRYj;C(aZ7uFQ-OvL1sC6fR)}34QEu?LI=`eoIYw52yYpx2p%A`S+wis6z)rM6w#ucrcW;+bXOrFF-k~?5~DP1KIbYb{t zS3GDE3HNBDFQWQ}(}>*O^jqdWd1P3}o3e)5*Y1_PLJZdX&H$}DC z;FGo&ThRNH>^TrBkx6KB;jf>|wa?FKv+s2&bem&XangrDBTOmiF8+3_(aBs_b+uL= zypVae`M96#_ZRmAp3r`_XbYZxjQ( znLXohMGXH}K_!cYOvvcf<4UeVa!MLdV%rjMu?h|p<@genGc3G07&a@~L@4BoSCn_&Mj?p+06bC)&yD#$7*3bO} z%gqx;?ysfq2X~{x~9W~OxS+5gNx@jYFmMs7w08Iq0N zMVU~=Ugtk|#&HVnYQyje&W4N2etfuG)kCaWB_g&l<^X#l3_qbDaMO45OA7>(_I0*q zEwRu+?;@RDY8wVTQmZ4!nv}yb ze>GBOWUjl!SHSpUhc+O|4h@T(F1SNG|$s{WrJbA^$|N>YOM zGul?9mR~pwGFMTiexX~`IQT@KTmHeOLE~fz#>-I)%FnFomDwUmrG1)N_6P&w*5nQy zHj`&xFA8t&KMev;oU0Ggqg5Xi?iD@X_)Zj(zUKKeqXLyHQ)*h&BINELwRM7xb*6DV zi_Flpy*gj4JNH!N`aB6|++&8)zd%UQd2T&Oy*@pWaE12$0Qex_@|g>UKmH@)9Dk{` zR#|S_#_;|R{^MfB=Wcq4ul^*s7_|va7`52s8WRbe)neVfbf z#hGSkIrq?zt*vu-hI*x-b0KK_Sx5NXTAHr>N+O3FPs^pSbNJUaANo<6ZzFw^Y2@`? z82I=ksQ!T6>Js@R)A*qk{Q_utdYsMHeH^vYeZ;(-JXL_DN9xI6pg_V<-F}8>3D@iW z{(ztBcqNoA)ISy*rC*`|x>f~6{j@N9vmN&f1LYe&irImK%N(7ouYuh_zltW~BH;~Q zkIy42RBq`b9Euen_50fIKnn;^ zTgXEZiD5vs@F)!4d(-gLqcp90*<932Lj6x38QrVdPw#2kHjwb8`Ep6UaM_kCD#Xa4 z7COVY%K^!?j+<5Zj`xeahojUvgf=(qaWCLrR;ByCB>^-K96ICRYCjiO!<{G0D}{(~j4L zxaEZ+ZfVsQEn<)6w)KAZfwPW1;o$LjjqmOM1~!b z>c_F08Nbq-U0+1IlVx~<2l8e3>L1)U{#&`Me?Uv!ab3j^z_2m%FyKD?mHBHQFRb7r zaUryN@MK!lR+*42Ong&$skT4XAUia-K#pnw;p96UK-TPvmbUWq@VtI*fNmQf?JF*d z#Y3A#&U6%oa1$Cvn*N0Q#1|gj#nQegL23xvBfkQbyZgGtU*Ur9_h`ZEmc_UWe{kFS3Zz#*3J}?nJveZX9B)!``0YFIo~*Ge{wuUm`>8MT)^|vY(D4wt^TMGNUyBW9B6@m1n;X%a z?zTd0{>l-TQ7P~|dG%~pu(;85u*v>7n~)?BVN`$$;$VpJ98ORA%at?&q8fP|2^)ss zGL{++sb#;S#rDsyIPI#&@$AH^u>K)EKj}iyw&zk4Z%(Y$@rC73KPw{*<&dB!RW^L) zZb-HhFsQBgOp8M1(YR-L-=>tvCyW2cU=gw|ZxIPks8a!t-y-E-E(I~ze7)QtpmM)X z?`^c5=*jsMSAx9^wdx3#N=$5B1z2eI`~@7A^Jxk{4u7&YDuB+J>UUK8bZ(MqJ@6!mfV4~z4+cv7oUyO{OuUi^ zo4K4ssF!Qfo@swmT#O4BP=T`|nvh3{dzOZ&CH!eTrnBxR7%&{X35KD0C;^EowyY9kGtSRN*)>WH*@4 zU_WN9vh+`;nDGr*1siXizr<%SjOZ9|7XK`&_HI3$N1yi4WP{c0`68LXI>hbOLe!|` zPGfLEo^!Q8tLp`u+3+#a z02wGVWSDTW69XuuBGGw-S)G6hRFX)dEklYn)Mlar>(mg~5mA}}w;&NV?W3nv@v*|W z7tRHed2j24-sU;pV3iNPd zkg}%tiWRkll&Gkon&y_pHaYrLA~Z!Am3;R{ROU+Z$IlBorE)XBerx{8BtVpatoE>Wr0;SwX5`6?|J zwsZX5*qvPjSJSbGz2Ir%H}cqHAH?Fwu$<)4 z(h4{N0@F6@t%rcxK4k@udAh6&Mk(WJOb&9TXF^H6v24U+h*zB=Lydt_|Az(0hB`0B zKEN^NTmwGcwOs2Sk|ClNb=MJ{h>pPSQ_~&589=(zgZBz16+M4ibhBwqhNo^|G%a7C zAqc}=3O1yA5rca+Bhh@YS+a{ur1jG5(e3Rn*C2M=;GqcnKla6q8qsA>6 z)H*c}-^`+i#BnXdcXG^*P!eUXC~pzH(r9ev_#Eu%LrR3O1_*JMFQw&x@l#@*y?P)Z8S=#j%J zybDSZ?Y+PR_9)2srQCe$(tlZ_KuAO9Os3&Ld9Rit%Yr zpVm>C3jL?sqFoGiY~bGUQi=1=MqaYGK>hIsk!^>{y}hF_n%1&vK}o&Rj>Ei0Pp%l& z7}iOq6<^a%7A_m^lWHUq4S?X(x#`8HR!k;bBD}f4hI}dW`1M{45S@c4bCIO4kU$$x zcfPmvIjj?Qq}wRGv9l96{SLCLWUg=xX8UK@0GKXAVu!pfzh;jsn0-fP2=>6fJYF|- z0f(Hm+5~auB)RNn`C}sVN8Lsj)geQj%3Zc2=r1xlomrkBNn+$0{CwkT+njJ*DW?ee zDp4IhN~4>$$lI|ZljxUUbGj*u17G@%%8Ga6O1v$OrOuy<77uFZgkW+9&~CpW1D{`0Ja~pkCbvaqrijqt;Zi zL!zsIv%3fS6;VpEj==i*nr2{;cRr$z)&Z+v2(O9qw3ynDyL@W8+6dT=A|c5;elK{3 zLk0`3Wza-Sc{~^W_`LmOhsGu7z0gMPz6t#yu>PqU91^fs5wK8Fe}q4W_opSs{Cv)` zHvq_uE&t<(k*OFM7+iLf0F>Qb;UBo3&#vHel5Gkf@Kn;E2i)%fW&=O$mx;;9suzm3 zBdo&~i4$C&wr9z_nRU;G#vKYE`K(D?<1IEd`P#!p_tVNF>`20g_4t%pwA`XZ|Mi=> zG`nv+ZyI}?vb<*5G7&lz_Bi3Pd(_G!)zK;+^f_@-dc_cAJ@jD*=XoRaNbxIuS|3d@ zN&7o((sz6$7q4Z8<+mj^xn+JKRwM-iY7m{puLp%U<$cg02Ix08J9vETcOt?W)Sgeh z-iR^j}5k?C>s-R8)pUcL|BMfC0&1KC^z1d1nO)w?g_Mr1?bc zxQ+4_O>l}-^YE6Kq2v<+IouBZml=OdcUV083f~8wR!5%X3U8|hzs>EBL(V>8N{Y@a ztjFon%AU6RM(~)vP;fnTsopAw@^HmBhwvg*McmorA$AE%fOk_$&l~9FD?Rw3Wh#&_ ze3V3~3$!Q0svMCY2{BHck=itZ_3-gWeLU>OIIudQB#A0GXl7_>?6ZT8Z{uZDyVRHx zeOvKZ0Bx>iLsm*`Tf@YD!Z^!L%du|Pg_w81hB6F~;Uu9e7Dy`>?7Y>(bM+@HmVSA` zig;^CD4TE>m7YYsw%y|W+9_Sk=~)(a;bvcriXs;YRQv`IMQ>|2=kKK4v-ar_?4!Y6 zY#oRYF`(_nJ7VZ1QEcyoIcr+`@`#YT^SpZ=Y;!%kqVY0_dA@MI6))eXp<(5gYM-{z zrTg8CHe98V*jt{b*;?08>t@c4!2T&U4>4!_B#mt`N4GyyMPb~%eNB?XzM23V?2Zc| z0tleAu71+q9w;U0$YQiXN7b!lasN`#fX(GS87llSJ**1px-SiSf14b!*|#_GSug%S zl`?SCh!EGmU)o|Om*(@8tEgp}f2&Pw#B;E3>wb+N(iE@QapYOj(@t_lxY*l0h##Uk zsUml)yc0(FY~d8^?2O4ntI)ObwK8GOq<>LS9s6`s=xY~u`|+5{xlXQJVB$w#)K|PD z-Z!jJe9QofXRD2Vw!J{`8JueD|4!+|-D|ai@Kq@#9hvc!o_9o}v)=>@f``RH zc5=`7-;Vbs+j!%O*~oe(eT(NJH$vy-S2nLwbQE?b;5laDWhiKU6AZtQ!;rx{Af1E{ zj30CXI;DN9NZA`ax9za@LVV0boH7VL^uRw(_aM-BCtVeX@jqVF5f*jc z5~q60hFm1=>w46D%AEODd+RsfjX|E*mlU?(Xw<~dU}f`x07Vn34VyMCQc8Gzs)2Qo z>FRglPBOLe=Wtz=GV2KhP=4G(kEz!0@kZ`n0{xRH7sYi*+*V;-H)7G(@~S~5;6P5G zIdwWaD-`j#?0zms!V$;brc)oPJUBoQYbq>?oZKtKaOvi*qWVqiMSQ!leHFG=qdJ9L zN)&A|u{U&dO5=z1Rd`e}}sVZ(c|xKZog$Wh6bU3bbeE>luj2|6K|I z$&7^7amb!og11lRn4d1hmG`i~sa{-B zZ*t^4Q6hAs*?IqLwAo|pPwh(fk?#ziRHL#|;SjI6My2s|_VbM5k~cEMM}j@%`m|Ym z868qrHSpX{;ai|{vY2jFT*ZfWBv(Efm)*4$q*Y~JU{#@96D~Y{maFaG$b)(~1mHy& zwR)R9BUW~Ew2|dGkQbm!b|(#u{LA~+m1vw>G(dy%VRCI>PRc~ zFP0RK-Otys-j#ZPXUCVenKAxjs3!Q=I`GF`K{+lXF$)x^igP4^|ld)dR|dIn2;bAPc5jX`Dxf5vwhnJ}q| z%wvEaaJ6$GD!>?9DgzJKDi(A}nVPe8zeY1pAPn_R*`3Vu8$w8JQUU{sqaZ$1(ZnsZ0D4$Dn=KoRk zm0fXmO|!sY!6mp$aQEOY!3plc-QC?1BoN#kg1fuBd&uAtAh-+z%$eNpdOnv_6hlfCYca7Z2Wes`(!#>*!_=88yW*tEjXyj((egA zRZkM5n-J{pCL%L^h5AKSV=Z?x7!}w%S~5qn?D1AO7u$-W-wL7^$e;}!J6>cF64_1Y z%$z~~8M!4K@<6n}L`iYn8X$+a&D7djQ3m7pIC$=;Z<{@bL*#xg?#XF2UiRv069;~L zUOlTXa_j%o0w#Zmxfhvul#C{i94|?}Su(pB%yKmnrI(hdI3#OcN|*lp@Hr>tz*+)< zgd@Hx0+lYF{&02jRh4H^L98KC9yh<; zHo^(m1w$7Mi$nYg3Lodz3L%guj770v+^4sd@$~%TY`B#-aAC8kU2SADW70i|;4h!Y z6#Iwx;f`g0PCsk2`JdPEu}t#`Qiv9k$pbzmUDhP72b_m8K6`>~u1izmQ(^~ zA7o^7l1^UbGiY@r2fEr)Mb<*}45j<92rOX+V+J_O=&K8YZ~ikf8iO%c19arXxDqAH8JScb$RwN0|< zm*Z-VDoOLvEAZzZ5!O=%TjXaP454p^#wyUe1!h;WgrU*d1gPS6w#EXZHe&>H+m+~F z8BUJj5hUUBSZv@NEtotom#<^s3ZUyy=V)GWAjr_IeR!((XGP*IW<*fqx47@*LjMPo zDCkCNB?tmA6*|!WN_xFAdMIHXb3JiD)LP7>+2x$~U8jI7U5qB$Kjt|S8iEhnpR*OB z6-6nKlV5e0l2qIfn?pf-O8Typ%(ld)c+@0IZ(mSNSL^P(YV4V7+{)H=(fw<};rMX1 zt?e_}eKN1Ob5*0@{`yC*qg!0C)7kNw^hYdRC1j7=ecJS2-$(ykT3KZ-dG}OD2h1DS zvy-88ozS8M`Ft#UJ8t8A$_L6k1A7s`3p(m1L2Onk0ysmj52G>A`&uDe3dF^_UM3dC znzw%UR%ng+XIhN?JVN;Pw%jkO>1Ey3YVBCLq?5^?+xd@RtIi@~n7o_ZO&4DB<_v92 z_q-L85M#>hdb#=uG7CTr8#jIO*4CjU?wtXFP;Pt7WSTnM3tgxcZX}+d+5{yX^}FR% z%~_WP_@WW(R3c9Y99va!Q(GVn1-&8|(d-WTKH|;h5dH_xbwxpRO}l9li)i9EOsfw* zRw3>@>2dLQL~f!_D=N)0%&V@+4$C~IdzuUHkB^PzO50=1QVxp07x-%!$<=IT(iwbz z#=Ue{j)MKz{FQaKQJwDs&ZY6jGcVh?^TV=UBKlpqr6T|tjEj-L$4Q~ zpUFo+II4=I;4aqsfIm$gVF4-a^4&y7f{1lK+CVR^CpGuyg^4jDJ?M30VS>MlmS7JR>T>Syv7e=+mtz?e3Lh3zpt*lYJmH}EmROW(CellgGF(vJmcMgtI%5ndA ztL+DA(!9O>-oofY$&ZjAgp9y{j0EgJW`4T_9*p*TFF=l+p-UE9? z{?K58h!%on+A{~vJl^eZ_CJMkauZ_0RLjF)qD-Ux=KuQK`SOJM+w#|`0C`&>W6z>- zf;@CLu~TEt2JIY^CQ!Y~QeK%vps{X__U|MKl@$7&Qwu-<&*{1wMRq{To|^O>OdC~ zSQoQ0Yfm|sFO7|<6EH;Kb8c=E`SQ)T(gvdYR0dAZ&$|6nNV0z`o315OY)RvJ_%8!u zRg+)3J_LRQ>W}(?R%w4csUJnaCqW<^;7fsxEc-c)}1-&$#}aBs)|^*bkFS0N3i{@dY7L*t~q;?BZ%Y3Z$M>91pn zv{Mtjn;qhIXt}5(rs;Pu^j>US0zwhcMhCg-;(cw9v)f1N)k={ID9x&SXnQtbBEiLY zPR2w)gkaM+ix5AfMZp)94yrYTJ5^nXd`lx+$Oz>GjL`yu*wBMy(Qm@hc&e$QPAz`g za$8=CEm&aN`Ro!`Q@DD`b>3D_9$(JyE%DpFEs!)nja%~u1IwEqTQTh)S1uQ4^WQqW zjPLL-3~yyGgdguWeP_>_U#r*P>TF@3H|o|N+og|{w8s$-6=C;k;h~GUtZRwHFNoS73b>-L;|x! zgaI1l$6pf6Nw_Ix>XAQ>6!Ov60>y{GO<|>aY%<6paje)BTzHR;yrGc=X0`C>afcK5 z6R(p9fl7%!SE3>G~Xq}E%4Cb+IO#E?;LWCigTd3{1uGLgADlAy3VCP zzv>FH?`pv4fq;oqy<-sRmHl%7n4h8d7(0%_w`5N}81;oL?(!9%H}Q#>*92U;NRazO zWws=?`ATe56B8jhEDI|Rnb(1VT2fD3lW5xi!0Z>EVs7RrmzC*s|7$ud`S?f}FWmHg z=KdA8kh%>%I#NL8m+crK@8qKlr_p-tcWu8%o=de-^Z#JR8G>8I0|-QwjG zkHWcc@y93A=5Ny06p(-m;cJ;qU!1FhbUR39-RfSX^LOJnuhY5Tj6Fx&acg}#*HMo@ zeV4!?eVW}1SE3_lz+#_^t`Ek9C#jc7KCt!eN6J}{iL++NosR9LZQb(U&&IXeV$Yv* z0|&o)jJ}E=cvHV$7UD+g`GJ^Em#f zyr{MDXAZjGy6uR$VC8sN0_ALEuQNiyi~xx~n9sUoSF+-gN51HPP7kn^vXUHcx1QB{ z-|Jpok)Qxi&f;cXR(hWBACQ3eo^ccq6<){`aP0sHG3SLG1*_e%zlCPW1^4ZNH<$ya z){cQMdM-Qp;5GQU^NK6#+MGQS=RT~vsnCakcbDcbNkmH&BKGehcdx|tokXx2u<96a zY<^Ipm|NLu7}GnX5-{@lYvRV0z;g=w z80z-O=8!eP{&wWBmC@0Z^yYeU@5w+wG30QuEhzV{tuM9>l(>@wxrn1U8Up+G>0QUv zX$Ndel|&m-8TC@l_?*pN#T;njv{w}tTq5twe~})CBp1eFBuPEIrDZ!OW!GXo=?f12 z!>~sg#FxF06}mVzwP5su_cV?Q|>;m)Y+HK zrRG3qjqo4PO!Rq<9P zO{a!U@kQ?xr#(JrIYrU!C`5l(P1Z?u-Y7G**4_CEnXa#kXT$EUKB?uBcHBlx@Nc(wy1)T{EI+T=!aK{PPv~ihCjYkh%GKU)6F;qT^0Bx9~vG ztGhK9+~j2pk+=vx@iTV$#kSqcdfliA{wgYFhdQNGR^3nEj6@RrH$$#lgVhB4+jK^# z|3`pCw=S4AzMgh|c~dhCjV5Iw`f3i41c=985SH@M$mR=@8^8KC! zU9K>-o@qA*A4f?yJs~aJ9@;DQJh$4hOHjE9jA_U>{QU+f5WW%ZObEY)lgbHLQF8b1 zW%;CI65)D#mtO1%AlkPt6q@D^Pza7b+~N)uu~WR!b0D6vhNl8WvsJ--c9R7c`EFSy z0|?~^JD5t&O5P8D+CUDgQ#o_Fr<#Y8DNH8!AM^umbt(hahBSMRvr8!g+V7-*Os_j_ zSLkBEn_wY|P2g4OV!Bb~%?>V8Htxi(3|b;RY*gGjQw3_(*#nvLFB!tcT!&$E#8I?g zJ!mYGl8FA`0^2K<4WEI{rBGjXk=9$;zFi3m-tWN{eF1;1E_(Lsn!$~2w#TRJYa3&t zQr5wz6Pt%2!jR(h3f~EX_s+igS(t%_O(f0>h`9&@AYMm=XbT;7yeI8oTl zFqQ5+LT`JHb@PUGfl&95u~v+g(K8$%WFv8a!YVxDlgSj8gDfW}JHbpF$(+;K+A{B))w?JI-q-c}tnM?KIGt|g!=E}fkhc6e)UaclOaA=w zTwtf{R`8vMW8coqrvI88FJw5LsVz_AV^2*6yL95aBBLW;iRX{oI0wL_J|`-X&i6jL$rxr-?nysICutz&atz^qxujb{w^q=S6Z$N1}a%KDnk z?9d-<9~fg*wC)gODH@rfkcy6UGm)FbU*OD?{0>uL;o@&fb}_hRabY6b(hMc!%lN~o zcB!nARwy327n;oNC6>~~$fLX0Pltg0_@*thfg{VW8s!cDafo?CIOyX<0jq-A*I9sl zeQ@1&N$1GNOjHL!3Vat!82B>uqj>bPXz{+D9)h5)r|@ah&HAJRO!%c%e&;KRAm>^H zq?gFxw%W)JUyL_YzSgfuCY7KyVd<~Y!SRzozl^&_frDU3+l}&D8|*){i?{3Dw||f6 zAG23Q!4i0C*-f~vmU%5P{K3MT2X#~%en4$h@LxtP&4eXCH4N;&zA&A&@)@`#vmxf2 zL0lSW+ZX|!2cIl$`d@Ul+>WuY&6?*`=9={CA1bhG2!lPdx}UeR3W4pfKb|yTi#)F=jgul=O4InMxd9hJh|VYeF+6KC{el-=k@PqLKCAawAAw!=s1IUh93w0z)c3~XD7H&{A$p0P)puLWl;5G}x|TrPnG1hC ztX;`583A1;TA|E<3b1<*Vh1%4al5>;q$E7UGWEr#WX)K61B(fxq>fd%=sworoJ`gJ zSWh|W>NB1JLNItCZI_>i6hn`I!ur?j!G_nWL7LCkm+8Hi&bHT%z>1NzpvZ^1Zb|Tr zCb$dLS4?yE$}FTu?G0t0yhm*a%6AiA1Xn>AO#%_=!bc~dr!ia>#cpn@TT6CZ*SV&X*Eh{Cf9WzeF4nFfkofqqWF ztauw+(*}C)hr|3YMihi*$mRNd+L10$o!PnINve5t3$LG%GI*8{ZS zk#C_9A`T$&Dd5O4peASgxL<6|Osv_)O8=^`?J1633p84%4Qhp`TzmJ*%wW3IL%uuL zQRIldxG2B<=C`}KFeyID?p3$`$SBn zZzRTWN@8xge6tSrf{r{NIX}C*eV&O$k8QDEs2@b=fBv5BPjS%GSnrilj*4LayNG3z zvwq6yLXmkYqLC8MjF5wtQe%~TQ$Mljv%Mt}qrm*K`GdxJ5LyqscT~#RmxLAb1Hp40 z-6_;DyeT}-mxo(V-p_7>Q=vrc5_|>x$6cH4_g;gFEc^4|E6kr9)*njPt31~z>ndy$RB%&MLZ2$@XwEh0BC+j?D zq`#MQF1Jl0X9A>A^qsuB^rq$f%S%cu@G;&l=;eFX+Z|>FXrr(0wC`0e>+M&f{f%m{ z^tCyVIS@#rMLsYUS{G0;8D6_=#+3@$8XRF$y?QVNnVBL5c(uL34~X{6(r)a>E=uPhXZaRYmTl#WgC%=#P}d|Hml%4Y0# zy1TbSfEM%e-{@|^JLlKeqhFC6FDr7KLY;43Vb!d-Q<6K6qkpGY2HdX613?_U zEy3+s6wiFTV$Wn*FIR204}rkyQ{c0pGR1Xj9OSPe-apJv&-tOEa>)PZZrDm&{CnR8 zbAX!X{;j+)i)?v}nz)B4H~5pr<8Fi>lt7N68JZDYxu3^-N>}Xm1L32Ud&vv}ZrnHh zXS$ki4+w0*>G?l_Q|%KY?M4$62WxQCH=bNBw#$5577ts5 zGyN604#Z%y0@+&=|{^!8Vy*x_P0x{VE4R zr#9+f3|t{#?!7&GFLvjm9JJTP13CuQP0T^svx31kypZRGte2_af+Kq0FIQ5*2G?zU z%FktWIv^BdtS9;p1I%WtUuO?#00aWK#2nh%BuhBEP})G_(NaQmTq zL4}9zKrQqYuua20@wAuV>d93d|1Z~1EF8-!Uy89u(MW-4S3IP^fp{7c?)qu*13xzW zrzmB5`@b5zC1(8|9(xWyB$T{%S~lxd_X$wRt{i*UY3v8vtkO-`0M8SAsg(lgZsQI?d>2B;Pnn z2>6NvRK(wl%8Lh>HV>I8y&2ls&?yh80V)L5&0tzNDRGV(Rg$SCa}CXjxH+tLM5jXX z4~qqFn}RZCZz8leLeM*3Rc3(TFBig>D}whK#T+4m1SAKah*?`2*dMeE1#FmC_$s6CPAuIRotO^R zcX78+J0GxF+*V}AQ7IE=bdgY3k;8+~k{mrDta|F$d@{Y7-dM@RGN~Xz%_L-U@!D4D z2*EU^aVZ6sqJlFY30$>-uOaW)HR#eEZCZI3M&A;w@_W>wOur7q4F##bTj2}Q(~-^K zku5FJJKNKQB^-82;+IOdiJU7gT352P5t?sA0?;<9?F1*WTm<#U4}9C9$6W&f(J7;D zi#&FwXq2>*dvXJFTRG8N{zV@rBQcMI!hJv3Z|E3R`aGpqfqpw{zO1(~zg+{>Z^a-< zbdacYI57w&FX#~xP6vG$p7pX^{2p?JbZEk!A@)Mj{K#uk3zF)U2A{7zlsCP&1HfJG zGoT`?ATOO;?k**AHFype6|uUAI^ZOcHqWF&UnO3)Pj+u|b-J%0 z`xi#W(;@lpbu=vW_o&Wh;4OcMv7m*CBMte@o^z>dV{b@hTntM0GE07+UYE09Vk_h% zQV^`Dy7C(;L>xvsFOEjnEgd~1@Ts^E_Bbfc97VY#f8B4tb=p3~Xo*|yR45>kCa=UP z*LVCvNrsu}H>T7-EC?v^ZmYy3!I{0ef1e@GJ2T5Otbu9il9EJ-fVeHaCIvGnQf4-A>LXngE< zo@disXO&qV?i`V-2_!MPo*nef*9)-)40ao@7s(yZ;7Ygc8Jy^Zf|RHwRcVeANk0J( zj$TQn!Il~=`6L6Ys}@3~MChTsO~N#Jm7aM9$#jhROj1}ncYF!MPK>4y%6p#|&WEVl z&~5lsj_hNm$-&eldpNA=H=njwn9lr9NfW-YcUR>DMJF!b<-dmT1s$npy`534-5pb) z2Q^!X4NZmRKdbXXPQXy0GhzbXyRi0x&RQN1F&F-Z*Urx#MLqbSY$L@SPR@N1!oVEd zzZQ>2H>Ta8u@N?-*&=HCo%-3DRk_}mq%zrD$ZChsDkO2#T;QjxygA}37nZR$VE1>g z*}y_BW~5>BHs$OHU$-Rv65kOlxCMuX_Qv4&$e>Rpg(4s#i{c5NH~5(3JrKkj=lpi_ z;%hK2h{fOc|?*O`Ma_}>IrjqJQst3n1zSag!h)mRSfx0QZPci z+1c_O8&ZlaE`1iZzPdRW%E27SN$fGL-$if8IY>-OPYjX;v-^e5zKv=L-siu``}aX` zc%7dL_?$jgZH%T_(W}@E7K*(f)e{@@xDk5_x0GgB7cy2S9&(&F+`0Kh;?o;%F{x=N z6S$yHXi@Q-{OnIpQqv=WTSwNkbaIRj(O078;*0V8xbNxaphjU-LoryGMySSJ(f})T z`&SWdmIoQ9G?tWm&3d!nTAovu9QR-cZk*Cb+_9ls++A9&mo|e3#TZ_xm5-M>-ijYs zIw2%hG_qt;nG1Pf+3DDP9n!IXYwb&O65a=LsY(4F;sjk?iQMIIJe0%~^eLs$+QeH< z_XAh}3&wQ~6tLt3*Yom)Ecc+4n-9#%aj5|7UyZ)S>xOjdUMDj*d?KQ-$`%a9AB`o(Wfs6$+5q@`1Nkj?hKElKi%tOebF|?J{mh4o~neG8(!M+B69s zJJrP-ym;Gk`xUBnPC&&{AuVF7|7ij2K142KnZ)Tn=;Fv2JaB~Nn_(Q(`c}|2ljIph z$ay~q4gKWg;In>?m(%^|&YwV-Q$d&rmb1-oS@N0HchKc299dQRigbNAs}mR-#vb}m z)~#z4GbYGmjh==Yh&8zk%TPnh8Mx0dRP>4mb7;ep_Wu<_;b<&gk57^ligh~1;isVz zs`_i(Rq)x1>p2Qd??~8Jog@#CVry1^5nJSrXUrkc3Pve*|DT*3mQih}rI#l&f8O<0XBj0JC7c&1rNTvD($X=9Kvl6keBP)!?2}(fg|8-G*`V z=LhU3s+}9fzYjReA(Nr)d(qzP)}hBl=*%#dWKbjgp}B^y{)>Q!`YL4(xYO#>HdZZ@!ZofD}jA+DA$_~ zAy_l~O!XpXI4pS)xr!CHS~$d-E!2{x65;;!wKyG}9VQGDvD8St#Q#eVJJ$v!2is}W zrfx6ON5o$O5&!6PL1EHp5Ry z3EO(<2^E7DwuYgaUW8T~HIV>$1YrRfCnGBjt9Df@lt&HR#xefHNU#=*Mf!>ZPxnct zjo(>r+*-H6?U`UX+&yjUQqQ_^#|0y zzIb|8zrn%~5ey+79_Wa+4-cWn(T8GtZGGZWO3Ww+2+M|T4XD@CKu=k-?Is)}8Rr)Py9Z>9&TdIib-=zL|39 zE`KqCvn1X7FWautCm<@$-hB~);xA!8A~7gQ6XA0bAF@9L(+!$>T<-AQCxPMa;W6!MKWXdso+tBy6KdzX^z@KaY&$SB|o z3$w~Z7r{{6(Tfs4xop<&BcVE~?TOj1Ri7OlyGy2P0LPB3?q9Za8~2K-oMpvZc*z9y zQJjJz?#1g%C%-0<4qMpzpquU-hODI2WR_*9h=amx~h}n*?S2Wc|j8f zAeowv_qMsj3odL*3~qf0J_FeqKeEmI6|6aRpbj3=oHUHA`-WPB`ShS=aC2TQKkF#X zK#iP5?dtU2Bn34Vg&ij%{Pd@h{o4Cf&#kb1E81K8UJ?7;LIPUOAMl*oeEnB{B%;&A zH(@QD9W#CP;D!#rf3Q5YSu%Y@&9jnR5z$&nYNx`!!LL;Ra&|_jC_tDDAn2p1uNGa3Y*T4wBNmS`frUOCi_ZG6 zZXo&mQCnxR-h8z|#|;~9+MR7LjsT|f_M0IK7x|aze%IOlC%7E}V6Lk}W~dVx8|fPW z3)M3W&)8>aG9GUSpE15!zexS6bv64&^9ev1tJpy_Ci+jb6q$iB_$b+2vxYA~u^gbw z|I~NM{T{>ISU=3j81!^62%gqCxnqBAc&PJ>ETiaES(1gC%6=*lQ-DiG3_rycJgxJC zymI4^)f?Vv!F{tGhX`V`vwf$sLzvWfP1gL=tS$M8q#jM59lzCdC_;Z724I3FL% z3!tkzel%n#R0DUQJ-~V9I@8QRIxYr&i_yk_VH*2!f&_5=z2vA7-O;civyZw!r}uML z-@W0*%PenJ-*w=kvUglkTmfcpr6CM?@c=s=3Oiyl-HYxR8nl%2M%y(lzBk9R+IEm!la||5&n~Nr1BP)?fFPc__p8kUwQ3Y-^V@B!xTW@RA0l5LVuurjOa>#huaW~F&%|_98%0yV$0^B`nMo${bCGR}rl{?r=0j@o$#&_@QPhX}__fmf}x4BLn)J&75 zTC%!80>#ip&vn#T(FUnrx%vk_vAl1RT|&yAM|(Vy%3p-4EQL*d4@wszkLZi#&YHMT zg&F=f+1+8cV<#cD^#4G5muQFRc3-6996pgBZB7Fo6UPGG%nXLiw$#?8_Vj_Xr>Cy5 z>oUnsMt)4tYUjy{Qmi)N@@n*ZJkh)xr==7f-~M^nkH{9mYhMyHcNxA>9~=}28`}Xe zLeO~VKe&)Y)TN>RQ@8{c3a--Ebr1WzNlVOoTLeN9D_m0bsr~yBU#0c?3fA#2zOt%u z8CR~|EY?k57Rs!3K;xcv@cLFa;O3^EVc?ZefD$DT0ojf-TqPPVmy*4JYCH&^lHai; zPyF45cDUK^kja*n5_mxkd^H8ad?W{wZ9>5<&)$^Bbz_kw+%&gLE(?Hq$nSpXQ5D5@ zUI&A(^A$s7m@t#8d~lniJ5cc)l>@=|x(AN={-nRmvMp*9W^%4vTW1HgSz-qT4Xy*t zDZ>E4WQ!22W&+h08!N5oRc-bY9A_Zs+k)VXV_V42HHG|ky&1`@t0KlQ*Y`)+691>W zgmGi7EV9E4vah_bJQFz|vi_9axJmj@_9gJRGTg>qG}=A2ClDS<1UtbK$~UIORrbyK zf4YjBBO(&*j5xS;w6m>)Xve69bQ3>&XojDv9mZ=zm|={sq9+v-$>oIqfkaPIs8i;6 zcpm{7pJ)7+-ub^^(J~=&2+Q{MnU3vs>!bZwPa7|@pM&%#MbjX@wEf_E$}cA8Q$8r& zrwH~+t}ahOP-~E?`Prm8h6O^>L;dm3^?4)xox)#z)Kh;4ChS{ubCMG%#Y+ke!grX` z6x%;iR1^7fu$GjSVkVj$N+{0|xFOjLAWt+}iKd^!#?23`B)x?)6-@A~v7Sv&meNma z61?Op2JeZNO$RL2_%8bRbeB=tD+jt_2ApC>mFqld+&iA-qm38#(~s6>69lc*jO3X$ z*?1K#jGD>a^7nn-O7xHNf;{0dK@o1?mqQk%Q^}T{N7%m;%LtX??#E5JS>M#0E(5(R zM+=XHN0rCvBVctPYo6ctT)d_k`&V%d#6M?$Up)f%DD$Kh5L!c*t5f2JvbnqSf15;#n;)piD*N zC^OF6unO0*==4b8A-3?PEG8!BfjM(|r&wct`B@O}pBYU+`(kWXmn&m`@dZ`N}_=bZ>`3iu+s{PwDE zTw_v9E~Ayd=>b^q?u5%MDt|uKW3=TKX{aRf@EwcxID*98+xi{$rS%D z$K6`@&wX-FCV(Mn;=z#F3y)_-uPLLaA`aM$cHR|(AKzTokGFwF=`74vin&OytBX0} zGujWbK9~^89!vfjnl(Fh2Y`Nq#F4XB9Poj-+M3(aV`5O?>K}7qV*>d4OdsdXZ1pc8 z`CV?)u@E0}x1B7fFGNvYZ^pfq$5vRMzcd(?-C3qE3H0*Eupu**N1- zLenZ=dI2O@v^DB(I-!DtpU5OtE&&G+auOb%nI0|;9K@4FEs(ZbjAZo{rV z|9E_7Fte>cd*3%De||Zb;xE-sTcY(Gmui3*-3P;-%*dKSTfeg*)~}r8zXh8A6aEhR8nZ}>=Vg8ra`G^DLtspm zGM860T*TJ>Z2a^|?i@v`in|s52 z+rm^y0znGvv@v^!C7-^~>gwfsxm~NH=b*S)+tW0$&hrvys5tqr7uzwU{e%i zr3Gl`z00!_6kq>7TE9$~0QZ~MCJM$sMvMM}Wd=w#Zts%xdjr%8b6!HNIvf~PLRWql zUZucKwV@c;V5E?F7-h^$iII}7lGvD!!YPJ+tZH)k5{aOjA zovy`Lg1?>v}14EB4JGD1+nXf!qw!D(4Z`9r1zNVvSNbB3NK+9}-qL_+X zQMN6OAjW3h@#FyQ*Ceu3v^W3_T$*d0t^q zxq)6R9L7048d7nx908$yZ8R51^A@$&E+i|9U9yu`m%32zgW^YIPI{1qF`3lLpH1d zP*+FRPmAvS(j}&0JCTrFfqPg!XwhGUZZc-NaLB*;>ilPS*)jffHHm6#l;MPdt9uIt zK~EvGfR_IV-EJx=4Lt##jOE~{;EFU^kcI4gFz!$;N=$MZ54Q^NL$SrUblQl8MT(uq zFD~Y+$PYPL3sDPS+7Us`7E{H)UZB35Z|pC*zIg43=q?I7Kyn6J?0_zNr2YFIsZ$?= z^*8fx)uZW;^3HrOaJc6DDihfm{}mXRIcRscuft{d=kHM2mv5+c^c2oDGx#!82sz+S z^5{#YDsr~9H%!nd>{h~DKa6_)S0TGQ$Z}y=O!s3GjVq&&++P7<#yyw6y5RU^AR4LF zv?_za#y3`f!d?=p7XHakP$-}UY}~`k%_T%1EuU9s`xSRNH0!gYU}qyCI+Lo?aZXWP?nS=0QTE z$k4zoAR3pm6I9>GseBsP;k<3K@Zk7h%X+4lY#FoD@z4a%Gr##e)$6fEA0x5Vj@u2Y z7J$*Nu3drNf)4^#JCfY|zOwV6w&-463_NU}EJnH> z{MR~kLF`UrS#R;p=Zlp+yoF*cMYpcE@R8jJSgb6io6w=`Gi#QU<%uYHcIIq zA`3uG1eo<`PgFa;R}lFAY#x~ivy3p$(FdtO(Uck(qc?UKA^%CrtB56CsIaq!<{^}` zFWBp9XpU%y*loUXc)^t6sdY1%6*2o6QI-xp2)4elKA(P=Q!8c0(_dc2j>?&7o{t#GJp92KD_CK`v-8m>yj))mib>x0> zNfAazB5H~pb#LTBRc_^LKJ`9w1{bsjgNbKM?g$oZ$`9jB%)5$O@1&;^p-ceyg67fG z`>|t1q-5%AE6&cuo`QPsiSi~FuEykYT8!HHlMc*FKNXs!nIbAT^qY*a17@yC76pnp z0aZk%WT{6os1P5#Z~QlJt3$dSJZGj8k={m1-$1?iEX!I_^`8vmE(DJLK?Wl9!253E z?L~~QM^r+Yd{6WOZkhydh2|DB%X_6s%Kt8o#^T;S2V5)Iz z*%>B;jhr06!4q%k-5q+LqKQT0#v(-`S=PHLfnj%S`Q0}BC%~1(u?GWfG!43AP15L; z!GB|9{**jwkr%3gizSE1$IEOXL572w1)flAd;7vab^JhJNBT+&}4adQ1= zKcMVTTp>DI&HS3)C3>zOrTAt|YPngjMwu%-{%nQ>K>e~aD+}Y;Bvsy2c;X8+D zB%_j1&i+V+vrMgHL^vUKn)#Ht$udszn^_-i~iQcVrlby!MUgq+JQbm?fs zNdLK}H~^7#ngrsz(klaSo2vd$l`l8FPo_NhKC#q0P>FSZ_Ulk|6^xLq0;t+vnL1c05 zpq6W`Z`VT-g2Av?BjL3@;A((N)?kZ!S42F(h}TK*i6Uu%{c%O5fhsck!Avat`FqBh zxZ{^$R$g(&=0kBl%57)3MjnLYahKTC-x{tSxPa7CPs&xUUVjGPjx-`Qda)Qd1uQ1` z743nxBpGZ8m=_Tjo|{tOH#;ums40Z6Zh1ZFTXurNFHtTld8=}NEQ#LXsUZD1)_R?jtP&pZ>7 zIp@PsTRAfa4fi}r-~JIhW+G&Z|jAU94P6Fv~YPtKxCxHg!3-z^% zYoNl5kEgx)TFl3*$$kPVlQWH3SDTie8tZJ z*lyzMc!?OM>g^kbvqW|=`BK3$xi^rcp#CzAhw*Ah9GTy+Em9&Z`=I*MaTTO33xGpey_HFX>O829AmSf&d63}KKc>pAv(Wsd6jT5P`;6ZTd z&!=&|i5BTl&XCQ{$(F%i>{fC$`G>id(RjA%js{(3R32tatnV!nTxqeGJw;)%IGh@I`4FBoBX&zqG7t&MzdGr@zZW zewRA08B_eH&{)x2h(tg3vx?yD8)4fXs&u&c8M*z>!-_wtI(e&Jl&Y}BX!{a+PKbg6 zAqOzuWg;qU>M@e4?srB4RG5|d`FXa=^V9o`grNPmBdFIajKCtu>!x?}&mQ}#G1MT@ zPRoTAM{4a3QXr49HB!@v%3)fHT}i`}#jeikwm>zmAGi`t&>4Tz(yCTp!1x0@AkLo* zjpt}+JWJ)9r$c$1Ai&buBrAyg>CmKJ_ z#+~Q!neg^Au+F=o&IJ_{*!o%Nq|7MKm=_8^*JGouh8hYMkkQ%VhMcO2*XUS0y~_n_ z95eHU7U`nvT8m4vP7Z0>e-+QLZ`sMm*s$64oJCBq#O@Wn^QMG*->(~;x`=Z9n7{`< zE+SN@;`me=i%$sP#QbE?@;y~NYHn0gYV19AyWG?do;E4HD@BRu&$^8>qc^nL*?0{^ zQi%F3?j?8};R;#dn5)ISJvHXdRwZ==UH(;Qin|~NIQ5Gyy)5O;2-wk>E!HiWSHV1x zl*;Kh6skBz1MOB*LzWAqi5>@AilgHGOV;7xWHGVNGW3z@f8bQvfr|%CZ8nfZ7J1}n_XciptKJGh_P>|>>p zJL2ZqBE#`7bFu-9j}x~GMq%TLuF5FX_}I#cwVh#%8Rj%R=4 z*z|tZ7^pDSOd>MXntzvBh)idTMrn(wS#@}?dKglh;<3IfSP_JwKj2ti6{-QZ@ugJ% z$K6FZbpczADO>yAA?gviH=F&JD#E5u2YkIWm^(^Cu&3hl2$xslo)WbC1rNRz5g&Yn z80lbBc77ouDHbxQWIGVd?ElT5*ubf-p$X%Dl4lxeY$*# zfi_YcSdFi}VhOC#IYo?C#S)PU<=mhy;QY`H>9V$W**`8^Ee#doW+Y!^ zzvlX_4Cd~qIS}L_u$+w{AP6gOU4cT`g80DfY6S4*vy1F4SMhbanKl)qf z?UVP*O$smQz`DhC1aI@$K!w6B%W9CI!1(izDv5H4&i<{=Gs4c1l7$&2J$DkVj2 z1^P>?cP(PiV+D&i76>aiHI&IU+8c}YZmwS8CrDPzdwBg1^)`CRhI4SoR29pKBh_HxJ(&hvhpF9&!DtASZLthJx9eyCE?n zE{WFOPHBKvxgzz=508i8{#hTkp>o2bcfum#Q%B3p&)*tS^t^}_gKLknjt$PI7AK0# z6x3qO6G z(5A~Ya5ccVFoj7~&v1Rz96%;twn6ZxdKB=~5_BIS^2zdc)9MWkF}I5$SHFV@n-tL) zr^W-U%LN~rnl^htLvJ!fe!A$-GaMokRZV!xVuB+F2UUr+$}gX?(Qy) zTX5IlE>EA=``$mGKlIpp>@`u#%OQ-*!}cu8t|P2yov z?q@4@BgpayF0=dt44yCR+7B1uF~l!Dhd1;r4WBL6?*i?zXfmHd(&Tu%zw5SM6r?P3zE@jsy52HpXlN4IlK0 zoVZLynlaC~c2?*Hd3Tne7@wfyh5pE_w3tKRE_fn0GhdX3p0L>d_XP6nv^2)>$z-~P zW>%8$Gvc|>1^=r5hVBc6OpNn9^mf^CKZ}gB{R6 zqP?*mxA?F9tJ7cR?)f7{1D_x=7I8DmCB5U{Fs``6!0f;R1RhGJ9L)1R?Pb?9))1IJ zgs%=Zs?mzt-jqO#aQ&c9Jzb@9ZD42X2qcAS>6F5cH06eVKuIPFmRM$YT3CLYy(5Rj+Zz-NddibbQ)OMn)`RUsqJ0iSVe zVtDpjvvgO)Xc?J!9E=PX@^AO)RnX<(Z=hdFCsmQV`(Zz6bbd4ETwrMUOo}#dNWa-% z{Ako{>(tGBCbv^l#bCvwid}}^ZV9(eyM+*dV+%_Slfty(gg2MslUKa5wY#%i;+y_? z=MlukgG_ciZ)B>S2;H#7XVF8OzspzUB#%Ci(hyy)rIu)hIXUPltSKQ4qoro;<}^4H z)ffH|Z?sKYVPlF8D$M3n@c7|NFr8C=>)#QER7-Z` z556gd2Z=#R>N)(mPA76(a?mS!g1~_w(D)#~Vd$yOCjo`!5o5YM`Xk(IUUoh4J`L?W zEYnQCBei%j0Nh2!f%>vn z4>q&5>@_R2GQQ;@wt1f9NYU{E+0C8XY0Ffz=chh*qC03skcoYT*$H{cYN{sNJnwJuI4=?tzz2mZbSsVHn4 z6#0+F=UsGVlkFM0SJ^B7R;N2I-K+L*4I!<1gq;Q!6lW!mbWx~Vlb|eo3QYq~ilAcn z>3Tr@25+J9`=d+K#DblCWA9qypxkD0Hf@*a{x0u4SxxWXVge7l|Ap#D$}ZR)rV2p{ zWnIS2dj;gL2|LsnsR59pGg1aGD}`E&99Rf-~4)B-*W6%BrqnGG+N{|dU% zt*Gyj<=0e73JF05!1`%RUe@tSLNb7*ama24w8s6eK!cMW`X0*OEYbOxP4Nq20CINi zJ;4_?ZC=ie+a~rl)bXCPmc-r1I4?M%lIuKy$GzqlW_F)_SmnLV@67^~Ngt1k`B@t? zud2K@FO&b~${?WXn*Uo_+ntCo;-mih`?%7~@uq+Nl);TRusa3tZ1_{nX%3h%g_q%U znWadiV41%Hmlit#;lk`(5^A6wo+{}xlKm#{r)<1Wl4u|}Y|FhWgM(i#Znba4eeMV0 z`PcIz-*yNB?l-~dc9QD(qbEA7{pZ!_f1nR|1(NV@XZ4LfaJU-}oR-e*RA}3+9Kiqf zITa>N#lGMb3nf%RdE01XTO;$?=X}FNy0C z)SkiX@U#l^Mn9ff%4#K!bC-F^#?)wJ8N5s`1CBSzZ;LsSiC+%#PirmO=mN4VUD)F0 zgBR2!x4m*EiZik{7T@a){y?B&mUU-BZg0{)*y)aHsvrbc3(daK>3=YWbN?|0iUdaG z3>~x`N4Zc&LFlX@-$j3xzFz+{$oqzQy({|vOP)FR!wzb@5v0ombmQX>&-A<F*tauLW>aR2> zcrkyAwIt{85pZvKO#{3M+L~|>*0ucaTa zP#6;H4FWSLgAvPETcDg7VQbCRcrJ<+TiwInxQY_K1A%$CY83`pF8wG8-lE5oE=({F zOQH%iD4njgr_=0(%=iJ07ZG|GeEQAdHHTj+A29?x>`NIwFh6c3XpKM+%t6~~_G zyyw*q{$imMr>aF1+w^b_2~elQmN3>pbOf$S>3bPRM-=8F#zu3*G7<>_q1SUF@x*VK2zrUzRL|R$>m#9gz2$&X~ zUKRhYsbj5p5NB<^o@h!k9dm!L6)!-NHXP>uUz>nF+z`&w@_K@k=v2UxJXxOn;qwVu zMfo=g3nLb>PGgt8=f5x2g2pa-r+ihrxzNSM@WmEO)J%sND+wSl_M4LZ$R9z3~Sr=cq|EcwFd%0MC*VW|&>UB|*4Q0lrcWmFguvvCJ z*JOr^k|GRyh=`Yli#M@pz_|#WPedsA$k4?E*S8!9hy2N{*EPI6&-)nfkTs3&;F364 zyIan(_I^T~M4{zfzJ+IncVGDHT5 zmCOHdSWVa^+Qdf*l{OM7pN3fPiP#3@m@XX!lL@nb3R`9@zvln!zJ7I^YU3hhz(d=i zNyja9HJCB<2hJ+Ee~mwXwyX-3r%cP%SJYl|!F(a^wQ&_t%Be|$_G|#7AgL(Vk>7!o znlL6PwMsg>ya=w)NzGA$L0$^UAd;?Yu`{mG^SJQb#T}`pk0J1B;u^@eKsm%(y}^dX z32R!kVx<;v$I+~6;yDiJ;f~S;(EQAkr)d%6sidb280P#%Wj)M>|1Mf>Q1Q~$5IkxMp>d@IUAY$b3eoyg0^6_zErJQdZ$zg>wG{&JR(zp*D1oaLTzlm| z#zF0?i@$#68@YVO#3vGU8|862GbY};nhq$@Hdf^B3Gu@94Ho$Tm$;rBv(8O^JfXX- zRSPS$vwHr?h~LPIeJfZ=0^Bba`z{+gO6TDHqb76`PW875xM|HemI#^c6Oj}}>f7Y- ze6A85U#_8MFRHsLRv%-?riuIg?fFllRiPE30ZPpb9;|n-(E)MWeecWJgILCHJ=v$V zv@-tD79~6Dp&@IjfE8^66g`hW_nVIf*$3YLeE-(FF8RNiX1^y}+CG$3FTA3X{doGs z`bp9Bdk3O0YHd*36p{XuOtKSONR=Xali{22y4%9I>&k6NMj8VfM?`;_p;5q>tQf34 zlR$PEZULx~V|>Q;rd5tS-5HEz3e&bbo}k9nEpkj;n(!f<3>$stVuf2HA5IM@3#>d? z(WQ0(>NFTQfvOgUvii#k8f%$O?gt6d1~u&EWY^ok|7ii>#Wj}X5mn7YgumMh_osy8 zo{Z{I0j&WvVOXjzx6AJoV7?4Og zME?s>U5$wfvcJ{o@*l55&5z|;wltlhMB+sIS(EX_ua%NQKo83v+uOIVVYMIZ0C*0t z-%V`*vZym>5vT0bhZp<_A~&y-L|GU%V4UVqouz0AuT2 z2>dzc?fC8?bbs7-mzq;~e%P&8e=1ypHL)FwMHGdKwl?|AMZ?JdMtCWRS>pF$=b?ES zF%at0K()11sl2{q2uy7Z)~DkirL6hNx?*67Yq829P2Im(U)Y%(dhid&!>um2jhZjl zBDezKb^qmfI`qJ8PMbSNMe?D9@H7zu?L(SqUNW-V#IKgf<~A4&t2vc?72kn@g8uu* z0xvO|w*P?sMT4jv7|ZLL;(AlqQ2|f~dWHTB6qF4gE0EL5#qdvTkh&^5>4hLR{!-Vz zEg;0O=tsKcYcX2TTlxGFu(a#G>Kf%Ai%wHPQSPj0qn2I3I0Zfc-bN(H=FFX)jicLa zl0YYNl)}*uQrgwX7qGh0Uxf3tL1gDpQ(N211s7R3B{!}jZ(&*h3n?c!UZ94GEZT8Q z)1syxb0)8)*XLQp(*huDdRqz^qNY%YDS%@16F7{eEsFT{+Dv9S@a$Iv^teujV-J6Y zfi%Z4(%vl?donK<@GR@p!>l2jA{dqmU@Tn#Um{&>&2KjX=}Jlv1+{j45Iv=qo3{zj zJ;}}hoz_=6HIaUkEV(vUIp|i0%{e94y-JbPsK^-i21^O~@&6TzXb_CFPDSuoZ~+z4 ziGt0I4rq}mzb{qnv@q_Q* z*yez495N?w>=(C|>_cZUizJL?n*0;X)jFgDBn1jZu#B+5Ej>B5O%HNN7)>t0Grdi; zX+y{PFIF(N0K+3o58{lpuONPXI*nbG1teR04pb0+*FNul1q$4R*t#D2`(;4tjyN0N zXsegr1%>;X!<((^nycxZEVFogd-(3kyTNCRf|2aW=pwO%-qw4cxuEg3V9d@D`R3q8 z7Hs0VBPC%?Pojpd4SE{a;C`;7%)l<8)Z#8xZj1hEjGIU>aatMsR`t1>o1Vr9a?kMw zQm1y{OjTTcZc$7-8|Ry>hrGR$r@Qv-a%?mLLCT_rp3H7}pnmX@D>C`FW*+j#XRoc_ z{hV;o0yP5-S4gf0%he-G>EhW-u`B`8?^8Gv0-JzKSyE!6bj&TbCz#<+uQrYPu+7;l z{o3H*NDW(OjEcvcZ6iIqZvfk}RwUG2GgM56{bJqB49F=3Dbtr+^$`GeF($M z05?3hzf#=)Ns7>m(+E5`>s5gOv7em1-q9@waGCqpHkh)kyU3r5^19$qThC_P)Vv1(DO{&a4H(6O7c7*u!w2ZGQD}4rYF!{2xM-zte z*vci0QAF#<{w-Jau)>l?&1*Qf!e?+&R<3tIcIHCxj7QamU3U?~tc!}HMPp|NI zjN@KFA&X0Iu<7K>dSkQ2p_H{==fVRmH9e&>qP2;4@1x%~xJz#{H)3k3kD55?^N1or zi&=XEsWR*;l&s5KxL66VFp`kQA(lUBBR6A6_JBLd*B)G#!8bOz@|;^Y!nm%y#d$A| zw8nm@Ix^lPXFn@z5m(Zp-iD(>rUM%bECmmb#us0Mldm7BQT09<7;7TjTRsI%uC;Bp zR)haZ{ki5nE=xDlBw->I=_PI~RJEVgP6K2(h;YdpnA4}($UM#c4fp2>u+?&Krk^4L z2q2))Zt{PrhO0KRU8`k@y||%ttEGuPz{#JjEtw}Ln1^E}Y)6Hl+ESp(JzOE{qwXzihpd;kBzn1h%#p3PPke$XlK4k}@vYG0URC}Qet`j%h#fd-f)=FT?HRoG z6hMKt{$*EZ>3G!xR37N>m(G3Y#wN&&o=i;-Zl!myMYGG9WbFjyz&$z0a@vW489USB z$;mRFv94kWJ^g%xZZ*XlvG#F=-uR+BJu^DJ&f=6ucN0qJEWE86Z9G!6W8#dc-m({8 z;OHWZu3k;=%WQ2)W*C!hU}ZtVc6OGPrbbndPPZbKxN|m_WUOHAu3-0r3@O_>Tq|$H z2gX1HC4v2d92SVhzj{k0J@m~qtG`*!BT?7uBrn{Ju6{fU%^Yu&)2~#wndGGI!`-zr zi#?;sFkwJr!$S@nFj0(lUlSFHvgo$F8yH~E{x1{E48QqTAG$wv(fe41P6eF+;hyl*}AewD^-O>xtHw}iO#!E zvRD0984K6m3}JaRFl!cF!%<*hms91?l_6^-e*?`ply2Gocl`WCnQ!E1j^swH%)hRN^7QDjphCx9)Dj*j7VP1{ zCZXl0yMKxew%Lx>LkMX|6(tGx6fy6qk2p^1q_r56r^R|=UCZ^}Cc1qxd?d;C+Nfw8 zCHer3D@hZnp5Lek_&0A7nM}7vw0XHRNn6yK=_K_#(k6l?mStGjs=l)7(ji|D=qLK} zNXIa??0=r;r(t$DRM1|7{uaZO>}1e^hOLY22Q~H?4K9>c_&wliAsW7FhZ3C($BT}m zKSkyy%<|`F;!9e{P@<+vv)Xx_hf0H`VN$tf6^4 zHfKb@F#r40z&`ijy|^PWrTQ0DuBriEjuyd}j0@<_-O`(o(Vu%J)Iqpjd3rK%-^)+x z8WwA|IL*RcGs75U+hgFAn35XOZRHgH;HwGZ>->(D-#NVUa_kzyUWG~4x)v!_zJ%m z3yJ3mk3uEJXXLJjK8<|)(Qb~WxwEtS+4ltaueS6@`r7@}BaIXUP>kW|k^d_7hajB8 zB5%CMaq#TtUMlR$sS7s&p_)t+u4yV!0(Ju`vQy1dgiQ7|H(D6z+4GN+>w_hnZv?M= zh7=af)P;|5!SsJJ%;`U2&HBuL;KhB-a(T-gDns+WuoS#czS^LG`>Y$XhG?TI_K%L% zfP{&0>OFrOT{r5G0Z99!3=U;XGIbx9s6t?7PFS8!0~$Sxy*L33fR0{GZbzC&Wha~= zl8T6w)wPLqIfFaTspgCktZT9LgUMI7&gy`nI5YB|thg94n;W?Eb$r*Jj*Zg7Opt50>%if0efOhJRJ`A}RR5V^?95CZE(!nmCoM|Nx@;x^Z1M@-X!FP>k;s+(Bv61IgZgXq{p z*iF8;rphPa%_q6K%H>T_C2q10$j{>alGxPZxE#CEwm{$Q(2b$3&izTwN&U;{c_3XN zf_G2HDT)|%V+5SALeXH0#xJNG1+;K9ybhs=+Z_D_G3}1}knA~#8=B_9*7AUPS3V@u zpH`bq-G>$7fiEd4oQ}#fY{R7}F2!d=g+bX@>t8jlZb`mwSIil#GNAU*KV9W)_6Q z@?l?LNa+OILq^lHPw{5|yZN{i;2S~_x9f7Cjhxoh_c+^pQA9Ix2~+=k0mFdIUWL`2 zo;^=b_BBj{?Eka?JJE8gC|Tk)cjD!@L})S=S{tr?#zR#H?_A-x?vJXeu50EtXZLSJ zv@A(o0E9Bo#9f)D?SPN8?NYfVPu3#p=oRDU2+Q-0 z*0rEeVU}LP#4bRBG@vZRkw_W^{OJK2Q#Ob5tnj#^^q%GnDX&SC6P*)%CMrfApyp+T z%M5+m6n_T4s+0rtAu_v|zBX{D6Z`1w5QV3UAr zj$&+Ft|jKB@})TUvTFyv?Ut zzaOA8+~aAL{9z7Ic9TPY{4ajnXGwn4H|_DWc!I`pUI3Ea+B1y|!2~nSge(}5&`Osh;l0D{p3yqmfC_dN*01lO9!@b#Z zJtji#xI2bTmS#t7L`nfk!nKZWQKDMRr&8cqM?{G+S#Qr>GH#ieH>c4 z?SGu+T3y$K?*(qgyO!e4rPFpjZN8jMKF#635YxRf@hVvLKIc`D{g`DZO8a9o(of47 zdD_`r=s0BujjDEivb!b~4D%0~ux1#agk!a8aoI7V{f8K3-ow_FcIL3AjW<0&a8Ff_fWZG7Y(moQ?bVa zofy<)7Y{E@jveP6RGg$0}S9L4ojP))+tNRHXePqxT=>?Og^1bqVw>V z@5<}4Y|wQ5%lKE3F7aMFoqgCP`%>*4ZsI>>N_QI+DLzdCLO{I(0b` zTuNjsHaxRwc|z-ROwUbEL(Mgvoh|X<9sPv<8bbpKRNg@XmEHsFTaeP(3}{?1i$qm! zYj5)xejfbdz(9R{;BPlKNm?(?&&0R`aC-ruI2VFpcSG|Y)uGMj_HL>Cb@ZQlOCNn$ z4Q~m&$Gy6=TeBJmpD%FD63*!LUQ3S{qkGB)PZVs^xi-$(S$igoE(Oe-R=-#OY;-gzr_OD))?j`72UBB;pj5%twhcSYCiH6*7aDZ}GM7B`r@bVN z)Z%iiH*A2CXAOd#=)aCz=2fqYilX)@8>D|P))5F3;#`E|X@RV+aB22HyouH_kxU(p zOA;?dJvD`1NGDtEG%^&T4kYsIXvf*(4yi2%5-$U|0F}9V{Fwu7IprVGn`hoIs3Yey z;OC-1>#V45b!liKtZ|*^E9V^z1)MR}7D;4!aF>_6v!0=zs;x+Dxb(f1SN?-{YV*s%UStY zZd@%;*;?QO5)Zn1A+Osb+36BTaFVR)VkQQw5sX63)lvtYNx@q-Nw#&A#m5QlUEaro zQrXirBPfBba4fXSQ@KnMH=37K;I7TXx~U$X>@RxVKfK^@eS9%m<-bcWDbNZNXy2@iGBX zd%kyh$<#pEQ)NtL+tdqxYP0Geoe1W~g`}Owu(Jb?L_`>Ojo19o=Jq;3MrvP~QaIT2 z&j`AM{IcVMtP>Yf`chkvtqJ+Dsb95(x0pE_3b?u0nrPsGJ1{*};XN~c`l1s68eoIO ziqW>>+I*k3O#n8pc%v4KvLHdcuX^hwhCNi(iU|GhoxVz~iN?WZP&99cl4Z_4$8kzK z*EV!bImVYhG2mCom!8!ZE-n8vYXbK!tSCDk-pp}NN-N{Rg^5op_q-De<%AW)@e}@E z6@;+jhhMZKiWI-2hP^ia7*RYTNVd2h6+pt zqfC3*FAxzLs}$x+@m)d?cVb|IXiX&`wWy|9zj+$7NdGy#u9WkX?OImHTC@j$ofLu> ziALjmlH&fky*zD^E2KauY!krgv0lWv`MA(_{qg7_@RYduXYdQ(8eabS=AWc{?2N1B z819h2A6v9;2h3#P#UVI9Y=~MvHtpe2lc!rB`B#gSrjFeSjqV5~&)5yc-MO&@;ElWp z?J#6VR$8h55T{N|4|{*(7>m3VWDOmb%x5i<1e#eG)JWD*ZEtp)VepS2T0gkdRNHI6 z=J!O;Vu#PeDUH)o@zIebik2V-B_~mxvhC$_qa{;Hh)uHhg65OZsl#1OGSTd8uz~@E zOJ}ove7sGyZ^okvt*8P$-`}@tsYKOt0j{IL3xOA#3H?UO^BsQtRpMduUwx*2Ul&~M z@&8j`7DQolIcs2afqcixy*><2&;E5QM=NbsBBJ{U(=M+ROVWJD=e&d+7oC!+Rv?-a z_&2>aXUsW=Mf!awX}!~zYoH&x!rU5|67(A)Y;~LWyi~n_ZfbY`Gf;Y-k5HjbE!qQu z4v;h2whD#@8=z+w3iCHXJ$q61=6{|+Fzht)4}_vC;S0k=Lo@3{1S7}46gnY&S8V0V zd+5h+w$)2_AICBfGF9*{58hC0TJpwdLp1aoa#ybfWnZ#T16&exVMH89Gh8WBfik$M zk?Jc{^ci|Kofj{l#xE!{u!D*ju9TiV?%hk&Ol(tx5FNqKgXdU1t*y8X%Uc;P1P!24 zGAk?A&yA6Sq;PR0)8`SN>RICMp+@=!cux4(oVIyZFdQ8Z%utwjE}J&%C1%}W^2B6= z&G2=c|GlF%VcKQ`5@>%?rKKub32x~KRV zGur_P4E(quzw5BQgycnSWFpY980piVr#KSU z{{^i4`)I^j`0aNbJhuLqT}8xmF&Hnoo<;IWb^?zM_SF4Mnxfigm2;c5b>z*JK2E!w zan0=~mKUE4pyGn>tw8qsx-D1tJ!b}2EbcPD67a$A@9+P;H&Cp(1ISQb&ZI|$+2ing z05K8m^y7C!D1imo7WZN*i0fu(5r8%0x3a#xlol900TpdiLol))uCIwZhcl$Jg+ajH zv0|n5_vRrKSl49SdxgK~B>nIOupxR77&?m8`(?za>*-9}i?Km#!rVIe=Z zq~fxE=(;n;xYsSvot89TLd2fXn@CVpLdm?>!!a%Q?l(K>N>KcIQB*Zl8ycdb zZ*5Ig72du;&w{o)UPQXB>I3rjFsmushdV;Uq#XwSU<|Hwi}k=3X8>`UqSSC}Y;UCs z5K1r{#qRrx$u-G-3&*jw6PU+=ml2ba9g96Q;T zwdMLG(f@QOb@Z9m?~rVZgQk(Vwc1KORs;pRyAhT1CUVm&8%B+Ub+%V$53 zdL+FxOqGTT(;i-;3+nFpoY)Fguvmu=r;&W@}Ub2x_md8njFEUn+W3d z;i7z%+2YAwf3#n(p?J87zde7=+NBa%bR+)zbz0OXxAXVy)aH%tRPzin8bzYf)7r}1 zxn`#d@9W}%KyBwAP@-~&~d3dy(x-#TQ z`ipJ4YciqbM&wl4(E?ln2ebSxrlRapb(%3L0w{5t*&$4I%T;pO+DgF9v6UboDA|S; z3J0iDe)%^+Grm*iNnX&>gUkO&{7&*?ZTe{7PnVqeShG);v>^0_qNnZ`&XIdB3qPw| zu2{wHJEbHQp$^P(%E-y%53VkBsmk_k+P=>*sgzYML5}|xS8tZKoAFA zrp6H?3^B@RIb1L1!rMME!F{C5{mRgZ9&B$}mQ89#4FLe9Sd{9WA^ z_4~1|m*tKpI8TkKntR1g=GgTQ38Bwhm=q$eX!wj+-M|wW+^o@1Hq|3y<2C=M z1+cA)Ax(a{3bj5dT{2}AJf}xNH&DH+kNt5dS~jhe zm9qa&{|+d5y&_up541&k{|&de*cXTrg|wRzD_%4KrOnL#rGD1)1{2ff)m^huLV`NZ zNf7Nk$DEuJyEddC3-PH{_=^5IZm#X=YI-4?^_5e3NKZ68Y&qy95XQh4Aa6|4S~n-(El0a1H5} zxI(7t4i9M;j| zr;{2RIe-9>lpGf3sO)}S+l9tnI6GR=RK_niCUpiRN<<1baAFaFjXt&DL|a!*fRFB& z%Qmf7bt%*aaB3n~3xG}~`0g0j`zS!gmS>XQ`23mPe2WEZbnR20FikiBXdXDR)lOzz zzky=%S@7lNO+l;qEAOp}@H?wSFli?u`Gzqu5eI*OOmSv5N&6@0_BP3a4m2p+zusctX{VZ+( z^SV!ay#($16e@}-mJ~n;F}{3w0Xc>yKc8R&MA}nkKebV@*3!IktRQY32(sFwzvg#y?th?^cHOKF!_tuUu>% zBs)EQ9Q4?j&X81ea!3(i)mTBM+ETbco?yALq&9!7RwX6od8Z3i-BOlk60=CYaj!;2 z6v~EB4Tt$>S+G#y>MO=odFkClvvV&3Qi;2WX;&TG&sv0RVIQePvY&-jk00-qJGR~O zFR&$!_=KAXTJhsQ`3=-u>|TR+6@V%R;JT4z zw86kK^F`0n?`K6QgKLrn<0N2X2sk9PplL^fAElI=J>gGD`Z!Gbm<%Z=S#1l}FwKx%^@$OK^^&!u7qZ^LMc=1_>%1&nFsIK7|XH zg{1}}FQQZf{&y)=gVQoi`9Ka39F?)&q3jXP*XzJF=w<11rENqy6F_v;uQW-T}jq7hKA-I&%o}eCP zKVK8M3cTLUT{!%CXU*{Mqm-rntPq!&^xkunD_wrxC|AVYhL+d}mcs+BCkUS>B7kQm znD!5JpgNrNlE&%~E6yKQji#10S=}UOtgny!y*0an&Q?}!i6z;v6aGiCV#=CF6p5Mc zD61#RT?1T!kwZuhu2F2T z6?Kx`qA_S4y*%Uw7dY+7DV!P|@ai9f`|X2IgC}|mKS@x|nK&Kn*g8MSL6xtv$P)?> zMNbl)Am}O}=`fde8_d@bOyM_y+>ff}xONuHjIwiKFJWu9Ub>jrtUwJM58LrUQyWfy zU{v;U>NqtW$C=-X_%2`%;@ zyLK1}E`4vg{-$wErnMG}`JGX$Bgd1cRct?X(Ah_Ngsjs+22T;lTaf!g)=tJ*lMrZc znnXlni-a1^SzGF!+0@912&c9dXagkhMRG8nd?E^Y{c&NV+~0UxE3umgL4v!c5q;A< zZbrneGpVq#4*DVcMvA6CR@F1~9{7P*lOG%Jq;uB2z6kroy?C5x^`03+=m1zdken<% z$oHHzh3sCPX(cQmM8$B6`NGQs%yChb;1{srN?(TC3B%(?t=n=p)}r%!7w=i=@0frZ z!bpx}9`WyCJMB(7!+bI92SCy|Q+OoXuu3$fBx+?o+E%o5@*Esyj#e1))?t>{Mh&KED9l8IAP4r)PqQQjd6#aqm1kFyr)DwAsZhf??4RgX&G18dc>iRUB zI$IND8a4diH2N<`sONi4`4iZ)`MZyyPVJISY|s%^Qo)HWsS-4Ccg#p_V;l z?Z^%&fo`l0*Qls2CLeFP^9u3)VHVAQ^J75@U8(ozDLy%&$~VT7O`L^RC&YFzQYt{| zbY4?so)g)9Sy?I=J&HT(wZ?u)MnL09PE-x6-J$?)Vzz$TF*yNY`Jq>F50|JpF=H4> zeUR;6a}kZ=7^oq)LG?BGUYpZB^MOLzEXr?j^_SZsUtaEih0rZG0gH?@ z7*t;F?-|E#IF83q%ECxAIdt~REtYi*bjap7^uutALDr!(%+6|ady_2mggn-Y;*HD2 zLls~K%}{{7zQa!ho^wyD#5@=EOxIuTwtyQKI>Stj=t%*s1t$JtsA;9tNi@Mfpc28U zW#-%}5@1$Pms5w?*%C)~GGr%acN{-+s)B9H^MIOLMY()j2{pQy^=X{I`mYPK2W$`a zr7Ot+P*tP8(+%wHPL3A)6^RZ~$^&TXlqYzP--LjP5El;@Usvg^Sz8#g5-sN)iP;ko zT!WAE4-p|M6PN4zUCb!N4%1VH6ME~LW@LpL3+iw048vk%V$-r>`wG=9&7}(%Wgpwf zq59vZIMZ}!ja5_rDko)hFpB3JHrdJBzW9;?el$ztm`_37DYMNBeu446qA+&q6mq~F zBjJ;ad0sBnY|v!B0w#U;*RY59_>0a5)916@oT^b0kMeY$Rm00kkqX1Pc?GNV7jj17 z8u1o7%Do+jCWX*GCL_B5Vzpwe<`R8bAe<*v<^`B>?5zKr_yS5<1oh#gII?Zn*6F#O z^Tt{WrzmC&S_t;o5b%sawIZ~C*apQ51-YMvMwbl;IAg!&{ZQb__;-Ffe-X#>@$jKW z>wgl?ol8z-B2K1N;?VFrOIJF7Oz0(^#hIw^oMio0cUt2KJlx>4V!pbh_k<;g|2&0V zFdq!P8(!?Aqse8Q6^nSMrc{_V1akp5Rg7`F(2b;){lC=;d4nAx6FPO0G9omSyB2k! z-Xe*$1pp7I^T)FGp5iHGqITNd8z{eJN+AiX2f`NrfYtC0LBB1-5q-3Jj8Q0OZx$ZC z)!p3MRebSPc4nTWj(nF%p5mxe``IZ@1JHHZ^ysN%*C)ErAI69*c@PJzrJcYCNnP{9 zkG$K8RB@o(T6fwAU>BXIVGAd|^7c>NYWPX!^N{x$$5!L*GO7(R81NOqlrulk7pOl& zA$Lqc`63mPVNrkp-(PCnmO1aly8FmN1HjDh=_PU-c|GEpq^IcC-tgHRc71a&0L7}7 zxN!2bzRz^@&|W5-VJXnp5K{2uVI%b1Mh%3cmmd{@NRhjwXIfBxI zoo{vo-tC87%JAryC|_mvyfGWHU?7uH{k&S_QE>UI|J{hQ_|%w*Vae0|$Joc6;nALw zZ#C{ni0Q5rOMZk@RHYPJm`B0u`o`!~mHk^Mp4HV9`te>c*}#l{{f#c}@XB}gsDMF2?WE_wdx&lG$TQo6O+P?Zz~HZR0pb-n3x%4x zg|}5nb!it+V$Y9N^vnx5={|3_`x;B*AZ*W8B4;tC5v6oj3@vP@#a^WKvj>-`97q|#!zR?I_x)Kh8zpACd%oI1=;K@e@{e$X8?6m+SlY?>{E zoxHGzd**LpPxO`w$DZcvZ?jxNga`)lm3#7NFu#5<&Oi+q&KN3;xgvsHN+J6lHqUC}u$QuOnUT@J}GM z24)MBg)@pR{8uBeN+Xhhvvz^G8GCn@{=Yy@Jo-&H9z| zRiD0@Y(S;EGo$LB1~hN{LK+v8?!{F2S2LeF5m?8Z(30IHaS;5kiXrxITgOi;%^UG7 zXbi0j`w_~n1B{Hml^d%3eOtpOyRU2|v(0`2r2=}+Y>OTl1N3=LB)30;$U%-B=m5Rtu#8+)k4zNXfDW%HbDFzDEanT3V6N$jnaW46*Y-1BCEapo zzTEZaJ0@ctGjNYHP>2xIiIkI1ZLzc^6EQhuNapay^VW-x;c$ylI%eQlWMF&&a4c@a zIEaH87%sA2ggYL(BM&+aBvF@X4ual3cq5YQdJIgCDLD@7;xiC=x1)EQa)4Z1`x)Kv zgy(3J!~X_v_W53!eZFlPaSl^;fp;}@tDz?fJTpxl$i*M*#sF&Et*uP*_JcjTVviy1 ziiyW!SP{0&x~=H7f+z%Qc~gS!hM0cYh*Gr>Sh)2Qff8|NZ%Ngxx7ZTs+Atjk-s`2?PGd!0uo>%^fqNwb%(I+S_b^y~M&;h~9tIlS#|(S{ zGthhiV~?T74BV{@c%#Lhp!)hPsy7+Epo-7ib{h_FD!LeUax8=C;|b%a?nVacZ7%r@ z9Fl;pyhbr&7@=1_aW2Gc}T*_`psUlMgG>^!i9f_ zkr;&-_3t7T`5izheDiPRTpd_xD*+%LQrdVQpsWKxI=zOTW7G$*U)2k;l7P6G(Z~- z!9%dWUtDx_)niP}F&bB4+geb;J|x4n0v484t*Sc%^ZKU)B~qVaJ1n^rIW>_~DwFD( zD(^V(z{EPIG69vbWA%XS+||Jh=d!Zi(Al`xj;;r|p_UY6er#bnv73a>(lJWSLP3F{ zCB8Ryb`F=Y?1R~e@sQ6unwM(@VNg~p`#V-DQ7}a?p)=^z!Bu^gtLK z*U39j_kHKUl#%LvD@o@#RLd}?CB9nYC6q(Sr7+V`Lw2T&BL&9o7>4#M zw0(eJWbWJ0>7yff-UEHdR$LT;w7?|Oc^_f<%=V&@7&CCcXJC8*aKGPzaR3K0zz2UXW0R4ax_(i< z(8YOa7ZGYWq(m%bI<{pT*ijkq7H`oXi2<+im9=YxYF&st5AOqWV!n;Y#)Nkf0FmKxiE468bGMV1@PRVbiU34*>Z zHMT2j{$*fSO5J7`gw))tSM_QP5hL|Fq+nXV^>?loY9CT z5OG`uFG^9!RqF*Y;d`lBg9XLS8d#U|Y|I5=qqj2EK`%7X*&Fv@0%eP!eA$WIc>X5# zje&4nk2SFG=~iwN#Bfv-Jru^LgsxRrN=F!H#MVwLI5jJ_s^u_Q)g0cg+pqHnylh}N zph$u9W9r}Sm_zYU?_m#(tn+-SomxZuG%7hV%hLvxG3Y=&N`Ao5g5stF zGlq^oh&?ugYzDY5LvLvrpgP)Yonoz*&WZI#SVbUcygoEsV$qa!WB+aM*WQcXs5rw* z02cY~kY(I~#xiE$f-}Ix^c-Wp<@~*1zrzfPRo|MYGJ^SAscgq)%)oKT04wTo7{)k; zF$1d^VEObiEb%5aPjKD($;#Z5t1bsQ2U*atL8`wic)^|rW8GJhv7aL|5Oqc@_1sr8 zKHSe2i#(v}^tNt(((^R`%WHM=#7XV@7uDN2lLw5}$A0W26GgV_qj$XWL%VWrLm`*k z;F>rm&|5V>(yFXz4l!O6rF|=FQ6Hi5!IdI1lg7|pZTaxQ23fQ`q|YRIW!^L=k8JMtn*bCZHzE`2&~IX zpU2)9QBRv_`Sc{QEo)8sCSf6vHYqS=z$E3S4a)JE>Od~o|pSM!g zV{FF^9Lo$a+mGeA#z8%RGr-a*ufd_n4|VwyAF`&TCn|e^ZF*&Mfe!bR+1Ty5Gtk6x z$;!`J%sbq0XubXFmucrs@6lyfT)}>Djy61tz*IJm$po}(i|z0EHV~PVY!B6%L6vle z=&=Tr4l8zcaB#66Ec2$ zm6i8F3-amzL4YsYd{o!&&bD?R`bB#1&;L_RzU+&Ao=0Az1f3Yn`SMH~n^&uw@p54A zy&u&bzxOBFniu-;&jLvPsRAD)7=;2GbtO8Y9h8j{I{6TXBHCL9VUMA9NDp=H6ED<5 zDeO5b9a(>fONv^xO;*72G-##dyrp`SYTNaaI=TUSPBQ)73?REPpSg4Jdi*kV&S0I= zzC-Bb9k%W;x|1D=?byM(k>!>#*7bo7cw1GV9muPv+a*|yRSJCHeK_o3HOusgRZ+zP z8xTMT?9v#jwRmb>ZWHnMR%57-RkvRQojH2yIv-s+oE zDv~<7!6lU)Hp50>$XawvVI0;4WT3y7eA3Rjw?3#(nH+b#_>H>b#jn$e%T97Qohv`c zvFYux>BBRZs2Ylt#nKk=O;KxPY2}CQGWt-e)<<^ENmNY-H&4Y0u$@XRplX;!TQncXxDlYeNtEzyGwR5Bo~(W8>7P3$*Wn zyXI6$qv50~KSmf%En*JHYev@V&7oDp_H znKU?^{bJcPtA%427JQ2=WNDr;0ld4fRz-&vD-8#fop9-A zNyiy`+}Xte-&SCUmRv{nU-3Uf`Wg_VxJ`1#*eLG!ngX1Pu!rJAO9?Ep5E4EV}rYckvj-!!HWh5 zX$VMnlATZ=RdKQTQjJqyl@%EoE@`D598w=0s<5`Yh+>Z+w5}GlWTKW|_GGDhH(rIp zh%9McOeU=JDI^3nNyoPDp>}D}Hs>`cnVU2#tNpcA47Vkq3X5b$W*B`eoQxLgmM96>z{a8bYr)%RoDt+EX=Jys(OjJ z%9t9$s;@b~2GyL_i~*90mX_KR(CgLa=owm$7;<3Ia%odM{DH2LR#oakT3Z`h+tT8T zLiPu!)vY5sT%{{*t7;J{cMNc^d{KU()-<8n#)i&5=QWzY>sn1nNWL7<(hJA2jv2Us z46t(C-D%VL8S?_5@VUv#G?;}}7%pHKqsf?o`yc~s@$Q3O#xBMTTvP`5fFIa4E~062lx{!Fux^tGf_l_uFXSTICv;7vOxkcqna>ine)OJA;|7%b~Uo4Gqcpk;gl zz|+=x6rI{S+9c1_WQ=UiWp%W!bM0_znHkHAhXVT=YyzjGEyEVXe1tfx+QD*Tpgxrl z$Q*+}rV=F&xA24p+sXi$wdDLsGMgdqF{F^@(5%^@pv+o{(#GrUlgK8m+?eaY{18gd z*aD6k!4-nr(7nY45e~CrXaSIwCW9KU7`4n%a?}S@78ua2RYs453vj-mY?WZ1XKpc{ ztC>zT3+c>LU!uiFKci{W$oI_m&t|xdbiBr&xF1?vcav^<@(cK8`E34WX#Yxp5C5U)gOw&H1AHD6G*I;)&`WF8 z(z#TQ)&c`0)%FI+Bdf=055v&N{1B`&Z!8babC%#nqAYbeTqH}JjGH_)a(x)nB7w+f zqBtT{k$)uJV^S9Q#BPfG%_rHE!H4#}#jbYt=Gu#?HoyDfdeBe*m=@DU?6>nJOaCY_ z&c+USMueywoQnJsAU|9_f4gpf(sMPv@fK}vozQ~A{(>OQq`@}wLc;!xe_rMiq7>?g zLI(xtwb(DO$x;Lv#AEO*L597*DRkU|x*$5Nc5=*9ZH#%PX-y9S5!DjVpceUGFp5}_ z4j3%VRejg5B}rGY+03QKkxVvL0@NDBL@Ew8=TLRVo@36RM{GLfonHaBp z5QoStGOU{p`E%*5GYss9Y)^OBXKYCO;C{6hkpj}|tT1bw80Kf?(6xHuAxg;`WT64U z-K;f!I|gFZXz=t6dw8uz?MT*5s?ztDtB@AN^0gRR(`qqbEHJd9MC&}6N%?sj`a7?U z4Q$te`5^?oc>qA>xz)kS8r-5`UD8~$%}veD?CA7WFW2JpxAFNvMhDmGJQ%zNwNXYi zW?(e~1vcjv_*}KK>F}CuPStkqCB3E}*)aphAp^~E7{oY+F$3q!K)aCo1Al4fm3qk? zPL;YbDrk>bsL>pkI*#K)GQfSDbBLT^TTY+h@c$yk$F9@nY=dv77aW+xK9@}+_q^XX zo5tStz=tvMELWW=6m zg(UWUu*}}mJ>BP2g}=`m5t)%$Rj0cLgXsfK=ENKC^FHqqkr7#0Syg9df{pM%YUOp{ zs1f0DN^&sQJZBNy!7iC?nP{3B)tMGtdLDxdppP`PJjNKyNQ@V`)VX*6LND@j+7tiL zzp0!5(cjb)|G$4%dg_+^qkZHNBMz^n>qRQ|FbvuW$vbWAc>X25__zOo(kH*D^RpZ5 z%a#%C7?k-i;xG1Et{=?pVJ0&6mlZJ|>PE9OK#o2-bDbF+Bbc(pDF$haU{5$~SH_+K zU^7-m<0~pKq(a2u6jZbk_rc+zK-Dwlgg(|bp-^4}RLtCLV0X@E&Rp)SiNOXL|eaU_^Fx=dNjS&w1@@kv(>tD>rU!f_S~ zTXCs@I5lEyHwm()<1L8wHeX&dBw!f(nhdcGO#_h<@vMS1rqEfwiVN3p(GF;WpSZ9x zy#?iFXfcj^STjr@3lnCXeXAJUtm~3|{&C%uGl(3fJqr)AXFT1}wqa>Sn;rum4!Fbv zBQsOUL@k7qaJpAIPJ^3MzP!}wty?<%;#YO=@BfO@?YrEK68D{qP@*TF_US%W!O(W*6O$G>6);x>xE-ZZO%nA#z3^3KuT zQ_kGITGxLC{4noXrtMBI{JsA}_kZUjx_Ofir;s~8?hSl3kQL8_i4UaE^$opUOKAM& zg-1T1tU~Ow*f4J~?q$I_Je#wWxUsiyH0-xPn706D?GQH$XvP>gg64^H-)Bd62NElg z!uE%8Kd|h!m%6(d^tS*1|65P~2Y*B7|JGm8@I&w9gS{fwKi10!1C&e*fL~fr@;YqN zM(O3ddj7xoN7{b$Q#w2M{_qe^1v!uusXUmMzdW!-5jeHO#R88YEPo*KTxYCP!`r&f zi*K?jg7Z+-s!1j*M9r;^umhQLF>puoy8>?HC*v65p0DPdBq4F)<39ir}F zzu@f49ot~b@MYAvUXOlA=Uade*IF{sOixUMorR=D9lB&vJ`x>5159mUlTv*PN3iCa zm@u|}6mgElIZYckfnyT%^1VL$e!t^OfG3{N?)U##FaN_|Q@VGl@gX-wq=wL~#;Vs9 z=vIL1sj~|7^g?Zd+Mn|VhD z*VzZ*BIjVtN?z9$@TK5CEkET!_2pmv9XIG2A-_V%a5{vv#Y;prZRmWYk> zAvrKy*jIE3pGA>dkT@cBGGV4Rrzbwp!g*Dli09F~X!j8vGqE)aHH!yk1YjDj{djmc zhuUv!i4Q}pjX(VRgU8)FclG4Y{jA>n*M3|V1Z;1dXt!ZG!OpV)#WKrjf!!hga>j2c z!@c`@{%`*yUH;BTb$;s!`7bu&&u&Tf_=J+1g{j!PR*3WVe9UX)9Ig0+0M8F3kr^@K zXdr`YYn08g9<^;3sS#Bb&V3=`+-x$ALbP|3$R!Qy^+M&;Dy83povYACY$L5=AYN>GxatGC;AWjzOGY5eMUVPE==U zA#IzcJ{G7nV@t6Jje5ZMzy2?D|5rb#D-~C^8{{tV=%_rY1 z|9ky8#vsZMS02=b5W}be_D2^YYQqEPu~Gz7Z>sK4#DuP0=Zo{Jv|>MPw1B3~Aj&2zp@*7p`=pAlpE@O))7y;2WZ_Ll`Lg1T>LLKV~jpXKc zp2x7=uw!gLlqAX}A`u!u5Jki>at**mD|YFFn5CKVx?4AiX+efINiwEH=Tq>#=+>

YP@16YDMb`Jf;;KjNtkV}>)aK?! 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

  • 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�hfIiiiLSRq5-zX+$M|*(7G!PAE(hMPHdVt4wjxK zA}><{vmbbV8VKg!B`UIUQMccl1s2W`?B`GE=to=)^z9-1l29`sNU>euHSPYAWT%6X zJgReCENt!pwf!Cjix-ywg+)99iV$u)_3;?kG+(?*t`p>``Ujw*IKi_$Ilf z;S!olBGiK+BN6><#}XUjy}E{K<{XF(cFxRN^|#|sQuY35Aa*72+q%9R~?il z39D|B$n}kZEreJUACj))pJy9UbU=_{0e8RAlAS%lxBuYCd8R}ZP*84dsTy##EYk`x zO{jk^VJgpW=LO$%93?=s4n8+-%exNzB5Hgep%=Qt&nEFh&lF8C^HE8iY)~Dfwr+}) zS{QBT%S>X|G?z|lJxZ2{J{2!sB#yv)k@>SF2`EvaEg=TvjB*JXgC8RhM%zjH{PGKN z+cFDHJ0Y2@ezBBXT^B_BvEfd!b1atUePr61I5<0mR`BE-C{!M9*ViL+MPt^OO+6VVE#>NcrD7dMs{;|3lv1OaN+m{^3&|3QpSd)u4nCE~&F1Zlwq(w366%`JAV1XP2c=%tF@ z`k!oEc!6>ymn5Q)Dghu#ChvI-wQXg_&|7{DsBnYr2Mc7>p7-KotWina6}X6!ck4Rf z-OpW4pB{qAiXpGyZT|{xkA(Ah2wgk$f)+}IMLO7)c^v3%L9Y-Q4hjBhDtk~OgtNWk zb83T>-nwziLwTEtutYE`ISVE>QM#<^chcJYm@1&AxUHVwE#TYvpns32E#Mk-O@K_j zpuHN_H;nN|8dOe!c1`f{#s?ckY?pJvp`)p&c*ehJ?{waDg(NK#X6l`-r5>bNBk(^i z;OmMQhI^Z@1=()-yu)Iu`9FYE4<4>^;6^-A_moSgRBd1vlK;5pf2! zX#En&P}o1^{l-k_CLz-Su+MGLda>xPBs7Q|CDfI=0Scb3akAg*IV9J4;692FK2Ua% z71LItuj4|f!s{1bxAoHao*SFnJ@sdss7HOUBVhKD(Cksjz`O~zBiyS<6Tn0bZ9{@w zB}^9vl`L+-Rg>Ghf8&hRC-sAz#|prR*X(a>fvxMr*B!t~OY3Rhzr|!uuwN4_pKolX z%JW_Q?KtOBP;BiQQj%l^W8~IV$QT?PMU4XuDUoGQJS#QT z%6`rjC|~W|u5AGit*0%EjDFD%T zV=S~*?}NIP*7p78aMC}@%IU2zlNcGqF%D*08=_K|^U60x&yB(x0S+-sDnqm&0LbThj)6{9UWwJl?ovhh2 zES-+lr56GlXxef~!6w%5JVZn(U01|HeBwn}Gj~-J*h=LinUNP*@B(LHAx1_hU`GoE z-r-2L8*wwgAu|HP5aPH>XsLc){%K)rhe<8AXV5K*Jfw&8=Vj*c>b%qSV<1*zM+apJ zIO}{|+g|v{y(K<=Uq0>nq=G>*(Bh|OffU_>K2c$P!XYa_QjIUq1*$7vi`g9)F50+j zTqJ*`p%CT{ADVTy{0?Z6U3Ccg2ipw8`ADngJ^$4F-4^lhZ~StQ*RKdD(Jx|rrmb1N zYe#BrUN$tA@Rh%+zAPka1%z}=e?=!#QjbA`+$M&$g*Ae}M*Lj{G%ax2@7FfAW zTR+yKPh=rO6vhoLx?aY(nlj@RlzQo{e9wwh(@L5S>$X;#6593JisHmZsGQ9gpjF z#FsoE{jPwxG?uPy)lc5^r^>((X;hgny^zOWpO>q$B95wK07MgPyjj>g6JkE#h+Z_( zQ0X<>eBC?B@Bw1X`m%(V@ik_>>^(+jO?Ovd>G8t|{^=_)`kmj^{|=FkuC~Nhh_K%k zT4weWr5*J0JDMT5DWarux=X9@>LY3*oW>wyiT#O z=G$1V#OGX3>xUSjsmNPo@K0j8vB3^{fqbBRYk#fEb@%K|NWQMOyd6nU(x;-%1e_}e zJS)*Fybaz2o>Q}qyPr;fa37cmx(zm8Jwc#lguD$pDGuT%w`DptBYO*a5@QJnDKH$3 z*}Ha#eQ?Z&8XKAXn|yHwVbVxZs{r~O^Nc-jYh??hmT2W7VD{X?U#(N%MLc^Wvs_4h zc`hg_R)E|i3Ur}Vj5tzf@m{I3%FbTlP{@7xKq*(MyxWZ`Xe|;mz=@G*;D1{}0W=69m!rVu7U(CowSyx)?j)c+ zcCczYC!-xXI#ALG}XvS%Uyv4jzUtaaXi%JBoni7=a}F{L#-siB}{03V4mN9M>=U1zMpp2 zlCPmyuk5x$FXmcylH^a9auMX}-u^2>ym3|a$kV}jH9EIMMZvSFqokZ4l|3|(UxF`i zl#d}%WT34kOgw*OOKJ6BC*&9Lt%o^QzW6tVpX?7<&~w1^8oMWZfy$HG_j+xoqoEzf z=o+j))4xB!A)s00aG&wHJkNby_oDd~=EoY$@jY-6BSOz~tiVXk?Ai-poRqeu35tF6s1V%A*s2-C!hNG5k8O@9J4fGq z>i0NPWUa+;!~b(|ilqD6pl9E<-GBGmx?uKF=c%Uc3x~SG!MVe%DPq%dT;}J0)L7%? z-%KM}zP5gf(*2cG)-H>ubykW+m>yo~lkOOz8jAmwbk5{eJ5vzDvf?H0LOirGcgO{= z-}bCXGy~t%`HoN$_)YfD?Cj1Umh-f&P)7OguU;2785tt}$`)I-j`Auec>MJC(dTsj z0C3w70Qh5p!W*2JgTc=&ZgOhx*Hb%h89KiAMl~NkB`v*%oD$?ZyLhsge}S$_KA6up zKWbVN-NAn=7n6ENjtDtott63SYHPTf|3WG1bzA8fxzGLz*_b@oJ>_>6FAs?YR`la8 zq4B(}Uc_KOEy+rr_g7dK&8DXI;;P0+P>KJ89j#bXj0fi^%JeR+^khOiqbRG52i~(_ zgG=lBnfZ)&Qp=-zk!42B=)8Ccsc`e|WXxD*)qo84g*|jY4q`AR4pQ)dbx>!W@8$5t?pxfxCy~=F*Vu7y zfr6XBGqoD7!kffKzF)I<3R~rk0`KP4<}3IIZNJ5KNYuTL6q22`_(5fz>@-KK%sjW7 zGkY#-o12DqV_d_)=xE&FpT^f{enSV}v%BWCXIHc%a%3SSg`H`0o?~1JO&B+;HFh1q z&T|x~J70>tnJ4`H^WBcK@-qGd%G;X=YVxMh3gG=(xtOh;np@|1sp_+XYwN!~19*_Q zQa1a3ECa~XcxP>j9Bb{6q z6Mc)Sxc6{HVlZIiTRpwa3hRx66YFf56dx$=*vl^s32o{EEJSRX4ImZ?jG#t^4n|Jj z6ubH&|1HX#*_rWux_AXykY*z5(8>thKb3qf~9qR@fTCQ}7r6(8LE+!H|L_VBHBiX{t2|WCL1e zKnc1;CmXjPZ`a;4IG!IQ9SGZ|yh*SGHi*S8p-E90RW9ia53M)E%Gy5(zG!1!37#}t zOAC7i1ZbXFd@>J~@jaJoAZBPV`PU)y`-zq?^hc--$HH( z4;vs8l;0yX?`Z6Z6|+J37i zJWxue@Lj+!+{1~itsU3>ut@Tk`o>FE3Zi zz-8aw>CaN4Kkc>9AGb)yybaF7+t3$6Ru_gh_Q!9bLN1 zjLv4$=agMx1*AvGE{V(vNjKeUW-#?!*K7sA%x=A4YU6XHx%mOuA85zS_&Mw{z1nv7@Q?wTccAep2Kvt zlm0S2n=bg&cm$Yti z?$+usL)YMJdM+d#t0GXzui0~322mc4Dt?sxU$L1aJLh7zcL7|8cAZG0J6JZlaMN=# zv9^p)q|BWli=+}Xpv&Z=IuG zWxeg6edS8-;S9^J8N&xRh}|}%c`juMm@HniA@sHMzV4(h{qSgi=Pe+oZMR2;DYQ25iYYI*rY)#|aP9_l`^>EME!jq4TjlNYe4xyeMeO4P+b+q< z+(%Dp!}Jag`NFs=CW^1lHm#&i)B6r{K=pvA!e2C%IW**}J64XMA;-NeJB%^_CvZY;eLJ%e3g z;emSJriHBV5SdnPNaaDh8yl;$(at)eI6i3}@BJOsS?c3A>JZZT@UYOM;;oDf0Pc z1h$2OAUavf#W%GfS@iSAZ{$U2II*~4P&1HSF-%$Go>719#JJ3qNa<+T;4SE~)GYge z5+y+n@ID^Q=G(<}~cN&23rR4@0E~LLtc2^6zFbm?`=4*`_i_sh{=Ph>_ zl#Rmb1ZpG`b}U*_|5DHEJUW7vOgHmBt4!zutB~!FW&VVV-Xq+UMjp7@Wyi2*K8+PT zGOt**I_rgBU%iIEy0Cc}kPrXQFO$Be)(#v4*zB&Y>6@^?HBoROg5SR&nNx9pJ5`p1 zYXWxh*kq~;4xJUc2HvsyAzU;u1?dmUK;i0-vTddwcV?n~S#y&@l)@(+07>wpuE(%! zCZp8>F?45M@O#5Q2g%tPGHnHKbGlMQ*)xM-tGs?Dn|FJI0&(z?x!7&3E-#39`iJFEY$?T{+|kZ?%;1#>MsDWm}|YIsXIB^ev0XhQ z+q-MDjmKsliVO7%8$HTEpGvPaWZhB?jfy}*=f&QmaX+fq&$SahLH@q%(Vp#c`!jNy z5ef~?bUTt{@7iATa*8GC{t0iJ!^2RYYUl?}zDEVoP}TIanNJXrC5@!UrTj7fdCw?8 zUAvvqn?2!uF=~evTh!j`x}pqlVwNsKEmWZale?!W^s7LB1n;U?(Yuo7`fS0UTMH9$4JcH^yciCn1Z-|WsQGY!+!8WvIHNuz3!o9A zb`uQz*3@+WP9y?_U?4Lvh~O@POXB73MaaTN>2z}CiBs?hvLUA;bS4kHW)43-3V-{I z1^5y%4$FW2C~&oM#7)b0*gtm)AtyvVRXV%!&mI1SbIbKWKYd@zy9XRy|Gn3-sTGIF z<6|2wNwR$|(H1uE+1Iv!wnX+?JX=d9r1`g73wYw~{jYbbNHv&6DUlGp2rLlt{b6h{ z$ToS)%j(U~jrL2IweRJ)ZfRc@=^PK~MOVd$f%z6}zkE)~TyIbwmx0f>R%4w{Q|eHu z=2ax53xDfCusZmJzHKsLu5bZljySP6fxonfH48NbV@+xet?5XNS*mT+(hhuJ;PD%F zu7V>zeV<~uXPc*X{cjH{YCh5!7S`S`%K`PFlst)fheRmH%ORp7jpGSEl75ZaoLus2 z>hrxm@%%Tj3@WdINY>>5wyX;i%qW1y{(#=fzA%cXjwWv}1z8X6ZKN#g6LIf78XouK zslhD5_TyJ$lV-hj(5yd+b+*qV{=-BDC7)_pDb4=a+~B_J&Htoz#?Faecf5<|a{-#& zY4>_iXjRygfR?%FJiVVA9QbWbI2{b>j}eSIs#JceR}`=kb!unKl>ufGWmfJ!;D?*K zx0c>IrF=~#^=x8!ZOU_;tLV;D$HUeKDBHCx03(3z{zpbm*a%jM8+o2aCUVY%>@`eD z=WdLPp911$c}u&k*$7S`$WItCJ*Gk#-NZqXuyuMJj>N< z-hsEwBAiRvIz7DrT{T^0%~wE@y9f%b7Q9pTH&UAxhe1N`>!g~HS)GMA?;VVuUfbq^dH0&mM;%!*0wiQ)|+fV zETa4h%eS^ZLi6u}jMuoqT}VS*zP!x9IyaV?M_!aGZw218W4c!?H-P;zKJ)!$y3h{iKO8l8DP?V0lu z;SHVd?x({wpi#(Mp56E6pM8udNLjEiIuM*Y)gLc;Lh9>_Mj!@gy)H!BRUMDl0!jKr zt}+B*6*D8zjps5n$(`5n1jT2dAqI#+iYn-+xtR%%<0&V(nT$sRI+5~asW~d)OO(pz zN@$rNJOg=lV>i$oXRK_sn)4;X#IYrH&Cw3uQq8|+z;Y9~%`3uig5bw_#Tzz7Zlm?K zoP7rVUtg1#K}vG;?cKYPH8_<69=fOPmxatj57ODBLa!L!EOoZ9w64aWB~q{@#>_q& z?Ox&Xm-!uJ(}>$1Tj|o`uPw!0qi|bNWNzkNSvJCo0TW2m(AOnT@ete?#x%StrIIlT z;(FR9P{jaNLqrqdz*Ct1=D`4Zf>GJ53C8kyA(r?geP0#ua3-?DR?q>{7!t3PJlYA@dOsXw{5BEKz%W+!`2PGj_-vCW3b&SVRj)mf#jO){;X+GXHWX9E z-GsBz|8C$Wu(#NIs*VOnt$&ZgwmdMUAL2GI<~E>N3Z2qv{$q_zQ+T@5_U$ON{5z{9 z+DDd4iq|OW1)kfm!UO7aZ+l#2#@liI^q?{`f19k z<=8z5)~h%)0h37>M%%=n@_JbK>N*#8_EuicW*t+#o{>ueXYy;cVFQ}9#e2L7YzyP0 z65zqi3hfwE9rF6U@o`@bjfwA5mVW-B^U-2me{TKB<0>eYa7PkLVgLaK7d>K&_JQ0Z zGaios(W7qxBNVZo%^Ly@Ll;2`e$_o41SSF|?A9u@w?BexxwHmwmK z55i;SCTI~hcLZE$(jKBcxwerOzlSO6tG6=pQE*Qqe*XvaE{unxvVK?CmCsxEv&qM| zU+nx&;xazwTC~dK{4iH1iS3WVdt4+lG)tOpZa+S^K(p`zVV0~~7tJEWMMF7e7a{WZ z>-a~Q9GEhq$F<`!X&FNehb9U5HoZ(WnY$&hy=vywIp>&)9xuy~SmFYeva#q`v(be^ z*+|Cp%d))Iha`i4L#GEcdm}CZPz-$YD&&f#Mp)Q6F)>#w9g_xk6v2H1u!^4M+;wpkWR0L^FH&o`s5mhVQ7iYK=&)SA?!sIu|@Bl#8X;hwH~6zcqSav&q8Z{H)#z9Yg)M2Uz@CIz0F_1sFO8&mj3^v9{lD1hv0&LzEG-m{AfYwPKVi zAeOLH*PZ1092atbjxYaJ_mJr?TATwawkxsuIz~7QDH@{6CF6Y*cW%nJzC|6KoV!Gu zlnvoXO!JVA){=4Hfpg4d@HKmUp9USari1&?ROUri;j6Vt#Z^vB8XT;v+Of|R4h!Y@ z_+f4(hGr6kmb}G|d4x8CD$tK$GnwW%jzF+qDqBBx8YS0>~6x{D~rPlW+ z@qd=sU86C1#(IhR?_*(-D5=gyJdv2QgpBhzOlPXy`ly7u?mJeUQq-V z6)b=S&H6z(fB(&92uZQDP*aa0m>Xi0U3;%1y8y9A{3Lq7c@=A}K1ohH zs?LJ)^Ly+hK3kJ)6UZr_nLSH`*o?;#m;tLjC;E(Sq6sciw5)dcg)I%PANxeaG!aS| zVMe8UQ+0osb6=5$Ma~irrZIjB6D`Z6uM=i*Pui4T0^#M#UY7Mh8TM0E&U^s`~F6 zuhutZua-w|U+;a?Q_`YD-7w%kE?{0-qnYUxNf>iQqZ#AYM!7rfA5h_or|`R;!L2D|OuJ zR9#DABdEiuT)iWP0V8*OJ2I4tv7jc*jSW;PKnjTx*`ukCe;8b}NJ0+8Y-IiK0BMlO z+~tF(Yinn--Lt=6M(U;08Sh)^Hge4BCM<)lA__<#U_>y%cU=2h*82}2_vfwsZ1eVC z>FVYc`KXf2RRV^ieiBebxffq!k=Vf?2MVR6{N!9fk(Oy)EjV=1;-cC`&&7-@!B=pW z^-THhA91*qefb_a=WC5?V}0<870q!w{QSlG8WjegE_vQ7$F+@Zr3}^~n}xq$_%Yby z-d!+3rAWg8E2V7-e&ak zfxz*C(u(%AUvr#0>dN4YIgyJz61gv1a>Z9o*?&pz%cUACoWF6Zd?4enJj1A+2fDw7 zxcNQZuX!Efxjc007oYW>9CCje_$yyzeF#!`5;N8twAO;TVKXORWf~#w|D1t_@mf;~ z8R#yvv~dF|7cj&)XzThuRblMMpn*APD1W%hh8{wQKAIuIDomV4`sdpmc|xdnjiCu< zIh)|*MMDmyZ7`{KF$(HL(=v}Cq*6p$Sc#shMH;hDl6&-vm>8R)SW(vp1jgK7C|e9zO`9xBg!n;4by!xIMw zy7E5&S)v(8=C87eF2h*k`HwC)OBr$nN&5YArc6jM?bG+T+=5TOk!M@E^Qd)k2!gUf zo^_oX8jt|6{4H7=BI|1>8C@WT_~cO6&{DH$@Ii3#aY|Hf`*t5K5A};aex>rlcQ_!Gp z`wvP96YvSE`6oB|`6jXbyua>U z2Ngb&_+NVcl+Pw;;I2kx-$v=W^m%2qSJa#gy<`v%5MddeK=s zdmh_cdlPN1^19T!wDwvvF9p}p(I8zAN^7Ls*#ToF(~--7WsRFhaYk}d!2H(v;i4)R z&$`em9cF9`D<$PC*v_*ls0<1l1Ol5;N-U(p{BQ*8ItSR#?=v=MvkNaw$9p-BUFOl?u z2GrML0ESQm8rchG3_cZZ3RPD27V&%sqI(We(oy1mod>Zc^((q?Vf2xPgf!CZhu4A5 zhMJrSZ1~d4Ymw~!2d-+N*|s}P`Aok4eOM&f_H>pbSdmbbut8Nsh;}NWwuL8 zFC!?noK&Fmh8rO@B)rftAJo%d>R_b+!Kb1fA2NdoECNYron2d7Yw6}RDU~ZkfxJ2h z{4<8*vE^IPHOh~_APMlW!s9N+_XxwxZMr-z8PnG$%BCU|bAswI#7pY17XH!5f|<;H zD8VQ=Bx91W^vKFCYP(zrPK_iUHLdkiPt#xeCbVJLQ5ItUpWnrTY9RK14JX7ERmhdr zQ1YTQ9o4d0hqcnd2El=(P(n`~H4J-d**Mgs3L%l;_h8}tC_=<5puWdUzcR^C3nw=_ zC{))2G*|01!3z(B+9Wvy%2gapHH!^9sOy5Dnc0 zA24joKR5a)IN7^F;~dh3#ea(iiG`VBLg`|1O6ndXhrbfDuotC9%HmD7%2fisq=`83 zOLRSN?Om}t%RgVB{J%9<33VIIlh%pkD#nj43#USz{=!Cr%gpxOypCEvd7F7_khlGn z00TT_+vy{l!sk4^7*0_^#TTw>gUwpUEbkY$t}$cs?r|5#IwK z$go7-u*;GJ`nU5uzP{g;Ty>OuTEX`*vw4i{lJyPW38u{Y8KkU8GpA7VQsB@86&{Zx z^3rf|fc3(0hct`3vyLf<4r45ZJ`+YiEynsHW+DaFAa&ZvHqSthp&yl)R{{wjtm=6V zNc>FXxQ+@O0?AV*S2=(8!ytE~N@>(wuS%ppWH4}3L38!)aeMGNKoc0qV(x43P?3Tx zhUJ=2Vn+sRq&$+9D00!Ha96O|_hraK*f6@g>+WS#8S;SZk{SoiBP0q`mLz79p-Xoh z&;Y=Qb9%Rnw4!8|tsdVzt9f_7oa{Z0xH*JyDG+J`haLajR^ga}d#dfu0*?Q$l#;6i zhY~jpHhIQ*h73!ypev!bRq%2jDQ#_SX~^+6N)|`Gy?aUUg@?L=pjD$7b4`wk+mN0S z!VP?2QclHfA4gx*+=wC0(8R!-!6XjX4N z+O0iYFL_}~lQ$-|m4!OQ|{`HaDx)_g3V z=_t)S{4u2~>+-c65<*n0%#QE)xRuLQ4C6cyFDKB0cIpaDvH$a|(W^zV%)yxOhIjkT z{$08Ub_g+T3&Gb+`fF`BeWp;x9wpJPsN}l9p?W2$V1cw&^SYusz++|CfD!A96KnCi zwov=n(}P@P7w>WvzwrtI!CS5Sw@X~FND{hFHRO1@( znS3t8ejqKe6a$jbAA5R;T6MuhwE2mBoZwc|6Wz3C?=QaDz&ea!BXuC`XeI%t`FTkr zU}ljHOf$QR63|iZW2PWns6u4}{C5#y&gmNIy#|(aOa7q%b|uF&~Gd)W*K{~`{QoUIam>Q8a?HBMPZ0jw zkye9rE<`Abj@rwUtk8z3=RB-h5&F2>X7f-8K)?{;2I-YpMt6?shx{ZI+%%Z}J#-Jn zMv5+1Xg-$pDW6=7(Y&l%db|DTOik1yR87iJgVQGxA_3^*?pdt>1U>3cdKk-TbRXbk zZl3=v=_0Vtl)BQ_#QTtkFeNhLhc*>a*zALU;>>@q=3u|OD=07Bk02&t&9RYpoqBw4 zYT5oEl*=487R!UT^uXCUahj+rgG_%AnhS4Ajs3XyyZt;hSd6?!J9XIU&MmOjQZD38 zhGYUCfsg<<6k{Yp{uNKZ#=Fim9wU~Z8XmSDD20Sm+L6`2aG?60CEMP+s%!2UK3^#_tK zffkH*b18MNYG{=Hyrn~tnunyNMMbHxr2uybRnmzSvcfph3lqd9A9Ib-a}Pg`l5YQ& zB`uSPIiLi~1xoSa9lz}0m86<33ojqX(uBCyeM^@yZtpB%1>7(j^k$C_Jz2aUJeC(b z&l^Im^ErW6v>)o~AAG3_#PkeeN{3+I?M>J;y{I!yWSgNkZ(2Ro%u-4Xaia8hH& zCC>;c1@?OAjT5TQ`u-A#{KqBCbo?Dn3mWJ&>ExVqYS$zp!GIE;^~|jsptkozVKEzF zh%q{f6^OUk%3$7qqgQe*&=0r{sTyzHyMHA#K#XgkC&)J*_N36@7c&OW%o6u&21wr8 z7Cp>b=4x{u*zs_Xck;PTX>jAmQ96JiZj@6m?9o?@a4^O0qTFM1Qww$X{yX>QyFe*t zW4SuXG&*d$g~22Zq(qp|6<0}@ncbDgm$77VZtbnj0-uJ6Y%j_s{)+hU!Q~`%f&tOI zk3tajQKI5?b5<^erl?Dw@Udy1xpm?nw){8|rIFp%L%EHc&YDGp?Pry>&vm3qTh2NY z1Lo4C%L1e6vT-c4GmpxP!B12F5NXcO(GnD6l|+rBi_xOjfHa_`hDYNo<)O9;5Y%dl$mSXC11foqLp#lsmW`8NxFrR7?jUkjB@d@+K(%;{td-0*QVh=y}VU^LVdm=`W3a ztu^gcpxyVEA>uBbaOWNgvMK+Mj2%-As2-3ruih8_SEA*R2v=uohBlV|QUc&SbDukL z)%%+=vv@hh-qhMzT9RD`;BFa^HtdD%Pff}J^V9*9+}Q{*-;olTcTk0^*$ZV13N&;y zOp62vc!y7a?pPOB>#5oQ_}VN-M^PMcx9>sVhheY2rC;+H@^$%*#j9`O-Wtln#UWUx zbRCZG3Fc@tS}<6BCcK8tLN<^GZ7TYFoJjp$!IiKhs>DeEE<*)F?dPOERQpX^T)H960nrk}-*p zu;xi0y`UWC2K%j;6b+B8V{P#pUxOg&IqExswH52cRvv(#T@Zx(}{Rvz1g_#7C;AB>3HG2Adx`Y zW)9DkcZiQ6vAOMT7$OhKg-+vv*#lcEEqq)O&<~<|tk}n(>xCSVf-ttT_{dWLwC*jo z>LQ8Yl)gG~(a@O`5A5JOMTwL*Ue;XSZ<8Z?1212~M~w>OVGt++uH|s))O+>vaEpSZ zXM9uZR#lxi{!$iONP6h*Ni}sA1nQAQs5M8Zm$J^IW>*Mx2t!r&V=myX$ef$Fe433V zr7;s>$mmL5j~e$yq6c9DA_-V(3|LsiEb8>Ih^{*i)6b)1t zqhOsrhmi*u;PDaM%|m>c!Ix3z*#Q}0o^#gGBD?Ky#?)vo3`)M;@W$j0%8$9i%?x#| z=0JX7WMG~3RYQ8ktsU-1h1B*aZp)PDX6II^b>pAutVD|*LaN<69Siis? zA@W7l{?uos>%*e`-0&E}MVjyPrT~`Q9`fa&Kliv4_GqgFsbL_UAr+&9P_|1X!WsBP zAWj`yxFz<@RIcE4Z4<-wtd+O7#wOoo(L~Sbw}q{gL0G?O96EHFzLAi##bk4&K-+JR zV84~mGWBkie0Q>X3|{S@MfB?ZP}jp=fYSLV31%eNw3QO_?zGgiDtUMp4^2Yx7d9>7 z`qT<)fjpZKUIz2RnP(Z{Ut}+q#aEj&0jXcWkR;+qRPqE4I30 z+qR94ZQHi<)%)FZ?j7|9YK&*^wbzq^nj)ViiTx|1TU_EVBYcnXz0^ zAQwqk50dhu;+zhjUZ*Lgh9 zcyH1iTeLZa1$ zGqlA)uX|{J%F8iM{s|VwIBv;*5dbI1<;0DIWPvK5|C}o&QD9gk?hG|4?Qq>NxT@FF z+Sxo@Rt^E;S@2v4z*7JEkS1*y2mq}2_22a9sj^dcIQ45soG(Fs4{LXG(&edsW4P#e zMDz4iCk{PKj zr_zMptef@dVHydhZ4Z0@WRiZ1Y=Z z7o5l@ydgNg2tw%_K0f4!fW$5JogCrv zwq|am@pSWs-)CE(TV_JPOTL)%UEb%{&>Rw!pvUody&%I7u@!~F{vRhjO^3&(Cn;)( zs_h1bAQK0uL^y*=Umzff$!TgIn3#5>n7^|twKckU?{Hn%e5%FzVjb0yPC1{kDEb&Y3rc{kA8&qcT_Mg_{CAAuO=Bme8p=~+w<#&ziheI4thQ@E$;0P~%Dn*&M*P|kS zCobw}UuMs--lA78MOSm1_Ft*1QXh(P>gR2a@>kb0-lgPS6dXC!oH;Y{DJ6T{#gg6&W}7HIe# z?KZbri4YV&k2EPf|D@9=+!}Cx&ptHd`cs?$COkv*y+hBS^EKi$!U6We0@{JQ=`5@wdNS2myA>4ee)= zbcf*=$`%{y)xQuzJKRflYCl*mM-~p=mg18s8k}0H4qX zEt>o2?}??Ut8DpE)5E9z3yJO5YPQ0Zc#A)dJty!*+xy#ach+4TPbI%}JpjX&0iuFu z_V9$PvUrzzn<14y<%ju*j1m!+^|n0hILqzKbnEH!LHcq^q~ombwS|a=NHJGg>h}2P zGANy$_izM=X&3@0JLdzY$EuYmii%?j9bhWH5Y`^%#hhW%mq5C0J$vyYzbIC2)|3`% zC}CwpQA;Su&xO<-#dG*VmNQWU<=6#jmMzJTVawImI#zZxnlfjTvsB<*Z1 zg6_ka`S-wzS7{W!IeqzR8uYYge|+YM(_KMk2_Cl?#~iV3Hk7Sfez<9W$f%CZ4t?fo zlFBRM=-57ZFZk9S^YpbeT~}c$y?f3Rv*MPuwlWb0aFl;vs#>s6pv#X?C?pxjf57Wn zFr%yE4Kh4=&l>G)5Ad<{_Jv|V3?))ms9SSWqV3RQBDj{F9tt{pp;2fQ9{z_g>6A0Jf+so_OC-|fZWEKKu(eE9Y`2XFJtXm%W~6Bp-FLL=$5)V-^uUQ zmHl3^_5z$x^lCfyOj8@jUkwkS8rF<~DIhZH*Wy_eYNn*e#KZJ!2XitBHx$B~6tiUrf(f703 zmajA{2GW#7^RWbJ!rToSCVolK_S%fgddzXvjQI2 zqN%jre}=*c^u4k6mku_&+|-jBU-PJF_&?0jTtCcvVwQ1N-2ZvMfK-1S|3hXTr~k}h zz@>+Re~FhQd$#P{u)T6)Q(5DYfTClp{2V(HsBkncA|Z;6{)y`x-3Xq70;-gDII$%& zpVWI4SxUL3Gg^B?N8V!_aNqa_P&@EhD!0Y$TY)W>KDVjF=*@V9%>I0*vH&XE=N4O? z_uECal*RC1??Xkzr*QE+*%hbi-`v=t9!L>HVa4k6LJe#sgJdTq_`tRFs!v5C4hl_e zWg_`sHw5yLe8$G^KdavuPo6%-&&u&XQ>($zqrt90N%Mv>u8rLirM7$OcllI`FM2h$3qnjeC=oN&>^_ zA08VracCGCrb#J)tfG)n0v5)KeEJgEH73}(zH2|yq?RM*n|aBcS45F1d>*1K9%oKt zi%~Uj_DqF^R7(OS&mF-ivD`iSzC63%gf>vAFaCtr#A7rqO{vgJB!CD*<~Ep^q_d%i z+XvZrk`$a{7)(jQ*dLc34=p8DqIgCHWf~wR0yUbk+_M5nw}GZ)kJ{Lmod+!ymsq<#5=dPx-NMVUwt@#@pE zBzv&+ytV!?$GVs6CxC=-2MpabCi?%7AaLKhN7n=NKA{so`494AH;Qo$x_TCC!1GNs zC?GHyV3}>_rbX5D9QBR;@Lw$8B+YSpZEwPLO>VjH_A$IU83ptLfo>TT%798ne)4U( ztv*=nxLIqH9BF#OOiNSy_oj37r0-RE;n`%l;zo;cjIw~35*ChRueAd=%U4TpINQcK zT{hju;o<7aN}`d}q9Nr}wavbb(ClA?&RICWfi%&YKrLQ=dCFHh?TWQO-jXd27@H}cQo-Kn;o0*b zA5q|g6Yu>vz3l&3-||iWh_~acM)F=8Yy4W>nk{W~JvSSLR$SaM@Z`?7u;AYG6Gz75 zmbi}#^&EAL0xPF|un^qlib6&7S`D~&w$w?9s4ZUtWk)E0T4#-(Z?br^lh{X;$B0te z$p#q)Xd#a*?vOTYl=uF{#`=g&Atc)4JR#=6A0Ig{LRIrA(`I8)o+U}2PlOvTjp7m}Nzvryw)-b9{WpkQTHPSuAU7rGyI?l)}~xV&tQ z+n*^wKud)t;W|#5;G#p*h{ll8)(#s9;$3#6r-o}atq}=Pdih{^&S}gvrKyt@8fLiM z@<&0Tow0a&Z%WE~my{)Ra-YyJaEQ(An`Q|j1@k=rZ^_YteAa&9yrKRN3#v!99V}O& zpVG-ME>3i`gJ{9Fda)Gn$aUQaB@et{=!^MtjE2fa3wiD-)6aS2qA&pp#Ong$Wl9Qd*&KXYkgQ;7= zt2l{G+K29O0`_=ZD(X8#5aBS{voM;?3Huoe`I&*rc;&HiJwfVrS=VRIw&BzT!K3rYr`p}_>_7;ctq zANe$F*(Qf&zb%)6$4|`v#1L~1S`8cn*s_iDePQ|SO)&orQIxL4?O~i@eRg8t@kdym z_TdszBBLqb3Ns@lhwBW>s-6oeOlvMlKyjBc#S|~g@?e42MIrgR@xfWf#UuXh1(A`1 z;?ThKn&M_4%$V}M`~!ivq0To9aO|mZC1#2YJ6{{%CiSMxW5s`ztK~Theh?anB9t1i z4ssj@Uhxm=3^W;m#JJXHz=DzJ{ZH)y(vu`1mkr$TyVBbMX>vY0@r?_zgO98nIUDm5 zw$3(AD-)hyR>)d2v=F;9HaaYo^#`e zob!J{kU9l{g$$gO9OqX8DNw$W6c4nb=KzebG-wXj+XfXLrrUFxXUgO5A6fuy^k*IR zH4?O~2-nBRh==EtOl?-I`SnGKDNwCZD|_IE@o^#emjhIU^LXUrlG=N8|0ec_4*q+w~mJ1ai$`Omg4BrWT~& z1M-)Dj)Anbg1ajxsRaKeb|4<*>Zze!k4*ZOyS16ls3UJY#(h5+3bNuQEX`^ti7GfIB6J7vAo z7Jm2;IVC_o#C52!!7J4%XC*unvd;~=F6vYXUxfv~ViYL_bzLK{rhAS8z#a1e1We+UMM%ru?v zM6&ZA3AMdTWmi_x*z2S+3m+qh#c?+=(86N6{Qx`k=`B*1b{2-VwNnqzN%~{y$Jk6L z0r6ner-Tlws{j_~LFtDE6CIx{#`h zDeq@HHMeN$Dm{~cV5YnogPI~xdlg0k!2A{xsg?K*a2%3v$|~ZCdd4l!VS#yo4FF*g zoH0kJZK22ukFa>hsEH}Vns#L9?2D+ss*~k{=P&rfupKQSPH;$nMOb@1aoL8RA-dM( zMl~Lx)5NbuN`+C8LrLPqf*36dd?neB=nP}UkR5*t30M4~B!piKBL{Di+R{vdKHCnK@qWKHVhL>vwZ@LX~KKZM%gR1r%xa%JdBc~4hO624vz_(UHQw+eG|62g8poM>OJDo_oh-tv%76B zYy0sp`c$y5zhK&$kj~9J)$u;~<%ozM-=ImjkNb_9w$D$4sAJq!VP5+-$2d%rz|<7e z8HN*=IE7O70++cNIPfAuO5($fSuW*p-_Aso&8F}04Rxwgf8ay8AVOcGt+8ad5?gN( zstMaS@;Vz`H_pF)<+2lg<-Aj25VW%Cm7js_Kl~n6{M!Vh7M1y7Gi}uRBHf*T2Ateo zaBkEW7g_iCEpD&Z!_0;H3IY(dh~eu8NO${Og}8MT&T6HDba(x$WnOnc)e-WR@Q_dw zNG}?IISiAWD)HvT*RN|Kw25k_SoN8ud76Kcl4oXF6u9vFIZzwpfk%WhcnUtLOgtJ^ z9`#z`n+0KPBE+Gp!&Hb8G~eGQ@V0~)_8hBJ!HdUMJt54Wne1~k;OKgEkL)coldU1#dSjbjC zNrTlqo8S3yj|M{3bAzh^n=5OFwWSq z{?oK*_z%L?7{@gI{z54GlD&e0J}sPT%Xj18pkTj1d5dVG*2ncU&rDw-UH9vYX%4H0 zYC;7wg=6oe|BejHbe$r~uq{V4pb6Bg)o`d02!6#u_alL1FJZLw(+%BEEwC8PW$#cP5 zqbg}Jv#%4?pm0&+6)at?8WibBk50Kl;;NCHwnJU}3Qp=L%myWZ`O$I!=fHIxzm z&WnB4dJhvSzp6Frg4GQiEB{^St=?8vim7!xg~Idx!*OXi1ErreK<#g> zG#=P`O}k8SK7p>y!e2Z9Z-jplS!b44*uE*`__S8OekXTo=iKP_@_ymf`P>>49k$Rj zPe(gSo-7+<9EU!GhT4GG489QXu3=a`#UsgW5)gHu0Y#AtGCSb3p~17+^JD;Ty~{%h zVoJgX&L7O}B>yeFFK`N`qS?KnzO5o&|6OH}fw8}h`YOL88CT3i{9mT^5UdW6a45}! zSNR`47*GUI3zqv@{0(s)a$*D_({p65aBY(mAf;L}!i28_>-GcPl;sCJX?EZ^-mG7) z-Je3iV-Az(Eq14Aid zajd~(O};JHdm4UD{$gTNUGX(um9j&&_r0q9?4*3R6xFX`1=fS-W+njx)Y@|*S@EM$ z)$Nlrur*#Bdp#jNW=HJJY@Hv) zC-cd?BI@1~kuEEMU$u;1t4y;a<^o!~LYPA5e~_7ft0n(c9MC!dAGhzH{7` zY&$^?mj~S?ms4AXnD#{E2%FJ(=F4%%+)cR_t4SYj#gCKORp|g=FMf3g<@}5GOWRzg z?@ev&Uo3z;W&NHizl)2bc2h5<?o@ji zFdh`jm7)z{SR8DY>8y_|q((E4+eIu}XK{#6=mDq%9AHsb9c~YU7L8b&1S*I+qyl4n zetQ?DqG``TC5;!-!lrCjK7|7AvDkbj?2q?H)66<_FX^8;m5Gmg@jVD+z#EG>zSD-3 z?1Jz5k;>sa=&Eks`@9(}Lx>O+Kt=lXrA>moNO~)8Y8))~jd)W~s${ zt;vJHq2_BRmJ$zx=TEK9hFcUDGRz zw!hlx_HJc||9Ti}MAVb$`qbAeW3%X|y~Q|A1O>b$TQBgkmv4QVYP~Ho&5bsDm#U3e zo;W@otv*`oh|<@A{>mbY80rr+y=jox7!}<(ab?SXInnaE*=u}#|7-2;lR9NaCLpRp z7HrXFk^{%1)mE0sxQh5v49;=zeKGVL$_Hb0Y>O$-1!mieB_^}`b;Y+z09jK82Eql4 zps zt+|4%*Ecg>@1f7!nmK&>%xLR=*KWj4u8QY4DoL3OIQ4S5e|Og8Y|d+x*w9ZF_}p3D zSV_Vqq=|#m4GAl8gr));5Y)H1R~uMNAm2p$aFvmHaAIxnzMLYXCtF6?8_GGnnV%}Lp> z4z^mGaz9i)V_-5)B=Y(Yh4(;_zph+wxhegs%_9`45DrO?d<-_@qU>{a`tYWNTC==? zc0Fx57=$1NJlS!TEJqFR9HH|_V$FG;e`i@oZKVbFXFHvL!2bh zLoRpl%aGAxC&CqHygWZ$UhI9nktzA2OYvQoGtqoKF!}$>t3GVp4T7|{L&ftc)V5gpx zP}t5kQ~hoj+Twu*Y390O{t12Of6J(^bPS76jt_~af47+$KyJG(k%?N?yF#Y-qOq&p zSq5xqn?c|iM>j#}*LM06G(ik}YpWRKBgqXAvDA~>ln3g(-qyR6^Ir^u0;K)>s^#JT^rC+x^hI~G|c{XV6p{;FHF9dFG_M#2n@~^|Ed@Zv=kKn|x87JIlMzg=`3@!z{$Af5T&%SnE z5(^;L@UE&6JOy0=0XI+8o}Y4X6RY_S&!06-?i$2iBVxa05!hQ2tZneta1R@>3+C1VOz%fy*Q{pE-R-5Cy$5-)Yg!@+_WJAAKo0Rg4d4Be92EpTouh0_tX&^@09tK_@JOH?jYFTLo!7{@$dSyrJ@y+#__VvD%5ATa0{U$)2dgWY zWtLR8_P>zWkJ#J`W5MWgms#gKwD-Y(4my7q)&1?HwA|anNum&}+l!iDLz`B6MiV5Z z4P_!Bep)BzQ*ZIRdD(a9+em?G-CrctD=i!w<8WQ*8hW&<0kOX^Y0aFC^>RnPy9jNU z-5(`#Hd76C9ZFm8&MngBRnmkZw+>gHp!f3!q`5XM(?fEwH#1qg_|wcB##>&7v7Uxv zNjS90#;zB^d`cLj97g>mn7Lr=i5B?$;*dJC7Ea@Ntyxu9`=@m1V`vzc zsU73+okE?PBK%86D)DLxwv zhb-gmKslZWf4c8UpW&r--FANB1fR4IVmMwg7kUObj0K5MR*!0C z)^8Tu9;CC&KN`Q;lfl_jeB|_Md#s^p2p)bLx@wUtq2(VM$a9FY$_)c&jKdN1iJgCf zrv@pFQPPFxeA9t#mh7MOVtPvRa;oCSKNnn|!VD)nsQLoIgunMAu*%^f%xcivJ1nZ& zBbiu??G!40m;d&wyj>uDmrxYZb$+u4p*J_y(>ar%n6Zx11_g1MMGFEW4tfJWE@TLV zT@@fGAxP925>~b`0NJkHyj4@mnY%AP9@YP1%A&}d7( z@{-{7rW2m*Cjq#T$+&+2{f8J3Te7$V!qh38^Xdp=Q8c|Rd)^-oI~<)aqdPFZGu_Qk zfV8r&XNE>|zF%EjSl-<#b3cg5E9$r^eIgpKU_Wfw@p0w-_fieeZS(C@UGjPUpN{PR zH$WX=n-%Qvy@!kTx7=NZa7dtXzQF$YeY@TAXx)P~w}>I)ct0B|Z2dh#%`bq?~wy#F62Vl=IhXlRh z{)(jY#OjMMqrF#943#%w{N<4ZehO{xaVVzm9Z+c1&8No6I{U2 zP*9Okh@FnOF;8`m7(IU7^j02ly8u1Vt3I04tsW1z=0+aoQW|J=i*uTSBaH=&!BUkM znVIKE75Gl4r~{|-x~xbdC1trQRDvKubbZENWRSS$pw{RGDfoWQ_-%|xbrHlT zu^L2QDA6I$k8fe2{9dB6Zl5>P)HPEyCJKQAMIye!c3dOjn+4wlDcjIXytPQ|ZTRPR zA6$byb`Rn~_jnjM{wq$sjYDu4zSrE3sjSGBZEa&|ax|#_D}G`9Qtg)SuGtLq-X6@NxRxR)5tuTdi=^m zB_}dOB!o;4L~MEfzFo6;L1IIl1F*Q)IHBEYLFqA_^2M_c#dG8*|1es?+JJ7(dhVHP zT9BHd3(Sy!i;lZ*?db|>1tEQah~Z!KQy{npJ_W0xkxs13{wrdon|u#N2(ApHrGd43 zX)^6N52vE3tUgO`E*F3gLpH#xTcy2?#i;hzhg}(Pg{K<<4$?FzWw!&mA@rc+&>QE* z6_#4aEjc6>nx2fO7>(sxq?`uMKLjQD1CsnayIc)<*KK#_Tb_W*Qa03Nq+X_WdBW$rYSK^Eme3)&m!(Zms`V`^2j|f;t7>v>!L&SbSpAPp?t0*YuVDCi4K(N%(2w zykfdzdyL2bbLZB{fg<%}etpmWp+)-zS1Xa?uLC&N_7Bxnf$o0L8bc->^ynVwZ9bO* zQ6IYVq+pXcwas*ZbUGzDTN*~w7C!DGyPU-n1E6Gr=!0VLkq~!m#R9FD4>WeqGslK> zo(&{4;-OeTiHhjSz}C)|HcbtsEJtB>d4ZQ6Near8OqxjyGqozs7ebQ~x4@>og+JgdI66@rs`Qk$vO7Jg*J@p! zI_CpHB7-F_bRGlJ{FnEZgbF(y6T{6YpuVO&Lk`@pMzHNRsUN*#BerDF?=;HLi zisI!Fs$_}gO3Uk=?AXiIR{s|Z*y7ga*qh$|lC!gQ)m`g;eOrAw;h=H*1>@(~+tZX| z-2Ono^(uJe{V|r6^B6YN)6P8Dk%ZhC9y@G54B>xwtr-N7=~u`Si&U zyy-nrefs+KX{^O3y^*B8-~1WuQ9PGdWLtCfYe)YU`HC|nD!5untGMx;vt+eD|APJ- zWQkfd4Thp+P@}r*EM+_=_qOrxhe=sV`V?@mHrLjOajz=;@Yr^+Dsnj=0=R5#S#y{c zJhMzvt6CgoN`j(W+!A{n+8XBjI%#pok)%*~=SdM%RDtcz3Yg1&M3Ewx#@ULQ&C4uG z{cBDJfnAonswvlNzJ#d%;W_{!3~VBhcOMnkD6aqeF0yrCn;nSIu8(bvP&RI|tT1La zHtB2Y!o}UEkgMHBi5z{It3{ADBr8QqA7QcZ5$FjKDvl0*3B2a4)W?wJ5bP^wbmgm_ zdsp+JAU1X2kOYyDE?3ivV#qM(BBxQu+^tpVK7)7j>pP39n`^2NFSq!>83aqpIfcTB z+JoAZB^Izs?3d`I&;)gWeg= z=d(dY-?Xx}luG0oJ=t;2wrW9Xm5wn{V#^wB!WRly3nlfKJJp^It2`CM5@P=YQ|u8a z1qdcC?Lc?Z#@{i_U+OW9#UDelgk_o3F%$_@9m;}9(y+Rb zT$H*029+yt^kCG};w+Cdk^9_kFiAiPHp$!_bB%Rj`AhL4nr?V!7s|(A^5YguqhWPz zQ|&H6!s6uyNyVIP8X_AlVBfR%e*~EBH`sam)$X?z6aL?_|c??bGJB_Y`r((nSL2v&H$u)ryFuw+e!W_T9O9dB3vxKm+Z~ zu#Pvi{pho|J~H2`Fynr>LLKY(BtbkKx2<8~&44lTC=2*e^PMNy4(Oh0_j!M1>F#GK9!D4`{1 zdhmPiPU4^yBeqnq!o^5SeNytB_I~AKyA;d2?f1 zTfv3?Gs4B^do_*O_@IAh4bBr3Up_g5SP(8{G_x7S_Tn_ViAICV(%QinyaKx#*RY$_ z^b3Fm+gnl-R@bw>vX@Yz*7R?$L2|rQK~Ij26xBiQFAymBm8Vt{!g6(QUYMue^KokNBXhd6EmYi#Z z2#WtE0q=BN5;^%ruOCFh838k?{uAtog(6GxfM{iqqIXp4f_P!IvqEY_a^xt&>2{u zwsaw%%ipdTm$5DX3jub38L|a(Oh_YjH_Q3<9-Y2VHgU^^k~BT*vQeM=t!TpyIYPl{m3S3{dodR>D_;#oK#L-Y>VivZUj_kU}nWhmk^ZgIZdLz?dIL8D}KLT)U zJ@Fy>K!fxlVLWG#t($x1{bT{W3LiT8uoVfoDQ@W9;RwIJMDISYK3n;(FRG{a`G|m8 zo%l4xu)dSZ1aVoQ5BE03czny*@qr?W7_kGhF|oNQdM`2U)}CLJCMXrbp`RYpK85AC zAGsw>pm08`eq=C$$+>ASNt`-edRdeebE5?eR2GY%>nJ9k8wj*>laRAD{3!)!fU~T&E`~qFo z^9-_0)Uv(j@}Guyn1KcFt#8Nsb{YC~K$);A^MU~u%_?7c4jnSxOs2zDZ6gPZq3Jp% zOYpO~9@1uG9SpiH$h%2@-k@ek$mQ>cmVZJj1kFqic1?_RA*`1Q zPHZUTFkjn3;l?TK;wDO24A^9Slg?qxL=nuAuu{|C@+g>aMx0V%#e&v_4OyY5EK}g1 zc57CMD@~o~?>(e?f7l}gjF@P)+XG@p*_KAm&IkFyM~m(R$sEZrN)l;Nygyq3ZcmM0 zk59Cem9S+nCf;UZW6-qMaiKhJs?1chUcIWv4}7Q5{Gj{oCD50FxFB7z>7)QG*37g7 zw$+XG+55@ng;%(2;!HiPSXOkDh*RE}|BfR_Dxd(qFK}5lIhKFBG7-oCTl?=dpn6`D z#*L4|Z`PwwTxsF3(9)WJi?S!hQ|}Vo=RwsV=N0Z*sh5!vIvYJCuSfhjbHzWO`adCE z>86hW_dsis2LT06LO-m~#XJvQ0z2PG35R)5FwUN;yPn{9tq1k@a04CZQ?`FMvKdJgf8xITd3zQD{sk|__!=4Fd%c^$2&ZEik-qP@4syPh2s z9v~y|IIjfcortp}>X#jEN&<`ADYM{DL`@dsFxAMeGMHQx=+lK zvZuwHikAg*numlLo&9)vNcFFGSbsB$`2kTn-Q#sSUm>sVTd#3{ z3Xd?T!C!{iV=%s24Qpwj~e8N3t1uOC=Pgf0<>ZfSHxaqkG9g5U5Cp^QL{hyJ47z@e?=~v~{FI%jx+O&V<%LauVVHt91+y5|X1qXWea8KCxV3O;|Nbqc*C#}7pjfYQ5?T>u z3!;4q08tVRx8pS`K)R(gh1q)_`zdbjdkYMT(@c&lwdV&4IvltUt_u0;=tsDIXPBes z4I~NTQP9uQaQbpCM)|pLHCZ%$C*L~4w*Bj)fXtS5d1-Z(#IXeAiK?(Qw`A}@d7wpr zpo?O^{R?Zpi>Uc!jtlI&?CJb_r{XXS?yT``g1F+P%cZpdC-ntDnx7XwbNWccdx&a- zXBaN~DCD;WMY}BN7#OZQ5$L$6`5W;`dn7W>I7jY_Ut}DX+Lf0WnO{3g@A$LH;Fn;Tdz$u=^<2FbV2IB^P31<2#!lm(a>iPO?(-=DF~!X%L!bS0fTWlG zrw^i~HEn&K=FLsE0fp$u+ZnObx8n@mMhr1{P4rSKuL2u0Pds{)bQm}>@OJRJK0ijy zg(gY$Z)Czm#JT6W+{X(2CX+|NM6W)bajmkUKfA%g&z_;ecvh|(Nbea<`d{s{p9%f? z%(DBtx_0{Z;6iaI#jvr{5HhVdq&nlDM8cQ6jO?+l$zWB1J3UEZt!@P>jPvK0mTw5% z`FLG#s#;r_rXOu~lpJd<^g?1jQm2jMFluPUd3)m8gE`FL7iZhQ;#Mj-$orAAs6ayq z`TP(cNJ6^JgM3({-@Rag=7|)E(T|!-lcrRzw}bLZ&THkTJ72?m<^OB#1S}wjph3QJ z4hX6KaZjxD<5(z)!ebxEOpP|pe2)MpT3jjvw0;uSLAZUJ$|}} zWnWi&(E)mxzt6(zkC8cAu%F%5bkXXWbnm*R0qcn{MYhg2f0yGE1T>oqp?i?^^deI- zB(bjM=dTXIiw%BV?errSyY#O^tSuSQh@vOl04i@wLXezYo1gG#^9wN=3$DU4=xLvy`X{UZr)8Mhs(fg4op|3{$y&#< zzYMK4rJr5`-B;kd7Bt8~q*Kxoa|>a^1yNH=3Q5vXH0=3aJ}Lo9?@7b_~a`;3p8*04WyibhGhR@0ljm~!BH`N}?LBoJ)ii9HvD zT9*8H>34`PgEh^)gKZD>|jR9mcGII9gn8_%CI zU)Hz|w@E_FUK-TwfF`S$EV`=9{`oN#Cz_QfPT4EMG`s=5nKEWIFppgA+=m3ct9R%1iX05^oT`vQf(x%maqweza-S~sDWV1?ZD z;d(~*neYRsn6O?MmN6U$X;my68Go>=oG=q6rZ9~YfvOgqT>1{xf4I1-YsZJnbw1Oi zt?$j1;j^5H|M!)bxBI_xlfC{LTmR2EqvszM_vO{u@{riJn=PR3Rm^cKVd0};&uIr` zzjR8N7T^Aj{n^dz$`*oHR85e%G2bSwB$SODg*tx+gborq=AbaV3a~O|ebv}q3gd#m z-xd&W8OUgZ&x8JMITIhAMkjx^_;nb`)_K~{)YP<4_WO$iyr}oIM?eO3)xs}fq7pMf z_4^Y1qciWZ7jH5XvPc6c5-n4#6QWJ52t8HrS+=Y>FEzDR-^)2Lqj%}^N!>~$_Zzg1 zfS_YExIB@c;C&v<5)M2ST{OaAKPbN1!%uJ9?@Ou7Cd4qFe?p_iB_|7&;K&|bAbj4% zU=3$SQNH6%Z}Q6U*Rodz%jsO%bYqyG$SXN_&fw)p}aMtKDGsC&M)%8{m_F zP`^X{=dalNH(0Rn`EF|kb{Fp7zEF^E0%AK^c1>a{+*{V*V3yH}xV2>zU#Zw)A6FOxPVB>0E z_Hcl~P+1Wc8_mtX7tB2>XnLo|28H;PQcqC|&c7m!YdEcPsD%}*#e3c9Y- z$c$kxH>a*lS4cMVl34ONl0O-z^VKWnd~Ws_Zp1))Hs2xud0QD5fb&m23$O4)5t*?? z9DNYlv#f%4hC;k?);;hF8dnWrmL%1L0_&3u9iGMo_nMo#~?os0*Z}fz@Mb8%Bx7P zYLTSHHvR2+KoALA6MO*n@mq{x$(_a$F-ODr79$f)t);=NNPC;i=kc(IVm9jynz8mx z!BEY*AMX)~8}>Nbl&iz~w}+HCdxd=ARvxS4?7T1wbfLr#oP#2N(MU*77;-`;2ztaI zGrv5}I9#y^*=IU`+ByGV1>cv=;Dbs(U-zD}V82je$ZDf}fG%S)6{;BYRoM5i>TL)vWR2WEvQ~k)sgr z)7GQ;*^%!C(xPykf7U`qMOw#ECch9fL)0e2{hS=Yeuk@Czz#W04ExpF`X#!Vtsfoz zL8)Yv*q&dQhXVJN&={!Hc&8LHVA05M(0x=54>jVf7~xt9tB|d|42va_ZUz_g7L_!h zAy_1!CYWvc9{9#RL8C`>vFtX!r-FaR_bnmIE_Jr6e}FC6KC|i))Taxfq?Tl;n2qD+ zY0*cxHYj2$%{9*uL~7m}Rl=k#6Yl@GjKg~{C}2>_CdZ7n7D*ln2=BkGrGjgl*Ztio zoef`&uwgM}BX|r*_wdGicxRO<@^L%Q6a}&GXNm$Xh7C(6fAyCzp5)q4K6E#mJ>DCY z?^3OwVe{BUX(c{VXd8aQ;QbcgFgDT8JRuI9;R$oB?7QVYQDl>KUuZOR8VkWe-1W8js_Ko5DH~zYTIqW!;lr6O5lA{FPk@JyMp+22 z)gB(3#?Ea0YrAIcd=J#~I@YcOy0B6v4^aI)=BK6i9VPJp@g%b9(Culj>N}itoc{_V z=J0;}pO`ak`Ru#>z70rexxVeBzGU|;C?Jbq#L&XZ>E4{>4KBsiOmnPIMDHa0)UTq7 z40&*tUOeglMi&w-gh^uX!pmP(Ur-}<8TmGb3aEZAQ=#r;!btk@4^<%)*@hR7N1y2i z8qL(t!1>N2%T;MU-@~ig=!(Tg0^6h&AvsYVidWktvF>nA+=>fO5nxfNCpUeW^0MN$s9>eJ|;9zwe}K(6nCb-?PAATvWH z2D@_#Vp>{TnwyFzFPNnl*2}+1ll#p^?rPQd{~%=t%uD#ojwPqXzuv`kD|l)Q-af1e zgfLMtehY}(2i?>1+~e!=X#-qtckV_dCp2xh5Dfre zSk?FuQreeRSYOcxrXoUD=$=AuIj;L+`6_ER> z-2%hW-51|F(aDI8&9`S^UB`9R)dl6&JUvF$(qFmc{}5GLZ9a9~Y~age(OG(~mTK&z zNCh*>>+_4FOau+~K;!dRkGEEbU1S61BuTu?mbLo@e!`w3HK2x#n;huhgMHqT4H z1i4kIDn6AX^C*{Te_+TK`i_T4xM>-Q)J>5O%Q#+lSJ5owLu)(9ctvVDBF%;9^ zUzzI%u@PUXNrMI`me1Z}8B5V%zrfO4o#-nZLcW4U{R%-dN;qyv)^{MLGG@%7` zs2XL^B;7SNSTv<4Dy(0EG=&zAkVst0Q<*i*40kXzB1;(7{~Z~6G83kVdAUety=#B) zfQ{9Jw-0MQJg{HE*8E$s_8cS87pWiDu~He*?E!s)zq{6xB`6$w9GwJ?9JTchyT0vb zSiJj`F%I?PG;3Y!s&ag0a9>2l!040o0YURNA^r!N|7n^3@HU`7Z)oaIQ-AS)9#NAV zn5H@lGb3sD;g!lRjJ017*6XSL6;%@8HLksD(b<&NV~bkE;qcXcDC)LS2!Hc@8JH@=JXpU5vQ>Qmi2cap<-744ywhJPiwwUv8Y4;9&|dPi4fzfQ7%$PBfY z+E(d_DvMg$`^a|eMNzn*H+U?TBJdsBH5co@$158Y^6;$` zkFr09Qu_Ym-F9Tsxx8>P5x0Xa2t;;2G+h3PIQa86KkIbW{#%c2ZUK3LHtqtXG8OK+ z*SE(W%iupQ;85G7IdzL-nl4}ijWNW=-ri_`{anYs{bY6s1V>psCgwiz$dNyKlC{A3 z0=#{JU8}wpKK=mmJdHonDvz;&XV%lNHdka_w9yxEWA4`}p{=W?NupJ(-{o*hrFaT} z!$Al~C2TZvMedsq4-OvYm`_QyMF56dVbXorDS+77!$dfXG9_0v zir%1Rl6wa*O$TWDauMuGp`DHlfyG+k<*C$7ZgU%p`*=@p%*7h~wqXxq1hw38X?q{N z{utPE%l^cr6HC5Z*-ibnAF9jzOudHSj0TX3W&xLPXq}v7G0)H>3J<8q=+26KWLUXp z8F6l#ytzIh^2p95$>lHH9n;*#Af!apZ`t*`0#j^%%*b=J6yT2D6!8RA1TB<+aM0O@ zeyLdw`+E`ru7$Z}_d8Nl%mg?Xt`0dliuYj_5~VwYzvn}#VHz1JG36DytXZ&?q|35L zYPF5KRQ`N#ePWX$2XK2^R*HAz$EOkNfcY#O7Z+*E-%9spWE7IDakg;atsN`sy4@2z z|4y*AK;tNzA^cN}6DLlcgLU1vOJCr7nIjGdG!92_k7UsLCTUWc7X_UO%-atV-lUK{ z$v4df^+C-#q?gfYN2H>^D&h_JW^%gmM8TuVKi>!LG^{?AXC77u7bD($ic+Z8x0~F^ zJhZ{x@GI-Pc)xKlxV>=S@`_{|cvb;>yli#gsK2t$HL{<%ei9lJ(v3d?C4(O6b8cYp z$7ub6ip6ibrm9aWC_L;2=8o9!Cn5AC+!bw#(UR^&f7_pt6513Yw`&MX)!wv4(Glq! zV+J->usT5R5wYV-f8dtm24CR1s>wAt0G3%c#sv%yDLa8e1O$JTa#oAyO)&4y*I^XJ~GNI<&q=e|8dr| z;?BPTPr0W7kwVviU?m@8gw6C-#anx3j?@~PO^wVyUFF0%RF~kFM_hxk5b`vQrIsPQ zHSEC_64cD`_H?!iBGi#o97yA;Gcrx%o;)`giMTa?9C>>01hALMt(f*f9{M?%cpro5 zWa9i7CgEZZKg}2TC6~gR#OV_r4jtUH&p0>UP`)A)^{e7+G;&H1a!Mx^01j~~`l4-8w$`mzKv?jYxg>;M$uC4)=}p3lBhD zv2;LKiE+D0F-`-*6y>|wYQj#8`;xv&m_(4p!2MLFCI%HPFo}>asH@YPFYzv zsB@DI)h#Z&g+)UN% zSOrzFn@uBKyef6W$qA;FOVlUQ3KeQ?>@J2xK?2Mh8T9%FkD%lZ!eQYrf4o2Kf!*(pR9OZ@Ln^?X zd&Ie&L5)QL6a?w!s7h*k7AtT5Ddzf3Qj4b!J@VPgr40F9#t|VVbbY{PveTLBEBc>p zTS6)|FQiV#hc|s42}=Bf8WbF*x?OkMpVaNft4NCe?yGhTq5ZL6jAl_XoiI=s`ycHU z02>@^1DpfQ)w6;cwd-rJ7QZ?UwCoNfiP3@xLa}C=#I1>0*kdZ2UEn0z>`{go#B))+ z2GMw?Y%4nU$-4FnPzCrP_Uc3{A8jq1OQWu}+v;7$@*p;m0S;~i^M4#DZkr&Rp+Axm zgIwWYOhCK{1go&N6+>P**#w`R$lX%}@!%#NKP#w0Q<6MOhX$NVP5H*jN14vk&TADp zu`pmg9(;XroJX5Ixk`P(Ogbv?NTA*X~M9wrf!sh*`_|M*OeoJ!WtG5(;6Srt|so8XgzKK^)Qd5 zN0_IXIG87$TZK~38dFN%JNEiA?DaODpJm9*Qol3y2Ne$#HGkmXB+{(}PuL6R{&ykO z?U?loj;%q@PnQ0usA!kv9Y0hbx>N~UKu{a+bS&IlVqSF0;nbMBPPWLWa;b{Ve!00{ZgePXYu&wfr$p25IpYuqD}(2-8;x`MZ@>|2je6duX1V;&eC+q zv=IxI{j{g^MfAVYtcC?N#S$--cuwVB4+eN?(t;}>Iq zH;NK;l$$ZfZ1>FOPvno~_#%o)oU5OY7U{JZb@4o+#Z>D~z#~;06CfZG6n<@n(!qNz zmL}Q1w^+mS0t`w-Tt_3_rhhg1)mM-<>f~_zZ)C-ZyAty4iu@BlH; z-D=a7dJdB7>1Gf172QX^z{t~R^bb*L(*_^Zj@udM2@Q~5=-Vn~QTEEenpCMBFi#Mx zsQ`o(k%|c4I5UQ&z-!0zgTOmowSeb_?2PUnXsC(&%_ANbUllw+ntCW_dsg!A1zyktBtQt&~VYV*5Z%!%@e`$Ul(q!AL>yy~! z;H0a1xJLvhSl1_%TYVO#Z(fkdrt_F8w%Ve^+T>_VS3|T@$TWtHu7v1{(HJU#UAfLo z_z~J_%vhWxlzG&SP@SFV&tb0?M<63l*r-!L8c!SwxM}lo>B(m)5jW?cSpTEs|CEp&RXaXr{Lw=*@7xcyN4a5;sw0eq&PZkY6#p$nVs)~^&hhdOC<`n5CV8d@h zO?&>RRd^@bu5mB}Ta&)$u22c?VZ~&j9&q?20^8+(1A3xKDBfyO!PcizFHH9gpAAih z;D&QYw?8}VGQem4a_A6d2p*4KO-7KLVy8_Zvc8FCk$1%O72)HD@hxBc`a;i}z;$!B zsF)v|5vf1OWF_q`p*w*ub|kR~UfTtaGSUbD8s1w@zdua)nYEU7!_A7rb(JmC^u21I z)t;$oZzc_7lP08X@hw$e41AOzIry-ky4_}6v$q5Xwe#*|?AZP$r6r{4f!K4KTh1sT zT+M3<@32)om$S)KL9ikGe$TOUGIlNYDJ*c>Iz=vXI`@odz<*+Y8BVDa zPHE#Dd*k&G6TH{T{TKZyh_9O*r{90w;9Kqj*OqkTlt~5ETRZJYIrdEn0mI5hmA?d} zl1*PbnO$F#|Rz=t+A> zdYB_!1o;!L;E2y$qwrDLz39$fUdBzfXRt~g9ZZ75WF|0;eG0mzV1JY5Ce>UbGJq^ln02It2PJQX`RZbp$q5fgsq%lwx#;7Ha4!q*RyS0)DOao_;9{@KSU*JG7?w}2zBs5W?0WYNPv)Z3ji@^Y#Q9CXoe=u6Bd?0n zQT9iE(aX+J)=1m|q!r-yE%+tX%i<8Ey3C+=tioJGd>&gY<{SM;^V#zI!n52k(>6qH zTI>C-){femknLM>PV>uiqEwbeYHRQkmADU+M^)IwF(b~>P~F;BGhG;N+Niq$9{VSj zu3h3B*ozvew^Nu&3piU^+!Q@Na2}6i^N)}16e;y-Yn&(J$GVlto7pP5R@pWcE{8lg zWh;54BUn9aF~&K8UdOcKKQg)s2!4AHt4NP_5*B@z1L$^O-uU5MmgSQvSb#t8gsiZ3 zykwUk+c}iywqAzuL(bFR2JAi5QJtaKvau56;H&B8FP;A_{Z3ZMZ??RNcEDQ7KRND% zHrug+_IpvR8fpM6xm9rkDh=u5`LmwS_Hb2IRrE&SlQB7(_GZH?(oV1AU5#$8OZGMN z%@E^{@IzV(^k`<5tsB(qq!<=6>zdyAmzniHbL%gN1FAy;Y?#n`{vY6|8A$tMSf}Qw zf?Se7S6afmo&kvUI&b<_T^QEB{q9{10i<#A~>pppNN3sBHrk34zKGt?l%vXBuaL4TOa5h#$U7|_qZJ1FMSF+*UW zG)lcJoS3*8s>p@}U>v5_sK&dxvfSeA4Ub|FAwn>2G_*8W&9!**4HJl|VS*R&YC|m8 zwIm3_=d)5sjY71(jkHt5B*!YM7*!`4N+;zRC~OT+5rwKSVmHm$N*-pOhx)bwGH2aK zj#HTzj{V1-l+8CO{9uodm5%pSvD%&<_#vkFul;&Y+*QCBCd`YOxf}=O{{@o+3ydgK zW0f&GcJ8A}!!5molSJLvXC!gmNN9gIYGa-5mxNk=<9} zM~WozngQ(u*D46tXgT6wrOedt6N9@ilH`jeS?4YKE`I)*0s z>H(Lbj9(;49|jDA%oMHE0bF56S&aNM4S!()`iG!(gH`dC8=b!gw1*7W30~}qf!7^W z-J>fNHw^Fz*m+BKyQg=irz-+b%J_R-3eB6I7n3nL5)a?n?5=eOy|sQ74@Siflc{glonkNU>MZWV97X&bT+{*sn$lcZr{x&=3Pa2Z~P!|g4(}Bc~g6JcFjg>#1rv5BY_S65OHA=*(ewZc|j4zyZHEv zY4&tY|H;pmhHxM7awh1-^wZI!h?9i{%}Z+1Tt074oRt5(u&d$M#rmsF&s~hsY%0@2 zp~ARKh2pEq>Ur+-NR%`c;FUVe;V`J)`e9cK3W0B|oXYqGrc`uf>-B(Zy*=!#^ZKU( zqh*_5Ch^S8JanhPSg({`RCBz6T6?aXb ze9!WeHhcc;`;piK+@k}_QzQS_F4}cBd7@Cg-$rVg@BQm0kC$5@?U6gj>i#~m>M0-Z z-L)G#Mr$mw?%I+1$-RXto4aCzbcf9-SSi82TiQPL|qAap9D%b^MFtgl2B?7 zbGxczWT9DqA=lbVjPcoIOCg>M*89O32HsI@+6G=)s*@W@;Sl!+M>%IN38*_$j3VLa z5XqkTGCI6I(dgOIEo@3iPXh*2Uj#C0W}IiB4UQOFp%)L>1iznjXSgNW`6|lX$mKd2 z)std1wTbFXY2*z#J*icw$DPRDW|gn^XR`4M4jfb?tlD`zXTigVv}l41w;E4;fe6hO zkde$b)xxH0yEKGQ0hni=X&V*rJolKJb*ubD96=fIq%p$bkoK z=Qo2CZj7n^lnZBVyXbv3oZW+o-61mh5+AzEe@y{DWBdRSCn3j>>G$5hUa?=)i9s|O zUUy4K$r$2c{6m0R8cu$j^iib>gs}I72?OhlPABN=UxYf2d-O;U)R2vu zVjW1TLzN*5i2I-WeSe7appyBxGXwom(8HTx8WX$Q75bXP8KVY&6tpW8lYzoj|G0C$vgW7@``yU(GZc-)WCUES+cIh}&8I}slS?0>tT|d*Z?-sfZtQZ3x$^IF zTLfE<1@|ja(N9UcjJwNQKHp3=-JT}YIGQAD`u*N<7_6h)xgX;RTVGa)Q<+=<6o1%Z zNM*dzX+}U_2a?9eD4~6T8{JUsA|#ldr@4Rqdg^Lxb>`3cN^zmGanD7gfO^nDcRedB z1eOFc{TD1IFr(k>ugL2g0qb}#^?DULG8ip%Hk1FvTs=Fx?cCw>B%-))Dhnm zOZg>^N5FDLH6_0&ID}Z%vns`e6$K#U8>HbBlV59 zb&l<~vM-Yudy|I69F2bqFi}Rq@@{#VF6j2M!9W92lTL z*<6VVK7h!)M}N9M3%{}9WWmXxzV-3lY}E7^m32vRk{-u=iJ2N@$Iyg_E@ZL~rX(Dk9N zuYxK7>w*(@lEvhhMeO0VfWYJ??(vxZl@uGgZ*%x>Ur9&10UMNl9d={(#>A{F!D%rZ z8wRQmgru&|G@u5Xf&2)P)-O>q41rQCQ4{Be&%aR8zbTpK@G`UH-N5L;mr_B|2Gd5s zKvhF5vR!G!w9PjQovi!y^z{(}PCK?H#a^bZUS|WpU|?`;jwQT9x7?CD%>06nWFkzo zJtK71V=r9m<#$TTPkT4y?j4j3;@|L?a9PhlCJs590ub_Z#rQZIph*%M6BD2)n6itc z{CHb3{!y4RJvM!BO-9|PMw2EdGdH}=LPpFsT8F?Qxz9z!Ly+U}8BlyCUw}FNa67M7 z5ny%e&I>#3h6T|SoKA*i<`rh`~=`kB}2H+oj#-OZxWc)2+~-kSfM z-#Q|sJ$CG5s-@tWh1cB(SsK-7WM*jFM?pDJ`9NTCdQ^z@R0^dVWH}(w6`NIJ7d0tQHG!C9Fboasc1^;7Y;YY#6mblkO2^|(<7r%jnZML47u59q zx5C@+Psl-%h?hfEQwLkD(eTP1(=sm~ld*25#hG9+aSHL>!%B>wiDJQVC{9pWqw%chD_xceN7%#_emD4^a= zH9_wxRNnnGeDI|~^Z}SVI`JZ}Q-^XqU&Rn_zn{eY@Zlv;92h8MXsG8mI$Zgy<0{bZ zTdd}`QW*PRIFz3L4;(t1pI5bnp>vAFW>|GS#yS5j8*sHAGQWjHFLt3q8aQuT#cTR) z?I1P;;i|4D8+QWk5heQ)2)f>@5(g&KWDE@Qhx5%MC+Q?jJl&dkoxDPHIbYUa;fZ6+ zS;td6kT7&DPV3&j^MIz;J10n2!&ZI7dRhcj8A|O_FTx51&Qkp@DKT4mH{((328u~g z_p_CXw7~o4BfLZG--33Dl!t!YiNuZ~o&+IuGf!@2KBGjM;Fn=WzOZOI4MA!5(KM01;hr^(|6EgOoJM(M0NtFZ0x4NpdHXN#S6XN>nQL;lp!E$wj)Fhu_PKP z2IU}r2s@+TZQjQ{bOz*&sBf!}sm=|gc0!~H_$>fa9f3hH5h8VHI^L#vXlI=vYov~Y z@e%2J+qpl{lEbp#e8y7K*-jL}6L=i+{*g z(gOsU$;7V4{l^6)z!}ZVPU>pd4CY9}>L)Vj&1mJYr}U?Cao&IPFZ#J(coUh6mDFce z`aBEjfdF5YJDbq)DMoe(*P5gqpf|jT(hAk)V^l=^#8d*$%NDk%Bx^@D{Gd&^*z9P< z(|wZ&+-+w^i4v%#B>l%lz@VDFCYuQkSx{-m}nTn)8!D7cT_KfxP zPbDQpp7wx;7jt$35d+CptsU_DdBsfheeBJVXgOay24MXeITuwuk6p;Sb@#NJ{ws6e78Dm-12 zg0%3rSct(`{%kR~Y+Cohwaq-?<`{zQ01+Wg`)e8d!T8rgG<_# zZswhfd-TjITal|&$I>UH=xQEU#8XF&2@}J@YPL`Dg3=C=ec__(fE<4e$w!K?74&e= z`v{M=x3NRNo)rN_lD@ow2qMfe1u|^3ryIaY$6xKHxzp84KtqzIsVjSe<&KkDod3B0e^`J-xatb5ju2*vn4k zABv=Md$#A4Cp0~9N1#72B{?GUKBu&g69RKA{%p0gT0PwKazh;)JJ{QkF@ycdbj0ov z67qYW1c#hS|D-NLc>iYYL?l4NR1ZY|FIR&AcfT6g^9$O@Spu`*G4-`2 z8MT6bIP}Tg`d!)S(1p1wAR$p1#)PMhjlIaCRDBH5K(B{S{fWMx!;^!n11^z`&3<@& zq4&GNe1eY(d|0Ork@v6aiA(!VZoLwza2Vn-v+;+1Ee40e2g-Jt#7h6%DH17>m&H#e zcf(lmd%dTYZdSzw~9#e?~}Cn<*m&45o+y{6)wO$1CXf4xMKCA265Qedq`eDmGU9>V>|bv zvWS6~6}aIZkos+P6@9p&I-EgzDh%^r2mmz0kXt%tbHO{fVG6zTic6mYhaGL4OniIV0g_BmDyaR}Xd1v>i%gf@ z{0T7lUx^GuE^0i9#5^>C&-M`y>-zFhroxL{#eY4b%Go9HZL%0kvn&$+>}RgvOL|Cg z5W|mhVi}&VU!)NE=*jdn6JhnPt^m*jVt$QILPTcX-bAQCZ?ujZvp{6Sj`Q)l{E^AR zWa&^Tblp5GES4+OB|4`|DaY<&)eb~UzWE#=7yl=;k5avAqBN)7iy9j9wZT(|)!z$L zgn0Bd2R|3isTE_@F@2p4?WxgS(kkpWWRvehte;B;n%Rz1Iy#N>B=rGUK*HD~Mt%hX zk6TeIu^Pp=3T!3qSK4(>&uz?1pT$y#OL0yVri~v<+bbAbruR=pb)OwJy_%Y#HR3Qs zuZ(*#8Pw|`sWYh-w@NsPsqW5ceO5B<(k;-|$~S8o>jI1Jn7#Xh&L{;MQg03Crf=gc z`xWUifp<{vE8+eUS!uvEbZP6hHiNRb*eQ-55ADNE7vq0l+6V5^x6%+?_59}_Inv1% z8wnp9D-LtLvV!=XL^PMFG^fvCjnnczMfcnx&I9UQ8lfpwV7%9GYlt|so*X60qmN?z zz>)7^YO=zO3$lTBVfU{*iQ(5b@_zF`C9>lAPAoFIR2(PfD+zZJy~?%kjD!zKfu zT@_BdyOxCR?F4*>;O^iRBf2BEycFo?)qn~H+L0!IJWsKWQ8cXtY)>bT|5(Z%%v3oQ z7Edvd;)31J7`m7gDj0I3;2vMgSmU0*gPl>le#ubGjtjUA^^J{OCjNq{wcls7lagWQ zd6vQY_6Ql3NqUi3|DE5fHif-I5T7!Hs!Y14+?rU)!=n-lUB&OoNY8tFIIaRc6dl-) zM8^qawcK28EUNj(j`Y^(Ny4QW9_T+8{grv&zr*^9WTP)unKL9vX=Haj__!4b`nKG0 zZhErfjY6_)*eTb6lU->7wS-No_IjUR&%#%u9QWcknBR4M!+by5Z$P%%ZTt zo?eeI+9~Q-7=jas8vA_z3YTFdI}Il`y2CUwk2^F^H`CyD@OE!sI{h2BBPn_XF|n_Q zp=t0_x}D8-yzowhWlcOLfYsyD#pvLl<7y)6Elu^yF#a{q6B`0@>hsP;zxP19y1>DQ zIz%Tl3xd?)gR45=VVDYXGryXrwxLo*(@HUc5$~9%nwv2iE$<_C2Cd8eQff6-PdhP^k4k)cYr(6M2GGt#sjiG@%<(o@Fr;7(4uF>{b zpH^~`YLaANVPli3TBt|PlA5Lr65}p%_IqV9navVtLahD-G`JlywGm=`aL2MzyWeA5 zg^i`hDdnRfeH~b?ygqUa5`92i7o(186^s^5#mZ#u`Sd@U&`I%K(R$Y^cI;8a-_p0B zEWZA#I57*Yjj5!k4jA_(9`j?zgdQX9?^|?bDIkgB=tIK6uf$Q&ULdftD>8s~M;XQq z^4~PSoH#ghh#P}Jl!=QC#Dy1YGKU`bLFkVq>zx~amGV2idxo#=fB-qSsGtg^*m5{C zl4;&umz)uCdtKMvZN*SL!PO_pE*P(i*9uw5u!fLKP)S-F23kyj;(Ok8~Av~s7 zC9I%NTp~mPdx10g`G1X*T+x2(Lj6(;nRQ^~# zVu2N~DSbuA%un?EIo2Y?$^fM!;C}Gc2f%+ZAXIgKMBwTPpY}eY^Dn9nLe_$TkpH&% zPj0e?DdpC>D7G-UfQstJ0gQVSix~yN?Pdv8^-2YO#Tv@{TsF8xjab?GL&0Tc;WEaU zSwCocdNu#nh`=DswMb4Cx}OvOl(0XBCHHAKFk&6@97w+WdJU|ZGmXlHCw04yzD$`l$k((#>OitSD(DG8`j*!+5}`!@9phq`uLuytSK z{sm!OZM)3AG?qBy>5ov=({F;^dHM)6aOuW<(*m%eIEks2kZlV3aN%rm1U*(C1rY_JJYf~V`6Uy4 zn@`LoC3-KX6>m)VL1E>K*ef+LxiG-wum?ryL1|bWD>%G&JmrO^!jJ0g{?fA2-3?ht z2q!8H3lkFsp0PBFqb&s!KPk-h7fusL;}(?2s()oRiIH!{{!zpZ)NXz#j-2d#NiIX) z^B;gfd`hp0_Wsh3Ug$-|b=pfsk0wjHP>UrH`w?;f%9dYS;b#zP9qR zR`2#wqiA1s;=IdidU74@+D5L}11|c^(*?lUZSIR`_+%jPa7r<-)v>!J_+2ecM*pwS zpkyMKO+-BRuS%*6!$fG~Em2ncMQ!3hHcH<%%DR8rp~qhAT7Tp7cz>VSaTIHn2b-0* zcs5K)%x5my>K79dCeH=XD;tkMe4cF<6FS}JklsY;QoGZQ6VO9C|6|~*;ny2h{7XSN zsOwEjGCdboJYh2(HCf{a;gyG7RkQ5@uKI?CstFd3R5Jr}@=KKZgpguYP@fHkPmb-v zUGr0$6XOU5F26dTCVqg?&%F|x!(S=4@TyN{Y2HkGOt*V3|GsSNIG< z{_#dEA$9%l-^vjjaS~1`5w_F^N=bMsy#qeN=zB(*K@6xZDVC&GjVtRa@z57=X@Lc3>b104aeFa z?fBjaLr)EWLH8X@fuFl<8}Bs|hFfTTCam}HXdK6KHDIVw@1g#FD9#J-B9G!Wt7DM3 z%1e=a%#?(MK7*E~snUyU(uMG#&fbJzAt>s?7`UKQ3U5o}J%s zFLgJ!1vfVtkA8W~GtLNO!|S%y^&M+@@=fq?>yIAX88SYZhQx&hlO1!ljk(RBp;!q4 z#vD00#;@VP&u==;X4k@fd5hCli|E(MNKl^-7U?9E-M?IPCmaIYbzx6utYTP3b*COuC47dKlbj8;p6K8tjFqESK#lmf5l_x%%V&oLm2%Hefzw} z`%^yvSA}j~_5cUiG$2N@iC#BWkg=PXtgfWp0 z87p%F=$pHec;pV|digx1%Wm(x>(w+Hzz$iUK9CoNns;a-+L=f^TYMC-=CKG}byhWUK@IW&>qy;=xE4`TWu%9fMR3ZKU+c2BNi) z4-!2@Da=!j{uU-_?=!AMcQJM`Z8fNU5Z*Va0oq*b1SG}}c@uAi@CuI5UhW7TTTUKg zA0DwBWrlx{BO!3T3FXjkw)~xUn_h4?+fG4{k)vS5yKp1v4r+<1I6lF+qj_wP9X`8R z0^ewfHByYw&40pfJ`w>ajA{=b65l?g;fe>I<{)AH`SbDK(+?)S^g;!6lb4Dw%R{l~ z=rx!-K-)tO^PM$n$TngUJzKx} zG@GOeKhs^46-EEb2a@)^vo5Xi`aVe=udkq5OXnKu6Gv`CxUFnxIF}=(@V5Co@yv}EWU4V(M6W^L{9-Fd%-EUZTPJt zATck}=1BtQ147FmrC(RRkJIq#Y;f0>F552U9y2k7-a=L-W0{q2e=@ld1 zmV^jAhU{%XyB$Rq7n@H*8L9!_Qa+D2z`AzMtBy>K@&VHW$AP|6x+_Smk*_@Mf$5L! z&?O*0sK#x=$XA^njy9L9;?KSRgAbi>x9>I@?0x+_{s&{$q(&{;Uw@&6;Qm+nfA!4@BafWyMh zw{UM5NCAA#6$`s2&&WqRFy-YEm7`CB5+-Tefu$&TZP!Xf7w`?PiIoO-*cFk`u zggQ#<8&4$Thk$L{(EspL^N0R@U-c$_a6nT)eN2ht{tLZ=7-46Lv4X!sk>Jz7=O&Ai z(05#8MS*-sc*m<6Eu5#qQelIN57-fgX1c@=VUMi2lh}%9c2A|tr!Kjj#yF90;7f*? ztzHg0dUXTFRZSjs19)WN4Dn=`euRX|D)*==p{BJs^pF8x`0?M2KN*IGQUIERAaSv> z&Kjr~7)e-2aIs~me?^npnGc(?DPG+Q)3IXT=gQ%{c2!t4HVfUusc_HX9Q(ee;;{Lz`e^$g^!2CBzb#Pt+nSf{G*H3_LCD5W*quv#vP^ ze%j>M-fu^1ER)qv61pXBMtp~@+L_mhztNWkH8XK?!;fK3&7<-YX<42jx)*ipj|7z$ zSFeN*(=h)>)mH{oxpm#rozg9hbT@2}Zjf#ekuK>jDJhZe4M?|imvnb`cWt`9?csRd zdw;?&p2b=-#vEfzJ^8k`rA}C!3$zRi^~by?k6B7a`>kLi-F)x3ci)1VwUVO}n0Y1)=vfy9?PW97-`Mk=V8d`ZWy2 zMS~28YDtm+P7*SSLSJRMpJOwLaM3!6}QmzBI(y|nyRXc{XNYYKDRSF z2Ddt!@6!ukdB2bdWaXj25Z$Lmps)T5;j;RNQ-C|C@Xjr&e?Z1=M7_Op?XP>9XWf%0 zoyjadC~oVs#x_>aYrQF$9of0ceh@4gffYyFS|`x2N3n2bMl3CDqF zZ;i6W{JLR@O(C66lpaw=p3!}gD{HzqpmtDcY*N;;ATP6zl*B(BF@2aa#&9X{sicbYg{nBXl#Pr|nPIXNsmT*{h>Mfco zc@M;8JzX~*1%A45+wON|Gl};En*V?fL^_gP3uxH&S_}Bh*=g>8nVOn9$LoS^*1Aj1 zxcVSCW#W&Kf<64{Zy`hb9_UUHDA@CF=SgADrbN`Sp%XL|tGEuj5sK)x^AH}fErCQv z#oq{NXF@*4ML3JK)DS+pNJvK_ItY|DwEPUXMCVG_(uwVU_?o$9l|D@=RdL7T3mN_V zoGEh0VkkjL%ixvk04whFpl8sYtkecgOXiM8x;pp!D<5(WEcS?M_=`x?ddAzrKoxYF zy)~v;C!VGv;~?ru-dMB7YWDO55x8;ou|k*Ff*f_byuJibR5G)Yf>C&<`Zv8qy5DM< znVSPnXzW>vnky2eZ)NI#40)USI6nN`l26aP=gjoj6*5fRPbPGBb!a^b4;30eU+9AE zfpev+y=*e?PYHB~uy;8o=FaqhKe>GlVe?p5y|kjCXgB`vX(oc7<`Sad%Ig{B(b}J* z_wna4FG=kcpgW|fzt&s<-Gc4`eL5TY9>DB^}`u;o_cF+6kvSwkFv8}H)g<){vRHfHTLfA^MxtlWB zC@T0mS*as^^<0#5v_7>PP?g;0Bz-XSFFYi_7KU{O*^Xtl8}kni9gb07-#eAR!>9>V z>Z4@@Iam|)lKC(wHt%w|d6^N#nq%a^J^GR8lSFkk6VIX!eN@46s{J;R@RYZ+amm=x8}Ik9?s$L zjN0?7e#EaIjuyX_;ANqh1GT0V5}Q%NCa;Pfz?XdUdlx-CiH<93VDD_l2Z| zZod|6a*?Z-k{vmN?{*5E!V10R_Bc#RVO$b;i^Ln%u z{`}{n@@+%ZvG+Al=TM4>?1Kb;)7fGI@Od+d_XkM`y8aW12msmQ-iZcSD-~s#8CKwXpC8I=OfX*hM{B6|lW9 z07&$aF-02uabN2z1Q(z4#Isc2Gup~?@HpjxG0qQZu@i?%FuZ+$M;Q6$anIGrYc$>M zvDi?os-mEfjUd`TbSiuXsE7=qyHZ~uS8V=mL9S_x)fD%{uq9z*0%8`f{F0^EJZfXl z_{){TY(j%vbq_Nh?Hb9&uhWyP!fE~+;NbkYP!vgn6~gnH;{d{Q z-HKz}R4Xej_q9}qgQ`=hB_DQQJlI&wN2NKWUTJl+zgcCFx*g!n?1~iq+SApCA?i)! zNQmzgD`b^+7Mj9Vfl66Al3Bd57tNwf9?qR3a3z(=e|}VJxGOBB&q&L%!_F!|`Z1=j zj9mC$zs@7fiMh9oHIM|AL|EQ@|Lt1e1!l?P?rLWa;ClCbPw7Rlq9HQoiwBlkLYL^ANPfm@h29UDrTT86Y{Mz4T2Pt-m&J{BOrHAt^IXz-R3^^ywHLWR{6%y8#F=TN zuk8-5k{tF{u9C>=`XKHY1RsdDe3EXAn7HzWr*A0-AdEM$hZsH6 z>j$hH-l?)wOQEh>djV`B>MBA0JezYNtKYsj5n#2xh@F;C40j;9JJu|?7`VR9nP|?w zBAzJ$X$5DX|3xr8pc2pg?g|e}1dpX83pnYumm&-v<(Hm=q{f5~E#~GHKFUHriT+fY zR==#^&Q>C9H%>||<>v>8HCxf(tW4wwl^-E8cwRT^YFvYLggRR7mE0BQ9DtD3=PqBw z&6l%9K^SE?%?%j(DiHqgGOfcXx-ZgTxi9R@XeqQ!*GJt>vvs#))rOK;US8l!J8pA8 zXW`t)s_H7ID5*>$kMg#RV+w5RFBu2dX{ z`!v$<2XxQXe(je6sf`mUrxFWktQ3Q>(4av#RVd5who-nGM08^8$fq+q*=dsa^^c4S z`PwbrZsju$UUuIn+K27W+yjN&Tz(_0hTIqaICl%+l8o}b_U66Ln9b53Gh}@S^2>Iu z6zA{Fl1&c^{;xqnff_cAxKe%vZc@|RsRa$inN%!w;jcZ!1HmjHg~-+93!w;HRLk|oDS5KAwe<}lSv6fZf*%}#{v zWo=gbGsiWK!S^Ha{6%b&#rnF`t`s3Z`V=z0XM7_Bf?T+&roXGrIdv5buU>WqQ{Fc} zc@cLvjp7%y916DV#M0%S<{G9Q34Am(1CRxJa!VVM2`iN+s)|vseIICcDzEoIqnV3f z@XzCKF$>i8QvXDuu9$Zo({>Xu-c4;C?ONfpOF;aRfo^=q#R54R3*=dqwiB5uUI!Lf zrsqvAzjh@_?b~n6nO&j&zG`+bbxZP`z37Z#QE$6NM+z!1nmo=WV0+t?QRo_< z^eGkqKEm74Y%fyn8DFV|pnYZek+PY~T(8=7k|*`+XW& zy8SoMM|;>SAH8eYY&#Eh>+QVE)+{ub7qJ%n*a_zk9Jo^-rj*NX7#U{E6l=EzT|7o3 z3s(+OBFk5_bvHShei`|+LWs42TIMedwATqeq;1LlD-Z|lBk>8FoFfmtrvgp5NTyV$ z0`bJG4@(pEPs1%^M09Jic{0^}2HN=Md#;f)qBvHsd>GrdlKbKyR$V(FMPNLo*IpUJ z?J#9XfBIsal8mW8RirHvl;#%sFN{-5!hL#>ZhVg%V;KPSIqmtjsd9wEVn}I5N&(tO zL&*YjIa8UwjPd|Re>Prvy6%*QU|=IcC~o+mv?wM773*Ft2}}vxpu;14N%svce{2PW zr2C$eWeI&|K2VoLjaq#fu0Qr9?YTdvoYPtruc`<&hr%=x{!Z=Wr_`-pwP&h?-2A~L z!g4o8GE0fgax#^9BnTVq8Bts|U$8QJ!zFBPR=7_EXT!cb%l+Wsohj2qs6ajr>_h~4 zNW+u)@Y)uP=6%FtraWlSPs9dc~}T)j^cG*l!6Vu2?W3w1j-H zw^v{A9`DI+5ldc{03&H*Qz?Px??(q1GNYSXZ`rIfg~P6TN3#f+CW>2dK64fp7r@=X z>omsT(aL6`9HePca@Kf!5^L*xGyi5kPWZ=Nx*@+9o~vWT1$AGyR;Ol8%D#YG(PgRO zE#s3kv+6W4Q1XMmG`<*-XF2lMt60jlR`*kqR8obvF&(qHi^?z0v6>TR(rrNb-M91y zT@7EzKo)5GKh_+3zBXXN5w_B%z(y>#-z#=pES_}rhpa^KHVh~|BU1!~5!(FC#a2?l z1{XPZ>eqlr^sPO9p#+I!WZHSEQQ$B$AVK|df~O6?&iCAS?eJvC7nfio$d5C%p4arQkw+cd><9%2#JfsO@dCA(|4le1_c_z4& zytadiwxOWFSSAj7+CXkabA36>XZ2X&sJOn>p2dEZWFO9?ho`-4Kts!*ov;ghdZc$c+jnTV{OB{|?b?|;lG**Wqy3JF zg!O~1Ow?gqS*lH;2*+VdZyn=R!aTKva4RZCu7r4aa5%Rhra2E!MO8~s4tfiw)XJ02 zTHhO|?;Wg{yw#a{ScBDn;Zb!OFlbPWGB^3pv^7$8?b~r`(D$7K{=&;n%YyW3e4!hH z`r}Koo;``to}C_UEd_EdAVcuUM{iiC?hmt&PAJZx#I&Gb57`1slMZ!2w`qS*SI|^4 zRuEz=VuBn6Ug_wDb!wB#mb3oCD8hWzwFW@0$*JfAvVs*f@m8^T#I7;YNj)_H!%MaVVuF0St!vqoyRzn`vYrNd`6O%w@P(24JZYW^?>BB zF}tal7LOl&SE28C&o(!!%lB&vk3>?<)n>ayr`9yFbenyQ;UQ}FXzidz${<}hsr(WI zmd~fGuz1spFlFpRj0mvI*~%K3RK=YYS<#olOAQkjWGy z1Y>nF#1l3+A_n^RC7{~vA03ohGUQB8)hmj9oq_Z`+xSM@r$J4;^@*T2SBH^_(Ksyg z%=dWoDcbEw=_#77%^6KzVSF7HSBe*GNVhgs=Z&!$Pkm&43e?u>d)oF`3iR29aI^5S zr#h6`>Q3?)PIPpx?b$x@(3Sb&pKg*=;4p!cmrU}3fXa2HFg2?cs9;Fe_S@&4n2=`~ z26cE;@n#HFSO6~ZT9}nZr_}KaW|XwPC5xlgr#S89Wiha)4ap$(5}zr1(YGb;4I zwcPxJa3&q=*i}`;+8PU;T+BuI8_*u!3(N%`zW?^M_Hj+7>&=aWwK3*q<_q9#4}9Nx zUXEt#c`;OaRXZjQ4Fe_(-S9UTl|DK;B3A+dI=a|Vvrh7+`h}E!o&HG%)dza}S>3t~ z7DZX5wsa|W=Cjx}*eg|YWB3ORR5v*po*&I`(w>M>t}L$yV&A6n*B+qU^b?3Rdg9#| zhg&#w^NK}+o-HfY|ii1h%;X^vlt2p6sPh4|(S2b>t>0+GhoW zLR7|KK(n$`3TIr=m@^|b+0BnZ?tasP+fHSJj4-=0(L2^#R6!2 zo^tmj-(f3|PAQzp%f==ZUFdhXW5|$w*S=NSr&qJSXS_FTG4O z@09Yu(Asn(3kyuSO}3fmgVFVIz@w`9%cSNdhDg_~KdYpnE8fZdMSg|bshquw6_E{3 z`SpzQZp3%&r%w>Gv4$qzXaqwGwo~Yxz$16sBUr|s!w|s=IB4Z1{0|+ezyQN|#_rV3=zl5*UQU>@Q%PBkpFyUY zOfgrRi^!usgc(0K?x$IL7Dl*x80%%VjT8%EtqZ#~)@S4nrt^|r=~P9p8z=iExfZHL zkoo9j*B}Eqm05^2X@WBMYL&<9nkz#4S)PaRDj8iSI%?oY3+8CR-wsFncCCC=m!($A!Vr(;s=AQq!m0un*Cot zksMg|74xfql!sS`iU=^LQQzLj>`{T866UlPdqxU5c%PQZ+6NX-B(x1gid7)(5wMU~ zNn!t=b23L8lzcrUR)4YgYy5VBHIvrx>?!Ty)0fGcyifXMzbnyOAq5n|YnM9;P&x0# z(@ixi&VKlLeCx?WzmnCpR98#D(XfF1RVxw z90oQ5e4ZNxKHlfZ&l1ZU>VP5jR@8h_ciNHhCBkS-uV9*mrNhwHv1k<5^vMZ&h|Dbe z%0}PDdx4~>!zNFS(r>c7oHAru^AFKb zoX*Qsby(7^%2JQ(Mcf@bIFS~!#-^AO@0Z{EY}C4zt@}X%~vmT9VFulD~)qf+=>>tTl*$utf7Sei$3vSvwC#n!{=`oku& z-)QK_wYA)kPhUh7S?38H;ob@UPC84jzhTU4P-Y+jIecpth@U5(Bp`seHRq~wWC-bU zIGd)vMkEx`w{oRt${xCYjQm`5csK{ucm8E#gC(*diQHRpYw~)gyCi4HJ$Zx;HuuSu z57b}8G1yCT5ZO6P{lX^#Yp&G8#J$MG*s`x{|0o~~;k9fdh)XvHsS*m~$f={p_51G; zg@lPXCUI}Jyq2eWu28eS&?SsSxQ}4oxYpNrb)?9_G5%A(GE>t=8Y9SU)D&7a(gHu=Ev`5 zOB`;0N!#p1rnm61j2w2}U%^`5H2UCsif3|eXc*00(BJUx?p9+f2ZvK|D*5cYg(GKY z40qKSG-^8C1RyYr=!AQ%@A; zV1Z&_53)@{DI;#7NC-4j{6th`eP6b{1tO8}OXgbJa~WB0&&y#ZIcO3BO#P4Y@$E3H zyuH9Pa&(M^rF4xC4EOn!7EA-FBOHg+t1~r&Lm(=y0{^r4fRI_?O-C0(*(9~d=58>s z=}WUyB-B*iSUKC8;J(^`Pxe-puVrjMBsAZZJDpkhZK5jqu($}MdML=4K8^h8C@Z|>n_zb` z6%Hz@4@H`1mIr7KlTqlIxAi{%namB;_CgT1>ZJ#bX{NY#ed-A#wdz8~-K)z;4C!rI z;`@;m*-MdoL$5(|ZzJ&RgwrKmRDmb)L*kDZe2C|fv~UIH-xs??I&jlmXfJH!8-NkY4^L8-kX{lG0I z50{9<;@2w;K4+Nx)~6ON?^`A}ujat?etb&Y?OdC2MVjRN4YcMjXxHxWmLxJ_J{5Cv zh;Yg*7ByqV-0V`Dd#1{pIuL9dWcdnRVqpQWW!_HC1gULjgJAdFr`?LD@E54NCPOE=!TXSv$?^Fi+ow`P(FqMm-qpNC1lK<&i2)rs>Og}}nS z6w%d56RHaidN}RcKlT0&uV}`ag%0*G^I-Wx*WR(<%XcdKUuQR)4$)@PaN>Ce_c|*< zgZCF}3Gdq|(s0xEa;Vd8uDrLzlj40|;aMBH5&n8LO>J#$ZBktUF|+lJz3MH9mK3=L zI3`1e(V^|xblM@uFR*Fa`~&~z-R$}VqaPRd3;24uNlE`8ht>)YR;Kuu+H^-L!j{_Sj)s}v^v z_cv!{9sDotnJ2>OlI0^G;7EJSo{RdaW2SE=ShVYhd^XjMI5^W4UAP*L%7}KRZtoU_ z+nzy^XJgW&qyyDVhUma;R z>Q_h^3@~-PkL2N1u@8PPigciE$zw%1-Js;Qoh@ErTx~Asd|Wx!^C_S^w;k!G;?D5} zyX^_Q-ggeX@)0G1miMC34s0Itj56Su5e#MnerA~w`XXPvN+P1isF?-ESo3%i z6ZPi?@rKl+kD&3Ild{iCxfRo;`(!hGK9w`fJ$!CyP9`_qDbv|KY&;Msn5J3^6qX^& zGq*l9;T4lT#@T<@WyGH}ev>|6>k*z9EDrP4tCPm}ZfgUowpOPE9Qh|RUofItj}45n zFmX8*-cs;}z@$etQ&2cg*qi*rLp6d5i4$>@zS*{Ug^u;CphCP_Li?alz_v{OWg_>1 z-O0jPBtobA^$${jpm82yc&q60stQ}+Md>*05#xALFfa;&lLid9de*vY*0Agq<$4wD z59#Q-@bMu+AIaHsUE55ap#bfVaf^F3E81JUu6keiNuM?Wf&JyraFT{ER7>YwneQD> zk?n1*P?>hoq7W^XGOvkBln)IN%^^?HQSD0Q!v_mPb8}Yq^I~0{^*#;?6^~^IY$c^q z;H`B!jx4F$pDxiuFYf`1nusW_vV%;x!0mh^L2e$a-c5Uhd%jX6c*Q;8P9}xh^O2+}0tdPmij@jvQI{1h^RbG$auwMfoAvgTFD@B7JA%pKJy0G-$z~ zF!9K2cN6;`7O9ouT91~!T^MyVQX7J0^OfuV=E!9IlP76srK>Lkz?jVBm+DwWz2v&; zuU`=edw?P*W#ltu2zOY@E9QeehIbt3hvtMqe$Rnm2RD2V2E|9N8L4ep5T+L7U7 zCYW|{Wybcr`-0oM`XVW~4=)@UDPiR3jhYigZI7^PGYvU42R2o4Ce=}e)kizvI@6T0 zX^1R3nmrK+R$S=<1@7|l2IxDY?0SCmsKebouJ+Df4|%v!4sq{-X_-R$DtxuOgX^@$ zZc$m;5S8oNf=k=BDHO_4%=k>(cQa^T;rtI63r2%F{BSbCYZV-MyKTYrnb%v0fSQfEV>Q%&UKkGX;8@{1O`f!!*Xz6i+1AV zM7dm&BE6H((n0v)x0|Jvpz4J!bZ)v4Hj{>i21eVp;khn&_I$oa_VO+w;|^Q!>c*Fh zMyZ8lm-K}Y9ny_(%qfImNd};x974rfzY`&}m>!K5e5~@Ij=d*|s{chPH(bfaTyySb zg1F@g}?hHKI5zWC%ai4^} zx73#n^jO3tg^8%FAm(kX|8~CmME$sf{){RAyji{})3)nbd0&*cc9df{OyNAm2&{O! zEv?uK4O4qnmQiHY3tnwaUWXgoDu`*lEkt_Z52WZ@4LvbjQqLJfZzu2HaFb%a;+J`Jhp45Y{y zJ=2GYAZ+Dn?_H|GvRZ;56Wtzr~ECEXE(~MGKi-dqf$T-ltr26Hq`th3_sD z@=IRwJn*#z5>$cWd90TVO8sUjEc5kSZ67=HC%J-8uNDj(HVHv&70hc#Px>XK98ThMbNTKSdR!^(jze)NFQS;m)&S}o zuQNu2*QZZCxI5%0-4N>v%{2W-v-ZOv>_&#q1sxDc5h89`DM@duy@u;#11ZTG$?}CC z6n~S@jpMmE5Q6gXc9Dp*;2|I6y$We|LgiRE-w4C<~O~x{2SSLD@)aw(w4B4`(-|Pm4d^h zVF6TbZ`*$u$pBxE}k=RgmAIiQ7$_^@h-OO0DzjqZ3H37>~W>hMwsse*EVWl`k zf8#5had_Z{2(r8-PY5ny420U5$$@NaN>%+}Qar$xn__L|y1Oe6DlEOrwNMW5C9Wc) zWKBLYaxle|iYDzfX}e`P-vivz@_Ou0eH6_!h8`0nj9SLqT|8bem7vsQpXO zLIG!IR$$qau;=YORuW&H>agDKY~H0x;mzC3sOo!CgjS6;8W7=hjZTClEbD{;;Tf!J&lWXkvs6={p;(PA>mXnWE`B zNSvaUAfx>ODDE%6+JBOm{Hlta-Yllu<#xCRJn{!TgawBYVoMy0Y_Tk%KWT5Fzi$~( zR!2?*TXuBjVU?i|w|^Iu|0wUOqjsNhAX@iRo6UO=+u#3#E&*~yHV z=rg*!w$s6kn@!T=fs%myEg>#D@==N1g?cuikv1M+?({D=J+FC3hs8ud)a?%5$IT-+R>X)D zxQ-8OYSvb78^cW~_r?@r>I&v5JI*=Gl;bM`p(Ie@G9f~LIHgF-~07|8diAu>Lc<`-uJ)6sFx5^$!s!?Dfp-y0&)J6gLnA-d7mfPWsk&Y zsR*byr%niWtWzMX%0!6Cr~Qd)S`-VqrHBK)cxnZ>P-`96DMJ}h1&b8!Sei$nPCiox z8jQtFO8B;c=`7DbW#9NdtWZ&`@vA>bZujTJzAOXLNc=pC`3Z)9;YZ($q&HQh1xy)V5!0Sy$0Xe`|Vhhf~5Q7-00>^~4i@R`{yWcfDAX zx4=R&NnWQU5;+0j22k`lC+Ae+k5>`;(j~b$Z*gBJ-Y39S`kIT9+7-ZLV2jKl^v|y~ zizt+00gT!+mo+FBf}Sd|ZM&goEK|C&R&>v*q^ zQ{*wCYIdxHlXxLB!KKbA z>r?5z2*#q-$CoPGmJ(44NOTxXjC1V|<~a`Wd%s`R6_rrUb0Qj1vBXb3)|7O%Y_48& zWuY3m3=YUPoGIw9?;jp!vL*(6Q(b*}8|AxI(|&<)-|;Q9k9OK^`14<;fNng*3qp%J z+4Ackw@wfe8XrU1c)mhe91GlC*#Z0oT6aZ>Jzt0%Y}q@K;w`(B9;F_W_|=@aiDP`f z;hHDG0HgY}tx^w!74Xts)CPntoGe!Q_~dGJ0#6hZYvp8Xa$F{B9hGd}P3Oxawo7%L zghvm*Cz`y9c-@snSQBa`zV0wdnTIe zl`#y!P-DBH*)JCCsdMtU5>nyrg=0meOP3=t6N|cl2=LZW+_B8#=hgqt9Ao%i=ta2A z$!UDgL%tlyP0L=dQ<_BZbEWB5;vs~JO3C+&pHgL#(cEd@`WOfMZhP6?T)BU>%xfAn?EoRW?cSTJf4+@LzCBu4 z>MaEZNSbh8VQZDdZePo%8`*v~+6M`l#hY|yR5*%#rNbOs%cx_3QzM_Lx7J83OEsRo z*Vx0kwNR*>PQ81 zZhDKC>N^CSS=b{1(H8c^qWgPJ`GcDdwu@OYh?5|0RX(Z2SeL>4#Nmw9O6-Vn@o<$0 zzkZlSD=RwMsLfh12RC2%9K1E1_JRxAk&;)yZW!?Zvn7U<=Wi;Id$UFsQ@7>#koC`e zAc58h;u7YX0Ua8$!rq#eDaF&a_t@~3HL7*<>hZVx(7j{Ccqi1tx%j)9C>vzn0RBZr zBR1dhbi~V*!d!bpvf_e-7Tq|;%zI?H{SWsBxjxA@Sx)OmJ1Eq7AcLo`U%#SDwKcbF zt<9%ReEtNE66o$(xh}qdP4i2|be}8E|H^qLxpsJnx+A$$crX#Rz8mrOoF&+g zUQ%XKr0p$+RD%6u%!9*@Bf9a^9uoJ=Y()j@2K)$9_%yEkU^a(Zt|jq(IM`~?WA^6c zy@ZcTRVv>yV;^ai++B-=esW8LZ#fFh2@>vc`OR=p{HmP7_aIv`b*UCkMbFU;=BuL% z(mlc)vd}$rw4Z}K%TSJ{;o3qN5L(6ge$?KaunO{Y7w|m-0&_YBJ>wxO!K#_wEGhY` zVF|HcQiyXJ{>xnQMut$stp@+9;%vV_`80=90Hc4r>ww~*xWE8zw^Nq8zdL#E7&W?R z&fi?xG*elCL+${4xI=VSQHjtdDC)%aWbWZ;&xp5YZ5t>P-+|G8<8qZ3eWRu+|A7R) zrYd4hM~@wgQkQ$7>g&N-Mt99eV1dbd`zU(O;JS?;%fbr-W{GtlzA(Q7Nhiww9;3)z z4EHkEjnlA#2fKTX3-6Pr-Ce^wfR@YO^EJYd42j!c_hqG_0uleBbw*I0h-XdlEsCD6 z80PCY(6)EJ>4T$Zq>gn77@u7ZYifJ6C=tHZD9P%caf|qjJv5Ff8s2_1@ZRO~2Zk|0 zwMN~{emRJQM(i!F%vfgmz%?$dPeAsHLuP6cN51L!XN#)A#LwK$Th@U6A!Du|2P>Zw zG{9!}>-r?txsE?k@#C@8g~yE(vUeRK(<1{j=#%i$DaX{2xWQ78)D_AtuU zDP?ZaPU(tph8n#~!Li9I%VLr>uZ7ZiNANl24bq3K%x;$69r!gT91p6a#?+Ca&^+V`=oHcgQD5a`Ky3_(J6?{QqCljVj|0)6SsajAE z5?zhZ-shK|;p*=m8(N100YE4RSc&Q|izo?ZLp-Gf!NUaw?gx0pAs=-Z|HU~Z5IO7i z93LwGdDR*;Yi4cIQ2rghs;RUv&NY7o8abf3tFRSpkrd?(1{5>j)h3h49RcPEJ7YBv93%k3HbpoQ{fJC;?j-Z^eO8D&S0a1t?p2so77`I~c&;q7|Hq0SQI zF)&@%5_v&p5E|aY&Hh&dUq{1dL|QT*2v@IBcvg>{V|ipc{pN9fOpvpO%P;ExRPKL1 z&~G*V$mQP;{O6;}1R-a#nB>%+RGq*+>983f0RU?ATC$e!qaN-aDqx;89x)}M6N$GV zaUy%YzC^RIc$S4|2r^ABmC=%FNR@|W(tP*xhtm&ARmdVi9MuqeN1jvRq-8yj`Z$K> z)6%o-Q{dI~oRgd!*v1Ce6RLYjho)nRGX6_&4dT@(*uU25sBDamt<1)SpZe<$<;aE& zK_Mn`LlgA@MtOGs-ZoZ$T17wK1>y4!Qj6CrZ4>h>s$38fCl8fjq1NUy_Grh#bz@}I z7r%GqQfH56HhQ-1vUed+!lj90opxEI>x%{eXY69~)ch9Fv)CJ!=wQes$-@=zXCd8A z8S{7HgZWb%m*~_wF2zm4EXV|dFI6}><>5mQxWMq<|yE; z>ZUUS6uXtQiJ2$ZfQ+Z|qE>Ug?9>+@nZ<`6MD$F{x1T}qpPhsJ+5}jRBK({3-)Ln7 zwQ{dch0!sQ(ET{#7VxX_D;8M;nOQ4XM(h5z;+hvQpHV$#Xg8|_;g@N}fkPO;_yyTj za-9SdL5DtJ9sx5zw z`YQGs_?*e|n#ug&%=^PwUvI1l@xaI$u98f>j{Q+@j5_ao{dSvPw)GAO1nJFo2`-es zEqXf)bGYC0QA-J;;M{A|DoL@{V!#ANKX$2VgIhdIr?r9?pd%mrW&e`dt|N-t^a@ z?Fg5XJ^J`?qy@TxXyFZKdV_nmh*UCopW)PeOiSx>DCm$6xN4^?X-*4krv1oM?tyu7 zm!8>uKI=nCL(&wQQZA|^+45H>FTZwyu&1;&nA(x^ibLBHL#^zqQvyA>f?&&i7`$;v zVJf1S>eAc$m0F1M+dypcC#|TuheV+&&@+ugw(l5It~?Mox1Re0nkC`aCz-F&wPQ4+z)IT-=~dlqpImg(|<} zV>WJ0P5TXw)9&=uOJhdCE5(R@2m-sY3Nw%ENFVF}v`XNUP6RV3m=l4$|5Sgd;_bRE zjW8)j>k9?erH7o1AE_VPiLjo-n!v_F8`os_oVbQhky>P@MrO^!Vh~X(=knwE`%i%B ze5EJaW0*B3B+*#u5N7(LiBXvCi7kCO7kcR}10OvMXax9@774Lp||;qn1D7$aW0 zA#6Su%UY}R8iY>D-(Ph6o_z$7&1VM8B^7X|odqX337Q@iJf|E{)1lNP$f_AUVmcA; z<(Wi;@{P-NLy$VWhiFV&XFk{~?wJ|Xesg@Y!nnC@kyUs(fBPt~$yOU(x^dfe+J5}0 z;;e)=P>L7=UVO?Wr~}=>_00QpN&_`@6(e{j3%lHNoHs zwf?Z}j=N;##WKxgy_s)C)Hr4-K*E;@LPCO93l&fHIRhfftQ7U>XY=D)ca|W!QK114 zBURBD9u{mM)g)K=VK;t+YP+I1a6c#8&0Yb!7W?Ym#Wc1P$3&6Uq{>w#4Ybz%SRz)2M~Q1P?Ni zJ9;TpmWo{x0i#o6dEYGYB4%e;g=+&$q6Pg_SMPi{N4?l};GF&5;$o`YV5QaJ75%T& z0p}HOU59P6tBBWLASB9<$B7rALReB9NDz73&pT+2+ah-(Oy=r!ho$9yLsZG7(|&!= z4GoKul`aoK3L}lAuJNF}jH)l8faCq8EL&%SwqQq7_DcP9Nb}g%>3EKQ#1>y()iVZc zHMMr~MVCqIh-Zmbb7L)dReR5syjsA-`q(<>ZU=9D3tg~N>FHELTU)%?cO`n1jCd5Z z&%Xe0%Z+aNUyfl=^7EB9yps{ic^w01QLdrtOF?ziPzD6C*OcW42WNhr>>nLQ-iV6j zJuj>SGoS&%{f?Rbj+-{}TKmy)qY=R#75uj5m!IzFDX2&OxHkdY@N=J}(p zgi*G&$s=AXX}HQIaG);evD~X|jjI(_^l=JFFbxP!cQJKNN54BJx|OK6^$^-T!vX&0 zcMPW24jiTmtdSDr+$8)b^#4`Cnn5Ct>YuNE{(HO;eszvQh~iTl8lDJT>C#HZdR#8X zZJ-OY*-SXMHB{d4_Ujq6Q3PByt4Vq~CU`tjcyke^;(55IAct}xy4xBqBW!~7hhOS78y_;@b^$$AeK4bV!M zEfF|kpbUtIaYOewU79B~{=dKT4@C?~L+Kw!qmVy;X8~ftUc6uAx4kcxIJAI^&r8qV z(MG#qTb!jG{_wr_P+!aFTMJJMT6reyGpwsVgEnP!uqbVdan4G0Z(pLwNzzg(sFfH< zIw=M@+_f2;*0d)DxfdF$hhB}0{9>*XQD2y+-9EE}J0lsc^>ilSu;U5%I_`KPIp~h; z$cO#EELR4A^kHy#;#ntoMT7M8p)#I&-U8nzgJbz9tl}*#XkaiSNWk|Dd_#Aw>|L^q zyiGX54=@2Kc3OIels7J&>`f1G2AlVR5JGHLcAsG-oLlb=l#xCAMnBsp`e#5l6n3hH zvA-kkI!}pfDrgI3W!*9U-Ef5}pK;|}fBZn&Q+cxtPpmJQ>WLIZplJTO4dPE|^?0*Z zhd1l!Uj9mywns&93nK~@@%c!)#Hs|SB9(#E&+|CCB zeGGmF=!a)!T5g(s7|)Ozh`+mhhZF6y^ix7iNbBzM5z>r@R?BNX{Ol*$Gj^2FZE5@d z^b&(A1oMBS4KO1i3VgB9mgP23{{YSHI5cbfwscS((ThYHFU{keG1=LT>h9j3Fd6JT zaZaA?+E54WTG5FhYG-ErT{<_KyXkZ|hmgl?kq+&VJaKM~+XV}Ou-8U+7p{EZ!Db&xTx&vq=v;G7`vUnPC007fuoA8^j@ z|NJBEoe|xxiPA*uUsT6MMY;kZaQ988jP^}Odq@Bmh{O+DO_k0dI`HnKUTYBm>{!Lr z>?zzD2B$XAj4st^k#)=$>uowsdnbT5ior>tU46X392B(rx zAR;;jc9djQ$NzP8C16b*TR8WULh@XIqNo%FQJ^lkv?{^JDj-ErY^#PU0xoqaWwEUi ziN-|a1(8LcU@S&JEd?J6xFe#(g-1mNtqT#c-U14WnxKe?ES)nqi4NbFFJChE{&UXE z`RAOu_nw)X;BI(Q{I}yx>t3fgIm@OXrPS}QiQG;Xv2f+E{NTx(inkA@Q;Qh&`>-7k zw$z?k)?O+^X?e+42YZ}qrewW4Yt#B#i_G#v(-NNsr!)_l*cHFj_V{DLNKU%>QS%M$ zV&i$%m!IW5O1b^0&&)Ec>zBY_ZENhnfdjVOIJ$nCiHUBDXh?tljoW_y;^>E&XLPU0 zyU%sKIM>^=Vtv?2Kd$IoyS|Rzz1jDiYf1;KzR z;J^-}jd`QY*L3dpytvJTaVZoYI{i?$}-a{y}l~X2* z!}cz{=pC<&d2*b+=?sS8@wI7f-X#;Fud-86;-#{~kA2Yn$WQ zw^;S6AWZu2-Urc_8;l+${oJkz+@Pu&HRc)P<#nLAI%ta1n}Y}4rHsGl66w$TJ`3LR z?1iAK$EM=2X4B+`ajS36{(5_j%d<0sa+iGeJU71agyDuiBogNI`b+l4wwz}l+@R;Q zqhfcXO>ytl?Fw4Br#76S&DC{vm(H3O$MhAfYerd91&_MvmbU}7f#EYeN>2$)7pA6-PrNSEKW;z? z)^l@Q?wou5guP6f6fc$k^&{7=bn7|IIg{iIc?avta+l^$bZx#`(imV<*%nl0)S8#N zJhJSNO^4rFOY`*8k;SJTE+4aJO5Edsm}XOnb)H8rr=i-SJEq)LU=v-vNRxPA;b#42 z7HG+)H9Ue{7dkYZ~5GQRDO7nw&5z!Tvyt#cYGn zH(Df$B#sN6?XeAJ7|-p)YmNqlZ!j}k6L9gj$XoU6KSOu&j|zH>Y$}gwHt{MiXs0T> zqut{z(Aucv(6));Ye)YakQVvB_Q7x2VS~P%XQGUw`j(=cx6yEA{NAGY?ILt5EX;)J z689y>ndJm^G`7CH@+u-MIalardgH`P&+mTt;qRiAPugbpWNbMz)6=6IPj}FE$eUo* z#Ow3FOYFc~aKd>G^ZEIEql51TG~J4BjecMmd5vevZ~8XyP5CdjuRK27HYs_^Ls>7s zi~V~%K{1ZXENUZdKC#JuVzYR-`TnA{W^?oWY$>h~Y-{Yo zbXhe(~`eTk8vOi3HRlW*uq_z`Z38vfjCxg4~wZ{e10(YrVdSHq23@vmx} zz2-cF(y*JoARzv9j7I56n{(87&^v!YX$*mvJq#PR_T;P4YgAzU8>Ok&;dE$tUC`!Z zYJ4-oc|4^tToJKoM?jxd z>=n3P^TA^QeM^A)8L4JPY1lnx4ToXvWBh#qPCj?Gq}W$S8hWnUTV=v&mNo9gz4jHi zOi1*azy@`yGA(rlSR|&=Ogm4P&&5{HlmSCRT?gYQf+@39@7XIqWFYv+Uc&}4@7@XU zM9xZY?3DuK8({;jD_>KWqyS45;G(`ByndW7T(Dh>4F3N1$De&^w`=t;@QYD zN2Z7MQt%hTe*$D)T}oEs+#~ruX)HFL4veQD)hBJTrzxQ0 z6`X5_F?=siG?|2t1NgX;N=#U}TpFuix}bym0DRlEs~8^46WNgPwE$mRro@Dn$4g_` z^e?^gimw39yZ#izhx0_HB>XVI4_{GY!q;X?WA#AxG({l5ldl^AiO~W9cH&|ia*9A$@Br%IK%@mxAtkqu?!KPyAX=4GNz;V`%6}b8?b8Qu&opu|z zHvY2Lw!qbrP;OZvrW;E-oVnx95iPHGt-|6>sUmjYR=s{fuybyft-ut&@v7BJ6#-+% z@KITSD{-7t-H654S!k2`i3e8m552~T257BmS=L8rBz_$l6rzUbu6U#sI#ER=Z56~_Tt zu5b`l)Q>p8dIkUHWfpFxwIbnX0e+V2hJACPJ5{9bHTEk zzIinw&KR4flebLlM7O&4;(-|&;NE@RV;qH2C5m?PW<*R8zS zLAX)E9nxmq?yx#ukUZj|V4Qvu9NI?(O|1u?mNkvr)we}dk7931C>n}3|^%BHXDxfO!_<<==~8MyiW zbe4YW3Xq3}%2;T=e+XO;hwzJnAxZ^PJEy> z(g7~VQ1b`gxs5N*GEnnbxw>y=4g`w~hiC7gfO*9iVKeGN2^wk*(7cLWakFsqLg-Q0 zKNtuk%mVdXzpYsVMpO8ybhmu<)sKf&jtiyF#$oRL#1kDM$uS7XVYR?54~o$+(mh$w zGfluU|u0`ZGi zx)ovL%%su`4abqRU^aB_prelPBuW-w&uk)X9|xWDMjf{bcg{4rTDKTTN6i9oxkB^8 zJQhBh2_fN`0H6LeE(*g%bTt{r3+4cPXptlA_9WY3&$yECQh=|27qT_;ye~Unz1I~bpSub7fUdF3bmRf&O(?z6{M;M;Bk|{6OayFm<^V3U%@(yW=AHU z>{%n|S>v7O@f=&3CdG3Zy;&V%oWL-P=XYRN6f=eLBUzaVw3&YKxi4m=E!{yzi&J3s zh|Bj2ux`EF=cG%BfJj-(JE_3IriaH)APvl@O#;=2t}VjhSOvVH8 z9A8ZuHNp=nPdz1s-j;2oPm`Kk!K3Br+g{{CarjrNQnFhDpj-BwJiiBuuk(W0{R(uf zlSP2VYloZ}h6i(&R7_gzG*~Qhqj)+L=X2{xM>ictdc?r`Yj}w8f=Rs=!#F?X@bV25 zbEX)PH9vuxZ|o9#5yh-pB^_|^#jj#t)ZQigrP=JFK;QlcLa`P#DZaE8al0gg-+7<(zNKL3^%r0IqT;BfwB#p3ff9ERy}3lZ5JYE4v-^b( z3lQz74MlO2xi^-<qbI*>+BN>P$I7syF3$=(lCCCYV*H1K%WPOFE0z{9bCEt*u zFW^?c6Qkt}vLy-9?As7144=X;L3Hyl)ipFI>aDol=?3b;kC^iikK@W|SiH$BvSn72 zUZr&&sMceT*Pca5XbJZ0ItC(bdvUwNj5J6jv&xZaCMoI-lUO<9tF=T5MMcq)nS}1d zntx^$%1G!32Rg_bzSlYcJd~DvLBg#;x**g1LL`$ql>45;>8=BJRA&%Wi+wy$BPVXphIX)=e*xAt} z^WEmE5$*@;6F3yj<(b)fO7RaL`d?CBN5B!ckIK-&oKNR-794LqyTNcG{viwWq;}pa zG~VZ^gX<3Om(n>WmIln2%T}rf&7wZ>Og#5#|b+a&RceXxaP5k5xwpZ7t_>uBg6jTlJwq0P%Fn;p8VgdOcUK2zyu-g0#0N z9~r)%)aNAaPOH1BbNAVit@7ZBj2M%qyfH`2358^fnce}aPdJ>uzSI8|MR7PBV<3bP Z=i$ul&LcveFGD39f8TjNg|ou9{sWDy{mTFV literal 0 HcmV?d00001 diff --git a/Team-Shivam/SheShield/com.android.builder.sdk.LicenceNotAcceptedException: b/Team-Shivam/SheShield/com.android.builder.sdk.LicenceNotAcceptedException: new file mode 100644 index 0000000..e69de29 diff --git a/Team-Shivam/SheShield/esp32/sheshield_band.ino b/Team-Shivam/SheShield/esp32/sheshield_band.ino new file mode 100644 index 0000000..5da97b8 --- /dev/null +++ b/Team-Shivam/SheShield/esp32/sheshield_band.ino @@ -0,0 +1,229 @@ +/* + * SheShield ESP32 β€” Bluetooth Classic (Serial) + * ============================================== + * + * Components: + * - Push Button (Switch) β†’ GPIO 4 (triggers SOS) + * - Buzzer β†’ GPIO 5 (alert from app) + * - LED β†’ GPIO 2 (status indicator) + * - MPU6050 Accelerometerβ†’ SDA=21, SCL=22 (shake detection) + * + * Broadcasts as "SheShield" via Bluetooth Classic (SPP). + * + * Protocol β€” ESP32 β†’ App (Serial strings): + * "SOS\n" β†’ SOS button pressed + * "SHAKE\n" β†’ Shake detected + * + * Protocol β€” App β†’ ESP32 (Serial strings): + * "BUZZER_ON\n" β†’ Activate buzzer + * "BUZZER_OFF\n" β†’ Stop buzzer + * "LED_ON\n" β†’ Turn LED on + * "LED_OFF\n" β†’ Turn LED off + * + * ⚠️ CHANGE THE PIN NUMBERS BELOW IF YOUR WIRING IS DIFFERENT! + */ + +#include "BluetoothSerial.h" +#include + +BluetoothSerial SerialBT; + +// ==================== PIN CONFIGURATION ==================== +// ⚠️ CHANGE THESE TO MATCH YOUR WIRING +#define BUTTON_PIN 4 // Push button / switch +#define BUZZER_PIN 5 // Buzzer +#define LED_PIN 2 // LED (GPIO 2 = built-in on most ESP32) +#define MPU_SDA 21 // Accelerometer SDA +#define MPU_SCL 22 // Accelerometer SCL + +// ==================== SHAKE DETECTION ==================== +#define MPU6050_ADDR 0x68 +#define SHAKE_THRESHOLD 18000 // Adjust: higher = less sensitive +#define SHAKE_COOLDOWN_MS 3000 // Min ms between shake alerts + +// ==================== STATE ==================== +unsigned long lastShakeTime = 0; +unsigned long lastButtonPress = 0; +bool buzzerActive = false; +int buzzerBeepCount = 0; +unsigned long buzzerTimer = 0; +String inputBuffer = ""; + +// ==================== MPU6050 SETUP ==================== +bool mpuAvailable = false; + +void setupMPU6050() { + Wire.begin(MPU_SDA, MPU_SCL); + Wire.beginTransmission(MPU6050_ADDR); + Wire.write(0x6B); // Power management + Wire.write(0); // Wake up + byte error = Wire.endTransmission(true); + + if (error == 0) { + mpuAvailable = true; + Serial.println("βœ… MPU6050 found!"); + } else { + mpuAvailable = false; + Serial.println("⚠️ MPU6050 not found β€” shake detection disabled"); + } +} + +// ==================== READ ACCELEROMETER ==================== +bool detectShake() { + if (!mpuAvailable) + return false; + + Wire.beginTransmission(MPU6050_ADDR); + Wire.write(0x3B); + if (Wire.endTransmission(false) != 0) + return false; + + Wire.requestFrom((int)MPU6050_ADDR, 6, (int)true); + if (Wire.available() < 6) + return false; + + int16_t ax = Wire.read() << 8 | Wire.read(); + int16_t ay = Wire.read() << 8 | Wire.read(); + int16_t az = Wire.read() << 8 | Wire.read(); + + float magnitude = + sqrt((float)(ax * ax) + (float)(ay * ay) + (float)(az * az)); + return magnitude > SHAKE_THRESHOLD; +} + +// ==================== HANDLE APP COMMANDS ==================== +void handleAppCommand(String cmd) { + cmd.trim(); + Serial.printf("πŸ“₯ App command: %s\n", cmd.c_str()); + + if (cmd == "BUZZER_ON") { + buzzerActive = true; + buzzerBeepCount = 6; + buzzerTimer = millis(); + Serial.println("πŸ”Š Buzzer ON"); + } else if (cmd == "BUZZER_OFF") { + buzzerActive = false; + noTone(BUZZER_PIN); + Serial.println("πŸ”‡ Buzzer OFF"); + } else if (cmd == "LED_ON") { + digitalWrite(LED_PIN, HIGH); + Serial.println("πŸ’‘ LED ON"); + } else if (cmd == "LED_OFF") { + digitalWrite(LED_PIN, LOW); + Serial.println("πŸ’‘ LED OFF"); + } +} + +// ==================== BUZZER HANDLER ==================== +void handleBuzzer() { + if (!buzzerActive || buzzerBeepCount <= 0) + return; + + unsigned long now = millis(); + if (now - buzzerTimer > 300) { + buzzerTimer = now; + buzzerBeepCount--; + + if (buzzerBeepCount % 2 == 1) { + tone(BUZZER_PIN, 2500); + } else { + noTone(BUZZER_PIN); + } + + if (buzzerBeepCount <= 0) { + buzzerActive = false; + noTone(BUZZER_PIN); + } + } +} + +// ==================== SETUP ==================== +void setup() { + Serial.begin(115200); + Serial.println("\nπŸ›‘οΈ SheShield Band Starting..."); + + // Configure pins + pinMode(BUTTON_PIN, INPUT_PULLUP); + pinMode(BUZZER_PIN, OUTPUT); + pinMode(LED_PIN, OUTPUT); + + // Startup indicator + digitalWrite(LED_PIN, HIGH); + tone(BUZZER_PIN, 1000, 300); + delay(500); + digitalWrite(LED_PIN, LOW); + + // Initialize accelerometer + setupMPU6050(); + + // Initialize Bluetooth Classic + SerialBT.begin("SheShield"); // Device name shown in scan + Serial.println("βœ… Bluetooth Classic started as: SheShield"); + Serial.println("πŸ›‘οΈ SheShield Band Ready!\n"); +} + +// ==================== LOOP ==================== +void loop() { + unsigned long now = millis(); + + // --- Button press detection (SOS) --- + if (digitalRead(BUTTON_PIN) == LOW) { // Active LOW with pull-up + if (now - lastButtonPress > 1000) { // 1s debounce + lastButtonPress = now; + Serial.println("🚨 SOS BUTTON PRESSED!"); + + // Send to app + SerialBT.println("SOS"); + + // Feedback + digitalWrite(LED_PIN, HIGH); + tone(BUZZER_PIN, 2000, 200); + delay(200); + digitalWrite(LED_PIN, LOW); + } + } + + // --- Shake detection --- + if (now - lastShakeTime > SHAKE_COOLDOWN_MS) { + if (detectShake()) { + lastShakeTime = now; + Serial.println("πŸ“³ SHAKE DETECTED!"); + + // Send to app + SerialBT.println("SHAKE"); + + // Feedback + digitalWrite(LED_PIN, HIGH); + tone(BUZZER_PIN, 1500, 150); + delay(150); + digitalWrite(LED_PIN, LOW); + } + } + + // --- Read commands from app --- + while (SerialBT.available()) { + char c = SerialBT.read(); + if (c == '\n') { + handleAppCommand(inputBuffer); + inputBuffer = ""; + } else if (c != '\r') { + inputBuffer += c; + } + } + + // --- Handle buzzer beeping --- + handleBuzzer(); + + // --- Status LED blink when connected --- + if (SerialBT.hasClient()) { + static unsigned long ledTimer = 0; + if (now - ledTimer > 3000) { + ledTimer = now; + digitalWrite(LED_PIN, HIGH); + delay(50); + digitalWrite(LED_PIN, LOW); + } + } + + delay(50); +} diff --git a/Team-Shivam/SheShield/lib/main.dart b/Team-Shivam/SheShield/lib/main.dart new file mode 100644 index 0000000..fa29ce7 --- /dev/null +++ b/Team-Shivam/SheShield/lib/main.dart @@ -0,0 +1,552 @@ +import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; +import 'package:firebase_core/firebase_core.dart'; +import 'package:firebase_auth/firebase_auth.dart'; +import 'package:shared_preferences/shared_preferences.dart'; +import 'screens/home_screen.dart'; +import 'screens/login_screen.dart'; +import 'screens/sos_screen.dart'; +import 'screens/security_setup_screen.dart'; +import 'services/notification_service.dart'; +import 'services/bluetooth_service.dart'; +import 'services/location_service.dart'; +import 'services/alert_service.dart'; +import 'services/sms_service.dart'; +import 'services/video_recording_service.dart'; + +/// Global theme mode notifier β€” toggled from ProfileScreen. +final ValueNotifier themeNotifier = ValueNotifier(ThemeMode.dark); + +void main() async { + WidgetsFlutterBinding.ensureInitialized(); + + // Load saved theme preference + try { + final prefs = await SharedPreferences.getInstance(); + final isDark = prefs.getBool('dark_mode') ?? true; + themeNotifier.value = isDark ? ThemeMode.dark : ThemeMode.light; + } catch (_) {} + + // Initialize Firebase + try { + await Firebase.initializeApp(); + } catch (_) {} + + // Notification setup + try { + await NotificationService.initialize(); + } catch (_) {} + + // Auto-connect to last saved Bluetooth device + try { + await BluetoothService.instance.tryAutoConnect(); + } catch (_) {} + + // Register global SOS listener (fires from any screen) + BluetoothService.instance.onCommand = (cmd) { + if (cmd == BraceletCommand.sos || cmd == BraceletCommand.shake) { + _triggerGlobalSOS(); + } + }; + + SystemChrome.setSystemUIOverlayStyle( + const SystemUiOverlayStyle( + statusBarColor: Colors.transparent, + statusBarIconBrightness: Brightness.light, + systemNavigationBarColor: Color(0xFF0A0A0F), + systemNavigationBarIconBrightness: Brightness.light, + ), + ); + runApp(const SheShieldApp()); +} + +/// Trigger SOS from any screen by pushing a full-screen alert. +void _triggerGlobalSOS() { + final nav = BluetoothService.navigatorKey.currentState; + if (nav == null) return; + + // Prevent duplicate SOS screens + // Fire all SOS services + try { LocationService.getCurrentLocation().then((pos) { + NotificationService.sendSOSAlert(lat: pos.latitude, lng: pos.longitude); + AlertService.broadcastAlert(lat: pos.latitude, lng: pos.longitude); + SmsService.sendSOSToAllContacts(lat: pos.latitude, lng: pos.longitude); + }); } catch (_) {} + + try { VideoRecordingService.startSOSRecording(); } catch (_) {} + try { LocationService.startSOS('user_placeholder'); } catch (_) {} + try { BluetoothService.instance.activateBuzzer(); } catch (_) {} + + HapticFeedback.heavyImpact(); + + nav.push( + PageRouteBuilder( + opaque: true, + pageBuilder: (_, __, ___) => SOSScreen( + onCancel: () { + try { LocationService.stopSOS(); } catch (_) {} + try { VideoRecordingService.stopAndUpload(); } catch (_) {} + try { BluetoothService.instance.stopBuzzer(); } catch (_) {} + nav.pop(); + }, + ), + transitionsBuilder: (_, anim, __, child) => + FadeTransition(opacity: anim, child: child), + transitionDuration: const Duration(milliseconds: 300), + ), + ); +} + +class SheShieldApp extends StatelessWidget { + const SheShieldApp({super.key}); + + // ──── DARK THEME ──── + static final _darkTheme = ThemeData( + useMaterial3: true, + brightness: Brightness.dark, + scaffoldBackgroundColor: const Color(0xFF0A0A0F), + colorScheme: const ColorScheme.dark( + primary: Color(0xFFE53935), + secondary: Color(0xFFE53935), + surface: Color(0xFF1A1A2E), + onSurface: Color(0xFFF0F0F5), + ), + fontFamily: 'Inter', + appBarTheme: const AppBarTheme( + backgroundColor: Color(0xFF0A0A0F), + elevation: 0, + centerTitle: false, + titleTextStyle: TextStyle( + fontFamily: 'Inter', + fontSize: 20, + fontWeight: FontWeight.w700, + color: Color(0xFFF0F0F5), + letterSpacing: -0.3, + ), + iconTheme: IconThemeData(color: Color(0xFFF0F0F5)), + ), + cardTheme: CardThemeData( + color: const Color(0xFF1A1A2E), + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(16), + side: BorderSide(color: Colors.white.withValues(alpha: 0.06)), + ), + elevation: 0, + margin: EdgeInsets.zero, + ), + elevatedButtonTheme: ElevatedButtonThemeData( + style: ElevatedButton.styleFrom( + backgroundColor: const Color(0xFFE53935), + foregroundColor: Colors.white, + padding: const EdgeInsets.symmetric(vertical: 16, horizontal: 24), + shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(16)), + textStyle: const TextStyle( + fontFamily: 'Inter', fontSize: 15, fontWeight: FontWeight.w700), + ), + ), + inputDecorationTheme: InputDecorationTheme( + filled: true, + fillColor: const Color(0xFF1A1A2E), + border: OutlineInputBorder( + borderRadius: BorderRadius.circular(10), + borderSide: BorderSide(color: Colors.white.withValues(alpha: 0.06)), + ), + enabledBorder: OutlineInputBorder( + borderRadius: BorderRadius.circular(10), + borderSide: BorderSide(color: Colors.white.withValues(alpha: 0.06)), + ), + focusedBorder: OutlineInputBorder( + borderRadius: BorderRadius.circular(10), + borderSide: const BorderSide(color: Color(0xFFE53935)), + ), + labelStyle: const TextStyle( + color: Color(0xFF8A8A9A), fontSize: 12, fontWeight: FontWeight.w600), + hintStyle: const TextStyle(color: Color(0xFF5A5A6E), fontSize: 15), + contentPadding: + const EdgeInsets.symmetric(horizontal: 16, vertical: 14), + ), + ); + + // ──── LIGHT THEME ──── + static final _lightTheme = ThemeData( + useMaterial3: true, + brightness: Brightness.light, + scaffoldBackgroundColor: const Color(0xFFF5F5F8), + colorScheme: const ColorScheme.light( + primary: Color(0xFFE53935), + secondary: Color(0xFFE53935), + surface: Colors.white, + onSurface: Color(0xFF1A1A2E), + ), + fontFamily: 'Inter', + appBarTheme: const AppBarTheme( + backgroundColor: Color(0xFFF5F5F8), + elevation: 0, + centerTitle: false, + titleTextStyle: TextStyle( + fontFamily: 'Inter', + fontSize: 20, + fontWeight: FontWeight.w700, + color: Color(0xFF1A1A2E), + letterSpacing: -0.3, + ), + iconTheme: IconThemeData(color: Color(0xFF1A1A2E)), + ), + cardTheme: CardThemeData( + color: Colors.white, + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(16), + side: BorderSide(color: Colors.black.withValues(alpha: 0.08)), + ), + elevation: 0, + margin: EdgeInsets.zero, + ), + elevatedButtonTheme: ElevatedButtonThemeData( + style: ElevatedButton.styleFrom( + backgroundColor: const Color(0xFFE53935), + foregroundColor: Colors.white, + padding: const EdgeInsets.symmetric(vertical: 16, horizontal: 24), + shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(16)), + textStyle: const TextStyle( + fontFamily: 'Inter', fontSize: 15, fontWeight: FontWeight.w700), + ), + ), + inputDecorationTheme: InputDecorationTheme( + filled: true, + fillColor: Colors.white, + border: OutlineInputBorder( + borderRadius: BorderRadius.circular(10), + borderSide: BorderSide(color: Colors.black.withValues(alpha: 0.08)), + ), + enabledBorder: OutlineInputBorder( + borderRadius: BorderRadius.circular(10), + borderSide: BorderSide(color: Colors.black.withValues(alpha: 0.08)), + ), + focusedBorder: OutlineInputBorder( + borderRadius: BorderRadius.circular(10), + borderSide: const BorderSide(color: Color(0xFFE53935)), + ), + labelStyle: const TextStyle( + color: Color(0xFF5A5A6E), fontSize: 12, fontWeight: FontWeight.w600), + hintStyle: const TextStyle(color: Color(0xFF8A8A9A), fontSize: 15), + contentPadding: + const EdgeInsets.symmetric(horizontal: 16, vertical: 14), + ), + ); + + @override + Widget build(BuildContext context) { + return ValueListenableBuilder( + valueListenable: themeNotifier, + builder: (_, mode, __) { + return MaterialApp( + title: 'She Shield', + debugShowCheckedModeBanner: false, + themeMode: mode, + theme: _lightTheme, + darkTheme: _darkTheme, + navigatorKey: BluetoothService.navigatorKey, + home: const _SplashGate(), + ); + }, + ); + } +} + +/// Shows the animated splash for at least 2.5 s, then transitions +/// to HomeScreen or LoginScreen based on Firebase auth state. +class _SplashGate extends StatefulWidget { + const _SplashGate(); + + @override + State<_SplashGate> createState() => _SplashGateState(); +} + +class _SplashGateState extends State<_SplashGate> { + bool _minTimeDone = false; + bool _authResolved = false; + bool? _isLoggedIn; + bool _securityChecked = false; + bool _securityDone = false; + + @override + void initState() { + super.initState(); + // Minimum splash duration + Future.delayed(const Duration(milliseconds: 2500), () { + if (mounted) setState(() => _minTimeDone = true); + }); + // Listen to auth + FirebaseAuth.instance.authStateChanges().first.then((user) { + if (mounted) { + setState(() { + _authResolved = true; + _isLoggedIn = user != null; + }); + // Check security setup status if logged in + if (user != null) _checkSecuritySetup(); + } + }); + } + + Future _checkSecuritySetup() async { + final done = await SecuritySetupScreen.isCompleted(); + if (mounted) { + setState(() { + _securityChecked = true; + _securityDone = done; + }); + // If not done, show the security setup screen + if (!done) { + final result = await Navigator.of(context).push( + MaterialPageRoute(builder: (_) => const SecuritySetupScreen()), + ); + if (result == true && mounted) { + setState(() => _securityDone = true); + } + } + } + } + + @override + Widget build(BuildContext context) { + if (_minTimeDone && _authResolved) { + if (_isLoggedIn == true) { + // Wait for security check to complete + if (!_securityChecked) return const _SplashScreen(); + if (!_securityDone) return const _SplashScreen(); + return const HomeScreen(); + } + return const LoginScreen(); + } + return const _SplashScreen(); + } +} + +// ══════════════════════════════════════════════════════════ +// ANIMATED SPLASH SCREEN (shown during Firebase init) +// ══════════════════════════════════════════════════════════ + +class _SplashScreen extends StatefulWidget { + const _SplashScreen(); + + @override + State<_SplashScreen> createState() => _SplashScreenState(); +} + +class _SplashScreenState extends State<_SplashScreen> + with TickerProviderStateMixin { + late AnimationController _pulseCtrl; + late AnimationController _rotateCtrl; + late AnimationController _fadeCtrl; + late Animation _pulseAnim; + late Animation _fadeAnim; + + @override + void initState() { + super.initState(); + + // Pulse: logo breathes + _pulseCtrl = AnimationController( + vsync: this, + duration: const Duration(milliseconds: 1400), + )..repeat(reverse: true); + _pulseAnim = Tween(begin: 0.88, end: 1.0).animate( + CurvedAnimation(parent: _pulseCtrl, curve: Curves.easeInOut), + ); + + // Rotate: glow ring spins + _rotateCtrl = AnimationController( + vsync: this, + duration: const Duration(seconds: 3), + )..repeat(); + + // Fade: everything fades in + _fadeCtrl = AnimationController( + vsync: this, + duration: const Duration(milliseconds: 900), + )..forward(); + _fadeAnim = CurvedAnimation(parent: _fadeCtrl, curve: Curves.easeOut); + } + + @override + void dispose() { + _pulseCtrl.dispose(); + _rotateCtrl.dispose(); + _fadeCtrl.dispose(); + super.dispose(); + } + + @override + Widget build(BuildContext context) { + return Scaffold( + backgroundColor: const Color(0xFF0A0A0F), + body: Center( + child: FadeTransition( + opacity: _fadeAnim, + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + // ── Logo with rotating glow ring ── + SizedBox( + width: 180, + height: 180, + child: Stack( + alignment: Alignment.center, + children: [ + // Rotating outer glow ring + AnimatedBuilder( + animation: _rotateCtrl, + builder: (_, __) => Transform.rotate( + angle: _rotateCtrl.value * 6.2832, // 2Ο€ + child: Container( + width: 170, + height: 170, + decoration: BoxDecoration( + shape: BoxShape.circle, + gradient: SweepGradient( + colors: [ + const Color(0xFFE53935).withValues(alpha: 0.0), + const Color(0xFFE53935).withValues(alpha: 0.6), + const Color(0xFFFF7043).withValues(alpha: 0.3), + const Color(0xFFE53935).withValues(alpha: 0.0), + ], + ), + ), + ), + ), + ), + // Dark inner circle (mask) + Container( + width: 155, + height: 155, + decoration: const BoxDecoration( + shape: BoxShape.circle, + color: Color(0xFF0A0A0F), + ), + ), + // Pulsing logo + AnimatedBuilder( + animation: _pulseAnim, + builder: (_, __) => Transform.scale( + scale: _pulseAnim.value, + child: Container( + width: 120, + height: 120, + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(60), + boxShadow: [ + BoxShadow( + color: const Color(0xFFE53935) + .withValues(alpha: 0.25 * _pulseAnim.value), + blurRadius: 50, + spreadRadius: 2, + ), + ], + ), + child: ClipRRect( + borderRadius: BorderRadius.circular(60), + child: Image.asset( + 'assets/images/logo.png', + fit: BoxFit.contain, + ), + ), + ), + ), + ), + ], + ), + ), + const SizedBox(height: 36), + // ── App name ── + RichText( + text: const TextSpan( + style: TextStyle( + fontSize: 30, + fontWeight: FontWeight.w800, + fontFamily: 'Inter', + letterSpacing: -0.5, + ), + children: [ + TextSpan( + text: 'She', + style: TextStyle(color: Color(0xFFF0F0F5)), + ), + TextSpan( + text: 'Shield', + style: TextStyle(color: Color(0xFFE53935)), + ), + ], + ), + ), + const SizedBox(height: 8), + const Text( + 'SMART SAFETY SYSTEM', + style: TextStyle( + fontSize: 12, + fontWeight: FontWeight.w600, + color: Color(0xFF5A5A6E), + letterSpacing: 3.0, + ), + ), + const SizedBox(height: 48), + // ── Shimmer loading bar ── + ClipRRect( + borderRadius: BorderRadius.circular(4), + child: SizedBox( + width: 120, + height: 4, + child: AnimatedBuilder( + animation: _rotateCtrl, + builder: (_, __) { + return CustomPaint( + painter: _ShimmerBarPainter(_rotateCtrl.value), + ); + }, + ), + ), + ), + ], + ), + ), + ), + ); + } +} + +/// Draws a small shimmer bar that slides across. +class _ShimmerBarPainter extends CustomPainter { + final double progress; + _ShimmerBarPainter(this.progress); + + @override + void paint(Canvas canvas, Size size) { + // Track + canvas.drawRRect( + RRect.fromRectAndRadius( + Rect.fromLTWH(0, 0, size.width, size.height), + const Radius.circular(4), + ), + Paint()..color = const Color(0xFF1A1A2E), + ); + + // Shimmer + final shimmerWidth = size.width * 0.4; + final left = -shimmerWidth + (size.width + shimmerWidth) * progress; + final shimmerRect = Rect.fromLTWH(left, 0, shimmerWidth, size.height); + canvas.drawRRect( + RRect.fromRectAndRadius(shimmerRect, const Radius.circular(4)), + Paint() + ..shader = const LinearGradient( + colors: [ + Color(0x00E53935), + Color(0xFFE53935), + Color(0x00E53935), + ], + ).createShader(shimmerRect), + ); + } + + @override + bool shouldRepaint(_ShimmerBarPainter old) => old.progress != progress; +} diff --git a/Team-Shivam/SheShield/lib/screens/bluetooth_screen.dart b/Team-Shivam/SheShield/lib/screens/bluetooth_screen.dart new file mode 100644 index 0000000..c17dc03 --- /dev/null +++ b/Team-Shivam/SheShield/lib/screens/bluetooth_screen.dart @@ -0,0 +1,657 @@ +import 'dart:async'; +import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; +import 'package:flutter_bluetooth_serial_ble/flutter_bluetooth_serial_ble.dart'; +import 'package:permission_handler/permission_handler.dart'; +import '../services/bluetooth_service.dart'; + +class BluetoothScreen extends StatefulWidget { + const BluetoothScreen({super.key}); + @override + State createState() => _BluetoothScreenState(); +} + +class _BluetoothScreenState extends State { + final FlutterBluetoothSerial _bt = FlutterBluetoothSerial.instance; + final BluetoothService _service = BluetoothService.instance; + + List _scanResults = []; + List _bondedDevices = []; + bool _isScanning = false; + StreamSubscription? _discoverySub; + + @override + void initState() { + super.initState(); + _service.addListener(_onServiceChanged); + _init(); + } + + @override + void dispose() { + _discoverySub?.cancel(); + _service.removeListener(_onServiceChanged); + super.dispose(); + } + + void _onServiceChanged() { + if (mounted) setState(() {}); + } + + Future _init() async { + await _requestPermissions(); + await _loadBondedDevices(); + if (!_service.isConnected) _startScan(); + } + + Future _requestPermissions() async { + await [ + Permission.bluetooth, + Permission.bluetoothScan, + Permission.bluetoothConnect, + Permission.location, + ].request(); + } + + Future _loadBondedDevices() async { + try { + final bonded = await _bt.getBondedDevices(); + if (mounted) setState(() => _bondedDevices = bonded); + } catch (_) {} + } + + Future _startScan() async { + if (_isScanning) return; + + // Check if Bluetooth is enabled + final isOn = await _bt.isEnabled ?? false; + if (!isOn) { + if (mounted) { + showDialog( + context: context, + builder: (ctx) => AlertDialog( + backgroundColor: Theme.of(context).colorScheme.surface, + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(20)), + title: const Row( + children: [ + Icon(Icons.bluetooth_disabled, + color: Color(0xFFE53935), size: 24), + SizedBox(width: 10), + Text('Bluetooth Off', + style: TextStyle( + fontWeight: FontWeight.w700, fontSize: 18)), + ], + ), + content: const Text( + 'Please enable Bluetooth to connect to your SheShield device.', + style: TextStyle(fontSize: 14), + ), + actions: [ + TextButton( + onPressed: () => Navigator.pop(ctx), + child: const Text('Cancel'), + ), + TextButton( + onPressed: () async { + Navigator.pop(ctx); + await _bt.requestEnable(); + await Future.delayed(const Duration(seconds: 1)); + _startScan(); + }, + child: const Text('Enable', + style: TextStyle( + color: Color(0xFFE53935), + fontWeight: FontWeight.w700)), + ), + ], + ), + ); + } + return; + } + + setState(() { + _scanResults = []; + _isScanning = true; + }); + + try { + _discoverySub?.cancel(); + _discoverySub = _bt.startDiscovery().listen( + (result) { + if (!mounted) return; + setState(() { + final idx = _scanResults.indexWhere( + (r) => r.device.address == result.device.address); + if (idx >= 0) { + _scanResults[idx] = result; + } else { + _scanResults.add(result); + } + }); + }, + onDone: () { + if (mounted) setState(() => _isScanning = false); + }, + onError: (_) { + if (mounted) setState(() => _isScanning = false); + }, + ); + } catch (e) { + _snack('⚠️ Scan failed: $e'); + setState(() => _isScanning = false); + } + } + + void _stopScan() { + _discoverySub?.cancel(); + setState(() => _isScanning = false); + } + + Future _connectToDevice(BluetoothDevice device) async { + _stopScan(); + final name = device.name ?? device.address; + _snack('πŸ”— Connecting to $name…'); + + try { + if (device.isBonded != true) { + final bonded = await FlutterBluetoothSerial.instance + .bondDeviceAtAddress(device.address); + if (bonded != true) { + _popup('❌ Pairing Failed', 'Could not pair with $name.'); + return; + } + } + + final ok = await _service.connect(device); + if (ok && mounted) { + HapticFeedback.heavyImpact(); + _snack('βœ… Connected to $name'); + await _loadBondedDevices(); + } else { + _popup('❌ Failed', 'Could not connect to $name.'); + } + } catch (e) { + _popup('❌ Error', '$e'); + } + } + + void _disconnect() { + _service.disconnect(); + _snack('πŸ”΄ Disconnected'); + } + + void _popup(String title, String msg) { + if (!mounted) return; + showDialog( + context: context, + builder: (ctx) => AlertDialog( + backgroundColor: Theme.of(context).colorScheme.surface, + shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(20)), + title: Text(title, + style: const TextStyle( + fontWeight: FontWeight.w700, fontSize: 18)), + content: + Text(msg, style: const TextStyle(fontSize: 14)), + actions: [ + TextButton( + onPressed: () => Navigator.pop(ctx), + child: const Text('OK', + style: TextStyle( + color: Color(0xFFE53935), + fontWeight: FontWeight.w700)), + ), + ], + ), + ); + } + + void _snack(String msg) { + if (!mounted) return; + ScaffoldMessenger.of(context).showSnackBar(SnackBar( + content: Text(msg, style: const TextStyle(fontWeight: FontWeight.w600)), + backgroundColor: Theme.of(context).colorScheme.surface, + behavior: SnackBarBehavior.floating, + shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(12)), + margin: const EdgeInsets.all(16), + )); + } + + @override + Widget build(BuildContext context) { + final isDark = Theme.of(context).brightness == Brightness.dark; + return Scaffold( + appBar: AppBar( + title: const Text('Bluetooth Pairing'), + leading: IconButton( + icon: Container( + width: 40, + height: 40, + decoration: BoxDecoration( + color: isDark ? const Color(0xFF1A1A2E) : Colors.white, + borderRadius: BorderRadius.circular(10), + border: Border.all( + color: isDark + ? Colors.white.withValues(alpha: 0.06) + : Colors.black.withValues(alpha: 0.08)), + ), + child: const Icon(Icons.arrow_back, size: 18), + ), + onPressed: () => Navigator.pop(context), + ), + ), + body: SingleChildScrollView( + child: Column( + children: [ + // ── Connected card ── + if (_service.isConnected) _connectedCard(isDark), + const SizedBox(height: 8), + + // ── Scan button ── + Padding( + padding: const EdgeInsets.symmetric(horizontal: 20), + child: SizedBox( + width: double.infinity, + child: ElevatedButton.icon( + onPressed: _isScanning ? _stopScan : _startScan, + icon: _isScanning + ? const SizedBox( + width: 18, + height: 18, + child: CircularProgressIndicator( + strokeWidth: 2, color: Colors.white)) + : const Icon(Icons.bluetooth_searching, size: 20), + label: + Text(_isScanning ? 'Stop Scanning' : 'Scan for Devices'), + style: ElevatedButton.styleFrom( + backgroundColor: const Color(0xFF42A5F5), + foregroundColor: Colors.white, + padding: const EdgeInsets.symmetric(vertical: 14), + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(16)), + elevation: 0, + ), + ), + ), + ), + const SizedBox(height: 16), + + // ── Paired devices ── + if (_bondedDevices.isNotEmpty) ...[ + _header('PAIRED DEVICES', _bondedDevices.length, isDark), + const SizedBox(height: 10), + ListView.separated( + shrinkWrap: true, + physics: const NeverScrollableScrollPhysics(), + padding: const EdgeInsets.symmetric(horizontal: 20), + itemCount: _bondedDevices.length, + separatorBuilder: (_, __) => const SizedBox(height: 10), + itemBuilder: (_, i) => + _deviceCard(_bondedDevices[i], null, isDark: isDark, isPaired: true), + ), + const SizedBox(height: 16), + ], + + // ── Discovered devices ── + _header('NEARBY DEVICES', _scanResults.length, isDark), + const SizedBox(height: 10), + if (_scanResults.isEmpty) + Padding( + padding: const EdgeInsets.symmetric(vertical: 40), + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + Icon(Icons.bluetooth_disabled, + size: 48, + color: isDark + ? Colors.white.withValues(alpha: 0.15) + : Colors.black.withValues(alpha: 0.15)), + const SizedBox(height: 12), + Text( + _isScanning + ? 'Searching…' + : 'Tap "Scan" to find devices', + style: TextStyle( + fontSize: 14, + fontWeight: FontWeight.w500, + color: isDark + ? const Color(0xFF5A5A6E) + : const Color(0xFF8A8A9A), + ), + ), + ], + ), + ) + else + ListView.separated( + shrinkWrap: true, + physics: const NeverScrollableScrollPhysics(), + padding: const EdgeInsets.symmetric(horizontal: 20), + itemCount: _scanResults.length, + separatorBuilder: (_, __) => const SizedBox(height: 10), + itemBuilder: (_, i) => _deviceCard( + _scanResults[i].device, _scanResults[i].rssi, + isDark: isDark), + ), + const SizedBox(height: 16), + ], + ), + ), + ); + } + + Widget _header(String title, int count, bool isDark) => Padding( + padding: const EdgeInsets.symmetric(horizontal: 24), + child: Row( + children: [ + Text(title, + style: TextStyle( + fontSize: 12, + fontWeight: FontWeight.w700, + color: isDark + ? const Color(0xFF5A5A6E) + : const Color(0xFF8A8A9A), + letterSpacing: 0.5, + )), + const Spacer(), + Text('$count found', + style: TextStyle( + fontSize: 12, + color: isDark + ? const Color(0xFF5A5A6E) + : const Color(0xFF8A8A9A), + )), + ], + ), + ); + + Widget _connectedCard(bool isDark) { + return Padding( + padding: const EdgeInsets.symmetric(horizontal: 20, vertical: 8), + child: Container( + padding: const EdgeInsets.all(16), + decoration: BoxDecoration( + gradient: const LinearGradient( + colors: [Color(0xFF1B5E20), Color(0xFF1A1A2E)], + begin: Alignment.topLeft, + end: Alignment.bottomRight, + ), + borderRadius: BorderRadius.circular(16), + border: Border.all( + color: const Color(0xFF00E676).withValues(alpha: 0.3)), + ), + child: Column( + children: [ + Row( + children: [ + Container( + width: 48, + height: 48, + decoration: BoxDecoration( + color: const Color(0x2600E676), + borderRadius: BorderRadius.circular(12), + ), + child: const Center( + child: Icon(Icons.bluetooth_connected, + color: Color(0xFF00E676), size: 24), + ), + ), + const SizedBox(width: 14), + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const Text('BRACELET ACTIVE', + style: TextStyle( + fontSize: 11, + fontWeight: FontWeight.w700, + color: Color(0xFF00E676), + letterSpacing: 0.5, + )), + const SizedBox(height: 2), + Text(_service.deviceName, + style: const TextStyle( + fontSize: 16, + fontWeight: FontWeight.w600, + color: Color(0xFFF0F0F5), + )), + const Text( + 'Connected globally β€” SOS active even after leaving this screen', + style: TextStyle( + fontSize: 10, color: Color(0xFF8A8A9A)), + ), + ], + ), + ), + GestureDetector( + onTap: _disconnect, + child: Container( + padding: const EdgeInsets.symmetric( + horizontal: 14, vertical: 8), + decoration: BoxDecoration( + border: Border.all( + color: Colors.white.withValues(alpha: 0.12)), + borderRadius: BorderRadius.circular(10), + ), + child: const Text('Disconnect', + style: TextStyle( + fontSize: 12, + fontWeight: FontWeight.w600, + color: Color(0xFF8A8A9A), + )), + ), + ), + ], + ), + const SizedBox(height: 12), + Row( + children: [ + Expanded( + child: _SimBtn( + label: '🚨 Simulate SOS', + color: const Color(0xFFE53935), + onTap: () { + _service.simulateCommand(BraceletCommand.sos); + _snack('🚨 Simulated SOS'); + }, + ), + ), + const SizedBox(width: 8), + Expanded( + child: _SimBtn( + label: 'πŸ“³ Simulate Shake', + color: const Color(0xFFFF7043), + onTap: () { + _service.simulateCommand(BraceletCommand.shake); + _snack('πŸ“³ Simulated shake'); + }, + ), + ), + ], + ), + ], + ), + ), + ); + } + + Widget _deviceCard(BluetoothDevice device, int? rssi, + {required bool isDark, bool isPaired = false}) { + final isThis = + _service.isConnected && _service.deviceAddress == device.address; + final name = device.name?.isNotEmpty == true + ? device.name! + : 'Unknown (${device.address})'; + final isSheShield = + device.name?.toUpperCase().contains('SHESHIELD') == true; + final bg = isDark ? const Color(0xFF1A1A2E) : Colors.white; + + return Material( + color: bg, + borderRadius: BorderRadius.circular(16), + child: InkWell( + borderRadius: BorderRadius.circular(16), + onTap: isThis ? null : () => _connectToDevice(device), + child: Container( + padding: const EdgeInsets.all(16), + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(16), + border: Border.all( + color: isThis + ? const Color(0xFF00E676).withValues(alpha: 0.3) + : isSheShield + ? const Color(0xFFE53935).withValues(alpha: 0.3) + : isDark + ? Colors.white.withValues(alpha: 0.06) + : Colors.black.withValues(alpha: 0.08), + ), + ), + child: Row( + children: [ + Container( + width: 44, + height: 44, + decoration: BoxDecoration( + color: isThis + ? const Color(0x2600E676) + : isSheShield + ? const Color(0x26E53935) + : const Color(0x1F42A5F5), + borderRadius: BorderRadius.circular(10), + ), + child: Center( + child: Icon( + isThis + ? Icons.bluetooth_connected + : isSheShield + ? Icons.watch + : Icons.bluetooth, + color: isThis + ? const Color(0xFF00E676) + : isSheShield + ? const Color(0xFFE53935) + : const Color(0xFF42A5F5), + size: 22, + ), + ), + ), + const SizedBox(width: 14), + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Row( + children: [ + Flexible( + child: Text(name, + style: TextStyle( + fontSize: 14, + fontWeight: FontWeight.w600, + color: isDark + ? const Color(0xFFF0F0F5) + : const Color(0xFF1A1A2E), + ), + maxLines: 1, + overflow: TextOverflow.ellipsis), + ), + if (isSheShield) ...[ + const SizedBox(width: 8), + Container( + padding: const EdgeInsets.symmetric( + horizontal: 6, vertical: 2), + decoration: BoxDecoration( + color: const Color(0xFFE53935) + .withValues(alpha: 0.2), + borderRadius: BorderRadius.circular(6), + ), + child: const Text('SheShield', + style: TextStyle( + fontSize: 9, + fontWeight: FontWeight.w700, + color: Color(0xFFE53935), + )), + ), + ], + ], + ), + const SizedBox(height: 2), + Text( + isThis + ? 'Connected' + : isPaired + ? 'Paired Β· Tap to connect' + : 'Tap to pair & connect', + style: TextStyle( + fontSize: 12, + color: isThis + ? const Color(0xFF00E676) + : isDark + ? const Color(0xFF8A8A9A) + : const Color(0xFF5A5A6E), + ), + ), + ], + ), + ), + if (rssi != null) ...[ + Icon(_sigIcon(rssi), + color: isDark + ? const Color(0xFF5A5A6E) + : const Color(0xFF8A8A9A), + size: 20), + const SizedBox(width: 4), + Text('$rssi dBm', + style: TextStyle( + fontSize: 11, + color: isDark + ? const Color(0xFF5A5A6E) + : const Color(0xFF8A8A9A), + )), + ], + if (isPaired && rssi == null) + Icon(Icons.link, + color: isDark + ? const Color(0xFF5A5A6E) + : const Color(0xFF8A8A9A), + size: 18), + ], + ), + ), + ), + ); + } + + IconData _sigIcon(int r) { + if (r >= -60) return Icons.signal_cellular_4_bar; + if (r >= -75) return Icons.signal_cellular_alt; + if (r >= -85) return Icons.signal_cellular_alt_2_bar; + return Icons.signal_cellular_alt_1_bar; + } +} + +class _SimBtn extends StatelessWidget { + final String label; + final Color color; + final VoidCallback onTap; + const _SimBtn( + {required this.label, required this.color, required this.onTap}); + @override + Widget build(BuildContext context) => GestureDetector( + onTap: onTap, + child: Container( + padding: const EdgeInsets.symmetric(vertical: 10), + decoration: BoxDecoration( + border: Border.all(color: color.withValues(alpha: 0.4)), + borderRadius: BorderRadius.circular(10), + ), + child: Center( + child: Text(label, + style: TextStyle( + fontSize: 12, + fontWeight: FontWeight.w700, + color: color)), + ), + ), + ); +} diff --git a/Team-Shivam/SheShield/lib/screens/contacts_screen.dart b/Team-Shivam/SheShield/lib/screens/contacts_screen.dart new file mode 100644 index 0000000..d38b8c5 --- /dev/null +++ b/Team-Shivam/SheShield/lib/screens/contacts_screen.dart @@ -0,0 +1,488 @@ +import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; +import '../services/storage_service.dart'; +import '../services/sms_service.dart'; + +class ContactsScreen extends StatefulWidget { + const ContactsScreen({super.key}); + + @override + State createState() => _ContactsScreenState(); +} + +class _ContactsScreenState extends State { + List _contacts = []; + bool _loading = true; + + @override + void initState() { + super.initState(); + _loadContacts(); + } + + Future _loadContacts() async { + final contacts = await StorageService.loadContacts(); + if (mounted) { + setState(() { + _contacts = contacts; + _loading = false; + }); + } + } + + Future _confirmAndAddContact(String name, String phone) async { + // Show confirmation prompt before adding + final confirmed = await showDialog( + context: context, + builder: (ctx) => AlertDialog( + backgroundColor: const Color(0xFF1A1A2E), + shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(20)), + title: const Text( + 'πŸ“© Send Notification SMS?', + style: TextStyle( + color: Color(0xFFF0F0F5), + fontWeight: FontWeight.w700, + fontSize: 18, + ), + ), + content: Text( + 'An SMS will be sent to $name ($phone) notifying them that they have been added as your emergency contact on SheShield.', + style: const TextStyle(color: Color(0xFF8A8A9A), fontSize: 14), + ), + actions: [ + TextButton( + onPressed: () => Navigator.pop(ctx, false), + child: const Text( + 'Cancel', + style: TextStyle(color: Color(0xFF8A8A9A)), + ), + ), + TextButton( + onPressed: () => Navigator.pop(ctx, true), + child: const Text( + 'Add & Send SMS', + style: TextStyle( + color: Color(0xFFE53935), + fontWeight: FontWeight.w700, + ), + ), + ), + ], + ), + ); + + if (confirmed != true) return; + + // Save the contact + final updated = await StorageService.addContact(_contacts, name, phone); + setState(() => _contacts = updated); + + // Send SMS in the background + final smsSent = await SmsService.sendContactAddedSms( + phoneNumber: phone, + contactName: name, + ); + + if (smsSent) { + _showPopup('βœ… Contact Added', '$name has been added and an SMS notification has been sent.'); + } else { + _showPopup('βœ… Contact Added', '$name has been added but SMS could not be sent. Please check SMS permissions.'); + } + } + + Future _deleteContact(String id) async { + final updated = await StorageService.deleteContact(_contacts, id); + setState(() => _contacts = updated); + _showPopup('πŸ—‘οΈ Contact Removed', 'Contact has been removed from your list.'); + } + + void _sendSOSToAll() { + if (_contacts.isEmpty) { + _showPopup('⚠️ No Contacts', 'Please add emergency contacts first.'); + return; + } + HapticFeedback.heavyImpact(); + _showPopup( + '🚨 SOS Sent!', + 'Emergency alert has been sent to ${_contacts.length} contact${_contacts.length > 1 ? 's' : ''}.', + ); + } + + void _showPopup(String title, String message) { + showDialog( + context: context, + builder: (ctx) => AlertDialog( + backgroundColor: const Color(0xFF1A1A2E), + shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(20)), + title: Text( + title, + style: const TextStyle( + color: Color(0xFFF0F0F5), + fontWeight: FontWeight.w700, + fontSize: 18, + ), + ), + content: Text( + message, + style: const TextStyle(color: Color(0xFF8A8A9A), fontSize: 14), + ), + actions: [ + TextButton( + onPressed: () => Navigator.pop(ctx), + child: const Text( + 'OK', + style: TextStyle( + color: Color(0xFFE53935), + fontWeight: FontWeight.w700, + ), + ), + ), + ], + ), + ); + } + + void _showSnackBar(String msg) { + ScaffoldMessenger.of(context).showSnackBar( + SnackBar( + content: Text(msg, style: const TextStyle(fontWeight: FontWeight.w600)), + backgroundColor: const Color(0xFF1A1A2E), + behavior: SnackBarBehavior.floating, + shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(12)), + margin: const EdgeInsets.all(16), + duration: const Duration(seconds: 2), + ), + ); + } + + void _showAddContactSheet() { + final nameController = TextEditingController(); + final phoneController = TextEditingController(); + + showModalBottomSheet( + context: context, + backgroundColor: const Color(0xFF14141F), + isScrollControlled: true, + shape: const RoundedRectangleBorder( + borderRadius: BorderRadius.vertical(top: Radius.circular(24)), + ), + builder: (ctx) { + return Padding( + padding: EdgeInsets.only( + left: 24, + right: 24, + top: 20, + bottom: MediaQuery.of(ctx).viewInsets.bottom + 32, + ), + child: Column( + mainAxisSize: MainAxisSize.min, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + // Handle + Center( + child: Container( + width: 36, + height: 4, + decoration: BoxDecoration( + color: Colors.white.withValues(alpha: 0.12), + borderRadius: BorderRadius.circular(20), + ), + ), + ), + const SizedBox(height: 20), + const Text( + 'Add Emergency Contact', + style: TextStyle( + fontSize: 20, + fontWeight: FontWeight.w700, + color: Color(0xFFF0F0F5), + letterSpacing: -0.3, + ), + ), + const SizedBox(height: 20), + // Name + const Text( + 'NAME', + style: TextStyle( + fontSize: 12, + fontWeight: FontWeight.w600, + color: Color(0xFF8A8A9A), + letterSpacing: 0.5, + ), + ), + const SizedBox(height: 6), + TextField( + controller: nameController, + style: const TextStyle(color: Color(0xFFF0F0F5), fontSize: 15), + decoration: const InputDecoration(hintText: 'e.g. Mom'), + textCapitalization: TextCapitalization.words, + ), + const SizedBox(height: 14), + // Phone + const Text( + 'PHONE NUMBER', + style: TextStyle( + fontSize: 12, + fontWeight: FontWeight.w600, + color: Color(0xFF8A8A9A), + letterSpacing: 0.5, + ), + ), + const SizedBox(height: 6), + TextField( + controller: phoneController, + style: const TextStyle(color: Color(0xFFF0F0F5), fontSize: 15), + decoration: + const InputDecoration(hintText: 'e.g. +91 98765 43210'), + keyboardType: TextInputType.phone, + ), + const SizedBox(height: 20), + // Buttons + Row( + children: [ + Expanded( + child: OutlinedButton( + onPressed: () => Navigator.pop(ctx), + style: OutlinedButton.styleFrom( + side: BorderSide(color: Colors.white.withValues(alpha: 0.06)), + padding: const EdgeInsets.symmetric(vertical: 14), + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(10), + ), + ), + child: const Text( + 'Cancel', + style: TextStyle( + color: Color(0xFF8A8A9A), + fontWeight: FontWeight.w600, + ), + ), + ), + ), + const SizedBox(width: 10), + Expanded( + child: ElevatedButton( + onPressed: () { + final name = nameController.text.trim(); + final phone = phoneController.text.trim(); + if (name.isEmpty || phone.isEmpty) { + _showSnackBar('⚠️ Please fill in all fields'); + return; + } + Navigator.pop(ctx); + _confirmAndAddContact(name, phone); + }, + style: ElevatedButton.styleFrom( + padding: const EdgeInsets.symmetric(vertical: 14), + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(10), + ), + ), + child: const Text('Save Contact'), + ), + ), + ], + ), + ], + ), + ); + }, + ); + } + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar( + title: const Text('Emergency Contacts'), + leading: IconButton( + icon: Container( + width: 40, + height: 40, + decoration: BoxDecoration( + color: const Color(0xFF1A1A2E), + borderRadius: BorderRadius.circular(10), + border: Border.all(color: Colors.white.withValues(alpha: 0.06)), + ), + child: const Icon(Icons.arrow_back, size: 18), + ), + onPressed: () => Navigator.pop(context), + ), + ), + body: _loading + ? const Center(child: CircularProgressIndicator(color: Color(0xFFE53935))) + : Column( + children: [ + // Contact List + Expanded( + child: _contacts.isEmpty + ? _buildEmptyState() + : RefreshIndicator( + onRefresh: _loadContacts, + color: const Color(0xFFE53935), + backgroundColor: const Color(0xFF14141F), + child: ListView.separated( + physics: const AlwaysScrollableScrollPhysics(), + padding: const EdgeInsets.symmetric( + horizontal: 20, vertical: 8), + itemCount: _contacts.length, + separatorBuilder: (_, __) => + const SizedBox(height: 10), + itemBuilder: (_, i) => + _buildContactCard(_contacts[i]), + ), + ), + ), + // Actions + Padding( + padding: const EdgeInsets.symmetric(horizontal: 20), + child: Column( + children: [ + // Add Contact + SizedBox( + width: double.infinity, + child: OutlinedButton.icon( + onPressed: _showAddContactSheet, + icon: const Text('οΌ‹', + style: TextStyle(fontSize: 18)), + label: const Text('Add New Contact'), + style: OutlinedButton.styleFrom( + side: BorderSide( + color: Colors.white.withValues(alpha: 0.12), + style: BorderStyle.solid, + ), + padding: const EdgeInsets.symmetric(vertical: 15), + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(16), + ), + foregroundColor: const Color(0xFF8A8A9A), + ), + ), + ), + const SizedBox(height: 10), + // SOS All + SizedBox( + width: double.infinity, + child: ElevatedButton.icon( + onPressed: _sendSOSToAll, + icon: const Text('🚨', + style: TextStyle(fontSize: 18)), + label: const Text('Send SOS to All Contacts'), + style: ElevatedButton.styleFrom( + padding: const EdgeInsets.symmetric(vertical: 16), + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(16), + ), + ), + ), + ), + ], + ), + ), + const SizedBox(height: 24), + ], + ), + ); + } + + Widget _buildEmptyState() { + return const Center( + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + Text('πŸ‘₯', style: TextStyle(fontSize: 48)), + SizedBox(height: 12), + Text( + 'No emergency contacts yet', + style: TextStyle( + fontSize: 14, + fontWeight: FontWeight.w500, + color: Color(0xFF5A5A6E), + ), + ), + ], + ), + ); + } + + Widget _buildContactCard(Contact contact) { + return Container( + padding: const EdgeInsets.symmetric(horizontal: 16, vertical: 14), + decoration: BoxDecoration( + color: const Color(0xFF1A1A2E), + borderRadius: BorderRadius.circular(16), + border: Border.all(color: Colors.white.withValues(alpha: 0.06)), + ), + child: Row( + children: [ + // Avatar + Container( + width: 44, + height: 44, + decoration: BoxDecoration( + shape: BoxShape.circle, + gradient: LinearGradient( + colors: [ + const Color(0xFFE53935).withValues(alpha: 0.12), + const Color(0xFFE53935).withValues(alpha: 0.25), + ], + ), + ), + child: Center( + child: Text( + contact.name.isNotEmpty + ? contact.name[0].toUpperCase() + : '?', + style: const TextStyle( + fontSize: 18, + fontWeight: FontWeight.w700, + color: Color(0xFFE53935), + ), + ), + ), + ), + const SizedBox(width: 14), + // Info + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + contact.name, + style: const TextStyle( + fontSize: 15, + fontWeight: FontWeight.w600, + color: Color(0xFFF0F0F5), + ), + ), + const SizedBox(height: 2), + Text( + contact.phone, + style: const TextStyle( + fontSize: 13, + color: Color(0xFF8A8A9A), + ), + ), + ], + ), + ), + // Delete Button + GestureDetector( + onTap: () => _deleteContact(contact.id), + child: Container( + width: 34, + height: 34, + decoration: BoxDecoration( + shape: BoxShape.circle, + border: Border.all(color: Colors.white.withValues(alpha: 0.06)), + ), + child: const Center( + child: Icon(Icons.close, size: 14, color: Color(0xFF5A5A6E)), + ), + ), + ), + ], + ), + ); + } +} diff --git a/Team-Shivam/SheShield/lib/screens/emergency_status_screen.dart b/Team-Shivam/SheShield/lib/screens/emergency_status_screen.dart new file mode 100644 index 0000000..46ddb0b --- /dev/null +++ b/Team-Shivam/SheShield/lib/screens/emergency_status_screen.dart @@ -0,0 +1,333 @@ +import 'dart:async'; +import 'package:flutter/material.dart'; + +/// Live status screen shown after SOS is triggered. +/// +/// Displays real-time status of all emergency actions: +/// location sharing, contact alerts, video recording, etc. +class EmergencyStatusScreen extends StatefulWidget { + final VoidCallback onDismiss; + final double lat; + final double lng; + + const EmergencyStatusScreen({ + super.key, + required this.onDismiss, + required this.lat, + required this.lng, + }); + + @override + State createState() => _EmergencyStatusScreenState(); +} + +class _EmergencyStatusScreenState extends State + with SingleTickerProviderStateMixin { + late AnimationController _fadeController; + int _elapsedSeconds = 0; + Timer? _elapsedTimer; + + @override + void initState() { + super.initState(); + _fadeController = AnimationController( + vsync: this, + duration: const Duration(milliseconds: 600), + )..forward(); + + // Track elapsed time since SOS + _elapsedTimer = Timer.periodic(const Duration(seconds: 1), (_) { + if (mounted) setState(() => _elapsedSeconds++); + }); + } + + @override + void dispose() { + _fadeController.dispose(); + _elapsedTimer?.cancel(); + super.dispose(); + } + + String _formatElapsed(int sec) { + final m = sec ~/ 60; + final s = sec % 60; + return '${m.toString().padLeft(2, '0')}:${s.toString().padLeft(2, '0')}'; + } + + @override + Widget build(BuildContext context) { + final isDark = Theme.of(context).brightness == Brightness.dark; + final cardBg = isDark ? const Color(0xFF1A1A2E) : Colors.white; + final border = isDark + ? Colors.white.withValues(alpha: 0.06) + : Colors.black.withValues(alpha: 0.08); + final subtitleColor = + isDark ? const Color(0xFF8A8A9A) : const Color(0xFF5A5A6E); + + return Scaffold( + appBar: AppBar( + title: const Text('Emergency Status'), + leading: IconButton( + icon: Container( + width: 40, + height: 40, + decoration: BoxDecoration( + color: isDark ? const Color(0xFF1A1A2E) : Colors.white, + borderRadius: BorderRadius.circular(10), + border: Border.all(color: border), + ), + child: const Icon(Icons.arrow_back, size: 18), + ), + onPressed: () { + widget.onDismiss(); + Navigator.pop(context); + }, + ), + ), + body: FadeTransition( + opacity: _fadeController, + child: SingleChildScrollView( + padding: const EdgeInsets.all(20), + child: Column( + children: [ + // ── SOS Active header ── + Container( + width: double.infinity, + padding: const EdgeInsets.all(20), + decoration: BoxDecoration( + gradient: const LinearGradient( + colors: [Color(0xFFE53935), Color(0xFFC62828)], + ), + borderRadius: BorderRadius.circular(20), + boxShadow: [ + BoxShadow( + color: const Color(0xFFE53935).withValues(alpha: 0.3), + blurRadius: 20, + offset: const Offset(0, 6), + ), + ], + ), + child: Column( + children: [ + const Text('🚨', style: TextStyle(fontSize: 40)), + const SizedBox(height: 8), + const Text( + 'SOS ACTIVE', + style: TextStyle( + fontSize: 24, + fontWeight: FontWeight.w800, + color: Colors.white, + letterSpacing: 2, + ), + ), + const SizedBox(height: 6), + Text( + 'Emergency active for ${_formatElapsed(_elapsedSeconds)}', + style: TextStyle( + fontSize: 14, + color: Colors.white.withValues(alpha: 0.8), + ), + ), + ], + ), + ), + const SizedBox(height: 20), + // ── Status cards ── + _StatusCard( + cardBg: cardBg, + border: border, + icon: Icons.sos_rounded, + iconColor: const Color(0xFFE53935), + title: 'SOS Alert Sent', + subtitle: 'Emergency contacts have been alerted', + status: 'Delivered', + statusColor: const Color(0xFF00E676), + subtitleColor: subtitleColor, + isDark: isDark, + ), + const SizedBox(height: 12), + _StatusCard( + cardBg: cardBg, + border: border, + icon: Icons.location_on_rounded, + iconColor: const Color(0xFF42A5F5), + title: 'Location Shared', + subtitle: + '${widget.lat.toStringAsFixed(4)}Β°N, ${widget.lng.toStringAsFixed(4)}Β°E', + status: 'Live', + statusColor: const Color(0xFF00E676), + subtitleColor: subtitleColor, + isDark: isDark, + ), + const SizedBox(height: 12), + _StatusCard( + cardBg: cardBg, + border: border, + icon: Icons.videocam_rounded, + iconColor: const Color(0xFFFF7043), + title: 'Video Recording', + subtitle: _elapsedSeconds < 30 + ? 'Recording in progress…' + : 'Recording completed & uploading', + status: _elapsedSeconds < 30 ? 'Recording' : 'Completed', + statusColor: _elapsedSeconds < 30 + ? const Color(0xFFFF9800) + : const Color(0xFF00E676), + subtitleColor: subtitleColor, + isDark: isDark, + ), + const SizedBox(height: 12), + _StatusCard( + cardBg: cardBg, + border: border, + icon: Icons.message_rounded, + iconColor: const Color(0xFF7C4DFF), + title: 'SMS Alerts', + subtitle: 'Emergency SMS with location sent', + status: 'Sent', + statusColor: const Color(0xFF00E676), + subtitleColor: subtitleColor, + isDark: isDark, + ), + const SizedBox(height: 12), + _StatusCard( + cardBg: cardBg, + border: border, + icon: Icons.cell_tower_rounded, + iconColor: const Color(0xFFFF9800), + title: 'Emergency Broadcast', + subtitle: 'Alert broadcasted to nearby devices', + status: 'Active', + statusColor: const Color(0xFF00E676), + subtitleColor: subtitleColor, + isDark: isDark, + ), + const SizedBox(height: 24), + // ── Stop SOS button ── + SizedBox( + width: double.infinity, + child: OutlinedButton.icon( + onPressed: () { + widget.onDismiss(); + Navigator.pop(context); + }, + icon: const Icon(Icons.close, size: 20), + label: const Text('Stop Emergency'), + style: OutlinedButton.styleFrom( + foregroundColor: const Color(0xFFE53935), + side: const BorderSide( + color: Color(0xFFE53935), width: 1.5), + padding: const EdgeInsets.symmetric(vertical: 16), + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(14), + ), + textStyle: const TextStyle( + fontSize: 15, + fontWeight: FontWeight.w700, + ), + ), + ), + ), + const SizedBox(height: 16), + ], + ), + ), + ), + ); + } +} + +/// Single status card row. +class _StatusCard extends StatelessWidget { + final Color cardBg; + final Color border; + final IconData icon; + final Color iconColor; + final String title; + final String subtitle; + final String status; + final Color statusColor; + final Color subtitleColor; + final bool isDark; + + const _StatusCard({ + required this.cardBg, + required this.border, + required this.icon, + required this.iconColor, + required this.title, + required this.subtitle, + required this.status, + required this.statusColor, + required this.subtitleColor, + required this.isDark, + }); + + @override + Widget build(BuildContext context) { + return Container( + padding: const EdgeInsets.all(16), + decoration: BoxDecoration( + color: cardBg, + borderRadius: BorderRadius.circular(16), + border: Border.all(color: border), + ), + child: Row( + children: [ + Container( + width: 44, + height: 44, + decoration: BoxDecoration( + color: iconColor.withValues(alpha: 0.12), + borderRadius: BorderRadius.circular(12), + ), + child: Icon(icon, color: iconColor, size: 22), + ), + const SizedBox(width: 14), + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + title, + style: TextStyle( + fontSize: 14, + fontWeight: FontWeight.w600, + color: isDark + ? const Color(0xFFF0F0F5) + : const Color(0xFF1A1A2E), + ), + ), + const SizedBox(height: 2), + Text( + subtitle, + style: TextStyle( + fontSize: 12, + color: subtitleColor, + ), + ), + ], + ), + ), + Container( + padding: + const EdgeInsets.symmetric(horizontal: 8, vertical: 4), + decoration: BoxDecoration( + color: statusColor.withValues(alpha: 0.12), + borderRadius: BorderRadius.circular(8), + ), + child: Text( + status, + style: TextStyle( + fontSize: 10, + fontWeight: FontWeight.w700, + color: statusColor, + letterSpacing: 0.5, + ), + ), + ), + ], + ), + ); + } +} diff --git a/Team-Shivam/SheShield/lib/screens/fake_call_screen.dart b/Team-Shivam/SheShield/lib/screens/fake_call_screen.dart new file mode 100644 index 0000000..f081440 --- /dev/null +++ b/Team-Shivam/SheShield/lib/screens/fake_call_screen.dart @@ -0,0 +1,281 @@ +import 'dart:async'; +import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; + +/// Full-screen fake incoming call UI. +/// +/// Simulates a phone call for escape situations. +/// No real call is made β€” purely a visual/audio simulation. +class FakeCallScreen extends StatefulWidget { + const FakeCallScreen({super.key}); + + @override + State createState() => _FakeCallScreenState(); +} + +class _FakeCallScreenState extends State + with TickerProviderStateMixin { + late AnimationController _pulseController; + late AnimationController _slideController; + late Animation _pulseAnimation; + late Animation _slideAnimation; + Timer? _vibrateTimer; + + // Fake caller info β€” configurable + final String _callerName = 'Mom'; + final String _callerNumber = '+91 98765 43210'; + + @override + void initState() { + super.initState(); + + // Pulse animation for the call icon + _pulseController = AnimationController( + vsync: this, + duration: const Duration(milliseconds: 1200), + )..repeat(reverse: true); + _pulseAnimation = Tween(begin: 1.0, end: 1.15).animate( + CurvedAnimation(parent: _pulseController, curve: Curves.easeInOut), + ); + + // Slide animation for accept button + _slideController = AnimationController( + vsync: this, + duration: const Duration(milliseconds: 1500), + )..repeat(reverse: true); + _slideAnimation = Tween( + begin: const Offset(0, 0.15), + end: const Offset(0, -0.15), + ).animate(CurvedAnimation( + parent: _slideController, curve: Curves.easeInOut)); + + // Simulate vibration pattern (like a real call) + _vibrateTimer = Timer.periodic( + const Duration(milliseconds: 1000), + (_) => HapticFeedback.mediumImpact(), + ); + HapticFeedback.mediumImpact(); + } + + @override + void dispose() { + _pulseController.dispose(); + _slideController.dispose(); + _vibrateTimer?.cancel(); + super.dispose(); + } + + void _acceptCall() { + _vibrateTimer?.cancel(); + Navigator.pop(context); + // Could navigate to a "In Call" screen β€” for now just close + } + + void _declineCall() { + _vibrateTimer?.cancel(); + Navigator.pop(context); + } + + @override + Widget build(BuildContext context) { + return PopScope( + canPop: false, + child: Scaffold( + body: Container( + width: double.infinity, + height: double.infinity, + decoration: const BoxDecoration( + gradient: LinearGradient( + begin: Alignment.topCenter, + end: Alignment.bottomCenter, + colors: [ + Color(0xFF1A1A2E), + Color(0xFF0A0A0F), + ], + ), + ), + child: SafeArea( + child: Column( + children: [ + const Spacer(flex: 2), + // ── Caller avatar ── + AnimatedBuilder( + animation: _pulseAnimation, + builder: (_, __) => Transform.scale( + scale: _pulseAnimation.value, + child: Container( + width: 120, + height: 120, + decoration: BoxDecoration( + shape: BoxShape.circle, + color: const Color(0xFF42A5F5).withValues(alpha: 0.15), + boxShadow: [ + BoxShadow( + color: const Color(0xFF42A5F5).withValues(alpha: 0.2), + blurRadius: 40, + spreadRadius: 10, + ), + ], + ), + child: const Center( + child: Icon( + Icons.person, + color: Color(0xFF42A5F5), + size: 56, + ), + ), + ), + ), + ), + const SizedBox(height: 32), + // ── Caller name ── + Text( + _callerName, + style: const TextStyle( + fontSize: 32, + fontWeight: FontWeight.w700, + color: Color(0xFFF0F0F5), + letterSpacing: 0.5, + ), + ), + const SizedBox(height: 8), + Text( + _callerNumber, + style: TextStyle( + fontSize: 16, + fontWeight: FontWeight.w400, + color: const Color(0xFFF0F0F5).withValues(alpha: 0.5), + letterSpacing: 1, + ), + ), + const SizedBox(height: 16), + // ── "Incoming call" label ── + Container( + padding: const EdgeInsets.symmetric( + horizontal: 16, vertical: 6), + decoration: BoxDecoration( + color: const Color(0xFF00E676).withValues(alpha: 0.12), + borderRadius: BorderRadius.circular(20), + ), + child: Row( + mainAxisSize: MainAxisSize.min, + children: [ + Container( + width: 8, + height: 8, + decoration: const BoxDecoration( + shape: BoxShape.circle, + color: Color(0xFF00E676), + ), + ), + const SizedBox(width: 8), + const Text( + 'Incoming Call', + style: TextStyle( + fontSize: 14, + fontWeight: FontWeight.w600, + color: Color(0xFF00E676), + letterSpacing: 0.5, + ), + ), + ], + ), + ), + const Spacer(flex: 3), + // ── Action buttons ── + Padding( + padding: const EdgeInsets.symmetric(horizontal: 48), + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceEvenly, + children: [ + // Decline + _CallButton( + icon: Icons.call_end, + color: const Color(0xFFE53935), + label: 'Decline', + onTap: _declineCall, + ), + // Accept + SlideTransition( + position: _slideAnimation, + child: _CallButton( + icon: Icons.call, + color: const Color(0xFF00E676), + label: 'Accept', + onTap: _acceptCall, + ), + ), + ], + ), + ), + const SizedBox(height: 48), + // ── Swipe hint ── + Text( + 'Tap to answer or decline', + style: TextStyle( + fontSize: 12, + color: const Color(0xFFF0F0F5).withValues(alpha: 0.3), + letterSpacing: 0.5, + ), + ), + const SizedBox(height: 32), + ], + ), + ), + ), + ), + ); + } +} + +/// Circular call action button. +class _CallButton extends StatelessWidget { + final IconData icon; + final Color color; + final String label; + final VoidCallback onTap; + + const _CallButton({ + required this.icon, + required this.color, + required this.label, + required this.onTap, + }); + + @override + Widget build(BuildContext context) { + return GestureDetector( + onTap: onTap, + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + Container( + width: 72, + height: 72, + decoration: BoxDecoration( + shape: BoxShape.circle, + color: color, + boxShadow: [ + BoxShadow( + color: color.withValues(alpha: 0.4), + blurRadius: 20, + spreadRadius: 2, + ), + ], + ), + child: Icon(icon, color: Colors.white, size: 32), + ), + const SizedBox(height: 10), + Text( + label, + style: TextStyle( + fontSize: 13, + fontWeight: FontWeight.w500, + color: const Color(0xFFF0F0F5).withValues(alpha: 0.7), + ), + ), + ], + ), + ); + } +} diff --git a/Team-Shivam/SheShield/lib/screens/home_screen.dart b/Team-Shivam/SheShield/lib/screens/home_screen.dart new file mode 100644 index 0000000..0b66e53 --- /dev/null +++ b/Team-Shivam/SheShield/lib/screens/home_screen.dart @@ -0,0 +1,1709 @@ +import 'dart:async'; +import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; +import 'package:firebase_auth/firebase_auth.dart'; +import 'package:shared_preferences/shared_preferences.dart'; +import '../services/location_service.dart'; +import '../services/notification_service.dart'; +import '../services/alert_service.dart'; +import '../services/voice_trigger_service.dart'; +import '../services/risk_assessment_service.dart'; +import 'package:url_launcher/url_launcher.dart'; +import '../services/sms_service.dart'; +import '../services/video_recording_service.dart'; +import '../services/bluetooth_service.dart'; +import 'location_screen.dart'; +import 'contacts_screen.dart'; +import 'nearby_police_screen.dart'; +import 'bluetooth_screen.dart'; +import 'past_emergencies_screen.dart'; +import 'profile_screen.dart'; +import 'sos_screen.dart'; +import 'fake_call_screen.dart'; +import 'emergency_status_screen.dart'; + +class HomeScreen extends StatefulWidget { + const HomeScreen({super.key}); + + @override + State createState() => _HomeScreenState(); +} + +class _HomeScreenState extends State with TickerProviderStateMixin { + double _lat = 28.6139; + double _lng = 77.2090; + bool _sosActive = false; + bool _holding = false; + late AnimationController _pulseController; + late AnimationController _holdController; + late Animation _pulseAnimation; + VoiceTriggerService? _voiceService; + + /// Current risk assessment result β€” updated when location is fetched. + RiskResult? _riskResult; + + /// Auto SOS countdown state. + Timer? _autoSosTimer; + int _autoSosCountdown = 0; + bool _autoSosActive = false; + + final BluetoothService _bt = BluetoothService.instance; + + @override + void initState() { + super.initState(); + + _pulseController = AnimationController( + vsync: this, + duration: const Duration(milliseconds: 2000), + )..repeat(reverse: true); + + _pulseAnimation = Tween(begin: 1.0, end: 1.08).animate( + CurvedAnimation(parent: _pulseController, curve: Curves.easeInOut), + ); + + _holdController = AnimationController( + vsync: this, + duration: const Duration(seconds: 3), + ); + _holdController.addStatusListener((status) { + if (status == AnimationStatus.completed) { + setState(() => _holding = false); + _triggerSOS(); + } + }); + + // Listen to Bluetooth state changes + _bt.addListener(_onBtChanged); + + // Listen for bracelet commands globally + _bt.onCommand = (cmd) { + if (!mounted || _sosActive) return; + _triggerSOS(); + }; + + _fetchLocation(); + _initVoiceListener(); + _checkFirstLogin(); + } + + void _onBtChanged() { + if (mounted) setState(() {}); + } + + /// After first sign-in, prompt user to pair the bracelet. + Future _checkFirstLogin() async { + final prefs = await SharedPreferences.getInstance(); + final uid = FirebaseAuth.instance.currentUser?.uid; + if (uid == null) return; + final key = 'paired_$uid'; + if (prefs.getBool(key) == true) return; + + await Future.delayed(const Duration(milliseconds: 800)); + if (!mounted) return; + + final shouldPair = await showDialog( + context: context, + barrierDismissible: false, + builder: (ctx) => AlertDialog( + backgroundColor: Theme.of(context).colorScheme.surface, + shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(20)), + title: const Text( + '⌚ Pair Your Device', + style: TextStyle(fontWeight: FontWeight.w700, fontSize: 18), + ), + content: const Text( + 'Welcome to SheShield! Connect your smart safety device via Bluetooth to get started.', + style: TextStyle(fontSize: 14), + ), + actions: [ + TextButton( + onPressed: () => Navigator.pop(ctx, false), + child: Text('Later', + style: TextStyle(color: Theme.of(context).colorScheme.onSurface.withValues(alpha: 0.5))), + ), + TextButton( + onPressed: () => Navigator.pop(ctx, true), + child: const Text('Pair Now', + style: TextStyle( + color: Color(0xFFE53935), + fontWeight: FontWeight.w700)), + ), + ], + ), + ); + + await prefs.setBool(key, true); + + if (shouldPair == true && mounted) { + Navigator.push( + context, MaterialPageRoute(builder: (_) => const BluetoothScreen())); + } + } + + Future _initVoiceListener() async { + _voiceService = VoiceTriggerService(onSosDetected: () { + if (mounted && !_sosActive) _triggerSOS(); + }); + final available = await _voiceService!.initialize(); + if (available) { + _voiceService!.startListening(); + } + } + + @override + void dispose() { + _voiceService?.dispose(); + _pulseController.dispose(); + _holdController.dispose(); + _autoSosTimer?.cancel(); + _bt.removeListener(_onBtChanged); + super.dispose(); + } + + Future _fetchLocation() async { + try { + final pos = await LocationService.getCurrentLocation(); + if (mounted) { + setState(() { + _lat = pos.latitude; + _lng = pos.longitude; + }); + } + } catch (_) {} + // Assess risk after location is available (or with defaults) + _assessRisk(); + } + + /// Re-evaluate risk factors using current lat/lng and system time. + /// Shows instant offline result first, then upgrades to online if available. + void _assessRisk() { + // Instant offline result (no waiting) + final offlineResult = RiskAssessmentService.assessRisk(_lat, _lng); + if (mounted) { + setState(() => _riskResult = offlineResult); + _checkAutoSos(offlineResult); + } + + // Async online-enhanced upgrade (non-blocking) + RiskAssessmentService.assessRiskAsync(_lat, _lng).then((onlineResult) { + if (mounted) { + setState(() => _riskResult = onlineResult); + _checkAutoSos(onlineResult); + } + }); + } + + /// Start auto SOS countdown only when riskScore >= 2. + void _checkAutoSos(RiskResult result) { + if (result.riskScore >= 2 && !_autoSosActive && !_sosActive) { + _startAutoSosCountdown(); + } else if (result.riskScore < 2 && _autoSosActive) { + _cancelAutoSos(); + } + } + + /// Start a 5-second countdown β€” triggers SOS if not cancelled. + void _startAutoSosCountdown() { + if (_autoSosActive || _sosActive) return; + _autoSosTimer?.cancel(); + setState(() { + _autoSosActive = true; + _autoSosCountdown = 5; + }); + HapticFeedback.heavyImpact(); + _autoSosTimer = Timer.periodic(const Duration(seconds: 1), (timer) { + if (!mounted) { timer.cancel(); return; } + setState(() => _autoSosCountdown--); + HapticFeedback.mediumImpact(); + if (_autoSosCountdown <= 0) { + timer.cancel(); + _autoSosActive = false; + _triggerSOS(); + } + }); + } + + /// Cancel the auto SOS countdown. + void _cancelAutoSos() { + _autoSosTimer?.cancel(); + if (mounted) { + setState(() { + _autoSosActive = false; + _autoSosCountdown = 0; + }); + _showSnackBar('Auto SOS cancelled'); + } + } + + /// Open Google Maps with directions to the nearest safe zone. + Future _navigateToSafeZone() async { + final zone = _riskResult?.nearestSafeZone; + if (zone == null) return; + final url = Uri.parse( + 'https://www.google.com/maps/dir/?api=1' + '&origin=$_lat,$_lng' + '&destination=${zone.lat},${zone.lng}' + '&travelmode=driving', + ); + try { + await launchUrl(url, mode: LaunchMode.externalApplication); + } catch (_) { + _showSnackBar('Could not open Google Maps'); + } + } + + void _triggerSOS() { + if (_sosActive) return; + HapticFeedback.heavyImpact(); + setState(() => _sosActive = true); + + // Fire all SOS services + NotificationService.sendSOSAlert(lat: _lat, lng: _lng); + AlertService.broadcastAlert(lat: _lat, lng: _lng); + SmsService.sendSOSToAllContacts(lat: _lat, lng: _lng); + VideoRecordingService.startSOSRecording(); + LocationService.startSOS('user_placeholder'); + + // Activate buzzer on ESP32 + _bt.activateBuzzer(); + + // Navigate to full-screen SOS alert + Navigator.of(context).push( + PageRouteBuilder( + opaque: true, + pageBuilder: (_, __, ___) => SOSScreen( + onCancel: () { + _stopAllSosServices(); + Navigator.of(context).pop(); // pop SOS screen back to home + _showSnackBar('βšͺ SOS alert cancelled'); + _voiceService?.resetAndRestart(); + }, + ), + transitionsBuilder: (_, anim, __, child) => + FadeTransition(opacity: anim, child: child), + transitionDuration: const Duration(milliseconds: 300), + ), + ); + + // After 3 seconds, REPLACE the SOS screen with Emergency Status + Future.delayed(const Duration(seconds: 3), () { + if (!mounted || !_sosActive) return; + Navigator.of(context).pushReplacement( + MaterialPageRoute( + builder: (_) => EmergencyStatusScreen( + lat: _lat, + lng: _lng, + onDismiss: () { + _stopAllSosServices(); + _voiceService?.resetAndRestart(); + }, + ), + ), + ); + }); + } + + /// Shared cleanup for stopping all SOS services. + void _stopAllSosServices() { + LocationService.stopSOS(); + VideoRecordingService.stopAndUpload(); + _bt.stopBuzzer(); + setState(() => _sosActive = false); + } + + void _showSnackBar(String msg) { + ScaffoldMessenger.of(context).showSnackBar( + SnackBar( + content: Text(msg, style: const TextStyle(fontWeight: FontWeight.w600)), + backgroundColor: Theme.of(context).colorScheme.surface, + behavior: SnackBarBehavior.floating, + shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(12)), + margin: const EdgeInsets.all(16), + duration: const Duration(seconds: 2), + ), + ); + } + + Future _handleConnectTap() async { + if (_bt.isConnected) { + _bt.disconnect(); + _showSnackBar('πŸ”΄ Disconnected from ${_bt.deviceName}'); + } else if (_bt.deviceAddress.isNotEmpty) { + // Has a saved device β€” try reconnecting + _showSnackBar('πŸ”— Reconnecting to ${_bt.deviceName}…'); + final ok = await _bt.manualReconnect(); + if (ok && mounted) { + _showSnackBar('βœ… Connected to ${_bt.deviceName}'); + } else if (mounted) { + _showSnackBar('❌ Failed to connect. Open Bluetooth Pairing.'); + } + } else { + // No saved device β€” go to pairing + Navigator.push( + context, MaterialPageRoute(builder: (_) => const BluetoothScreen())); + } + } + + @override + Widget build(BuildContext context) { + final isDark = Theme.of(context).brightness == Brightness.dark; + return Scaffold( + body: SafeArea( + child: SingleChildScrollView( + physics: const AlwaysScrollableScrollPhysics(), + child: Column( + children: [ + _buildTopBar(isDark), + const SizedBox(height: 4), + _buildStatusCard(isDark), + const SizedBox(height: 10), + // ── Smart Risk Alert Card ── + _buildRiskAlertCard(isDark), + const SizedBox(height: 8), + _buildSOSSection(), + const SizedBox(height: 4), + _buildSubtitle(), + const SizedBox(height: 16), + _buildInfoCards(isDark), + const SizedBox(height: 16), + _buildNavButtons(isDark), + const SizedBox(height: 24), + ], + ), + ), + ), + ); + } + + // ════════════════════════════════════════════════════════ + // TOP BAR + // ════════════════════════════════════════════════════════ + + Widget _buildTopBar(bool isDark) { + return Padding( + padding: const EdgeInsets.symmetric(horizontal: 20, vertical: 12), + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + // Logo + title + Row( + children: [ + ClipRRect( + borderRadius: BorderRadius.circular(11), + child: Image.asset( + 'assets/images/logo.png', + width: 38, + height: 38, + fit: BoxFit.contain, + ), + ), + const SizedBox(width: 10), + Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + RichText( + text: const TextSpan( + style: TextStyle( + fontSize: 20, + fontWeight: FontWeight.w800, + fontFamily: 'Inter', + letterSpacing: -0.5, + ), + children: [ + TextSpan( + text: 'She', + style: TextStyle(color: Color(0xFFF0F0F5)), + ), + TextSpan( + text: 'Shield', + style: TextStyle(color: Color(0xFFE53935)), + ), + ], + ), + ), + Text( + 'Safety', + style: TextStyle( + fontSize: 11, + fontWeight: FontWeight.w600, + color: isDark + ? const Color(0xFF5A5A6E) + : const Color(0xFF8A8A9A), + letterSpacing: 2, + ), + ), + ], + ), + ], + ), + // Profile button + GestureDetector( + onTap: () => Navigator.push( + context, + MaterialPageRoute(builder: (_) => const ProfileScreen()), + ), + child: Container( + width: 38, + height: 38, + decoration: BoxDecoration( + color: isDark + ? const Color(0xFF1A1A2E) + : Colors.white, + borderRadius: BorderRadius.circular(11), + border: Border.all( + color: isDark + ? Colors.white.withValues(alpha: 0.06) + : Colors.black.withValues(alpha: 0.08)), + boxShadow: isDark + ? null + : [ + BoxShadow( + color: Colors.black.withValues(alpha: 0.05), + blurRadius: 8, + offset: const Offset(0, 2), + ), + ], + ), + child: Icon(Icons.person_outline, + color: isDark + ? const Color(0xFF8A8A9A) + : const Color(0xFF5A5A6E), + size: 20), + ), + ), + ], + ), + ); + } + + // ════════════════════════════════════════════════════════ + // STATUS CARD (real Bluetooth state) + // ════════════════════════════════════════════════════════ + + Widget _buildStatusCard(bool isDark) { + final connected = _bt.isConnected; + final connecting = _bt.isConnecting; + + final Color statusColor = connecting + ? const Color(0xFFFF9800) + : connected + ? const Color(0xFF00E676) + : const Color(0xFFE53935); + + final String statusText = connecting + ? 'CONNECTING…' + : connected + ? 'CONNECTED' + : 'DISCONNECTED'; + + final String statusSubtext = connecting + ? 'Establishing connection to ${_bt.deviceName}…' + : connected + ? '${_bt.deviceName} β€’ SOS signals active' + : _bt.deviceAddress.isNotEmpty + ? 'Tap to reconnect to ${_bt.deviceName}' + : 'No device paired. Tap to connect.'; + + final Color cardBg = isDark ? const Color(0xFF1A1A2E) : Colors.white; + final Color borderColor = statusColor.withValues(alpha: 0.25); + + return Padding( + padding: const EdgeInsets.symmetric(horizontal: 20), + child: GestureDetector( + onTap: _handleConnectTap, + child: AnimatedContainer( + duration: const Duration(milliseconds: 400), + curve: Curves.easeInOut, + padding: const EdgeInsets.all(16), + decoration: BoxDecoration( + color: cardBg, + borderRadius: BorderRadius.circular(18), + border: Border.all(color: borderColor, width: 1.5), + boxShadow: [ + BoxShadow( + color: statusColor.withValues(alpha: 0.08), + blurRadius: 20, + offset: const Offset(0, 4), + ), + ], + ), + child: Row( + children: [ + // Status dot + AnimatedContainer( + duration: const Duration(milliseconds: 300), + width: 44, + height: 44, + decoration: BoxDecoration( + color: statusColor.withValues(alpha: 0.15), + borderRadius: BorderRadius.circular(12), + ), + child: Center( + child: connecting + ? SizedBox( + width: 20, + height: 20, + child: CircularProgressIndicator( + strokeWidth: 2.5, + color: statusColor, + ), + ) + : _StatusDot(connected: connected), + ), + ), + const SizedBox(width: 14), + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Row( + children: [ + Text( + statusText, + style: TextStyle( + fontSize: 12, + fontWeight: FontWeight.w800, + color: statusColor, + letterSpacing: 0.8, + ), + ), + if (connected) ...[ + const SizedBox(width: 8), + Container( + padding: const EdgeInsets.symmetric( + horizontal: 6, vertical: 2), + decoration: BoxDecoration( + color: + const Color(0xFF00E676).withValues(alpha: 0.15), + borderRadius: BorderRadius.circular(6), + ), + child: const Text( + 'LIVE', + style: TextStyle( + fontSize: 8, + fontWeight: FontWeight.w800, + color: Color(0xFF00E676), + letterSpacing: 1, + ), + ), + ), + ], + ], + ), + const SizedBox(height: 3), + Text( + statusSubtext, + style: TextStyle( + fontSize: 12, + color: isDark + ? const Color(0xFF8A8A9A) + : const Color(0xFF5A5A6E), + ), + maxLines: 1, + overflow: TextOverflow.ellipsis, + ), + ], + ), + ), + // Action icon + Icon( + connected + ? Icons.bluetooth_connected + : Icons.bluetooth_disabled, + color: statusColor.withValues(alpha: 0.6), + size: 22, + ), + ], + ), + ), + ), + ); + } + + // ════════════════════════════════════════════════════════ + // SOS BUTTON + // ════════════════════════════════════════════════════════ + + Widget _buildSOSSection() { + return Center( + child: AnimatedBuilder( + animation: _pulseAnimation, + builder: (context, child) { + return Stack( + alignment: Alignment.center, + children: [ + // Pulse rings + for (int i = 0; i < 3; i++) + Transform.scale( + scale: _pulseAnimation.value + (i * 0.04), + child: Container( + width: 200 + (i * 34.0), + height: 200 + (i * 34.0), + decoration: BoxDecoration( + shape: BoxShape.circle, + border: Border.all( + color: const Color(0xFFE53935) + .withValues(alpha: 0.15 - (i * 0.04)), + width: 2, + ), + ), + ), + ), + // SOS Button + GestureDetector( + onLongPressStart: (_) { + if (_sosActive) return; + HapticFeedback.mediumImpact(); + setState(() => _holding = true); + _holdController.forward(from: 0.0); + }, + onLongPressEnd: (_) { + if (_holdController.isAnimating) { + _holdController.reset(); + setState(() => _holding = false); + } + }, + child: Transform.scale( + scale: _sosActive ? 1.0 : _pulseAnimation.value * 0.97, + child: SizedBox( + width: 184, + height: 184, + child: Stack( + alignment: Alignment.center, + children: [ + // Hold progress ring + if (_holding) + AnimatedBuilder( + animation: _holdController, + builder: (context, _) { + return SizedBox( + width: 184, + height: 184, + child: CircularProgressIndicator( + value: _holdController.value, + strokeWidth: 5, + color: Colors.white, + backgroundColor: + Colors.white.withValues(alpha: 0.15), + ), + ); + }, + ), + // Main button + Container( + width: 170, + height: 170, + decoration: BoxDecoration( + shape: BoxShape.circle, + gradient: RadialGradient( + center: const Alignment(-0.3, -0.3), + colors: _holding + ? [ + const Color(0xFFFF8A80), + const Color(0xFFFF5252), + const Color(0xFFE53935) + ] + : [ + const Color(0xFFFF5252), + const Color(0xFFE53935), + const Color(0xFFC62828) + ], + ), + boxShadow: [ + BoxShadow( + color: const Color(0xFFE53935).withValues( + alpha: _holding ? 0.55 : 0.35), + blurRadius: _holding ? 80 : 60, + ), + BoxShadow( + color: const Color(0xFFE53935) + .withValues(alpha: 0.15), + blurRadius: 120, + ), + ], + ), + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + const Text('🚨', + style: TextStyle(fontSize: 28)), + const SizedBox(height: 2), + const Text( + 'SOS', + style: TextStyle( + fontSize: 36, + fontWeight: FontWeight.w800, + color: Colors.white, + letterSpacing: 4, + ), + ), + const SizedBox(height: 2), + Text( + _holding ? 'KEEP HOLDING…' : 'HOLD FOR HELP', + style: const TextStyle( + fontSize: 10, + fontWeight: FontWeight.w500, + color: Colors.white70, + letterSpacing: 1.5, + ), + ), + ], + ), + ), + ], + ), + ), + ), + ), + ], + ); + }, + ), + ); + } + + Widget _buildSubtitle() { + return Padding( + padding: const EdgeInsets.symmetric(horizontal: 40), + child: Text( + 'Press and hold wearable button or shake device', + textAlign: TextAlign.center, + style: TextStyle( + fontSize: 12, + fontWeight: FontWeight.w500, + color: Theme.of(context).brightness == Brightness.dark + ? const Color(0xFF5A5A6E) + : const Color(0xFF8A8A9A), + letterSpacing: 0.3, + ), + ), + ); + } + + // ════════════════════════════════════════════════════════ + // SMART RISK ALERT CARD + // ════════════════════════════════════════════════════════ + + Widget _buildRiskAlertCard(bool isDark) { + final risk = _riskResult; + + // While risk hasn't been evaluated yet, show a compact loading state + if (risk == null) { + return Padding( + padding: const EdgeInsets.symmetric(horizontal: 20), + child: Container( + padding: const EdgeInsets.all(16), + decoration: BoxDecoration( + color: isDark ? const Color(0xFF1A1A2E) : Colors.white, + borderRadius: BorderRadius.circular(18), + border: Border.all( + color: isDark + ? Colors.white.withValues(alpha: 0.06) + : Colors.black.withValues(alpha: 0.08), + ), + ), + child: Row( + children: [ + const SizedBox( + width: 18, + height: 18, + child: CircularProgressIndicator(strokeWidth: 2), + ), + const SizedBox(width: 12), + Text( + 'Assessing your safety…', + style: TextStyle( + fontSize: 13, + fontWeight: FontWeight.w500, + color: isDark + ? const Color(0xFF8A8A9A) + : const Color(0xFF5A5A6E), + ), + ), + ], + ), + ), + ); + } + + // ── Determine colours & icons based on risk level ── + late final Color accentColor; + late final Color bgGradientStart; + late final Color bgGradientEnd; + late final IconData iconData; + + switch (risk.level) { + case RiskLevel.critical: + accentColor = const Color(0xFFB71C1C); + bgGradientStart = const Color(0xFFB71C1C).withValues(alpha: 0.18); + bgGradientEnd = const Color(0xFFB71C1C).withValues(alpha: 0.06); + iconData = Icons.crisis_alert_rounded; + break; + case RiskLevel.high: + accentColor = const Color(0xFFE53935); + bgGradientStart = const Color(0xFFE53935).withValues(alpha: 0.15); + bgGradientEnd = const Color(0xFFE53935).withValues(alpha: 0.05); + iconData = Icons.warning_amber_rounded; + break; + case RiskLevel.moderate: + accentColor = const Color(0xFFFF9800); + bgGradientStart = const Color(0xFFFF9800).withValues(alpha: 0.15); + bgGradientEnd = const Color(0xFFFF9800).withValues(alpha: 0.05); + iconData = Icons.shield_outlined; + break; + case RiskLevel.safe: + accentColor = const Color(0xFF00E676); + bgGradientStart = const Color(0xFF00E676).withValues(alpha: 0.12); + bgGradientEnd = const Color(0xFF00E676).withValues(alpha: 0.03); + iconData = Icons.verified_user_rounded; + break; + } + + return Padding( + padding: const EdgeInsets.symmetric(horizontal: 20), + child: AnimatedSwitcher( + duration: const Duration(milliseconds: 500), + switchInCurve: Curves.easeOut, + switchOutCurve: Curves.easeIn, + child: Container( + key: ValueKey(risk.level), + padding: const EdgeInsets.all(16), + decoration: BoxDecoration( + gradient: LinearGradient( + begin: Alignment.topLeft, + end: Alignment.bottomRight, + colors: [bgGradientStart, bgGradientEnd], + ), + borderRadius: BorderRadius.circular(18), + border: Border.all( + color: accentColor.withValues(alpha: 0.35), + width: 1.5, + ), + boxShadow: [ + BoxShadow( + color: accentColor.withValues(alpha: 0.10), + blurRadius: 24, + offset: const Offset(0, 6), + ), + ], + ), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + // ── Header row ── + Row( + children: [ + // Icon container + Container( + width: 42, + height: 42, + decoration: BoxDecoration( + color: accentColor.withValues(alpha: 0.18), + borderRadius: BorderRadius.circular(12), + ), + child: Icon(iconData, color: accentColor, size: 22), + ), + const SizedBox(width: 12), + // Title + subtitle + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Row( + children: [ + Text( + 'RISK ALERT', + style: TextStyle( + fontSize: 11, + fontWeight: FontWeight.w800, + color: accentColor, + letterSpacing: 1.0, + ), + ), + const SizedBox(width: 8), + Container( + padding: const EdgeInsets.symmetric( + horizontal: 6, vertical: 2), + decoration: BoxDecoration( + color: accentColor.withValues(alpha: 0.15), + borderRadius: BorderRadius.circular(6), + ), + child: Text( + risk.level == RiskLevel.critical + ? 'CRITICAL' + : risk.level == RiskLevel.high + ? 'HIGH' + : risk.level == RiskLevel.moderate + ? 'MODERATE' + : 'SAFE', + style: TextStyle( + fontSize: 8, + fontWeight: FontWeight.w800, + color: accentColor, + letterSpacing: 1, + ), + ), + ), + const SizedBox(width: 6), + // Online/Offline mode badge + Container( + padding: const EdgeInsets.symmetric( + horizontal: 5, vertical: 2), + decoration: BoxDecoration( + color: risk.mode == DetectionMode.online + ? const Color(0xFF42A5F5).withValues(alpha: 0.15) + : Colors.grey.withValues(alpha: 0.15), + borderRadius: BorderRadius.circular(6), + ), + child: Row( + mainAxisSize: MainAxisSize.min, + children: [ + Icon( + risk.mode == DetectionMode.online + ? Icons.wifi + : Icons.wifi_off, + size: 8, + color: risk.mode == DetectionMode.online + ? const Color(0xFF42A5F5) + : Colors.grey, + ), + const SizedBox(width: 3), + Text( + risk.mode == DetectionMode.online + ? 'ONLINE' + : 'OFFLINE', + style: TextStyle( + fontSize: 7, + fontWeight: FontWeight.w800, + color: risk.mode == DetectionMode.online + ? const Color(0xFF42A5F5) + : Colors.grey, + letterSpacing: 0.5, + ), + ), + ], + ), + ), + ], + ), + const SizedBox(height: 3), + Text( + risk.message, + style: TextStyle( + fontSize: 14, + fontWeight: FontWeight.w600, + color: isDark + ? const Color(0xFFF0F0F5) + : const Color(0xFF1A1A2E), + ), + ), + ], + ), + ), + ], + ), + const SizedBox(height: 10), + // ── Subtitle / reason ── + Text( + risk.subtitle, + style: TextStyle( + fontSize: 12, + fontWeight: FontWeight.w400, + color: isDark + ? const Color(0xFF8A8A9A) + : const Color(0xFF5A5A6E), + ), + ), + // ── Nearest safe zone info ── + if (risk.nearestSafeZone != null) ...[ + const SizedBox(height: 10), + Container( + padding: const EdgeInsets.symmetric(horizontal: 12, vertical: 10), + decoration: BoxDecoration( + color: isDark + ? Colors.white.withValues(alpha: 0.05) + : Colors.black.withValues(alpha: 0.04), + borderRadius: BorderRadius.circular(12), + border: Border.all( + color: isDark + ? Colors.white.withValues(alpha: 0.06) + : Colors.black.withValues(alpha: 0.06), + ), + ), + child: Row( + children: [ + Container( + width: 32, + height: 32, + decoration: BoxDecoration( + color: accentColor.withValues(alpha: 0.12), + borderRadius: BorderRadius.circular(8), + ), + child: const Center( + child: Text('πŸ“', style: TextStyle(fontSize: 16)), + ), + ), + const SizedBox(width: 10), + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + risk.level != RiskLevel.safe + ? 'NEAREST SAFE ZONE' + : 'NEARBY SAFE ZONE', + style: TextStyle( + fontSize: 9, + fontWeight: FontWeight.w700, + color: isDark + ? const Color(0xFF5A5A6E) + : const Color(0xFF8A8A9A), + letterSpacing: 0.8, + ), + ), + const SizedBox(height: 2), + Text( + '${risk.nearestSafeZone!.name} β€’ ${risk.nearestSafeZone!.type}', + style: TextStyle( + fontSize: 12, + fontWeight: FontWeight.w600, + color: isDark + ? const Color(0xFFF0F0F5) + : const Color(0xFF1A1A2E), + ), + maxLines: 1, + overflow: TextOverflow.ellipsis, + ), + ], + ), + ), + Container( + padding: const EdgeInsets.symmetric(horizontal: 8, vertical: 4), + decoration: BoxDecoration( + color: accentColor.withValues(alpha: 0.12), + borderRadius: BorderRadius.circular(8), + ), + child: Text( + '${risk.nearestSafeZone!.distanceKm.toStringAsFixed(1)} km', + style: TextStyle( + fontSize: 11, + fontWeight: FontWeight.w700, + color: accentColor, + ), + ), + ), + ], + ), + ), + ], + // ── Reason chips ── + if (risk.reasons.isNotEmpty) ...[ + const SizedBox(height: 10), + Wrap( + spacing: 8, + runSpacing: 6, + children: risk.reasons.map((r) { + return Container( + padding: const EdgeInsets.symmetric( + horizontal: 10, vertical: 5), + decoration: BoxDecoration( + color: accentColor.withValues(alpha: 0.10), + borderRadius: BorderRadius.circular(8), + ), + child: Text( + r, + style: TextStyle( + fontSize: 11, + fontWeight: FontWeight.w500, + color: accentColor, + ), + ), + ); + }).toList(), + ), + ], + // ── Demo toggle: simulate isolated area ── + const SizedBox(height: 10), + Container( + padding: const EdgeInsets.symmetric(horizontal: 12, vertical: 4), + decoration: BoxDecoration( + color: isDark + ? Colors.white.withValues(alpha: 0.04) + : Colors.black.withValues(alpha: 0.03), + borderRadius: BorderRadius.circular(10), + ), + child: Row( + children: [ + Icon(Icons.science_outlined, + size: 16, + color: isDark + ? const Color(0xFF5A5A6E) + : const Color(0xFF8A8A9A)), + const SizedBox(width: 8), + Expanded( + child: Text( + 'Simulate isolated area', + style: TextStyle( + fontSize: 11, + fontWeight: FontWeight.w500, + color: isDark + ? const Color(0xFF8A8A9A) + : const Color(0xFF5A5A6E), + ), + ), + ), + SizedBox( + height: 28, + child: Switch( + value: RiskAssessmentService.isIsolatedArea, + activeThumbColor: accentColor, + onChanged: (val) { + setState(() { + RiskAssessmentService.isIsolatedArea = val; + }); + _assessRisk(); + }, + ), + ), + ], + ), + ), + // ── Auto SOS Countdown Banner ── + if (_autoSosActive) ...[ + const SizedBox(height: 12), + Container( + padding: const EdgeInsets.all(14), + decoration: BoxDecoration( + color: const Color(0xFFE53935).withValues(alpha: 0.12), + borderRadius: BorderRadius.circular(14), + border: Border.all( + color: const Color(0xFFE53935).withValues(alpha: 0.3), + ), + ), + child: Row( + children: [ + // Countdown number + Container( + width: 44, + height: 44, + decoration: BoxDecoration( + color: const Color(0xFFE53935), + borderRadius: BorderRadius.circular(12), + ), + child: Center( + child: Text( + '$_autoSosCountdown', + style: const TextStyle( + fontSize: 22, + fontWeight: FontWeight.w900, + color: Colors.white, + ), + ), + ), + ), + const SizedBox(width: 12), + // Text + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + '⚠️ Auto SOS in $_autoSosCountdown seconds', + style: const TextStyle( + fontSize: 13, + fontWeight: FontWeight.w700, + color: Color(0xFFE53935), + ), + ), + const SizedBox(height: 2), + Text( + 'High risk detected', + style: TextStyle( + fontSize: 11, + color: isDark + ? const Color(0xFF8A8A9A) + : const Color(0xFF5A5A6E), + ), + ), + ], + ), + ), + // Cancel button + GestureDetector( + onTap: _cancelAutoSos, + child: Container( + padding: const EdgeInsets.symmetric( + horizontal: 14, vertical: 8), + decoration: BoxDecoration( + color: isDark + ? Colors.white.withValues(alpha: 0.08) + : Colors.black.withValues(alpha: 0.06), + borderRadius: BorderRadius.circular(10), + ), + child: Text( + 'Cancel', + style: TextStyle( + fontSize: 12, + fontWeight: FontWeight.w700, + color: isDark + ? const Color(0xFFF0F0F5) + : const Color(0xFF1A1A2E), + ), + ), + ), + ), + ], + ), + ), + ], + // ── Action buttons (SOS + Navigate) when risk detected ── + if (risk.level != RiskLevel.safe) ...[ + const SizedBox(height: 14), + Row( + children: [ + // Trigger SOS button + Expanded( + child: ElevatedButton.icon( + onPressed: _sosActive ? null : _triggerSOS, + icon: const Text('🚨', style: TextStyle(fontSize: 14)), + label: const Text( + 'Trigger SOS', + style: TextStyle( + fontSize: 12, + fontWeight: FontWeight.w700, + ), + ), + style: ElevatedButton.styleFrom( + backgroundColor: accentColor, + foregroundColor: Colors.white, + padding: const EdgeInsets.symmetric(vertical: 12), + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(12), + ), + elevation: 0, + ), + ), + ), + // Navigate to safe zone button + if (risk.nearestSafeZone != null) ...[ + const SizedBox(width: 10), + Expanded( + child: ElevatedButton.icon( + onPressed: _navigateToSafeZone, + icon: const Icon(Icons.navigation_rounded, size: 18), + label: const Text( + 'Navigate', + style: TextStyle( + fontSize: 12, + fontWeight: FontWeight.w700, + ), + ), + style: ElevatedButton.styleFrom( + backgroundColor: const Color(0xFF42A5F5), + foregroundColor: Colors.white, + padding: const EdgeInsets.symmetric(vertical: 12), + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(12), + ), + elevation: 0, + ), + ), + ), + ], + ], + ), + ], + ], + ), + ), + ), + ); + } + + // ════════════════════════════════════════════════════════ + // INFO CARDS + // ════════════════════════════════════════════════════════ + + Widget _buildInfoCards(bool isDark) { + return Padding( + padding: const EdgeInsets.symmetric(horizontal: 20), + child: Column( + children: [ + _InfoCard( + isDark: isDark, + icon: 'πŸ“', + iconBgColor: const Color(0x1F42A5F5), + label: 'CURRENT LOCATION', + value: + '${_lat.toStringAsFixed(4)}Β°N, ${_lng.toStringAsFixed(4)}Β°E', + trailing: Icon(Icons.chevron_right, + color: + isDark ? const Color(0xFF5A5A6E) : const Color(0xFF8A8A9A), + size: 20), + onTap: () => Navigator.push( + context, + MaterialPageRoute( + builder: (_) => LocationScreen(lat: _lat, lng: _lng)), + ), + ), + const SizedBox(height: 12), + _InfoCard( + isDark: isDark, + icon: '⌚', + iconBgColor: const Color(0x2600E676), + label: 'BRACELET STATUS', + value: _bt.isConnected ? 'Active β€’ SOS Ready' : 'Not Connected', + ), + ], + ), + ); + } + + // ════════════════════════════════════════════════════════ + // NAV BUTTONS + // ════════════════════════════════════════════════════════ + + Widget _buildNavButtons(bool isDark) { + return Padding( + padding: const EdgeInsets.symmetric(horizontal: 20), + child: Column( + children: [ + Row( + children: [ + Expanded( + child: _NavButton( + isDark: isDark, + icon: 'πŸ—ΊοΈ', + iconBgColor: const Color(0x1F42A5F5), + label: 'Live\nLocation', + onTap: () => Navigator.push( + context, + MaterialPageRoute( + builder: (_) => + LocationScreen(lat: _lat, lng: _lng)), + ), + ), + ), + const SizedBox(width: 12), + Expanded( + child: _NavButton( + isDark: isDark, + icon: 'πŸš”', + iconBgColor: const Color(0x1F42A5F5), + label: 'Police\nStations', + onTap: () => Navigator.push( + context, + MaterialPageRoute( + builder: (_) => const NearbyPoliceScreen()), + ), + ), + ), + ], + ), + const SizedBox(height: 12), + Row( + children: [ + Expanded( + child: _NavButton( + isDark: isDark, + icon: 'πŸ‘₯', + iconBgColor: const Color(0x1FE53935), + label: 'Emergency\nContacts', + onTap: () => Navigator.push( + context, + MaterialPageRoute( + builder: (_) => const ContactsScreen()), + ), + ), + ), + const SizedBox(width: 12), + Expanded( + child: _NavButton( + isDark: isDark, + icon: 'πŸ“‘', + iconBgColor: const Color(0x1F7C4DFF), + label: 'Bluetooth\nPairing', + onTap: () => Navigator.push( + context, + MaterialPageRoute( + builder: (_) => const BluetoothScreen()), + ), + ), + ), + ], + ), + const SizedBox(height: 12), + Row( + children: [ + Expanded( + child: _NavButton( + isDark: isDark, + icon: 'πŸ“Ή', + iconBgColor: const Color(0x1FFF7043), + label: 'Past\nEmergencies', + onTap: () => Navigator.push( + context, + MaterialPageRoute( + builder: (_) => const PastEmergenciesScreen()), + ), + ), + ), + const SizedBox(width: 12), + Expanded( + child: _NavButton( + isDark: isDark, + icon: 'πŸ“ž', + iconBgColor: const Color(0x1F00E676), + label: 'Fake\nCall', + onTap: () => Navigator.push( + context, + MaterialPageRoute( + builder: (_) => const FakeCallScreen()), + ), + ), + ), + ], + ), + ], + ), + ); + } +} + +// ============================================ +// Sub-widgets +// ============================================ + +class _StatusDot extends StatefulWidget { + final bool connected; + const _StatusDot({required this.connected}); + + @override + State<_StatusDot> createState() => _StatusDotState(); +} + +class _StatusDotState extends State<_StatusDot> + with SingleTickerProviderStateMixin { + late AnimationController _controller; + + @override + void initState() { + super.initState(); + _controller = AnimationController( + vsync: this, + duration: const Duration(seconds: 2), + )..repeat(); + } + + @override + void dispose() { + _controller.dispose(); + super.dispose(); + } + + @override + Widget build(BuildContext context) { + final color = + widget.connected ? const Color(0xFF00E676) : const Color(0xFFE53935); + return SizedBox( + width: 18, + height: 18, + child: Stack( + alignment: Alignment.center, + children: [ + if (widget.connected) + AnimatedBuilder( + animation: _controller, + builder: (_, __) { + return Container( + width: 18, + height: 18, + decoration: BoxDecoration( + shape: BoxShape.circle, + border: Border.all( + color: color.withValues(alpha: 1.0 - _controller.value), + width: 2, + ), + ), + ); + }, + ), + Container( + width: 8, + height: 8, + decoration: BoxDecoration( + shape: BoxShape.circle, + color: color, + boxShadow: [ + BoxShadow( + color: color.withValues(alpha: 0.5), + blurRadius: 6, + ), + ], + ), + ), + ], + ), + ); + } +} + +class _InfoCard extends StatelessWidget { + final bool isDark; + final String icon; + final Color iconBgColor; + final String label; + final String value; + final Widget? trailing; + final VoidCallback? onTap; + + const _InfoCard({ + required this.isDark, + required this.icon, + required this.iconBgColor, + required this.label, + required this.value, + this.trailing, + this.onTap, + }); + + @override + Widget build(BuildContext context) { + final bg = isDark ? const Color(0xFF1A1A2E) : Colors.white; + final border = isDark + ? Colors.white.withValues(alpha: 0.06) + : Colors.black.withValues(alpha: 0.08); + + return Material( + color: bg, + borderRadius: BorderRadius.circular(16), + child: InkWell( + onTap: onTap, + borderRadius: BorderRadius.circular(16), + child: Container( + padding: const EdgeInsets.symmetric(horizontal: 18, vertical: 16), + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(16), + border: Border.all(color: border), + ), + child: Row( + children: [ + Container( + width: 42, + height: 42, + decoration: BoxDecoration( + color: iconBgColor, + borderRadius: BorderRadius.circular(10), + ), + child: Center( + child: Text(icon, + style: const TextStyle(fontSize: 20))), + ), + const SizedBox(width: 14), + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + label, + style: TextStyle( + fontSize: 11, + fontWeight: FontWeight.w600, + color: isDark + ? const Color(0xFF5A5A6E) + : const Color(0xFF8A8A9A), + letterSpacing: 0.5, + ), + ), + const SizedBox(height: 3), + Text( + value, + style: TextStyle( + fontSize: 14, + fontWeight: FontWeight.w500, + color: isDark + ? const Color(0xFFF0F0F5) + : const Color(0xFF1A1A2E), + ), + overflow: TextOverflow.ellipsis, + ), + ], + ), + ), + if (trailing != null) trailing!, + ], + ), + ), + ), + ); + } +} + +class _NavButton extends StatelessWidget { + final bool isDark; + final String icon; + final Color iconBgColor; + final String label; + final VoidCallback onTap; + + const _NavButton({ + required this.isDark, + required this.icon, + required this.iconBgColor, + required this.label, + required this.onTap, + }); + + @override + Widget build(BuildContext context) { + final bg = isDark ? const Color(0xFF1A1A2E) : Colors.white; + final border = isDark + ? Colors.white.withValues(alpha: 0.06) + : Colors.black.withValues(alpha: 0.08); + + return Material( + color: bg, + borderRadius: BorderRadius.circular(16), + child: InkWell( + onTap: onTap, + borderRadius: BorderRadius.circular(16), + child: Container( + padding: const EdgeInsets.symmetric(vertical: 18, horizontal: 14), + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(16), + border: Border.all(color: border), + ), + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + Container( + width: 48, + height: 48, + decoration: BoxDecoration( + color: iconBgColor, + borderRadius: BorderRadius.circular(10), + ), + child: Center( + child: Text(icon, + style: const TextStyle(fontSize: 24))), + ), + const SizedBox(height: 10), + Text( + label, + textAlign: TextAlign.center, + style: TextStyle( + fontSize: 13, + fontWeight: FontWeight.w600, + color: isDark + ? const Color(0xFFF0F0F5) + : const Color(0xFF1A1A2E), + ), + ), + ], + ), + ), + ), + ); + } +} diff --git a/Team-Shivam/SheShield/lib/screens/location_screen.dart b/Team-Shivam/SheShield/lib/screens/location_screen.dart new file mode 100644 index 0000000..0862cf6 --- /dev/null +++ b/Team-Shivam/SheShield/lib/screens/location_screen.dart @@ -0,0 +1,389 @@ +import 'dart:async'; +import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; +import 'package:google_maps_flutter/google_maps_flutter.dart'; +import 'package:url_launcher/url_launcher.dart'; +import '../services/location_service.dart'; + +class LocationScreen extends StatefulWidget { + final double lat; + final double lng; + + const LocationScreen({super.key, required this.lat, required this.lng}); + + @override + State createState() => _LocationScreenState(); +} + +class _LocationScreenState extends State { + late double _lat; + late double _lng; + GoogleMapController? _mapController; + StreamSubscription? _locationSub; + final Set _markers = {}; + + @override + void initState() { + super.initState(); + _lat = widget.lat; + _lng = widget.lng; + _updateMarker(); + _startLocationUpdates(); + } + + @override + void dispose() { + _locationSub?.cancel(); + _mapController?.dispose(); + super.dispose(); + } + + void _updateMarker() { + _markers.clear(); + _markers.add( + Marker( + markerId: const MarkerId('user_location'), + position: LatLng(_lat, _lng), + icon: BitmapDescriptor.defaultMarkerWithHue(BitmapDescriptor.hueRed), + infoWindow: const InfoWindow(title: 'Your Location'), + ), + ); + } + + void _startLocationUpdates() { + _locationSub = LocationService.getLocationStream().listen( + (pos) { + if (mounted) { + setState(() { + _lat = pos.latitude; + _lng = pos.longitude; + _updateMarker(); + }); + _mapController?.animateCamera( + CameraUpdate.newLatLng(LatLng(_lat, _lng)), + ); + } + }, + onError: (_) {}, + ); + } + + void _shareLocation() { + final url = 'https://maps.google.com/?q=$_lat,$_lng'; + final text = 'πŸ“ She Shield – My Live Location\n' + 'Lat: ${_lat.toStringAsFixed(4)}Β°, Lng: ${_lng.toStringAsFixed(4)}Β°\n' + '$url'; + + showModalBottomSheet( + context: context, + backgroundColor: const Color(0xFF14141F), + shape: const RoundedRectangleBorder( + borderRadius: BorderRadius.vertical(top: Radius.circular(24)), + ), + builder: (ctx) { + return Padding( + padding: const EdgeInsets.fromLTRB(24, 16, 24, 32), + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + // Handle + Container( + width: 36, + height: 4, + decoration: BoxDecoration( + color: Colors.white.withValues(alpha: 0.12), + borderRadius: BorderRadius.circular(20), + ), + ), + const SizedBox(height: 20), + const Text( + 'Share Location via', + style: TextStyle( + fontSize: 18, + fontWeight: FontWeight.w700, + color: Color(0xFFF0F0F5), + ), + ), + const SizedBox(height: 20), + // WhatsApp + _ShareOption( + icon: 'πŸ’¬', + label: 'WhatsApp', + color: const Color(0xFF25D366), + onTap: () async { + Navigator.pop(ctx); + final waUrl = 'https://wa.me/?text=${Uri.encodeComponent(text)}'; + try { + await launchUrl(Uri.parse(waUrl), mode: LaunchMode.externalApplication); + } catch (_) { + if (mounted) _showFallback(text); + } + }, + ), + const SizedBox(height: 10), + // SMS + _ShareOption( + icon: 'βœ‰οΈ', + label: 'Text Message (SMS)', + color: const Color(0xFF42A5F5), + onTap: () async { + Navigator.pop(ctx); + final smsUrl = 'sms:?body=${Uri.encodeComponent(text)}'; + try { + await launchUrl(Uri.parse(smsUrl)); + } catch (_) { + if (mounted) _showFallback(text); + } + }, + ), + const SizedBox(height: 10), + // Copy + _ShareOption( + icon: 'πŸ“‹', + label: 'Copy to Clipboard', + color: const Color(0xFF8A8A9A), + onTap: () async { + Navigator.pop(ctx); + await Clipboard.setData(ClipboardData(text: text)); + if (mounted) { + _showConfirmDialog( + 'πŸ“‹ Copied!', + 'Location link copied to clipboard. Paste it in any app.', + ); + } + }, + ), + ], + ), + ); + }, + ); + } + + void _showFallback(String text) async { + await Clipboard.setData(ClipboardData(text: text)); + if (mounted) { + _showConfirmDialog( + 'πŸ“‹ Copied Instead', + 'Could not open the app. Location link has been copied to clipboard.', + ); + } + } + + void _showConfirmDialog(String title, String message) { + showDialog( + context: context, + builder: (ctx) => AlertDialog( + backgroundColor: const Color(0xFF1A1A2E), + shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(20)), + title: Text( + title, + style: const TextStyle( + color: Color(0xFFF0F0F5), + fontWeight: FontWeight.w700, + fontSize: 18, + ), + ), + content: Text( + message, + style: const TextStyle(color: Color(0xFF8A8A9A), fontSize: 14), + ), + actions: [ + TextButton( + onPressed: () => Navigator.pop(ctx), + child: const Text( + 'OK', + style: TextStyle(color: Color(0xFFE53935), fontWeight: FontWeight.w700), + ), + ), + ], + ), + ); + } + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar( + title: const Text('Live Location'), + leading: IconButton( + icon: Container( + width: 40, + height: 40, + decoration: BoxDecoration( + color: const Color(0xFF1A1A2E), + borderRadius: BorderRadius.circular(10), + border: Border.all(color: Colors.white.withValues(alpha: 0.06)), + ), + child: const Icon(Icons.arrow_back, size: 18), + ), + onPressed: () => Navigator.pop(context), + ), + ), + body: Column( + children: [ + // Map + Container( + margin: const EdgeInsets.symmetric(horizontal: 20), + height: 360, + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(16), + border: Border.all(color: Colors.white.withValues(alpha: 0.06)), + ), + clipBehavior: Clip.antiAlias, + child: GoogleMap( + initialCameraPosition: CameraPosition( + target: LatLng(_lat, _lng), + zoom: 15, + ), + markers: _markers, + onMapCreated: (controller) => _mapController = controller, + myLocationEnabled: true, + myLocationButtonEnabled: false, + zoomControlsEnabled: true, + mapToolbarEnabled: false, + compassEnabled: false, + mapType: MapType.normal, + ), + ), + + // Coordinates + Container( + margin: const EdgeInsets.all(16).copyWith(left: 20, right: 20), + padding: const EdgeInsets.symmetric(horizontal: 18, vertical: 16), + decoration: BoxDecoration( + color: const Color(0xFF1A1A2E), + borderRadius: BorderRadius.circular(16), + border: Border.all(color: Colors.white.withValues(alpha: 0.06)), + ), + child: Row( + children: [ + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const Text( + 'LATITUDE', + style: TextStyle( + fontSize: 11, + fontWeight: FontWeight.w600, + color: Color(0xFF5A5A6E), + letterSpacing: 0.5, + ), + ), + const SizedBox(height: 4), + Text( + '${_lat.toStringAsFixed(4)}Β°', + style: const TextStyle( + fontSize: 16, + fontWeight: FontWeight.w600, + color: Color(0xFFF0F0F5), + ), + ), + ], + ), + ), + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const Text( + 'LONGITUDE', + style: TextStyle( + fontSize: 11, + fontWeight: FontWeight.w600, + color: Color(0xFF5A5A6E), + letterSpacing: 0.5, + ), + ), + const SizedBox(height: 4), + Text( + '${_lng.toStringAsFixed(4)}Β°', + style: const TextStyle( + fontSize: 16, + fontWeight: FontWeight.w600, + color: Color(0xFFF0F0F5), + ), + ), + ], + ), + ), + ], + ), + ), + + // Share Button + Padding( + padding: const EdgeInsets.symmetric(horizontal: 20), + child: SizedBox( + width: double.infinity, + child: ElevatedButton.icon( + onPressed: _shareLocation, + icon: const Text('πŸ“€', style: TextStyle(fontSize: 18)), + label: const Text('Share Live Location'), + style: ElevatedButton.styleFrom( + backgroundColor: const Color(0xFF42A5F5), + padding: const EdgeInsets.symmetric(vertical: 16), + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(16), + ), + elevation: 0, + ), + ), + ), + ), + ], + ), + ); + } +} + +class _ShareOption extends StatelessWidget { + final String icon; + final String label; + final Color color; + final VoidCallback onTap; + + const _ShareOption({ + required this.icon, + required this.label, + required this.color, + required this.onTap, + }); + + @override + Widget build(BuildContext context) { + return Material( + color: const Color(0xFF1A1A2E), + borderRadius: BorderRadius.circular(14), + child: InkWell( + borderRadius: BorderRadius.circular(14), + onTap: onTap, + child: Container( + padding: const EdgeInsets.symmetric(horizontal: 16, vertical: 14), + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(14), + border: Border.all(color: Colors.white.withValues(alpha: 0.06)), + ), + child: Row( + children: [ + Text(icon, style: const TextStyle(fontSize: 22)), + const SizedBox(width: 14), + Expanded( + child: Text( + label, + style: const TextStyle( + fontSize: 15, + fontWeight: FontWeight.w600, + color: Color(0xFFF0F0F5), + ), + ), + ), + Icon(Icons.chevron_right, color: color, size: 20), + ], + ), + ), + ), + ); + } +} diff --git a/Team-Shivam/SheShield/lib/screens/login_screen.dart b/Team-Shivam/SheShield/lib/screens/login_screen.dart new file mode 100644 index 0000000..36af60e --- /dev/null +++ b/Team-Shivam/SheShield/lib/screens/login_screen.dart @@ -0,0 +1,315 @@ +import 'package:flutter/material.dart'; +import 'package:firebase_auth/firebase_auth.dart'; +import 'home_screen.dart'; +import 'security_setup_screen.dart'; + +class LoginScreen extends StatefulWidget { + const LoginScreen({super.key}); + + @override + State createState() => _LoginScreenState(); +} + +class _LoginScreenState extends State { + final _emailController = TextEditingController(); + final _passwordController = TextEditingController(); + final _nameController = TextEditingController(); + bool _isLogin = true; // toggle between login & sign-up + bool _isLoading = false; + bool _obscurePassword = true; + + @override + void dispose() { + _emailController.dispose(); + _passwordController.dispose(); + _nameController.dispose(); + super.dispose(); + } + + Future _submit() async { + final email = _emailController.text.trim(); + final password = _passwordController.text.trim(); + + if (email.isEmpty || password.isEmpty) { + _showPopup('⚠️ Missing Fields', 'Please enter both email and password.'); + return; + } + if (!_isLogin && _nameController.text.trim().isEmpty) { + _showPopup('⚠️ Missing Name', 'Please enter your name.'); + return; + } + + setState(() => _isLoading = true); + + try { + if (_isLogin) { + await FirebaseAuth.instance.signInWithEmailAndPassword( + email: email, + password: password, + ); + // Navigate to HomeScreen + if (mounted) { + Navigator.of(context).pushAndRemoveUntil( + MaterialPageRoute(builder: (_) => const HomeScreen()), + (route) => false, + ); + } + return; + } else { + final cred = await FirebaseAuth.instance.createUserWithEmailAndPassword( + email: email, + password: password, + ); + // Set display name + await cred.user?.updateDisplayName(_nameController.text.trim()); + // Navigate to Security Setup β†’ then Home + if (mounted) { + Navigator.of(context).pushAndRemoveUntil( + MaterialPageRoute(builder: (_) => const SecuritySetupScreen()), + (route) => false, + ); + } + return; + } + } on FirebaseAuthException catch (e) { + String msg; + switch (e.code) { + case 'user-not-found': + msg = 'No account found with this email.'; + break; + case 'wrong-password': + msg = 'Incorrect password. Please try again.'; + break; + case 'email-already-in-use': + msg = 'An account with this email already exists.'; + break; + case 'weak-password': + msg = 'Password is too weak. Use at least 6 characters.'; + break; + case 'invalid-email': + msg = 'Please enter a valid email address.'; + break; + default: + msg = e.message ?? 'Authentication failed.'; + } + if (mounted) _showPopup('❌ Error', msg); + } catch (e) { + if (mounted) _showPopup('❌ Error', 'Something went wrong. Please try again.'); + } + + if (mounted) setState(() => _isLoading = false); + } + + void _showPopup(String title, String message) { + showDialog( + context: context, + builder: (ctx) => AlertDialog( + backgroundColor: const Color(0xFF1A1A2E), + shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(20)), + title: Text( + title, + style: const TextStyle( + color: Color(0xFFF0F0F5), + fontWeight: FontWeight.w700, + fontSize: 18, + ), + ), + content: Text( + message, + style: const TextStyle(color: Color(0xFF8A8A9A), fontSize: 14), + ), + actions: [ + TextButton( + onPressed: () => Navigator.pop(ctx), + child: const Text( + 'OK', + style: TextStyle(color: Color(0xFFE53935), fontWeight: FontWeight.w700), + ), + ), + ], + ), + ); + } + + @override + Widget build(BuildContext context) { + return Scaffold( + body: SafeArea( + child: SingleChildScrollView( + padding: const EdgeInsets.symmetric(horizontal: 24), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const SizedBox(height: 60), + + // Logo + Center( + child: ClipRRect( + borderRadius: BorderRadius.circular(20), + child: Image.asset( + 'assets/images/logo.png', + width: 72, + height: 72, + fit: BoxFit.contain, + ), + ), + ), + const SizedBox(height: 24), + + // Title + Center( + child: RichText( + text: const TextSpan( + style: TextStyle(fontSize: 28, fontWeight: FontWeight.w800, letterSpacing: -0.5), + children: [ + TextSpan(text: 'She', style: TextStyle(color: Color(0xFFF0F0F5))), + TextSpan(text: 'Shield', style: TextStyle(color: Color(0xFFE53935))), + ], + ), + ), + ), + const SizedBox(height: 6), + Center( + child: Text( + _isLogin ? 'Welcome back! Sign in to continue.' : 'Create your account to get started.', + style: const TextStyle(color: Color(0xFF8A8A9A), fontSize: 14), + ), + ), + + const SizedBox(height: 40), + + // Name field (sign-up only) + if (!_isLogin) ...[ + const Text( + 'FULL NAME', + style: TextStyle( + fontSize: 12, + fontWeight: FontWeight.w600, + color: Color(0xFF8A8A9A), + letterSpacing: 0.5, + ), + ), + const SizedBox(height: 6), + TextField( + controller: _nameController, + style: const TextStyle(color: Color(0xFFF0F0F5), fontSize: 15), + decoration: const InputDecoration( + hintText: 'e.g. Priya Sharma', + prefixIcon: Icon(Icons.person_outline, color: Color(0xFF5A5A6E), size: 20), + ), + textCapitalization: TextCapitalization.words, + ), + const SizedBox(height: 16), + ], + + // Email + const Text( + 'EMAIL', + style: TextStyle( + fontSize: 12, + fontWeight: FontWeight.w600, + color: Color(0xFF8A8A9A), + letterSpacing: 0.5, + ), + ), + const SizedBox(height: 6), + TextField( + controller: _emailController, + style: const TextStyle(color: Color(0xFFF0F0F5), fontSize: 15), + decoration: const InputDecoration( + hintText: 'you@example.com', + prefixIcon: Icon(Icons.email_outlined, color: Color(0xFF5A5A6E), size: 20), + ), + keyboardType: TextInputType.emailAddress, + ), + const SizedBox(height: 16), + + // Password + const Text( + 'PASSWORD', + style: TextStyle( + fontSize: 12, + fontWeight: FontWeight.w600, + color: Color(0xFF8A8A9A), + letterSpacing: 0.5, + ), + ), + const SizedBox(height: 6), + TextField( + controller: _passwordController, + style: const TextStyle(color: Color(0xFFF0F0F5), fontSize: 15), + obscureText: _obscurePassword, + decoration: InputDecoration( + hintText: 'β€’β€’β€’β€’β€’β€’β€’β€’', + prefixIcon: const Icon(Icons.lock_outline, color: Color(0xFF5A5A6E), size: 20), + suffixIcon: IconButton( + icon: Icon( + _obscurePassword ? Icons.visibility_off : Icons.visibility, + color: const Color(0xFF5A5A6E), + size: 20, + ), + onPressed: () => setState(() => _obscurePassword = !_obscurePassword), + ), + ), + ), + + const SizedBox(height: 28), + + // Submit button + SizedBox( + width: double.infinity, + child: ElevatedButton( + onPressed: _isLoading ? null : _submit, + style: ElevatedButton.styleFrom( + padding: const EdgeInsets.symmetric(vertical: 16), + shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(16)), + disabledBackgroundColor: const Color(0xFF2A2A3E), + ), + child: _isLoading + ? const SizedBox( + width: 20, + height: 20, + child: CircularProgressIndicator(strokeWidth: 2, color: Colors.white), + ) + : Text( + _isLogin ? 'Sign In' : 'Create Account', + style: const TextStyle(fontSize: 16, fontWeight: FontWeight.w700), + ), + ), + ), + + const SizedBox(height: 20), + + // Toggle login / sign-up + Center( + child: GestureDetector( + onTap: () => setState(() => _isLogin = !_isLogin), + child: RichText( + text: TextSpan( + style: const TextStyle(fontSize: 14), + children: [ + TextSpan( + text: _isLogin ? "Don't have an account? " : 'Already have an account? ', + style: const TextStyle(color: Color(0xFF8A8A9A)), + ), + TextSpan( + text: _isLogin ? 'Sign Up' : 'Sign In', + style: const TextStyle( + color: Color(0xFFE53935), + fontWeight: FontWeight.w700, + ), + ), + ], + ), + ), + ), + ), + + const SizedBox(height: 40), + ], + ), + ), + ), + ); + } +} diff --git a/Team-Shivam/SheShield/lib/screens/nearby_police_screen.dart b/Team-Shivam/SheShield/lib/screens/nearby_police_screen.dart new file mode 100644 index 0000000..d39c5f7 --- /dev/null +++ b/Team-Shivam/SheShield/lib/screens/nearby_police_screen.dart @@ -0,0 +1,407 @@ +import 'package:flutter/material.dart'; +import 'package:google_maps_flutter/google_maps_flutter.dart'; +import 'package:url_launcher/url_launcher.dart'; +import '../services/location_service.dart'; +import '../services/places_service.dart'; + +class NearbyPoliceScreen extends StatefulWidget { + const NearbyPoliceScreen({super.key}); + + @override + State createState() => _NearbyPoliceScreenState(); +} + +class _NearbyPoliceScreenState extends State { + GoogleMapController? _mapController; + final Set _markers = {}; + + double _lat = 28.6139; + double _lng = 77.2090; + bool _loading = true; + String? _error; + List _stations = []; + + @override + void initState() { + super.initState(); + _init(); + } + + @override + void dispose() { + _mapController?.dispose(); + super.dispose(); + } + + Future _init() async { + try { + // 1. Get current location. + final pos = await LocationService.getCurrentLocation(); + _lat = pos.latitude; + _lng = pos.longitude; + + // 2. Move camera to actual user location. + _mapController?.animateCamera( + CameraUpdate.newLatLngZoom(LatLng(_lat, _lng), 13), + ); + + // 3. Fetch nearby stations. + await _fetchStations(); + } catch (e) { + if (mounted) { + setState(() { + _error = e.toString(); + _loading = false; + }); + } + } + } + + Future _fetchStations() async { + setState(() { + _loading = true; + _error = null; + }); + + try { + debugPrint('Fetching police stations near $_lat, $_lng ...'); + final stations = + await PlacesService.fetchNearbyPoliceStations(_lat, _lng); + debugPrint('Found ${stations.length} police stations'); + if (mounted) { + setState(() { + _stations = stations; + _loading = false; + _buildMarkers(); + }); + } + } catch (e) { + debugPrint('Error fetching police stations: $e'); + if (mounted) { + setState(() { + _error = 'Unable to load police stations. Check your internet connection and try again.'; + _loading = false; + }); + } + } + } + + void _buildMarkers() { + _markers.clear(); + + // User location marker. + _markers.add( + Marker( + markerId: const MarkerId('user_location'), + position: LatLng(_lat, _lng), + icon: BitmapDescriptor.defaultMarkerWithHue(BitmapDescriptor.hueAzure), + infoWindow: const InfoWindow(title: 'Your Location'), + ), + ); + + // Police station markers. + for (final station in _stations) { + _markers.add( + Marker( + markerId: MarkerId(station.placeId), + position: LatLng(station.lat, station.lng), + icon: + BitmapDescriptor.defaultMarkerWithHue(BitmapDescriptor.hueRed), + infoWindow: InfoWindow( + title: station.name, + snippet: '${station.distanceText} Β· Tap to navigate', + onTap: () => _openNavigation(station), + ), + ), + ); + } + } + + Future _openNavigation(PoliceStation station) async { + // Try Google Maps navigation deep-link first. + final navUri = Uri.parse(PlacesService.getNavigationUrl( + station.lat, + station.lng, + )); + + if (await canLaunchUrl(navUri)) { + await launchUrl(navUri); + } else { + // Fallback to web URL. + final webUri = Uri.parse(PlacesService.getMapsUrl( + station.lat, + station.lng, + )); + await launchUrl(webUri, mode: LaunchMode.externalApplication); + } + } + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar( + title: const Text('Nearby Police Stations'), + leading: IconButton( + icon: Container( + width: 40, + height: 40, + decoration: BoxDecoration( + color: const Color(0xFF1A1A2E), + borderRadius: BorderRadius.circular(10), + border: + Border.all(color: Colors.white.withValues(alpha: 0.06)), + ), + child: const Icon(Icons.arrow_back, size: 18), + ), + onPressed: () => Navigator.pop(context), + ), + ), + body: Column( + children: [ + // Map + Expanded( + flex: 5, + child: Container( + margin: const EdgeInsets.symmetric(horizontal: 20), + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(16), + border: Border.all( + color: Colors.white.withValues(alpha: 0.06)), + ), + clipBehavior: Clip.antiAlias, + child: Stack( + children: [ + GoogleMap( + initialCameraPosition: CameraPosition( + target: LatLng(_lat, _lng), + zoom: 13, + ), + markers: _markers, + onMapCreated: (controller) { + _mapController = controller; + // Re-center after map is ready if location already fetched + if (_lat != 28.6139 || _lng != 77.2090) { + controller.animateCamera( + CameraUpdate.newLatLngZoom(LatLng(_lat, _lng), 13), + ); + } + }, + myLocationEnabled: true, + myLocationButtonEnabled: false, + zoomControlsEnabled: true, + mapToolbarEnabled: false, + compassEnabled: false, + mapType: MapType.normal, + ), + if (_loading) + Container( + color: const Color(0xCC0A0A0F), + child: const Center( + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + CircularProgressIndicator( + color: Color(0xFFE53935), + ), + SizedBox(height: 16), + Text( + 'Finding nearby police stations…', + style: TextStyle( + color: Color(0xFF8A8A9A), + fontSize: 14, + fontWeight: FontWeight.w500, + ), + ), + ], + ), + ), + ), + if (_error != null) + Container( + color: const Color(0xCC0A0A0F), + child: Center( + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + const Text('⚠️', + style: TextStyle(fontSize: 36)), + const SizedBox(height: 12), + const Text( + 'Could not load stations', + style: TextStyle( + color: Color(0xFFF0F0F5), + fontSize: 16, + fontWeight: FontWeight.w600, + ), + ), + const SizedBox(height: 16), + ElevatedButton( + onPressed: _fetchStations, + style: ElevatedButton.styleFrom( + backgroundColor: const Color(0xFFE53935), + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(12), + ), + ), + child: const Text('Retry'), + ), + ], + ), + ), + ), + ], + ), + ), + ), + + const SizedBox(height: 12), + + // Station list + Expanded( + flex: 3, + child: _stations.isEmpty && !_loading + ? const Center( + child: Text( + 'No nearby police stations found', + style: TextStyle( + color: Color(0xFF5A5A6E), + fontSize: 14, + fontWeight: FontWeight.w500, + ), + ), + ) + : ListView.separated( + padding: const EdgeInsets.symmetric(horizontal: 20), + itemCount: _stations.length, + separatorBuilder: (_, __) => + const SizedBox(height: 10), + itemBuilder: (_, i) => + _buildStationCard(_stations[i]), + ), + ), + + const SizedBox(height: 16), + ], + ), + ); + } + + Widget _buildStationCard(PoliceStation station) { + return Material( + color: const Color(0xFF1A1A2E), + borderRadius: BorderRadius.circular(16), + child: InkWell( + borderRadius: BorderRadius.circular(16), + onTap: () { + // Animate camera to station. + _mapController?.animateCamera( + CameraUpdate.newLatLngZoom( + LatLng(station.lat, station.lng), + 15, + ), + ); + }, + child: Container( + padding: const EdgeInsets.all(16), + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(16), + border: Border.all( + color: Colors.white.withValues(alpha: 0.06)), + ), + child: Column( + children: [ + Row( + children: [ + // Icon + Container( + width: 44, + height: 44, + decoration: BoxDecoration( + color: const Color(0x1F42A5F5), + borderRadius: BorderRadius.circular(10), + ), + child: const Center( + child: Text('πŸš”', style: TextStyle(fontSize: 22)), + ), + ), + const SizedBox(width: 14), + // Info + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + station.name, + style: const TextStyle( + fontSize: 14, + fontWeight: FontWeight.w600, + color: Color(0xFFF0F0F5), + ), + maxLines: 1, + overflow: TextOverflow.ellipsis, + ), + const SizedBox(height: 2), + Text( + station.vicinity.isNotEmpty + ? station.vicinity + : 'Police Station', + style: const TextStyle( + fontSize: 12, + color: Color(0xFF8A8A9A), + ), + maxLines: 1, + overflow: TextOverflow.ellipsis, + ), + ], + ), + ), + const SizedBox(width: 8), + // Distance badge + Container( + padding: const EdgeInsets.symmetric( + horizontal: 10, vertical: 4), + decoration: BoxDecoration( + color: const Color(0x2600E676), + borderRadius: BorderRadius.circular(20), + ), + child: Text( + station.distanceText, + style: const TextStyle( + fontSize: 12, + fontWeight: FontWeight.w700, + color: Color(0xFF00E676), + ), + ), + ), + ], + ), + const SizedBox(height: 12), + // Get Directions button + SizedBox( + width: double.infinity, + child: ElevatedButton.icon( + onPressed: () => _openNavigation(station), + icon: const Icon(Icons.directions, size: 18), + label: const Text('Get Directions'), + style: ElevatedButton.styleFrom( + backgroundColor: const Color(0xFFE53935), + foregroundColor: Colors.white, + padding: const EdgeInsets.symmetric(vertical: 12), + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(10), + ), + textStyle: const TextStyle( + fontFamily: 'Inter', + fontSize: 13, + fontWeight: FontWeight.w700, + ), + ), + ), + ), + ], + ), + ), + ), + ); + } +} diff --git a/Team-Shivam/SheShield/lib/screens/past_emergencies_screen.dart b/Team-Shivam/SheShield/lib/screens/past_emergencies_screen.dart new file mode 100644 index 0000000..45e5b7f --- /dev/null +++ b/Team-Shivam/SheShield/lib/screens/past_emergencies_screen.dart @@ -0,0 +1,545 @@ +import 'dart:convert'; +import 'dart:io'; +import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; +import 'package:cloud_firestore/cloud_firestore.dart'; +import 'package:firebase_storage/firebase_storage.dart'; +import 'package:shared_preferences/shared_preferences.dart'; +import 'package:url_launcher/url_launcher.dart'; +import 'video_player_screen.dart'; + +class PastEmergenciesScreen extends StatefulWidget { + const PastEmergenciesScreen({super.key}); + + @override + State createState() => _PastEmergenciesScreenState(); +} + +class _PastEmergenciesScreenState extends State { + List<_EmergencyItem> _items = []; + bool _loading = true; + + @override + void initState() { + super.initState(); + _loadEmergencies(); + } + + Future _loadEmergencies() async { + setState(() => _loading = true); + + final List<_EmergencyItem> items = []; + + // 1. Load alerts from Firestore + try { + final alertsSnap = await FirebaseFirestore.instance + .collection('alerts') + .orderBy('timestamp', descending: true) + .limit(50) + .get(); + + for (final doc in alertsSnap.docs) { + final data = doc.data(); + final ts = data['timestamp'] as Timestamp?; + items.add(_EmergencyItem( + id: doc.id, + type: 'alert', + title: data['notificationTitle'] ?? '🚨 Emergency Alert', + subtitle: data['mapsLink'] ?? 'Location shared', + status: data['status'] ?? 'unknown', + latitude: (data['latitude'] as num?)?.toDouble(), + longitude: (data['longitude'] as num?)?.toDouble(), + dateTime: ts?.toDate(), + videoUrl: null, + videoName: null, + )); + } + } catch (e) { + debugPrint('PastEmergencies: Failed to load alerts β€” $e'); + } + + // 2. Load video recordings from Firebase Storage + try { + final ref = FirebaseStorage.instance.ref('sos_recordings'); + final result = await ref.listAll(); + + for (final item in result.items) { + try { + final meta = await item.getMetadata(); + final url = await item.getDownloadURL(); + items.add(_EmergencyItem( + id: item.name, + type: 'video', + title: 'SOS Recording', + subtitle: _formatSize(meta.size ?? 0), + status: 'recorded', + dateTime: meta.timeCreated, + videoUrl: url, + videoName: item.name, + )); + } catch (_) {} + } + } catch (e) { + debugPrint('PastEmergencies: Failed to load videos β€” $e'); + } + + // 3. Load local emergency records from SharedPreferences + try { + final prefs = await SharedPreferences.getInstance(); + final localList = prefs.getStringList('emergencies') ?? []; + for (final jsonStr in localList) { + try { + final data = jsonDecode(jsonStr) as Map; + final time = DateTime.tryParse(data['time'] ?? ''); + final filePath = data['filePath'] as String? ?? ''; + final type = data['type'] as String? ?? 'video'; + final fileExists = filePath.isNotEmpty && await File(filePath).exists(); + + items.add(_EmergencyItem( + id: 'local_${time?.millisecondsSinceEpoch ?? items.length}', + type: type, + title: 'SOS Recording (Local)', + subtitle: fileExists ? 'Saved locally' : 'File not found', + status: fileExists ? 'saved' : 'missing', + dateTime: time, + videoUrl: null, + videoName: null, + localFilePath: fileExists ? filePath : null, + )); + } catch (_) {} + } + } catch (e) { + debugPrint('PastEmergencies: Failed to load local records β€” \$e'); + } + + // Sort by newest first + items.sort((a, b) { + if (a.dateTime == null && b.dateTime == null) return 0; + if (a.dateTime == null) return 1; + if (b.dateTime == null) return -1; + return b.dateTime!.compareTo(a.dateTime!); + }); + + if (mounted) { + setState(() { + _items = items; + _loading = false; + }); + } + } + + void _openMap(double lat, double lng) async { + final url = 'https://maps.google.com/?q=$lat,$lng'; + try { + await launchUrl(Uri.parse(url), mode: LaunchMode.externalApplication); + } catch (_) { + await Clipboard.setData(ClipboardData(text: url)); + if (mounted) _showPopup('πŸ“‹ Link Copied', 'Map link copied to clipboard.'); + } + } + + void _openVideo(String url) async { + try { + await launchUrl(Uri.parse(url), mode: LaunchMode.externalApplication); + } catch (_) { + await Clipboard.setData(ClipboardData(text: url)); + if (mounted) _showPopup('πŸ“‹ Link Copied', 'Video link copied to clipboard.'); + } + } + + void _playLocalFile(String filePath) async { + final file = File(filePath); + if (await file.exists()) { + if (mounted) { + Navigator.of(context).push( + MaterialPageRoute( + builder: (_) => VideoPlayerScreen( + filePath: filePath, + title: 'SOS Recording', + ), + ), + ); + } + } else { + if (mounted) _showPopup('⚠️ Error', 'Recording file not found.'); + } + } + + Future _deleteItem(_EmergencyItem item) async { + final confirm = await showDialog( + context: context, + builder: (ctx) => AlertDialog( + backgroundColor: Theme.of(context).colorScheme.surface, + shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(20)), + title: const Text('πŸ—‘οΈ Delete Record?', + style: TextStyle(fontWeight: FontWeight.w700, fontSize: 18)), + content: Text( + item.type == 'video' + ? 'This recording will be permanently deleted.' + : 'This alert record will be permanently deleted.', + style: const TextStyle(fontSize: 14), + ), + actions: [ + TextButton( + onPressed: () => Navigator.pop(ctx, false), + child: Text('Cancel', + style: TextStyle( + color: Theme.of(context).colorScheme.onSurface.withValues(alpha: 0.5))), + ), + TextButton( + onPressed: () => Navigator.pop(ctx, true), + child: const Text('Delete', + style: TextStyle( + color: Color(0xFFE53935), fontWeight: FontWeight.w700)), + ), + ], + ), + ); + + if (confirm != true) return; + + try { + if (item.type == 'video' && item.videoName != null) { + await FirebaseStorage.instance + .ref('sos_recordings/${item.videoName}') + .delete(); + } else if (item.type == 'alert') { + await FirebaseFirestore.instance + .collection('alerts') + .doc(item.id) + .delete(); + } + setState(() => _items.remove(item)); + if (mounted) _showPopup('βœ… Deleted', 'Record has been removed.'); + } catch (_) { + if (mounted) _showPopup('⚠️ Error', 'Could not delete record.'); + } + } + + void _showPopup(String title, String message) { + showDialog( + context: context, + builder: (ctx) => AlertDialog( + backgroundColor: Theme.of(context).colorScheme.surface, + shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(20)), + title: Text(title, + style: const TextStyle(fontWeight: FontWeight.w700, fontSize: 18)), + content: Text(message, style: const TextStyle(fontSize: 14)), + actions: [ + TextButton( + onPressed: () => Navigator.pop(ctx), + child: const Text('OK', + style: TextStyle( + color: Color(0xFFE53935), fontWeight: FontWeight.w700)), + ), + ], + ), + ); + } + + String _formatSize(int bytes) { + if (bytes < 1024) return '$bytes B'; + if (bytes < 1024 * 1024) return '${(bytes / 1024).toStringAsFixed(1)} KB'; + return '${(bytes / (1024 * 1024)).toStringAsFixed(1)} MB'; + } + + String _formatDate(DateTime? dt) { + if (dt == null) return 'Unknown date'; + final d = dt.toLocal(); + final months = [ + 'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', + 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec' + ]; + final hour = d.hour > 12 ? d.hour - 12 : (d.hour == 0 ? 12 : d.hour); + final amPm = d.hour >= 12 ? 'PM' : 'AM'; + return '${d.day} ${months[d.month - 1]} ${d.year}, $hour:${d.minute.toString().padLeft(2, '0')} $amPm'; + } + + @override + Widget build(BuildContext context) { + final isDark = Theme.of(context).brightness == Brightness.dark; + return Scaffold( + appBar: AppBar( + title: const Text('Past Emergencies'), + leading: IconButton( + icon: Container( + width: 40, + height: 40, + decoration: BoxDecoration( + color: isDark ? const Color(0xFF1A1A2E) : Colors.white, + borderRadius: BorderRadius.circular(10), + border: Border.all( + color: isDark + ? Colors.white.withValues(alpha: 0.06) + : Colors.black.withValues(alpha: 0.08)), + ), + child: const Icon(Icons.arrow_back, size: 18), + ), + onPressed: () => Navigator.pop(context), + ), + ), + body: _loading + ? const Center( + child: CircularProgressIndicator(color: Color(0xFFE53935))) + : RefreshIndicator( + onRefresh: _loadEmergencies, + color: const Color(0xFFE53935), + child: _items.isEmpty + ? ListView( + children: [ + SizedBox( + height: MediaQuery.of(context).size.height * 0.6, + child: Center( + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + const Text('πŸ“‹', + style: TextStyle(fontSize: 48)), + const SizedBox(height: 12), + Text( + 'No past emergencies', + style: TextStyle( + fontSize: 14, + fontWeight: FontWeight.w500, + color: isDark + ? const Color(0xFF5A5A6E) + : const Color(0xFF8A8A9A), + ), + ), + const SizedBox(height: 4), + Text( + 'SOS alerts and recordings will appear here', + style: TextStyle( + fontSize: 12, + color: isDark + ? const Color(0xFF5A5A6E) + : const Color(0xFF8A8A9A), + ), + ), + ], + ), + ), + ), + ], + ) + : ListView.separated( + physics: const AlwaysScrollableScrollPhysics(), + padding: const EdgeInsets.symmetric( + horizontal: 20, vertical: 12), + itemCount: _items.length, + separatorBuilder: (_, __) => + const SizedBox(height: 10), + itemBuilder: (_, i) => + _buildEmergencyCard(_items[i], isDark), + ), + ), + ); + } + + Widget _buildEmergencyCard(_EmergencyItem item, bool isDark) { + final isAlert = item.type == 'alert'; + final isActive = item.status == 'active'; + final bg = isDark ? const Color(0xFF1A1A2E) : Colors.white; + final border = isDark + ? Colors.white.withValues(alpha: 0.06) + : Colors.black.withValues(alpha: 0.08); + + return Container( + padding: const EdgeInsets.all(14), + decoration: BoxDecoration( + color: bg, + borderRadius: BorderRadius.circular(16), + border: Border.all( + color: isActive + ? const Color(0xFFE53935).withValues(alpha: 0.3) + : border, + ), + ), + child: Row( + children: [ + // Icon + Container( + width: 48, + height: 48, + decoration: BoxDecoration( + color: isAlert + ? const Color(0xFFE53935).withValues(alpha: 0.12) + : const Color(0xFF42A5F5).withValues(alpha: 0.12), + borderRadius: BorderRadius.circular(12), + ), + child: Center( + child: Icon( + isAlert ? Icons.warning_amber_rounded : Icons.videocam_rounded, + color: isAlert + ? const Color(0xFFE53935) + : const Color(0xFF42A5F5), + size: 24, + ), + ), + ), + const SizedBox(width: 14), + // Info + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Row( + children: [ + Flexible( + child: Text( + isAlert ? 'Emergency Alert' : 'SOS Recording', + style: TextStyle( + fontSize: 14, + fontWeight: FontWeight.w600, + color: isDark + ? const Color(0xFFF0F0F5) + : const Color(0xFF1A1A2E), + ), + ), + ), + if (isActive) ...[ + const SizedBox(width: 8), + Container( + padding: const EdgeInsets.symmetric( + horizontal: 6, vertical: 2), + decoration: BoxDecoration( + color: + const Color(0xFFE53935).withValues(alpha: 0.15), + borderRadius: BorderRadius.circular(6), + ), + child: const Text('ACTIVE', + style: TextStyle( + fontSize: 8, + fontWeight: FontWeight.w800, + color: Color(0xFFE53935), + letterSpacing: 0.5, + )), + ), + ], + ], + ), + const SizedBox(height: 2), + Text( + _formatDate(item.dateTime), + style: TextStyle( + fontSize: 12, + color: isDark + ? const Color(0xFF8A8A9A) + : const Color(0xFF5A5A6E), + ), + ), + if (!isAlert) + Text( + item.subtitle, + style: TextStyle( + fontSize: 11, + color: isDark + ? const Color(0xFF5A5A6E) + : const Color(0xFF8A8A9A), + ), + ), + ], + ), + ), + // Action buttons + if (isAlert && item.latitude != null && item.longitude != null) + GestureDetector( + onTap: () => _openMap(item.latitude!, item.longitude!), + child: Container( + width: 36, + height: 36, + decoration: BoxDecoration( + color: const Color(0xFF42A5F5).withValues(alpha: 0.15), + borderRadius: BorderRadius.circular(10), + ), + child: const Center( + child: Icon(Icons.map_outlined, + color: Color(0xFF42A5F5), size: 18), + ), + ), + ), + if (!isAlert && item.videoUrl != null) + GestureDetector( + onTap: () => _openVideo(item.videoUrl!), + child: Container( + width: 36, + height: 36, + decoration: BoxDecoration( + color: const Color(0xFF42A5F5).withValues(alpha: 0.15), + borderRadius: BorderRadius.circular(10), + ), + child: const Center( + child: Icon(Icons.play_arrow_rounded, + color: Color(0xFF42A5F5), size: 20), + ), + ), + ), + // Local file play button + if (!isAlert && item.localFilePath != null) + GestureDetector( + onTap: () => _playLocalFile(item.localFilePath!), + child: Container( + width: 36, + height: 36, + decoration: BoxDecoration( + color: const Color(0xFF00E676).withValues(alpha: 0.15), + borderRadius: BorderRadius.circular(10), + ), + child: const Center( + child: Icon(Icons.play_circle_outline_rounded, + color: Color(0xFF00E676), size: 20), + ), + ), + ), + const SizedBox(width: 8), + GestureDetector( + onTap: () => _deleteItem(item), + child: Container( + width: 36, + height: 36, + decoration: BoxDecoration( + border: Border.all(color: border), + borderRadius: BorderRadius.circular(10), + ), + child: Center( + child: Icon(Icons.delete_outline, + color: isDark + ? const Color(0xFF5A5A6E) + : const Color(0xFF8A8A9A), + size: 18), + ), + ), + ), + ], + ), + ); + } +} + +class _EmergencyItem { + final String id; + final String type; // 'alert' or 'video' + final String title; + final String subtitle; + final String status; + final double? latitude; + final double? longitude; + final DateTime? dateTime; + final String? videoUrl; + final String? videoName; + final String? localFilePath; + + _EmergencyItem({ + required this.id, + required this.type, + required this.title, + required this.subtitle, + required this.status, + this.latitude, + this.longitude, + required this.dateTime, + this.videoUrl, + this.videoName, + this.localFilePath, + }); +} diff --git a/Team-Shivam/SheShield/lib/screens/profile_screen.dart b/Team-Shivam/SheShield/lib/screens/profile_screen.dart new file mode 100644 index 0000000..6fb4b4d --- /dev/null +++ b/Team-Shivam/SheShield/lib/screens/profile_screen.dart @@ -0,0 +1,438 @@ +import 'package:flutter/material.dart'; +import 'package:firebase_auth/firebase_auth.dart'; +import 'package:shared_preferences/shared_preferences.dart'; +import '../main.dart'; +import 'login_screen.dart'; + +class ProfileScreen extends StatefulWidget { + const ProfileScreen({super.key}); + + @override + State createState() => _ProfileScreenState(); +} + +class _ProfileScreenState extends State { + bool _isDark = themeNotifier.value == ThemeMode.dark; + + void _toggleTheme(bool dark) async { + setState(() => _isDark = dark); + themeNotifier.value = dark ? ThemeMode.dark : ThemeMode.light; + final prefs = await SharedPreferences.getInstance(); + await prefs.setBool('dark_mode', dark); + } + + void _confirmLogout() { + final theme = Theme.of(context); + showDialog( + context: context, + builder: (ctx) => AlertDialog( + backgroundColor: theme.colorScheme.surface, + shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(20)), + title: Text( + 'πŸ‘‹ Sign Out?', + style: TextStyle(color: theme.colorScheme.onSurface, fontWeight: FontWeight.w700, fontSize: 18), + ), + content: Text( + 'Are you sure you want to sign out of SheShield?', + style: TextStyle(color: theme.colorScheme.onSurface.withValues(alpha: 0.6), fontSize: 14), + ), + actions: [ + TextButton( + onPressed: () => Navigator.pop(ctx), + child: Text('Cancel', style: TextStyle(color: theme.colorScheme.onSurface.withValues(alpha: 0.5))), + ), + TextButton( + onPressed: () async { + Navigator.pop(ctx); // close dialog + await FirebaseAuth.instance.signOut(); + if (context.mounted) { + Navigator.of(context).pushAndRemoveUntil( + MaterialPageRoute(builder: (_) => const LoginScreen()), + (route) => false, // remove all routes + ); + } + }, + child: const Text('Sign Out', style: TextStyle(color: Color(0xFFE53935), fontWeight: FontWeight.w700)), + ), + ], + ), + ); + } + + String _formatDate(DateTime dt) { + final d = dt.toLocal(); + final months = ['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec']; + return '${d.day} ${months[d.month - 1]} ${d.year}'; + } + + @override + Widget build(BuildContext context) { + final user = FirebaseAuth.instance.currentUser; + final name = user?.displayName ?? 'User'; + final email = user?.email ?? ''; + final initial = name.isNotEmpty ? name[0].toUpperCase() : '?'; + final theme = Theme.of(context); + final isDarkMode = theme.brightness == Brightness.dark; + + return Scaffold( + appBar: AppBar( + title: const Text('Profile'), + leading: IconButton( + icon: Container( + width: 40, + height: 40, + decoration: BoxDecoration( + color: theme.colorScheme.surface, + borderRadius: BorderRadius.circular(10), + border: Border.all(color: theme.colorScheme.onSurface.withValues(alpha: 0.06)), + ), + child: const Icon(Icons.arrow_back, size: 18), + ), + onPressed: () => Navigator.pop(context), + ), + ), + body: SingleChildScrollView( + padding: const EdgeInsets.symmetric(horizontal: 24), + child: Column( + children: [ + const SizedBox(height: 40), + + // Avatar + Container( + width: 88, + height: 88, + decoration: BoxDecoration( + gradient: const LinearGradient( + colors: [Color(0xFFE53935), Color(0xFFC62828)], + begin: Alignment.topLeft, + end: Alignment.bottomRight, + ), + shape: BoxShape.circle, + boxShadow: [ + BoxShadow( + color: const Color(0xFFE53935).withValues(alpha: 0.2), + blurRadius: 24, + offset: const Offset(0, 8), + ), + ], + ), + child: Center( + child: Text( + initial, + style: const TextStyle(fontSize: 36, fontWeight: FontWeight.w800, color: Colors.white), + ), + ), + ), + const SizedBox(height: 16), + + // Name + Text( + name, + style: TextStyle( + fontSize: 22, + fontWeight: FontWeight.w700, + color: theme.colorScheme.onSurface, + ), + ), + const SizedBox(height: 4), + Text( + email, + style: TextStyle(fontSize: 14, color: theme.colorScheme.onSurface.withValues(alpha: 0.5)), + ), + + const SizedBox(height: 32), + + // ─── Theme Toggle ─── + Container( + padding: const EdgeInsets.symmetric(horizontal: 16, vertical: 12), + decoration: BoxDecoration( + color: theme.colorScheme.surface, + borderRadius: BorderRadius.circular(14), + border: Border.all(color: theme.colorScheme.onSurface.withValues(alpha: 0.06)), + ), + child: Row( + children: [ + Container( + width: 40, + height: 40, + decoration: BoxDecoration( + color: const Color(0xFFE53935).withValues(alpha: 0.1), + borderRadius: BorderRadius.circular(10), + ), + child: Center( + child: Icon( + isDarkMode ? Icons.dark_mode : Icons.light_mode, + color: const Color(0xFFE53935), + size: 20, + ), + ), + ), + const SizedBox(width: 14), + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + 'APPEARANCE', + style: TextStyle( + fontSize: 11, + fontWeight: FontWeight.w600, + color: theme.colorScheme.onSurface.withValues(alpha: 0.5), + ), + ), + const SizedBox(height: 2), + Text( + _isDark ? 'Dark Mode' : 'Light Mode', + style: TextStyle( + fontSize: 14, + fontWeight: FontWeight.w600, + color: theme.colorScheme.onSurface, + ), + ), + ], + ), + ), + Switch( + value: _isDark, + onChanged: _toggleTheme, + activeThumbColor: const Color(0xFFE53935), + activeTrackColor: const Color(0xFFE53935).withValues(alpha: 0.3), + ), + ], + ), + ), + + const SizedBox(height: 10), + + // Info cards + _InfoTile(icon: Icons.email_outlined, label: 'Email', value: email), + const SizedBox(height: 10), + _EditableNameTile( + name: name, + onNameChanged: () => setState(() {}), + ), + const SizedBox(height: 10), + _InfoTile( + icon: Icons.calendar_today_outlined, + label: 'Joined', + value: user?.metadata.creationTime != null + ? _formatDate(user!.metadata.creationTime!) + : 'Unknown', + ), + + const SizedBox(height: 32), + + // Logout button + SizedBox( + width: double.infinity, + child: OutlinedButton.icon( + onPressed: _confirmLogout, + icon: const Icon(Icons.logout_rounded, size: 20), + label: const Text('Sign Out'), + style: OutlinedButton.styleFrom( + foregroundColor: const Color(0xFFE53935), + side: const BorderSide(color: Color(0xFFE53935), width: 1.5), + padding: const EdgeInsets.symmetric(vertical: 16), + shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(16)), + textStyle: const TextStyle(fontSize: 15, fontWeight: FontWeight.w700), + ), + ), + ), + + const SizedBox(height: 40), + ], + ), + ), + ); + } +} + +class _InfoTile extends StatelessWidget { + final IconData icon; + final String label; + final String value; + + const _InfoTile({ + required this.icon, + required this.label, + required this.value, + }); + + @override + Widget build(BuildContext context) { + final theme = Theme.of(context); + return Container( + padding: const EdgeInsets.all(14), + decoration: BoxDecoration( + color: theme.colorScheme.surface, + borderRadius: BorderRadius.circular(14), + border: Border.all(color: theme.colorScheme.onSurface.withValues(alpha: 0.06)), + ), + child: Row( + children: [ + Container( + width: 40, + height: 40, + decoration: BoxDecoration( + color: const Color(0xFFE53935).withValues(alpha: 0.1), + borderRadius: BorderRadius.circular(10), + ), + child: Center(child: Icon(icon, color: const Color(0xFFE53935), size: 20)), + ), + const SizedBox(width: 14), + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + label, + style: TextStyle( + fontSize: 11, + fontWeight: FontWeight.w600, + color: theme.colorScheme.onSurface.withValues(alpha: 0.5), + ), + ), + const SizedBox(height: 2), + Text( + value, + style: TextStyle( + fontSize: 14, + fontWeight: FontWeight.w600, + color: theme.colorScheme.onSurface, + ), + overflow: TextOverflow.ellipsis, + ), + ], + ), + ), + ], + ), + ); + } +} + +class _EditableNameTile extends StatelessWidget { + final String name; + final VoidCallback onNameChanged; + + const _EditableNameTile({required this.name, required this.onNameChanged}); + + void _showEditDialog(BuildContext context) { + final controller = TextEditingController(text: name == 'User' ? '' : name); + final theme = Theme.of(context); + + showDialog( + context: context, + builder: (ctx) => AlertDialog( + backgroundColor: theme.colorScheme.surface, + shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(20)), + title: Text('✏️ Edit Name', + style: TextStyle( + color: theme.colorScheme.onSurface, + fontWeight: FontWeight.w700, + fontSize: 18)), + content: TextField( + controller: controller, + autofocus: true, + textCapitalization: TextCapitalization.words, + style: TextStyle(color: theme.colorScheme.onSurface, fontSize: 15), + decoration: const InputDecoration( + hintText: 'Enter your name', + prefixIcon: Icon(Icons.person_outline, size: 20), + ), + ), + actions: [ + TextButton( + onPressed: () => Navigator.pop(ctx), + child: Text('Cancel', + style: TextStyle( + color: theme.colorScheme.onSurface.withValues(alpha: 0.5))), + ), + TextButton( + onPressed: () async { + final newName = controller.text.trim(); + if (newName.isEmpty) return; + Navigator.pop(ctx); + try { + await FirebaseAuth.instance.currentUser + ?.updateDisplayName(newName); + await FirebaseAuth.instance.currentUser?.reload(); + onNameChanged(); + } catch (_) {} + }, + child: const Text('Save', + style: TextStyle( + color: Color(0xFFE53935), fontWeight: FontWeight.w700)), + ), + ], + ), + ); + } + + @override + Widget build(BuildContext context) { + final theme = Theme.of(context); + return Container( + padding: const EdgeInsets.all(14), + decoration: BoxDecoration( + color: theme.colorScheme.surface, + borderRadius: BorderRadius.circular(14), + border: Border.all( + color: theme.colorScheme.onSurface.withValues(alpha: 0.06)), + ), + child: Row( + children: [ + Container( + width: 40, + height: 40, + decoration: BoxDecoration( + color: const Color(0xFFE53935).withValues(alpha: 0.1), + borderRadius: BorderRadius.circular(10), + ), + child: const Center( + child: + Icon(Icons.badge_outlined, color: Color(0xFFE53935), size: 20)), + ), + const SizedBox(width: 14), + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text('Display Name', + style: TextStyle( + fontSize: 11, + fontWeight: FontWeight.w600, + color: + theme.colorScheme.onSurface.withValues(alpha: 0.5), + )), + const SizedBox(height: 2), + Text(name, + style: TextStyle( + fontSize: 14, + fontWeight: FontWeight.w600, + color: theme.colorScheme.onSurface, + ), + overflow: TextOverflow.ellipsis), + ], + ), + ), + GestureDetector( + onTap: () => _showEditDialog(context), + child: Container( + width: 36, + height: 36, + decoration: BoxDecoration( + color: const Color(0xFFE53935).withValues(alpha: 0.1), + borderRadius: BorderRadius.circular(10), + ), + child: const Center( + child: Icon(Icons.edit_outlined, + color: Color(0xFFE53935), size: 16), + ), + ), + ), + ], + ), + ); + } +} diff --git a/Team-Shivam/SheShield/lib/screens/security_setup_screen.dart b/Team-Shivam/SheShield/lib/screens/security_setup_screen.dart new file mode 100644 index 0000000..8c545a3 --- /dev/null +++ b/Team-Shivam/SheShield/lib/screens/security_setup_screen.dart @@ -0,0 +1,327 @@ +import 'package:flutter/material.dart'; +import 'package:shared_preferences/shared_preferences.dart'; +import 'package:url_launcher/url_launcher.dart'; +import 'home_screen.dart'; + +/// Blocking screen that requires the user to confirm they've enabled +/// power-off verification in device settings before accessing the app. +/// +/// Uses SharedPreferences to persist the confirmation so it only shows once. +class SecuritySetupScreen extends StatefulWidget { + const SecuritySetupScreen({super.key}); + + /// Check if security setup has been completed previously. + static Future isCompleted() async { + final prefs = await SharedPreferences.getInstance(); + return prefs.getBool('security_setup_done') ?? false; + } + + @override + State createState() => _SecuritySetupScreenState(); +} + +class _SecuritySetupScreenState extends State { + bool _confirmed = false; + + /// Open Android security settings. + Future _openSecuritySettings() async { + // Try opening a helpful guide for the user + try { + // Use the Android Settings activity action + await launchUrl( + Uri.parse('https://www.google.com/search?q=how+to+enable+power+off+verification'), + mode: LaunchMode.externalApplication, + ); + } catch (_) {} + + // Also try opening the actual settings page + try { + await launchUrl( + Uri.parse('content://settings/system'), + mode: LaunchMode.externalApplication, + ); + } catch (_) { + // Fallback: show instruction + if (mounted) { + ScaffoldMessenger.of(context).showSnackBar( + const SnackBar( + content: Text('Go to Settings β†’ Security β†’ Power off verification'), + duration: Duration(seconds: 4), + ), + ); + } + } + } + + /// Mark setup as done and proceed to home. + Future _completeSetup() async { + if (!_confirmed) return; + final prefs = await SharedPreferences.getInstance(); + await prefs.setBool('security_setup_done', true); + if (mounted) { + // If this is the root screen (after signup), go to HomeScreen + // Otherwise pop back to SplashGate which will show HomeScreen + final canPop = Navigator.of(context).canPop(); + if (canPop) { + Navigator.of(context).pop(true); + } else { + Navigator.of(context).pushAndRemoveUntil( + MaterialPageRoute(builder: (_) => const HomeScreen()), + (route) => false, + ); + } + } + } + + @override + Widget build(BuildContext context) { + final isDark = Theme.of(context).brightness == Brightness.dark; + final cardBg = isDark ? const Color(0xFF1A1A2E) : Colors.white; + final border = isDark + ? Colors.white.withValues(alpha: 0.06) + : Colors.black.withValues(alpha: 0.08); + + return PopScope( + canPop: false, // Block back button + child: Scaffold( + body: Container( + width: double.infinity, + height: double.infinity, + decoration: BoxDecoration( + gradient: LinearGradient( + begin: Alignment.topCenter, + end: Alignment.bottomCenter, + colors: isDark + ? [const Color(0xFF0A0A0F), const Color(0xFF1A1A2E)] + : [const Color(0xFFF5F5F8), Colors.white], + ), + ), + child: SafeArea( + child: Center( + child: SingleChildScrollView( + padding: const EdgeInsets.symmetric(horizontal: 24), + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + // ── Warning icon ── + Container( + width: 80, + height: 80, + decoration: BoxDecoration( + color: const Color(0xFFFF9800).withValues(alpha: 0.12), + shape: BoxShape.circle, + ), + child: const Center( + child: Text('⚠️', style: TextStyle(fontSize: 40)), + ), + ), + const SizedBox(height: 24), + // ── Title ── + Text( + 'Security Setup Required', + textAlign: TextAlign.center, + style: TextStyle( + fontSize: 22, + fontWeight: FontWeight.w800, + color: isDark + ? const Color(0xFFF0F0F5) + : const Color(0xFF1A1A2E), + letterSpacing: -0.3, + ), + ), + const SizedBox(height: 20), + // ── Info card ── + Container( + padding: const EdgeInsets.all(20), + decoration: BoxDecoration( + color: cardBg, + borderRadius: BorderRadius.circular(18), + border: Border.all(color: border), + ), + child: Column( + children: [ + Container( + padding: const EdgeInsets.all(12), + decoration: BoxDecoration( + color: const Color(0xFFFF9800).withValues(alpha: 0.08), + borderRadius: BorderRadius.circular(12), + ), + child: Text( + 'For your safety, please enable power-off verification in your device settings. This prevents the phone from being switched off during emergencies.', + textAlign: TextAlign.center, + style: TextStyle( + fontSize: 14, + fontWeight: FontWeight.w500, + height: 1.5, + color: isDark + ? const Color(0xFFC0C0D0) + : const Color(0xFF3A3A4E), + ), + ), + ), + const SizedBox(height: 16), + // ── Steps ── + _buildStep(isDark, '1', 'Open device Settings'), + const SizedBox(height: 8), + _buildStep(isDark, '2', 'Go to Security / Lock Screen'), + const SizedBox(height: 8), + _buildStep(isDark, '3', 'Enable "Power off verification"'), + ], + ), + ), + const SizedBox(height: 20), + // ── Go to Settings button ── + SizedBox( + width: double.infinity, + child: ElevatedButton.icon( + onPressed: _openSecuritySettings, + icon: const Icon(Icons.settings, size: 20), + label: const Text( + 'Go to Settings', + style: TextStyle( + fontSize: 15, + fontWeight: FontWeight.w700, + ), + ), + style: ElevatedButton.styleFrom( + backgroundColor: const Color(0xFFFF9800), + foregroundColor: Colors.white, + padding: const EdgeInsets.symmetric(vertical: 16), + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(14), + ), + elevation: 0, + ), + ), + ), + const SizedBox(height: 16), + // ── Confirmation checkbox ── + Container( + padding: const EdgeInsets.symmetric(horizontal: 12, vertical: 8), + decoration: BoxDecoration( + color: isDark + ? Colors.white.withValues(alpha: 0.04) + : Colors.black.withValues(alpha: 0.03), + borderRadius: BorderRadius.circular(12), + border: Border.all( + color: _confirmed + ? const Color(0xFF00E676).withValues(alpha: 0.3) + : border, + ), + ), + child: Row( + children: [ + SizedBox( + width: 24, + height: 24, + child: Checkbox( + value: _confirmed, + onChanged: (val) => + setState(() => _confirmed = val ?? false), + activeColor: const Color(0xFF00E676), + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(6), + ), + ), + ), + const SizedBox(width: 12), + Expanded( + child: Text( + 'I confirm I have enabled this setting', + style: TextStyle( + fontSize: 13, + fontWeight: FontWeight.w600, + color: isDark + ? const Color(0xFFC0C0D0) + : const Color(0xFF3A3A4E), + ), + ), + ), + ], + ), + ), + const SizedBox(height: 16), + // ── I Have Enabled It button ── + SizedBox( + width: double.infinity, + child: ElevatedButton.icon( + onPressed: _confirmed ? _completeSetup : null, + icon: Icon( + _confirmed + ? Icons.check_circle + : Icons.lock_outline, + size: 20, + ), + label: const Text( + 'I Have Enabled It', + style: TextStyle( + fontSize: 15, + fontWeight: FontWeight.w700, + ), + ), + style: ElevatedButton.styleFrom( + backgroundColor: _confirmed + ? const Color(0xFF00E676) + : const Color(0xFF5A5A6E), + foregroundColor: Colors.white, + padding: const EdgeInsets.symmetric(vertical: 16), + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(14), + ), + elevation: 0, + disabledBackgroundColor: + isDark ? const Color(0xFF2A2A3E) : const Color(0xFFE0E0E0), + disabledForegroundColor: + isDark ? const Color(0xFF5A5A6E) : const Color(0xFF9A9A9A), + ), + ), + ), + const SizedBox(height: 32), + ], + ), + ), + ), + ), + ), + ), + ); + } + + Widget _buildStep(bool isDark, String num, String text) { + return Row( + children: [ + Container( + width: 28, + height: 28, + decoration: BoxDecoration( + color: const Color(0xFFFF9800).withValues(alpha: 0.12), + borderRadius: BorderRadius.circular(8), + ), + child: Center( + child: Text( + num, + style: const TextStyle( + fontSize: 13, + fontWeight: FontWeight.w800, + color: Color(0xFFFF9800), + ), + ), + ), + ), + const SizedBox(width: 12), + Expanded( + child: Text( + text, + style: TextStyle( + fontSize: 14, + fontWeight: FontWeight.w500, + color: isDark + ? const Color(0xFFC0C0D0) + : const Color(0xFF3A3A4E), + ), + ), + ), + ], + ); + } +} diff --git a/Team-Shivam/SheShield/lib/screens/sos_screen.dart b/Team-Shivam/SheShield/lib/screens/sos_screen.dart new file mode 100644 index 0000000..a8a946d --- /dev/null +++ b/Team-Shivam/SheShield/lib/screens/sos_screen.dart @@ -0,0 +1,253 @@ +import 'dart:async'; +import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; + +/// Full-screen emergency SOS alert. +/// +/// Shows a flashing red overlay, large alert text, continuous +/// vibration pattern, and a cancel button. Push this screen +/// when "BUTTON SOS" or "MOTION SOS" is received. +class SOSScreen extends StatefulWidget { + final VoidCallback onCancel; + const SOSScreen({super.key, required this.onCancel}); + + @override + State createState() => _SOSScreenState(); +} + +class _SOSScreenState extends State + with TickerProviderStateMixin { + late AnimationController _flashController; + late AnimationController _pulseController; + late AnimationController _textFadeController; + Timer? _vibrationTimer; + int _dotCount = 0; + Timer? _dotTimer; + + @override + void initState() { + super.initState(); + + // Flash animation β€” alternates red shades + _flashController = AnimationController( + vsync: this, + duration: const Duration(milliseconds: 600), + )..repeat(reverse: true); + + // Pulse scale for the icon + _pulseController = AnimationController( + vsync: this, + duration: const Duration(milliseconds: 1200), + )..repeat(reverse: true); + + // Fade-in for text + _textFadeController = AnimationController( + vsync: this, + duration: const Duration(milliseconds: 800), + )..forward(); + + // Continuous vibration + _startVibration(); + + // Animated dots for "Sending help signal..." + _dotTimer = Timer.periodic(const Duration(milliseconds: 500), (_) { + if (mounted) setState(() => _dotCount = (_dotCount + 1) % 4); + }); + } + + void _startVibration() { + HapticFeedback.heavyImpact(); + _vibrationTimer = Timer.periodic(const Duration(milliseconds: 800), (_) { + HapticFeedback.heavyImpact(); + }); + } + + @override + void dispose() { + _flashController.dispose(); + _pulseController.dispose(); + _textFadeController.dispose(); + _vibrationTimer?.cancel(); + _dotTimer?.cancel(); + super.dispose(); + } + + @override + Widget build(BuildContext context) { + return PopScope( + canPop: false, // prevent back button + child: AnimatedBuilder( + animation: _flashController, + builder: (context, child) { + final flashValue = _flashController.value; + return Scaffold( + backgroundColor: Color.lerp( + const Color(0xFFB71C1C), + const Color(0xFFE53935), + flashValue, + ), + body: SafeArea( + child: Column( + children: [ + const Spacer(flex: 2), + // ── Pulsing alert icon ── + AnimatedBuilder( + animation: _pulseController, + builder: (context, _) { + final scale = + 1.0 + (_pulseController.value * 0.15); + return Transform.scale( + scale: scale, + child: Container( + width: 120, + height: 120, + decoration: BoxDecoration( + shape: BoxShape.circle, + color: Colors.white.withValues(alpha: 0.15), + boxShadow: [ + BoxShadow( + color: + Colors.white.withValues(alpha: 0.1 * flashValue), + blurRadius: 60, + spreadRadius: 20, + ), + ], + ), + child: const Center( + child: Text( + '🚨', + style: TextStyle(fontSize: 56), + ), + ), + ), + ); + }, + ), + const SizedBox(height: 40), + // ── Title ── + FadeTransition( + opacity: _textFadeController, + child: const Text( + 'EMERGENCY\nTRIGGERED', + textAlign: TextAlign.center, + style: TextStyle( + fontSize: 36, + fontWeight: FontWeight.w900, + color: Colors.white, + letterSpacing: 2, + height: 1.2, + ), + ), + ), + const SizedBox(height: 16), + // ── Subtitle with animated dots ── + FadeTransition( + opacity: _textFadeController, + child: Text( + 'Sending help signal${'.' * _dotCount}', + style: TextStyle( + fontSize: 16, + fontWeight: FontWeight.w500, + color: Colors.white.withValues(alpha: 0.8), + letterSpacing: 0.5, + ), + ), + ), + const SizedBox(height: 8), + FadeTransition( + opacity: _textFadeController, + child: Text( + 'GPS location shared β€’ Contacts alerted', + style: TextStyle( + fontSize: 13, + color: Colors.white.withValues(alpha: 0.6), + ), + ), + ), + const Spacer(flex: 2), + // ── Info chips ── + Padding( + padding: const EdgeInsets.symmetric(horizontal: 32), + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceEvenly, + children: [ + _infoChip(Icons.location_on, 'Location\nSent'), + _infoChip(Icons.message, 'SMS\nSent'), + _infoChip(Icons.videocam, 'Recording\nActive'), + ], + ), + ), + const Spacer(), + // ── Cancel button ── + Padding( + padding: const EdgeInsets.symmetric(horizontal: 40), + child: SizedBox( + width: double.infinity, + child: OutlinedButton.icon( + onPressed: widget.onCancel, + icon: const Icon(Icons.close, size: 20), + label: const Text('Cancel Alert'), + style: OutlinedButton.styleFrom( + foregroundColor: Colors.white, + side: BorderSide( + color: Colors.white.withValues(alpha: 0.4), + width: 2), + padding: const EdgeInsets.symmetric(vertical: 18), + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(30), + ), + textStyle: const TextStyle( + fontSize: 16, + fontWeight: FontWeight.w700, + letterSpacing: 0.5, + ), + ), + ), + ), + ), + const SizedBox(height: 16), + Text( + 'Hold to cancel', + style: TextStyle( + fontSize: 12, + color: Colors.white.withValues(alpha: 0.4), + ), + ), + const SizedBox(height: 40), + ], + ), + ), + ); + }, + ), + ); + } + + Widget _infoChip(IconData icon, String label) { + return Container( + padding: const EdgeInsets.symmetric(horizontal: 16, vertical: 12), + decoration: BoxDecoration( + color: Colors.white.withValues(alpha: 0.1), + borderRadius: BorderRadius.circular(14), + border: + Border.all(color: Colors.white.withValues(alpha: 0.15)), + ), + child: Column( + children: [ + Icon(icon, color: Colors.white, size: 22), + const SizedBox(height: 6), + Text( + label, + textAlign: TextAlign.center, + style: TextStyle( + fontSize: 10, + fontWeight: FontWeight.w600, + color: Colors.white.withValues(alpha: 0.8), + height: 1.3, + ), + ), + ], + ), + ); + } +} diff --git a/Team-Shivam/SheShield/lib/screens/video_player_screen.dart b/Team-Shivam/SheShield/lib/screens/video_player_screen.dart new file mode 100644 index 0000000..99ca2a6 --- /dev/null +++ b/Team-Shivam/SheShield/lib/screens/video_player_screen.dart @@ -0,0 +1,221 @@ +import 'dart:io'; +import 'package:flutter/material.dart'; +import 'package:video_player/video_player.dart'; + +/// Simple full-screen video player for local SOS recordings. +class VideoPlayerScreen extends StatefulWidget { + final String filePath; + final String title; + + const VideoPlayerScreen({ + super.key, + required this.filePath, + this.title = 'SOS Recording', + }); + + @override + State createState() => _VideoPlayerScreenState(); +} + +class _VideoPlayerScreenState extends State { + late VideoPlayerController _controller; + bool _initialized = false; + String? _error; + + @override + void initState() { + super.initState(); + _initPlayer(); + } + + Future _initPlayer() async { + try { + final file = File(widget.filePath); + if (!await file.exists()) { + setState(() => _error = 'Recording file not found'); + return; + } + + _controller = VideoPlayerController.file(file); + await _controller.initialize(); + await _controller.play(); + if (mounted) setState(() => _initialized = true); + } catch (e) { + if (mounted) setState(() => _error = 'Could not play video: $e'); + } + } + + @override + void dispose() { + if (_initialized) _controller.dispose(); + super.dispose(); + } + + String _formatDuration(Duration d) { + final mins = d.inMinutes.remainder(60).toString().padLeft(2, '0'); + final secs = d.inSeconds.remainder(60).toString().padLeft(2, '0'); + return '$mins:$secs'; + } + + @override + Widget build(BuildContext context) { + + return Scaffold( + backgroundColor: Colors.black, + appBar: AppBar( + backgroundColor: Colors.black, + title: Text(widget.title, + style: const TextStyle(color: Colors.white, fontSize: 16)), + iconTheme: const IconThemeData(color: Colors.white), + ), + body: _error != null + ? Center( + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + const Icon(Icons.error_outline, color: Colors.red, size: 48), + const SizedBox(height: 12), + Text(_error!, + style: const TextStyle(color: Colors.white70, fontSize: 14)), + ], + ), + ) + : !_initialized + ? const Center( + child: CircularProgressIndicator(color: Color(0xFFE53935))) + : Column( + children: [ + Expanded( + child: Center( + child: AspectRatio( + aspectRatio: _controller.value.aspectRatio, + child: VideoPlayer(_controller), + ), + ), + ), + // Controls + Container( + padding: const EdgeInsets.symmetric( + horizontal: 20, vertical: 16), + color: Colors.black, + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + // Progress bar + ValueListenableBuilder( + valueListenable: _controller, + builder: (_, value, __) { + return Column( + children: [ + SliderTheme( + data: SliderThemeData( + thumbShape: const RoundSliderThumbShape( + enabledThumbRadius: 6), + overlayShape: + const RoundSliderOverlayShape( + overlayRadius: 14), + activeTrackColor: + const Color(0xFFE53935), + inactiveTrackColor: Colors.white24, + thumbColor: const Color(0xFFE53935), + ), + child: Slider( + value: value.position.inMilliseconds + .toDouble(), + max: value.duration.inMilliseconds + .toDouble() + .clamp(1, double.infinity), + onChanged: (v) { + _controller.seekTo(Duration( + milliseconds: v.toInt())); + }, + ), + ), + Padding( + padding: const EdgeInsets.symmetric( + horizontal: 16), + child: Row( + mainAxisAlignment: + MainAxisAlignment.spaceBetween, + children: [ + Text( + _formatDuration(value.position), + style: const TextStyle( + color: Colors.white60, + fontSize: 12), + ), + Text( + _formatDuration(value.duration), + style: const TextStyle( + color: Colors.white60, + fontSize: 12), + ), + ], + ), + ), + ], + ); + }, + ), + const SizedBox(height: 8), + // Play/Pause button + Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + IconButton( + onPressed: () { + _controller.seekTo( + _controller.value.position - + const Duration(seconds: 5)); + }, + icon: const Icon(Icons.replay_5, + color: Colors.white, size: 32), + ), + const SizedBox(width: 16), + ValueListenableBuilder( + valueListenable: _controller, + builder: (_, value, __) { + return GestureDetector( + onTap: () { + value.isPlaying + ? _controller.pause() + : _controller.play(); + }, + child: Container( + width: 56, + height: 56, + decoration: const BoxDecoration( + color: Color(0xFFE53935), + shape: BoxShape.circle, + ), + child: Icon( + value.isPlaying + ? Icons.pause + : Icons.play_arrow, + color: Colors.white, + size: 32, + ), + ), + ); + }, + ), + const SizedBox(width: 16), + IconButton( + onPressed: () { + _controller.seekTo( + _controller.value.position + + const Duration(seconds: 5)); + }, + icon: const Icon(Icons.forward_5, + color: Colors.white, size: 32), + ), + ], + ), + ], + ), + ), + ], + ), + ); + } +} diff --git a/Team-Shivam/SheShield/lib/services/alert_service.dart b/Team-Shivam/SheShield/lib/services/alert_service.dart new file mode 100644 index 0000000..c944f39 --- /dev/null +++ b/Team-Shivam/SheShield/lib/services/alert_service.dart @@ -0,0 +1,63 @@ +import 'package:cloud_firestore/cloud_firestore.dart'; +import 'storage_service.dart'; + +/// Service for broadcasting emergency alerts to Firestore and +/// preparing FCM notification data for emergency contacts. +class AlertService { + static final FirebaseFirestore _firestore = FirebaseFirestore.instance; + + /// Broadcast an emergency alert. + /// + /// 1. Generates a Google Maps link from [lat]/[lng]. + /// 2. Creates a Firestore document in the `alerts` collection. + /// 3. Reads local emergency contacts and stores their info alongside the + /// alert so a Cloud Function can deliver FCM push notifications. + /// + /// Returns the Firestore document ID of the created alert, or `null` on + /// failure. + static Future broadcastAlert({ + required double lat, + required double lng, + String? userId, + }) async { + try { + // 1. Generate Google Maps link. + final mapsLink = 'https://maps.google.com/?q=$lat,$lng'; + + // 2. Load emergency contacts from local storage. + final contacts = await StorageService.loadContacts(); + final contactList = contacts + .map((c) => {'name': c.name, 'phone': c.phone}) + .toList(); + + // 3. Create the alert document. + final docRef = await _firestore.collection('alerts').add({ + 'userId': userId ?? 'anonymous', + 'latitude': lat, + 'longitude': lng, + 'mapsLink': mapsLink, + 'status': 'active', + 'contacts': contactList, + 'notificationTitle': '🚨 Emergency Alert', + 'notificationBody': + 'A user needs help.\nLive location: $mapsLink', + 'timestamp': FieldValue.serverTimestamp(), + }); + + return docRef.id; + } catch (_) { + return null; + } + } + + /// Mark an alert as resolved / cancelled. + static Future cancelAlert(String alertId) async { + try { + await _firestore.collection('alerts').doc(alertId).update({ + 'status': 'cancelled', + }); + } catch (_) { + // Silently fail. + } + } +} diff --git a/Team-Shivam/SheShield/lib/services/bluetooth_service.dart b/Team-Shivam/SheShield/lib/services/bluetooth_service.dart new file mode 100644 index 0000000..ac4fda5 --- /dev/null +++ b/Team-Shivam/SheShield/lib/services/bluetooth_service.dart @@ -0,0 +1,285 @@ +import 'dart:async'; +import 'dart:convert'; +import 'package:flutter/foundation.dart'; +import 'package:flutter/material.dart'; +import 'package:flutter_bluetooth_serial_ble/flutter_bluetooth_serial_ble.dart'; +import 'package:shared_preferences/shared_preferences.dart'; + +/// Connection states exposed to the UI. +enum BtConnectionState { disconnected, connecting, connected } + +/// Commands recognized from ESP32 serial data. +enum BraceletCommand { sos, shake, voice, camera } + +typedef BraceletCommandCallback = void Function(BraceletCommand command); + +/// **Global singleton** Bluetooth Classic service. +/// +/// Features: +/// - Persistent connection across all screen navigations +/// - Auto-reconnect on connection drop (3 retries, 5 s interval) +/// - Saves last-connected device for auto-connect on app launch +/// - Exposes reactive [connectionNotifier] for UI binding +/// - Parses "BUTTON SOS", "MOTION SOS", "SHAKE" from serial stream +class BluetoothService extends ChangeNotifier { + // ── Singleton ────────────────────────────────────────────── + BluetoothService._(); + static final BluetoothService instance = BluetoothService._(); + + // ── Navigator key for global SOS push ────────────────────── + static final GlobalKey navigatorKey = + GlobalKey(); + + // ── Internal state ───────────────────────────────────────── + BluetoothConnection? _connection; + StreamSubscription? _inputSub; + String _buffer = ''; + + BtConnectionState _state = BtConnectionState.disconnected; + String _deviceName = ''; + String _deviceAddress = ''; + + Timer? _reconnectTimer; + int _reconnectAttempts = 0; + static const int _maxReconnectAttempts = 5; + static const Duration _reconnectInterval = Duration(seconds: 5); + + bool _userDisconnected = false; // true when user explicitly disconnects + + // ── Public getters ───────────────────────────────────────── + BtConnectionState get state => _state; + bool get isConnected => _state == BtConnectionState.connected; + bool get isConnecting => _state == BtConnectionState.connecting; + String get deviceName => _deviceName; + String get deviceAddress => _deviceAddress; + + /// Global callback β€” fires from ANY screen when a command is received. + BraceletCommandCallback? onCommand; + + // ── Persistence keys ─────────────────────────────────────── + static const _kDeviceName = 'bt_last_device_name'; + static const _kDeviceAddress = 'bt_last_device_address'; + + // ══════════════════════════════════════════════════════════ + // AUTO-CONNECT ON APP LAUNCH + // ══════════════════════════════════════════════════════════ + + /// Call once from main(). Tries to reconnect to the last saved device. + Future tryAutoConnect() async { + final prefs = await SharedPreferences.getInstance(); + final address = prefs.getString(_kDeviceAddress); + final name = prefs.getString(_kDeviceName); + if (address == null || address.isEmpty) return; + + _deviceName = name ?? address; + _deviceAddress = address; + + debugPrint('BluetoothService: Auto-connecting to $_deviceName…'); + await _connectToAddress(address); + } + + // ══════════════════════════════════════════════════════════ + // CONNECT / DISCONNECT + // ══════════════════════════════════════════════════════════ + + /// Connect to a device via RFCOMM and start listening. + Future connect(BluetoothDevice device) async { + // Already connected to this device + if (isConnected && _deviceAddress == device.address) return true; + + // Disconnect previous if any + if (isConnected) disconnect(); + + _userDisconnected = false; + _deviceName = device.name ?? device.address; + _deviceAddress = device.address; + + // Persist for auto-connect + final prefs = await SharedPreferences.getInstance(); + await prefs.setString(_kDeviceName, _deviceName); + await prefs.setString(_kDeviceAddress, _deviceAddress); + + return _connectToAddress(device.address); + } + + Future _connectToAddress(String address) async { + _setState(BtConnectionState.connecting); + + try { + debugPrint('BluetoothService: Connecting to $address…'); + _connection = await BluetoothConnection.toAddress(address) + .timeout(const Duration(seconds: 10)); + debugPrint('BluetoothService: βœ… Connected to $_deviceName'); + + _inputSub?.cancel(); + _inputSub = _connection!.input?.listen( + _handleData, + onDone: () { + debugPrint('BluetoothService: Connection closed by remote'); + _onUnexpectedDisconnect(); + }, + onError: (e) { + debugPrint('BluetoothService: Stream error β€” $e'); + _onUnexpectedDisconnect(); + }, + ); + + _reconnectAttempts = 0; + _reconnectTimer?.cancel(); + _setState(BtConnectionState.connected); + return true; + } catch (e) { + debugPrint('BluetoothService: Connection failed β€” $e'); + _setState(BtConnectionState.disconnected); + return false; + } + } + + /// Explicitly disconnect (user action). + void disconnect() { + _userDisconnected = true; + _reconnectTimer?.cancel(); + _reconnectAttempts = 0; + _cleanupConnection(); + _setState(BtConnectionState.disconnected); + debugPrint('BluetoothService: User disconnected'); + } + + void _cleanupConnection() { + _inputSub?.cancel(); + _inputSub = null; + try { + _connection?.finish(); + } catch (_) {} + _connection = null; + _buffer = ''; + } + + // ══════════════════════════════════════════════════════════ + // AUTO-RECONNECT + // ══════════════════════════════════════════════════════════ + + void _onUnexpectedDisconnect() { + _cleanupConnection(); + _setState(BtConnectionState.disconnected); + + if (_userDisconnected || _deviceAddress.isEmpty) return; + + debugPrint('BluetoothService: Starting auto-reconnect…'); + _startReconnect(); + } + + void _startReconnect() { + _reconnectTimer?.cancel(); + _reconnectAttempts = 0; + _reconnectTimer = Timer.periodic(_reconnectInterval, (timer) async { + if (_reconnectAttempts >= _maxReconnectAttempts) { + debugPrint('BluetoothService: Max reconnect attempts reached'); + timer.cancel(); + return; + } + if (isConnected) { + timer.cancel(); + return; + } + + _reconnectAttempts++; + debugPrint( + 'BluetoothService: Reconnect attempt $_reconnectAttempts/$_maxReconnectAttempts'); + final ok = await _connectToAddress(_deviceAddress); + if (ok) timer.cancel(); + }); + } + + /// Manual reconnect trigger (e.g. from a "Reconnect" button). + Future manualReconnect() async { + if (_deviceAddress.isEmpty) return false; + _userDisconnected = false; + _reconnectAttempts = 0; + return _connectToAddress(_deviceAddress); + } + + // ══════════════════════════════════════════════════════════ + // DATA PARSING + // ══════════════════════════════════════════════════════════ + + void _handleData(Uint8List data) { + _buffer += utf8.decode(data, allowMalformed: true); + + while (_buffer.contains('\n')) { + final idx = _buffer.indexOf('\n'); + final line = _buffer.substring(0, idx).trim(); + _buffer = _buffer.substring(idx + 1); + if (line.isEmpty) continue; + + debugPrint('BluetoothService: β—€ "$line"'); + + BraceletCommand? cmd; + final upper = line.toUpperCase(); + if (upper.contains('BUTTON SOS') || upper.contains('MOTION SOS') || upper == 'SOS') { + cmd = BraceletCommand.sos; + } else if (upper.contains('SHAKE')) { + cmd = BraceletCommand.shake; + } else if (upper.contains('VOICE')) { + cmd = BraceletCommand.voice; + } else if (upper.contains('CAM')) { + cmd = BraceletCommand.camera; + } + + if (cmd != null) { + debugPrint('BluetoothService: 🚨 Command β†’ $cmd'); + onCommand?.call(cmd); + } + } + } + + // ══════════════════════════════════════════════════════════ + // SEND COMMANDS TO ESP32 + // ══════════════════════════════════════════════════════════ + + Future send(String command) async { + if (_connection == null || !isConnected) return; + try { + _connection!.output.add(Uint8List.fromList(utf8.encode('$command\n'))); + await _connection!.output.allSent; + debugPrint('BluetoothService: Sent "$command"'); + } catch (e) { + debugPrint('BluetoothService: Write failed β€” $e'); + } + } + + Future activateBuzzer() => send('BUZZER_ON'); + Future stopBuzzer() => send('BUZZER_OFF'); + Future ledOn() => send('LED_ON'); + Future ledOff() => send('LED_OFF'); + + // ══════════════════════════════════════════════════════════ + // SIMULATE (for demos without hardware) + // ══════════════════════════════════════════════════════════ + + void simulateCommand(BraceletCommand command) { + debugPrint('BluetoothService: Simulated $command'); + onCommand?.call(command); + } + + // ══════════════════════════════════════════════════════════ + // HELPERS + // ══════════════════════════════════════════════════════════ + + void _setState(BtConnectionState s) { + if (_state == s) return; + _state = s; + notifyListeners(); + } + + /// Clear saved device (e.g. user wants to forget the device). + Future forgetDevice() async { + disconnect(); + _deviceName = ''; + _deviceAddress = ''; + final prefs = await SharedPreferences.getInstance(); + await prefs.remove(_kDeviceName); + await prefs.remove(_kDeviceAddress); + notifyListeners(); + } +} diff --git a/Team-Shivam/SheShield/lib/services/bracelet_service.dart b/Team-Shivam/SheShield/lib/services/bracelet_service.dart new file mode 100644 index 0000000..ab45c8d --- /dev/null +++ b/Team-Shivam/SheShield/lib/services/bracelet_service.dart @@ -0,0 +1,147 @@ +import 'dart:async'; +import 'dart:convert'; +import 'package:flutter/foundation.dart'; +import 'package:flutter_bluetooth_serial_ble/flutter_bluetooth_serial_ble.dart'; + +/// Commands from the ESP32 bracelet. +enum BraceletCommand { sos, shake, voice, camera } + +typedef BraceletCommandCallback = void Function(BraceletCommand command); + +/// **Global singleton** Bluetooth Classic service. +/// +/// Connection persists across all screens. Only disconnects +/// when the user explicitly taps "Disconnect". +/// +/// ESP32 sends: "SOS\n", "SHAKE\n", "BUTTON SOS\n", "MOTION SOS\n" +/// App sends: "BUZZER_ON\n", "LED_ON\n", etc. +class BraceletService extends ChangeNotifier { + // ── Singleton ── + BraceletService._(); + static final BraceletService instance = BraceletService._(); + + BluetoothConnection? _connection; + StreamSubscription? _inputSub; + String _buffer = ''; + + // ── Public state ── + bool _isConnected = false; + String _deviceName = ''; + String _deviceAddress = ''; + + bool get isConnected => _isConnected; + String get deviceName => _deviceName; + String get deviceAddress => _deviceAddress; + + /// Global callback β€” fires from ANY screen when SOS received. + BraceletCommandCallback? onCommand; + + /// Connect to a device via RFCOMM and start listening. + Future connect(BluetoothDevice device) async { + // Already connected to this device + if (_isConnected && _deviceAddress == device.address) return true; + + // Disconnect previous if any + if (_isConnected) disconnect(); + + _deviceName = device.name ?? device.address; + _deviceAddress = device.address; + + try { + debugPrint('BraceletService: Connecting to $_deviceName…'); + _connection = await BluetoothConnection.toAddress(device.address); + debugPrint('BraceletService: βœ… Connected to $_deviceName'); + + _inputSub?.cancel(); + _inputSub = _connection!.input?.listen( + _handleData, + onDone: () { + debugPrint('BraceletService: Connection closed by remote'); + _setDisconnected(); + }, + onError: (e) { + debugPrint('BraceletService: Stream error β€” $e'); + _setDisconnected(); + }, + ); + + _isConnected = true; + notifyListeners(); + return true; + } catch (e) { + debugPrint('BraceletService: Connection failed β€” $e'); + _setDisconnected(); + return false; + } + } + + /// Explicitly disconnect (user tapped "Disconnect"). + void disconnect() { + debugPrint('BraceletService: Disconnecting…'); + _inputSub?.cancel(); + _inputSub = null; + try { _connection?.finish(); } catch (_) {} + _connection = null; + _setDisconnected(); + } + + void _setDisconnected() { + _isConnected = false; + _buffer = ''; + notifyListeners(); + } + + /// Send a string command to ESP32. + Future send(String command) async { + if (_connection == null || !_isConnected) return; + try { + _connection!.output.add(Uint8List.fromList(utf8.encode('$command\n'))); + await _connection!.output.allSent; + debugPrint('BraceletService: Sent "$command"'); + } catch (e) { + debugPrint('BraceletService: Write failed β€” $e'); + } + } + + Future activateBuzzer() => send('BUZZER_ON'); + Future stopBuzzer() => send('BUZZER_OFF'); + Future ledOn() => send('LED_ON'); + Future ledOff() => send('LED_OFF'); + + /// Parse incoming serial data line-by-line. + void _handleData(Uint8List data) { + _buffer += utf8.decode(data, allowMalformed: true); + + while (_buffer.contains('\n')) { + final idx = _buffer.indexOf('\n'); + final line = _buffer.substring(0, idx).trim(); + _buffer = _buffer.substring(idx + 1); + if (line.isEmpty) continue; + + debugPrint('BraceletService: β—€ "$line"'); + + BraceletCommand? cmd; + final upper = line.toUpperCase(); + if (upper.contains('SOS')) { + cmd = BraceletCommand.sos; + } else if (upper.contains('SHAKE')) { + cmd = BraceletCommand.shake; + } else if (upper.contains('VOICE')) { + cmd = BraceletCommand.voice; + } else if (upper.contains('CAM')) { + cmd = BraceletCommand.camera; + } + + if (cmd != null) { + debugPrint('BraceletService: 🚨 Command β†’ $cmd'); + onCommand?.call(cmd); + } + } + } + + /// For demo: fire a command without a real device. + void simulateCommand(BraceletCommand command) { + debugPrint('BraceletService: Simulated $command'); + onCommand?.call(command); + } +} diff --git a/Team-Shivam/SheShield/lib/services/location_service.dart b/Team-Shivam/SheShield/lib/services/location_service.dart new file mode 100644 index 0000000..6af23ed --- /dev/null +++ b/Team-Shivam/SheShield/lib/services/location_service.dart @@ -0,0 +1,144 @@ +import 'dart:async'; +import 'package:geolocator/geolocator.dart'; +import 'package:cloud_firestore/cloud_firestore.dart'; + +/// Service wrapping the Geolocator package for GPS location access +/// and Firebase Firestore for uploading location updates. +/// +/// Provides SOS-triggered live tracking that writes the user's GPS +/// coordinates to the `live_locations` Firestore collection every +/// 5 seconds. +class LocationService { + static Timer? _sosTimer; + static bool _tracking = false; + + /// Whether the SOS live-tracking loop is currently running. + static bool get isTracking => _tracking; + + // --------------------------------------------------------------------------- + // Permission & single-shot location + // --------------------------------------------------------------------------- + + /// Check and request location permissions, then get current position. + static Future getCurrentLocation() async { + await _ensurePermissions(); + + return await Geolocator.getCurrentPosition( + desiredAccuracy: LocationAccuracy.high, + ); + } + + // --------------------------------------------------------------------------- + // Continuous stream (used by LocationScreen / Google-Maps view) + // --------------------------------------------------------------------------- + + /// Stream of position updates (every ~5 meters of movement). + static Stream getLocationStream() { + return Geolocator.getPositionStream( + locationSettings: const LocationSettings( + accuracy: LocationAccuracy.high, + distanceFilter: 5, + ), +); + } + + // --------------------------------------------------------------------------- + // SOS live-tracking (Timer-based, every 5 seconds) + // --------------------------------------------------------------------------- + + /// Start SOS live-location tracking. + /// + /// 1. Ensures location permissions are granted. + /// 2. Fetches the current position immediately and writes it to Firestore. + /// 3. Starts a periodic timer that fetches and writes the position every + /// 5 seconds until [stopSOS] is called. + static Future startSOS(String userId) async { + if (_tracking) return; // already running + + await _ensurePermissions(); + + // Write the first location immediately. + await _fetchAndWrite(userId); + + // Schedule subsequent writes every 5 seconds. + _tracking = true; + _sosTimer = Timer.periodic(const Duration(seconds: 5), (_) { + _fetchAndWrite(userId); + }); + } + + /// Stop SOS live-location tracking. + static void stopSOS() { + _sosTimer?.cancel(); + _sosTimer = null; + _tracking = false; + } + + // --------------------------------------------------------------------------- + // Firestore helpers + // --------------------------------------------------------------------------- + + /// Fetch the current position and write it to the `live_locations` collection. + static Future _fetchAndWrite(String userId) async { + try { + final pos = await Geolocator.getCurrentPosition( + desiredAccuracy: LocationAccuracy.high, + ); + await _writeToFirestore(userId, pos.latitude, pos.longitude); + } catch (_) { + // Silently ignore individual fetch/write failures so the timer + // keeps running and retries on the next tick. + } + } + + /// Write a single location document to Firestore. + static Future _writeToFirestore( + String userId, + double lat, + double lng, + ) async { + await FirebaseFirestore.instance.collection('live_locations').add({ + 'userId': userId, + 'latitude': lat, + 'longitude': lng, + 'timestamp': FieldValue.serverTimestamp(), + }); + } + + /// Send the current latitude and longitude to Firestore (`live_locations`). + static Future sendLocationToFirestore( + double lat, + double lng, { + String userId = 'user_placeholder', + }) async { + await _writeToFirestore(userId, lat, lng); + } + + // --------------------------------------------------------------------------- + // Permission helper + // --------------------------------------------------------------------------- + + /// Ensures location services are enabled and permissions are granted. + /// Throws an [Exception] if the user denies permission or services are off. + static Future _ensurePermissions() async { + bool serviceEnabled = await Geolocator.isLocationServiceEnabled(); + if (!serviceEnabled) { + throw Exception('Location services are disabled. Please enable them.'); + } + + LocationPermission permission = await Geolocator.checkPermission(); + if (permission == LocationPermission.denied) { + permission = await Geolocator.requestPermission(); + if (permission == LocationPermission.denied) { + throw Exception('Location permission denied.'); + } + } + + if (permission == LocationPermission.deniedForever) { + throw Exception( + 'Location permissions are permanently denied. ' + 'Please enable them in settings.', + ); + } + } +} diff --git a/Team-Shivam/SheShield/lib/services/notification_service.dart b/Team-Shivam/SheShield/lib/services/notification_service.dart new file mode 100644 index 0000000..90279c0 --- /dev/null +++ b/Team-Shivam/SheShield/lib/services/notification_service.dart @@ -0,0 +1,59 @@ +import 'package:firebase_messaging/firebase_messaging.dart'; +import 'package:cloud_firestore/cloud_firestore.dart'; + +/// Service for handling push notifications and Firestore alert storage. +class NotificationService { + static final FirebaseMessaging _messaging = FirebaseMessaging.instance; + static final FirebaseFirestore _firestore = FirebaseFirestore.instance; + + /// Cached FCM device token. + static String? _fcmToken; + + /// Initialize FCM: request notification permissions and retrieve the + /// device token. Call this once at app startup after [Firebase.initializeApp]. + static Future initialize() async { + // Request notification permissions (shows the system dialog on first launch). + final settings = await _messaging.requestPermission( + alert: true, + badge: true, + sound: true, + provisional: false, + ); + + if (settings.authorizationStatus == AuthorizationStatus.authorized || + settings.authorizationStatus == AuthorizationStatus.provisional) { + // Retrieve the FCM token for this device. + _fcmToken = await _messaging.getToken(); + } + + // Listen for foreground messages so they can be handled in-app. + FirebaseMessaging.onMessage.listen(_handleForegroundMessage); + } + + /// Handle push notifications received while the app is in the foreground. + static void _handleForegroundMessage(RemoteMessage message) { + // Foreground messages are silently received; the SOS dialog already + // provides visual feedback, so no additional UI action is needed here. + } + + /// Send an SOS alert: saves the alert to the Firestore "alerts" collection + /// and returns the document ID. + /// + /// [lat] and [lng] are the user's current GPS coordinates. + static Future sendSOSAlert({double? lat, double? lng}) async { + try { + final docRef = await _firestore.collection('alerts').add({ + 'title': 'SOS Alert', + 'body': 'User has triggered an emergency alert.', + 'latitude': lat, + 'longitude': lng, + 'fcmToken': _fcmToken, + 'timestamp': FieldValue.serverTimestamp(), + }); + return docRef.id; + } catch (e) { + // Silently fail – the SOS UI feedback is already visible to the user. + return null; + } + } +} diff --git a/Team-Shivam/SheShield/lib/services/places_service.dart b/Team-Shivam/SheShield/lib/services/places_service.dart new file mode 100644 index 0000000..d443421 --- /dev/null +++ b/Team-Shivam/SheShield/lib/services/places_service.dart @@ -0,0 +1,215 @@ +import 'dart:async'; +import 'dart:convert'; +import 'package:http/http.dart' as http; +import 'package:geolocator/geolocator.dart'; + +/// Model representing a nearby police station. +class PoliceStation { + final String name; + final String vicinity; + final double lat; + final double lng; + final String placeId; + final double distanceMeters; + + PoliceStation({ + required this.name, + required this.vicinity, + required this.lat, + required this.lng, + required this.placeId, + required this.distanceMeters, + }); + + /// Human-readable distance string. + String get distanceText { + if (distanceMeters >= 1000) { + return '${(distanceMeters / 1000).toStringAsFixed(1)} km'; + } + return '${distanceMeters.toInt()} m'; + } +} + +/// Service for fetching nearby police stations. +/// Races multiple APIs in parallel and returns the first successful response. +class PlacesService { + /// Fetch police stations near the given coordinates. + /// Fires ALL APIs simultaneously, merges results, deduplicates, + /// and returns them sorted by distance (nearest first). + static Future> fetchNearbyPoliceStations( + double lat, + double lng, { + int radiusMeters = 100000, + }) async { + // Fire all sources in parallel and collect all results. + final futures = await Future.wait>([ + _fetchFromOverpass( + 'https://overpass-api.de/api/interpreter', lat, lng, radiusMeters, + ).catchError((_) => []), + _fetchFromOverpass( + 'https://overpass.kumi.systems/api/interpreter', lat, lng, radiusMeters, + ).catchError((_) => []), + _fetchFromNominatim(lat, lng) + .catchError((_) => []), + ]).timeout( + const Duration(seconds: 12), + onTimeout: () => [[], [], []], + ); + + // Merge all results into one list. + final allStations = []; + for (final list in futures) { + allStations.addAll(list); + } + + // Deduplicate stations that are within 100m of each other. + final unique = []; + for (final station in allStations) { + final isDuplicate = unique.any((existing) { + final dist = Geolocator.distanceBetween( + existing.lat, existing.lng, station.lat, station.lng, + ); + return dist < 100; // within 100m = same station + }); + if (!isDuplicate) { + unique.add(station); + } + } + + // Sort by distance ascending (nearest first). + unique.sort((a, b) => a.distanceMeters.compareTo(b.distanceMeters)); + + return unique; + } + + // ------------------------------------------------------------------------- + // Overpass API + // ------------------------------------------------------------------------- + static Future> _fetchFromOverpass( + String endpoint, + double lat, + double lng, + int radiusMeters, + ) async { + final query = '[out:json][timeout:8];' + 'node["amenity"="police"](around:$radiusMeters,$lat,$lng);' + 'out body;'; + + final uri = Uri.parse(endpoint); + final response = await http + .post(uri, body: {'data': query}) + .timeout(const Duration(seconds: 8)); + + if (response.statusCode != 200) { + throw Exception('Overpass returned ${response.statusCode}'); + } + + final data = jsonDecode(response.body) as Map; + final elements = data['elements'] as List? ?? []; + + final stations = []; + for (final el in elements) { + final stationLat = (el['lat'] as num?)?.toDouble(); + final stationLng = (el['lon'] as num?)?.toDouble(); + if (stationLat == null || stationLng == null) continue; + + final tags = el['tags'] as Map? ?? {}; + final name = tags['name'] as String? ?? 'Police Station'; + final address = tags['addr:full'] as String? ?? + tags['addr:street'] as String? ?? + ''; + + final distance = Geolocator.distanceBetween( + lat, lng, stationLat, stationLng, + ); + + stations.add(PoliceStation( + name: name, + vicinity: address, + lat: stationLat, + lng: stationLng, + placeId: el['id'].toString(), + distanceMeters: distance, + )); + } + + stations.sort((a, b) => a.distanceMeters.compareTo(b.distanceMeters)); + return stations; + } + + // ------------------------------------------------------------------------- + // Nominatim fallback + // ------------------------------------------------------------------------- + static Future> _fetchFromNominatim( + double lat, + double lng, + ) async { + final uri = Uri.parse( + 'https://nominatim.openstreetmap.org/search' + '?q=police+station' + '&format=json' + '&limit=30' + '&viewbox=${lng - 0.1},${lat + 0.1},${lng + 0.1},${lat - 0.1}' + '&bounded=1' + '&addressdetails=1', + ); + + final response = await http.get( + uri, + headers: {'User-Agent': 'SheShield-App/1.0'}, + ).timeout(const Duration(seconds: 8)); + + if (response.statusCode != 200) { + throw Exception('Nominatim returned ${response.statusCode}'); + } + + final results = jsonDecode(response.body) as List; + final stations = []; + + for (final r in results) { + final stationLat = double.tryParse(r['lat']?.toString() ?? ''); + final stationLng = double.tryParse(r['lon']?.toString() ?? ''); + if (stationLat == null || stationLng == null) continue; + + final name = + r['display_name']?.toString().split(',').first ?? 'Police Station'; + final address = r['display_name']?.toString() ?? ''; + + final distance = Geolocator.distanceBetween( + lat, lng, stationLat, stationLng, + ); + + stations.add(PoliceStation( + name: name, + vicinity: + address.length > 60 ? '${address.substring(0, 57)}...' : address, + lat: stationLat, + lng: stationLng, + placeId: r['place_id']?.toString() ?? '', + distanceMeters: distance, + )); + } + + stations.sort((a, b) => a.distanceMeters.compareTo(b.distanceMeters)); + return stations; + } + + // ------------------------------------------------------------------------- + // Navigation URL helpers + // ------------------------------------------------------------------------- + + /// Generate a Google Maps navigation deep-link for a destination. + static String getNavigationUrl(double destLat, double destLng) { + return 'google.navigation:q=$destLat,$destLng&mode=d'; + } + + /// Generate a Google Maps directions web URL. + static String getDirectionsUrl(double destLat, double destLng) { + return 'https://www.google.com/maps/dir/?api=1&destination=$destLat,$destLng&travelmode=driving'; + } + + /// Generate a Google Maps web URL (fallback for devices without Google Maps). + static String getMapsUrl(double destLat, double destLng) { + return 'https://www.google.com/maps/dir/?api=1&destination=$destLat,$destLng&travelmode=driving'; + } +} diff --git a/Team-Shivam/SheShield/lib/services/risk_assessment_service.dart b/Team-Shivam/SheShield/lib/services/risk_assessment_service.dart new file mode 100644 index 0000000..a022016 --- /dev/null +++ b/Team-Shivam/SheShield/lib/services/risk_assessment_service.dart @@ -0,0 +1,406 @@ +import 'dart:math'; +import 'dart:convert'; +import 'package:flutter/foundation.dart'; +import 'package:connectivity_plus/connectivity_plus.dart'; +import 'package:http/http.dart' as http; + +// ═══════════════════════════════════════════════════════════════════ +// Risk Assessment Service – OFFLINE-FIRST + ONLINE-ENHANCED +// +// Offline mode (default): +// β€’ Time-based check only (night = risky) +// β€’ Uses hardcoded safe-zone list for nearest safe zone display +// +// Online mode (when internet is available): +// β€’ Fetches nearby places via Overpass API +// β€’ If <= 2 places found nearby β†’ isolated area +// β€’ Falls back to offline mode on API failure +// ═══════════════════════════════════════════════════════════════════ + +/// Risk severity levels β€” ordered from safest to most dangerous. +enum RiskLevel { safe, moderate, high, critical } + +/// Whether online-enhanced detection was used. +enum DetectionMode { offline, online } + +/// Info about the closest safe zone to the user. +class SafeZoneInfo { + final String name; + final String type; + final double distanceKm; + final double lat; + final double lng; + + const SafeZoneInfo({ + required this.name, + required this.type, + required this.distanceKm, + required this.lat, + required this.lng, + }); + + String get displayText => '$name (${distanceKm.toStringAsFixed(1)} km)'; +} + +/// Holds the result of a risk assessment. +class RiskResult { + final RiskLevel level; + final String message; + final String subtitle; + final List reasons; + final SafeZoneInfo? nearestSafeZone; + final DetectionMode mode; + final int? nearbyPlacesCount; + final int riskScore; // 0=safe, 1=moderate, 2=high, 3=critical + + const RiskResult({ + required this.level, + required this.message, + required this.subtitle, + required this.reasons, + this.nearestSafeZone, + required this.mode, + this.nearbyPlacesCount, + required this.riskScore, + }); +} + +/// Pure-logic service β€” offline-first with online enhancement. +class RiskAssessmentService { + // ──────────────────────────────────────────────────────────────── + // Demo toggle β€” can still be flipped from the UI switch. + // ──────────────────────────────────────────────────────────────── + static bool isIsolatedArea = false; + + // ──────────────────────────────────────────────────────────────── + // Named safe zones (offline fallback for nearest safe zone) + // ──────────────────────────────────────────────────────────────── + static const List<_SafePlace> _safePlaces = [ + _SafePlace('Parliament St Police Station', 'Police Station', 28.6218, 77.2120), + _SafePlace('AIIMS Hospital', 'Hospital', 28.5672, 77.2100), + _SafePlace('Connaught Place', 'Public Area', 28.6315, 77.2167), + _SafePlace('Safdarjung Hospital', 'Hospital', 28.5685, 77.2066), + _SafePlace('Noida Sec 18 Market', 'Public Area', 28.5706, 77.3218), + _SafePlace('CST Railway Station', 'Public Area', 19.0826, 72.8853), + _SafePlace('JJ Hospital Mumbai', 'Hospital', 18.9634, 72.8330), + _SafePlace('Colaba Police Station', 'Police Station', 18.9220, 72.8347), + _SafePlace('MG Road Metro', 'Public Area', 12.9758, 77.6065), + _SafePlace('Victoria Hospital', 'Hospital', 12.9563, 77.5737), + _SafePlace('Cubbon Park Police', 'Police Station', 12.9763, 77.5929), + _SafePlace('Chennai Central', 'Public Area', 13.0836, 80.2750), + _SafePlace('Rajiv Gandhi Hospital', 'Hospital', 13.0700, 80.2800), + _SafePlace('Park Street', 'Public Area', 22.5534, 88.3535), + _SafePlace('SSKM Hospital Kolkata', 'Hospital', 22.5383, 88.3436), + _SafePlace('HITEC City', 'Public Area', 17.4435, 78.3772), + _SafePlace('Nizam\'s Hospital', 'Hospital', 17.3887, 78.4741), + _SafePlace('Hawa Mahal Area', 'Public Area', 26.9239, 75.8267), + _SafePlace('SMS Hospital Jaipur', 'Hospital', 26.9038, 75.8013), + _SafePlace('SG Highway', 'Public Area', 23.0300, 72.5300), + _SafePlace('Civil Hospital Ahmedabad', 'Hospital', 23.0500, 72.6000), + _SafePlace('Cyber Hub Gurgaon', 'Public Area', 28.4949, 77.0887), + _SafePlace('Medanta Hospital', 'Hospital', 28.4395, 77.0425), + ]; + + /// Minimum places needed to consider an area "populated". + static const int _minPlacesForSafe = 5; + + // ──────────────────────────────────────────────────────────────── + // Public helpers + // ──────────────────────────────────────────────────────────────── + + static bool isNightTime() => + DateTime.now().hour >= 21 || DateTime.now().hour < 5; + + /// Check if the device has internet connectivity. + static Future _hasInternet() async { + try { + final result = await Connectivity().checkConnectivity(); + return !result.contains(ConnectivityResult.none); + } catch (_) { + return false; + } + } + + // ──────────────────────────────────────────────────────────────── + // Main entry-point (async β€” checks internet first) + // ──────────────────────────────────────────────────────────────── + + /// Assess risk with online enhancement when internet is available. + /// Falls back to offline-only when no internet or API fails. + static Future assessRiskAsync(double lat, double lng) async { + final online = await _hasInternet(); + + if (online) { + try { + return await _assessOnline(lat, lng); + } catch (e) { + debugPrint('RiskAssessment: Online check failed, falling back β€” $e'); + return _assessOffline(lat, lng); + } + } else { + return _assessOffline(lat, lng); + } + } + + /// Synchronous offline-only assessment (instant, no network). + static RiskResult assessRisk(double lat, double lng) { + return _assessOffline(lat, lng); + } + + // ──────────────────────────────────────────────────────────────── + // Online assessment (Overpass API) + // ──────────────────────────────────────────────────────────────── + + static Future _assessOnline(double lat, double lng) async { + final reasons = []; + final hour = DateTime.now().hour; + final nightTime = isNightTime(); + + if (nightTime) { + reasons.add('It\'s late night (${_formatHour(hour)})'); + } + + // Fetch nearby places (amenities) within 1000m radius via Overpass + final placesCount = await _fetchNearbyPlacesCount(lat, lng); + final isolated = isIsolatedArea || placesCount < _minPlacesForSafe; + + // Debug logs + debugPrint('πŸ” [ONLINE] Places count: $placesCount'); + debugPrint('πŸ” [ONLINE] isIsolatedArea (demo toggle): $isIsolatedArea'); + debugPrint('πŸ” [ONLINE] isolated (final): $isolated'); + + if (isolated) { + reasons.add('Only $placesCount places found nearby'); + } + + // Calculate risk score + int riskScore = 0; + if (nightTime) riskScore += 1; + if (isolated) riskScore += 2; + + debugPrint('πŸ” [ONLINE] riskScore: $riskScore (night=$nightTime, isolated=$isolated)'); + + // Find nearest safe zone from our hardcoded list + final nearest = _findNearestSafePlace(lat, lng); + + return _buildResult( + riskScore: riskScore, + reasons: reasons, + nearest: nearest, + mode: DetectionMode.online, + placesCount: placesCount, + ); + } + + /// Query Overpass API for nearby amenities within 1000m. + /// Returns the count of results found. + static Future _fetchNearbyPlacesCount(double lat, double lng) async { + // Search for ANY amenity, shop, or leisure node within 1000m + // No type filter β€” broad query returns more results in crowded areas + final query = '[out:json][timeout:8];' + '(' + 'node["amenity"](around:1000,$lat,$lng);' + 'node["shop"](around:1000,$lat,$lng);' + 'node["leisure"](around:1000,$lat,$lng);' + ')' + ';out count;'; + + try { + final response = await http + .post( + Uri.parse('https://overpass-api.de/api/interpreter'), + body: {'data': query}, + ) + .timeout(const Duration(seconds: 8)); + + if (response.statusCode == 200) { + final data = jsonDecode(response.body) as Map; + final elements = data['elements'] as List? ?? []; + // "out count" returns a single element with a "tags" map containing "total" + if (elements.isNotEmpty && elements[0]['tags'] != null) { + final total = int.tryParse( + elements[0]['tags']['total']?.toString() ?? '0'); + debugPrint('πŸ” Overpass API returned: $total places within 1000m'); + return total ?? 0; + } + debugPrint('πŸ” Overpass API returned: ${elements.length} elements'); + return elements.length; + } + debugPrint('πŸ” Overpass API status: ${response.statusCode}'); + } catch (e) { + debugPrint('πŸ” Overpass query failed β€” $e'); + } + // FAIL-SAFE: On failure, assume safe (return high count to avoid false alerts) + debugPrint('πŸ” API failed β†’ assuming safe (returning 99)'); + return 99; + } + + // ──────────────────────────────────────────────────────────────── + // Offline assessment (local data only, instant) + // ──────────────────────────────────────────────────────────────── + + static RiskResult _assessOffline(double lat, double lng) { + final reasons = []; + final hour = DateTime.now().hour; + final nightTime = isNightTime(); + + if (nightTime) { + reasons.add('It\'s late night (${_formatHour(hour)})'); + } + + // In offline mode, use demo toggle or GPS distance for isolation + // Use 5km threshold (more lenient to avoid false positives) + final nearestKm = _distanceToNearestSafeZone(lat, lng); + final isolated = isIsolatedArea || nearestKm > 5.0; + + // Debug logs + debugPrint('πŸ” [OFFLINE] Nearest safe zone: ${nearestKm.toStringAsFixed(1)} km'); + debugPrint('πŸ” [OFFLINE] isIsolatedArea (demo toggle): $isIsolatedArea'); + debugPrint('πŸ” [OFFLINE] isolated (final): $isolated'); + + if (isolated) { + reasons.add('${nearestKm.toStringAsFixed(1)} km from nearest safe zone'); + } + + // Calculate risk score + int riskScore = 0; + if (nightTime) riskScore += 1; + if (isolated) riskScore += 2; + + debugPrint('πŸ” [OFFLINE] riskScore: $riskScore (night=$nightTime, isolated=$isolated)'); + + final nearest = _findNearestSafePlace(lat, lng); + + return _buildResult( + riskScore: riskScore, + reasons: reasons, + nearest: nearest, + mode: DetectionMode.offline, + ); + } + + // ──────────────────────────────────────────────────────────────── + // Shared result builder + // ──────────────────────────────────────────────────────────────── + + static RiskResult _buildResult({ + required int riskScore, + required List reasons, + SafeZoneInfo? nearest, + required DetectionMode mode, + int? placesCount, + }) { + // Score 0 = safe, 1 = moderate, 2 = high, 3 = critical + if (riskScore >= 3) { + return RiskResult( + level: RiskLevel.critical, + message: '🚨 Critical Risk: Immediate Action Needed', + subtitle: 'Late night + low activity area β€” stay alert', + reasons: reasons, + nearestSafeZone: nearest, + mode: mode, + nearbyPlacesCount: placesCount, + riskScore: riskScore, + ); + } else if (riskScore == 2) { + return RiskResult( + level: RiskLevel.high, + message: '🚨 High Risk: Low Activity Area', + subtitle: 'You appear to be in an isolated location', + reasons: reasons, + nearestSafeZone: nearest, + mode: mode, + nearbyPlacesCount: placesCount, + riskScore: riskScore, + ); + } else if (riskScore == 1) { + return RiskResult( + level: RiskLevel.moderate, + message: '⚠️ Be Alert: Late Night', + subtitle: 'Late-night hours β€” stay in well-lit areas', + reasons: reasons, + nearestSafeZone: nearest, + mode: mode, + nearbyPlacesCount: placesCount, + riskScore: riskScore, + ); + } else { + return RiskResult( + level: RiskLevel.safe, + message: 'βœ… You are in a safe area', + subtitle: 'No risk factors detected right now', + reasons: reasons, + nearestSafeZone: nearest, + mode: mode, + nearbyPlacesCount: placesCount, + riskScore: riskScore, + ); + } + } + + // ──────────────────────────────────────────────────────────────── + // Helpers + // ──────────────────────────────────────────────────────────────── + + static SafeZoneInfo? _findNearestSafePlace(double lat, double lng) { + if (_safePlaces.isEmpty) return null; + _SafePlace? best; + double bestDist = double.infinity; + for (final p in _safePlaces) { + final d = _haversineKm(lat, lng, p.lat, p.lng); + if (d < bestDist) { + bestDist = d; + best = p; + } + } + if (best == null) return null; + return SafeZoneInfo( + name: best.name, + type: best.type, + distanceKm: bestDist, + lat: best.lat, + lng: best.lng, + ); + } + + static double _distanceToNearestSafeZone(double lat, double lng) { + double nearest = double.infinity; + for (final zone in _safePlaces) { + final d = _haversineKm(lat, lng, zone.lat, zone.lng); + if (d < nearest) nearest = d; + } + return nearest; + } + + static double _haversineKm( + double lat1, double lng1, + double lat2, double lng2, + ) { + const earthRadiusKm = 6371.0; + final dLat = _degToRad(lat2 - lat1); + final dLng = _degToRad(lng2 - lng1); + final a = sin(dLat / 2) * sin(dLat / 2) + + cos(_degToRad(lat1)) * + cos(_degToRad(lat2)) * + sin(dLng / 2) * + sin(dLng / 2); + final c = 2 * atan2(sqrt(a), sqrt(1 - a)); + return earthRadiusKm * c; + } + + static double _degToRad(double deg) => deg * (pi / 180); + + static String _formatHour(int hour) { + final h = hour % 12 == 0 ? 12 : hour % 12; + final period = hour >= 12 ? 'PM' : 'AM'; + return '$h $period'; + } +} + +class _SafePlace { + final String name; + final String type; + final double lat; + final double lng; + const _SafePlace(this.name, this.type, this.lat, this.lng); +} diff --git a/Team-Shivam/SheShield/lib/services/sms_service.dart b/Team-Shivam/SheShield/lib/services/sms_service.dart new file mode 100644 index 0000000..c27fc1c --- /dev/null +++ b/Team-Shivam/SheShield/lib/services/sms_service.dart @@ -0,0 +1,85 @@ +import 'package:flutter/foundation.dart'; +import 'package:flutter/services.dart'; +import 'package:firebase_auth/firebase_auth.dart'; +import 'package:permission_handler/permission_handler.dart'; +import 'storage_service.dart'; + +/// Service for sending SMS directly from the app (no user interaction needed). +/// Uses a platform channel to call Android's native SmsManager. +class SmsService { + static const _channel = MethodChannel('com.sheshield/sms'); + + /// Sends a raw SMS to the given phone number. + static Future _sendSms(String phoneNumber, String message) async { + try { + await _channel.invokeMethod('sendSms', { + 'phone': phoneNumber, + 'message': message, + }); + return true; + } catch (e) { + debugPrint('SmsService: Failed to send SMS to $phoneNumber β€” $e'); + return false; + } + } + + /// Requests SMS permission and sends an SMS directly to [phoneNumber] + /// notifying them that they have been added as an emergency contact. + static Future sendContactAddedSms({ + required String phoneNumber, + required String contactName, + }) async { + final status = await Permission.sms.request(); + if (!status.isGranted) { + debugPrint('SmsService: SMS permission denied'); + return false; + } + + final userName = + FirebaseAuth.instance.currentUser?.displayName ?? 'a SheShield user'; + + final message = + 'Hi $contactName! You have been added as an emergency contact on ' + 'SheShield by $userName. In case of an emergency, you will ' + 'receive SOS alerts with a live location link. Please stay reachable. ' + '- Sent via SheShield'; + + return _sendSms(phoneNumber, message); + } + + /// Sends an SOS emergency SMS to ALL saved emergency contacts with location. + static Future sendSOSToAllContacts({ + required double lat, + required double lng, + }) async { + final status = await Permission.sms.request(); + if (!status.isGranted) { + debugPrint('SmsService: SMS permission denied β€” cannot send SOS'); + return; + } + + final contacts = await StorageService.loadContacts(); + if (contacts.isEmpty) { + debugPrint('SmsService: No emergency contacts to send SOS to'); + return; + } + + final userName = + FirebaseAuth.instance.currentUser?.displayName ?? 'A SheShield user'; + + final mapLink = 'https://www.google.com/maps?q=$lat,$lng'; + + final message = + '🚨 SOS EMERGENCY ALERT!\n\n' + '$userName has triggered an emergency SOS on SheShield.\n\n' + 'πŸ“ Live Location: $mapLink\n\n' + 'Please respond immediately or contact emergency services. ' + '- SheShield Emergency Alert'; + + for (final contact in contacts) { + await _sendSms(contact.phone, message); + } + + debugPrint('SmsService: SOS SMS sent to ${contacts.length} contacts'); + } +} diff --git a/Team-Shivam/SheShield/lib/services/storage_service.dart b/Team-Shivam/SheShield/lib/services/storage_service.dart new file mode 100644 index 0000000..134684c --- /dev/null +++ b/Team-Shivam/SheShield/lib/services/storage_service.dart @@ -0,0 +1,78 @@ +import 'dart:convert'; +import 'package:shared_preferences/shared_preferences.dart'; + +/// Represents an emergency contact. +class Contact { + final String id; + final String name; + final String phone; + + Contact({ + required this.id, + required this.name, + required this.phone, + }); + + Map toJson() => { + 'id': id, + 'name': name, + 'phone': phone, + }; + + factory Contact.fromJson(Map json) => Contact( + id: json['id'] as String, + name: json['name'] as String, + phone: json['phone'] as String, + ); +} + +/// Service for persisting emergency contacts using SharedPreferences. +class StorageService { + static const String _contactsKey = 'sheshield_contacts'; + + /// Load all saved contacts. + static Future> loadContacts() async { + final prefs = await SharedPreferences.getInstance(); + final jsonStr = prefs.getString(_contactsKey); + if (jsonStr == null || jsonStr.isEmpty) { + // Return default sample contacts on first launch + final defaults = [ + Contact(id: '1', name: 'Mom', phone: '+91 98765 43210'), + Contact(id: '2', name: 'Dad', phone: '+91 98765 43211'), + Contact(id: '3', name: 'Sister', phone: '+91 98765 43212'), + ]; + await saveContacts(defaults); + return defaults; + } + final List list = jsonDecode(jsonStr); + return list.map((e) => Contact.fromJson(e as Map)).toList(); + } + + /// Save contacts list. + static Future saveContacts(List contacts) async { + final prefs = await SharedPreferences.getInstance(); + final jsonStr = jsonEncode(contacts.map((c) => c.toJson()).toList()); + await prefs.setString(_contactsKey, jsonStr); + } + + /// Add a new contact. + static Future> addContact( + List current, String name, String phone) async { + final contact = Contact( + id: DateTime.now().millisecondsSinceEpoch.toString(), + name: name, + phone: phone, + ); + final updated = [...current, contact]; + await saveContacts(updated); + return updated; + } + + /// Delete a contact by ID. + static Future> deleteContact( + List current, String id) async { + final updated = current.where((c) => c.id != id).toList(); + await saveContacts(updated); + return updated; + } +} diff --git a/Team-Shivam/SheShield/lib/services/video_recording_service.dart b/Team-Shivam/SheShield/lib/services/video_recording_service.dart new file mode 100644 index 0000000..09ad601 --- /dev/null +++ b/Team-Shivam/SheShield/lib/services/video_recording_service.dart @@ -0,0 +1,176 @@ +import 'dart:async'; +import 'dart:convert'; +import 'dart:io'; +import 'package:camera/camera.dart'; +import 'package:flutter/foundation.dart'; +import 'package:firebase_storage/firebase_storage.dart'; +import 'package:permission_handler/permission_handler.dart'; +import 'package:shared_preferences/shared_preferences.dart'; +import 'package:path_provider/path_provider.dart'; + +/// Service that records a 30-second video when SOS is triggered +/// and uploads it to Firebase Storage under `sos_recordings/`. +class VideoRecordingService { + static CameraController? _controller; + static bool _isRecording = false; + static Timer? _stopTimer; + + /// Start recording a 30-second video using the rear camera. + /// The video is automatically stopped and uploaded after 30 seconds. + static Future startSOSRecording() async { + if (_isRecording) return; + + try { + // Request camera and microphone permissions + final cameraStatus = await Permission.camera.request(); + final micStatus = await Permission.microphone.request(); + + if (!cameraStatus.isGranted || !micStatus.isGranted) { + debugPrint('VideoRecordingService: Camera/mic permission denied'); + return; + } + + // Get available cameras + final cameras = await availableCameras(); + if (cameras.isEmpty) { + debugPrint('VideoRecordingService: No cameras available'); + return; + } + + // Prefer back camera for evidence recording + final camera = cameras.firstWhere( + (c) => c.lensDirection == CameraLensDirection.back, + orElse: () => cameras.first, + ); + + // Initialize camera controller + _controller = CameraController( + camera, + ResolutionPreset.medium, + enableAudio: true, + ); + + await _controller!.initialize(); + + // Start recording + await _controller!.startVideoRecording(); + _isRecording = true; + debugPrint('VideoRecordingService: Recording started'); + + // Auto-stop after 30 seconds + _stopTimer = Timer(const Duration(seconds: 30), () { + stopAndUpload(); + }); + } catch (e) { + debugPrint('VideoRecordingService: Failed to start recording β€” $e'); + _cleanup(); + } + } + + /// Stop recording and upload the video to Firebase Storage. + static Future stopAndUpload() async { + if (!_isRecording || _controller == null) return; + + _stopTimer?.cancel(); + _stopTimer = null; + + try { + // Stop recording + final videoFile = await _controller!.stopVideoRecording(); + _isRecording = false; + debugPrint('VideoRecordingService: Recording stopped β€” ${videoFile.path}'); + + // Copy to persistent local directory so we can play it back later + final savedPath = await _saveLocally(videoFile.path); + + // Save emergency metadata to SharedPreferences + await _saveEmergencyRecord(savedPath); + + // Upload to Firebase Storage (in background) + _uploadVideo(videoFile.path); + } catch (e) { + debugPrint('VideoRecordingService: Failed to stop recording β€” $e'); + } finally { + _cleanup(); + } + } + + /// Copy recording to app's persistent documents directory. + static Future _saveLocally(String tempPath) async { + try { + final dir = await getApplicationDocumentsDirectory(); + final sosDir = Directory('${dir.path}/sos_recordings'); + if (!await sosDir.exists()) await sosDir.create(recursive: true); + + final now = DateTime.now(); + final fileName = 'SOS_${now.millisecondsSinceEpoch}.mp4'; + final destPath = '${sosDir.path}/$fileName'; + + await File(tempPath).copy(destPath); + debugPrint('VideoRecordingService: Saved locally at $destPath'); + return destPath; + } catch (e) { + debugPrint('VideoRecordingService: Failed to save locally β€” $e'); + return tempPath; // fallback to temp path + } + } + + /// Store emergency metadata in SharedPreferences as JSON. + static Future _saveEmergencyRecord(String filePath) async { + try { + final prefs = await SharedPreferences.getInstance(); + final emergencies = prefs.getStringList('emergencies') ?? []; + + emergencies.add(jsonEncode({ + 'time': DateTime.now().toIso8601String(), + 'filePath': filePath, + 'type': 'video', + })); + + await prefs.setStringList('emergencies', emergencies); + debugPrint('VideoRecordingService: Emergency record saved to prefs'); + } catch (e) { + debugPrint('VideoRecordingService: Failed to save record β€” $e'); + } + } + + /// Upload a video file to Firebase Storage. + static Future _uploadVideo(String filePath) async { + try { + final file = File(filePath); + if (!await file.exists()) { + debugPrint('VideoRecordingService: File does not exist'); + return; + } + + // Generate a unique filename with timestamp + final now = DateTime.now(); + final fileName = + 'SOS_${now.year}${now.month.toString().padLeft(2, '0')}' + '${now.day.toString().padLeft(2, '0')}_' + '${now.hour.toString().padLeft(2, '0')}' + '${now.minute.toString().padLeft(2, '0')}' + '${now.second.toString().padLeft(2, '0')}.mp4'; + + final ref = FirebaseStorage.instance.ref('sos_recordings/$fileName'); + await ref.putFile( + file, + SettableMetadata(contentType: 'video/mp4'), + ); + + debugPrint('VideoRecordingService: Video uploaded as $fileName'); + } catch (e) { + debugPrint('VideoRecordingService: Upload failed β€” $e'); + } + } + + /// Release camera resources. + static void _cleanup() { + _controller?.dispose(); + _controller = null; + _isRecording = false; + } + + /// Check if currently recording. + static bool get isRecording => _isRecording; +} diff --git a/Team-Shivam/SheShield/lib/services/voice_trigger_service.dart b/Team-Shivam/SheShield/lib/services/voice_trigger_service.dart new file mode 100644 index 0000000..54805d2 --- /dev/null +++ b/Team-Shivam/SheShield/lib/services/voice_trigger_service.dart @@ -0,0 +1,163 @@ +import 'dart:async'; +import 'package:flutter/foundation.dart' show debugPrint; +import 'package:speech_to_text/speech_to_text.dart' as stt; + +/// Keywords that trigger the SOS alert when spoken. +const _sosKeywords = [ + 'help', + 'help me', + 'emergency', + 'she shield', + 'sheshield', + 'police', + 'bachao', + 'bachaao', + 'bachaaao', + 'danger', + 'save me', + 'sos', + 'call police', + 'please help', +]; + +/// Service for continuous voice monitoring. +/// +/// Listens for speech in the background while the app is open and invokes +/// [onSosDetected] when any keyword from [_sosKeywords] is recognised. +class VoiceTriggerService { + final stt.SpeechToText _speech = stt.SpeechToText(); + final void Function() onSosDetected; + + bool _isInitialized = false; + bool _sosFired = false; + Timer? _restartTimer; + Timer? _autoResetTimer; + bool _disposed = false; + + VoiceTriggerService({required this.onSosDetected}); + + /// Initialize the speech recogniser. Returns `true` if available. + Future initialize() async { + try { + _isInitialized = await _speech.initialize( + onStatus: _onStatus, + onError: (error) { + debugPrint('VoiceTrigger: Error β€” ${error.errorMsg}'); + _scheduleRestart(); + }, + ); + debugPrint('VoiceTrigger: Initialized = $_isInitialized'); + } catch (e) { + debugPrint('VoiceTrigger: Init failed β€” $e'); + _isInitialized = false; + } + return _isInitialized; + } + + /// Start continuous listening. Safe to call multiple times. + void startListening() { + if (!_isInitialized || _disposed) return; + _sosFired = false; + _stopSpeech(); + _restartTimer?.cancel(); + _restartTimer = Timer(const Duration(milliseconds: 500), _listen); + } + + /// Stop listening and cancel any pending restart timers. + void stopListening() { + _restartTimer?.cancel(); + _restartTimer = null; + _stopSpeech(); + } + + /// Reset the SOS-fired flag and resume listening. + void resetAndRestart() { + _autoResetTimer?.cancel(); + _sosFired = false; + _stopSpeech(); + _restartTimer?.cancel(); + _restartTimer = Timer(const Duration(milliseconds: 500), _listen); + } + + /// Clean up resources. + void dispose() { + _disposed = true; + _autoResetTimer?.cancel(); + stopListening(); + try { _speech.cancel(); } catch (_) {} + } + + // --------------------------------------------------------------------------- + + void _stopSpeech() { + try { + if (_speech.isListening) { + _speech.stop(); + } + } catch (_) {} + } + + void _listen() { + if (_sosFired || !_isInitialized || _disposed) return; + + if (_speech.isListening) { + _stopSpeech(); + _restartTimer?.cancel(); + _restartTimer = Timer(const Duration(milliseconds: 500), _listen); + return; + } + + debugPrint('VoiceTrigger: Starting speech recognition…'); + + try { + _speech.listen( + onResult: (result) { + final words = result.recognizedWords.toLowerCase().trim(); + if (words.isEmpty) return; + + debugPrint('VoiceTrigger: Heard "$words" (final=${result.finalResult})'); + + for (final keyword in _sosKeywords) { + if (words.contains(keyword)) { + debugPrint('VoiceTrigger: 🚨 Keyword matched: "$keyword"'); + _sosFired = true; + stopListening(); + onSosDetected(); + // Auto-reset after 20s so voice can trigger again + _autoResetTimer = Timer(const Duration(seconds: 20), () { + if (!_disposed) resetAndRestart(); + }); + return; + } + } + }, + listenFor: const Duration(seconds: 30), + pauseFor: const Duration(seconds: 5), + listenOptions: stt.SpeechListenOptions( + listenMode: stt.ListenMode.dictation, + cancelOnError: false, + partialResults: true, + autoPunctuation: false, + ), + ); + } catch (e) { + debugPrint('VoiceTrigger: Listen failed β€” $e'); + _scheduleRestart(); + } + } + + void _onStatus(String status) { + debugPrint('VoiceTrigger: Status β†’ $status'); + if (status == 'done' || status == 'notListening') { + _scheduleRestart(); + } + } + + void _scheduleRestart() { + if (_sosFired || _disposed) return; + _restartTimer?.cancel(); + _restartTimer = Timer(const Duration(milliseconds: 500), () { + if (!_sosFired && !_disposed) _listen(); + }); + } +} diff --git a/Team-Shivam/SheShield/pubspec.yaml b/Team-Shivam/SheShield/pubspec.yaml new file mode 100644 index 0000000..d00b39d --- /dev/null +++ b/Team-Shivam/SheShield/pubspec.yaml @@ -0,0 +1,44 @@ +name: sheshield +description: She Shield – Smart Safety Bracelet. A Flutter app for emergency SOS alerts and GPS location sharing. + +publish_to: 'none' + +version: 1.0.0+1 + +environment: + sdk: ^3.0.0 + +dependencies: + flutter: + sdk: flutter + + cupertino_icons: ^1.0.6 + firebase_core: ^3.8.1 + firebase_auth: ^5.5.1 + cloud_firestore: ^5.6.2 + geolocator: ^11.0.0 + google_maps_flutter: ^2.6.0 + shared_preferences: ^2.2.2 + share_plus: ^7.2.1 + permission_handler: ^11.3.0 + url_launcher: ^6.2.4 + firebase_messaging: ^15.2.1 + http: ^1.2.0 + flutter_bluetooth_serial_ble: ^0.5.0 + speech_to_text: ^7.0.0 + camera: ^0.11.0+2 + camera_android: ^0.10.10 + firebase_storage: ^12.4.0 + path_provider: ^2.1.2 + connectivity_plus: ^6.1.4 + video_player: ^2.11.1 + +dev_dependencies: + flutter_test: + sdk: flutter + flutter_lints: ^3.0.1 + +flutter: + uses-material-design: true + assets: + - assets/images/ diff --git a/Team-Shivam/SheShield/screenshots & video/add emergenc contacts .jpeg b/Team-Shivam/SheShield/screenshots & video/add emergenc contacts .jpeg new file mode 100644 index 0000000000000000000000000000000000000000..08da408c5d497deeca4702ee43490b826e86d170 GIT binary patch literal 24565 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

    @^SI@&ta%QYcirz6- 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%0DrOCr$w?^nWZ_i1LrmC)+m%lb1# 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 qrvm|>oM5`opdOh-M3hvlK4hXsydLWAIKgO1 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 z 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 literal 0 HcmV?d00001 diff --git a/Team-Shivam/SheShield/screenshots & video/homepage 1 .jpeg b/Team-Shivam/SheShield/screenshots & video/homepage 1 .jpeg new file mode 100644 index 0000000000000000000000000000000000000000..a336e0556457ecd8cec041edcff80667bd1a2c2c GIT binary patch literal 42602 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⪻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 W@$vC~2sLAFTlRm3CsFnPZvp^N`(@Yw literal 0 HcmV?d00001 diff --git a/Team-Shivam/SheShield/screenshots & video/homepage.jpeg b/Team-Shivam/SheShield/screenshots & video/homepage.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..cb18b01aa79e7c8bdab645a5cac121009bd53adf GIT binary patch literal 39585 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 literal 0 HcmV?d00001 diff --git a/Team-Shivam/SheShield/screenshots & video/live location.jpeg b/Team-Shivam/SheShield/screenshots & video/live location.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..58c996e9e862dfbf5462e56aa3262edc89862d29 GIT binary patch literal 50563 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 literal 0 HcmV?d00001 diff --git a/Team-Shivam/SheShield/screenshots & video/nearby police stations .jpeg b/Team-Shivam/SheShield/screenshots & video/nearby police stations .jpeg new file mode 100644 index 0000000000000000000000000000000000000000..627b57fb9b81d25c12ffba4fa8c374843101bf48 GIT binary patch literal 74713 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

    pUp&dF5(BZ)rrH1z!#DP`e4$=crCO! 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 L*u~cF&&B@&q_QXr literal 0 HcmV?d00001 diff --git a/Team-Shivam/SheShield/screenshots & video/profile.jpeg b/Team-Shivam/SheShield/screenshots & video/profile.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..89f77d38834ecefc41fe39c66129a0f2c23c2ae9 GIT binary patch literal 31766 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 Dv*5vq literal 0 HcmV?d00001 diff --git a/Team-Shivam/SheShield/screenshots & video/share location.jpeg b/Team-Shivam/SheShield/screenshots & video/share location.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..a83bd42d57754b18330486c2ccb8d8bb6f31ee7d GIT binary patch literal 43571 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 literal 0 HcmV?d00001 diff --git a/Team-Shivam/SheShield/screenshots & video/sign in .jpeg b/Team-Shivam/SheShield/screenshots & video/sign in .jpeg new file mode 100644 index 0000000000000000000000000000000000000000..4272ed8f96ca1ac66ac24104268b2de0d38d3cc2 GIT binary patch literal 24391 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 X@6)+{iMVA*tQzg@Wxiv)eEI(XEj5Y+ literal 0 HcmV?d00001 diff --git a/Team-Shivam/SheShield/screenshots & video/signup.jpeg b/Team-Shivam/SheShield/screenshots & video/signup.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..21b834b8c020340be9a545d2135ef8f0f3917e92 GIT binary patch literal 27559 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 literal 0 HcmV?d00001 diff --git a/Team-Shivam/SheShield/screenshots & video/sos triggered.jpeg b/Team-Shivam/SheShield/screenshots & video/sos triggered.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..b4cb6f8767b9e45cf2cf02db421fce1c2872b637 GIT binary patch literal 32074 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 literal 0 HcmV?d00001 diff --git a/Team-Shivam/SheShield/test/widget_test.dart b/Team-Shivam/SheShield/test/widget_test.dart new file mode 100644 index 0000000..e5b5f60 --- /dev/null +++ b/Team-Shivam/SheShield/test/widget_test.dart @@ -0,0 +1,9 @@ +import 'package:flutter_test/flutter_test.dart'; +import 'package:sheshield/main.dart'; + +void main() { + testWidgets('App smoke test', (WidgetTester tester) async { + await tester.pumpWidget(const SheShieldApp()); + expect(find.text('SOS'), findsOneWidget); + }); +}