From 1a4b52d39b981505a3320001d48f7c46da07fb81 Mon Sep 17 00:00:00 2001 From: lucasverdelho Date: Tue, 1 Oct 2024 11:36:26 +0100 Subject: [PATCH 01/66] Init --- android/.gradle/8.3/checksums/checksums.lock | Bin 0 -> 17 bytes .../.gradle/8.3/checksums/md5-checksums.bin | Bin 0 -> 34747 bytes .../.gradle/8.3/checksums/sha1-checksums.bin | Bin 0 -> 83075 bytes .../dependencies-accessors.lock | Bin 0 -> 17 bytes .../8.3/dependencies-accessors/gc.properties | 0 .../8.3/executionHistory/executionHistory.bin | Bin 0 -> 607703 bytes .../executionHistory/executionHistory.lock | Bin 0 -> 17 bytes .../.gradle/8.3/fileChanges/last-build.bin | Bin 0 -> 1 bytes android/.gradle/8.3/fileHashes/fileHashes.bin | Bin 0 -> 137283 bytes .../.gradle/8.3/fileHashes/fileHashes.lock | Bin 0 -> 17 bytes .../8.3/fileHashes/resourceHashesCache.bin | Bin 0 -> 18905 bytes android/.gradle/8.3/gc.properties | 0 .../buildOutputCleanup.lock | Bin 0 -> 17 bytes .../buildOutputCleanup/cache.properties | 2 + .../buildOutputCleanup/outputFiles.bin | Bin 0 -> 99701 bytes android/.gradle/file-system.probe | Bin 0 -> 8 bytes android/.gradle/vcs-1/gc.properties | 0 .../plugins/GeneratedPluginRegistrant.java | 19 +++ android/gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 53636 bytes android/gradlew | 160 ++++++++++++++++++ android/gradlew.bat | 90 ++++++++++ android/local.properties | 5 + ios/Flutter/Generated.xcconfig | 14 ++ ios/Flutter/flutter_export_environment.sh | 13 ++ ios/Runner/GeneratedPluginRegistrant.h | 19 +++ ios/Runner/GeneratedPluginRegistrant.m | 14 ++ 26 files changed, 336 insertions(+) create mode 100644 android/.gradle/8.3/checksums/checksums.lock create mode 100644 android/.gradle/8.3/checksums/md5-checksums.bin create mode 100644 android/.gradle/8.3/checksums/sha1-checksums.bin create mode 100644 android/.gradle/8.3/dependencies-accessors/dependencies-accessors.lock create mode 100644 android/.gradle/8.3/dependencies-accessors/gc.properties create mode 100644 android/.gradle/8.3/executionHistory/executionHistory.bin create mode 100644 android/.gradle/8.3/executionHistory/executionHistory.lock create mode 100644 android/.gradle/8.3/fileChanges/last-build.bin create mode 100644 android/.gradle/8.3/fileHashes/fileHashes.bin create mode 100644 android/.gradle/8.3/fileHashes/fileHashes.lock create mode 100644 android/.gradle/8.3/fileHashes/resourceHashesCache.bin create mode 100644 android/.gradle/8.3/gc.properties create mode 100644 android/.gradle/buildOutputCleanup/buildOutputCleanup.lock create mode 100644 android/.gradle/buildOutputCleanup/cache.properties create mode 100644 android/.gradle/buildOutputCleanup/outputFiles.bin create mode 100644 android/.gradle/file-system.probe create mode 100644 android/.gradle/vcs-1/gc.properties create mode 100644 android/app/src/main/java/io/flutter/plugins/GeneratedPluginRegistrant.java create mode 100644 android/gradle/wrapper/gradle-wrapper.jar create mode 100644 android/gradlew create mode 100644 android/gradlew.bat create mode 100644 android/local.properties create mode 100644 ios/Flutter/Generated.xcconfig create mode 100644 ios/Flutter/flutter_export_environment.sh create mode 100644 ios/Runner/GeneratedPluginRegistrant.h create mode 100644 ios/Runner/GeneratedPluginRegistrant.m diff --git a/android/.gradle/8.3/checksums/checksums.lock b/android/.gradle/8.3/checksums/checksums.lock new file mode 100644 index 0000000000000000000000000000000000000000..4c8f140a63724e6d4336f9629d18a285453aac6c GIT binary patch literal 17 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 literal 0 HcmV?d00001 diff --git a/android/.gradle/8.3/checksums/sha1-checksums.bin b/android/.gradle/8.3/checksums/sha1-checksums.bin new file mode 100644 index 0000000000000000000000000000000000000000..70fcfd8386930abccd82e04624430d34bdd61f8e GIT binary patch literal 83075 zcmeFac{r8Z8$Z0ac}S+rA!TYJQpzk}08*Ar&Dqk11oK5*d;*Cv!xGOqHP` zk|@n7g!(*3jF4-Uu8@)tJT z{~E{teq8x!B?BuNSjoUj239h#l7W>BtYly%11lL=$-qhmRx+@Xft3ubWMCx&D;ZeH zz)A*IGO&_?|G#9w4Cx31=uGKp3iJo&(>UC=RX7~p>%6~R*`76=cM1O)FIz+kI4(h@gK0g3{m+OUwsCCczlU?5QYA>{Et?V!2V1sw)u>*|nW++_#Sf;I0!GZo^s3a_{LBzzxDMJa&!q_Kn$21RT$C7sIc-`{w1c z`7yw^Z^rO%i6cimaWMWotY0BBmdAXb?wJ7oix-LZp<-wJoAv7x0dDGt;T!9n-A7C( zfqzLX{xHs3|0=e@0_ewzXdh;%oAw}IrV!Z6nPB+oLF$QwP+*VWokzsO1D)p%F4SlP zKUS}ac!XPRZIh^05bz`a62tQ-FU!vfgS_E|0*H9z=~a%iMkzVKUTF@)t7!aEMAqyA z{<9P?{P}QyY}+#!kN9p3pZNCXeWZ36us^ebh(|?m#rIpD?gV&oJQ0u9>Y{O|?okK0 znHh!~%}UMaRK6nMcp)tR(dYKN<(>F^2H?A+gx1)ms7Xyb;6K9y5NRVBZVyt8y4#Bm0)=@qtu; z7sg@uobHq7biV`uertw^$1yORI9i+h8sLWwFx*||{id4V1^_?#Kl=d5@ha;>Ap{)H zl}NO|xFNM~);lo?*vI5xxXAX0VxmQ|z+Slr!;iH{Wa$-(0((Ch48O9)f$!Awvj8uu z#PF9td{4>7azh-8GoDWQ(YLEXl>qm}?Bkhy*xy#0SrKqN?@ywi_>+6a1_e`|0emes ze&T~%4V3qGKLEJ!Yoh%n;qai_6`A(Hzt3(A_b}M?XrkgN!2M4X@yjm+nfR^U)c|ge z<>B&ceGRTDcUItE%!z29u)QYFzvm9DW4hQlNie_i`)aYyKHw+d8)olZO>t=YJG?Kq zB{BTOHo?%bx;o%rDF(yqDXr`$HX(H%ZI`j}km%t3p+Nl_r~|mG{Y3l3Bic6{e<+Uw z`l3kz&cm`I-67Qe*Q|V+3<|*z<2+=-?;X#nQ=q+>!LYgDiuOu#(a^Frb z5GU>!c3+Y#-`V8e>~STS7x?j@#_+V@ndC9I zo4{TzortF>-aJygQ>_i)YcSmumGQ+tLcFWm8~(%)M<4bPZ}S{G!i+g2WG_ zz+U_mhNow}zUbKc4cMPs#PFO!Jln7fj5Dkb!yD=ZtjhgBJ;ZOv@^*D<%g2bGQy_kv zzBWBADmvs=zS?*X2A2g5U!XJTR~+kqbe zK_Z^vm)zv7`XC?Rir79RBU$wP$Q4bnUgM0hI5T>D>P`!dx�BZexDl=5F|WD@qRF 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 literal 0 HcmV?d00001 diff --git a/android/.gradle/8.3/dependencies-accessors/dependencies-accessors.lock b/android/.gradle/8.3/dependencies-accessors/dependencies-accessors.lock new file mode 100644 index 0000000000000000000000000000000000000000..5c5a3751e962ec78b35c16fe4871f5df02a62508 GIT binary patch literal 17 TcmZRcwW;E);*F0D3{U_7J_!W> literal 0 HcmV?d00001 diff --git a/android/.gradle/8.3/dependencies-accessors/gc.properties b/android/.gradle/8.3/dependencies-accessors/gc.properties new file mode 100644 index 0000000..e69de29 diff --git a/android/.gradle/8.3/executionHistory/executionHistory.bin b/android/.gradle/8.3/executionHistory/executionHistory.bin new file mode 100644 index 0000000000000000000000000000000000000000..86b8897fbbb6dea8297c20c1bbc39508db221c83 GIT binary patch literal 607703 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

9BhmB7vrcx6c`UI`xx!Rox?%;-R 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%0D{LVg$ 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 IM|#u$0S+Xb@&Et; literal 0 HcmV?d00001 diff --git a/android/.gradle/8.3/executionHistory/executionHistory.lock b/android/.gradle/8.3/executionHistory/executionHistory.lock new file mode 100644 index 0000000000000000000000000000000000000000..92a6ff1dc3b69fd25e3dfa1c8c2247e912dcaee3 GIT binary patch literal 17 UcmZRU7IabDvuWjP1_&?$04N><&Hw-a literal 0 HcmV?d00001 diff --git a/android/.gradle/8.3/fileChanges/last-build.bin b/android/.gradle/8.3/fileChanges/last-build.bin new file mode 100644 index 0000000000000000000000000000000000000000..f76dd238ade08917e6712764a16a22005a50573d GIT binary patch literal 1 IcmZPo000310RR91 literal 0 HcmV?d00001 diff --git a/android/.gradle/8.3/fileHashes/fileHashes.bin b/android/.gradle/8.3/fileHashes/fileHashes.bin new file mode 100644 index 0000000000000000000000000000000000000000..7334df8a3f978c111c63bfe5a16e7fcc0c694f08 GIT binary patch literal 137283 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 aB=`3)tm*iyQ0H|{p#mowAhA}IMEoC{j9`WU literal 0 HcmV?d00001 diff --git a/android/.gradle/8.3/fileHashes/fileHashes.lock b/android/.gradle/8.3/fileHashes/fileHashes.lock new file mode 100644 index 0000000000000000000000000000000000000000..1bfa11195216010419a6b5c4a81aeacd4edbc674 GIT binary patch literal 17 VcmZR6ecxb;?3MQ)7{GvaIsiim1^xg4 literal 0 HcmV?d00001 diff --git a/android/.gradle/8.3/fileHashes/resourceHashesCache.bin b/android/.gradle/8.3/fileHashes/resourceHashesCache.bin new file mode 100644 index 0000000000000000000000000000000000000000..38784e64193f7a4d81b436499626be130de6a504 GIT binary patch literal 18905 zcmeI&ZAcSg00;1!WRh;V%3ziWWi|xob|@x6(kN-NK#bICprU~aX$@bdE{R}4Eef-= zjGWFWjeIGo#_)q5RCEnSF0sNFq!PzOTy0SbVmJ0YN#2J(2Jt_5?jHX4=ec`+U+<1F zj6}Rf4rcw>xjw}V0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_0D=ESAdA~bXkasv z_#pozT*oj9AvX~=>95#!+Z2xjw^beV`+=kNfIYL$VGiW!qThM%T;0!mA`$7^Xg(=( zEe|L+7m&V%=BrsL-aW}KCFv_^9^IR;?}pa1Un)KmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHaf zKmY;|fB*y_009U<00Izzz`qqpX1T!2h0%XDy2HmO z=B}r`KOLcxc6smj^BX1A_O$vNA6Gx$Hbt?Gm&^H$*Pdtge&MA}^T*xWYkeLWzhQV~ z+NJ9ro_Z8E5ug38p_AW;aIvMgG!lcSrEf`WIrWm?C@m{4vhM$W*qMAYPe0b~|NDQ# zUd}B(k3CY*GV9K9ERGthEBTEsiy-ue?P#rVA@x(q-SbQQ#z>% literal 0 HcmV?d00001 diff --git a/android/.gradle/8.3/gc.properties b/android/.gradle/8.3/gc.properties new file mode 100644 index 0000000..e69de29 diff --git a/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock b/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock new file mode 100644 index 0000000000000000000000000000000000000000..794ddf21bd2c07cdbe4ddfa425df83e11e39b488 GIT binary patch literal 17 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ⅅ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 H-+%o-(+5aQ literal 0 HcmV?d00001 diff --git a/android/gradlew b/android/gradlew new file mode 100644 index 0000000..9d82f78 --- /dev/null +++ b/android/gradlew @@ -0,0 +1,160 @@ +#!/usr/bin/env bash + +############################################################################## +## +## Gradle start up script for UN*X +## +############################################################################## + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS="" + +APP_NAME="Gradle" +APP_BASE_NAME=`basename "$0"` + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD="maximum" + +warn ( ) { + echo "$*" +} + +die ( ) { + echo + echo "$*" + echo + exit 1 +} + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +case "`uname`" in + CYGWIN* ) + cygwin=true + ;; + Darwin* ) + darwin=true + ;; + MINGW* ) + msys=true + ;; +esac + +# Attempt to set APP_HOME +# Resolve links: $0 may be a link +PRG="$0" +# Need this for relative symlinks. +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`"/$link" + fi +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >/dev/null +APP_HOME="`pwd -P`" +cd "$SAVED" >/dev/null + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + else + JAVACMD="$JAVA_HOME/bin/java" + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD="java" + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." +fi + +# Increase the maximum file descriptors if we can. +if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then + MAX_FD_LIMIT=`ulimit -H -n` + if [ $? -eq 0 ] ; then + if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then + MAX_FD="$MAX_FD_LIMIT" + fi + ulimit -n $MAX_FD + if [ $? -ne 0 ] ; then + warn "Could not set maximum file descriptor limit: $MAX_FD" + fi + else + warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" + fi +fi + +# For Darwin, add options to specify how the application appears in the dock +if $darwin; then + GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" +fi + +# For Cygwin, switch paths to Windows format before running java +if $cygwin ; then + APP_HOME=`cygpath --path --mixed "$APP_HOME"` + CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + JAVACMD=`cygpath --unix "$JAVACMD"` + + # We build the pattern for arguments to be converted via cygpath + ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` + SEP="" + for dir in $ROOTDIRSRAW ; do + ROOTDIRS="$ROOTDIRS$SEP$dir" + SEP="|" + done + OURCYGPATTERN="(^($ROOTDIRS))" + # Add a user-defined pattern to the cygpath arguments + if [ "$GRADLE_CYGPATTERN" != "" ] ; then + OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" + fi + # Now convert the arguments - kludge to limit ourselves to /bin/sh + i=0 + for arg in "$@" ; do + CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` + CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option + + if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition + eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` + else + eval `echo args$i`="\"$arg\"" + fi + i=$((i+1)) + done + case $i in + (0) set -- ;; + (1) set -- "$args0" ;; + (2) set -- "$args0" "$args1" ;; + (3) set -- "$args0" "$args1" "$args2" ;; + (4) set -- "$args0" "$args1" "$args2" "$args3" ;; + (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; + (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; + (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; + (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; + (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; + esac +fi + +# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules +function splitJvmOpts() { + JVM_OPTS=("$@") +} +eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS +JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME" + +exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" diff --git a/android/gradlew.bat b/android/gradlew.bat new file mode 100644 index 0000000..8a0b282 --- /dev/null +++ b/android/gradlew.bat @@ -0,0 +1,90 @@ +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS= + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto init + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto init + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:init +@rem Get command-line arguments, handling Windowz variants + +if not "%OS%" == "Windows_NT" goto win9xME_args +if "%@eval[2+2]" == "4" goto 4NT_args + +:win9xME_args +@rem Slurp the command line arguments. +set CMD_LINE_ARGS= +set _SKIP=2 + +:win9xME_args_slurp +if "x%~1" == "x" goto execute + +set CMD_LINE_ARGS=%* +goto execute + +:4NT_args +@rem Get arguments from the 4NT Shell from JP Software +set CMD_LINE_ARGS=%$ + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/android/local.properties b/android/local.properties new file mode 100644 index 0000000..9d3c55d --- /dev/null +++ b/android/local.properties @@ -0,0 +1,5 @@ +sdk.dir=C:\\Users\\Despacito4\\AppData\\Local\\Android\\sdk +flutter.sdk=C:\\dev\\flutter +flutter.buildMode=debug +flutter.versionName=1.0.0 +flutter.versionCode=1 \ No newline at end of file diff --git a/ios/Flutter/Generated.xcconfig b/ios/Flutter/Generated.xcconfig new file mode 100644 index 0000000..adf1501 --- /dev/null +++ b/ios/Flutter/Generated.xcconfig @@ -0,0 +1,14 @@ +// This is a generated file; do not edit or check into version control. +FLUTTER_ROOT=C:\dev\flutter +FLUTTER_APPLICATION_PATH=C:\Users\Despacito4\Desktop\mobile\mobile_base +COCOAPODS_PARALLEL_CODE_SIGN=true +FLUTTER_TARGET=lib\main.dart +FLUTTER_BUILD_DIR=build +FLUTTER_BUILD_NAME=1.0.0 +FLUTTER_BUILD_NUMBER=1 +EXCLUDED_ARCHS[sdk=iphonesimulator*]=i386 +EXCLUDED_ARCHS[sdk=iphoneos*]=armv7 +DART_OBFUSCATION=false +TRACK_WIDGET_CREATION=true +TREE_SHAKE_ICONS=false +PACKAGE_CONFIG=.dart_tool/package_config.json diff --git a/ios/Flutter/flutter_export_environment.sh b/ios/Flutter/flutter_export_environment.sh new file mode 100644 index 0000000..77feab6 --- /dev/null +++ b/ios/Flutter/flutter_export_environment.sh @@ -0,0 +1,13 @@ +#!/bin/sh +# This is a generated file; do not edit or check into version control. +export "FLUTTER_ROOT=C:\dev\flutter" +export "FLUTTER_APPLICATION_PATH=C:\Users\Despacito4\Desktop\mobile\mobile_base" +export "COCOAPODS_PARALLEL_CODE_SIGN=true" +export "FLUTTER_TARGET=lib\main.dart" +export "FLUTTER_BUILD_DIR=build" +export "FLUTTER_BUILD_NAME=1.0.0" +export "FLUTTER_BUILD_NUMBER=1" +export "DART_OBFUSCATION=false" +export "TRACK_WIDGET_CREATION=true" +export "TREE_SHAKE_ICONS=false" +export "PACKAGE_CONFIG=.dart_tool/package_config.json" diff --git a/ios/Runner/GeneratedPluginRegistrant.h b/ios/Runner/GeneratedPluginRegistrant.h new file mode 100644 index 0000000..7a89092 --- /dev/null +++ b/ios/Runner/GeneratedPluginRegistrant.h @@ -0,0 +1,19 @@ +// +// Generated file. Do not edit. +// + +// clang-format off + +#ifndef GeneratedPluginRegistrant_h +#define GeneratedPluginRegistrant_h + +#import + +NS_ASSUME_NONNULL_BEGIN + +@interface GeneratedPluginRegistrant : NSObject ++ (void)registerWithRegistry:(NSObject*)registry; +@end + +NS_ASSUME_NONNULL_END +#endif /* GeneratedPluginRegistrant_h */ diff --git a/ios/Runner/GeneratedPluginRegistrant.m b/ios/Runner/GeneratedPluginRegistrant.m new file mode 100644 index 0000000..efe65ec --- /dev/null +++ b/ios/Runner/GeneratedPluginRegistrant.m @@ -0,0 +1,14 @@ +// +// Generated file. Do not edit. +// + +// clang-format off + +#import "GeneratedPluginRegistrant.h" + +@implementation GeneratedPluginRegistrant + ++ (void)registerWithRegistry:(NSObject*)registry { +} + +@end From 0abdc6377698cd1c5f34022c9e14eb472ebb8060 Mon Sep 17 00:00:00 2001 From: lucasverdelho Date: Tue, 1 Oct 2024 12:18:17 +0100 Subject: [PATCH 02/66] Init Remake --- .gitignore | 60 +- .metadata | 33 + analysis_options.yaml | 28 + android/.gitignore | 13 + android/app/build.gradle | 44 ++ android/app/src/debug/AndroidManifest.xml | 7 + android/app/src/main/AndroidManifest.xml | 45 ++ .../kotlin/com/example/mobile/MainActivity.kt | 5 + .../res/drawable-v21/launch_background.xml | 12 + .../main/res/drawable/launch_background.xml | 12 + .../src/main/res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 544 bytes .../src/main/res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 442 bytes .../src/main/res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 721 bytes .../main/res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 1031 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 1443 bytes .../app/src/main/res/values-night/styles.xml | 18 + android/app/src/main/res/values/styles.xml | 18 + android/app/src/profile/AndroidManifest.xml | 7 + android/build.gradle | 18 + android/gradle.properties | 3 + .../gradle/wrapper/gradle-wrapper.properties | 5 + android/settings.gradle | 25 + ios/.gitignore | 34 + ios/Flutter/AppFrameworkInfo.plist | 26 + ios/Flutter/Debug.xcconfig | 1 + ios/Flutter/Release.xcconfig | 1 + ios/Runner.xcodeproj/project.pbxproj | 616 ++++++++++++++++++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/WorkspaceSettings.xcsettings | 8 + .../xcshareddata/xcschemes/Runner.xcscheme | 98 +++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/WorkspaceSettings.xcsettings | 8 + ios/Runner/AppDelegate.swift | 13 + .../AppIcon.appiconset/Contents.json | 122 ++++ .../Icon-App-1024x1024@1x.png | Bin 0 -> 10932 bytes .../AppIcon.appiconset/Icon-App-20x20@1x.png | Bin 0 -> 295 bytes .../AppIcon.appiconset/Icon-App-20x20@2x.png | Bin 0 -> 406 bytes .../AppIcon.appiconset/Icon-App-20x20@3x.png | Bin 0 -> 450 bytes .../AppIcon.appiconset/Icon-App-29x29@1x.png | Bin 0 -> 282 bytes .../AppIcon.appiconset/Icon-App-29x29@2x.png | Bin 0 -> 462 bytes .../AppIcon.appiconset/Icon-App-29x29@3x.png | Bin 0 -> 704 bytes .../AppIcon.appiconset/Icon-App-40x40@1x.png | Bin 0 -> 406 bytes .../AppIcon.appiconset/Icon-App-40x40@2x.png | Bin 0 -> 586 bytes .../AppIcon.appiconset/Icon-App-40x40@3x.png | Bin 0 -> 862 bytes .../AppIcon.appiconset/Icon-App-60x60@2x.png | Bin 0 -> 862 bytes .../AppIcon.appiconset/Icon-App-60x60@3x.png | Bin 0 -> 1674 bytes .../AppIcon.appiconset/Icon-App-76x76@1x.png | Bin 0 -> 762 bytes .../AppIcon.appiconset/Icon-App-76x76@2x.png | Bin 0 -> 1226 bytes .../Icon-App-83.5x83.5@2x.png | Bin 0 -> 1418 bytes .../LaunchImage.imageset/Contents.json | 23 + .../LaunchImage.imageset/LaunchImage.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/LaunchImage@2x.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/LaunchImage@3x.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/README.md | 5 + ios/Runner/Base.lproj/LaunchScreen.storyboard | 37 ++ ios/Runner/Base.lproj/Main.storyboard | 26 + ios/Runner/Info.plist | 49 ++ ios/Runner/Runner-Bridging-Header.h | 1 + ios/RunnerTests/RunnerTests.swift | 12 + lib/main.dart | 125 ++++ mobile/.gitignore | 27 + pubspec.lock | 213 ++++++ pubspec.yaml | 90 +++ test/widget_test.dart | 30 + 66 files changed, 1926 insertions(+), 22 deletions(-) create mode 100644 .metadata create mode 100644 analysis_options.yaml create mode 100644 android/.gitignore create mode 100644 android/app/build.gradle create mode 100644 android/app/src/debug/AndroidManifest.xml create mode 100644 android/app/src/main/AndroidManifest.xml create mode 100644 android/app/src/main/kotlin/com/example/mobile/MainActivity.kt create mode 100644 android/app/src/main/res/drawable-v21/launch_background.xml create mode 100644 android/app/src/main/res/drawable/launch_background.xml create mode 100644 android/app/src/main/res/mipmap-hdpi/ic_launcher.png create mode 100644 android/app/src/main/res/mipmap-mdpi/ic_launcher.png create mode 100644 android/app/src/main/res/mipmap-xhdpi/ic_launcher.png create mode 100644 android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 android/app/src/main/res/values-night/styles.xml create mode 100644 android/app/src/main/res/values/styles.xml create mode 100644 android/app/src/profile/AndroidManifest.xml create mode 100644 android/build.gradle create mode 100644 android/gradle.properties create mode 100644 android/gradle/wrapper/gradle-wrapper.properties create mode 100644 android/settings.gradle create mode 100644 ios/.gitignore create mode 100644 ios/Flutter/AppFrameworkInfo.plist create mode 100644 ios/Flutter/Debug.xcconfig create mode 100644 ios/Flutter/Release.xcconfig create mode 100644 ios/Runner.xcodeproj/project.pbxproj create mode 100644 ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata create mode 100644 ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings create mode 100644 ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme create mode 100644 ios/Runner.xcworkspace/contents.xcworkspacedata create mode 100644 ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings create mode 100644 ios/Runner/AppDelegate.swift create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png create mode 100644 ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json create mode 100644 ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png create mode 100644 ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png create mode 100644 ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png create mode 100644 ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md create mode 100644 ios/Runner/Base.lproj/LaunchScreen.storyboard create mode 100644 ios/Runner/Base.lproj/Main.storyboard create mode 100644 ios/Runner/Info.plist create mode 100644 ios/Runner/Runner-Bridging-Header.h create mode 100644 ios/RunnerTests/RunnerTests.swift create mode 100644 lib/main.dart create mode 100644 mobile/.gitignore create mode 100644 pubspec.lock create mode 100644 pubspec.yaml create mode 100644 test/widget_test.dart diff --git a/.gitignore b/.gitignore index 3a83c2f..29a3a50 100644 --- a/.gitignore +++ b/.gitignore @@ -1,27 +1,43 @@ -# See https://www.dartlang.org/guides/libraries/private-files +# Miscellaneous +*.class +*.log +*.pyc +*.swp +.DS_Store +.atom/ +.buildlog/ +.history +.svn/ +migrate_working_dir/ -# Files and directories created by pub -.dart_tool/ -.packages -build/ -# If you're building an application, you may want to check-in your pubspec.lock -pubspec.lock - -# Directory created by dartdoc -# If you don't generate documentation locally you can remove this line. -doc/api/ +# IntelliJ related +*.iml +*.ipr +*.iws +.idea/ -# dotenv environment variables file -.env* - -# Avoid committing generated Javascript files: -*.dart.js -*.info.json # Produced by the --dump-info flag. -*.js # When generated by dart2js. Don't specify *.js if your - # project includes source files written in JavaScript. -*.js_ -*.js.deps -*.js.map +# The .vscode folder contains launch configuration and tasks you configure in +# VS Code which you may wish to be included in version control, so this line +# is commented out by default. +#.vscode/ +# Flutter/Dart/Pub related +**/doc/api/ +**/ios/Flutter/.last_build_id +.dart_tool/ .flutter-plugins .flutter-plugins-dependencies +.pub-cache/ +.pub/ +/build/ + +# Symbolication related +app.*.symbols + +# Obfuscation related +app.*.map.json + +# Android Studio will place build artifacts here +/android/app/debug +/android/app/profile +/android/app/release diff --git a/.metadata b/.metadata new file mode 100644 index 0000000..8a6d398 --- /dev/null +++ b/.metadata @@ -0,0 +1,33 @@ +# This file tracks properties of this Flutter project. +# Used by Flutter tool to assess capabilities and perform upgrades etc. +# +# This file should be version controlled and should not be manually edited. + +version: + revision: "2663184aa79047d0a33a14a3b607954f8fdd8730" + channel: "stable" + +project_type: app + +# Tracks metadata for the flutter migrate command +migration: + platforms: + - platform: root + create_revision: 2663184aa79047d0a33a14a3b607954f8fdd8730 + base_revision: 2663184aa79047d0a33a14a3b607954f8fdd8730 + - platform: android + create_revision: 2663184aa79047d0a33a14a3b607954f8fdd8730 + base_revision: 2663184aa79047d0a33a14a3b607954f8fdd8730 + - platform: ios + create_revision: 2663184aa79047d0a33a14a3b607954f8fdd8730 + base_revision: 2663184aa79047d0a33a14a3b607954f8fdd8730 + + # User provided section + + # List of Local paths (relative to this file) that should be + # ignored by the migrate tool. + # + # Files that are not part of the templates will be ignored by default. + unmanaged_files: + - 'lib/main.dart' + - 'ios/Runner.xcodeproj/project.pbxproj' diff --git a/analysis_options.yaml b/analysis_options.yaml new file mode 100644 index 0000000..0d29021 --- /dev/null +++ b/analysis_options.yaml @@ -0,0 +1,28 @@ +# This file configures the analyzer, which statically analyzes Dart code to +# check for errors, warnings, and lints. +# +# The issues identified by the analyzer are surfaced in the UI of Dart-enabled +# IDEs (https://dart.dev/tools#ides-and-editors). The analyzer can also be +# invoked from the command line by running `flutter analyze`. + +# The following line activates a set of recommended lints for Flutter apps, +# packages, and plugins designed to encourage good coding practices. +include: package:flutter_lints/flutter.yaml + +linter: + # The lint rules applied to this project can be customized in the + # section below to disable rules from the `package:flutter_lints/flutter.yaml` + # included above or to enable additional rules. A list of all available lints + # and their documentation is published at https://dart.dev/lints. + # + # Instead of disabling a lint rule for the entire project in the + # section below, it can also be suppressed for a single line of code + # or a specific dart file by using the `// ignore: name_of_lint` and + # `// ignore_for_file: name_of_lint` syntax on the line or in the file + # producing the lint. + rules: + # avoid_print: false # Uncomment to disable the `avoid_print` rule + # prefer_single_quotes: true # Uncomment to enable the `prefer_single_quotes` rule + +# Additional information about this file can be found at +# https://dart.dev/guides/language/analysis-options diff --git a/android/.gitignore b/android/.gitignore new file mode 100644 index 0000000..55afd91 --- /dev/null +++ b/android/.gitignore @@ -0,0 +1,13 @@ +gradle-wrapper.jar +/.gradle +/captures/ +/gradlew +/gradlew.bat +/local.properties +GeneratedPluginRegistrant.java + +# Remember to never publicly share your keystore. +# See https://flutter.dev/to/reference-keystore +key.properties +**/*.keystore +**/*.jks diff --git a/android/app/build.gradle b/android/app/build.gradle new file mode 100644 index 0000000..aa34c77 --- /dev/null +++ b/android/app/build.gradle @@ -0,0 +1,44 @@ +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" +} + +android { + namespace = "com.example.mobile" + compileSdk = flutter.compileSdkVersion + ndkVersion = flutter.ndkVersion + + compileOptions { + sourceCompatibility = JavaVersion.VERSION_1_8 + targetCompatibility = JavaVersion.VERSION_1_8 + } + + kotlinOptions { + jvmTarget = JavaVersion.VERSION_1_8 + } + + defaultConfig { + // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). + applicationId = "com.example.mobile" + // 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.debug + } + } +} + +flutter { + source = "../.." +} diff --git a/android/app/src/debug/AndroidManifest.xml b/android/app/src/debug/AndroidManifest.xml new file mode 100644 index 0000000..399f698 --- /dev/null +++ b/android/app/src/debug/AndroidManifest.xml @@ -0,0 +1,7 @@ + + + + diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml new file mode 100644 index 0000000..ef5beb7 --- /dev/null +++ b/android/app/src/main/AndroidManifest.xml @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/android/app/src/main/kotlin/com/example/mobile/MainActivity.kt b/android/app/src/main/kotlin/com/example/mobile/MainActivity.kt new file mode 100644 index 0000000..d859fce --- /dev/null +++ b/android/app/src/main/kotlin/com/example/mobile/MainActivity.kt @@ -0,0 +1,5 @@ +package com.example.mobile + +import io.flutter.embedding.android.FlutterActivity + +class MainActivity: FlutterActivity() diff --git a/android/app/src/main/res/drawable-v21/launch_background.xml b/android/app/src/main/res/drawable-v21/launch_background.xml new file mode 100644 index 0000000..f74085f --- /dev/null +++ b/android/app/src/main/res/drawable-v21/launch_background.xml @@ -0,0 +1,12 @@ + + + + + + + + diff --git a/android/app/src/main/res/drawable/launch_background.xml b/android/app/src/main/res/drawable/launch_background.xml new file mode 100644 index 0000000..304732f --- /dev/null +++ b/android/app/src/main/res/drawable/launch_background.xml @@ -0,0 +1,12 @@ + + + + + + + + diff --git a/android/app/src/main/res/mipmap-hdpi/ic_launcher.png b/android/app/src/main/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..db77bb4b7b0906d62b1847e87f15cdcacf6a4f29 GIT binary patch literal 544 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY3?!3`olAj~WQl7;NpOBzNqJ&XDuZK6ep0G} zXKrG8YEWuoN@d~6R2!h8bpbvhu0Wd6uZuB!w&u2PAxD2eNXD>P5D~Wn-+_Wa#27Xc zC?Zj|6r#X(-D3u$NCt}(Ms06KgJ4FxJVv{GM)!I~&n8Bnc94O7-Hd)cjDZswgC;Qs zO=b+9!WcT8F?0rF7!Uys2bs@gozCP?z~o%U|N3vA*22NaGQG zlg@K`O_XuxvZ&Ks^m&R!`&1=spLvfx7oGDKDwpwW`#iqdw@AL`7MR}m`rwr|mZgU`8P7SBkL78fFf!WnuYWm$5Z0 zNXhDbCv&49sM544K|?c)WrFfiZvCi9h0O)B3Pgg&ebxsLQ05GG~ AQ2+n{ literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/mipmap-mdpi/ic_launcher.png b/android/app/src/main/res/mipmap-mdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..17987b79bb8a35cc66c3c1fd44f5a5526c1b78be GIT binary patch literal 442 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA3?vioaBc-sk|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5Xx&nMcT!A!W`0S9QKQy;}1Cl^CgaH=;G9cpY;r$Q>i*pfB zP2drbID<_#qf;rPZx^FqH)F_D#*k@@q03KywUtLX8Ua?`H+NMzkczFPK3lFz@i_kW%1NOn0|D2I9n9wzH8m|-tHjsw|9>@K=iMBhxvkv6m8Y-l zytQ?X=U+MF$@3 zt`~i=@j|6y)RWMK--}M|=T`o&^Ni>IoWKHEbBXz7?A@mgWoL>!*SXo`SZH-*HSdS+ yn*9;$7;m`l>wYBC5bq;=U}IMqLzqbYCidGC!)_gkIk_C@Uy!y&wkt5C($~2D>~)O*cj@FGjOCM)M>_ixfudOh)?xMu#Fs z#}Y=@YDTwOM)x{K_j*Q;dPdJ?Mz0n|pLRx{4n|)f>SXlmV)XB04CrSJn#dS5nK2lM zrZ9#~WelCp7&e13Y$jvaEXHskn$2V!!DN-nWS__6T*l;H&Fopn?A6HZ-6WRLFP=R` zqG+CE#d4|IbyAI+rJJ`&x9*T`+a=p|0O(+s{UBcyZdkhj=yS1>AirP+0R;mf2uMgM zC}@~JfByORAh4SyRgi&!(cja>F(l*O+nd+@4m$|6K6KDn_&uvCpV23&>G9HJp{xgg zoq1^2_p9@|WEo z*X_Uko@K)qYYv~>43eQGMdbiGbo>E~Q& zrYBH{QP^@Sti!`2)uG{irBBq@y*$B zi#&(U-*=fp74j)RyIw49+0MRPMRU)+a2r*PJ$L5roHt2$UjExCTZSbq%V!HeS7J$N zdG@vOZB4v_lF7Plrx+hxo7(fCV&}fHq)$ literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..d5f1c8d34e7a88e3f88bea192c3a370d44689c3c GIT binary patch literal 1031 zcmeAS@N?(olHy`uVBq!ia0vp^6F``Q8Ax83A=Cw=BuiW)N`mv#O3D+9QW+dm@{>{( zJaZG%Q-e|yQz{EjrrIztFa`(sgt!6~Yi|1%a`XoT0ojZ}lNrNjb9xjc(B0U1_% zz5^97Xt*%oq$rQy4?0GKNfJ44uvxI)gC`h-NZ|&0-7(qS@?b!5r36oQ}zyZrNO3 zMO=Or+<~>+A&uN&E!^Sl+>xE!QC-|oJv`ApDhqC^EWD|@=#J`=d#Xzxs4ah}w&Jnc z$|q_opQ^2TrnVZ0o~wh<3t%W&flvYGe#$xqda2bR_R zvPYgMcHgjZ5nSA^lJr%;<&0do;O^tDDh~=pIxA#coaCY>&N%M2^tq^U%3DB@ynvKo}b?yu-bFc-u0JHzced$sg7S3zqI(2 z#Km{dPr7I=pQ5>FuK#)QwK?Y`E`B?nP+}U)I#c1+FM*1kNvWG|a(TpksZQ3B@sD~b zpQ2)*V*TdwjFOtHvV|;OsiDqHi=6%)o4b!)x$)%9pGTsE z-JL={-Ffv+T87W(Xpooq<`r*VzWQcgBN$$`u}f>-ZQI1BB8ykN*=e4rIsJx9>z}*o zo~|9I;xof literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..4d6372eebdb28e45604e46eeda8dd24651419bc0 GIT binary patch literal 1443 zcmb`G{WsKk6vsdJTdFg%tJav9_E4vzrOaqkWF|A724Nly!y+?N9`YV6wZ}5(X(D_N(?!*n3`|_r0Hc?=PQw&*vnU?QTFY zB_MsH|!j$PP;I}?dppoE_gA(4uc!jV&0!l7_;&p2^pxNo>PEcNJv za5_RT$o2Mf!<+r?&EbHH6nMoTsDOa;mN(wv8RNsHpG)`^ymG-S5By8=l9iVXzN_eG%Xg2@Xeq76tTZ*dGh~Lo9vl;Zfs+W#BydUw zCkZ$o1LqWQO$FC9aKlLl*7x9^0q%0}$OMlp@Kk_jHXOjofdePND+j!A{q!8~Jn+s3 z?~~w@4?egS02}8NuulUA=L~QQfm;MzCGd)XhiftT;+zFO&JVyp2mBww?;QByS_1w! zrQlx%{^cMj0|Bo1FjwY@Q8?Hx0cIPF*@-ZRFpPc#bBw{5@tD(5%sClzIfl8WU~V#u zm5Q;_F!wa$BSpqhN>W@2De?TKWR*!ujY;Yylk_X5#~V!L*Gw~;$%4Q8~Mad z@`-kG?yb$a9cHIApZDVZ^U6Xkp<*4rU82O7%}0jjHlK{id@?-wpN*fCHXyXh(bLt* zPc}H-x0e4E&nQ>y%B-(EL=9}RyC%MyX=upHuFhAk&MLbsF0LP-q`XnH78@fT+pKPW zu72MW`|?8ht^tz$iC}ZwLp4tB;Q49K!QCF3@!iB1qOI=?w z7In!}F~ij(18UYUjnbmC!qKhPo%24?8U1x{7o(+?^Zu0Hx81|FuS?bJ0jgBhEMzf< zCgUq7r2OCB(`XkKcN-TL>u5y#dD6D!)5W?`O5)V^>jb)P)GBdy%t$uUMpf$SNV31$ zb||OojAbvMP?T@$h_ZiFLFVHDmbyMhJF|-_)HX3%m=CDI+ID$0^C>kzxprBW)hw(v zr!Gmda);ICoQyhV_oP5+C%?jcG8v+D@9f?Dk*!BxY}dazmrT@64UrP3hlslANK)bq z$67n83eh}OeW&SV@HG95P|bjfqJ7gw$e+`Hxo!4cx`jdK1bJ>YDSpGKLPZ^1cv$ek zIB?0S<#tX?SJCLWdMd{-ME?$hc7A$zBOdIJ)4!KcAwb=VMov)nK;9z>x~rfT1>dS+ zZ6#`2v@`jgbqq)P22H)Tx2CpmM^o1$B+xT6`(v%5xJ(?j#>Q$+rx_R|7TzDZe{J6q zG1*EcU%tE?!kO%^M;3aM6JN*LAKUVb^xz8-Pxo#jR5(-KBeLJvA@-gxNHx0M-ZJLl z;#JwQoh~9V?`UVo#}{6ka@II>++D@%KqGpMdlQ}?9E*wFcf5(#XQnP$Dk5~%iX^>f z%$y;?M0BLp{O3a(-4A?ewryHrrD%cx#Q^%KY1H zNre$ve+vceSLZcNY4U(RBX&)oZn*Py()h)XkE?PL$!bNb{N5FVI2Y%LKEm%yvpyTP z(1P?z~7YxD~Rf<(a@_y` literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/values-night/styles.xml b/android/app/src/main/res/values-night/styles.xml new file mode 100644 index 0000000..06952be --- /dev/null +++ b/android/app/src/main/res/values-night/styles.xml @@ -0,0 +1,18 @@ + + + + + + + diff --git a/android/app/src/main/res/values/styles.xml b/android/app/src/main/res/values/styles.xml new file mode 100644 index 0000000..cb1ef88 --- /dev/null +++ b/android/app/src/main/res/values/styles.xml @@ -0,0 +1,18 @@ + + + + + + + diff --git a/android/app/src/profile/AndroidManifest.xml b/android/app/src/profile/AndroidManifest.xml new file mode 100644 index 0000000..399f698 --- /dev/null +++ b/android/app/src/profile/AndroidManifest.xml @@ -0,0 +1,7 @@ + + + + diff --git a/android/build.gradle b/android/build.gradle new file mode 100644 index 0000000..d2ffbff --- /dev/null +++ b/android/build.gradle @@ -0,0 +1,18 @@ +allprojects { + repositories { + google() + mavenCentral() + } +} + +rootProject.buildDir = "../build" +subprojects { + project.buildDir = "${rootProject.buildDir}/${project.name}" +} +subprojects { + project.evaluationDependsOn(":app") +} + +tasks.register("clean", Delete) { + delete rootProject.buildDir +} diff --git a/android/gradle.properties b/android/gradle.properties new file mode 100644 index 0000000..2597170 --- /dev/null +++ b/android/gradle.properties @@ -0,0 +1,3 @@ +org.gradle.jvmargs=-Xmx4G -XX:MaxMetaspaceSize=2G -XX:+HeapDumpOnOutOfMemoryError +android.useAndroidX=true +android.enableJetifier=true diff --git a/android/gradle/wrapper/gradle-wrapper.properties b/android/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..7bb2df6 --- /dev/null +++ b/android/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,5 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-8.3-all.zip diff --git a/android/settings.gradle b/android/settings.gradle new file mode 100644 index 0000000..b9e43bd --- /dev/null +++ b/android/settings.gradle @@ -0,0 +1,25 @@ +pluginManagement { + def flutterSdkPath = { + def properties = new Properties() + file("local.properties").withInputStream { properties.load(it) } + def flutterSdkPath = properties.getProperty("flutter.sdk") + assert flutterSdkPath != null, "flutter.sdk not set in local.properties" + return 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.1.0" apply false + id "org.jetbrains.kotlin.android" version "1.8.22" apply false +} + +include ":app" diff --git a/ios/.gitignore b/ios/.gitignore new file mode 100644 index 0000000..7a7f987 --- /dev/null +++ b/ios/.gitignore @@ -0,0 +1,34 @@ +**/dgph +*.mode1v3 +*.mode2v3 +*.moved-aside +*.pbxuser +*.perspectivev3 +**/*sync/ +.sconsign.dblite +.tags* +**/.vagrant/ +**/DerivedData/ +Icon? +**/Pods/ +**/.symlinks/ +profile +xcuserdata +**/.generated/ +Flutter/App.framework +Flutter/Flutter.framework +Flutter/Flutter.podspec +Flutter/Generated.xcconfig +Flutter/ephemeral/ +Flutter/app.flx +Flutter/app.zip +Flutter/flutter_assets/ +Flutter/flutter_export_environment.sh +ServiceDefinitions.json +Runner/GeneratedPluginRegistrant.* + +# Exceptions to above rules. +!default.mode1v3 +!default.mode2v3 +!default.pbxuser +!default.perspectivev3 diff --git a/ios/Flutter/AppFrameworkInfo.plist b/ios/Flutter/AppFrameworkInfo.plist new file mode 100644 index 0000000..7c56964 --- /dev/null +++ b/ios/Flutter/AppFrameworkInfo.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + App + CFBundleIdentifier + io.flutter.flutter.app + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + App + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0 + CFBundleSignature + ???? + CFBundleVersion + 1.0 + MinimumOSVersion + 12.0 + + diff --git a/ios/Flutter/Debug.xcconfig b/ios/Flutter/Debug.xcconfig new file mode 100644 index 0000000..592ceee --- /dev/null +++ b/ios/Flutter/Debug.xcconfig @@ -0,0 +1 @@ +#include "Generated.xcconfig" diff --git a/ios/Flutter/Release.xcconfig b/ios/Flutter/Release.xcconfig new file mode 100644 index 0000000..592ceee --- /dev/null +++ b/ios/Flutter/Release.xcconfig @@ -0,0 +1 @@ +#include "Generated.xcconfig" diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj new file mode 100644 index 0000000..822802a --- /dev/null +++ b/ios/Runner.xcodeproj/project.pbxproj @@ -0,0 +1,616 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 54; + objects = { + +/* Begin PBXBuildFile section */ + 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; }; + 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 331C807B294A618700263BE5 /* RunnerTests.swift */; }; + 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; }; + 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; }; + 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; + 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; + 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + 331C8085294A63A400263BE5 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 97C146E61CF9000F007C117D /* Project object */; + proxyType = 1; + remoteGlobalIDString = 97C146ED1CF9000F007C117D; + remoteInfo = Runner; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXCopyFilesBuildPhase section */ + 9705A1C41CF9048500538489 /* Embed Frameworks */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + ); + name = "Embed Frameworks"; + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = ""; }; + 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = ""; }; + 331C807B294A618700263BE5 /* RunnerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RunnerTests.swift; sourceTree = ""; }; + 331C8081294A63A400263BE5 /* RunnerTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = RunnerTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = ""; }; + 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = ""; }; + 74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = ""; }; + 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = ""; }; + 9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = ""; }; + 97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; }; + 97C146FB1CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; + 97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; + 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; + 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 97C146EB1CF9000F007C117D /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 331C8082294A63A400263BE5 /* RunnerTests */ = { + isa = PBXGroup; + children = ( + 331C807B294A618700263BE5 /* RunnerTests.swift */, + ); + path = RunnerTests; + sourceTree = ""; + }; + 9740EEB11CF90186004384FC /* Flutter */ = { + isa = PBXGroup; + children = ( + 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */, + 9740EEB21CF90195004384FC /* Debug.xcconfig */, + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */, + 9740EEB31CF90195004384FC /* Generated.xcconfig */, + ); + name = Flutter; + sourceTree = ""; + }; + 97C146E51CF9000F007C117D = { + isa = PBXGroup; + children = ( + 9740EEB11CF90186004384FC /* Flutter */, + 97C146F01CF9000F007C117D /* Runner */, + 97C146EF1CF9000F007C117D /* Products */, + 331C8082294A63A400263BE5 /* RunnerTests */, + ); + sourceTree = ""; + }; + 97C146EF1CF9000F007C117D /* Products */ = { + isa = PBXGroup; + children = ( + 97C146EE1CF9000F007C117D /* Runner.app */, + 331C8081294A63A400263BE5 /* RunnerTests.xctest */, + ); + name = Products; + sourceTree = ""; + }; + 97C146F01CF9000F007C117D /* Runner */ = { + isa = PBXGroup; + children = ( + 97C146FA1CF9000F007C117D /* Main.storyboard */, + 97C146FD1CF9000F007C117D /* Assets.xcassets */, + 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */, + 97C147021CF9000F007C117D /* Info.plist */, + 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */, + 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */, + 74858FAE1ED2DC5600515810 /* AppDelegate.swift */, + 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */, + ); + path = Runner; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 331C8080294A63A400263BE5 /* RunnerTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 331C8087294A63A400263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */; + buildPhases = ( + 331C807D294A63A400263BE5 /* Sources */, + 331C807F294A63A400263BE5 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 331C8086294A63A400263BE5 /* PBXTargetDependency */, + ); + name = RunnerTests; + productName = RunnerTests; + productReference = 331C8081294A63A400263BE5 /* RunnerTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; + 97C146ED1CF9000F007C117D /* Runner */ = { + isa = PBXNativeTarget; + buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */; + buildPhases = ( + 9740EEB61CF901F6004384FC /* Run Script */, + 97C146EA1CF9000F007C117D /* Sources */, + 97C146EB1CF9000F007C117D /* Frameworks */, + 97C146EC1CF9000F007C117D /* Resources */, + 9705A1C41CF9048500538489 /* Embed Frameworks */, + 3B06AD1E1E4923F5004D2608 /* Thin Binary */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = Runner; + productName = Runner; + productReference = 97C146EE1CF9000F007C117D /* Runner.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 97C146E61CF9000F007C117D /* Project object */ = { + isa = PBXProject; + attributes = { + BuildIndependentTargetsInParallel = YES; + LastUpgradeCheck = 1510; + ORGANIZATIONNAME = ""; + TargetAttributes = { + 331C8080294A63A400263BE5 = { + CreatedOnToolsVersion = 14.0; + TestTargetID = 97C146ED1CF9000F007C117D; + }; + 97C146ED1CF9000F007C117D = { + CreatedOnToolsVersion = 7.3.1; + LastSwiftMigration = 1100; + }; + }; + }; + buildConfigurationList = 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */; + compatibilityVersion = "Xcode 9.3"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = 97C146E51CF9000F007C117D; + productRefGroup = 97C146EF1CF9000F007C117D /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 97C146ED1CF9000F007C117D /* Runner */, + 331C8080294A63A400263BE5 /* RunnerTests */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 331C807F294A63A400263BE5 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 97C146EC1CF9000F007C117D /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */, + 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */, + 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */, + 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXShellScriptBuildPhase section */ + 3B06AD1E1E4923F5004D2608 /* Thin Binary */ = { + isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + "${TARGET_BUILD_DIR}/${INFOPLIST_PATH}", + ); + name = "Thin Binary"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin"; + }; + 9740EEB61CF901F6004384FC /* Run Script */ = { + isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "Run Script"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build"; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 331C807D294A63A400263BE5 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 97C146EA1CF9000F007C117D /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */, + 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + 331C8086294A63A400263BE5 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 97C146ED1CF9000F007C117D /* Runner */; + targetProxy = 331C8085294A63A400263BE5 /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin PBXVariantGroup section */ + 97C146FA1CF9000F007C117D /* Main.storyboard */ = { + isa = PBXVariantGroup; + children = ( + 97C146FB1CF9000F007C117D /* Base */, + ); + name = Main.storyboard; + sourceTree = ""; + }; + 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */ = { + isa = PBXVariantGroup; + children = ( + 97C147001CF9000F007C117D /* Base */, + ); + name = LaunchScreen.storyboard; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + 249021D3217E4FDB00AE95B9 /* Profile */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = iphoneos; + SUPPORTED_PLATFORMS = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Profile; + }; + 249021D4217E4FDB00AE95B9 /* Profile */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + ENABLE_BITCODE = NO; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.example.mobile; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Profile; + }; + 331C8088294A63A400263BE5 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = com.example.mobile.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; + }; + name = Debug; + }; + 331C8089294A63A400263BE5 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = com.example.mobile.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; + }; + name = Release; + }; + 331C808A294A63A400263BE5 /* Profile */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = com.example.mobile.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; + }; + name = Profile; + }; + 97C147031CF9000F007C117D /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + MTL_ENABLE_DEBUG_INFO = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 97C147041CF9000F007C117D /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = iphoneos; + SUPPORTED_PLATFORMS = iphoneos; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 97C147061CF9000F007C117D /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + ENABLE_BITCODE = NO; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.example.mobile; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Debug; + }; + 97C147071CF9000F007C117D /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + ENABLE_BITCODE = NO; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.example.mobile; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 331C8087294A63A400263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 331C8088294A63A400263BE5 /* Debug */, + 331C8089294A63A400263BE5 /* Release */, + 331C808A294A63A400263BE5 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 97C147031CF9000F007C117D /* Debug */, + 97C147041CF9000F007C117D /* Release */, + 249021D3217E4FDB00AE95B9 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 97C147061CF9000F007C117D /* Debug */, + 97C147071CF9000F007C117D /* Release */, + 249021D4217E4FDB00AE95B9 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 97C146E61CF9000F007C117D /* Project object */; +} diff --git a/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..919434a --- /dev/null +++ b/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 0000000..f9b0d7c --- /dev/null +++ b/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,8 @@ + + + + + PreviewsEnabled + + + diff --git a/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme new file mode 100644 index 0000000..8e3ca5d --- /dev/null +++ b/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -0,0 +1,98 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ios/Runner.xcworkspace/contents.xcworkspacedata b/ios/Runner.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..1d526a1 --- /dev/null +++ b/ios/Runner.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 0000000..f9b0d7c --- /dev/null +++ b/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,8 @@ + + + + + PreviewsEnabled + + + diff --git a/ios/Runner/AppDelegate.swift b/ios/Runner/AppDelegate.swift new file mode 100644 index 0000000..6266644 --- /dev/null +++ b/ios/Runner/AppDelegate.swift @@ -0,0 +1,13 @@ +import Flutter +import UIKit + +@main +@objc class AppDelegate: FlutterAppDelegate { + override func application( + _ application: UIApplication, + didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? + ) -> Bool { + GeneratedPluginRegistrant.register(with: self) + return super.application(application, didFinishLaunchingWithOptions: launchOptions) + } +} diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 0000000..d36b1fa --- /dev/null +++ b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,122 @@ +{ + "images" : [ + { + "size" : "20x20", + "idiom" : "iphone", + "filename" : "Icon-App-20x20@2x.png", + "scale" : "2x" + }, + { + "size" : "20x20", + "idiom" : "iphone", + "filename" : "Icon-App-20x20@3x.png", + "scale" : "3x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@1x.png", + "scale" : "1x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@2x.png", + "scale" : "2x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@3x.png", + "scale" : "3x" + }, + { + "size" : "40x40", + "idiom" : "iphone", + "filename" : "Icon-App-40x40@2x.png", + "scale" : "2x" + }, + { + "size" : "40x40", + "idiom" : "iphone", + "filename" : "Icon-App-40x40@3x.png", + "scale" : "3x" + }, + { + "size" : "60x60", + "idiom" : "iphone", + "filename" : "Icon-App-60x60@2x.png", + "scale" : "2x" + }, + { + "size" : "60x60", + "idiom" : "iphone", + "filename" : "Icon-App-60x60@3x.png", + "scale" : "3x" + }, + { + "size" : "20x20", + "idiom" : "ipad", + "filename" : "Icon-App-20x20@1x.png", + "scale" : "1x" + }, + { + "size" : "20x20", + "idiom" : "ipad", + "filename" : "Icon-App-20x20@2x.png", + "scale" : "2x" + }, + { + "size" : "29x29", + "idiom" : "ipad", + "filename" : "Icon-App-29x29@1x.png", + "scale" : "1x" + }, + { + "size" : "29x29", + "idiom" : "ipad", + "filename" : "Icon-App-29x29@2x.png", + "scale" : "2x" + }, + { + "size" : "40x40", + "idiom" : "ipad", + "filename" : "Icon-App-40x40@1x.png", + "scale" : "1x" + }, + { + "size" : "40x40", + "idiom" : "ipad", + "filename" : "Icon-App-40x40@2x.png", + "scale" : "2x" + }, + { + "size" : "76x76", + "idiom" : "ipad", + "filename" : "Icon-App-76x76@1x.png", + "scale" : "1x" + }, + { + "size" : "76x76", + "idiom" : "ipad", + "filename" : "Icon-App-76x76@2x.png", + "scale" : "2x" + }, + { + "size" : "83.5x83.5", + "idiom" : "ipad", + "filename" : "Icon-App-83.5x83.5@2x.png", + "scale" : "2x" + }, + { + "size" : "1024x1024", + "idiom" : "ios-marketing", + "filename" : "Icon-App-1024x1024@1x.png", + "scale" : "1x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..dc9ada4725e9b0ddb1deab583e5b5102493aa332 GIT binary patch literal 10932 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 literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..797d452e458972bab9d994556c8305db4c827017 GIT binary patch literal 406 zcmV;H0crk;P))>cdjpWt&rLJgVp-t?DREyuq1A%0Z4)6_WsQ7{nzjN zo!X zGXV)2i3kcZIL~_j>uIKPK_zib+3T+Nt3Mb&Br)s)UIaA}@p{wDda>7=Q|mGRp7pqY zkJ!7E{MNz$9nOwoVqpFb)}$IP24Wn2JJ=Cw(!`OXJBr45rP>>AQr$6c7slJWvbpNW z@KTwna6d?PP>hvXCcp=4F;=GR@R4E7{4VU^0p4F>v^#A|>07*qoM6N<$f*5nx ACIA2c literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..6ed2d933e1120817fe9182483a228007b18ab6ae GIT binary patch literal 450 zcmV;z0X_bSP)iGWQ_5NJQ_~rNh*z)}eT%KUb z`7gNk0#AwF^#0T0?hIa^`~Ck;!}#m+_uT050aTR(J!bU#|IzRL%^UsMS#KsYnTF*!YeDOytlP4VhV?b} z%rz_<=#CPc)tU1MZTq~*2=8~iZ!lSa<{9b@2Jl;?IEV8)=fG217*|@)CCYgFze-x? zIFODUIA>nWKpE+bn~n7;-89sa>#DR>TSlqWk*!2hSN6D~Qb#VqbP~4Fk&m`@1$JGr zXPIdeRE&b2Thd#{MtDK$px*d3-Wx``>!oimf%|A-&-q*6KAH)e$3|6JV%HX{Hig)k suLT-RhftRq8b9;(V=235Wa|I=027H2wCDra;{X5v07*qoM6N<$f;9x^2LJ#7 literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..4cd7b0099ca80c806f8fe495613e8d6c69460d76 GIT binary patch literal 282 zcmV+#0p(^bcu7P-R4C8Q z&e;xxFbF_Vrezo%_kH*OKhshZ6BFpG-Y1e10`QXJKbND7AMQ&cMj60B5TNObaZxYybcN07*qoM6N<$g3m;S%K!iX literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..fe730945a01f64a61e2235dbe3f45b08f7729182 GIT binary patch literal 462 zcmV;<0WtoGP)-}iV`2<;=$?g5M=KQbZ{F&YRNy7Nn@%_*5{gvDM0aKI4?ESmw z{NnZg)A0R`+4?NF_RZexyVB&^^ZvN!{I28tr{Vje;QNTz`dG&Jz0~Ek&f2;*Z7>B|cg}xYpxEFY+0YrKLF;^Q+-HreN0P{&i zK~zY`?b7ECf-n?@;d<&orQ*Q7KoR%4|C>{W^h6@&01>0SKS`dn{Q}GT%Qj_{PLZ_& zs`MFI#j-(>?bvdZ!8^xTwlY{qA)T4QLbY@j(!YJ7aXJervHy6HaG_2SB`6CC{He}f zHVw(fJWApwPq!6VY7r1w-Fs)@ox~N+q|w~e;JI~C4Vf^@d>Wvj=fl`^u9x9wd9 zR%3*Q+)t%S!MU_`id^@&Y{y7-r98lZX0?YrHlfmwb?#}^1b{8g&KzmkE(L>Z&)179 zp<)v6Y}pRl100G2FL_t(o!|l{-Q-VMg#&MKg7c{O0 z2wJImOS3Gy*Z2Qifdv~JYOp;v+U)a|nLoc7hNH;I$;lzDt$}rkaFw1mYK5_0Q(Sut zvbEloxON7$+HSOgC9Z8ltuC&0OSF!-mXv5caV>#bc3@hBPX@I$58-z}(ZZE!t-aOG zpjNkbau@>yEzH(5Yj4kZiMH32XI!4~gVXNnjAvRx;Sdg^`>2DpUEwoMhTs_st8pKG z(%SHyHdU&v%f36~uERh!bd`!T2dw;z6PrOTQ7Vt*#9F2uHlUVnb#ev_o^fh}Dzmq} zWtlk35}k=?xj28uO|5>>$yXadTUE@@IPpgH`gJ~Ro4>jd1IF|(+IX>8M4Ps{PNvmI zNj4D+XgN83gPt_Gm}`Ybv{;+&yu-C(Grdiahmo~BjG-l&mWM+{e5M1sm&=xduwgM9 z`8OEh`=F3r`^E{n_;%9weN{cf2%7=VzC@cYj+lg>+3|D|_1C@{hcU(DyQG_BvBWe? zvTv``=%b1zrol#=R`JB)>cdjpWt&rLJgVp-t?DREyuq1A%0Z4)6_WsQ7{nzjN zo!X zGXV)2i3kcZIL~_j>uIKPK_zib+3T+Nt3Mb&Br)s)UIaA}@p{wDda>7=Q|mGRp7pqY zkJ!7E{MNz$9nOwoVqpFb)}$IP24Wn2JJ=Cw(!`OXJBr45rP>>AQr$6c7slJWvbpNW z@KTwna6d?PP>hvXCcp=4F;=GR@R4E7{4VU^0p4F>v^#A|>07*qoM6N<$f*5nx ACIA2c literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..502f463a9bc882b461c96aadf492d1729e49e725 GIT binary patch literal 586 zcmV-Q0=4~#P)+}#`wDE{8-2Mebf5<{{PqV{TgVcv*r8?UZ3{-|G?_}T*&y;@cqf{ z{Q*~+qr%%p!1pS*_Uicl#q9lc(D`!D`LN62sNwq{oYw(Wmhk)k<@f$!$@ng~_5)Ru z0Z)trIA5^j{DIW^c+vT2%lW+2<(RtE2wR;4O@)Tm`Xr*?A(qYoM}7i5Yxw>D(&6ou zxz!_Xr~yNF+waPe00049Nkl*;a!v6h%{rlvIH#gW3s8p;bFr=l}mRqpW2h zw=OA%hdyL~z+UHOzl0eKhEr$YYOL-c-%Y<)=j?(bzDweB7{b+%_ypvm_cG{SvM=DK zhv{K@m>#Bw>2W$eUI#iU)Wdgs8Y3U+A$Gd&{+j)d)BmGKx+43U_!tik_YlN)>$7G! zhkE!s;%oku3;IwG3U^2kw?z+HM)jB{@zFhK8P#KMSytSthr+4!c(5c%+^UBn`0X*2 zy3(k600_CSZj?O$Qu%&$;|TGUJrptR(HzyIx>5E(2r{eA(<6t3e3I0B)7d6s7?Z5J zZ!rtKvA{MiEBm&KFtoifx>5P^Z=vl)95XJn()aS5%ad(s?4-=Tkis9IGu{`Fy8r+H07*qoM6N<$f20Z)wqMt%V?S?~D#06};F zA3KcL`Wb+>5ObvgQIG&ig8(;V04hz?@cqy3{mSh8o!|U|)cI!1_+!fWH@o*8vh^CU z^ws0;(c$gI+2~q^tO#GDHf@=;DncUw00J^eL_t(&-tE|HQ`%4vfZ;WsBqu-$0nu1R zq^Vj;p$clf^?twn|KHO+IGt^q#a3X?w9dXC@*yxhv&l}F322(8Y1&=P&I}~G@#h6; z1CV9ecD9ZEe87{{NtI*)_aJ<`kJa z?5=RBtFF50s;jQLFil-`)m2wrb=6h(&brpj%nG_U&ut~$?8Rokzxi8zJoWr#2dto5 zOX_URcc<1`Iky+jc;A%Vzx}1QU{2$|cKPom2Vf1{8m`vja4{F>HS?^Nc^rp}xo+Nh zxd}eOm`fm3@MQC1< zIk&aCjb~Yh%5+Yq0`)D;q{#-Uqlv*o+Oor zE!I71Z@ASH3grl8&P^L0WpavHoP|UX4e?!igT`4?AZk$hu*@%6WJ;zDOGlw7kj@ zY5!B-0ft0f?Lgb>C;$Ke07*qoM6N<$f~t1N9smFU literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..0ec303439225b78712f49115768196d8d76f6790 GIT binary patch literal 862 zcmV-k1EKthP)20Z)wqMt%V?S?~D#06};F zA3KcL`Wb+>5ObvgQIG&ig8(;V04hz?@cqy3{mSh8o!|U|)cI!1_+!fWH@o*8vh^CU z^ws0;(c$gI+2~q^tO#GDHf@=;DncUw00J^eL_t(&-tE|HQ`%4vfZ;WsBqu-$0nu1R zq^Vj;p$clf^?twn|KHO+IGt^q#a3X?w9dXC@*yxhv&l}F322(8Y1&=P&I}~G@#h6; z1CV9ecD9ZEe87{{NtI*)_aJ<`kJa z?5=RBtFF50s;jQLFil-`)m2wrb=6h(&brpj%nG_U&ut~$?8Rokzxi8zJoWr#2dto5 zOX_URcc<1`Iky+jc;A%Vzx}1QU{2$|cKPom2Vf1{8m`vja4{F>HS?^Nc^rp}xo+Nh zxd}eOm`fm3@MQC1< zIk&aCjb~Yh%5+Yq0`)D;q{#-Uqlv*o+Oor zE!I71Z@ASH3grl8&P^L0WpavHoP|UX4e?!igT`4?AZk$hu*@%6WJ;zDOGlw7kj@ zY5!B-0ft0f?Lgb>C;$Ke07*qoM6N<$f~t1N9smFU literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..e9f5fea27c705180eb716271f41b582e76dcbd90 GIT binary patch literal 1674 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 literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..0467bf12aa4d28f374bb26596605a46dcbb3e7c8 GIT binary patch literal 1418 zcmV;51$Fv~P)q zKfU)WzW*n(@|xWGCA9ScMt*e9`2kdxPQ&&>|-UCa7_51w+ zLUsW@ZzZSW0y$)Hp~e9%PvP|a03ks1`~K?q{u;6NC8*{AOqIUq{CL&;p56Lf$oQGq z^={4hPQv)y=I|4n+?>7Fim=dxt1 z2H+Dm+1+fh+IF>G0SjJMkQQre1x4|G*Z==(Ot&kCnUrL4I(rf(ucITwmuHf^hXiJT zkdTm&kdTm&kdTm&kdP`esgWG0BcWCVkVZ&2dUwN`cgM8QJb`Z7Z~e<&Yj2(}>Tmf` zm1{eLgw!b{bXkjWbF%dTkTZEJWyWOb##Lfw4EK2}<0d6%>AGS{po>WCOy&f$Tay_> z?NBlkpo@s-O;0V%Y_Xa-G#_O08q5LR*~F%&)}{}r&L%Sbs8AS4t7Y0NEx*{soY=0MZExqA5XHQkqi#4gW3 zqODM^iyZl;dvf)-bOXtOru(s)Uc7~BFx{w-FK;2{`VA?(g&@3z&bfLFyctOH!cVsF z7IL=fo-qBndRUm;kAdXR4e6>k-z|21AaN%ubeVrHl*<|s&Ax@W-t?LR(P-24A5=>a z*R9#QvjzF8n%@1Nw@?CG@6(%>+-0ASK~jEmCV|&a*7-GKT72W<(TbSjf)&Eme6nGE z>Gkj4Sq&2e+-G%|+NM8OOm5zVl9{Z8Dd8A5z3y8mZ=4Bv4%>as_{9cN#bm~;h>62( zdqY93Zy}v&c4n($Vv!UybR8ocs7#zbfX1IY-*w~)p}XyZ-SFC~4w>BvMVr`dFbelV{lLL0bx7@*ZZdebr3`sP;? zVImji)kG)(6Juv0lz@q`F!k1FE;CQ(D0iG$wchPbKZQELlsZ#~rt8#90Y_Xh&3U-< z{s<&cCV_1`^TD^ia9!*mQDq& zn2{r`j};V|uV%_wsP!zB?m%;FeaRe+X47K0e+KE!8C{gAWF8)lCd1u1%~|M!XNRvw zvtqy3iz0WSpWdhn6$hP8PaRBmp)q`#PCA`Vd#Tc$@f1tAcM>f_I@bC)hkI9|o(Iqv zo}Piadq!j76}004RBio<`)70k^`K1NK)q>w?p^C6J2ZC!+UppiK6&y3Kmbv&O!oYF z34$0Z;QO!JOY#!`qyGH<3Pd}Pt@q*A0V=3SVtWKRR8d8Z&@)3qLPA19LPA19LPEUC YUoZo%k(ykuW&i*H07*qoM6N<$f+CH{y8r+H literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json b/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json new file mode 100644 index 0000000..0bedcf2 --- /dev/null +++ b/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "idiom" : "universal", + "filename" : "LaunchImage.png", + "scale" : "1x" + }, + { + "idiom" : "universal", + "filename" : "LaunchImage@2x.png", + "scale" : "2x" + }, + { + "idiom" : "universal", + "filename" : "LaunchImage@3x.png", + "scale" : "3x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} diff --git a/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png b/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png new file mode 100644 index 0000000000000000000000000000000000000000..9da19eacad3b03bb08bbddbbf4ac48dd78b3d838 GIT binary patch literal 68 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx0wlM}@Gt=>Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png b/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..9da19eacad3b03bb08bbddbbf4ac48dd78b3d838 GIT binary patch literal 68 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx0wlM}@Gt=>Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png b/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..9da19eacad3b03bb08bbddbbf4ac48dd78b3d838 GIT binary patch literal 68 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx0wlM}@Gt=>Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md b/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md new file mode 100644 index 0000000..89c2725 --- /dev/null +++ b/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md @@ -0,0 +1,5 @@ +# Launch Screen Assets + +You can customize the launch screen with your own desired assets by replacing the image files in this directory. + +You can also do it by opening your Flutter project's Xcode project with `open ios/Runner.xcworkspace`, selecting `Runner/Assets.xcassets` in the Project Navigator and dropping in the desired images. \ No newline at end of file diff --git a/ios/Runner/Base.lproj/LaunchScreen.storyboard b/ios/Runner/Base.lproj/LaunchScreen.storyboard new file mode 100644 index 0000000..f2e259c --- /dev/null +++ b/ios/Runner/Base.lproj/LaunchScreen.storyboard @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ios/Runner/Base.lproj/Main.storyboard b/ios/Runner/Base.lproj/Main.storyboard new file mode 100644 index 0000000..f3c2851 --- /dev/null +++ b/ios/Runner/Base.lproj/Main.storyboard @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ios/Runner/Info.plist b/ios/Runner/Info.plist new file mode 100644 index 0000000..43427ad --- /dev/null +++ b/ios/Runner/Info.plist @@ -0,0 +1,49 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleDisplayName + Mobile + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + mobile + CFBundlePackageType + APPL + CFBundleShortVersionString + $(FLUTTER_BUILD_NAME) + CFBundleSignature + ???? + CFBundleVersion + $(FLUTTER_BUILD_NUMBER) + LSRequiresIPhoneOS + + UILaunchStoryboardName + LaunchScreen + UIMainStoryboardFile + Main + UISupportedInterfaceOrientations + + UIInterfaceOrientationPortrait + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + UISupportedInterfaceOrientations~ipad + + UIInterfaceOrientationPortrait + UIInterfaceOrientationPortraitUpsideDown + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + CADisableMinimumFrameDurationOnPhone + + UIApplicationSupportsIndirectInputEvents + + + diff --git a/ios/Runner/Runner-Bridging-Header.h b/ios/Runner/Runner-Bridging-Header.h new file mode 100644 index 0000000..308a2a5 --- /dev/null +++ b/ios/Runner/Runner-Bridging-Header.h @@ -0,0 +1 @@ +#import "GeneratedPluginRegistrant.h" diff --git a/ios/RunnerTests/RunnerTests.swift b/ios/RunnerTests/RunnerTests.swift new file mode 100644 index 0000000..86a7c3b --- /dev/null +++ b/ios/RunnerTests/RunnerTests.swift @@ -0,0 +1,12 @@ +import Flutter +import UIKit +import XCTest + +class RunnerTests: XCTestCase { + + func testExample() { + // If you add code to the Runner application, consider adding tests here. + // See https://developer.apple.com/documentation/xctest for more information about using XCTest. + } + +} diff --git a/lib/main.dart b/lib/main.dart new file mode 100644 index 0000000..8e94089 --- /dev/null +++ b/lib/main.dart @@ -0,0 +1,125 @@ +import 'package:flutter/material.dart'; + +void main() { + runApp(const MyApp()); +} + +class MyApp extends StatelessWidget { + const MyApp({super.key}); + + // This widget is the root of your application. + @override + Widget build(BuildContext context) { + return MaterialApp( + title: 'Flutter Demo', + theme: ThemeData( + // This is the theme of your application. + // + // TRY THIS: Try running your application with "flutter run". You'll see + // the application has a purple toolbar. Then, without quitting the app, + // try changing the seedColor in the colorScheme below to Colors.green + // and then invoke "hot reload" (save your changes or press the "hot + // reload" button in a Flutter-supported IDE, or press "r" if you used + // the command line to start the app). + // + // Notice that the counter didn't reset back to zero; the application + // state is not lost during the reload. To reset the state, use hot + // restart instead. + // + // This works for code too, not just values: Most code changes can be + // tested with just a hot reload. + colorScheme: ColorScheme.fromSeed(seedColor: Colors.deepPurple), + useMaterial3: true, + ), + home: const MyHomePage(title: 'Flutter Demo Home Page'), + ); + } +} + +class MyHomePage extends StatefulWidget { + const MyHomePage({super.key, required this.title}); + + // This widget is the home page of your application. It is stateful, meaning + // that it has a State object (defined below) that contains fields that affect + // how it looks. + + // This class is the configuration for the state. It holds the values (in this + // case the title) provided by the parent (in this case the App widget) and + // used by the build method of the State. Fields in a Widget subclass are + // always marked "final". + + final String title; + + @override + State createState() => _MyHomePageState(); +} + +class _MyHomePageState extends State { + int _counter = 0; + + void _incrementCounter() { + setState(() { + // This call to setState tells the Flutter framework that something has + // changed in this State, which causes it to rerun the build method below + // so that the display can reflect the updated values. If we changed + // _counter without calling setState(), then the build method would not be + // called again, and so nothing would appear to happen. + _counter++; + }); + } + + @override + Widget build(BuildContext context) { + // This method is rerun every time setState is called, for instance as done + // by the _incrementCounter method above. + // + // The Flutter framework has been optimized to make rerunning build methods + // fast, so that you can just rebuild anything that needs updating rather + // than having to individually change instances of widgets. + return Scaffold( + appBar: AppBar( + // TRY THIS: Try changing the color here to a specific color (to + // Colors.amber, perhaps?) and trigger a hot reload to see the AppBar + // change color while the other colors stay the same. + backgroundColor: Theme.of(context).colorScheme.inversePrimary, + // Here we take the value from the MyHomePage object that was created by + // the App.build method, and use it to set our appbar title. + title: Text(widget.title), + ), + body: Center( + // Center is a layout widget. It takes a single child and positions it + // in the middle of the parent. + child: Column( + // Column is also a layout widget. It takes a list of children and + // arranges them vertically. By default, it sizes itself to fit its + // children horizontally, and tries to be as tall as its parent. + // + // Column has various properties to control how it sizes itself and + // how it positions its children. Here we use mainAxisAlignment to + // center the children vertically; the main axis here is the vertical + // axis because Columns are vertical (the cross axis would be + // horizontal). + // + // TRY THIS: Invoke "debug painting" (choose the "Toggle Debug Paint" + // action in the IDE, or press "p" in the console), to see the + // wireframe for each widget. + mainAxisAlignment: MainAxisAlignment.center, + children: [ + const Text( + 'You have pushed the button this many times:', + ), + Text( + '$_counter', + style: Theme.of(context).textTheme.headlineMedium, + ), + ], + ), + ), + floatingActionButton: FloatingActionButton( + onPressed: _incrementCounter, + tooltip: 'Increment', + child: const Icon(Icons.add), + ), // This trailing comma makes auto-formatting nicer for build methods. + ); + } +} diff --git a/mobile/.gitignore b/mobile/.gitignore new file mode 100644 index 0000000..3a83c2f --- /dev/null +++ b/mobile/.gitignore @@ -0,0 +1,27 @@ +# See https://www.dartlang.org/guides/libraries/private-files + +# Files and directories created by pub +.dart_tool/ +.packages +build/ +# If you're building an application, you may want to check-in your pubspec.lock +pubspec.lock + +# Directory created by dartdoc +# If you don't generate documentation locally you can remove this line. +doc/api/ + +# dotenv environment variables file +.env* + +# Avoid committing generated Javascript files: +*.dart.js +*.info.json # Produced by the --dump-info flag. +*.js # When generated by dart2js. Don't specify *.js if your + # project includes source files written in JavaScript. +*.js_ +*.js.deps +*.js.map + +.flutter-plugins +.flutter-plugins-dependencies diff --git a/pubspec.lock b/pubspec.lock new file mode 100644 index 0000000..b9fd799 --- /dev/null +++ b/pubspec.lock @@ -0,0 +1,213 @@ +# Generated by pub +# See https://dart.dev/tools/pub/glossary#lockfile +packages: + async: + dependency: transitive + description: + name: async + sha256: "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c" + url: "https://pub.dev" + source: hosted + version: "2.11.0" + boolean_selector: + dependency: transitive + description: + name: boolean_selector + sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66" + url: "https://pub.dev" + source: hosted + version: "2.1.1" + characters: + dependency: transitive + description: + name: characters + sha256: "04a925763edad70e8443c99234dc3328f442e811f1d8fd1a72f1c8ad0f69a605" + url: "https://pub.dev" + source: hosted + version: "1.3.0" + clock: + dependency: transitive + description: + name: clock + sha256: cb6d7f03e1de671e34607e909a7213e31d7752be4fb66a86d29fe1eb14bfb5cf + url: "https://pub.dev" + source: hosted + version: "1.1.1" + collection: + dependency: transitive + description: + name: collection + sha256: ee67cb0715911d28db6bf4af1026078bd6f0128b07a5f66fb2ed94ec6783c09a + url: "https://pub.dev" + source: hosted + version: "1.18.0" + cupertino_icons: + dependency: "direct main" + description: + name: cupertino_icons + sha256: ba631d1c7f7bef6b729a622b7b752645a2d076dba9976925b8f25725a30e1ee6 + url: "https://pub.dev" + source: hosted + version: "1.0.8" + fake_async: + dependency: transitive + description: + name: fake_async + sha256: "511392330127add0b769b75a987850d136345d9227c6b94c96a04cf4a391bf78" + url: "https://pub.dev" + source: hosted + version: "1.3.1" + flutter: + dependency: "direct main" + description: flutter + source: sdk + version: "0.0.0" + flutter_lints: + dependency: "direct dev" + description: + name: flutter_lints + sha256: "3f41d009ba7172d5ff9be5f6e6e6abb4300e263aab8866d2a0842ed2a70f8f0c" + url: "https://pub.dev" + source: hosted + version: "4.0.0" + flutter_test: + dependency: "direct dev" + description: flutter + source: sdk + version: "0.0.0" + leak_tracker: + dependency: transitive + description: + name: leak_tracker + sha256: "3f87a60e8c63aecc975dda1ceedbc8f24de75f09e4856ea27daf8958f2f0ce05" + url: "https://pub.dev" + source: hosted + version: "10.0.5" + leak_tracker_flutter_testing: + dependency: transitive + description: + name: leak_tracker_flutter_testing + sha256: "932549fb305594d82d7183ecd9fa93463e9914e1b67cacc34bc40906594a1806" + url: "https://pub.dev" + source: hosted + version: "3.0.5" + leak_tracker_testing: + dependency: transitive + description: + name: leak_tracker_testing + sha256: "6ba465d5d76e67ddf503e1161d1f4a6bc42306f9d66ca1e8f079a47290fb06d3" + url: "https://pub.dev" + source: hosted + version: "3.0.1" + lints: + dependency: transitive + description: + name: lints + sha256: "976c774dd944a42e83e2467f4cc670daef7eed6295b10b36ae8c85bcbf828235" + url: "https://pub.dev" + source: hosted + version: "4.0.0" + matcher: + dependency: transitive + description: + name: matcher + sha256: d2323aa2060500f906aa31a895b4030b6da3ebdcc5619d14ce1aada65cd161cb + url: "https://pub.dev" + source: hosted + version: "0.12.16+1" + material_color_utilities: + dependency: transitive + description: + name: material_color_utilities + sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec + url: "https://pub.dev" + source: hosted + version: "0.11.1" + meta: + dependency: transitive + description: + name: meta + sha256: bdb68674043280c3428e9ec998512fb681678676b3c54e773629ffe74419f8c7 + url: "https://pub.dev" + source: hosted + version: "1.15.0" + path: + dependency: transitive + description: + name: path + sha256: "087ce49c3f0dc39180befefc60fdb4acd8f8620e5682fe2476afd0b3688bb4af" + url: "https://pub.dev" + source: hosted + version: "1.9.0" + sky_engine: + dependency: transitive + description: flutter + source: sdk + version: "0.0.99" + source_span: + dependency: transitive + description: + name: source_span + sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c" + url: "https://pub.dev" + source: hosted + version: "1.10.0" + stack_trace: + dependency: transitive + description: + name: stack_trace + sha256: "73713990125a6d93122541237550ee3352a2d84baad52d375a4cad2eb9b7ce0b" + url: "https://pub.dev" + source: hosted + version: "1.11.1" + stream_channel: + dependency: transitive + description: + name: stream_channel + sha256: ba2aa5d8cc609d96bbb2899c28934f9e1af5cddbd60a827822ea467161eb54e7 + url: "https://pub.dev" + source: hosted + version: "2.1.2" + string_scanner: + dependency: transitive + description: + name: string_scanner + sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde" + url: "https://pub.dev" + source: hosted + version: "1.2.0" + term_glyph: + dependency: transitive + description: + name: term_glyph + sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84 + url: "https://pub.dev" + source: hosted + version: "1.2.1" + test_api: + dependency: transitive + description: + name: test_api + sha256: "5b8a98dafc4d5c4c9c72d8b31ab2b23fc13422348d2997120294d3bac86b4ddb" + url: "https://pub.dev" + source: hosted + version: "0.7.2" + vector_math: + dependency: transitive + description: + name: vector_math + sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + vm_service: + dependency: transitive + description: + name: vm_service + sha256: "5c5f338a667b4c644744b661f309fb8080bb94b18a7e91ef1dbd343bed00ed6d" + url: "https://pub.dev" + source: hosted + version: "14.2.5" +sdks: + dart: ">=3.5.3 <4.0.0" + flutter: ">=3.18.0-18.0.pre.54" diff --git a/pubspec.yaml b/pubspec.yaml new file mode 100644 index 0000000..73181ab --- /dev/null +++ b/pubspec.yaml @@ -0,0 +1,90 @@ +name: mobile +description: "A new Flutter project." +# The following line prevents the package from being accidentally published to +# pub.dev using `flutter pub publish`. This is preferred for private packages. +publish_to: 'none' # Remove this line if you wish to publish to pub.dev + +# The following defines the version and build number for your application. +# A version number is three numbers separated by dots, like 1.2.43 +# followed by an optional build number separated by a +. +# Both the version and the builder number may be overridden in flutter +# build by specifying --build-name and --build-number, respectively. +# In Android, build-name is used as versionName while build-number used as versionCode. +# Read more about Android versioning at https://developer.android.com/studio/publish/versioning +# In iOS, build-name is used as CFBundleShortVersionString while build-number is used as CFBundleVersion. +# Read more about iOS versioning at +# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html +# In Windows, build-name is used as the major, minor, and patch parts +# of the product and file versions while build-number is used as the build suffix. +version: 1.0.0+1 + +environment: + sdk: ^3.5.3 + +# Dependencies specify other packages that your package needs in order to work. +# To automatically upgrade your package dependencies to the latest versions +# consider running `flutter pub upgrade --major-versions`. Alternatively, +# dependencies can be manually updated by changing the version numbers below to +# the latest version available on pub.dev. To see which dependencies have newer +# versions available, run `flutter pub outdated`. +dependencies: + flutter: + sdk: flutter + + + # The following adds the Cupertino Icons font to your application. + # Use with the CupertinoIcons class for iOS style icons. + cupertino_icons: ^1.0.8 + +dev_dependencies: + flutter_test: + sdk: flutter + + # The "flutter_lints" package below contains a set of recommended lints to + # encourage good coding practices. The lint set provided by the package is + # activated in the `analysis_options.yaml` file located at the root of your + # package. See that file for information about deactivating specific lint + # rules and activating additional ones. + flutter_lints: ^4.0.0 + +# For information on the generic Dart part of this file, see the +# following page: https://dart.dev/tools/pub/pubspec + +# The following section is specific to Flutter packages. +flutter: + + # The following line ensures that the Material Icons font is + # included with your application, so that you can use the icons in + # the material Icons class. + uses-material-design: true + + # To add assets to your application, add an assets section, like this: + # assets: + # - images/a_dot_burr.jpeg + # - images/a_dot_ham.jpeg + + # An image asset can refer to one or more resolution-specific "variants", see + # https://flutter.dev/to/resolution-aware-images + + # For details regarding adding assets from package dependencies, see + # https://flutter.dev/to/asset-from-package + + # To add custom fonts to your application, add a fonts section here, + # in this "flutter" section. Each entry in this list should have a + # "family" key with the font family name, and a "fonts" key with a + # list giving the asset and other descriptors for the font. For + # example: + # fonts: + # - family: Schyler + # fonts: + # - asset: fonts/Schyler-Regular.ttf + # - asset: fonts/Schyler-Italic.ttf + # style: italic + # - family: Trajan Pro + # fonts: + # - asset: fonts/TrajanPro.ttf + # - asset: fonts/TrajanPro_Bold.ttf + # weight: 700 + # + # For details regarding fonts from package dependencies, + # see https://flutter.dev/to/font-from-package diff --git a/test/widget_test.dart b/test/widget_test.dart new file mode 100644 index 0000000..a6b7d51 --- /dev/null +++ b/test/widget_test.dart @@ -0,0 +1,30 @@ +// This is a basic Flutter widget test. +// +// To perform an interaction with a widget in your test, use the WidgetTester +// utility in the flutter_test package. For example, you can send tap and scroll +// gestures. You can also use WidgetTester to find child widgets in the widget +// tree, read text, and verify that the values of widget properties are correct. + +import 'package:flutter/material.dart'; +import 'package:flutter_test/flutter_test.dart'; + +import 'package:mobile/main.dart'; + +void main() { + testWidgets('Counter increments smoke test', (WidgetTester tester) async { + // Build our app and trigger a frame. + await tester.pumpWidget(const MyApp()); + + // Verify that our counter starts at 0. + expect(find.text('0'), findsOneWidget); + expect(find.text('1'), findsNothing); + + // Tap the '+' icon and trigger a frame. + await tester.tap(find.byIcon(Icons.add)); + await tester.pump(); + + // Verify that our counter has incremented. + expect(find.text('0'), findsNothing); + expect(find.text('1'), findsOneWidget); + }); +} From 998fd8301621baf240436002e4fca5b5938b2437 Mon Sep 17 00:00:00 2001 From: lucasverdelho Date: Tue, 1 Oct 2024 12:19:51 +0100 Subject: [PATCH 03/66] Remove old directory --- mobile/.gitignore | 27 --------------------------- 1 file changed, 27 deletions(-) delete mode 100644 mobile/.gitignore diff --git a/mobile/.gitignore b/mobile/.gitignore deleted file mode 100644 index 3a83c2f..0000000 --- a/mobile/.gitignore +++ /dev/null @@ -1,27 +0,0 @@ -# See https://www.dartlang.org/guides/libraries/private-files - -# Files and directories created by pub -.dart_tool/ -.packages -build/ -# If you're building an application, you may want to check-in your pubspec.lock -pubspec.lock - -# Directory created by dartdoc -# If you don't generate documentation locally you can remove this line. -doc/api/ - -# dotenv environment variables file -.env* - -# Avoid committing generated Javascript files: -*.dart.js -*.info.json # Produced by the --dump-info flag. -*.js # When generated by dart2js. Don't specify *.js if your - # project includes source files written in JavaScript. -*.js_ -*.js.deps -*.js.map - -.flutter-plugins -.flutter-plugins-dependencies From 93a4e605b30fc7363eb7500e0323ce399e780946 Mon Sep 17 00:00:00 2001 From: lucasverdelho Date: Tue, 1 Oct 2024 23:17:35 +0100 Subject: [PATCH 04/66] Basic Gallery Viewer with android permissions working, loading depends on scroll which is not ideal --- lib/gallery_page.dart | 145 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 145 insertions(+) create mode 100644 lib/gallery_page.dart diff --git a/lib/gallery_page.dart b/lib/gallery_page.dart new file mode 100644 index 0000000..51a17f4 --- /dev/null +++ b/lib/gallery_page.dart @@ -0,0 +1,145 @@ +import 'dart:io'; +import 'dart:typed_data'; + +import 'package:flutter/material.dart'; +import 'package:photo_manager/photo_manager.dart'; +import 'package:permission_handler/permission_handler.dart'; +import 'package:device_info_plus/device_info_plus.dart'; + + +class GalleryPage extends StatefulWidget { + const GalleryPage({super.key}); + + @override + _GalleryPageState createState() => _GalleryPageState(); +} + +class _GalleryPageState extends State { + List _assets = []; + int _currentPage = 0; + final int _pageSize = 20; + bool _isLoading = false; + bool _hasMore = true; + String _errorMessage = ""; + + @override + void initState() { + super.initState(); + _loadAssets(); + } + + Future _loadAssets() async { + if (_isLoading || !_hasMore) return; + + setState(() { + _isLoading = true; + _errorMessage = ""; + }); + + + if (Platform.isAndroid){ + final androidInfo = await DeviceInfoPlugin().androidInfo; + final androidVersion = int.parse(androidInfo.version.release); + + if (androidVersion >= 13) { + if (await Permission.photos.isDenied || await Permission.videos.isDenied ) { + setState(() { + _isLoading = false; + _hasMore = false; + _errorMessage = "Permission denied. Access to the storage is needed to display your gallery."; + }); + await [ + Permission.photos, + Permission.videos, + ].request(); + } + } + else { + if ( await Permission.storage.isDenied ) { + setState(() { + _isLoading = false; + _hasMore = false; + _errorMessage = "Permission denied. Access to the storage is needed to display your gallery."; + }); + await Permission.storage.request(); + } + } + } + + // #TODO: Automatic loading + + final List paths = await PhotoManager.getAssetPathList( + type: RequestType.image, + ); + + if (paths.isNotEmpty) { + final List newAssets = await paths[0].getAssetListPaged( + page: _currentPage, + size: _pageSize, + ); + + setState(() { + if (newAssets.length < _pageSize) { + _hasMore = false; + } + _assets.addAll(newAssets); + _isLoading = false; + _currentPage++; + }); + } else { + setState(() { + _isLoading = false; + _hasMore = false; + _errorMessage = "No images found in your gallery."; + }); + } + } + + @override + Widget build(BuildContext context) { + return NotificationListener( + onNotification: (ScrollNotification scrollInfo) { + if (!_isLoading && scrollInfo.metrics.pixels == scrollInfo.metrics.maxScrollExtent) { + _loadAssets(); + } + return false; + }, + child: _errorMessage.isNotEmpty + ? Center(child: Text(_errorMessage)) + : GridView.builder( + padding: const EdgeInsets.all(8.0), + gridDelegate: const SliverGridDelegateWithFixedCrossAxisCount( + crossAxisCount: 4, + crossAxisSpacing: 4.0, + mainAxisSpacing: 4.0, + ), + itemCount: _assets.length + (_hasMore ? 1 : 0), + itemBuilder: (context, index) { + if (index == _assets.length) { + return const Center(child: CircularProgressIndicator()); + } + + return FutureBuilder( + future: _assets[index].thumbnailData, + builder: (context, snapshot) { + if (snapshot.connectionState == ConnectionState.done && snapshot.data != null) { + return Container( + decoration: BoxDecoration( + image: DecorationImage( + image: MemoryImage(snapshot.data!), + fit: BoxFit.cover, + ), + borderRadius: BorderRadius.circular(8.0), + ), + ); + } + return Container( + color: Colors.grey, + ); + }, + ); + }, + ), + ); + } +} From e944fc507b10512e5e05ac538b2ec49cbb7767e8 Mon Sep 17 00:00:00 2001 From: lucasverdelho Date: Tue, 1 Oct 2024 23:18:56 +0100 Subject: [PATCH 05/66] Added basic navigation bar defaulting on gallery view --- lib/home_page.dart | 62 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 lib/home_page.dart diff --git a/lib/home_page.dart b/lib/home_page.dart new file mode 100644 index 0000000..93f0d00 --- /dev/null +++ b/lib/home_page.dart @@ -0,0 +1,62 @@ +import 'package:flutter/material.dart'; +import 'gallery_page.dart'; + +class HomePage extends StatefulWidget { + const HomePage({super.key}); + + @override + _HomePageState createState() => _HomePageState(); +} + +class _HomePageState extends State { + int _currentIndex = 0; + + final List _pages = [ + GalleryPage(), + const Center(child: Text('Albums Page')), + const Center(child: Text('Search Page')), + const Center(child: Text('Profile Page')), + const Center(child: Text('Settings Page')), + ]; + + @override + Widget build(BuildContext context) { + return Scaffold( + body: _pages[_currentIndex], + bottomNavigationBar: BottomNavigationBar( + currentIndex: _currentIndex, + onTap: (index) { + setState(() { + _currentIndex = index; + }); + }, + items: [ + const BottomNavigationBarItem( + icon: Icon(Icons.photo), + label: 'Gallery', + ), + const BottomNavigationBarItem( + icon: Icon(Icons.photo_album), + label: 'Albums', + ), + const BottomNavigationBarItem( + icon: Icon(Icons.search), + label: 'Search', + ), + const BottomNavigationBarItem( + icon: Icon(Icons.person), + label: 'Profile', + ), + const BottomNavigationBarItem( + icon: Icon(Icons.settings), + label: 'Settings', + ), + ], + selectedItemColor: Colors.deepPurpleAccent.shade700, + unselectedItemColor: Colors.grey, + ), + ); + } +} + + From 94192e997a826a9c2d38a1f9d7b6f387d19c5034 Mon Sep 17 00:00:00 2001 From: lucasverdelho Date: Tue, 1 Oct 2024 23:19:28 +0100 Subject: [PATCH 06/66] Basic App working, for now theme is material light --- lib/main.dart | 115 +++----------------------------------------------- 1 file changed, 6 insertions(+), 109 deletions(-) diff --git a/lib/main.dart b/lib/main.dart index 8e94089..437e3fc 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -1,125 +1,22 @@ import 'package:flutter/material.dart'; +import 'home_page.dart'; void main() { - runApp(const MyApp()); + runApp(MyApp()); } class MyApp extends StatelessWidget { const MyApp({super.key}); - // This widget is the root of your application. @override Widget build(BuildContext context) { return MaterialApp( - title: 'Flutter Demo', + debugShowCheckedModeBanner: false, + title: 'ChronoLens', theme: ThemeData( - // This is the theme of your application. - // - // TRY THIS: Try running your application with "flutter run". You'll see - // the application has a purple toolbar. Then, without quitting the app, - // try changing the seedColor in the colorScheme below to Colors.green - // and then invoke "hot reload" (save your changes or press the "hot - // reload" button in a Flutter-supported IDE, or press "r" if you used - // the command line to start the app). - // - // Notice that the counter didn't reset back to zero; the application - // state is not lost during the reload. To reset the state, use hot - // restart instead. - // - // This works for code too, not just values: Most code changes can be - // tested with just a hot reload. - colorScheme: ColorScheme.fromSeed(seedColor: Colors.deepPurple), - useMaterial3: true, + primarySwatch: Colors.deepPurple, ), - home: const MyHomePage(title: 'Flutter Demo Home Page'), - ); - } -} - -class MyHomePage extends StatefulWidget { - const MyHomePage({super.key, required this.title}); - - // This widget is the home page of your application. It is stateful, meaning - // that it has a State object (defined below) that contains fields that affect - // how it looks. - - // This class is the configuration for the state. It holds the values (in this - // case the title) provided by the parent (in this case the App widget) and - // used by the build method of the State. Fields in a Widget subclass are - // always marked "final". - - final String title; - - @override - State createState() => _MyHomePageState(); -} - -class _MyHomePageState extends State { - int _counter = 0; - - void _incrementCounter() { - setState(() { - // This call to setState tells the Flutter framework that something has - // changed in this State, which causes it to rerun the build method below - // so that the display can reflect the updated values. If we changed - // _counter without calling setState(), then the build method would not be - // called again, and so nothing would appear to happen. - _counter++; - }); - } - - @override - Widget build(BuildContext context) { - // This method is rerun every time setState is called, for instance as done - // by the _incrementCounter method above. - // - // The Flutter framework has been optimized to make rerunning build methods - // fast, so that you can just rebuild anything that needs updating rather - // than having to individually change instances of widgets. - return Scaffold( - appBar: AppBar( - // TRY THIS: Try changing the color here to a specific color (to - // Colors.amber, perhaps?) and trigger a hot reload to see the AppBar - // change color while the other colors stay the same. - backgroundColor: Theme.of(context).colorScheme.inversePrimary, - // Here we take the value from the MyHomePage object that was created by - // the App.build method, and use it to set our appbar title. - title: Text(widget.title), - ), - body: Center( - // Center is a layout widget. It takes a single child and positions it - // in the middle of the parent. - child: Column( - // Column is also a layout widget. It takes a list of children and - // arranges them vertically. By default, it sizes itself to fit its - // children horizontally, and tries to be as tall as its parent. - // - // Column has various properties to control how it sizes itself and - // how it positions its children. Here we use mainAxisAlignment to - // center the children vertically; the main axis here is the vertical - // axis because Columns are vertical (the cross axis would be - // horizontal). - // - // TRY THIS: Invoke "debug painting" (choose the "Toggle Debug Paint" - // action in the IDE, or press "p" in the console), to see the - // wireframe for each widget. - mainAxisAlignment: MainAxisAlignment.center, - children: [ - const Text( - 'You have pushed the button this many times:', - ), - Text( - '$_counter', - style: Theme.of(context).textTheme.headlineMedium, - ), - ], - ), - ), - floatingActionButton: FloatingActionButton( - onPressed: _incrementCounter, - tooltip: 'Increment', - child: const Icon(Icons.add), - ), // This trailing comma makes auto-formatting nicer for build methods. + home: HomePage(), ); } } From 596815a7b93ea87331f1cc89b242800aed061691 Mon Sep 17 00:00:00 2001 From: lucasverdelho Date: Tue, 1 Oct 2024 23:20:58 +0100 Subject: [PATCH 07/66] Added required media permissions per android version --- android/app/src/main/AndroidManifest.xml | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml index ef5beb7..7fa4666 100644 --- a/android/app/src/main/AndroidManifest.xml +++ b/android/app/src/main/AndroidManifest.xml @@ -1,4 +1,17 @@ + + + + + + + + + + + + Date: Tue, 1 Oct 2024 23:21:48 +0100 Subject: [PATCH 08/66] Added basic gallery view dependencies --- pubspec.yaml | 77 ++++++---------------------------------------------- 1 file changed, 8 insertions(+), 69 deletions(-) diff --git a/pubspec.yaml b/pubspec.yaml index 73181ab..f47b83f 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -1,90 +1,29 @@ name: mobile description: "A new Flutter project." -# The following line prevents the package from being accidentally published to -# pub.dev using `flutter pub publish`. This is preferred for private packages. -publish_to: 'none' # Remove this line if you wish to publish to pub.dev -# The following defines the version and build number for your application. -# A version number is three numbers separated by dots, like 1.2.43 -# followed by an optional build number separated by a +. -# Both the version and the builder number may be overridden in flutter -# build by specifying --build-name and --build-number, respectively. -# In Android, build-name is used as versionName while build-number used as versionCode. -# Read more about Android versioning at https://developer.android.com/studio/publish/versioning -# In iOS, build-name is used as CFBundleShortVersionString while build-number is used as CFBundleVersion. -# Read more about iOS versioning at -# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html -# In Windows, build-name is used as the major, minor, and patch parts -# of the product and file versions while build-number is used as the build suffix. +publish_to: 'none' + + version: 1.0.0+1 environment: sdk: ^3.5.3 -# Dependencies specify other packages that your package needs in order to work. -# To automatically upgrade your package dependencies to the latest versions -# consider running `flutter pub upgrade --major-versions`. Alternatively, -# dependencies can be manually updated by changing the version numbers below to -# the latest version available on pub.dev. To see which dependencies have newer -# versions available, run `flutter pub outdated`. + dependencies: flutter: sdk: flutter - - # The following adds the Cupertino Icons font to your application. - # Use with the CupertinoIcons class for iOS style icons. cupertino_icons: ^1.0.8 + permission_handler: ^11.3.1 + photo_manager: ^3.5.0 + device_info_plus: ^10.1.2 dev_dependencies: flutter_test: sdk: flutter - # The "flutter_lints" package below contains a set of recommended lints to - # encourage good coding practices. The lint set provided by the package is - # activated in the `analysis_options.yaml` file located at the root of your - # package. See that file for information about deactivating specific lint - # rules and activating additional ones. - flutter_lints: ^4.0.0 - -# For information on the generic Dart part of this file, see the -# following page: https://dart.dev/tools/pub/pubspec + flutter_lints: ^5.0.0 -# The following section is specific to Flutter packages. flutter: - - # The following line ensures that the Material Icons font is - # included with your application, so that you can use the icons in - # the material Icons class. uses-material-design: true - - # To add assets to your application, add an assets section, like this: - # assets: - # - images/a_dot_burr.jpeg - # - images/a_dot_ham.jpeg - - # An image asset can refer to one or more resolution-specific "variants", see - # https://flutter.dev/to/resolution-aware-images - - # For details regarding adding assets from package dependencies, see - # https://flutter.dev/to/asset-from-package - - # To add custom fonts to your application, add a fonts section here, - # in this "flutter" section. Each entry in this list should have a - # "family" key with the font family name, and a "fonts" key with a - # list giving the asset and other descriptors for the font. For - # example: - # fonts: - # - family: Schyler - # fonts: - # - asset: fonts/Schyler-Regular.ttf - # - asset: fonts/Schyler-Italic.ttf - # style: italic - # - family: Trajan Pro - # fonts: - # - asset: fonts/TrajanPro.ttf - # - asset: fonts/TrajanPro_Bold.ttf - # weight: 700 - # - # For details regarding fonts from package dependencies, - # see https://flutter.dev/to/font-from-package From 92bcb483c19902139fc0d50cc3be7149b3f566c4 Mon Sep 17 00:00:00 2001 From: DBarbosa15987 Date: Tue, 1 Oct 2024 23:56:46 +0100 Subject: [PATCH 09/66] grpc protocol definition and generation grpc api calls --- .gitmodules | 4 + lib/grpc_gen/chronolens.pb.dart | 132 ++++++++++++++++++++++++++++ lib/grpc_gen/chronolens.pbenum.dart | 11 +++ lib/grpc_gen/chronolens.pbgrpc.dart | 59 +++++++++++++ lib/grpc_gen/chronolens.pbjson.dart | 41 +++++++++ lib/services/login_service.dart | 47 ++++++++++ proto | 1 + 7 files changed, 295 insertions(+) create mode 100644 .gitmodules create mode 100644 lib/grpc_gen/chronolens.pb.dart create mode 100644 lib/grpc_gen/chronolens.pbenum.dart create mode 100644 lib/grpc_gen/chronolens.pbgrpc.dart create mode 100644 lib/grpc_gen/chronolens.pbjson.dart create mode 100644 lib/services/login_service.dart create mode 160000 proto diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..93ffdc6 --- /dev/null +++ b/.gitmodules @@ -0,0 +1,4 @@ +[submodule "proto"] + path = proto + url = ssh://git@github.com/chronolens/gateway-protocol + branch = main diff --git a/lib/grpc_gen/chronolens.pb.dart b/lib/grpc_gen/chronolens.pb.dart new file mode 100644 index 0000000..56faebe --- /dev/null +++ b/lib/grpc_gen/chronolens.pb.dart @@ -0,0 +1,132 @@ +// +// Generated code. Do not modify. +// source: chronolens.proto +// +// @dart = 2.12 + +// ignore_for_file: annotate_overrides, camel_case_types, comment_references +// ignore_for_file: constant_identifier_names, library_prefixes +// ignore_for_file: non_constant_identifier_names, prefer_final_fields +// ignore_for_file: unnecessary_import, unnecessary_this, unused_import + +import 'dart:core' as $core; + +import 'package:protobuf/protobuf.dart' as $pb; + +class LoginRequest extends $pb.GeneratedMessage { + factory LoginRequest({ + $core.String? username, + $core.String? password, + }) { + final $result = create(); + if (username != null) { + $result.username = username; + } + if (password != null) { + $result.password = password; + } + return $result; + } + LoginRequest._() : super(); + factory LoginRequest.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory LoginRequest.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + + static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'LoginRequest', package: const $pb.PackageName(_omitMessageNames ? '' : 'chronolens'), createEmptyInstance: create) + ..aOS(1, _omitFieldNames ? '' : 'username') + ..aOS(2, _omitFieldNames ? '' : 'password') + ..hasRequiredFields = false + ; + + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + LoginRequest clone() => LoginRequest()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + LoginRequest copyWith(void Function(LoginRequest) updates) => super.copyWith((message) => updates(message as LoginRequest)) as LoginRequest; + + $pb.BuilderInfo get info_ => _i; + + @$core.pragma('dart2js:noInline') + static LoginRequest create() => LoginRequest._(); + LoginRequest createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static LoginRequest getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static LoginRequest? _defaultInstance; + + @$pb.TagNumber(1) + $core.String get username => $_getSZ(0); + @$pb.TagNumber(1) + set username($core.String v) { $_setString(0, v); } + @$pb.TagNumber(1) + $core.bool hasUsername() => $_has(0); + @$pb.TagNumber(1) + void clearUsername() => clearField(1); + + @$pb.TagNumber(2) + $core.String get password => $_getSZ(1); + @$pb.TagNumber(2) + set password($core.String v) { $_setString(1, v); } + @$pb.TagNumber(2) + $core.bool hasPassword() => $_has(1); + @$pb.TagNumber(2) + void clearPassword() => clearField(2); +} + +class LoginResponse extends $pb.GeneratedMessage { + factory LoginResponse({ + $core.String? token, + }) { + final $result = create(); + if (token != null) { + $result.token = token; + } + return $result; + } + LoginResponse._() : super(); + factory LoginResponse.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory LoginResponse.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + + static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'LoginResponse', package: const $pb.PackageName(_omitMessageNames ? '' : 'chronolens'), createEmptyInstance: create) + ..aOS(1, _omitFieldNames ? '' : 'token') + ..hasRequiredFields = false + ; + + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + LoginResponse clone() => LoginResponse()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + LoginResponse copyWith(void Function(LoginResponse) updates) => super.copyWith((message) => updates(message as LoginResponse)) as LoginResponse; + + $pb.BuilderInfo get info_ => _i; + + @$core.pragma('dart2js:noInline') + static LoginResponse create() => LoginResponse._(); + LoginResponse createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static LoginResponse getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static LoginResponse? _defaultInstance; + + @$pb.TagNumber(1) + $core.String get token => $_getSZ(0); + @$pb.TagNumber(1) + set token($core.String v) { $_setString(0, v); } + @$pb.TagNumber(1) + $core.bool hasToken() => $_has(0); + @$pb.TagNumber(1) + void clearToken() => clearField(1); +} + + +const _omitFieldNames = $core.bool.fromEnvironment('protobuf.omit_field_names'); +const _omitMessageNames = $core.bool.fromEnvironment('protobuf.omit_message_names'); diff --git a/lib/grpc_gen/chronolens.pbenum.dart b/lib/grpc_gen/chronolens.pbenum.dart new file mode 100644 index 0000000..8a2be9b --- /dev/null +++ b/lib/grpc_gen/chronolens.pbenum.dart @@ -0,0 +1,11 @@ +// +// Generated code. Do not modify. +// source: chronolens.proto +// +// @dart = 2.12 + +// ignore_for_file: annotate_overrides, camel_case_types, comment_references +// ignore_for_file: constant_identifier_names, library_prefixes +// ignore_for_file: non_constant_identifier_names, prefer_final_fields +// ignore_for_file: unnecessary_import, unnecessary_this, unused_import + diff --git a/lib/grpc_gen/chronolens.pbgrpc.dart b/lib/grpc_gen/chronolens.pbgrpc.dart new file mode 100644 index 0000000..8d0aeb4 --- /dev/null +++ b/lib/grpc_gen/chronolens.pbgrpc.dart @@ -0,0 +1,59 @@ +// +// Generated code. Do not modify. +// source: chronolens.proto +// +// @dart = 2.12 + +// ignore_for_file: annotate_overrides, camel_case_types, comment_references +// ignore_for_file: constant_identifier_names, library_prefixes +// ignore_for_file: non_constant_identifier_names, prefer_final_fields +// ignore_for_file: unnecessary_import, unnecessary_this, unused_import + +import 'dart:async' as $async; +import 'dart:core' as $core; + +import 'package:grpc/service_api.dart' as $grpc; +import 'package:protobuf/protobuf.dart' as $pb; + +import 'chronolens.pb.dart' as $0; + +export 'chronolens.pb.dart'; + +@$pb.GrpcServiceName('chronolens.ChronoLens') +class ChronoLensClient extends $grpc.Client { + static final _$login = $grpc.ClientMethod<$0.LoginRequest, $0.LoginResponse>( + '/chronolens.ChronoLens/Login', + ($0.LoginRequest value) => value.writeToBuffer(), + ($core.List<$core.int> value) => $0.LoginResponse.fromBuffer(value)); + + ChronoLensClient($grpc.ClientChannel channel, + {$grpc.CallOptions? options, + $core.Iterable<$grpc.ClientInterceptor>? interceptors}) + : super(channel, options: options, + interceptors: interceptors); + + $grpc.ResponseFuture<$0.LoginResponse> login($0.LoginRequest request, {$grpc.CallOptions? options}) { + return $createUnaryCall(_$login, request, options: options); + } +} + +@$pb.GrpcServiceName('chronolens.ChronoLens') +abstract class ChronoLensServiceBase extends $grpc.Service { + $core.String get $name => 'chronolens.ChronoLens'; + + ChronoLensServiceBase() { + $addMethod($grpc.ServiceMethod<$0.LoginRequest, $0.LoginResponse>( + 'Login', + login_Pre, + false, + false, + ($core.List<$core.int> value) => $0.LoginRequest.fromBuffer(value), + ($0.LoginResponse value) => value.writeToBuffer())); + } + + $async.Future<$0.LoginResponse> login_Pre($grpc.ServiceCall call, $async.Future<$0.LoginRequest> request) async { + return login(call, await request); + } + + $async.Future<$0.LoginResponse> login($grpc.ServiceCall call, $0.LoginRequest request); +} diff --git a/lib/grpc_gen/chronolens.pbjson.dart b/lib/grpc_gen/chronolens.pbjson.dart new file mode 100644 index 0000000..cb80b52 --- /dev/null +++ b/lib/grpc_gen/chronolens.pbjson.dart @@ -0,0 +1,41 @@ +// +// Generated code. Do not modify. +// source: chronolens.proto +// +// @dart = 2.12 + +// ignore_for_file: annotate_overrides, camel_case_types, comment_references +// ignore_for_file: constant_identifier_names, library_prefixes +// ignore_for_file: non_constant_identifier_names, prefer_final_fields +// ignore_for_file: unnecessary_import, unnecessary_this, unused_import + +import 'dart:convert' as $convert; +import 'dart:core' as $core; +import 'dart:typed_data' as $typed_data; + +@$core.Deprecated('Use loginRequestDescriptor instead') +const LoginRequest$json = { + '1': 'LoginRequest', + '2': [ + {'1': 'username', '3': 1, '4': 1, '5': 9, '10': 'username'}, + {'1': 'password', '3': 2, '4': 1, '5': 9, '10': 'password'}, + ], +}; + +/// Descriptor for `LoginRequest`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List loginRequestDescriptor = $convert.base64Decode( + 'CgxMb2dpblJlcXVlc3QSGgoIdXNlcm5hbWUYASABKAlSCHVzZXJuYW1lEhoKCHBhc3N3b3JkGA' + 'IgASgJUghwYXNzd29yZA=='); + +@$core.Deprecated('Use loginResponseDescriptor instead') +const LoginResponse$json = { + '1': 'LoginResponse', + '2': [ + {'1': 'token', '3': 1, '4': 1, '5': 9, '10': 'token'}, + ], +}; + +/// Descriptor for `LoginResponse`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List loginResponseDescriptor = $convert.base64Decode( + 'Cg1Mb2dpblJlc3BvbnNlEhQKBXRva2VuGAEgASgJUgV0b2tlbg=='); + diff --git a/lib/services/login_service.dart b/lib/services/login_service.dart new file mode 100644 index 0000000..0842419 --- /dev/null +++ b/lib/services/login_service.dart @@ -0,0 +1,47 @@ +import 'package:grpc/grpc.dart'; +import 'package:mobile/grpc_gen/chronolens.pb.dart'; +import '../grpc_gen/chronolens.pbgrpc.dart'; // Import your generated gRPC code + +class LoginServiceClient { + late ClientChannel channel; + late ChronoLensClient stub; + + LoginServiceClient() { + // Initialize gRPC channel + channel = ClientChannel( + '10.0.0.10', // The IP or hostname of the gRPC server + port: 50051, // The port on which the gRPC server is running + options: const ChannelOptions( + credentials: ChannelCredentials + .insecure(), // Use secure credentials in production + ), + ); + + // Create stub from generated gRPC code + stub = ChronoLensClient(channel); + } + + // Function to get photo by ID + Future login(String username, String password) async { + try { + // Create a GetPhotoRequest with the provided id + final request = LoginRequest() + ..username = username + ..password = password; + + // Call the gRPC method and get the response + final response = await stub.login(request); + + // Return the photo URL from the response + return response; + } catch (e) { + print('Error logging in: $e'); + return null; + } + } + + // Gracefully close the channel when no longer needed + Future shutdown() async { + await channel.shutdown(); + } +} diff --git a/proto b/proto new file mode 160000 index 0000000..27e30e7 --- /dev/null +++ b/proto @@ -0,0 +1 @@ +Subproject commit 27e30e7faa00569583b7420427a97e7968a4d103 From 1d730c153ec4d97033839f861d92291df499add3 Mon Sep 17 00:00:00 2001 From: DBarbosa15987 Date: Tue, 1 Oct 2024 23:58:31 +0100 Subject: [PATCH 10/66] login page prototype, not tested and not styled --- lib/screens/login.dart | 92 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 92 insertions(+) create mode 100644 lib/screens/login.dart diff --git a/lib/screens/login.dart b/lib/screens/login.dart new file mode 100644 index 0000000..1466450 --- /dev/null +++ b/lib/screens/login.dart @@ -0,0 +1,92 @@ +import 'package:flutter/material.dart'; +import '../services/login_service.dart'; + +class LoginPage extends StatefulWidget { + LoginPage({super.key}); + + @override + State createState() => _LoginPageState(); +} + +class _LoginPageState extends State { + final loginServiceClient = LoginServiceClient(); + + String username = ""; + String password = ""; + bool isPasswordVisible = false; + bool wrongCredentials = false; + + @override + Widget build(BuildContext context) { + void showErrorDialog(BuildContext context, String message) { + showDialog( + context: context, + builder: (BuildContext context) { + return AlertDialog( + title: const Text("Error"), + content: Text(message), + actions: [ + TextButton( + child: const Text("OK"), + onPressed: () { + Navigator.of(context).pop(); + }, + ), + ], + ); + }, + ); + } + + void login(String username, String password) async { + final response = await loginServiceClient.login(username, password); + print(response); + if (response == null) { + print("Not OK"); + showErrorDialog(context, "bruh"); + } else { + print("OK"); + } + } + + Widget buildPassword() => TextField( + onChanged: (value) => setState(() => password = value), + decoration: InputDecoration( + labelText: 'Password', + //errorText: 'Password is wrong', + suffixIcon: IconButton( + icon: isPasswordVisible + ? const Icon(Icons.visibility_off) + : const Icon(Icons.visibility), + onPressed: () => + setState(() => isPasswordVisible = !isPasswordVisible), + ), + border: OutlineInputBorder(), + ), + obscureText: !isPasswordVisible, + ); + + Widget buildUsername() => TextField( + onChanged: (value) => setState(() => username = value), + decoration: const InputDecoration( + labelText: 'Username', + border: OutlineInputBorder(), + ), + ); + + Widget submitCredentials() => TextButton( + onPressed: () => {login(username, password),print("")}, child: const Text("Log In"),); + + return Scaffold( + body: Padding( + padding: const EdgeInsets.all(16), + child: Column(children: [ + buildUsername(), + buildPassword(), + submitCredentials() + ]), + ), + floatingActionButton: + FloatingActionButton(onPressed: () => {})); + } +} From e12e52a10471a55d17b2b5c55b6f55d7420824a7 Mon Sep 17 00:00:00 2001 From: DBarbosa15987 Date: Wed, 2 Oct 2024 00:04:46 +0100 Subject: [PATCH 11/66] dependency update --- build.yaml | 32 ++++++++++++++++++++++++++++++++ pubspec.yaml | 5 +++++ 2 files changed, 37 insertions(+) create mode 100644 build.yaml diff --git a/build.yaml b/build.yaml new file mode 100644 index 0000000..67ca20d --- /dev/null +++ b/build.yaml @@ -0,0 +1,32 @@ +targets: + $default: + sources: + - proto/** + builders: + protoc_builder: + options: + # The version of the Protobuf compiler to use. + # (Default: "3.19.1", make sure to use quotation marks) + protobuf_version: "3.19.1" + # The version of the Dart protoc_plugin package to use. + # (Default: "20.0.1", make sure to use quotation marks) + protoc_plugin_version: "20.0.1" + # Directory which is treated as the root of all Protobuf files. + # (Default: "proto/") + root_dir: "proto/" + # Include paths given to the Protobuf compiler during compilation. + # (Default: ["proto/"]) + proto_paths: + - "proto/" + # The root directory for generated Dart output files. + # (Default: "lib/src/proto") + out_dir: "lib/grpc_gen" + # Enable the gRPC flag for the Dart protoc plugin to generate `.pbgrpc.dart` files. + # (Default: false) + grpc: true + # Use the "protoc" command that's available on the PATH instead of downloading one + # (Default: false) + use_installed_protoc: false + # Whether or not the protoc_plugin Dart scripts should be precompiled for better performance. + # (Default: true) + precompile_protoc_plugin: true \ No newline at end of file diff --git a/pubspec.yaml b/pubspec.yaml index 73181ab..2312ef9 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -30,6 +30,8 @@ environment: dependencies: flutter: sdk: flutter + grpc: ^3.0.0 + protobuf: ^3.0.0 # The following adds the Cupertino Icons font to your application. @@ -39,6 +41,9 @@ dependencies: dev_dependencies: flutter_test: sdk: flutter + build_runner: ^2.4.12 + protoc_builder: ^0.4.1 + build: ^2.4.1 # The "flutter_lints" package below contains a set of recommended lints to # encourage good coding practices. The lint set provided by the package is From 83a789ddfa271ecb7948f24c558067617c0606e1 Mon Sep 17 00:00:00 2001 From: DBarbosa15987 Date: Wed, 2 Oct 2024 11:49:06 +0100 Subject: [PATCH 12/66] main.dart --- lib/main.dart | 113 +++----------------------------------------------- 1 file changed, 5 insertions(+), 108 deletions(-) diff --git a/lib/main.dart b/lib/main.dart index 8e94089..5790d6b 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -1,4 +1,5 @@ import 'package:flutter/material.dart'; +import 'package:mobile/screens/login.dart'; void main() { runApp(const MyApp()); @@ -7,119 +8,15 @@ void main() { class MyApp extends StatelessWidget { const MyApp({super.key}); - // This widget is the root of your application. @override Widget build(BuildContext context) { return MaterialApp( - title: 'Flutter Demo', + debugShowCheckedModeBanner: false, + title: 'ChronoLens', theme: ThemeData( - // This is the theme of your application. - // - // TRY THIS: Try running your application with "flutter run". You'll see - // the application has a purple toolbar. Then, without quitting the app, - // try changing the seedColor in the colorScheme below to Colors.green - // and then invoke "hot reload" (save your changes or press the "hot - // reload" button in a Flutter-supported IDE, or press "r" if you used - // the command line to start the app). - // - // Notice that the counter didn't reset back to zero; the application - // state is not lost during the reload. To reset the state, use hot - // restart instead. - // - // This works for code too, not just values: Most code changes can be - // tested with just a hot reload. - colorScheme: ColorScheme.fromSeed(seedColor: Colors.deepPurple), - useMaterial3: true, + primarySwatch: Colors.deepPurple, ), - home: const MyHomePage(title: 'Flutter Demo Home Page'), - ); - } -} - -class MyHomePage extends StatefulWidget { - const MyHomePage({super.key, required this.title}); - - // This widget is the home page of your application. It is stateful, meaning - // that it has a State object (defined below) that contains fields that affect - // how it looks. - - // This class is the configuration for the state. It holds the values (in this - // case the title) provided by the parent (in this case the App widget) and - // used by the build method of the State. Fields in a Widget subclass are - // always marked "final". - - final String title; - - @override - State createState() => _MyHomePageState(); -} - -class _MyHomePageState extends State { - int _counter = 0; - - void _incrementCounter() { - setState(() { - // This call to setState tells the Flutter framework that something has - // changed in this State, which causes it to rerun the build method below - // so that the display can reflect the updated values. If we changed - // _counter without calling setState(), then the build method would not be - // called again, and so nothing would appear to happen. - _counter++; - }); - } - - @override - Widget build(BuildContext context) { - // This method is rerun every time setState is called, for instance as done - // by the _incrementCounter method above. - // - // The Flutter framework has been optimized to make rerunning build methods - // fast, so that you can just rebuild anything that needs updating rather - // than having to individually change instances of widgets. - return Scaffold( - appBar: AppBar( - // TRY THIS: Try changing the color here to a specific color (to - // Colors.amber, perhaps?) and trigger a hot reload to see the AppBar - // change color while the other colors stay the same. - backgroundColor: Theme.of(context).colorScheme.inversePrimary, - // Here we take the value from the MyHomePage object that was created by - // the App.build method, and use it to set our appbar title. - title: Text(widget.title), - ), - body: Center( - // Center is a layout widget. It takes a single child and positions it - // in the middle of the parent. - child: Column( - // Column is also a layout widget. It takes a list of children and - // arranges them vertically. By default, it sizes itself to fit its - // children horizontally, and tries to be as tall as its parent. - // - // Column has various properties to control how it sizes itself and - // how it positions its children. Here we use mainAxisAlignment to - // center the children vertically; the main axis here is the vertical - // axis because Columns are vertical (the cross axis would be - // horizontal). - // - // TRY THIS: Invoke "debug painting" (choose the "Toggle Debug Paint" - // action in the IDE, or press "p" in the console), to see the - // wireframe for each widget. - mainAxisAlignment: MainAxisAlignment.center, - children: [ - const Text( - 'You have pushed the button this many times:', - ), - Text( - '$_counter', - style: Theme.of(context).textTheme.headlineMedium, - ), - ], - ), - ), - floatingActionButton: FloatingActionButton( - onPressed: _incrementCounter, - tooltip: 'Increment', - child: const Icon(Icons.add), - ), // This trailing comma makes auto-formatting nicer for build methods. + home: LoginPage(), ); } } From 2273ad3ea48bc73075c9fd73879cd84be80387f0 Mon Sep 17 00:00:00 2001 From: DBarbosa15987 Date: Wed, 2 Oct 2024 19:25:20 +0100 Subject: [PATCH 13/66] Login done, with error messages and navigation to home page --- lib/grpc_gen/chronolens.pb.dart | 61 ++++++++++++----------------- lib/grpc_gen/chronolens.pbenum.dart | 8 +--- lib/grpc_gen/chronolens.pbgrpc.dart | 26 +++++------- lib/grpc_gen/chronolens.pbjson.dart | 34 ++++++---------- lib/main.dart | 4 +- lib/screens/home.dart | 10 +++++ lib/screens/login.dart | 38 +++++++++++++----- lib/utils/route_generator.dart | 33 ++++++++++++++++ 8 files changed, 122 insertions(+), 92 deletions(-) create mode 100644 lib/screens/home.dart create mode 100644 lib/utils/route_generator.dart diff --git a/lib/grpc_gen/chronolens.pb.dart b/lib/grpc_gen/chronolens.pb.dart index 56faebe..104e0c2 100644 --- a/lib/grpc_gen/chronolens.pb.dart +++ b/lib/grpc_gen/chronolens.pb.dart @@ -1,42 +1,37 @@ -// +/// // Generated code. Do not modify. // source: chronolens.proto // // @dart = 2.12 - -// ignore_for_file: annotate_overrides, camel_case_types, comment_references -// ignore_for_file: constant_identifier_names, library_prefixes -// ignore_for_file: non_constant_identifier_names, prefer_final_fields -// ignore_for_file: unnecessary_import, unnecessary_this, unused_import +// ignore_for_file: annotate_overrides,camel_case_types,constant_identifier_names,directives_ordering,library_prefixes,non_constant_identifier_names,prefer_final_fields,return_of_invalid_type,unnecessary_const,unnecessary_import,unnecessary_this,unused_import,unused_shown_name import 'dart:core' as $core; import 'package:protobuf/protobuf.dart' as $pb; class LoginRequest extends $pb.GeneratedMessage { + static final $pb.BuilderInfo _i = $pb.BuilderInfo(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'LoginRequest', package: const $pb.PackageName(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'chronolens'), createEmptyInstance: create) + ..aOS(1, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'username') + ..aOS(2, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'password') + ..hasRequiredFields = false + ; + + LoginRequest._() : super(); factory LoginRequest({ $core.String? username, $core.String? password, }) { - final $result = create(); + final _result = create(); if (username != null) { - $result.username = username; + _result.username = username; } if (password != null) { - $result.password = password; + _result.password = password; } - return $result; + return _result; } - LoginRequest._() : super(); factory LoginRequest.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); factory LoginRequest.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); - - static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'LoginRequest', package: const $pb.PackageName(_omitMessageNames ? '' : 'chronolens'), createEmptyInstance: create) - ..aOS(1, _omitFieldNames ? '' : 'username') - ..aOS(2, _omitFieldNames ? '' : 'password') - ..hasRequiredFields = false - ; - @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' @@ -46,10 +41,8 @@ class LoginRequest extends $pb.GeneratedMessage { 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version') - LoginRequest copyWith(void Function(LoginRequest) updates) => super.copyWith((message) => updates(message as LoginRequest)) as LoginRequest; - + LoginRequest copyWith(void Function(LoginRequest) updates) => super.copyWith((message) => updates(message as LoginRequest)) as LoginRequest; // ignore: deprecated_member_use $pb.BuilderInfo get info_ => _i; - @$core.pragma('dart2js:noInline') static LoginRequest create() => LoginRequest._(); LoginRequest createEmptyInstance() => create(); @@ -78,24 +71,23 @@ class LoginRequest extends $pb.GeneratedMessage { } class LoginResponse extends $pb.GeneratedMessage { + static final $pb.BuilderInfo _i = $pb.BuilderInfo(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'LoginResponse', package: const $pb.PackageName(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'chronolens'), createEmptyInstance: create) + ..aOS(1, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'token') + ..hasRequiredFields = false + ; + + LoginResponse._() : super(); factory LoginResponse({ $core.String? token, }) { - final $result = create(); + final _result = create(); if (token != null) { - $result.token = token; + _result.token = token; } - return $result; + return _result; } - LoginResponse._() : super(); factory LoginResponse.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); factory LoginResponse.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); - - static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'LoginResponse', package: const $pb.PackageName(_omitMessageNames ? '' : 'chronolens'), createEmptyInstance: create) - ..aOS(1, _omitFieldNames ? '' : 'token') - ..hasRequiredFields = false - ; - @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' @@ -105,10 +97,8 @@ class LoginResponse extends $pb.GeneratedMessage { 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version') - LoginResponse copyWith(void Function(LoginResponse) updates) => super.copyWith((message) => updates(message as LoginResponse)) as LoginResponse; - + LoginResponse copyWith(void Function(LoginResponse) updates) => super.copyWith((message) => updates(message as LoginResponse)) as LoginResponse; // ignore: deprecated_member_use $pb.BuilderInfo get info_ => _i; - @$core.pragma('dart2js:noInline') static LoginResponse create() => LoginResponse._(); LoginResponse createEmptyInstance() => create(); @@ -127,6 +117,3 @@ class LoginResponse extends $pb.GeneratedMessage { void clearToken() => clearField(1); } - -const _omitFieldNames = $core.bool.fromEnvironment('protobuf.omit_field_names'); -const _omitMessageNames = $core.bool.fromEnvironment('protobuf.omit_message_names'); diff --git a/lib/grpc_gen/chronolens.pbenum.dart b/lib/grpc_gen/chronolens.pbenum.dart index 8a2be9b..ee564e9 100644 --- a/lib/grpc_gen/chronolens.pbenum.dart +++ b/lib/grpc_gen/chronolens.pbenum.dart @@ -1,11 +1,7 @@ -// +/// // Generated code. Do not modify. // source: chronolens.proto // // @dart = 2.12 - -// ignore_for_file: annotate_overrides, camel_case_types, comment_references -// ignore_for_file: constant_identifier_names, library_prefixes -// ignore_for_file: non_constant_identifier_names, prefer_final_fields -// ignore_for_file: unnecessary_import, unnecessary_this, unused_import +// ignore_for_file: annotate_overrides,camel_case_types,constant_identifier_names,directives_ordering,library_prefixes,non_constant_identifier_names,prefer_final_fields,return_of_invalid_type,unnecessary_const,unnecessary_import,unnecessary_this,unused_import,unused_shown_name diff --git a/lib/grpc_gen/chronolens.pbgrpc.dart b/lib/grpc_gen/chronolens.pbgrpc.dart index 8d0aeb4..f188319 100644 --- a/lib/grpc_gen/chronolens.pbgrpc.dart +++ b/lib/grpc_gen/chronolens.pbgrpc.dart @@ -1,25 +1,18 @@ -// +/// // Generated code. Do not modify. // source: chronolens.proto // // @dart = 2.12 - -// ignore_for_file: annotate_overrides, camel_case_types, comment_references -// ignore_for_file: constant_identifier_names, library_prefixes -// ignore_for_file: non_constant_identifier_names, prefer_final_fields -// ignore_for_file: unnecessary_import, unnecessary_this, unused_import +// ignore_for_file: annotate_overrides,camel_case_types,constant_identifier_names,directives_ordering,library_prefixes,non_constant_identifier_names,prefer_final_fields,return_of_invalid_type,unnecessary_const,unnecessary_import,unnecessary_this,unused_import,unused_shown_name import 'dart:async' as $async; + import 'dart:core' as $core; import 'package:grpc/service_api.dart' as $grpc; -import 'package:protobuf/protobuf.dart' as $pb; - import 'chronolens.pb.dart' as $0; - export 'chronolens.pb.dart'; -@$pb.GrpcServiceName('chronolens.ChronoLens') class ChronoLensClient extends $grpc.Client { static final _$login = $grpc.ClientMethod<$0.LoginRequest, $0.LoginResponse>( '/chronolens.ChronoLens/Login', @@ -29,15 +22,14 @@ class ChronoLensClient extends $grpc.Client { ChronoLensClient($grpc.ClientChannel channel, {$grpc.CallOptions? options, $core.Iterable<$grpc.ClientInterceptor>? interceptors}) - : super(channel, options: options, - interceptors: interceptors); + : super(channel, options: options, interceptors: interceptors); - $grpc.ResponseFuture<$0.LoginResponse> login($0.LoginRequest request, {$grpc.CallOptions? options}) { + $grpc.ResponseFuture<$0.LoginResponse> login($0.LoginRequest request, + {$grpc.CallOptions? options}) { return $createUnaryCall(_$login, request, options: options); } } -@$pb.GrpcServiceName('chronolens.ChronoLens') abstract class ChronoLensServiceBase extends $grpc.Service { $core.String get $name => 'chronolens.ChronoLens'; @@ -51,9 +43,11 @@ abstract class ChronoLensServiceBase extends $grpc.Service { ($0.LoginResponse value) => value.writeToBuffer())); } - $async.Future<$0.LoginResponse> login_Pre($grpc.ServiceCall call, $async.Future<$0.LoginRequest> request) async { + $async.Future<$0.LoginResponse> login_Pre( + $grpc.ServiceCall call, $async.Future<$0.LoginRequest> request) async { return login(call, await request); } - $async.Future<$0.LoginResponse> login($grpc.ServiceCall call, $0.LoginRequest request); + $async.Future<$0.LoginResponse> login( + $grpc.ServiceCall call, $0.LoginRequest request); } diff --git a/lib/grpc_gen/chronolens.pbjson.dart b/lib/grpc_gen/chronolens.pbjson.dart index cb80b52..32e53ec 100644 --- a/lib/grpc_gen/chronolens.pbjson.dart +++ b/lib/grpc_gen/chronolens.pbjson.dart @@ -1,41 +1,31 @@ -// +/// // Generated code. Do not modify. // source: chronolens.proto // // @dart = 2.12 +// ignore_for_file: annotate_overrides,camel_case_types,constant_identifier_names,deprecated_member_use_from_same_package,directives_ordering,library_prefixes,non_constant_identifier_names,prefer_final_fields,return_of_invalid_type,unnecessary_const,unnecessary_import,unnecessary_this,unused_import,unused_shown_name -// ignore_for_file: annotate_overrides, camel_case_types, comment_references -// ignore_for_file: constant_identifier_names, library_prefixes -// ignore_for_file: non_constant_identifier_names, prefer_final_fields -// ignore_for_file: unnecessary_import, unnecessary_this, unused_import - -import 'dart:convert' as $convert; import 'dart:core' as $core; +import 'dart:convert' as $convert; import 'dart:typed_data' as $typed_data; - @$core.Deprecated('Use loginRequestDescriptor instead') -const LoginRequest$json = { +const LoginRequest$json = const { '1': 'LoginRequest', - '2': [ - {'1': 'username', '3': 1, '4': 1, '5': 9, '10': 'username'}, - {'1': 'password', '3': 2, '4': 1, '5': 9, '10': 'password'}, + '2': const [ + const {'1': 'username', '3': 1, '4': 1, '5': 9, '10': 'username'}, + const {'1': 'password', '3': 2, '4': 1, '5': 9, '10': 'password'}, ], }; /// Descriptor for `LoginRequest`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List loginRequestDescriptor = $convert.base64Decode( - 'CgxMb2dpblJlcXVlc3QSGgoIdXNlcm5hbWUYASABKAlSCHVzZXJuYW1lEhoKCHBhc3N3b3JkGA' - 'IgASgJUghwYXNzd29yZA=='); - +final $typed_data.Uint8List loginRequestDescriptor = $convert.base64Decode('CgxMb2dpblJlcXVlc3QSGgoIdXNlcm5hbWUYASABKAlSCHVzZXJuYW1lEhoKCHBhc3N3b3JkGAIgASgJUghwYXNzd29yZA=='); @$core.Deprecated('Use loginResponseDescriptor instead') -const LoginResponse$json = { +const LoginResponse$json = const { '1': 'LoginResponse', - '2': [ - {'1': 'token', '3': 1, '4': 1, '5': 9, '10': 'token'}, + '2': const [ + const {'1': 'token', '3': 1, '4': 1, '5': 9, '10': 'token'}, ], }; /// Descriptor for `LoginResponse`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List loginResponseDescriptor = $convert.base64Decode( - 'Cg1Mb2dpblJlc3BvbnNlEhQKBXRva2VuGAEgASgJUgV0b2tlbg=='); - +final $typed_data.Uint8List loginResponseDescriptor = $convert.base64Decode('Cg1Mb2dpblJlc3BvbnNlEhQKBXRva2VuGAEgASgJUgV0b2tlbg=='); diff --git a/lib/main.dart b/lib/main.dart index 5790d6b..6595756 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -1,5 +1,6 @@ import 'package:flutter/material.dart'; import 'package:mobile/screens/login.dart'; +import 'package:mobile/utils/route_generator.dart'; void main() { runApp(const MyApp()); @@ -16,7 +17,8 @@ class MyApp extends StatelessWidget { theme: ThemeData( primarySwatch: Colors.deepPurple, ), - home: LoginPage(), + initialRoute: "/login", + onGenerateRoute: RouteGenerator.generateRoute, ); } } diff --git a/lib/screens/home.dart b/lib/screens/home.dart new file mode 100644 index 0000000..4d91ccd --- /dev/null +++ b/lib/screens/home.dart @@ -0,0 +1,10 @@ +import 'package:flutter/material.dart'; + +class Home extends StatelessWidget { + const Home({super.key}); + + @override + Widget build(BuildContext context) { + return const Placeholder(); + } +} \ No newline at end of file diff --git a/lib/screens/login.dart b/lib/screens/login.dart index 1466450..d4859ec 100644 --- a/lib/screens/login.dart +++ b/lib/screens/login.dart @@ -1,4 +1,6 @@ import 'package:flutter/material.dart'; +import 'package:grpc/grpc.dart'; +import 'package:maybe_just_nothing/maybe_just_nothing.dart'; import '../services/login_service.dart'; class LoginPage extends StatefulWidget { @@ -41,11 +43,26 @@ class _LoginPageState extends State { void login(String username, String password) async { final response = await loginServiceClient.login(username, password); print(response); - if (response == null) { - print("Not OK"); - showErrorDialog(context, "bruh"); + + if (response is Just) { + var error = response.value; + if (error == null) { + // NOTE: Other error + showErrorDialog(context, "unkown error"); + } else { + // NOTE: GRPC error + switch (error.code) { + case 5: + showErrorDialog(context, error.message ?? ""); + case 14: + showErrorDialog(context, error.message ?? ""); + case _: + showErrorDialog(context, error.message ?? ""); + } + } } else { print("OK"); + Navigator.of(context).pushReplacementNamed("/"); } } @@ -53,11 +70,10 @@ class _LoginPageState extends State { onChanged: (value) => setState(() => password = value), decoration: InputDecoration( labelText: 'Password', - //errorText: 'Password is wrong', suffixIcon: IconButton( icon: isPasswordVisible - ? const Icon(Icons.visibility_off) - : const Icon(Icons.visibility), + ? const Icon(Icons.visibility) + : const Icon(Icons.visibility_off), onPressed: () => setState(() => isPasswordVisible = !isPasswordVisible), ), @@ -75,18 +91,20 @@ class _LoginPageState extends State { ); Widget submitCredentials() => TextButton( - onPressed: () => {login(username, password),print("")}, child: const Text("Log In"),); + onPressed: () => login(username, password), + child: const Text("Log In"), + ); return Scaffold( body: Padding( padding: const EdgeInsets.all(16), - child: Column(children: [ + child: Column(mainAxisAlignment: MainAxisAlignment.center, children: [ buildUsername(), buildPassword(), submitCredentials() ]), ), - floatingActionButton: - FloatingActionButton(onPressed: () => {})); + floatingActionButton: FloatingActionButton( + onPressed: () => Navigator.of(context).pushReplacementNamed("/"))); } } diff --git a/lib/utils/route_generator.dart b/lib/utils/route_generator.dart new file mode 100644 index 0000000..7cfa5de --- /dev/null +++ b/lib/utils/route_generator.dart @@ -0,0 +1,33 @@ +import 'package:flutter/material.dart'; +import 'package:mobile/screens/home.dart'; +import 'package:mobile/screens/login.dart'; + +class RouteGenerator { + static Route generateRoute(RouteSettings settings) { + final args = settings.arguments; + + switch (settings.name) { + case '/login': + return MaterialPageRoute(builder: (_) => LoginPage()); + // NOTE: / or /home ? + case '/': + // Validation of correct data type + return MaterialPageRoute(builder: (_) => Home()); + default: + return _errorRoute(); + } + } + + static Route _errorRoute() { + return MaterialPageRoute(builder: (_) { + return Scaffold( + appBar: AppBar( + title: Text('Error'), + ), + body: Center( + child: Text('ERROR'), + ), + ); + }); + } +} \ No newline at end of file From 815c09fc4bca91df8a3004fd8d5dc2ba471483d0 Mon Sep 17 00:00:00 2001 From: Lucas Verdelho <62015174+lucasverdelho@users.noreply.github.com> Date: Thu, 3 Oct 2024 10:54:51 +0100 Subject: [PATCH 14/66] Merge - Simple Gallery View with Basic navigation bar working + Extension to image upload --- lib/grpc_gen/chronolens.pb.dart | 231 +++++++++++++++++++++++----- lib/grpc_gen/chronolens.pbenum.dart | 8 +- lib/grpc_gen/chronolens.pbgrpc.dart | 50 ++++-- lib/grpc_gen/chronolens.pbjson.dart | 66 +++++--- lib/main.dart | 2 +- lib/screens/gallery_page.dart | 144 +++++++++++++++++ lib/screens/home_page.dart | 60 ++++++++ lib/screens/login.dart | 6 +- lib/services/api_service.dart | 88 +++++++++++ lib/services/login_service.dart | 47 ------ 10 files changed, 572 insertions(+), 130 deletions(-) create mode 100644 lib/screens/gallery_page.dart create mode 100644 lib/screens/home_page.dart create mode 100644 lib/services/api_service.dart delete mode 100644 lib/services/login_service.dart diff --git a/lib/grpc_gen/chronolens.pb.dart b/lib/grpc_gen/chronolens.pb.dart index 56faebe..f986c1b 100644 --- a/lib/grpc_gen/chronolens.pb.dart +++ b/lib/grpc_gen/chronolens.pb.dart @@ -1,42 +1,37 @@ -// +/// // Generated code. Do not modify. // source: chronolens.proto // // @dart = 2.12 - -// ignore_for_file: annotate_overrides, camel_case_types, comment_references -// ignore_for_file: constant_identifier_names, library_prefixes -// ignore_for_file: non_constant_identifier_names, prefer_final_fields -// ignore_for_file: unnecessary_import, unnecessary_this, unused_import +// ignore_for_file: annotate_overrides,camel_case_types,constant_identifier_names,directives_ordering,library_prefixes,non_constant_identifier_names,prefer_final_fields,return_of_invalid_type,unnecessary_const,unnecessary_import,unnecessary_this,unused_import,unused_shown_name import 'dart:core' as $core; import 'package:protobuf/protobuf.dart' as $pb; class LoginRequest extends $pb.GeneratedMessage { + static final $pb.BuilderInfo _i = $pb.BuilderInfo(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'LoginRequest', package: const $pb.PackageName(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'chronolens'), createEmptyInstance: create) + ..aOS(1, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'username') + ..aOS(2, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'password') + ..hasRequiredFields = false + ; + + LoginRequest._() : super(); factory LoginRequest({ $core.String? username, $core.String? password, }) { - final $result = create(); + final _result = create(); if (username != null) { - $result.username = username; + _result.username = username; } if (password != null) { - $result.password = password; + _result.password = password; } - return $result; + return _result; } - LoginRequest._() : super(); factory LoginRequest.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); factory LoginRequest.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); - - static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'LoginRequest', package: const $pb.PackageName(_omitMessageNames ? '' : 'chronolens'), createEmptyInstance: create) - ..aOS(1, _omitFieldNames ? '' : 'username') - ..aOS(2, _omitFieldNames ? '' : 'password') - ..hasRequiredFields = false - ; - @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' @@ -46,10 +41,8 @@ class LoginRequest extends $pb.GeneratedMessage { 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version') - LoginRequest copyWith(void Function(LoginRequest) updates) => super.copyWith((message) => updates(message as LoginRequest)) as LoginRequest; - + LoginRequest copyWith(void Function(LoginRequest) updates) => super.copyWith((message) => updates(message as LoginRequest)) as LoginRequest; // ignore: deprecated_member_use $pb.BuilderInfo get info_ => _i; - @$core.pragma('dart2js:noInline') static LoginRequest create() => LoginRequest._(); LoginRequest createEmptyInstance() => create(); @@ -78,24 +71,23 @@ class LoginRequest extends $pb.GeneratedMessage { } class LoginResponse extends $pb.GeneratedMessage { + static final $pb.BuilderInfo _i = $pb.BuilderInfo(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'LoginResponse', package: const $pb.PackageName(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'chronolens'), createEmptyInstance: create) + ..aOS(1, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'token') + ..hasRequiredFields = false + ; + + LoginResponse._() : super(); factory LoginResponse({ $core.String? token, }) { - final $result = create(); + final _result = create(); if (token != null) { - $result.token = token; + _result.token = token; } - return $result; + return _result; } - LoginResponse._() : super(); factory LoginResponse.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); factory LoginResponse.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); - - static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'LoginResponse', package: const $pb.PackageName(_omitMessageNames ? '' : 'chronolens'), createEmptyInstance: create) - ..aOS(1, _omitFieldNames ? '' : 'token') - ..hasRequiredFields = false - ; - @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' @@ -105,10 +97,8 @@ class LoginResponse extends $pb.GeneratedMessage { 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version') - LoginResponse copyWith(void Function(LoginResponse) updates) => super.copyWith((message) => updates(message as LoginResponse)) as LoginResponse; - + LoginResponse copyWith(void Function(LoginResponse) updates) => super.copyWith((message) => updates(message as LoginResponse)) as LoginResponse; // ignore: deprecated_member_use $pb.BuilderInfo get info_ => _i; - @$core.pragma('dart2js:noInline') static LoginResponse create() => LoginResponse._(); LoginResponse createEmptyInstance() => create(); @@ -127,6 +117,175 @@ class LoginResponse extends $pb.GeneratedMessage { void clearToken() => clearField(1); } +enum UploadImageRequest_Data { + info, + image, + notSet +} + +class UploadImageRequest extends $pb.GeneratedMessage { + static const $core.Map<$core.int, UploadImageRequest_Data> _UploadImageRequest_DataByTag = { + 1 : UploadImageRequest_Data.info, + 2 : UploadImageRequest_Data.image, + 0 : UploadImageRequest_Data.notSet + }; + static final $pb.BuilderInfo _i = $pb.BuilderInfo(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'UploadImageRequest', package: const $pb.PackageName(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'chronolens'), createEmptyInstance: create) + ..oo(0, [1, 2]) + ..aOM(1, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'info', subBuilder: ImageInfo.create) + ..a<$core.List<$core.int>>(2, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'image', $pb.PbFieldType.OY) + ..hasRequiredFields = false + ; + + UploadImageRequest._() : super(); + factory UploadImageRequest({ + ImageInfo? info, + $core.List<$core.int>? image, + }) { + final _result = create(); + if (info != null) { + _result.info = info; + } + if (image != null) { + _result.image = image; + } + return _result; + } + factory UploadImageRequest.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory UploadImageRequest.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + UploadImageRequest clone() => UploadImageRequest()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + UploadImageRequest copyWith(void Function(UploadImageRequest) updates) => super.copyWith((message) => updates(message as UploadImageRequest)) as UploadImageRequest; // ignore: deprecated_member_use + $pb.BuilderInfo get info_ => _i; + @$core.pragma('dart2js:noInline') + static UploadImageRequest create() => UploadImageRequest._(); + UploadImageRequest createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static UploadImageRequest getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static UploadImageRequest? _defaultInstance; + + UploadImageRequest_Data whichData() => _UploadImageRequest_DataByTag[$_whichOneof(0)]!; + void clearData() => clearField($_whichOneof(0)); + + @$pb.TagNumber(1) + ImageInfo get info => $_getN(0); + @$pb.TagNumber(1) + set info(ImageInfo v) { setField(1, v); } + @$pb.TagNumber(1) + $core.bool hasInfo() => $_has(0); + @$pb.TagNumber(1) + void clearInfo() => clearField(1); + @$pb.TagNumber(1) + ImageInfo ensureInfo() => $_ensure(0); + + @$pb.TagNumber(2) + $core.List<$core.int> get image => $_getN(1); + @$pb.TagNumber(2) + set image($core.List<$core.int> v) { $_setBytes(1, v); } + @$pb.TagNumber(2) + $core.bool hasImage() => $_has(1); + @$pb.TagNumber(2) + void clearImage() => clearField(2); +} + +class ImageInfo extends $pb.GeneratedMessage { + static final $pb.BuilderInfo _i = $pb.BuilderInfo(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'ImageInfo', package: const $pb.PackageName(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'chronolens'), createEmptyInstance: create) + ..aOS(1, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'filetype') + ..hasRequiredFields = false + ; + + ImageInfo._() : super(); + factory ImageInfo({ + $core.String? filetype, + }) { + final _result = create(); + if (filetype != null) { + _result.filetype = filetype; + } + return _result; + } + factory ImageInfo.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory ImageInfo.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + ImageInfo clone() => ImageInfo()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + ImageInfo copyWith(void Function(ImageInfo) updates) => super.copyWith((message) => updates(message as ImageInfo)) as ImageInfo; // ignore: deprecated_member_use + $pb.BuilderInfo get info_ => _i; + @$core.pragma('dart2js:noInline') + static ImageInfo create() => ImageInfo._(); + ImageInfo createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static ImageInfo getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static ImageInfo? _defaultInstance; + + @$pb.TagNumber(1) + $core.String get filetype => $_getSZ(0); + @$pb.TagNumber(1) + set filetype($core.String v) { $_setString(0, v); } + @$pb.TagNumber(1) + $core.bool hasFiletype() => $_has(0); + @$pb.TagNumber(1) + void clearFiletype() => clearField(1); +} + +class UploadImageResponse extends $pb.GeneratedMessage { + static final $pb.BuilderInfo _i = $pb.BuilderInfo(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'UploadImageResponse', package: const $pb.PackageName(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'chronolens'), createEmptyInstance: create) + ..a<$core.int>(1, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'size', $pb.PbFieldType.OU3) + ..hasRequiredFields = false + ; + + UploadImageResponse._() : super(); + factory UploadImageResponse({ + $core.int? size, + }) { + final _result = create(); + if (size != null) { + _result.size = size; + } + return _result; + } + factory UploadImageResponse.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory UploadImageResponse.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + UploadImageResponse clone() => UploadImageResponse()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + UploadImageResponse copyWith(void Function(UploadImageResponse) updates) => super.copyWith((message) => updates(message as UploadImageResponse)) as UploadImageResponse; // ignore: deprecated_member_use + $pb.BuilderInfo get info_ => _i; + @$core.pragma('dart2js:noInline') + static UploadImageResponse create() => UploadImageResponse._(); + UploadImageResponse createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static UploadImageResponse getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static UploadImageResponse? _defaultInstance; + + @$pb.TagNumber(1) + $core.int get size => $_getIZ(0); + @$pb.TagNumber(1) + set size($core.int v) { $_setUnsignedInt32(0, v); } + @$pb.TagNumber(1) + $core.bool hasSize() => $_has(0); + @$pb.TagNumber(1) + void clearSize() => clearField(1); +} -const _omitFieldNames = $core.bool.fromEnvironment('protobuf.omit_field_names'); -const _omitMessageNames = $core.bool.fromEnvironment('protobuf.omit_message_names'); diff --git a/lib/grpc_gen/chronolens.pbenum.dart b/lib/grpc_gen/chronolens.pbenum.dart index 8a2be9b..ee564e9 100644 --- a/lib/grpc_gen/chronolens.pbenum.dart +++ b/lib/grpc_gen/chronolens.pbenum.dart @@ -1,11 +1,7 @@ -// +/// // Generated code. Do not modify. // source: chronolens.proto // // @dart = 2.12 - -// ignore_for_file: annotate_overrides, camel_case_types, comment_references -// ignore_for_file: constant_identifier_names, library_prefixes -// ignore_for_file: non_constant_identifier_names, prefer_final_fields -// ignore_for_file: unnecessary_import, unnecessary_this, unused_import +// ignore_for_file: annotate_overrides,camel_case_types,constant_identifier_names,directives_ordering,library_prefixes,non_constant_identifier_names,prefer_final_fields,return_of_invalid_type,unnecessary_const,unnecessary_import,unnecessary_this,unused_import,unused_shown_name diff --git a/lib/grpc_gen/chronolens.pbgrpc.dart b/lib/grpc_gen/chronolens.pbgrpc.dart index 8d0aeb4..bafe49f 100644 --- a/lib/grpc_gen/chronolens.pbgrpc.dart +++ b/lib/grpc_gen/chronolens.pbgrpc.dart @@ -1,43 +1,48 @@ -// +/// // Generated code. Do not modify. // source: chronolens.proto // // @dart = 2.12 - -// ignore_for_file: annotate_overrides, camel_case_types, comment_references -// ignore_for_file: constant_identifier_names, library_prefixes -// ignore_for_file: non_constant_identifier_names, prefer_final_fields -// ignore_for_file: unnecessary_import, unnecessary_this, unused_import +// ignore_for_file: annotate_overrides,camel_case_types,constant_identifier_names,directives_ordering,library_prefixes,non_constant_identifier_names,prefer_final_fields,return_of_invalid_type,unnecessary_const,unnecessary_import,unnecessary_this,unused_import,unused_shown_name import 'dart:async' as $async; + import 'dart:core' as $core; import 'package:grpc/service_api.dart' as $grpc; -import 'package:protobuf/protobuf.dart' as $pb; - import 'chronolens.pb.dart' as $0; - export 'chronolens.pb.dart'; -@$pb.GrpcServiceName('chronolens.ChronoLens') class ChronoLensClient extends $grpc.Client { static final _$login = $grpc.ClientMethod<$0.LoginRequest, $0.LoginResponse>( '/chronolens.ChronoLens/Login', ($0.LoginRequest value) => value.writeToBuffer(), ($core.List<$core.int> value) => $0.LoginResponse.fromBuffer(value)); + static final _$uploadImage = + $grpc.ClientMethod<$0.UploadImageRequest, $0.UploadImageResponse>( + '/chronolens.ChronoLens/UploadImage', + ($0.UploadImageRequest value) => value.writeToBuffer(), + ($core.List<$core.int> value) => + $0.UploadImageResponse.fromBuffer(value)); ChronoLensClient($grpc.ClientChannel channel, {$grpc.CallOptions? options, $core.Iterable<$grpc.ClientInterceptor>? interceptors}) - : super(channel, options: options, - interceptors: interceptors); + : super(channel, options: options, interceptors: interceptors); - $grpc.ResponseFuture<$0.LoginResponse> login($0.LoginRequest request, {$grpc.CallOptions? options}) { + $grpc.ResponseFuture<$0.LoginResponse> login($0.LoginRequest request, + {$grpc.CallOptions? options}) { return $createUnaryCall(_$login, request, options: options); } + + $grpc.ResponseFuture<$0.UploadImageResponse> uploadImage( + $async.Stream<$0.UploadImageRequest> request, + {$grpc.CallOptions? options}) { + return $createStreamingCall(_$uploadImage, request, options: options) + .single; + } } -@$pb.GrpcServiceName('chronolens.ChronoLens') abstract class ChronoLensServiceBase extends $grpc.Service { $core.String get $name => 'chronolens.ChronoLens'; @@ -49,11 +54,24 @@ abstract class ChronoLensServiceBase extends $grpc.Service { false, ($core.List<$core.int> value) => $0.LoginRequest.fromBuffer(value), ($0.LoginResponse value) => value.writeToBuffer())); + $addMethod( + $grpc.ServiceMethod<$0.UploadImageRequest, $0.UploadImageResponse>( + 'UploadImage', + uploadImage, + true, + false, + ($core.List<$core.int> value) => + $0.UploadImageRequest.fromBuffer(value), + ($0.UploadImageResponse value) => value.writeToBuffer())); } - $async.Future<$0.LoginResponse> login_Pre($grpc.ServiceCall call, $async.Future<$0.LoginRequest> request) async { + $async.Future<$0.LoginResponse> login_Pre( + $grpc.ServiceCall call, $async.Future<$0.LoginRequest> request) async { return login(call, await request); } - $async.Future<$0.LoginResponse> login($grpc.ServiceCall call, $0.LoginRequest request); + $async.Future<$0.LoginResponse> login( + $grpc.ServiceCall call, $0.LoginRequest request); + $async.Future<$0.UploadImageResponse> uploadImage( + $grpc.ServiceCall call, $async.Stream<$0.UploadImageRequest> request); } diff --git a/lib/grpc_gen/chronolens.pbjson.dart b/lib/grpc_gen/chronolens.pbjson.dart index cb80b52..597cd08 100644 --- a/lib/grpc_gen/chronolens.pbjson.dart +++ b/lib/grpc_gen/chronolens.pbjson.dart @@ -1,41 +1,65 @@ -// +/// // Generated code. Do not modify. // source: chronolens.proto // // @dart = 2.12 +// ignore_for_file: annotate_overrides,camel_case_types,constant_identifier_names,deprecated_member_use_from_same_package,directives_ordering,library_prefixes,non_constant_identifier_names,prefer_final_fields,return_of_invalid_type,unnecessary_const,unnecessary_import,unnecessary_this,unused_import,unused_shown_name -// ignore_for_file: annotate_overrides, camel_case_types, comment_references -// ignore_for_file: constant_identifier_names, library_prefixes -// ignore_for_file: non_constant_identifier_names, prefer_final_fields -// ignore_for_file: unnecessary_import, unnecessary_this, unused_import - -import 'dart:convert' as $convert; import 'dart:core' as $core; +import 'dart:convert' as $convert; import 'dart:typed_data' as $typed_data; - @$core.Deprecated('Use loginRequestDescriptor instead') -const LoginRequest$json = { +const LoginRequest$json = const { '1': 'LoginRequest', - '2': [ - {'1': 'username', '3': 1, '4': 1, '5': 9, '10': 'username'}, - {'1': 'password', '3': 2, '4': 1, '5': 9, '10': 'password'}, + '2': const [ + const {'1': 'username', '3': 1, '4': 1, '5': 9, '10': 'username'}, + const {'1': 'password', '3': 2, '4': 1, '5': 9, '10': 'password'}, ], }; /// Descriptor for `LoginRequest`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List loginRequestDescriptor = $convert.base64Decode( - 'CgxMb2dpblJlcXVlc3QSGgoIdXNlcm5hbWUYASABKAlSCHVzZXJuYW1lEhoKCHBhc3N3b3JkGA' - 'IgASgJUghwYXNzd29yZA=='); - +final $typed_data.Uint8List loginRequestDescriptor = $convert.base64Decode('CgxMb2dpblJlcXVlc3QSGgoIdXNlcm5hbWUYASABKAlSCHVzZXJuYW1lEhoKCHBhc3N3b3JkGAIgASgJUghwYXNzd29yZA=='); @$core.Deprecated('Use loginResponseDescriptor instead') -const LoginResponse$json = { +const LoginResponse$json = const { '1': 'LoginResponse', - '2': [ - {'1': 'token', '3': 1, '4': 1, '5': 9, '10': 'token'}, + '2': const [ + const {'1': 'token', '3': 1, '4': 1, '5': 9, '10': 'token'}, ], }; /// Descriptor for `LoginResponse`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List loginResponseDescriptor = $convert.base64Decode( - 'Cg1Mb2dpblJlc3BvbnNlEhQKBXRva2VuGAEgASgJUgV0b2tlbg=='); +final $typed_data.Uint8List loginResponseDescriptor = $convert.base64Decode('Cg1Mb2dpblJlc3BvbnNlEhQKBXRva2VuGAEgASgJUgV0b2tlbg=='); +@$core.Deprecated('Use uploadImageRequestDescriptor instead') +const UploadImageRequest$json = const { + '1': 'UploadImageRequest', + '2': const [ + const {'1': 'info', '3': 1, '4': 1, '5': 11, '6': '.chronolens.ImageInfo', '9': 0, '10': 'info'}, + const {'1': 'image', '3': 2, '4': 1, '5': 12, '9': 0, '10': 'image'}, + ], + '8': const [ + const {'1': 'data'}, + ], +}; + +/// Descriptor for `UploadImageRequest`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List uploadImageRequestDescriptor = $convert.base64Decode('ChJVcGxvYWRJbWFnZVJlcXVlc3QSKwoEaW5mbxgBIAEoCzIVLmNocm9ub2xlbnMuSW1hZ2VJbmZvSABSBGluZm8SFgoFaW1hZ2UYAiABKAxIAFIFaW1hZ2VCBgoEZGF0YQ=='); +@$core.Deprecated('Use imageInfoDescriptor instead') +const ImageInfo$json = const { + '1': 'ImageInfo', + '2': const [ + const {'1': 'filetype', '3': 1, '4': 1, '5': 9, '10': 'filetype'}, + ], +}; + +/// Descriptor for `ImageInfo`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List imageInfoDescriptor = $convert.base64Decode('CglJbWFnZUluZm8SGgoIZmlsZXR5cGUYASABKAlSCGZpbGV0eXBl'); +@$core.Deprecated('Use uploadImageResponseDescriptor instead') +const UploadImageResponse$json = const { + '1': 'UploadImageResponse', + '2': const [ + const {'1': 'size', '3': 1, '4': 1, '5': 13, '10': 'size'}, + ], +}; +/// Descriptor for `UploadImageResponse`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List uploadImageResponseDescriptor = $convert.base64Decode('ChNVcGxvYWRJbWFnZVJlc3BvbnNlEhIKBHNpemUYASABKA1SBHNpemU='); diff --git a/lib/main.dart b/lib/main.dart index 437e3fc..1733bf4 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -1,5 +1,5 @@ import 'package:flutter/material.dart'; -import 'home_page.dart'; +import './screens/home_page.dart'; void main() { runApp(MyApp()); diff --git a/lib/screens/gallery_page.dart b/lib/screens/gallery_page.dart new file mode 100644 index 0000000..d5383c8 --- /dev/null +++ b/lib/screens/gallery_page.dart @@ -0,0 +1,144 @@ +import 'dart:io'; +import 'dart:typed_data'; + +import 'package:flutter/material.dart'; +import 'package:photo_manager/photo_manager.dart'; +import 'package:permission_handler/permission_handler.dart'; +import 'package:device_info_plus/device_info_plus.dart'; + + +class GalleryPage extends StatefulWidget { + const GalleryPage({super.key}); + + @override + _GalleryPageState createState() => _GalleryPageState(); +} + +class _GalleryPageState extends State { + List _assets = []; + int _currentPage = 0; + final int _pageSize = 20; + bool _isLoading = false; + bool _hasMore = true; + String _errorMessage = ""; + + @override + void initState() { + super.initState(); + _loadAssets(); + } + + Future _loadAssets() async { + if (_isLoading || !_hasMore) return; + + setState(() { + _isLoading = true; + _errorMessage = ""; + }); + + if (Platform.isAndroid){ + final androidInfo = await DeviceInfoPlugin().androidInfo; + final androidVersion = int.parse(androidInfo.version.release); + + if (androidVersion >= 13) { + if (await Permission.photos.isDenied || await Permission.videos.isDenied ) { + setState(() { + _isLoading = false; + _hasMore = false; + _errorMessage = "Permission denied. Access to the storage is needed to display your gallery."; + }); + await [ + Permission.photos, + Permission.videos, + ].request(); + } + } + else { + if ( await Permission.storage.isDenied ) { + setState(() { + _isLoading = false; + _hasMore = false; + _errorMessage = "Permission denied. Access to the storage is needed to display your gallery."; + }); + await Permission.storage.request(); + } + } + } + + // #TODO: Automatic loading + + final List paths = await PhotoManager.getAssetPathList( + type: RequestType.image, + ); + + if (paths.isNotEmpty) { + final List newAssets = await paths[0].getAssetListPaged( + page: _currentPage, + size: _pageSize, + ); + + setState(() { + if (newAssets.length < _pageSize) { + _hasMore = false; + } + _assets.addAll(newAssets); + _isLoading = false; + _currentPage++; + }); + } else { + setState(() { + _isLoading = false; + _hasMore = false; + _errorMessage = "No images found in your gallery."; + }); + } + } + + @override + Widget build(BuildContext context) { + return NotificationListener( + onNotification: (ScrollNotification scrollInfo) { + if (!_isLoading && scrollInfo.metrics.pixels == scrollInfo.metrics.maxScrollExtent) { + _loadAssets(); + } + return false; + }, + child: _errorMessage.isNotEmpty + ? Center(child: Text(_errorMessage)) + : GridView.builder( + padding: const EdgeInsets.all(8.0), + gridDelegate: const SliverGridDelegateWithFixedCrossAxisCount( + crossAxisCount: 4, + crossAxisSpacing: 4.0, + mainAxisSpacing: 4.0, + ), + itemCount: _assets.length + (_hasMore ? 1 : 0), + itemBuilder: (context, index) { + if (index == _assets.length) { + return const Center(child: CircularProgressIndicator()); + } + + return FutureBuilder( + future: _assets[index].thumbnailData, + builder: (context, snapshot) { + if (snapshot.connectionState == ConnectionState.done && snapshot.data != null) { + return Container( + decoration: BoxDecoration( + image: DecorationImage( + image: MemoryImage(snapshot.data!), + fit: BoxFit.cover, + ), + borderRadius: BorderRadius.circular(8.0), + ), + ); + } + return Container( + color: Colors.grey, + ); + }, + ); + }, + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/home_page.dart b/lib/screens/home_page.dart new file mode 100644 index 0000000..938232e --- /dev/null +++ b/lib/screens/home_page.dart @@ -0,0 +1,60 @@ +import 'package:flutter/material.dart'; +import 'gallery_page.dart'; + +class HomePage extends StatefulWidget { + const HomePage({super.key}); + + @override + _HomePageState createState() => _HomePageState(); +} + +class _HomePageState extends State { + int _currentIndex = 0; + + final List _pages = [ + GalleryPage(), + const Center(child: Text('Albums Page')), + const Center(child: Text('Search Page')), + const Center(child: Text('Profile Page')), + const Center(child: Text('Settings Page')), + ]; + + @override + Widget build(BuildContext context) { + return Scaffold( + body: _pages[_currentIndex], + bottomNavigationBar: BottomNavigationBar( + currentIndex: _currentIndex, + onTap: (index) { + setState(() { + _currentIndex = index; + }); + }, + items: [ + const BottomNavigationBarItem( + icon: Icon(Icons.photo), + label: 'Gallery', + ), + const BottomNavigationBarItem( + icon: Icon(Icons.photo_album), + label: 'Albums', + ), + const BottomNavigationBarItem( + icon: Icon(Icons.search), + label: 'Search', + ), + const BottomNavigationBarItem( + icon: Icon(Icons.person), + label: 'Profile', + ), + const BottomNavigationBarItem( + icon: Icon(Icons.settings), + label: 'Settings', + ), + ], + selectedItemColor: Colors.deepPurpleAccent.shade700, + unselectedItemColor: Colors.grey, + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/login.dart b/lib/screens/login.dart index 1466450..58795d7 100644 --- a/lib/screens/login.dart +++ b/lib/screens/login.dart @@ -1,5 +1,5 @@ import 'package:flutter/material.dart'; -import '../services/login_service.dart'; +import '../services/api_service.dart'; class LoginPage extends StatefulWidget { LoginPage({super.key}); @@ -9,7 +9,7 @@ class LoginPage extends StatefulWidget { } class _LoginPageState extends State { - final loginServiceClient = LoginServiceClient(); + final apiServiceClient = APIServiceClient(); String username = ""; String password = ""; @@ -39,7 +39,7 @@ class _LoginPageState extends State { } void login(String username, String password) async { - final response = await loginServiceClient.login(username, password); + final response = await apiServiceClient.login(username, password); print(response); if (response == null) { print("Not OK"); diff --git a/lib/services/api_service.dart b/lib/services/api_service.dart new file mode 100644 index 0000000..8e8e418 --- /dev/null +++ b/lib/services/api_service.dart @@ -0,0 +1,88 @@ +import 'dart:typed_data'; + +import 'package:grpc/grpc.dart'; +import 'package:mobile/grpc_gen/chronolens.pb.dart'; +import '../grpc_gen/chronolens.pbgrpc.dart'; // Import your generated gRPC code + +class APIServiceClient { + late ClientChannel channel; + late ChronoLensClient stub; + + APIServiceClient() { + // Initialize gRPC channel + channel = ClientChannel( + '10.0.0.10', // The IP or hostname of the gRPC server + port: 50051, // The port on which the gRPC server is running + options: const ChannelOptions( + credentials: ChannelCredentials + .insecure(), // Use secure credentials in production + ), + ); + + // Create stub from generated gRPC code + stub = ChronoLensClient(channel); + } + + // Function to get photo by ID + Future login(String username, String password) async { + try { + // Create a GetPhotoRequest with the provided id + final request = LoginRequest() + ..username = username + ..password = password; + + // Call the gRPC method and get the response + final response = await stub.login(request); + + // Return the photo URL from the response + return response; + } catch (e) { + print('Error logging in: $e'); + return null; + } + } + + // Function to upload an image + Future uploadImage(String filetype, ByteBuffer data) async { + try { + // Create an ImageInfo object with the filetype + final imageInfo = ImageInfo()..filetype = filetype; + + // Create an UploadImageRequest with image info + final infoRequest = UploadImageRequest()..info = imageInfo; + + // Create an UploadImageRequest with image data + final imageRequest = UploadImageRequest()..image = data.asUint8List(); + + // Create a streaming request (since it's defined as stream in proto) + final response = await stub.uploadImage(Stream.fromIterable([infoRequest, imageRequest])); + + // Return the response + return response; + } catch (e) { + print('Error uploading image: $e'); + return null; + } + } + /*Future uploadImage(String filetype, ByteBuffer data) async { + try { + // Create a GetPhotoRequest with the provided id + final request = UploadImageRequest() + ..data = data; + + // Call the gRPC method and get the response + final response = await stub.uploadImage(request); + + // Return the photo URL from the response + return response; + } catch (e) { + print('Error logging in: $e'); + return null; + } + }*/ + + // Gracefully close the channel when no longer needed + Future shutdown() async { + await channel.shutdown(); + } +} diff --git a/lib/services/login_service.dart b/lib/services/login_service.dart deleted file mode 100644 index 0842419..0000000 --- a/lib/services/login_service.dart +++ /dev/null @@ -1,47 +0,0 @@ -import 'package:grpc/grpc.dart'; -import 'package:mobile/grpc_gen/chronolens.pb.dart'; -import '../grpc_gen/chronolens.pbgrpc.dart'; // Import your generated gRPC code - -class LoginServiceClient { - late ClientChannel channel; - late ChronoLensClient stub; - - LoginServiceClient() { - // Initialize gRPC channel - channel = ClientChannel( - '10.0.0.10', // The IP or hostname of the gRPC server - port: 50051, // The port on which the gRPC server is running - options: const ChannelOptions( - credentials: ChannelCredentials - .insecure(), // Use secure credentials in production - ), - ); - - // Create stub from generated gRPC code - stub = ChronoLensClient(channel); - } - - // Function to get photo by ID - Future login(String username, String password) async { - try { - // Create a GetPhotoRequest with the provided id - final request = LoginRequest() - ..username = username - ..password = password; - - // Call the gRPC method and get the response - final response = await stub.login(request); - - // Return the photo URL from the response - return response; - } catch (e) { - print('Error logging in: $e'); - return null; - } - } - - // Gracefully close the channel when no longer needed - Future shutdown() async { - await channel.shutdown(); - } -} From 2a6a691bd6858ddcd5822e1995ed3ea50358ffd5 Mon Sep 17 00:00:00 2001 From: DBarbosa15987 Date: Thu, 3 Oct 2024 11:17:22 +0100 Subject: [PATCH 15/66] Forgotten commit with dependencies --- lib/services/login_service.dart | 31 ++++++++++++++++++++----------- pubspec.yaml | 2 ++ 2 files changed, 22 insertions(+), 11 deletions(-) diff --git a/lib/services/login_service.dart b/lib/services/login_service.dart index 0842419..5a7c8a8 100644 --- a/lib/services/login_service.dart +++ b/lib/services/login_service.dart @@ -1,6 +1,8 @@ import 'package:grpc/grpc.dart'; +import 'package:maybe_just_nothing/maybe_just_nothing.dart'; import 'package:mobile/grpc_gen/chronolens.pb.dart'; -import '../grpc_gen/chronolens.pbgrpc.dart'; // Import your generated gRPC code +import '../grpc_gen/chronolens.pbgrpc.dart'; +import 'package:flutter_secure_storage/flutter_secure_storage.dart'; class LoginServiceClient { late ClientChannel channel; @@ -10,7 +12,7 @@ class LoginServiceClient { // Initialize gRPC channel channel = ClientChannel( '10.0.0.10', // The IP or hostname of the gRPC server - port: 50051, // The port on which the gRPC server is running + port: 8080, // The port on which the gRPC server is running options: const ChannelOptions( credentials: ChannelCredentials .insecure(), // Use secure credentials in production @@ -21,22 +23,29 @@ class LoginServiceClient { stub = ChronoLensClient(channel); } - // Function to get photo by ID - Future login(String username, String password) async { + //TODO: Log in check + + Future> login(String username, String password) async { try { - // Create a GetPhotoRequest with the provided id final request = LoginRequest() ..username = username ..password = password; - // Call the gRPC method and get the response final response = await stub.login(request); - - // Return the photo URL from the response - return response; + + final storage = new FlutterSecureStorage(); + await storage.write(key: "jwtToken", value: response.token); + + // String? value = await storage.read(key: "jwtToken"); + // print(value); + + return const Nothing(); + } on GrpcError catch (e) { + print('GrpcError: $e'); + return Just(e); } catch (e) { - print('Error logging in: $e'); - return null; + print('Random Error: $e'); + return const Just(null); } } diff --git a/pubspec.yaml b/pubspec.yaml index 2312ef9..b959ed8 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -32,6 +32,8 @@ dependencies: sdk: flutter grpc: ^3.0.0 protobuf: ^3.0.0 + maybe_just_nothing: ^0.5.3 + flutter_secure_storage: ^9.2.2 # The following adds the Cupertino Icons font to your application. From 936299552567c2a1d781d15014c9aae723cb12df Mon Sep 17 00:00:00 2001 From: A-VT <83979638+A-VT@users.noreply.github.com> Date: Thu, 3 Oct 2024 11:33:56 +0100 Subject: [PATCH 16/66] Merge - Simple Gallery View with Basic navigation bar working + Extension to image upload --- .gitignore | 1 + android/local.properties | 4 +- lib/main.dart | 9 +- lib/screens/login.dart | 80 ++-- lib/services/api_service.dart | 27 +- lib/services/login_service.dart | 47 --- lib/utils/route_generator.dart | 33 ++ pubspec.lock | 652 +++++++++++++++++++++++++++++++- 8 files changed, 754 insertions(+), 99 deletions(-) delete mode 100644 lib/services/login_service.dart create mode 100644 lib/utils/route_generator.dart diff --git a/.gitignore b/.gitignore index 29a3a50..f63c17b 100644 --- a/.gitignore +++ b/.gitignore @@ -29,6 +29,7 @@ migrate_working_dir/ .flutter-plugins-dependencies .pub-cache/ .pub/ +**/.gradle /build/ # Symbolication related diff --git a/android/local.properties b/android/local.properties index 9d3c55d..e9d3d40 100644 --- a/android/local.properties +++ b/android/local.properties @@ -1,5 +1,5 @@ -sdk.dir=C:\\Users\\Despacito4\\AppData\\Local\\Android\\sdk -flutter.sdk=C:\\dev\\flutter +sdk.dir=C:/Users/Alice/AppData/Local/Android/Sdk +flutter.sdk=C:\\Users\\Alice\\Downloads\\flutter flutter.buildMode=debug flutter.versionName=1.0.0 flutter.versionCode=1 \ No newline at end of file diff --git a/lib/main.dart b/lib/main.dart index 1733bf4..afe1675 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -1,8 +1,8 @@ import 'package:flutter/material.dart'; -import './screens/home_page.dart'; +import 'package:mobile/utils/route_generator.dart'; void main() { - runApp(MyApp()); + runApp(const MyApp()); } class MyApp extends StatelessWidget { @@ -16,7 +16,8 @@ class MyApp extends StatelessWidget { theme: ThemeData( primarySwatch: Colors.deepPurple, ), - home: HomePage(), + initialRoute: "/login", + onGenerateRoute: RouteGenerator.generateRoute, ); } -} +} \ No newline at end of file diff --git a/lib/screens/login.dart b/lib/screens/login.dart index 58795d7..24a86bd 100644 --- a/lib/screens/login.dart +++ b/lib/screens/login.dart @@ -1,4 +1,6 @@ import 'package:flutter/material.dart'; +import 'package:grpc/grpc.dart'; +import 'package:maybe_just_nothing/maybe_just_nothing.dart'; import '../services/api_service.dart'; class LoginPage extends StatefulWidget { @@ -9,7 +11,7 @@ class LoginPage extends StatefulWidget { } class _LoginPageState extends State { - final apiServiceClient = APIServiceClient(); + final loginServiceClient = APIServiceClient(); String username = ""; String password = ""; @@ -39,54 +41,70 @@ class _LoginPageState extends State { } void login(String username, String password) async { - final response = await apiServiceClient.login(username, password); + final response = await loginServiceClient.login(username, password); print(response); - if (response == null) { - print("Not OK"); - showErrorDialog(context, "bruh"); + + if (response is Just) { + var error = response.value; + if (error == null) { + // NOTE: Other error + showErrorDialog(context, "unkown error"); + } else { + // NOTE: GRPC error + switch (error.code) { + case 5: + showErrorDialog(context, error.message ?? ""); + case 14: + showErrorDialog(context, error.message ?? ""); + case _: + showErrorDialog(context, error.message ?? ""); + } + } } else { print("OK"); + Navigator.of(context).pushReplacementNamed("/"); } } Widget buildPassword() => TextField( - onChanged: (value) => setState(() => password = value), - decoration: InputDecoration( - labelText: 'Password', - //errorText: 'Password is wrong', - suffixIcon: IconButton( - icon: isPasswordVisible - ? const Icon(Icons.visibility_off) - : const Icon(Icons.visibility), - onPressed: () => - setState(() => isPasswordVisible = !isPasswordVisible), - ), - border: OutlineInputBorder(), - ), - obscureText: !isPasswordVisible, - ); + onChanged: (value) => setState(() => password = value), + decoration: InputDecoration( + labelText: 'Password', + suffixIcon: IconButton( + icon: isPasswordVisible + ? const Icon(Icons.visibility) + : const Icon(Icons.visibility_off), + onPressed: () => + setState(() => isPasswordVisible = !isPasswordVisible), + ), + border: OutlineInputBorder(), + ), + obscureText: !isPasswordVisible, + ); Widget buildUsername() => TextField( - onChanged: (value) => setState(() => username = value), - decoration: const InputDecoration( - labelText: 'Username', - border: OutlineInputBorder(), - ), - ); + onChanged: (value) => setState(() => username = value), + decoration: const InputDecoration( + labelText: 'Username', + border: OutlineInputBorder(), + ), + ); Widget submitCredentials() => TextButton( - onPressed: () => {login(username, password),print("")}, child: const Text("Log In"),); + onPressed: () => login(username, password), + child: const Text("Log In"), + ); return Scaffold( body: Padding( padding: const EdgeInsets.all(16), - child: Column(children: [ + child: Column(mainAxisAlignment: MainAxisAlignment.center, children: [ buildUsername(), buildPassword(), submitCredentials() ]), ), - floatingActionButton: - FloatingActionButton(onPressed: () => {})); + floatingActionButton: FloatingActionButton( + onPressed: () => Navigator.of(context).pushReplacementNamed("/"))); } -} +} \ No newline at end of file diff --git a/lib/services/api_service.dart b/lib/services/api_service.dart index 8e8e418..0d284e6 100644 --- a/lib/services/api_service.dart +++ b/lib/services/api_service.dart @@ -2,6 +2,8 @@ import 'dart:typed_data'; import 'package:grpc/grpc.dart'; import 'package:mobile/grpc_gen/chronolens.pb.dart'; +import 'package:flutter_secure_storage/flutter_secure_storage.dart'; +import 'package:maybe_just_nothing/maybe_just_nothing.dart'; import '../grpc_gen/chronolens.pbgrpc.dart'; // Import your generated gRPC code class APIServiceClient { @@ -12,7 +14,7 @@ class APIServiceClient { // Initialize gRPC channel channel = ClientChannel( '10.0.0.10', // The IP or hostname of the gRPC server - port: 50051, // The port on which the gRPC server is running + port: 8080, // The port on which the gRPC server is running options: const ChannelOptions( credentials: ChannelCredentials .insecure(), // Use secure credentials in production @@ -24,24 +26,29 @@ class APIServiceClient { } // Function to get photo by ID - Future login(String username, String password) async { + Future> login(String username, String password) async { try { - // Create a GetPhotoRequest with the provided id final request = LoginRequest() ..username = username ..password = password; - // Call the gRPC method and get the response final response = await stub.login(request); - - // Return the photo URL from the response - return response; + + final storage = new FlutterSecureStorage(); + await storage.write(key: "jwtToken", value: response.token); + + // String? value = await storage.read(key: "jwtToken"); + // print(value); + + return const Nothing(); + } on GrpcError catch (e) { + print('GrpcError: $e'); + return Just(e); } catch (e) { - print('Error logging in: $e'); - return null; + print('Random Error: $e'); + return const Just(null); } } - // Function to upload an image Future uploadImage(String filetype, ByteBuffer data) async { try { diff --git a/lib/services/login_service.dart b/lib/services/login_service.dart deleted file mode 100644 index 0842419..0000000 --- a/lib/services/login_service.dart +++ /dev/null @@ -1,47 +0,0 @@ -import 'package:grpc/grpc.dart'; -import 'package:mobile/grpc_gen/chronolens.pb.dart'; -import '../grpc_gen/chronolens.pbgrpc.dart'; // Import your generated gRPC code - -class LoginServiceClient { - late ClientChannel channel; - late ChronoLensClient stub; - - LoginServiceClient() { - // Initialize gRPC channel - channel = ClientChannel( - '10.0.0.10', // The IP or hostname of the gRPC server - port: 50051, // The port on which the gRPC server is running - options: const ChannelOptions( - credentials: ChannelCredentials - .insecure(), // Use secure credentials in production - ), - ); - - // Create stub from generated gRPC code - stub = ChronoLensClient(channel); - } - - // Function to get photo by ID - Future login(String username, String password) async { - try { - // Create a GetPhotoRequest with the provided id - final request = LoginRequest() - ..username = username - ..password = password; - - // Call the gRPC method and get the response - final response = await stub.login(request); - - // Return the photo URL from the response - return response; - } catch (e) { - print('Error logging in: $e'); - return null; - } - } - - // Gracefully close the channel when no longer needed - Future shutdown() async { - await channel.shutdown(); - } -} diff --git a/lib/utils/route_generator.dart b/lib/utils/route_generator.dart new file mode 100644 index 0000000..f093909 --- /dev/null +++ b/lib/utils/route_generator.dart @@ -0,0 +1,33 @@ +import 'package:flutter/material.dart'; +import 'package:mobile/screens/home_page.dart'; +import 'package:mobile/screens/login.dart'; + +class RouteGenerator { + static Route generateRoute(RouteSettings settings) { + //final args = settings.arguments; + + switch (settings.name) { + case '/login': + return MaterialPageRoute(builder: (_) => LoginPage()); + // NOTE: / or /home ? + case '/': + // Validation of correct data type + return MaterialPageRoute(builder: (_) => HomePage()); + default: + return _errorRoute(); + } + } + + static Route _errorRoute() { + return MaterialPageRoute(builder: (_) { + return Scaffold( + appBar: AppBar( + title: Text('Error'), + ), + body: Center( + child: Text('ERROR'), + ), + ); + }); + } +} \ No newline at end of file diff --git a/pubspec.lock b/pubspec.lock index b9fd799..3aeee8d 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -1,6 +1,43 @@ # Generated by pub # See https://dart.dev/tools/pub/glossary#lockfile packages: + _fe_analyzer_shared: + dependency: transitive + description: + name: _fe_analyzer_shared + sha256: f256b0c0ba6c7577c15e2e4e114755640a875e885099367bf6e012b19314c834 + url: "https://pub.dev" + source: hosted + version: "72.0.0" + _macros: + dependency: transitive + description: dart + source: sdk + version: "0.3.2" + analyzer: + dependency: transitive + description: + name: analyzer + sha256: b652861553cd3990d8ed361f7979dc6d7053a9ac8843fa73820ab68ce5410139 + url: "https://pub.dev" + source: hosted + version: "6.7.0" + archive: + dependency: transitive + description: + name: archive + sha256: cb6a278ef2dbb298455e1a713bda08524a175630ec643a242c399c932a0a1f7d + url: "https://pub.dev" + source: hosted + version: "3.6.1" + args: + dependency: transitive + description: + name: args + sha256: "7cf60b9f0cc88203c5a190b4cd62a99feea42759a7fa695010eb5de1c0b2252a" + url: "https://pub.dev" + source: hosted + version: "2.5.0" async: dependency: transitive description: @@ -17,6 +54,70 @@ packages: url: "https://pub.dev" source: hosted version: "2.1.1" + build: + dependency: "direct dev" + description: + name: build + sha256: "80184af8b6cb3e5c1c4ec6d8544d27711700bc3e6d2efad04238c7b5290889f0" + url: "https://pub.dev" + source: hosted + version: "2.4.1" + build_config: + dependency: transitive + description: + name: build_config + sha256: bf80fcfb46a29945b423bd9aad884590fb1dc69b330a4d4700cac476af1708d1 + url: "https://pub.dev" + source: hosted + version: "1.1.1" + build_daemon: + dependency: transitive + description: + name: build_daemon + sha256: "79b2aef6ac2ed00046867ed354c88778c9c0f029df8a20fe10b5436826721ef9" + url: "https://pub.dev" + source: hosted + version: "4.0.2" + build_resolvers: + dependency: transitive + description: + name: build_resolvers + sha256: "339086358431fa15d7eca8b6a36e5d783728cf025e559b834f4609a1fcfb7b0a" + url: "https://pub.dev" + source: hosted + version: "2.4.2" + build_runner: + dependency: "direct dev" + description: + name: build_runner + sha256: "028819cfb90051c6b5440c7e574d1896f8037e3c96cf17aaeb054c9311cfbf4d" + url: "https://pub.dev" + source: hosted + version: "2.4.13" + build_runner_core: + dependency: transitive + description: + name: build_runner_core + sha256: f8126682b87a7282a339b871298cc12009cb67109cfa1614d6436fb0289193e0 + url: "https://pub.dev" + source: hosted + version: "7.3.2" + built_collection: + dependency: transitive + description: + name: built_collection + sha256: "376e3dd27b51ea877c28d525560790aee2e6fbb5f20e2f85d5081027d94e2100" + url: "https://pub.dev" + source: hosted + version: "5.1.1" + built_value: + dependency: transitive + description: + name: built_value + sha256: c7913a9737ee4007efedaffc968c049fd0f3d0e49109e778edc10de9426005cb + url: "https://pub.dev" + source: hosted + version: "8.9.2" characters: dependency: transitive description: @@ -25,6 +126,14 @@ packages: url: "https://pub.dev" source: hosted version: "1.3.0" + checked_yaml: + dependency: transitive + description: + name: checked_yaml + sha256: feb6bed21949061731a7a75fc5d2aa727cf160b91af9a3e464c5e3a32e28b5ff + url: "https://pub.dev" + source: hosted + version: "2.0.3" clock: dependency: transitive description: @@ -33,6 +142,14 @@ packages: url: "https://pub.dev" source: hosted version: "1.1.1" + code_builder: + dependency: transitive + description: + name: code_builder + sha256: f692079e25e7869c14132d39f223f8eec9830eb76131925143b2129c4bb01b37 + url: "https://pub.dev" + source: hosted + version: "4.10.0" collection: dependency: transitive description: @@ -41,6 +158,22 @@ packages: url: "https://pub.dev" source: hosted version: "1.18.0" + convert: + dependency: transitive + description: + name: convert + sha256: "0f08b14755d163f6e2134cb58222dd25ea2a2ee8a195e53983d57c075324d592" + url: "https://pub.dev" + source: hosted + version: "3.1.1" + crypto: + dependency: transitive + description: + name: crypto + sha256: ec30d999af904f33454ba22ed9a86162b35e52b44ac4807d1d93c288041d7d27 + url: "https://pub.dev" + source: hosted + version: "3.0.5" cupertino_icons: dependency: "direct main" description: @@ -49,6 +182,30 @@ packages: url: "https://pub.dev" source: hosted version: "1.0.8" + dart_style: + dependency: transitive + description: + name: dart_style + sha256: "7856d364b589d1f08986e140938578ed36ed948581fbc3bc9aef1805039ac5ab" + url: "https://pub.dev" + source: hosted + version: "2.3.7" + device_info_plus: + dependency: "direct main" + description: + name: device_info_plus + sha256: a7fd703482b391a87d60b6061d04dfdeab07826b96f9abd8f5ed98068acc0074 + url: "https://pub.dev" + source: hosted + version: "10.1.2" + device_info_plus_platform_interface: + dependency: transitive + description: + name: device_info_plus_platform_interface + sha256: "282d3cf731045a2feb66abfe61bbc40870ae50a3ed10a4d3d217556c35c8c2ba" + url: "https://pub.dev" + source: hosted + version: "7.0.1" fake_async: dependency: transitive description: @@ -57,6 +214,30 @@ packages: url: "https://pub.dev" source: hosted version: "1.3.1" + ffi: + dependency: transitive + description: + name: ffi + sha256: "16ed7b077ef01ad6170a3d0c57caa4a112a38d7a2ed5602e0aca9ca6f3d98da6" + url: "https://pub.dev" + source: hosted + version: "2.1.3" + file: + dependency: transitive + description: + name: file + sha256: "5fc22d7c25582e38ad9a8515372cd9a93834027aacf1801cf01164dac0ffa08c" + url: "https://pub.dev" + source: hosted + version: "7.0.0" + fixnum: + dependency: transitive + description: + name: fixnum + sha256: "25517a4deb0c03aa0f32fd12db525856438902d9c16536311e76cdc57b31d7d1" + url: "https://pub.dev" + source: hosted + version: "1.1.0" flutter: dependency: "direct main" description: flutter @@ -66,15 +247,172 @@ packages: dependency: "direct dev" description: name: flutter_lints - sha256: "3f41d009ba7172d5ff9be5f6e6e6abb4300e263aab8866d2a0842ed2a70f8f0c" + sha256: "5398f14efa795ffb7a33e9b6a08798b26a180edac4ad7db3f231e40f82ce11e1" url: "https://pub.dev" source: hosted - version: "4.0.0" + version: "5.0.0" + flutter_secure_storage: + dependency: "direct main" + description: + name: flutter_secure_storage + sha256: "165164745e6afb5c0e3e3fcc72a012fb9e58496fb26ffb92cf22e16a821e85d0" + url: "https://pub.dev" + source: hosted + version: "9.2.2" + flutter_secure_storage_linux: + dependency: transitive + description: + name: flutter_secure_storage_linux + sha256: "4d91bfc23047422cbcd73ac684bc169859ee766482517c22172c86596bf1464b" + url: "https://pub.dev" + source: hosted + version: "1.2.1" + flutter_secure_storage_macos: + dependency: transitive + description: + name: flutter_secure_storage_macos + sha256: "1693ab11121a5f925bbea0be725abfcfbbcf36c1e29e571f84a0c0f436147a81" + url: "https://pub.dev" + source: hosted + version: "3.1.2" + flutter_secure_storage_platform_interface: + dependency: transitive + description: + name: flutter_secure_storage_platform_interface + sha256: cf91ad32ce5adef6fba4d736a542baca9daf3beac4db2d04be350b87f69ac4a8 + url: "https://pub.dev" + source: hosted + version: "1.1.2" + flutter_secure_storage_web: + dependency: transitive + description: + name: flutter_secure_storage_web + sha256: f4ebff989b4f07b2656fb16b47852c0aab9fed9b4ec1c70103368337bc1886a9 + url: "https://pub.dev" + source: hosted + version: "1.2.1" + flutter_secure_storage_windows: + dependency: transitive + description: + name: flutter_secure_storage_windows + sha256: b20b07cb5ed4ed74fc567b78a72936203f587eba460af1df11281c9326cd3709 + url: "https://pub.dev" + source: hosted + version: "3.1.2" flutter_test: dependency: "direct dev" description: flutter source: sdk version: "0.0.0" + flutter_web_plugins: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + frontend_server_client: + dependency: transitive + description: + name: frontend_server_client + sha256: f64a0333a82f30b0cca061bc3d143813a486dc086b574bfb233b7c1372427694 + url: "https://pub.dev" + source: hosted + version: "4.0.0" + glob: + dependency: transitive + description: + name: glob + sha256: "0e7014b3b7d4dac1ca4d6114f82bf1782ee86745b9b42a92c9289c23d8a0ab63" + url: "https://pub.dev" + source: hosted + version: "2.1.2" + google_identity_services_web: + dependency: transitive + description: + name: google_identity_services_web + sha256: "5be191523702ba8d7a01ca97c17fca096822ccf246b0a9f11923a6ded06199b6" + url: "https://pub.dev" + source: hosted + version: "0.3.1+4" + googleapis_auth: + dependency: transitive + description: + name: googleapis_auth + sha256: befd71383a955535060acde8792e7efc11d2fccd03dd1d3ec434e85b68775938 + url: "https://pub.dev" + source: hosted + version: "1.6.0" + graphs: + dependency: transitive + description: + name: graphs + sha256: "741bbf84165310a68ff28fe9e727332eef1407342fca52759cb21ad8177bb8d0" + url: "https://pub.dev" + source: hosted + version: "2.3.2" + grpc: + dependency: "direct main" + description: + name: grpc + sha256: e93ee3bce45c134bf44e9728119102358c7cd69de7832d9a874e2e74eb8cab40 + url: "https://pub.dev" + source: hosted + version: "3.2.4" + http: + dependency: transitive + description: + name: http + sha256: b9c29a161230ee03d3ccf545097fccd9b87a5264228c5d348202e0f0c28f9010 + url: "https://pub.dev" + source: hosted + version: "1.2.2" + http2: + dependency: transitive + description: + name: http2 + sha256: "9ced024a160b77aba8fb8674e38f70875e321d319e6f303ec18e87bd5a4b0c1d" + url: "https://pub.dev" + source: hosted + version: "2.3.0" + http_multi_server: + dependency: transitive + description: + name: http_multi_server + sha256: "97486f20f9c2f7be8f514851703d0119c3596d14ea63227af6f7a481ef2b2f8b" + url: "https://pub.dev" + source: hosted + version: "3.2.1" + http_parser: + dependency: transitive + description: + name: http_parser + sha256: "2aa08ce0341cc9b354a498388e30986515406668dbcc4f7c950c3e715496693b" + url: "https://pub.dev" + source: hosted + version: "4.0.2" + io: + dependency: transitive + description: + name: io + sha256: "2ec25704aba361659e10e3e5f5d672068d332fc8ac516421d483a11e5cbd061e" + url: "https://pub.dev" + source: hosted + version: "1.0.4" + js: + dependency: transitive + description: + name: js + sha256: f2c445dce49627136094980615a031419f7f3eb393237e4ecd97ac15dea343f3 + url: "https://pub.dev" + source: hosted + version: "0.6.7" + json_annotation: + dependency: transitive + description: + name: json_annotation + sha256: "1ce844379ca14835a50d2f019a3099f419082cfdd231cd86a142af94dd5c6bb1" + url: "https://pub.dev" + source: hosted + version: "4.9.0" leak_tracker: dependency: transitive description: @@ -103,10 +441,26 @@ packages: dependency: transitive description: name: lints - sha256: "976c774dd944a42e83e2467f4cc670daef7eed6295b10b36ae8c85bcbf828235" + sha256: "3315600f3fb3b135be672bf4a178c55f274bebe368325ae18462c89ac1e3b413" url: "https://pub.dev" source: hosted - version: "4.0.0" + version: "5.0.0" + logging: + dependency: transitive + description: + name: logging + sha256: "623a88c9594aa774443aa3eb2d41807a48486b5613e67599fb4c41c0ad47c340" + url: "https://pub.dev" + source: hosted + version: "1.2.0" + macros: + dependency: transitive + description: + name: macros + sha256: "0acaed5d6b7eab89f63350bccd82119e6c602df0f391260d0e32b5e23db79536" + url: "https://pub.dev" + source: hosted + version: "0.1.2-main.4" matcher: dependency: transitive description: @@ -123,6 +477,14 @@ packages: url: "https://pub.dev" source: hosted version: "0.11.1" + maybe_just_nothing: + dependency: "direct main" + description: + name: maybe_just_nothing + sha256: "0c06326e26d08f6ed43247404376366dc4d756cef23a4f1db765f546224c35e0" + url: "https://pub.dev" + source: hosted + version: "0.5.3" meta: dependency: transitive description: @@ -131,6 +493,22 @@ packages: url: "https://pub.dev" source: hosted version: "1.15.0" + mime: + dependency: transitive + description: + name: mime + sha256: "41a20518f0cb1256669420fdba0cd90d21561e560ac240f26ef8322e45bb7ed6" + url: "https://pub.dev" + source: hosted + version: "2.0.0" + package_config: + dependency: transitive + description: + name: package_config + sha256: "1c5b77ccc91e4823a5af61ee74e6b972db1ef98c2ff5a18d3161c982a55448bd" + url: "https://pub.dev" + source: hosted + version: "2.1.0" path: dependency: transitive description: @@ -139,6 +517,182 @@ packages: url: "https://pub.dev" source: hosted version: "1.9.0" + path_provider: + dependency: transitive + description: + name: path_provider + sha256: fec0d61223fba3154d87759e3cc27fe2c8dc498f6386c6d6fc80d1afdd1bf378 + url: "https://pub.dev" + source: hosted + version: "2.1.4" + path_provider_android: + dependency: transitive + description: + name: path_provider_android + sha256: "6f01f8e37ec30b07bc424b4deabac37cacb1bc7e2e515ad74486039918a37eb7" + url: "https://pub.dev" + source: hosted + version: "2.2.10" + path_provider_foundation: + dependency: transitive + description: + name: path_provider_foundation + sha256: f234384a3fdd67f989b4d54a5d73ca2a6c422fa55ae694381ae0f4375cd1ea16 + url: "https://pub.dev" + source: hosted + version: "2.4.0" + path_provider_linux: + dependency: transitive + description: + name: path_provider_linux + sha256: f7a1fe3a634fe7734c8d3f2766ad746ae2a2884abe22e241a8b301bf5cac3279 + url: "https://pub.dev" + source: hosted + version: "2.2.1" + path_provider_platform_interface: + dependency: transitive + description: + name: path_provider_platform_interface + sha256: "88f5779f72ba699763fa3a3b06aa4bf6de76c8e5de842cf6f29e2e06476c2334" + url: "https://pub.dev" + source: hosted + version: "2.1.2" + path_provider_windows: + dependency: transitive + description: + name: path_provider_windows + sha256: bd6f00dbd873bfb70d0761682da2b3a2c2fccc2b9e84c495821639601d81afe7 + url: "https://pub.dev" + source: hosted + version: "2.3.0" + permission_handler: + dependency: "direct main" + description: + name: permission_handler + sha256: "18bf33f7fefbd812f37e72091a15575e72d5318854877e0e4035a24ac1113ecb" + url: "https://pub.dev" + source: hosted + version: "11.3.1" + permission_handler_android: + dependency: transitive + description: + name: permission_handler_android + sha256: "76e4ab092c1b240d31177bb64d2b0bea43f43d0e23541ec866151b9f7b2490fa" + url: "https://pub.dev" + source: hosted + version: "12.0.12" + permission_handler_apple: + dependency: transitive + description: + name: permission_handler_apple + sha256: e6f6d73b12438ef13e648c4ae56bd106ec60d17e90a59c4545db6781229082a0 + url: "https://pub.dev" + source: hosted + version: "9.4.5" + permission_handler_html: + dependency: transitive + description: + name: permission_handler_html + sha256: af26edbbb1f2674af65a8f4b56e1a6f526156bc273d0e65dd8075fab51c78851 + url: "https://pub.dev" + source: hosted + version: "0.1.3+2" + permission_handler_platform_interface: + dependency: transitive + description: + name: permission_handler_platform_interface + sha256: e9c8eadee926c4532d0305dff94b85bf961f16759c3af791486613152af4b4f9 + url: "https://pub.dev" + source: hosted + version: "4.2.3" + permission_handler_windows: + dependency: transitive + description: + name: permission_handler_windows + sha256: "1a790728016f79a41216d88672dbc5df30e686e811ad4e698bfc51f76ad91f1e" + url: "https://pub.dev" + source: hosted + version: "0.2.1" + photo_manager: + dependency: "direct main" + description: + name: photo_manager + sha256: "32a1ce1095aeaaa792a29f28c1f74613aa75109f21c2d4ab85be3ad9964230a4" + url: "https://pub.dev" + source: hosted + version: "3.5.0" + platform: + dependency: transitive + description: + name: platform + sha256: "9b71283fc13df574056616011fb138fd3b793ea47cc509c189a6c3fa5f8a1a65" + url: "https://pub.dev" + source: hosted + version: "3.1.5" + plugin_platform_interface: + dependency: transitive + description: + name: plugin_platform_interface + sha256: "4820fbfdb9478b1ebae27888254d445073732dae3d6ea81f0b7e06d5dedc3f02" + url: "https://pub.dev" + source: hosted + version: "2.1.8" + pool: + dependency: transitive + description: + name: pool + sha256: "20fe868b6314b322ea036ba325e6fc0711a22948856475e2c2b6306e8ab39c2a" + url: "https://pub.dev" + source: hosted + version: "1.5.1" + protobuf: + dependency: "direct main" + description: + name: protobuf + sha256: "68645b24e0716782e58948f8467fd42a880f255096a821f9e7d0ec625b00c84d" + url: "https://pub.dev" + source: hosted + version: "3.1.0" + protoc_builder: + dependency: "direct dev" + description: + name: protoc_builder + sha256: "3a1ae025203e99934f33bec2b4fe95f3b27cb1647a17692bf4fc7f174d1f8d75" + url: "https://pub.dev" + source: hosted + version: "0.4.1" + pub_semver: + dependency: transitive + description: + name: pub_semver + sha256: "40d3ab1bbd474c4c2328c91e3a7df8c6dd629b79ece4c4bd04bee496a224fb0c" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + pubspec_parse: + dependency: transitive + description: + name: pubspec_parse + sha256: c799b721d79eb6ee6fa56f00c04b472dcd44a30d258fac2174a6ec57302678f8 + url: "https://pub.dev" + source: hosted + version: "1.3.0" + shelf: + dependency: transitive + description: + name: shelf + sha256: ad29c505aee705f41a4d8963641f91ac4cee3c8fad5947e033390a7bd8180fa4 + url: "https://pub.dev" + source: hosted + version: "1.4.1" + shelf_web_socket: + dependency: transitive + description: + name: shelf_web_socket + sha256: "073c147238594ecd0d193f3456a5fe91c4b0abbcc68bf5cd95b36c4e194ac611" + url: "https://pub.dev" + source: hosted + version: "2.0.0" sky_engine: dependency: transitive description: flutter @@ -168,6 +722,14 @@ packages: url: "https://pub.dev" source: hosted version: "2.1.2" + stream_transform: + dependency: transitive + description: + name: stream_transform + sha256: "14a00e794c7c11aa145a170587321aedce29769c08d7f58b1d141da75e3b1c6f" + url: "https://pub.dev" + source: hosted + version: "2.1.0" string_scanner: dependency: transitive description: @@ -192,6 +754,22 @@ packages: url: "https://pub.dev" source: hosted version: "0.7.2" + timing: + dependency: transitive + description: + name: timing + sha256: "70a3b636575d4163c477e6de42f247a23b315ae20e86442bebe32d3cabf61c32" + url: "https://pub.dev" + source: hosted + version: "1.0.1" + typed_data: + dependency: transitive + description: + name: typed_data + sha256: facc8d6582f16042dd49f2463ff1bd6e2c9ef9f3d5da3d9b087e244a7b564b3c + url: "https://pub.dev" + source: hosted + version: "1.3.2" vector_math: dependency: transitive description: @@ -208,6 +786,70 @@ packages: url: "https://pub.dev" source: hosted version: "14.2.5" + watcher: + dependency: transitive + description: + name: watcher + sha256: "3d2ad6751b3c16cf07c7fca317a1413b3f26530319181b37e3b9039b84fc01d8" + url: "https://pub.dev" + source: hosted + version: "1.1.0" + web: + dependency: transitive + description: + name: web + sha256: cd3543bd5798f6ad290ea73d210f423502e71900302dde696f8bff84bf89a1cb + url: "https://pub.dev" + source: hosted + version: "1.1.0" + web_socket: + dependency: transitive + description: + name: web_socket + sha256: "3c12d96c0c9a4eec095246debcea7b86c0324f22df69893d538fcc6f1b8cce83" + url: "https://pub.dev" + source: hosted + version: "0.1.6" + web_socket_channel: + dependency: transitive + description: + name: web_socket_channel + sha256: "9f187088ed104edd8662ca07af4b124465893caf063ba29758f97af57e61da8f" + url: "https://pub.dev" + source: hosted + version: "3.0.1" + win32: + dependency: transitive + description: + name: win32 + sha256: "4d45dc9069dba4619dc0ebd93c7cec5e66d8482cb625a370ac806dcc8165f2ec" + url: "https://pub.dev" + source: hosted + version: "5.5.5" + win32_registry: + dependency: transitive + description: + name: win32_registry + sha256: "21ec76dfc731550fd3e2ce7a33a9ea90b828fdf19a5c3bcf556fa992cfa99852" + url: "https://pub.dev" + source: hosted + version: "1.1.5" + xdg_directories: + dependency: transitive + description: + name: xdg_directories + sha256: faea9dee56b520b55a566385b84f2e8de55e7496104adada9962e0bd11bcff1d + url: "https://pub.dev" + source: hosted + version: "1.0.4" + yaml: + dependency: transitive + description: + name: yaml + sha256: "75769501ea3489fca56601ff33454fe45507ea3bfb014161abc3b43ae25989d5" + url: "https://pub.dev" + source: hosted + version: "3.1.2" sdks: dart: ">=3.5.3 <4.0.0" - flutter: ">=3.18.0-18.0.pre.54" + flutter: ">=3.22.0" From 67e8c87584f96aad7460cd3409a73594a15f9a9c Mon Sep 17 00:00:00 2001 From: A-VT <83979638+A-VT@users.noreply.github.com> Date: Thu, 3 Oct 2024 12:06:36 +0100 Subject: [PATCH 17/66] add iOS permissions --- ios/Runner/Info.plist | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ios/Runner/Info.plist b/ios/Runner/Info.plist index 43427ad..798a3e0 100644 --- a/ios/Runner/Info.plist +++ b/ios/Runner/Info.plist @@ -2,6 +2,8 @@ + NSPhotoLibraryUsageDescription + Photo Library Access Warning CFBundleDevelopmentRegion $(DEVELOPMENT_LANGUAGE) CFBundleDisplayName From 07e50ba6b19d490a6faeab7f5dc4b5e6f4311bfb Mon Sep 17 00:00:00 2001 From: lucasverdelho Date: Thu, 3 Oct 2024 13:59:49 +0100 Subject: [PATCH 18/66] Removed misplaced files --- lib/gallery_page.dart | 145 ---------------------------------- lib/home_page.dart | 62 --------------- lib/screens/gallery_page.dart | 144 --------------------------------- 3 files changed, 351 deletions(-) delete mode 100644 lib/gallery_page.dart delete mode 100644 lib/home_page.dart delete mode 100644 lib/screens/gallery_page.dart diff --git a/lib/gallery_page.dart b/lib/gallery_page.dart deleted file mode 100644 index 51a17f4..0000000 --- a/lib/gallery_page.dart +++ /dev/null @@ -1,145 +0,0 @@ -import 'dart:io'; -import 'dart:typed_data'; - -import 'package:flutter/material.dart'; -import 'package:photo_manager/photo_manager.dart'; -import 'package:permission_handler/permission_handler.dart'; -import 'package:device_info_plus/device_info_plus.dart'; - - -class GalleryPage extends StatefulWidget { - const GalleryPage({super.key}); - - @override - _GalleryPageState createState() => _GalleryPageState(); -} - -class _GalleryPageState extends State { - List _assets = []; - int _currentPage = 0; - final int _pageSize = 20; - bool _isLoading = false; - bool _hasMore = true; - String _errorMessage = ""; - - @override - void initState() { - super.initState(); - _loadAssets(); - } - - Future _loadAssets() async { - if (_isLoading || !_hasMore) return; - - setState(() { - _isLoading = true; - _errorMessage = ""; - }); - - - if (Platform.isAndroid){ - final androidInfo = await DeviceInfoPlugin().androidInfo; - final androidVersion = int.parse(androidInfo.version.release); - - if (androidVersion >= 13) { - if (await Permission.photos.isDenied || await Permission.videos.isDenied ) { - setState(() { - _isLoading = false; - _hasMore = false; - _errorMessage = "Permission denied. Access to the storage is needed to display your gallery."; - }); - await [ - Permission.photos, - Permission.videos, - ].request(); - } - } - else { - if ( await Permission.storage.isDenied ) { - setState(() { - _isLoading = false; - _hasMore = false; - _errorMessage = "Permission denied. Access to the storage is needed to display your gallery."; - }); - await Permission.storage.request(); - } - } - } - - // #TODO: Automatic loading - - final List paths = await PhotoManager.getAssetPathList( - type: RequestType.image, - ); - - if (paths.isNotEmpty) { - final List newAssets = await paths[0].getAssetListPaged( - page: _currentPage, - size: _pageSize, - ); - - setState(() { - if (newAssets.length < _pageSize) { - _hasMore = false; - } - _assets.addAll(newAssets); - _isLoading = false; - _currentPage++; - }); - } else { - setState(() { - _isLoading = false; - _hasMore = false; - _errorMessage = "No images found in your gallery."; - }); - } - } - - @override - Widget build(BuildContext context) { - return NotificationListener( - onNotification: (ScrollNotification scrollInfo) { - if (!_isLoading && scrollInfo.metrics.pixels == scrollInfo.metrics.maxScrollExtent) { - _loadAssets(); - } - return false; - }, - child: _errorMessage.isNotEmpty - ? Center(child: Text(_errorMessage)) - : GridView.builder( - padding: const EdgeInsets.all(8.0), - gridDelegate: const SliverGridDelegateWithFixedCrossAxisCount( - crossAxisCount: 4, - crossAxisSpacing: 4.0, - mainAxisSpacing: 4.0, - ), - itemCount: _assets.length + (_hasMore ? 1 : 0), - itemBuilder: (context, index) { - if (index == _assets.length) { - return const Center(child: CircularProgressIndicator()); - } - - return FutureBuilder( - future: _assets[index].thumbnailData, - builder: (context, snapshot) { - if (snapshot.connectionState == ConnectionState.done && snapshot.data != null) { - return Container( - decoration: BoxDecoration( - image: DecorationImage( - image: MemoryImage(snapshot.data!), - fit: BoxFit.cover, - ), - borderRadius: BorderRadius.circular(8.0), - ), - ); - } - return Container( - color: Colors.grey, - ); - }, - ); - }, - ), - ); - } -} diff --git a/lib/home_page.dart b/lib/home_page.dart deleted file mode 100644 index 93f0d00..0000000 --- a/lib/home_page.dart +++ /dev/null @@ -1,62 +0,0 @@ -import 'package:flutter/material.dart'; -import 'gallery_page.dart'; - -class HomePage extends StatefulWidget { - const HomePage({super.key}); - - @override - _HomePageState createState() => _HomePageState(); -} - -class _HomePageState extends State { - int _currentIndex = 0; - - final List _pages = [ - GalleryPage(), - const Center(child: Text('Albums Page')), - const Center(child: Text('Search Page')), - const Center(child: Text('Profile Page')), - const Center(child: Text('Settings Page')), - ]; - - @override - Widget build(BuildContext context) { - return Scaffold( - body: _pages[_currentIndex], - bottomNavigationBar: BottomNavigationBar( - currentIndex: _currentIndex, - onTap: (index) { - setState(() { - _currentIndex = index; - }); - }, - items: [ - const BottomNavigationBarItem( - icon: Icon(Icons.photo), - label: 'Gallery', - ), - const BottomNavigationBarItem( - icon: Icon(Icons.photo_album), - label: 'Albums', - ), - const BottomNavigationBarItem( - icon: Icon(Icons.search), - label: 'Search', - ), - const BottomNavigationBarItem( - icon: Icon(Icons.person), - label: 'Profile', - ), - const BottomNavigationBarItem( - icon: Icon(Icons.settings), - label: 'Settings', - ), - ], - selectedItemColor: Colors.deepPurpleAccent.shade700, - unselectedItemColor: Colors.grey, - ), - ); - } -} - - diff --git a/lib/screens/gallery_page.dart b/lib/screens/gallery_page.dart deleted file mode 100644 index d5383c8..0000000 --- a/lib/screens/gallery_page.dart +++ /dev/null @@ -1,144 +0,0 @@ -import 'dart:io'; -import 'dart:typed_data'; - -import 'package:flutter/material.dart'; -import 'package:photo_manager/photo_manager.dart'; -import 'package:permission_handler/permission_handler.dart'; -import 'package:device_info_plus/device_info_plus.dart'; - - -class GalleryPage extends StatefulWidget { - const GalleryPage({super.key}); - - @override - _GalleryPageState createState() => _GalleryPageState(); -} - -class _GalleryPageState extends State { - List _assets = []; - int _currentPage = 0; - final int _pageSize = 20; - bool _isLoading = false; - bool _hasMore = true; - String _errorMessage = ""; - - @override - void initState() { - super.initState(); - _loadAssets(); - } - - Future _loadAssets() async { - if (_isLoading || !_hasMore) return; - - setState(() { - _isLoading = true; - _errorMessage = ""; - }); - - if (Platform.isAndroid){ - final androidInfo = await DeviceInfoPlugin().androidInfo; - final androidVersion = int.parse(androidInfo.version.release); - - if (androidVersion >= 13) { - if (await Permission.photos.isDenied || await Permission.videos.isDenied ) { - setState(() { - _isLoading = false; - _hasMore = false; - _errorMessage = "Permission denied. Access to the storage is needed to display your gallery."; - }); - await [ - Permission.photos, - Permission.videos, - ].request(); - } - } - else { - if ( await Permission.storage.isDenied ) { - setState(() { - _isLoading = false; - _hasMore = false; - _errorMessage = "Permission denied. Access to the storage is needed to display your gallery."; - }); - await Permission.storage.request(); - } - } - } - - // #TODO: Automatic loading - - final List paths = await PhotoManager.getAssetPathList( - type: RequestType.image, - ); - - if (paths.isNotEmpty) { - final List newAssets = await paths[0].getAssetListPaged( - page: _currentPage, - size: _pageSize, - ); - - setState(() { - if (newAssets.length < _pageSize) { - _hasMore = false; - } - _assets.addAll(newAssets); - _isLoading = false; - _currentPage++; - }); - } else { - setState(() { - _isLoading = false; - _hasMore = false; - _errorMessage = "No images found in your gallery."; - }); - } - } - - @override - Widget build(BuildContext context) { - return NotificationListener( - onNotification: (ScrollNotification scrollInfo) { - if (!_isLoading && scrollInfo.metrics.pixels == scrollInfo.metrics.maxScrollExtent) { - _loadAssets(); - } - return false; - }, - child: _errorMessage.isNotEmpty - ? Center(child: Text(_errorMessage)) - : GridView.builder( - padding: const EdgeInsets.all(8.0), - gridDelegate: const SliverGridDelegateWithFixedCrossAxisCount( - crossAxisCount: 4, - crossAxisSpacing: 4.0, - mainAxisSpacing: 4.0, - ), - itemCount: _assets.length + (_hasMore ? 1 : 0), - itemBuilder: (context, index) { - if (index == _assets.length) { - return const Center(child: CircularProgressIndicator()); - } - - return FutureBuilder( - future: _assets[index].thumbnailData, - builder: (context, snapshot) { - if (snapshot.connectionState == ConnectionState.done && snapshot.data != null) { - return Container( - decoration: BoxDecoration( - image: DecorationImage( - image: MemoryImage(snapshot.data!), - fit: BoxFit.cover, - ), - borderRadius: BorderRadius.circular(8.0), - ), - ); - } - return Container( - color: Colors.grey, - ); - }, - ); - }, - ), - ); - } -} \ No newline at end of file From a44ed0636f0011d2561a14fc4b927c0f42c63352 Mon Sep 17 00:00:00 2001 From: lucasverdelho Date: Thu, 3 Oct 2024 14:26:22 +0100 Subject: [PATCH 19/66] Bottom nav bar perserving tab states --- lib/screens/home_page.dart | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/lib/screens/home_page.dart b/lib/screens/home_page.dart index 938232e..b49714a 100644 --- a/lib/screens/home_page.dart +++ b/lib/screens/home_page.dart @@ -1,5 +1,5 @@ import 'package:flutter/material.dart'; -import 'gallery_page.dart'; +import 'gallery_page/gallery_page.dart'; class HomePage extends StatefulWidget { const HomePage({super.key}); @@ -12,7 +12,7 @@ class _HomePageState extends State { int _currentIndex = 0; final List _pages = [ - GalleryPage(), + const GalleryPage(), const Center(child: Text('Albums Page')), const Center(child: Text('Search Page')), const Center(child: Text('Profile Page')), @@ -22,7 +22,10 @@ class _HomePageState extends State { @override Widget build(BuildContext context) { return Scaffold( - body: _pages[_currentIndex], + body: IndexedStack( + index: _currentIndex, + children: _pages, + ), bottomNavigationBar: BottomNavigationBar( currentIndex: _currentIndex, onTap: (index) { @@ -30,24 +33,24 @@ class _HomePageState extends State { _currentIndex = index; }); }, - items: [ - const BottomNavigationBarItem( + items: const [ + BottomNavigationBarItem( icon: Icon(Icons.photo), label: 'Gallery', ), - const BottomNavigationBarItem( + BottomNavigationBarItem( icon: Icon(Icons.photo_album), label: 'Albums', ), - const BottomNavigationBarItem( + BottomNavigationBarItem( icon: Icon(Icons.search), label: 'Search', ), - const BottomNavigationBarItem( + BottomNavigationBarItem( icon: Icon(Icons.person), label: 'Profile', ), - const BottomNavigationBarItem( + BottomNavigationBarItem( icon: Icon(Icons.settings), label: 'Settings', ), @@ -57,4 +60,4 @@ class _HomePageState extends State { ), ); } -} \ No newline at end of file +} From bfe671b1bf5a9961508a09029690b574a1dc722c Mon Sep 17 00:00:00 2001 From: lucasverdelho Date: Thu, 3 Oct 2024 19:29:51 +0100 Subject: [PATCH 20/66] Asset preview container with onTap notifier waiting for logic to be implemented --- .../gallery_page/preview_container.dart | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 lib/screens/gallery_page/preview_container.dart diff --git a/lib/screens/gallery_page/preview_container.dart b/lib/screens/gallery_page/preview_container.dart new file mode 100644 index 0000000..221e106 --- /dev/null +++ b/lib/screens/gallery_page/preview_container.dart @@ -0,0 +1,34 @@ +import 'dart:typed_data'; + +import 'package:flutter/material.dart'; +import 'package:photo_manager/photo_manager.dart'; + +class PreviewContainer extends StatelessWidget { + final AssetEntity asset; + final Uint8List? thumbnail; + + const PreviewContainer({Key? key, required this.asset, this.thumbnail}) : super(key: key); + + @override + Widget build(BuildContext context) { + return thumbnail != null + ? GestureDetector( + onTap: () { + // Handle tap on thumbnail (e.g., full screen preview) + print('Asset tapped: ${asset.title}'); + }, + child: Container( + decoration: BoxDecoration( + image: DecorationImage( + image: MemoryImage(thumbnail!), + fit: BoxFit.cover, + ), + borderRadius: BorderRadius.circular(8.0), + ), + ), + ) + : Container( + color: Colors.grey, // Placeholder while loading thumbnails + ); + } +} From 38d6f84b9bbe5049eea69a4d866c8acf7b465221 Mon Sep 17 00:00:00 2001 From: lucasverdelho Date: Thu, 3 Oct 2024 19:32:48 +0100 Subject: [PATCH 21/66] Page Grid with lazyloading at 100images, working flawlessly --- lib/screens/gallery_page/image_grid.dart | 106 +++++++++++++++++++++++ 1 file changed, 106 insertions(+) create mode 100644 lib/screens/gallery_page/image_grid.dart diff --git a/lib/screens/gallery_page/image_grid.dart b/lib/screens/gallery_page/image_grid.dart new file mode 100644 index 0000000..05fa59c --- /dev/null +++ b/lib/screens/gallery_page/image_grid.dart @@ -0,0 +1,106 @@ +import 'dart:typed_data'; +import 'package:flutter/material.dart'; +import 'package:photo_manager/photo_manager.dart'; +import 'package:infinite_scroll_pagination/infinite_scroll_pagination.dart'; +import 'preview_container.dart'; + +class ImageGrid extends StatefulWidget { + const ImageGrid({super.key}); + + @override + _ImageGridState createState() => _ImageGridState(); +} + +class _ImageGridState extends State { + static const _pageSize = 100; + final PagingController _pagingController = + PagingController(firstPageKey: 0); + + final Map _thumbnailCache = {}; + + @override + void initState() { + super.initState(); + _pagingController.addPageRequestListener((pageKey) { + _loadAssets(pageKey); + }); + } + + Future _loadAssets(int pageKey) async { + try { + final List paths = await PhotoManager.getAssetPathList( + type: RequestType.image, + ); + + if (paths.isNotEmpty) { + final List newAssets = await paths[0].getAssetListPaged( + page: pageKey, + size: _pageSize, + ); + + final isLastPage = newAssets.length < _pageSize; + if (isLastPage) { + _pagingController.appendLastPage(newAssets); + } else { + final nextPageKey = pageKey + 1; + _pagingController.appendPage(newAssets, nextPageKey); + } + } + } catch (error) { + _pagingController.error = error; + } + } + + Future _getThumbnail(AssetEntity asset) async { + if (_thumbnailCache.containsKey(asset.id)) { + return _thumbnailCache[asset.id]; + } + + final Uint8List? thumbnail = await asset.thumbnailData; + _thumbnailCache[asset.id] = thumbnail; + return thumbnail; + } + + + + + @override + Widget build(BuildContext context) { + return PagedGridView( + pagingController: _pagingController, + gridDelegate: const SliverGridDelegateWithFixedCrossAxisCount( + crossAxisCount: 4, + crossAxisSpacing: 4.0, + mainAxisSpacing: 4.0, + ), + builderDelegate: PagedChildBuilderDelegate( + itemBuilder: (context, asset, index) { + return FutureBuilder( + future: _getThumbnail(asset), + builder: (context, snapshot) { + if (snapshot.hasData) { + return PreviewContainer( + asset: asset, + thumbnail: snapshot.data, + ); + } else { + return Container( + color: Colors.grey[300], + ); + } + }, + ); + }, + firstPageErrorIndicatorBuilder: (context) => Center( + child: Text('Failed to load images'), + ), + newPageErrorIndicatorBuilder: (context) => Center( + child: Text('Failed to load more images'), + ), + noItemsFoundIndicatorBuilder: (context) => Center( + child: Text('No images found'), + ), + ), + ); + } +} From ca29dabb070f3a2aec80ff5f681037e764b0ad26 Mon Sep 17 00:00:00 2001 From: lucasverdelho Date: Thu, 3 Oct 2024 19:33:07 +0100 Subject: [PATCH 22/66] refactored into multiple classes --- lib/screens/gallery_page/gallery_page.dart | 67 ++++++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100644 lib/screens/gallery_page/gallery_page.dart diff --git a/lib/screens/gallery_page/gallery_page.dart b/lib/screens/gallery_page/gallery_page.dart new file mode 100644 index 0000000..64be8f1 --- /dev/null +++ b/lib/screens/gallery_page/gallery_page.dart @@ -0,0 +1,67 @@ +import 'dart:io'; + +import 'package:flutter/material.dart'; +import 'package:permission_handler/permission_handler.dart'; +import 'package:device_info_plus/device_info_plus.dart'; + +import 'image_grid.dart'; + +class GalleryPage extends StatefulWidget { + const GalleryPage({super.key}); + + @override + _GalleryPageState createState() => _GalleryPageState(); +} + +class _GalleryPageState extends State { + bool _permissionState = false; + + @override + void initState() { + super.initState(); + _requestPermissions(); + } + + Future _requestPermissions() async { + if (Platform.isAndroid) { + final androidInfo = await DeviceInfoPlugin().androidInfo; + final androidVersion = int.parse(androidInfo.version.release); + + if (androidVersion >= 13) { + var statusPhotos = await Permission.photos.request(); + var statusVideos = await Permission.videos.request(); + setState(() { + _permissionState = statusPhotos.isGranted && statusVideos.isGranted; + }); + } else { + var statusStorage = await Permission.storage.request(); + setState(() { + _permissionState = statusStorage.isGranted; + }); + } + } + // #TODO: Handle iOS permissions + } + + @override + Widget build(BuildContext context) { + if (!_permissionState) { + return Center( + child: Text( + 'No permissions to access media', + style: TextStyle(fontSize: 18, color: Colors.red), + ), + ); + } + + else { + return const ImageGrid(); + } + } +} + + + + + + From bffa36fdc3e57da8d9bd07705629e9170b33b02e Mon Sep 17 00:00:00 2001 From: lucasverdelho Date: Thu, 3 Oct 2024 19:33:44 +0100 Subject: [PATCH 23/66] Added infinite page dependency --- pubspec.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/pubspec.yaml b/pubspec.yaml index 39b0723..0f3004d 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -22,6 +22,7 @@ dependencies: permission_handler: ^11.3.1 photo_manager: ^3.5.0 device_info_plus: ^10.1.2 + infinite_scroll_pagination: ^4.0.0 dev_dependencies: flutter_test: From 912a6734b04f4acfa1c818074e9bc948ccf436d4 Mon Sep 17 00:00:00 2001 From: lucasverdelho Date: Thu, 3 Oct 2024 19:42:48 +0100 Subject: [PATCH 24/66] added todo on preview button --- lib/screens/gallery_page/preview_container.dart | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/screens/gallery_page/preview_container.dart b/lib/screens/gallery_page/preview_container.dart index 221e106..d206e40 100644 --- a/lib/screens/gallery_page/preview_container.dart +++ b/lib/screens/gallery_page/preview_container.dart @@ -14,8 +14,8 @@ class PreviewContainer extends StatelessWidget { return thumbnail != null ? GestureDetector( onTap: () { - // Handle tap on thumbnail (e.g., full screen preview) - print('Asset tapped: ${asset.title}'); + print('File tapped: ${asset.title}'); + // #TODO: Implement the logic to upload a photo }, child: Container( decoration: BoxDecoration( From 3e5ede5bb47680c36abe6699879d6b300c37d185 Mon Sep 17 00:00:00 2001 From: A-VT <83979638+A-VT@users.noreply.github.com> Date: Thu, 3 Oct 2024 19:54:38 +0100 Subject: [PATCH 25/66] Change to REST. Login functional. --- lib/model/login_request.dart | 27 ++++++ lib/model/login_response.dart | 11 +++ lib/model/media.dart | 63 +++++++++++++ lib/screens/login.dart | 29 ++---- lib/services/api_service.dart | 160 +++++++++++++++++++--------------- 5 files changed, 201 insertions(+), 89 deletions(-) create mode 100644 lib/model/login_request.dart create mode 100644 lib/model/login_response.dart create mode 100644 lib/model/media.dart diff --git a/lib/model/login_request.dart b/lib/model/login_request.dart new file mode 100644 index 0000000..96f4eb3 --- /dev/null +++ b/lib/model/login_request.dart @@ -0,0 +1,27 @@ +import 'dart:convert'; + +/* +List loginRequestFromJson(String str) => + List.from(json.decode(str).map((x) => LoginRequest.fromJson(x))); +*/ + +String loginRequestToJson(List data) => + json.encode(List.from(data.map((x) => x.toJson()))); + +class LoginRequest { + String username; + String password; + + LoginRequest(this.username, this.password); + + // factory LoginRequest(String username, String password) { + // return LoginRequest(username, password); + // } + + Map toJson() { + return { + "username": this.username, + "password": this.password, + }; + } +} diff --git a/lib/model/login_response.dart b/lib/model/login_response.dart new file mode 100644 index 0000000..49472b8 --- /dev/null +++ b/lib/model/login_response.dart @@ -0,0 +1,11 @@ +//import 'dart:convert'; + +class LoginResponse { + String token; + + LoginResponse(this.token); + + factory LoginResponse.fromJson(Map json) { + return LoginResponse(json["token"]); + } +} diff --git a/lib/model/media.dart b/lib/model/media.dart new file mode 100644 index 0000000..f389279 --- /dev/null +++ b/lib/model/media.dart @@ -0,0 +1,63 @@ +import 'dart:convert'; + +List mediaFileFromJson(String str) => + List.from(json.decode(str).map((x) => MediaFile.fromJson(x))); + +String mediaFileToJson(List data) => + json.encode(List.from(data.map((x) => x.toJson()))); + +class MediaFile { + String? fileName; + String? fileType; + int? fileSize; + List? fileChunks; // File data as chunks + //MetaData? metaData; // Optional metadata + + MediaFile({ + this.fileName, + this.fileType, + this.fileSize, + this.fileChunks, + //this.metaData, + }); + + factory MediaFile.fromJson(Map json) { + return MediaFile( + fileName: json["fileName"], + fileType: json["fileType"], + fileSize: json["fileSize"], + fileChunks: json["fileChunks"] == null ? [] : List.from(json["fileChunks"]), + //metaData: json["metaData"] == null ? null : MetaData.fromJson(json["metaData"]), + ); + } + + Map toJson() => { + "fileName": fileName, + "fileType": fileType, + "fileSize": fileSize, + "fileChunks": fileChunks == null ? [] : List.from(fileChunks!), + //"metaData": metaData?.toJson(), + }; +} + +/* +class MetaData { + String? createdBy; + DateTime? creationDate; + + MetaData({ + this.createdBy, + this.creationDate, + }); + + factory MetaData.fromJson(Map json) => MetaData( + createdBy: json["createdBy"], + creationDate: json["creationDate"] == null ? null : DateTime.parse(json["creationDate"]), + ); + + Map toJson() => { + "createdBy": createdBy, + "creationDate": creationDate?.toIso8601String(), + }; +} +*/ \ No newline at end of file diff --git a/lib/screens/login.dart b/lib/screens/login.dart index 24a86bd..99fa3ed 100644 --- a/lib/screens/login.dart +++ b/lib/screens/login.dart @@ -1,17 +1,16 @@ import 'package:flutter/material.dart'; -import 'package:grpc/grpc.dart'; import 'package:maybe_just_nothing/maybe_just_nothing.dart'; import '../services/api_service.dart'; class LoginPage extends StatefulWidget { - LoginPage({super.key}); + const LoginPage({super.key}); @override State createState() => _LoginPageState(); } class _LoginPageState extends State { - final loginServiceClient = APIServiceClient(); + final apiServiceClient = APIServiceClient(); String username = ""; String password = ""; @@ -41,28 +40,14 @@ class _LoginPageState extends State { } void login(String username, String password) async { - final response = await loginServiceClient.login(username, password); + final response = await apiServiceClient.login(username, password); print(response); - if (response is Just) { - var error = response.value; - if (error == null) { - // NOTE: Other error - showErrorDialog(context, "unkown error"); - } else { - // NOTE: GRPC error - switch (error.code) { - case 5: - showErrorDialog(context, error.message ?? ""); - case 14: - showErrorDialog(context, error.message ?? ""); - case _: - showErrorDialog(context, error.message ?? ""); - } - } - } else { + if (response != null){ print("OK"); Navigator.of(context).pushReplacementNamed("/"); + } else{ + showErrorDialog(context, "unkown error"); } } @@ -106,5 +91,7 @@ class _LoginPageState extends State { ), floatingActionButton: FloatingActionButton( onPressed: () => Navigator.of(context).pushReplacementNamed("/"))); + // floatingActionButton: FloatingActionButton( + // onPressed: () => Navigator.of(context).pushReplacementNamed("/"))); } } \ No newline at end of file diff --git a/lib/services/api_service.dart b/lib/services/api_service.dart index 0d284e6..3185352 100644 --- a/lib/services/api_service.dart +++ b/lib/services/api_service.dart @@ -1,77 +1,106 @@ import 'dart:typed_data'; - -import 'package:grpc/grpc.dart'; -import 'package:mobile/grpc_gen/chronolens.pb.dart'; import 'package:flutter_secure_storage/flutter_secure_storage.dart'; import 'package:maybe_just_nothing/maybe_just_nothing.dart'; -import '../grpc_gen/chronolens.pbgrpc.dart'; // Import your generated gRPC code - -class APIServiceClient { - late ClientChannel channel; - late ChronoLensClient stub; - - APIServiceClient() { - // Initialize gRPC channel - channel = ClientChannel( - '10.0.0.10', // The IP or hostname of the gRPC server - port: 8080, // The port on which the gRPC server is running - options: const ChannelOptions( - credentials: ChannelCredentials - .insecure(), // Use secure credentials in production - ), - ); - - // Create stub from generated gRPC code - stub = ChronoLensClient(channel); - } - - // Function to get photo by ID - Future> login(String username, String password) async { - try { - final request = LoginRequest() - ..username = username - ..password = password; - - final response = await stub.login(request); +import 'package:http/http.dart' as http; +import 'dart:convert'; - final storage = new FlutterSecureStorage(); - await storage.write(key: "jwtToken", value: response.token); +import 'package:mobile/model/login_request.dart'; +import 'package:mobile/model/login_response.dart'; +import 'package:mobile/model/media.dart'; - // String? value = await storage.read(key: "jwtToken"); - // print(value); +class APIServiceClient { - return const Nothing(); - } on GrpcError catch (e) { - print('GrpcError: $e'); - return Just(e); - } catch (e) { - print('Random Error: $e'); - return const Just(null); + Future login(String username, String password) async { + var uri = Uri.parse('http://10.0.0.10:8080/login'); + var payload = LoginRequest(username, password).toJson(); + var body = json.encode(payload); + Map headers = { + 'Content-type': 'application/json', + 'Accept': 'application/json', + }; + var response = await http.post(uri, body: body, headers: headers); + if (response.statusCode == 200) { + return LoginResponse.fromJson(json.decode(response.body)); } + return null; } - // Function to upload an image - Future uploadImage(String filetype, ByteBuffer data) async { - try { - // Create an ImageInfo object with the filetype - final imageInfo = ImageInfo()..filetype = filetype; - // Create an UploadImageRequest with image info - final infoRequest = UploadImageRequest()..info = imageInfo; - - // Create an UploadImageRequest with image data - final imageRequest = UploadImageRequest()..image = data.asUint8List(); - - // Create a streaming request (since it's defined as stream in proto) - final response = await stub.uploadImage(Stream.fromIterable([infoRequest, imageRequest])); - - // Return the response - return response; - } catch (e) { - print('Error uploading image: $e'); - return null; + Future?> getMediaFile() async { + var client = http.Client(); + var uri = Uri.parse('https://10.0.0.10:8080/image_upload'); + var response = await client.get(uri); + if (response.statusCode == 200) { + return mediaFileFromJson(const Utf8Decoder().convert(response.bodyBytes)); } + return null; } - /*Future uploadImage(String filetype, ByteBuffer data) async { + +// late ClientChannel channel; +// late ChronoLensClient stub; + +// APIServiceClient() { +// // Initialize gRPC channel +// channel = ClientChannel( +// '10.0.0.10', // The IP or hostname of the gRPC server +// port: 8080, // The port on which the gRPC server is running +// options: const ChannelOptions( +// credentials: ChannelCredentials +// .insecure(), // Use secure credentials in production +// ), +// ); + +// // Create stub from generated gRPC code +// stub = ChronoLensClient(channel); +// } + +// // Function to get photo by ID +// Future> login(String username, String password) async { +// try { +// final request = LoginRequest() +// ..username = username +// ..password = password; + +// final response = await stub.login(request); + +// final storage = new FlutterSecureStorage(); +// await storage.write(key: "jwtToken", value: response.token); + +// // String? value = await storage.read(key: "jwtToken"); +// // print(value); + +// return const Nothing(); +// } on GrpcError catch (e) { +// print('GrpcError: $e'); +// return Just(e); +// } catch (e) { +// print('Random Error: $e'); +// return const Just(null); +// } +// } + +// // Function to upload an image +// Future uploadImage(String filetype, ByteBuffer data) async { +// try { +// // Create an ImageInfo object with the filetype +// final imageInfo = ImageInfo()..filetype = filetype; + +// // Create an UploadImageRequest with image info +// final infoRequest = UploadImageRequest()..info = imageInfo; + +// // Create an UploadImageRequest with image data +// final imageRequest = UploadImageRequest()..image = data.asUint8List(); + +// // Create a streaming request (since it's defined as stream in proto) +// final response = await stub.uploadImage(Stream.fromIterable([infoRequest, imageRequest])); + +// // Return the response +// return response; +// } catch (e) { +// print('Error uploading image: $e'); +// return null; +// } +// } +/*Future uploadImage(String filetype, ByteBuffer data) async { try { // Create a GetPhotoRequest with the provided id final request = UploadImageRequest() @@ -87,9 +116,4 @@ class APIServiceClient { return null; } }*/ - - // Gracefully close the channel when no longer needed - Future shutdown() async { - await channel.shutdown(); - } } From 3479ee39de94400f51503fe80146d1c963ecc880 Mon Sep 17 00:00:00 2001 From: A-VT <83979638+A-VT@users.noreply.github.com> Date: Thu, 3 Oct 2024 21:53:19 +0100 Subject: [PATCH 26/66] Co-authored-by: Diogo Barbosa Co-authored-by: Lucas Verdelho --- android/local.properties | 2 +- lib/grpc_gen/chronolens.pb.dart | 291 ------------------ lib/grpc_gen/chronolens.pbenum.dart | 7 - lib/grpc_gen/chronolens.pbgrpc.dart | 77 ----- lib/grpc_gen/chronolens.pbjson.dart | 65 ---- lib/model/image_request.dart | 0 lib/model/media.dart | 78 ++--- lib/screens/gallery_page/image_grid.dart | 3 +- .../gallery_page/preview_container.dart | 28 +- lib/services/api_service.dart | 42 ++- pubspec.lock | 24 ++ 11 files changed, 127 insertions(+), 490 deletions(-) delete mode 100644 lib/grpc_gen/chronolens.pb.dart delete mode 100644 lib/grpc_gen/chronolens.pbenum.dart delete mode 100644 lib/grpc_gen/chronolens.pbgrpc.dart delete mode 100644 lib/grpc_gen/chronolens.pbjson.dart create mode 100644 lib/model/image_request.dart diff --git a/android/local.properties b/android/local.properties index e9d3d40..2ed25b2 100644 --- a/android/local.properties +++ b/android/local.properties @@ -1,4 +1,4 @@ -sdk.dir=C:/Users/Alice/AppData/Local/Android/Sdk +sdk.dir=C:\\Users\\Alice\\AppData\\Local\\Android\\sdk flutter.sdk=C:\\Users\\Alice\\Downloads\\flutter flutter.buildMode=debug flutter.versionName=1.0.0 diff --git a/lib/grpc_gen/chronolens.pb.dart b/lib/grpc_gen/chronolens.pb.dart deleted file mode 100644 index f986c1b..0000000 --- a/lib/grpc_gen/chronolens.pb.dart +++ /dev/null @@ -1,291 +0,0 @@ -/// -// Generated code. Do not modify. -// source: chronolens.proto -// -// @dart = 2.12 -// ignore_for_file: annotate_overrides,camel_case_types,constant_identifier_names,directives_ordering,library_prefixes,non_constant_identifier_names,prefer_final_fields,return_of_invalid_type,unnecessary_const,unnecessary_import,unnecessary_this,unused_import,unused_shown_name - -import 'dart:core' as $core; - -import 'package:protobuf/protobuf.dart' as $pb; - -class LoginRequest extends $pb.GeneratedMessage { - static final $pb.BuilderInfo _i = $pb.BuilderInfo(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'LoginRequest', package: const $pb.PackageName(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'chronolens'), createEmptyInstance: create) - ..aOS(1, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'username') - ..aOS(2, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'password') - ..hasRequiredFields = false - ; - - LoginRequest._() : super(); - factory LoginRequest({ - $core.String? username, - $core.String? password, - }) { - final _result = create(); - if (username != null) { - _result.username = username; - } - if (password != null) { - _result.password = password; - } - return _result; - } - factory LoginRequest.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); - factory LoginRequest.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); - @$core.Deprecated( - 'Using this can add significant overhead to your binary. ' - 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' - 'Will be removed in next major version') - LoginRequest clone() => LoginRequest()..mergeFromMessage(this); - @$core.Deprecated( - 'Using this can add significant overhead to your binary. ' - 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' - 'Will be removed in next major version') - LoginRequest copyWith(void Function(LoginRequest) updates) => super.copyWith((message) => updates(message as LoginRequest)) as LoginRequest; // ignore: deprecated_member_use - $pb.BuilderInfo get info_ => _i; - @$core.pragma('dart2js:noInline') - static LoginRequest create() => LoginRequest._(); - LoginRequest createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); - @$core.pragma('dart2js:noInline') - static LoginRequest getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); - static LoginRequest? _defaultInstance; - - @$pb.TagNumber(1) - $core.String get username => $_getSZ(0); - @$pb.TagNumber(1) - set username($core.String v) { $_setString(0, v); } - @$pb.TagNumber(1) - $core.bool hasUsername() => $_has(0); - @$pb.TagNumber(1) - void clearUsername() => clearField(1); - - @$pb.TagNumber(2) - $core.String get password => $_getSZ(1); - @$pb.TagNumber(2) - set password($core.String v) { $_setString(1, v); } - @$pb.TagNumber(2) - $core.bool hasPassword() => $_has(1); - @$pb.TagNumber(2) - void clearPassword() => clearField(2); -} - -class LoginResponse extends $pb.GeneratedMessage { - static final $pb.BuilderInfo _i = $pb.BuilderInfo(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'LoginResponse', package: const $pb.PackageName(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'chronolens'), createEmptyInstance: create) - ..aOS(1, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'token') - ..hasRequiredFields = false - ; - - LoginResponse._() : super(); - factory LoginResponse({ - $core.String? token, - }) { - final _result = create(); - if (token != null) { - _result.token = token; - } - return _result; - } - factory LoginResponse.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); - factory LoginResponse.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); - @$core.Deprecated( - 'Using this can add significant overhead to your binary. ' - 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' - 'Will be removed in next major version') - LoginResponse clone() => LoginResponse()..mergeFromMessage(this); - @$core.Deprecated( - 'Using this can add significant overhead to your binary. ' - 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' - 'Will be removed in next major version') - LoginResponse copyWith(void Function(LoginResponse) updates) => super.copyWith((message) => updates(message as LoginResponse)) as LoginResponse; // ignore: deprecated_member_use - $pb.BuilderInfo get info_ => _i; - @$core.pragma('dart2js:noInline') - static LoginResponse create() => LoginResponse._(); - LoginResponse createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); - @$core.pragma('dart2js:noInline') - static LoginResponse getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); - static LoginResponse? _defaultInstance; - - @$pb.TagNumber(1) - $core.String get token => $_getSZ(0); - @$pb.TagNumber(1) - set token($core.String v) { $_setString(0, v); } - @$pb.TagNumber(1) - $core.bool hasToken() => $_has(0); - @$pb.TagNumber(1) - void clearToken() => clearField(1); -} - -enum UploadImageRequest_Data { - info, - image, - notSet -} - -class UploadImageRequest extends $pb.GeneratedMessage { - static const $core.Map<$core.int, UploadImageRequest_Data> _UploadImageRequest_DataByTag = { - 1 : UploadImageRequest_Data.info, - 2 : UploadImageRequest_Data.image, - 0 : UploadImageRequest_Data.notSet - }; - static final $pb.BuilderInfo _i = $pb.BuilderInfo(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'UploadImageRequest', package: const $pb.PackageName(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'chronolens'), createEmptyInstance: create) - ..oo(0, [1, 2]) - ..aOM(1, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'info', subBuilder: ImageInfo.create) - ..a<$core.List<$core.int>>(2, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'image', $pb.PbFieldType.OY) - ..hasRequiredFields = false - ; - - UploadImageRequest._() : super(); - factory UploadImageRequest({ - ImageInfo? info, - $core.List<$core.int>? image, - }) { - final _result = create(); - if (info != null) { - _result.info = info; - } - if (image != null) { - _result.image = image; - } - return _result; - } - factory UploadImageRequest.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); - factory UploadImageRequest.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); - @$core.Deprecated( - 'Using this can add significant overhead to your binary. ' - 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' - 'Will be removed in next major version') - UploadImageRequest clone() => UploadImageRequest()..mergeFromMessage(this); - @$core.Deprecated( - 'Using this can add significant overhead to your binary. ' - 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' - 'Will be removed in next major version') - UploadImageRequest copyWith(void Function(UploadImageRequest) updates) => super.copyWith((message) => updates(message as UploadImageRequest)) as UploadImageRequest; // ignore: deprecated_member_use - $pb.BuilderInfo get info_ => _i; - @$core.pragma('dart2js:noInline') - static UploadImageRequest create() => UploadImageRequest._(); - UploadImageRequest createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); - @$core.pragma('dart2js:noInline') - static UploadImageRequest getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); - static UploadImageRequest? _defaultInstance; - - UploadImageRequest_Data whichData() => _UploadImageRequest_DataByTag[$_whichOneof(0)]!; - void clearData() => clearField($_whichOneof(0)); - - @$pb.TagNumber(1) - ImageInfo get info => $_getN(0); - @$pb.TagNumber(1) - set info(ImageInfo v) { setField(1, v); } - @$pb.TagNumber(1) - $core.bool hasInfo() => $_has(0); - @$pb.TagNumber(1) - void clearInfo() => clearField(1); - @$pb.TagNumber(1) - ImageInfo ensureInfo() => $_ensure(0); - - @$pb.TagNumber(2) - $core.List<$core.int> get image => $_getN(1); - @$pb.TagNumber(2) - set image($core.List<$core.int> v) { $_setBytes(1, v); } - @$pb.TagNumber(2) - $core.bool hasImage() => $_has(1); - @$pb.TagNumber(2) - void clearImage() => clearField(2); -} - -class ImageInfo extends $pb.GeneratedMessage { - static final $pb.BuilderInfo _i = $pb.BuilderInfo(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'ImageInfo', package: const $pb.PackageName(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'chronolens'), createEmptyInstance: create) - ..aOS(1, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'filetype') - ..hasRequiredFields = false - ; - - ImageInfo._() : super(); - factory ImageInfo({ - $core.String? filetype, - }) { - final _result = create(); - if (filetype != null) { - _result.filetype = filetype; - } - return _result; - } - factory ImageInfo.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); - factory ImageInfo.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); - @$core.Deprecated( - 'Using this can add significant overhead to your binary. ' - 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' - 'Will be removed in next major version') - ImageInfo clone() => ImageInfo()..mergeFromMessage(this); - @$core.Deprecated( - 'Using this can add significant overhead to your binary. ' - 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' - 'Will be removed in next major version') - ImageInfo copyWith(void Function(ImageInfo) updates) => super.copyWith((message) => updates(message as ImageInfo)) as ImageInfo; // ignore: deprecated_member_use - $pb.BuilderInfo get info_ => _i; - @$core.pragma('dart2js:noInline') - static ImageInfo create() => ImageInfo._(); - ImageInfo createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); - @$core.pragma('dart2js:noInline') - static ImageInfo getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); - static ImageInfo? _defaultInstance; - - @$pb.TagNumber(1) - $core.String get filetype => $_getSZ(0); - @$pb.TagNumber(1) - set filetype($core.String v) { $_setString(0, v); } - @$pb.TagNumber(1) - $core.bool hasFiletype() => $_has(0); - @$pb.TagNumber(1) - void clearFiletype() => clearField(1); -} - -class UploadImageResponse extends $pb.GeneratedMessage { - static final $pb.BuilderInfo _i = $pb.BuilderInfo(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'UploadImageResponse', package: const $pb.PackageName(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'chronolens'), createEmptyInstance: create) - ..a<$core.int>(1, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'size', $pb.PbFieldType.OU3) - ..hasRequiredFields = false - ; - - UploadImageResponse._() : super(); - factory UploadImageResponse({ - $core.int? size, - }) { - final _result = create(); - if (size != null) { - _result.size = size; - } - return _result; - } - factory UploadImageResponse.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); - factory UploadImageResponse.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); - @$core.Deprecated( - 'Using this can add significant overhead to your binary. ' - 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' - 'Will be removed in next major version') - UploadImageResponse clone() => UploadImageResponse()..mergeFromMessage(this); - @$core.Deprecated( - 'Using this can add significant overhead to your binary. ' - 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' - 'Will be removed in next major version') - UploadImageResponse copyWith(void Function(UploadImageResponse) updates) => super.copyWith((message) => updates(message as UploadImageResponse)) as UploadImageResponse; // ignore: deprecated_member_use - $pb.BuilderInfo get info_ => _i; - @$core.pragma('dart2js:noInline') - static UploadImageResponse create() => UploadImageResponse._(); - UploadImageResponse createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); - @$core.pragma('dart2js:noInline') - static UploadImageResponse getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); - static UploadImageResponse? _defaultInstance; - - @$pb.TagNumber(1) - $core.int get size => $_getIZ(0); - @$pb.TagNumber(1) - set size($core.int v) { $_setUnsignedInt32(0, v); } - @$pb.TagNumber(1) - $core.bool hasSize() => $_has(0); - @$pb.TagNumber(1) - void clearSize() => clearField(1); -} - diff --git a/lib/grpc_gen/chronolens.pbenum.dart b/lib/grpc_gen/chronolens.pbenum.dart deleted file mode 100644 index ee564e9..0000000 --- a/lib/grpc_gen/chronolens.pbenum.dart +++ /dev/null @@ -1,7 +0,0 @@ -/// -// Generated code. Do not modify. -// source: chronolens.proto -// -// @dart = 2.12 -// ignore_for_file: annotate_overrides,camel_case_types,constant_identifier_names,directives_ordering,library_prefixes,non_constant_identifier_names,prefer_final_fields,return_of_invalid_type,unnecessary_const,unnecessary_import,unnecessary_this,unused_import,unused_shown_name - diff --git a/lib/grpc_gen/chronolens.pbgrpc.dart b/lib/grpc_gen/chronolens.pbgrpc.dart deleted file mode 100644 index bafe49f..0000000 --- a/lib/grpc_gen/chronolens.pbgrpc.dart +++ /dev/null @@ -1,77 +0,0 @@ -/// -// Generated code. Do not modify. -// source: chronolens.proto -// -// @dart = 2.12 -// ignore_for_file: annotate_overrides,camel_case_types,constant_identifier_names,directives_ordering,library_prefixes,non_constant_identifier_names,prefer_final_fields,return_of_invalid_type,unnecessary_const,unnecessary_import,unnecessary_this,unused_import,unused_shown_name - -import 'dart:async' as $async; - -import 'dart:core' as $core; - -import 'package:grpc/service_api.dart' as $grpc; -import 'chronolens.pb.dart' as $0; -export 'chronolens.pb.dart'; - -class ChronoLensClient extends $grpc.Client { - static final _$login = $grpc.ClientMethod<$0.LoginRequest, $0.LoginResponse>( - '/chronolens.ChronoLens/Login', - ($0.LoginRequest value) => value.writeToBuffer(), - ($core.List<$core.int> value) => $0.LoginResponse.fromBuffer(value)); - static final _$uploadImage = - $grpc.ClientMethod<$0.UploadImageRequest, $0.UploadImageResponse>( - '/chronolens.ChronoLens/UploadImage', - ($0.UploadImageRequest value) => value.writeToBuffer(), - ($core.List<$core.int> value) => - $0.UploadImageResponse.fromBuffer(value)); - - ChronoLensClient($grpc.ClientChannel channel, - {$grpc.CallOptions? options, - $core.Iterable<$grpc.ClientInterceptor>? interceptors}) - : super(channel, options: options, interceptors: interceptors); - - $grpc.ResponseFuture<$0.LoginResponse> login($0.LoginRequest request, - {$grpc.CallOptions? options}) { - return $createUnaryCall(_$login, request, options: options); - } - - $grpc.ResponseFuture<$0.UploadImageResponse> uploadImage( - $async.Stream<$0.UploadImageRequest> request, - {$grpc.CallOptions? options}) { - return $createStreamingCall(_$uploadImage, request, options: options) - .single; - } -} - -abstract class ChronoLensServiceBase extends $grpc.Service { - $core.String get $name => 'chronolens.ChronoLens'; - - ChronoLensServiceBase() { - $addMethod($grpc.ServiceMethod<$0.LoginRequest, $0.LoginResponse>( - 'Login', - login_Pre, - false, - false, - ($core.List<$core.int> value) => $0.LoginRequest.fromBuffer(value), - ($0.LoginResponse value) => value.writeToBuffer())); - $addMethod( - $grpc.ServiceMethod<$0.UploadImageRequest, $0.UploadImageResponse>( - 'UploadImage', - uploadImage, - true, - false, - ($core.List<$core.int> value) => - $0.UploadImageRequest.fromBuffer(value), - ($0.UploadImageResponse value) => value.writeToBuffer())); - } - - $async.Future<$0.LoginResponse> login_Pre( - $grpc.ServiceCall call, $async.Future<$0.LoginRequest> request) async { - return login(call, await request); - } - - $async.Future<$0.LoginResponse> login( - $grpc.ServiceCall call, $0.LoginRequest request); - $async.Future<$0.UploadImageResponse> uploadImage( - $grpc.ServiceCall call, $async.Stream<$0.UploadImageRequest> request); -} diff --git a/lib/grpc_gen/chronolens.pbjson.dart b/lib/grpc_gen/chronolens.pbjson.dart deleted file mode 100644 index 597cd08..0000000 --- a/lib/grpc_gen/chronolens.pbjson.dart +++ /dev/null @@ -1,65 +0,0 @@ -/// -// Generated code. Do not modify. -// source: chronolens.proto -// -// @dart = 2.12 -// ignore_for_file: annotate_overrides,camel_case_types,constant_identifier_names,deprecated_member_use_from_same_package,directives_ordering,library_prefixes,non_constant_identifier_names,prefer_final_fields,return_of_invalid_type,unnecessary_const,unnecessary_import,unnecessary_this,unused_import,unused_shown_name - -import 'dart:core' as $core; -import 'dart:convert' as $convert; -import 'dart:typed_data' as $typed_data; -@$core.Deprecated('Use loginRequestDescriptor instead') -const LoginRequest$json = const { - '1': 'LoginRequest', - '2': const [ - const {'1': 'username', '3': 1, '4': 1, '5': 9, '10': 'username'}, - const {'1': 'password', '3': 2, '4': 1, '5': 9, '10': 'password'}, - ], -}; - -/// Descriptor for `LoginRequest`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List loginRequestDescriptor = $convert.base64Decode('CgxMb2dpblJlcXVlc3QSGgoIdXNlcm5hbWUYASABKAlSCHVzZXJuYW1lEhoKCHBhc3N3b3JkGAIgASgJUghwYXNzd29yZA=='); -@$core.Deprecated('Use loginResponseDescriptor instead') -const LoginResponse$json = const { - '1': 'LoginResponse', - '2': const [ - const {'1': 'token', '3': 1, '4': 1, '5': 9, '10': 'token'}, - ], -}; - -/// Descriptor for `LoginResponse`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List loginResponseDescriptor = $convert.base64Decode('Cg1Mb2dpblJlc3BvbnNlEhQKBXRva2VuGAEgASgJUgV0b2tlbg=='); -@$core.Deprecated('Use uploadImageRequestDescriptor instead') -const UploadImageRequest$json = const { - '1': 'UploadImageRequest', - '2': const [ - const {'1': 'info', '3': 1, '4': 1, '5': 11, '6': '.chronolens.ImageInfo', '9': 0, '10': 'info'}, - const {'1': 'image', '3': 2, '4': 1, '5': 12, '9': 0, '10': 'image'}, - ], - '8': const [ - const {'1': 'data'}, - ], -}; - -/// Descriptor for `UploadImageRequest`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List uploadImageRequestDescriptor = $convert.base64Decode('ChJVcGxvYWRJbWFnZVJlcXVlc3QSKwoEaW5mbxgBIAEoCzIVLmNocm9ub2xlbnMuSW1hZ2VJbmZvSABSBGluZm8SFgoFaW1hZ2UYAiABKAxIAFIFaW1hZ2VCBgoEZGF0YQ=='); -@$core.Deprecated('Use imageInfoDescriptor instead') -const ImageInfo$json = const { - '1': 'ImageInfo', - '2': const [ - const {'1': 'filetype', '3': 1, '4': 1, '5': 9, '10': 'filetype'}, - ], -}; - -/// Descriptor for `ImageInfo`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List imageInfoDescriptor = $convert.base64Decode('CglJbWFnZUluZm8SGgoIZmlsZXR5cGUYASABKAlSCGZpbGV0eXBl'); -@$core.Deprecated('Use uploadImageResponseDescriptor instead') -const UploadImageResponse$json = const { - '1': 'UploadImageResponse', - '2': const [ - const {'1': 'size', '3': 1, '4': 1, '5': 13, '10': 'size'}, - ], -}; - -/// Descriptor for `UploadImageResponse`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List uploadImageResponseDescriptor = $convert.base64Decode('ChNVcGxvYWRJbWFnZVJlc3BvbnNlEhIKBHNpemUYASABKA1SBHNpemU='); diff --git a/lib/model/image_request.dart b/lib/model/image_request.dart new file mode 100644 index 0000000..e69de29 diff --git a/lib/model/media.dart b/lib/model/media.dart index f389279..50244a6 100644 --- a/lib/model/media.dart +++ b/lib/model/media.dart @@ -1,44 +1,48 @@ import 'dart:convert'; +import 'package:http/http.dart' as http; -List mediaFileFromJson(String str) => - List.from(json.decode(str).map((x) => MediaFile.fromJson(x))); - -String mediaFileToJson(List data) => - json.encode(List.from(data.map((x) => x.toJson()))); - -class MediaFile { - String? fileName; - String? fileType; - int? fileSize; - List? fileChunks; // File data as chunks - //MetaData? metaData; // Optional metadata - - MediaFile({ - this.fileName, - this.fileType, - this.fileSize, - this.fileChunks, - //this.metaData, - }); - factory MediaFile.fromJson(Map json) { - return MediaFile( - fileName: json["fileName"], - fileType: json["fileType"], - fileSize: json["fileSize"], - fileChunks: json["fileChunks"] == null ? [] : List.from(json["fileChunks"]), - //metaData: json["metaData"] == null ? null : MetaData.fromJson(json["metaData"]), - ); - } - Map toJson() => { - "fileName": fileName, - "fileType": fileType, - "fileSize": fileSize, - "fileChunks": fileChunks == null ? [] : List.from(fileChunks!), - //"metaData": metaData?.toJson(), - }; -} + +// List mediaFileFromJson(String str) => +// List.from(json.decode(str).map((x) => MediaFile.fromJson(x))); + +// String mediaFileToJson(List data) => +// json.encode(List.from(data.map((x) => x.toJson()))); + +// class MediaFile { +// String? fileName; +// String? fileType; +// int? fileSize; +// List? fileChunks; // File data as chunks +// //MetaData? metaData; // Optional metadata + +// MediaFile({ +// this.fileName, +// this.fileType, +// this.fileSize, +// this.fileChunks, +// //this.metaData, +// }); + +// factory MediaFile.fromJson(Map json) { +// return MediaFile( +// fileName: json["fileName"], +// fileType: json["fileType"], +// fileSize: json["fileSize"], +// fileChunks: json["fileChunks"] == null ? [] : List.from(json["fileChunks"]), +// //metaData: json["metaData"] == null ? null : MetaData.fromJson(json["metaData"]), +// ); +// } + +// Map toJson() => { +// "fileName": fileName, +// "fileType": fileType, +// "fileSize": fileSize, +// "fileChunks": fileChunks == null ? [] : List.from(fileChunks!), +// //"metaData": metaData?.toJson(), +// }; +// } /* class MetaData { diff --git a/lib/screens/gallery_page/image_grid.dart b/lib/screens/gallery_page/image_grid.dart index 05fa59c..7558b27 100644 --- a/lib/screens/gallery_page/image_grid.dart +++ b/lib/screens/gallery_page/image_grid.dart @@ -28,8 +28,9 @@ class _ImageGridState extends State { Future _loadAssets(int pageKey) async { try { + final List paths = await PhotoManager.getAssetPathList( - type: RequestType.image, + type: RequestType.fromTypes([RequestType.image,RequestType.video]) ); if (paths.isNotEmpty) { diff --git a/lib/screens/gallery_page/preview_container.dart b/lib/screens/gallery_page/preview_container.dart index d206e40..c9e20a9 100644 --- a/lib/screens/gallery_page/preview_container.dart +++ b/lib/screens/gallery_page/preview_container.dart @@ -1,21 +1,37 @@ import 'dart:typed_data'; - import 'package:flutter/material.dart'; import 'package:photo_manager/photo_manager.dart'; +import 'package:mobile/services/api_service.dart'; class PreviewContainer extends StatelessWidget { final AssetEntity asset; final Uint8List? thumbnail; - const PreviewContainer({Key? key, required this.asset, this.thumbnail}) : super(key: key); + const PreviewContainer({Key? key, required this.asset, this.thumbnail}) + : super(key: key); + + Future _getFilePath(AssetEntity asset) async { + final file = await asset.file; + return file?.path; + } + + + // #TODO: @override Widget build(BuildContext context) { return thumbnail != null ? GestureDetector( - onTap: () { - print('File tapped: ${asset.title}'); - // #TODO: Implement the logic to upload a photo + onTap: () async { + var filePath = await _getFilePath(asset); + + if (filePath != null) { + print('File tapped: ${asset.title}'); + // Upload the file to the server + APIServiceClient().upload(filePath); + } else { + print('Error: Unable to retrieve file path'); + } }, child: Container( decoration: BoxDecoration( @@ -28,7 +44,7 @@ class PreviewContainer extends StatelessWidget { ), ) : Container( - color: Colors.grey, // Placeholder while loading thumbnails + color: Colors.grey, ); } } diff --git a/lib/services/api_service.dart b/lib/services/api_service.dart index 3185352..f10b2f5 100644 --- a/lib/services/api_service.dart +++ b/lib/services/api_service.dart @@ -4,6 +4,8 @@ import 'package:maybe_just_nothing/maybe_just_nothing.dart'; import 'package:http/http.dart' as http; import 'dart:convert'; +import 'dart:io'; + import 'package:mobile/model/login_request.dart'; import 'package:mobile/model/login_response.dart'; import 'package:mobile/model/media.dart'; @@ -25,14 +27,44 @@ class APIServiceClient { return null; } - Future?> getMediaFile() async { - var client = http.Client(); - var uri = Uri.parse('https://10.0.0.10:8080/image_upload'); - var response = await client.get(uri); + void upload(String path /*File file , Map fields */) async { + + var uri = Uri.parse('http://10.0.0.10:8080/image/upload'); + var request = http.MultipartRequest('POST', uri) + ..files.add(await http.MultipartFile.fromPath('image', path)); + + var response = await request.send(); + if (response.statusCode == 200) print('Uploaded!'); + else print("bruh"); + + // Add file to the request + // var fileStream = http.ByteStream(file.openRead()); + // var length = await file.length(); + // var multipartFile = http.MultipartFile('file', fileStream, length, filename: basename(file.path)); + + // // Add the multipart file to the request + // request.files.add(multipartFile); + + // try { + // // Send the request to the server + // var response = await request.send(); + + // // Get response and check status code + // if (response.statusCode == 200) { + // var responseData = await http.Response.fromStream(response); + // print('File uploaded successfully: ${responseData.body}'); + // } else { + // print('File upload failed: ${response.statusCode}'); + // } + // } catch (e) { + // print('Error uploading file: $e'); + // } + + /*var response = await client.get(uri); if (response.statusCode == 200) { return mediaFileFromJson(const Utf8Decoder().convert(response.bodyBytes)); } - return null; + return null;*/ } // late ClientChannel channel; diff --git a/pubspec.lock b/pubspec.lock index 3aeee8d..fced3df 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -299,6 +299,14 @@ packages: url: "https://pub.dev" source: hosted version: "3.1.2" + flutter_staggered_grid_view: + dependency: transitive + description: + name: flutter_staggered_grid_view + sha256: "19e7abb550c96fbfeb546b23f3ff356ee7c59a019a651f8f102a4ba9b7349395" + url: "https://pub.dev" + source: hosted + version: "0.7.0" flutter_test: dependency: "direct dev" description: flutter @@ -389,6 +397,14 @@ packages: url: "https://pub.dev" source: hosted version: "4.0.2" + infinite_scroll_pagination: + dependency: "direct main" + description: + name: infinite_scroll_pagination + sha256: b68bce20752fcf36c7739e60de4175494f74e99e9a69b4dd2fe3a1dd07a7f16a + url: "https://pub.dev" + source: hosted + version: "4.0.0" io: dependency: transitive description: @@ -698,6 +714,14 @@ packages: description: flutter source: sdk version: "0.0.99" + sliver_tools: + dependency: transitive + description: + name: sliver_tools + sha256: eae28220badfb9d0559207badcbbc9ad5331aac829a88cb0964d330d2a4636a6 + url: "https://pub.dev" + source: hosted + version: "0.2.12" source_span: dependency: transitive description: From faea0923ba37195c2978afd3d1a09cfe735d6d6b Mon Sep 17 00:00:00 2001 From: DBarbosa15987 Date: Mon, 7 Oct 2024 21:05:12 +0100 Subject: [PATCH 27/66] Login now able to be done with custom server --- lib/screens/login.dart | 107 ++++++++++++++++-------- lib/services/api_service.dart | 152 ++++++---------------------------- lib/utils/constants.dart | 4 + 3 files changed, 101 insertions(+), 162 deletions(-) create mode 100644 lib/utils/constants.dart diff --git a/lib/screens/login.dart b/lib/screens/login.dart index 99fa3ed..b621cd1 100644 --- a/lib/screens/login.dart +++ b/lib/screens/login.dart @@ -1,5 +1,6 @@ +import 'package:mobile/utils/constants.dart'; +import 'package:shared_preferences/shared_preferences.dart'; import 'package:flutter/material.dart'; -import 'package:maybe_just_nothing/maybe_just_nothing.dart'; import '../services/api_service.dart'; class LoginPage extends StatefulWidget { @@ -14,8 +15,24 @@ class _LoginPageState extends State { String username = ""; String password = ""; + String serverAddress = ""; bool isPasswordVisible = false; bool wrongCredentials = false; + bool isLoadingServerAddress = true; + + @override + void initState() { + super.initState(); + _loadServerAddress(); + } + + Future _loadServerAddress() async { + final SharedPreferences prefs = await SharedPreferences.getInstance(); + setState(() { + serverAddress = prefs.getString(BASE_URL) ?? ""; + isLoadingServerAddress = false; + }); + } @override Widget build(BuildContext context) { @@ -40,58 +57,76 @@ class _LoginPageState extends State { } void login(String username, String password) async { - final response = await apiServiceClient.login(username, password); - print(response); + final response = + await apiServiceClient.login(username, password, serverAddress); - if (response != null){ - print("OK"); - Navigator.of(context).pushReplacementNamed("/"); - } else{ - showErrorDialog(context, "unkown error"); + switch (response) { + case 200: + Navigator.of(context).pushReplacementNamed("/"); + case 401: + showErrorDialog(context, LOGIN_ERROR_401); + case null: + showErrorDialog(context, LOGIN_ERROR_UNKNOWN); + default: + showErrorDialog(context, LOGIN_ERROR_UNKNOWN); } } Widget buildPassword() => TextField( - onChanged: (value) => setState(() => password = value), - decoration: InputDecoration( - labelText: 'Password', - suffixIcon: IconButton( - icon: isPasswordVisible - ? const Icon(Icons.visibility) - : const Icon(Icons.visibility_off), - onPressed: () => - setState(() => isPasswordVisible = !isPasswordVisible), - ), - border: OutlineInputBorder(), - ), - obscureText: !isPasswordVisible, - ); + onChanged: (value) => setState(() => password = value), + decoration: InputDecoration( + labelText: 'Password', + suffixIcon: IconButton( + icon: isPasswordVisible + ? const Icon(Icons.visibility) + : const Icon(Icons.visibility_off), + onPressed: () => + setState(() => isPasswordVisible = !isPasswordVisible), + ), + border: const OutlineInputBorder(), + ), + obscureText: !isPasswordVisible, + ); Widget buildUsername() => TextField( - onChanged: (value) => setState(() => username = value), - decoration: const InputDecoration( - labelText: 'Username', - border: OutlineInputBorder(), - ), - ); + onChanged: (value) => setState(() => username = value), + decoration: const InputDecoration( + labelText: 'Username', + border: OutlineInputBorder(), + ), + ); - Widget submitCredentials() => TextButton( - onPressed: () => login(username, password), - child: const Text("Log In"), - ); + Widget buildServer() { + if (isLoadingServerAddress) { + return const CircularProgressIndicator(); // TODO: Do a full loading page instead?? + } + return TextFormField( + //key: ValueKey(serverAddress), + initialValue: serverAddress, + onChanged: (value) => setState(() => serverAddress = value), + decoration: const InputDecoration( + labelText: 'Server', + border: OutlineInputBorder(), + ), + ); + } + + Widget loginButton() => TextButton( + onPressed: () => login(username, password), + child: const Text("Log In"), + ); return Scaffold( body: Padding( padding: const EdgeInsets.all(16), child: Column(mainAxisAlignment: MainAxisAlignment.center, children: [ + buildServer(), buildUsername(), buildPassword(), - submitCredentials() + loginButton() ]), ), floatingActionButton: FloatingActionButton( onPressed: () => Navigator.of(context).pushReplacementNamed("/"))); - // floatingActionButton: FloatingActionButton( - // onPressed: () => Navigator.of(context).pushReplacementNamed("/"))); } -} \ No newline at end of file +} diff --git a/lib/services/api_service.dart b/lib/services/api_service.dart index f10b2f5..77e2f42 100644 --- a/lib/services/api_service.dart +++ b/lib/services/api_service.dart @@ -1,151 +1,51 @@ -import 'dart:typed_data'; import 'package:flutter_secure_storage/flutter_secure_storage.dart'; -import 'package:maybe_just_nothing/maybe_just_nothing.dart'; import 'package:http/http.dart' as http; +import 'package:mobile/utils/constants.dart'; import 'dart:convert'; - -import 'dart:io'; - +import 'package:shared_preferences/shared_preferences.dart'; import 'package:mobile/model/login_request.dart'; import 'package:mobile/model/login_response.dart'; -import 'package:mobile/model/media.dart'; class APIServiceClient { - - Future login(String username, String password) async { - var uri = Uri.parse('http://10.0.0.10:8080/login'); + Future login(String username, String password, String baseUrl) async { + var uri = Uri.parse('$baseUrl/login'); var payload = LoginRequest(username, password).toJson(); var body = json.encode(payload); Map headers = { 'Content-type': 'application/json', 'Accept': 'application/json', }; - var response = await http.post(uri, body: body, headers: headers); - if (response.statusCode == 200) { - return LoginResponse.fromJson(json.decode(response.body)); + + try { + var response = await http.post(uri, body: body, headers: headers); + if (response.statusCode == 200) { + LoginResponse loginResponse = + LoginResponse.fromJson(json.decode(response.body)); + final storage = FlutterSecureStorage(); + await storage.write(key: 'jwtToken', value: loginResponse.token); + + final SharedPreferences prefs = await SharedPreferences.getInstance(); + await prefs.setString(BASE_URL, baseUrl); + } + return response.statusCode; + } catch (e) { + return null; } - return null; } void upload(String path /*File file , Map fields */) async { + final SharedPreferences prefs = await SharedPreferences.getInstance(); + String baseUrl = prefs.getString(BASE_URL) ?? ""; - var uri = Uri.parse('http://10.0.0.10:8080/image/upload'); + var uri = Uri.parse('$baseUrl/image/upload'); var request = http.MultipartRequest('POST', uri) ..files.add(await http.MultipartFile.fromPath('image', path)); var response = await request.send(); - if (response.statusCode == 200) print('Uploaded!'); - else print("bruh"); - - // Add file to the request - // var fileStream = http.ByteStream(file.openRead()); - // var length = await file.length(); - // var multipartFile = http.MultipartFile('file', fileStream, length, filename: basename(file.path)); - - // // Add the multipart file to the request - // request.files.add(multipartFile); - - // try { - // // Send the request to the server - // var response = await request.send(); - - // // Get response and check status code - // if (response.statusCode == 200) { - // var responseData = await http.Response.fromStream(response); - // print('File uploaded successfully: ${responseData.body}'); - // } else { - // print('File upload failed: ${response.statusCode}'); - // } - // } catch (e) { - // print('Error uploading file: $e'); - // } - - /*var response = await client.get(uri); - if (response.statusCode == 200) { - return mediaFileFromJson(const Utf8Decoder().convert(response.bodyBytes)); - } - return null;*/ + if (response.statusCode == 200) + print('Uploaded!'); + else + print("bruh"); } -// late ClientChannel channel; -// late ChronoLensClient stub; - -// APIServiceClient() { -// // Initialize gRPC channel -// channel = ClientChannel( -// '10.0.0.10', // The IP or hostname of the gRPC server -// port: 8080, // The port on which the gRPC server is running -// options: const ChannelOptions( -// credentials: ChannelCredentials -// .insecure(), // Use secure credentials in production -// ), -// ); - -// // Create stub from generated gRPC code -// stub = ChronoLensClient(channel); -// } - -// // Function to get photo by ID -// Future> login(String username, String password) async { -// try { -// final request = LoginRequest() -// ..username = username -// ..password = password; - -// final response = await stub.login(request); - -// final storage = new FlutterSecureStorage(); -// await storage.write(key: "jwtToken", value: response.token); - -// // String? value = await storage.read(key: "jwtToken"); -// // print(value); - -// return const Nothing(); -// } on GrpcError catch (e) { -// print('GrpcError: $e'); -// return Just(e); -// } catch (e) { -// print('Random Error: $e'); -// return const Just(null); -// } -// } - -// // Function to upload an image -// Future uploadImage(String filetype, ByteBuffer data) async { -// try { -// // Create an ImageInfo object with the filetype -// final imageInfo = ImageInfo()..filetype = filetype; - -// // Create an UploadImageRequest with image info -// final infoRequest = UploadImageRequest()..info = imageInfo; - -// // Create an UploadImageRequest with image data -// final imageRequest = UploadImageRequest()..image = data.asUint8List(); - -// // Create a streaming request (since it's defined as stream in proto) -// final response = await stub.uploadImage(Stream.fromIterable([infoRequest, imageRequest])); - -// // Return the response -// return response; -// } catch (e) { -// print('Error uploading image: $e'); -// return null; -// } -// } -/*Future uploadImage(String filetype, ByteBuffer data) async { - try { - // Create a GetPhotoRequest with the provided id - final request = UploadImageRequest() - ..data = data; - - // Call the gRPC method and get the response - final response = await stub.uploadImage(request); - - // Return the photo URL from the response - return response; - } catch (e) { - print('Error logging in: $e'); - return null; - } - }*/ } diff --git a/lib/utils/constants.dart b/lib/utils/constants.dart new file mode 100644 index 0000000..b20ce89 --- /dev/null +++ b/lib/utils/constants.dart @@ -0,0 +1,4 @@ +const String LOGIN_ERROR_401 = "Error, wrong credentials"; +const String LOGIN_ERROR_UNKNOWN = "Unkown error"; + +const String BASE_URL = "baseUrl"; From dc259b4c55d3f625f206a0eae341d79b52330de3 Mon Sep 17 00:00:00 2001 From: DBarbosa15987 Date: Wed, 9 Oct 2024 12:20:16 +0100 Subject: [PATCH 28/66] Added forgotten dependecy for SharedPreferences --- lib/services/api_service.dart | 4 ++-- pubspec.yaml | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/lib/services/api_service.dart b/lib/services/api_service.dart index 77e2f42..627942b 100644 --- a/lib/services/api_service.dart +++ b/lib/services/api_service.dart @@ -33,7 +33,7 @@ class APIServiceClient { } } - void upload(String path /*File file , Map fields */) async { + void upload(String path) async { final SharedPreferences prefs = await SharedPreferences.getInstance(); String baseUrl = prefs.getString(BASE_URL) ?? ""; @@ -45,7 +45,7 @@ class APIServiceClient { if (response.statusCode == 200) print('Uploaded!'); else - print("bruh"); + print(response); } } diff --git a/pubspec.yaml b/pubspec.yaml index 0f3004d..a1d8a0d 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -17,6 +17,7 @@ dependencies: protobuf: ^3.0.0 maybe_just_nothing: ^0.5.3 flutter_secure_storage: ^9.2.2 + shared_preferences: ^2.3.2 cupertino_icons: ^1.0.8 permission_handler: ^11.3.1 From f25a2a098747c316aa31ed4669d73d70824f8a51 Mon Sep 17 00:00:00 2001 From: DBarbosa15987 Date: Wed, 9 Oct 2024 21:27:10 +0100 Subject: [PATCH 29/66] Upload file with stream --- .../gallery_page/preview_container.dart | 4 +- lib/services/api_service.dart | 52 +++++++++++++++++-- lib/utils/constants.dart | 4 ++ pubspec.yaml | 1 + 4 files changed, 56 insertions(+), 5 deletions(-) diff --git a/lib/screens/gallery_page/preview_container.dart b/lib/screens/gallery_page/preview_container.dart index c9e20a9..6b70c20 100644 --- a/lib/screens/gallery_page/preview_container.dart +++ b/lib/screens/gallery_page/preview_container.dart @@ -27,8 +27,8 @@ class PreviewContainer extends StatelessWidget { if (filePath != null) { print('File tapped: ${asset.title}'); - // Upload the file to the server - APIServiceClient().upload(filePath); + APIServiceClient().uploadFileStream(filePath); + // APIServiceClient().upload(filePath); } else { print('Error: Unable to retrieve file path'); } diff --git a/lib/services/api_service.dart b/lib/services/api_service.dart index 627942b..51cb110 100644 --- a/lib/services/api_service.dart +++ b/lib/services/api_service.dart @@ -1,3 +1,6 @@ +import 'dart:io'; +import 'dart:async'; +import 'package:crypto/crypto.dart'; import 'package:flutter_secure_storage/flutter_secure_storage.dart'; import 'package:http/http.dart' as http; import 'package:mobile/utils/constants.dart'; @@ -18,11 +21,12 @@ class APIServiceClient { try { var response = await http.post(uri, body: body, headers: headers); + if (response.statusCode == 200) { LoginResponse loginResponse = LoginResponse.fromJson(json.decode(response.body)); final storage = FlutterSecureStorage(); - await storage.write(key: 'jwtToken', value: loginResponse.token); + await storage.write(key: JWT_TOKEN, value: loginResponse.token); final SharedPreferences prefs = await SharedPreferences.getInstance(); await prefs.setString(BASE_URL, baseUrl); @@ -36,10 +40,19 @@ class APIServiceClient { void upload(String path) async { final SharedPreferences prefs = await SharedPreferences.getInstance(); String baseUrl = prefs.getString(BASE_URL) ?? ""; - var uri = Uri.parse('$baseUrl/image/upload'); + print('$baseUrl/image/upload'); + + final fileStream = File(path).openRead(); + final checksum = (await sha256.bind(fileStream).first).toString(); + + final storage = FlutterSecureStorage(); + final jwtToken = await storage.read(key: JWT_TOKEN) ?? ""; + var request = http.MultipartRequest('POST', uri) - ..files.add(await http.MultipartFile.fromPath('image', path)); + ..headers[HttpHeaders.authorizationHeader] = "Bearer $jwtToken" + ..files.add( + await http.MultipartFile.fromPath('image', path, filename: checksum)); var response = await request.send(); if (response.statusCode == 200) @@ -48,4 +61,37 @@ class APIServiceClient { print(response); } + Future uploadFileStream(String filePath) async { + final file = new File(filePath); + final SharedPreferences prefs = await SharedPreferences.getInstance(); + String baseUrl = prefs.getString(BASE_URL) ?? ""; + var uri = Uri.parse('$baseUrl/image/upload'); + final fileStream = File(filePath).openRead(); + final checksum = (await sha256.bind(fileStream).first).bytes; + + + final storage = FlutterSecureStorage(); + final jwtToken = await storage.read(key: JWT_TOKEN) ?? ""; + + final streamedRequest = new http.StreamedRequest('POST', uri) + ..headers.addAll({ + 'Cache-Control': 'no-cache', + HttpHeaders.authorizationHeader : "Bearer $jwtToken", + //'Content-Type': file. + }); + streamedRequest.sink.add(checksum); + streamedRequest.contentLength = await file.length() + checksum.length; + print(checksum); + print(streamedRequest.contentLength); + file.openRead().listen((chunk) { + print(chunk.length); + streamedRequest.sink.add(chunk); + }, onDone: () { + streamedRequest.sink.close(); + }); + + var response = await streamedRequest.send(); + + print('Response: ${response}'); + } } diff --git a/lib/utils/constants.dart b/lib/utils/constants.dart index b20ce89..bfe58f8 100644 --- a/lib/utils/constants.dart +++ b/lib/utils/constants.dart @@ -2,3 +2,7 @@ const String LOGIN_ERROR_401 = "Error, wrong credentials"; const String LOGIN_ERROR_UNKNOWN = "Unkown error"; const String BASE_URL = "baseUrl"; +const String CHECKSUM = 'checksum'; + +const String JWT_TOKEN = "jwtToken"; +String getAuthHeader(jwtToken) => "Bearer $jwtToken"; \ No newline at end of file diff --git a/pubspec.yaml b/pubspec.yaml index a1d8a0d..298b501 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -18,6 +18,7 @@ dependencies: maybe_just_nothing: ^0.5.3 flutter_secure_storage: ^9.2.2 shared_preferences: ^2.3.2 + crypto: ^3.0.5 cupertino_icons: ^1.0.8 permission_handler: ^11.3.1 From 863e20afb5c0e24937112a3a1a43eb5ea69773f7 Mon Sep 17 00:00:00 2001 From: DBarbosa15987 Date: Thu, 10 Oct 2024 10:29:48 +0100 Subject: [PATCH 30/66] Deleted outdated file --- lib/model/media.dart | 67 ----------------------------------- lib/services/api_service.dart | 2 +- 2 files changed, 1 insertion(+), 68 deletions(-) delete mode 100644 lib/model/media.dart diff --git a/lib/model/media.dart b/lib/model/media.dart deleted file mode 100644 index 50244a6..0000000 --- a/lib/model/media.dart +++ /dev/null @@ -1,67 +0,0 @@ -import 'dart:convert'; -import 'package:http/http.dart' as http; - - - - -// List mediaFileFromJson(String str) => -// List.from(json.decode(str).map((x) => MediaFile.fromJson(x))); - -// String mediaFileToJson(List data) => -// json.encode(List.from(data.map((x) => x.toJson()))); - -// class MediaFile { -// String? fileName; -// String? fileType; -// int? fileSize; -// List? fileChunks; // File data as chunks -// //MetaData? metaData; // Optional metadata - -// MediaFile({ -// this.fileName, -// this.fileType, -// this.fileSize, -// this.fileChunks, -// //this.metaData, -// }); - -// factory MediaFile.fromJson(Map json) { -// return MediaFile( -// fileName: json["fileName"], -// fileType: json["fileType"], -// fileSize: json["fileSize"], -// fileChunks: json["fileChunks"] == null ? [] : List.from(json["fileChunks"]), -// //metaData: json["metaData"] == null ? null : MetaData.fromJson(json["metaData"]), -// ); -// } - -// Map toJson() => { -// "fileName": fileName, -// "fileType": fileType, -// "fileSize": fileSize, -// "fileChunks": fileChunks == null ? [] : List.from(fileChunks!), -// //"metaData": metaData?.toJson(), -// }; -// } - -/* -class MetaData { - String? createdBy; - DateTime? creationDate; - - MetaData({ - this.createdBy, - this.creationDate, - }); - - factory MetaData.fromJson(Map json) => MetaData( - createdBy: json["createdBy"], - creationDate: json["creationDate"] == null ? null : DateTime.parse(json["creationDate"]), - ); - - Map toJson() => { - "createdBy": createdBy, - "creationDate": creationDate?.toIso8601String(), - }; -} -*/ \ No newline at end of file diff --git a/lib/services/api_service.dart b/lib/services/api_service.dart index 51cb110..2b858b2 100644 --- a/lib/services/api_service.dart +++ b/lib/services/api_service.dart @@ -92,6 +92,6 @@ class APIServiceClient { var response = await streamedRequest.send(); - print('Response: ${response}'); + print('Response: $response'); } } From 6be277a4d6e0d697ade26ea297be5de6aa19cde4 Mon Sep 17 00:00:00 2001 From: lucasverdelho Date: Thu, 10 Oct 2024 16:25:03 +0100 Subject: [PATCH 31/66] Changed pagesize to 20 --- lib/screens/gallery_page/image_grid.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/screens/gallery_page/image_grid.dart b/lib/screens/gallery_page/image_grid.dart index 7558b27..66d018d 100644 --- a/lib/screens/gallery_page/image_grid.dart +++ b/lib/screens/gallery_page/image_grid.dart @@ -12,7 +12,7 @@ class ImageGrid extends StatefulWidget { } class _ImageGridState extends State { - static const _pageSize = 100; + static const _pageSize = 20; final PagingController _pagingController = PagingController(firstPageKey: 0); From f9df1341d275fa7269ff249e7b70572039fd3927 Mon Sep 17 00:00:00 2001 From: DBarbosa15987 Date: Thu, 10 Oct 2024 20:22:50 +0100 Subject: [PATCH 32/66] Updated version of upload file, with headers and auth --- .../gallery_page/preview_container.dart | 1 - lib/services/api_service.dart | 95 +++++++++++-------- 2 files changed, 57 insertions(+), 39 deletions(-) diff --git a/lib/screens/gallery_page/preview_container.dart b/lib/screens/gallery_page/preview_container.dart index 6b70c20..c0e7a0b 100644 --- a/lib/screens/gallery_page/preview_container.dart +++ b/lib/screens/gallery_page/preview_container.dart @@ -28,7 +28,6 @@ class PreviewContainer extends StatelessWidget { if (filePath != null) { print('File tapped: ${asset.title}'); APIServiceClient().uploadFileStream(filePath); - // APIServiceClient().upload(filePath); } else { print('Error: Unable to retrieve file path'); } diff --git a/lib/services/api_service.dart b/lib/services/api_service.dart index 2b858b2..07ea535 100644 --- a/lib/services/api_service.dart +++ b/lib/services/api_service.dart @@ -1,5 +1,7 @@ +import 'package:mime/mime.dart'; import 'dart:io'; import 'dart:async'; +import 'package:dio/dio.dart'; import 'package:crypto/crypto.dart'; import 'package:flutter_secure_storage/flutter_secure_storage.dart'; import 'package:http/http.dart' as http; @@ -15,8 +17,8 @@ class APIServiceClient { var payload = LoginRequest(username, password).toJson(); var body = json.encode(payload); Map headers = { - 'Content-type': 'application/json', - 'Accept': 'application/json', + HttpHeaders.contentTypeHeader: 'application/json', + HttpHeaders.acceptHeader: 'application/json', }; try { @@ -37,61 +39,78 @@ class APIServiceClient { } } - void upload(String path) async { - final SharedPreferences prefs = await SharedPreferences.getInstance(); - String baseUrl = prefs.getString(BASE_URL) ?? ""; - var uri = Uri.parse('$baseUrl/image/upload'); - print('$baseUrl/image/upload'); + // void upload(String path) async { + // final SharedPreferences prefs = await SharedPreferences.getInstance(); + // String baseUrl = prefs.getString(BASE_URL) ?? ""; + // var uri = Uri.parse('$baseUrl/image/upload'); + // print('$baseUrl/image/upload'); - final fileStream = File(path).openRead(); - final checksum = (await sha256.bind(fileStream).first).toString(); + // final fileStream = File(path).openRead(); + // final checksum = (await sha256.bind(fileStream).first).toString(); - final storage = FlutterSecureStorage(); - final jwtToken = await storage.read(key: JWT_TOKEN) ?? ""; + // final storage = FlutterSecureStorage(); + // final jwtToken = await storage.read(key: JWT_TOKEN) ?? ""; + // final mimeType = lookupMimeType(path) ?? "application/octet-stream"; - var request = http.MultipartRequest('POST', uri) - ..headers[HttpHeaders.authorizationHeader] = "Bearer $jwtToken" - ..files.add( - await http.MultipartFile.fromPath('image', path, filename: checksum)); + // var request = http.MultipartRequest('POST', uri) + // ..headers.addAll({ + // HttpHeaders.cacheControlHeader: 'no-cache', + // HttpHeaders.authorizationHeader: "Bearer $jwtToken", + // HttpHeaders.contentTypeHeader: mimeType, + // 'Content-Digest': "sha-256=:$checksum:", + // 'Expect': '100-continue' + // }) + // ..files.add( + // await http.MultipartFile.fromPath('image', path, filename: checksum)); - var response = await request.send(); - if (response.statusCode == 200) - print('Uploaded!'); - else - print(response); - } + // var response = await request.send(); + // if (response.statusCode == 200) + // print('Uploaded!'); + // else + // print(response); + // } Future uploadFileStream(String filePath) async { - final file = new File(filePath); final SharedPreferences prefs = await SharedPreferences.getInstance(); String baseUrl = prefs.getString(BASE_URL) ?? ""; var uri = Uri.parse('$baseUrl/image/upload'); - final fileStream = File(filePath).openRead(); - final checksum = (await sha256.bind(fileStream).first).bytes; - - final storage = FlutterSecureStorage(); final jwtToken = await storage.read(key: JWT_TOKEN) ?? ""; - final streamedRequest = new http.StreamedRequest('POST', uri) + final file = File(filePath); + final fileStream = file.openRead(); + final checksum = base64.encode((await sha256.bind(fileStream).first).bytes); + final mimeType = lookupMimeType(filePath) ?? "application/octet-stream"; + + print("MimeType: $mimeType"); + print("CheckSum: $checksum"); + print("FilePath: $filePath"); + + final streamedRequest = http.StreamedRequest('POST', uri) ..headers.addAll({ - 'Cache-Control': 'no-cache', - HttpHeaders.authorizationHeader : "Bearer $jwtToken", - //'Content-Type': file. + HttpHeaders.cacheControlHeader: 'no-cache', + HttpHeaders.authorizationHeader: "Bearer $jwtToken", + HttpHeaders.contentTypeHeader: mimeType, + 'Content-Digest': "sha-256=:$checksum:", + 'Expect': '100-continue' }); - streamedRequest.sink.add(checksum); - streamedRequest.contentLength = await file.length() + checksum.length; - print(checksum); - print(streamedRequest.contentLength); + + streamedRequest.contentLength = await file.length(); file.openRead().listen((chunk) { - print(chunk.length); + print("chunk: ${chunk.length}"); streamedRequest.sink.add(chunk); }, onDone: () { streamedRequest.sink.close(); }); + try { + var response = await streamedRequest.send(); - var response = await streamedRequest.send(); - - print('Response: $response'); + print( + 'Response: ${response.statusCode} ${response.reasonPhrase} ${await response.stream.bytesToString()}'); + } on http.ClientException catch (e) { + print("Client Exception: ${e.message}"); + } catch (e) { + print("Other exception"); + } } } From 9e008905bf1c8b290e68eb7cadc21502b7b1e7a8 Mon Sep 17 00:00:00 2001 From: DBarbosa15987 Date: Wed, 9 Oct 2024 21:27:10 +0100 Subject: [PATCH 33/66] Upload file with stream --- .../gallery_page/preview_container.dart | 4 +- lib/services/api_service.dart | 52 +++++++++++++++++-- lib/utils/constants.dart | 4 ++ pubspec.yaml | 1 + 4 files changed, 56 insertions(+), 5 deletions(-) diff --git a/lib/screens/gallery_page/preview_container.dart b/lib/screens/gallery_page/preview_container.dart index c9e20a9..6b70c20 100644 --- a/lib/screens/gallery_page/preview_container.dart +++ b/lib/screens/gallery_page/preview_container.dart @@ -27,8 +27,8 @@ class PreviewContainer extends StatelessWidget { if (filePath != null) { print('File tapped: ${asset.title}'); - // Upload the file to the server - APIServiceClient().upload(filePath); + APIServiceClient().uploadFileStream(filePath); + // APIServiceClient().upload(filePath); } else { print('Error: Unable to retrieve file path'); } diff --git a/lib/services/api_service.dart b/lib/services/api_service.dart index 627942b..51cb110 100644 --- a/lib/services/api_service.dart +++ b/lib/services/api_service.dart @@ -1,3 +1,6 @@ +import 'dart:io'; +import 'dart:async'; +import 'package:crypto/crypto.dart'; import 'package:flutter_secure_storage/flutter_secure_storage.dart'; import 'package:http/http.dart' as http; import 'package:mobile/utils/constants.dart'; @@ -18,11 +21,12 @@ class APIServiceClient { try { var response = await http.post(uri, body: body, headers: headers); + if (response.statusCode == 200) { LoginResponse loginResponse = LoginResponse.fromJson(json.decode(response.body)); final storage = FlutterSecureStorage(); - await storage.write(key: 'jwtToken', value: loginResponse.token); + await storage.write(key: JWT_TOKEN, value: loginResponse.token); final SharedPreferences prefs = await SharedPreferences.getInstance(); await prefs.setString(BASE_URL, baseUrl); @@ -36,10 +40,19 @@ class APIServiceClient { void upload(String path) async { final SharedPreferences prefs = await SharedPreferences.getInstance(); String baseUrl = prefs.getString(BASE_URL) ?? ""; - var uri = Uri.parse('$baseUrl/image/upload'); + print('$baseUrl/image/upload'); + + final fileStream = File(path).openRead(); + final checksum = (await sha256.bind(fileStream).first).toString(); + + final storage = FlutterSecureStorage(); + final jwtToken = await storage.read(key: JWT_TOKEN) ?? ""; + var request = http.MultipartRequest('POST', uri) - ..files.add(await http.MultipartFile.fromPath('image', path)); + ..headers[HttpHeaders.authorizationHeader] = "Bearer $jwtToken" + ..files.add( + await http.MultipartFile.fromPath('image', path, filename: checksum)); var response = await request.send(); if (response.statusCode == 200) @@ -48,4 +61,37 @@ class APIServiceClient { print(response); } + Future uploadFileStream(String filePath) async { + final file = new File(filePath); + final SharedPreferences prefs = await SharedPreferences.getInstance(); + String baseUrl = prefs.getString(BASE_URL) ?? ""; + var uri = Uri.parse('$baseUrl/image/upload'); + final fileStream = File(filePath).openRead(); + final checksum = (await sha256.bind(fileStream).first).bytes; + + + final storage = FlutterSecureStorage(); + final jwtToken = await storage.read(key: JWT_TOKEN) ?? ""; + + final streamedRequest = new http.StreamedRequest('POST', uri) + ..headers.addAll({ + 'Cache-Control': 'no-cache', + HttpHeaders.authorizationHeader : "Bearer $jwtToken", + //'Content-Type': file. + }); + streamedRequest.sink.add(checksum); + streamedRequest.contentLength = await file.length() + checksum.length; + print(checksum); + print(streamedRequest.contentLength); + file.openRead().listen((chunk) { + print(chunk.length); + streamedRequest.sink.add(chunk); + }, onDone: () { + streamedRequest.sink.close(); + }); + + var response = await streamedRequest.send(); + + print('Response: ${response}'); + } } diff --git a/lib/utils/constants.dart b/lib/utils/constants.dart index b20ce89..bfe58f8 100644 --- a/lib/utils/constants.dart +++ b/lib/utils/constants.dart @@ -2,3 +2,7 @@ const String LOGIN_ERROR_401 = "Error, wrong credentials"; const String LOGIN_ERROR_UNKNOWN = "Unkown error"; const String BASE_URL = "baseUrl"; +const String CHECKSUM = 'checksum'; + +const String JWT_TOKEN = "jwtToken"; +String getAuthHeader(jwtToken) => "Bearer $jwtToken"; \ No newline at end of file diff --git a/pubspec.yaml b/pubspec.yaml index a1d8a0d..298b501 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -18,6 +18,7 @@ dependencies: maybe_just_nothing: ^0.5.3 flutter_secure_storage: ^9.2.2 shared_preferences: ^2.3.2 + crypto: ^3.0.5 cupertino_icons: ^1.0.8 permission_handler: ^11.3.1 From 7258ea651deec88297f1aa048fbbd8e403fe56ff Mon Sep 17 00:00:00 2001 From: DBarbosa15987 Date: Thu, 10 Oct 2024 10:29:48 +0100 Subject: [PATCH 34/66] Deleted outdated file --- lib/model/media.dart | 67 ----------------------------------- lib/services/api_service.dart | 2 +- 2 files changed, 1 insertion(+), 68 deletions(-) delete mode 100644 lib/model/media.dart diff --git a/lib/model/media.dart b/lib/model/media.dart deleted file mode 100644 index 50244a6..0000000 --- a/lib/model/media.dart +++ /dev/null @@ -1,67 +0,0 @@ -import 'dart:convert'; -import 'package:http/http.dart' as http; - - - - -// List mediaFileFromJson(String str) => -// List.from(json.decode(str).map((x) => MediaFile.fromJson(x))); - -// String mediaFileToJson(List data) => -// json.encode(List.from(data.map((x) => x.toJson()))); - -// class MediaFile { -// String? fileName; -// String? fileType; -// int? fileSize; -// List? fileChunks; // File data as chunks -// //MetaData? metaData; // Optional metadata - -// MediaFile({ -// this.fileName, -// this.fileType, -// this.fileSize, -// this.fileChunks, -// //this.metaData, -// }); - -// factory MediaFile.fromJson(Map json) { -// return MediaFile( -// fileName: json["fileName"], -// fileType: json["fileType"], -// fileSize: json["fileSize"], -// fileChunks: json["fileChunks"] == null ? [] : List.from(json["fileChunks"]), -// //metaData: json["metaData"] == null ? null : MetaData.fromJson(json["metaData"]), -// ); -// } - -// Map toJson() => { -// "fileName": fileName, -// "fileType": fileType, -// "fileSize": fileSize, -// "fileChunks": fileChunks == null ? [] : List.from(fileChunks!), -// //"metaData": metaData?.toJson(), -// }; -// } - -/* -class MetaData { - String? createdBy; - DateTime? creationDate; - - MetaData({ - this.createdBy, - this.creationDate, - }); - - factory MetaData.fromJson(Map json) => MetaData( - createdBy: json["createdBy"], - creationDate: json["creationDate"] == null ? null : DateTime.parse(json["creationDate"]), - ); - - Map toJson() => { - "createdBy": createdBy, - "creationDate": creationDate?.toIso8601String(), - }; -} -*/ \ No newline at end of file diff --git a/lib/services/api_service.dart b/lib/services/api_service.dart index 51cb110..2b858b2 100644 --- a/lib/services/api_service.dart +++ b/lib/services/api_service.dart @@ -92,6 +92,6 @@ class APIServiceClient { var response = await streamedRequest.send(); - print('Response: ${response}'); + print('Response: $response'); } } From f4545aefa7205db7b1aac28cc9980f726c9b9c79 Mon Sep 17 00:00:00 2001 From: DBarbosa15987 Date: Thu, 10 Oct 2024 20:22:50 +0100 Subject: [PATCH 35/66] Updated version of upload file, with headers and auth --- .../gallery_page/preview_container.dart | 1 - lib/services/api_service.dart | 95 +++++++++++-------- 2 files changed, 57 insertions(+), 39 deletions(-) diff --git a/lib/screens/gallery_page/preview_container.dart b/lib/screens/gallery_page/preview_container.dart index 6b70c20..c0e7a0b 100644 --- a/lib/screens/gallery_page/preview_container.dart +++ b/lib/screens/gallery_page/preview_container.dart @@ -28,7 +28,6 @@ class PreviewContainer extends StatelessWidget { if (filePath != null) { print('File tapped: ${asset.title}'); APIServiceClient().uploadFileStream(filePath); - // APIServiceClient().upload(filePath); } else { print('Error: Unable to retrieve file path'); } diff --git a/lib/services/api_service.dart b/lib/services/api_service.dart index 2b858b2..07ea535 100644 --- a/lib/services/api_service.dart +++ b/lib/services/api_service.dart @@ -1,5 +1,7 @@ +import 'package:mime/mime.dart'; import 'dart:io'; import 'dart:async'; +import 'package:dio/dio.dart'; import 'package:crypto/crypto.dart'; import 'package:flutter_secure_storage/flutter_secure_storage.dart'; import 'package:http/http.dart' as http; @@ -15,8 +17,8 @@ class APIServiceClient { var payload = LoginRequest(username, password).toJson(); var body = json.encode(payload); Map headers = { - 'Content-type': 'application/json', - 'Accept': 'application/json', + HttpHeaders.contentTypeHeader: 'application/json', + HttpHeaders.acceptHeader: 'application/json', }; try { @@ -37,61 +39,78 @@ class APIServiceClient { } } - void upload(String path) async { - final SharedPreferences prefs = await SharedPreferences.getInstance(); - String baseUrl = prefs.getString(BASE_URL) ?? ""; - var uri = Uri.parse('$baseUrl/image/upload'); - print('$baseUrl/image/upload'); + // void upload(String path) async { + // final SharedPreferences prefs = await SharedPreferences.getInstance(); + // String baseUrl = prefs.getString(BASE_URL) ?? ""; + // var uri = Uri.parse('$baseUrl/image/upload'); + // print('$baseUrl/image/upload'); - final fileStream = File(path).openRead(); - final checksum = (await sha256.bind(fileStream).first).toString(); + // final fileStream = File(path).openRead(); + // final checksum = (await sha256.bind(fileStream).first).toString(); - final storage = FlutterSecureStorage(); - final jwtToken = await storage.read(key: JWT_TOKEN) ?? ""; + // final storage = FlutterSecureStorage(); + // final jwtToken = await storage.read(key: JWT_TOKEN) ?? ""; + // final mimeType = lookupMimeType(path) ?? "application/octet-stream"; - var request = http.MultipartRequest('POST', uri) - ..headers[HttpHeaders.authorizationHeader] = "Bearer $jwtToken" - ..files.add( - await http.MultipartFile.fromPath('image', path, filename: checksum)); + // var request = http.MultipartRequest('POST', uri) + // ..headers.addAll({ + // HttpHeaders.cacheControlHeader: 'no-cache', + // HttpHeaders.authorizationHeader: "Bearer $jwtToken", + // HttpHeaders.contentTypeHeader: mimeType, + // 'Content-Digest': "sha-256=:$checksum:", + // 'Expect': '100-continue' + // }) + // ..files.add( + // await http.MultipartFile.fromPath('image', path, filename: checksum)); - var response = await request.send(); - if (response.statusCode == 200) - print('Uploaded!'); - else - print(response); - } + // var response = await request.send(); + // if (response.statusCode == 200) + // print('Uploaded!'); + // else + // print(response); + // } Future uploadFileStream(String filePath) async { - final file = new File(filePath); final SharedPreferences prefs = await SharedPreferences.getInstance(); String baseUrl = prefs.getString(BASE_URL) ?? ""; var uri = Uri.parse('$baseUrl/image/upload'); - final fileStream = File(filePath).openRead(); - final checksum = (await sha256.bind(fileStream).first).bytes; - - final storage = FlutterSecureStorage(); final jwtToken = await storage.read(key: JWT_TOKEN) ?? ""; - final streamedRequest = new http.StreamedRequest('POST', uri) + final file = File(filePath); + final fileStream = file.openRead(); + final checksum = base64.encode((await sha256.bind(fileStream).first).bytes); + final mimeType = lookupMimeType(filePath) ?? "application/octet-stream"; + + print("MimeType: $mimeType"); + print("CheckSum: $checksum"); + print("FilePath: $filePath"); + + final streamedRequest = http.StreamedRequest('POST', uri) ..headers.addAll({ - 'Cache-Control': 'no-cache', - HttpHeaders.authorizationHeader : "Bearer $jwtToken", - //'Content-Type': file. + HttpHeaders.cacheControlHeader: 'no-cache', + HttpHeaders.authorizationHeader: "Bearer $jwtToken", + HttpHeaders.contentTypeHeader: mimeType, + 'Content-Digest': "sha-256=:$checksum:", + 'Expect': '100-continue' }); - streamedRequest.sink.add(checksum); - streamedRequest.contentLength = await file.length() + checksum.length; - print(checksum); - print(streamedRequest.contentLength); + + streamedRequest.contentLength = await file.length(); file.openRead().listen((chunk) { - print(chunk.length); + print("chunk: ${chunk.length}"); streamedRequest.sink.add(chunk); }, onDone: () { streamedRequest.sink.close(); }); + try { + var response = await streamedRequest.send(); - var response = await streamedRequest.send(); - - print('Response: $response'); + print( + 'Response: ${response.statusCode} ${response.reasonPhrase} ${await response.stream.bytesToString()}'); + } on http.ClientException catch (e) { + print("Client Exception: ${e.message}"); + } catch (e) { + print("Other exception"); + } } } From b210aac3aa099a5a4550f1b06d18246a22923d84 Mon Sep 17 00:00:00 2001 From: DBarbosa15987 Date: Thu, 10 Oct 2024 20:32:00 +0100 Subject: [PATCH 36/66] Forgotten dependency import --- lib/services/api_service.dart | 1 - 1 file changed, 1 deletion(-) diff --git a/lib/services/api_service.dart b/lib/services/api_service.dart index 07ea535..4527b62 100644 --- a/lib/services/api_service.dart +++ b/lib/services/api_service.dart @@ -1,7 +1,6 @@ import 'package:mime/mime.dart'; import 'dart:io'; import 'dart:async'; -import 'package:dio/dio.dart'; import 'package:crypto/crypto.dart'; import 'package:flutter_secure_storage/flutter_secure_storage.dart'; import 'package:http/http.dart' as http; From 03105f1b65fd2cb67064b503130aa1978dffddf7 Mon Sep 17 00:00:00 2001 From: afonsofrancof Date: Thu, 10 Oct 2024 21:01:49 +0100 Subject: [PATCH 37/66] Added flutter check workflow --- .github/workflows/flutter-check.yaml | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 .github/workflows/flutter-check.yaml diff --git a/.github/workflows/flutter-check.yaml b/.github/workflows/flutter-check.yaml new file mode 100644 index 0000000..d95aa80 --- /dev/null +++ b/.github/workflows/flutter-check.yaml @@ -0,0 +1,27 @@ +name: Flutter check + +on: [pull_request] + +jobs: + flutter-check: + name: flutter-check + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + name: Check out repository + + - name: Install Flutter + uses: subosito/flutter-action@v2 + with: + flutter-version: '3.7.11' + channel: 'stable' + architecture: x64 + + - run: flutter channel master + - run: flutter upgrade + + - name: Install dependencies + run: dart pub get + + - name: Analyze code + run: dart analyze --no-fatal-warnings . From 6ce845226fc1565061aaa3585dcff5d262e46389 Mon Sep 17 00:00:00 2001 From: DBarbosa15987 Date: Thu, 10 Oct 2024 23:17:00 +0100 Subject: [PATCH 38/66] Files sent with timestamps --- lib/services/api_service.dart | 7 ++++++- lib/utils/time.dart | 28 ++++++++++++++++++++++++++++ pubspec.yaml | 1 + 3 files changed, 35 insertions(+), 1 deletion(-) create mode 100644 lib/utils/time.dart diff --git a/lib/services/api_service.dart b/lib/services/api_service.dart index 4527b62..4bea6d1 100644 --- a/lib/services/api_service.dart +++ b/lib/services/api_service.dart @@ -1,3 +1,4 @@ +import 'package:exif/exif.dart'; import 'package:mime/mime.dart'; import 'dart:io'; import 'dart:async'; @@ -5,6 +6,7 @@ import 'package:crypto/crypto.dart'; import 'package:flutter_secure_storage/flutter_secure_storage.dart'; import 'package:http/http.dart' as http; import 'package:mobile/utils/constants.dart'; +import 'package:mobile/utils/time.dart'; import 'dart:convert'; import 'package:shared_preferences/shared_preferences.dart'; import 'package:mobile/model/login_request.dart'; @@ -85,18 +87,21 @@ class APIServiceClient { print("CheckSum: $checksum"); print("FilePath: $filePath"); + final int fileTimeStamp = await getFileStamp(file); + final streamedRequest = http.StreamedRequest('POST', uri) ..headers.addAll({ HttpHeaders.cacheControlHeader: 'no-cache', HttpHeaders.authorizationHeader: "Bearer $jwtToken", HttpHeaders.contentTypeHeader: mimeType, + "Timestamp" : fileTimeStamp.toString(), 'Content-Digest': "sha-256=:$checksum:", 'Expect': '100-continue' }); streamedRequest.contentLength = await file.length(); file.openRead().listen((chunk) { - print("chunk: ${chunk.length}"); + //print("chunk: ${chunk.length}"); streamedRequest.sink.add(chunk); }, onDone: () { streamedRequest.sink.close(); diff --git a/lib/utils/time.dart b/lib/utils/time.dart new file mode 100644 index 0000000..2bf6d26 --- /dev/null +++ b/lib/utils/time.dart @@ -0,0 +1,28 @@ +import 'dart:io'; +import 'package:exif/exif.dart'; + +Future getFileStamp(File file) async { + + final data = await readExifFromFile(file); + final imageDateTime = data["Image DateTime"]?.printable.replaceFirst(':', '-').replaceFirst(':', '-'); + final eXIFDateTimeOriginal = data["EXIF DateTimeOriginal"]?.printable.replaceFirst(':', '-').replaceFirst(':', '-'); + final eXIFDateTimeDigitized = data["EXIF DateTimeDigitized"]?.printable.replaceFirst(':', '-').replaceFirst(':', '-'); + + final int timeStamp; + + if (imageDateTime != null) { + DateTime dateTime = DateTime.parse(imageDateTime); + timeStamp = dateTime.millisecondsSinceEpoch; + } else if (eXIFDateTimeOriginal != null) { + DateTime dateTime = DateTime.parse(eXIFDateTimeOriginal); + timeStamp = dateTime.millisecondsSinceEpoch; + } else if (eXIFDateTimeDigitized != null) { + DateTime dateTime = DateTime.parse(eXIFDateTimeDigitized); + timeStamp = dateTime.millisecondsSinceEpoch; + } else { + final stat = FileStat.statSync(file.path); + timeStamp = stat.modified.millisecond; + } + + return timeStamp; +} diff --git a/pubspec.yaml b/pubspec.yaml index 298b501..17ddd31 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -19,6 +19,7 @@ dependencies: flutter_secure_storage: ^9.2.2 shared_preferences: ^2.3.2 crypto: ^3.0.5 + exif: ^3.3.0 cupertino_icons: ^1.0.8 permission_handler: ^11.3.1 From 9ae9f4f3e0d61073b149524a21978a94a880b53c Mon Sep 17 00:00:00 2001 From: lucasverdelho Date: Fri, 11 Oct 2024 14:46:01 +0100 Subject: [PATCH 39/66] Removed round corners for cleaner look, added logic for showing cloud icon if uploaded / already on the cloud --- .../gallery_page/preview_container.dart | 57 ++++++++++++++----- 1 file changed, 42 insertions(+), 15 deletions(-) diff --git a/lib/screens/gallery_page/preview_container.dart b/lib/screens/gallery_page/preview_container.dart index c0e7a0b..101b544 100644 --- a/lib/screens/gallery_page/preview_container.dart +++ b/lib/screens/gallery_page/preview_container.dart @@ -3,43 +3,70 @@ import 'package:flutter/material.dart'; import 'package:photo_manager/photo_manager.dart'; import 'package:mobile/services/api_service.dart'; -class PreviewContainer extends StatelessWidget { +class PreviewContainer extends StatefulWidget { final AssetEntity asset; final Uint8List? thumbnail; const PreviewContainer({Key? key, required this.asset, this.thumbnail}) : super(key: key); + @override + _PreviewContainerState createState() => _PreviewContainerState(); +} + +class _PreviewContainerState extends State { + bool _isUploaded = false; + Future _getFilePath(AssetEntity asset) async { final file = await asset.file; return file?.path; } - - // #TODO: + Future _uploadFile(String filePath) async { + print('File tapped: ${widget.asset.title}'); + await APIServiceClient().upload(filePath); + + setState(() { + _isUploaded = true; + }); + } @override Widget build(BuildContext context) { - return thumbnail != null + return widget.thumbnail != null ? GestureDetector( onTap: () async { - var filePath = await _getFilePath(asset); - + var filePath = await _getFilePath(widget.asset); + if (filePath != null) { - print('File tapped: ${asset.title}'); - APIServiceClient().uploadFileStream(filePath); + await _uploadFile(filePath); } else { print('Error: Unable to retrieve file path'); } }, - child: Container( - decoration: BoxDecoration( - image: DecorationImage( - image: MemoryImage(thumbnail!), - fit: BoxFit.cover, + child: Stack( + children: [ + + Container( + decoration: BoxDecoration( + image: DecorationImage( + image: MemoryImage(widget.thumbnail!), + fit: BoxFit.cover, + ), + ), ), - borderRadius: BorderRadius.circular(8.0), - ), + + if (_isUploaded) // Widget for the icon, still need to change all icons to the icon pack in the design + Positioned( + top: 8.0, + right: 8.0, + child: Icon( + Icons.cloud_done, + size: 24.0, + color: Colors.purple.shade400, + ), + ), + ], ), ) : Container( From df818d4c6b427a7c377a185d67534c8fda82b5c2 Mon Sep 17 00:00:00 2001 From: lucasverdelho Date: Fri, 11 Oct 2024 14:48:04 +0100 Subject: [PATCH 40/66] Added temporary testing function for upload simulation --- lib/screens/gallery_page/preview_container.dart | 2 +- lib/services/api_service.dart | 10 ++++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/lib/screens/gallery_page/preview_container.dart b/lib/screens/gallery_page/preview_container.dart index 101b544..8abf1ae 100644 --- a/lib/screens/gallery_page/preview_container.dart +++ b/lib/screens/gallery_page/preview_container.dart @@ -24,7 +24,7 @@ class _PreviewContainerState extends State { Future _uploadFile(String filePath) async { print('File tapped: ${widget.asset.title}'); - await APIServiceClient().upload(filePath); + await APIServiceClient().uploadFileStream(filePath); setState(() { _isUploaded = true; diff --git a/lib/services/api_service.dart b/lib/services/api_service.dart index 4527b62..43450ae 100644 --- a/lib/services/api_service.dart +++ b/lib/services/api_service.dart @@ -112,4 +112,14 @@ class APIServiceClient { print("Other exception"); } } + + Future upload(String path /*File file, Map fields */) async { + await Future.delayed(Duration(seconds: 2)); // Simulate a delay for upload + + // Perform actual upload logic here, e.g., using http.post/multipart, etc. + print('Uploading file at: $path'); + + return; // Explicitly return a Future + } + } From 89faf2aeb7a84bffb8add6f253db42a4edc9a108 Mon Sep 17 00:00:00 2001 From: lucasverdelho Date: Fri, 11 Oct 2024 14:49:34 +0100 Subject: [PATCH 41/66] Created a dark theme for easier preset definition, default shall be black background for oled displays --- lib/main.dart | 7 +++---- lib/utils/theme.dart | 41 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 44 insertions(+), 4 deletions(-) create mode 100644 lib/utils/theme.dart diff --git a/lib/main.dart b/lib/main.dart index afe1675..efe89ea 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -1,5 +1,6 @@ import 'package:flutter/material.dart'; import 'package:mobile/utils/route_generator.dart'; +import 'package:mobile/utils/theme.dart'; void main() { runApp(const MyApp()); @@ -13,11 +14,9 @@ class MyApp extends StatelessWidget { return MaterialApp( debugShowCheckedModeBanner: false, title: 'ChronoLens', - theme: ThemeData( - primarySwatch: Colors.deepPurple, - ), + theme: AppTheme.darkTheme, // Default is dark theme, add a switch later initialRoute: "/login", onGenerateRoute: RouteGenerator.generateRoute, ); } -} \ No newline at end of file +} diff --git a/lib/utils/theme.dart b/lib/utils/theme.dart new file mode 100644 index 0000000..f31569f --- /dev/null +++ b/lib/utils/theme.dart @@ -0,0 +1,41 @@ +import 'package:flutter/material.dart'; +import 'package:google_fonts/google_fonts.dart'; + +class AppTheme { + + // For now we will only use dark theme but it seems simple enough to implement an alternative + // theme overriding the material theme TODO: Add the light theme with a switch button to change somewhere in settings + static ThemeData darkTheme = ThemeData( + brightness: Brightness.dark, + scaffoldBackgroundColor: Colors.black, + primarySwatch: Colors.purple, + primaryColor: Colors.purple, + colorScheme: ColorScheme.dark( + primary: Colors.purple, // Primary color for components + secondary: Colors.purple, + onPrimary: Colors.white, // Text color on primary + onSecondary: Colors.white, // Text color on secondary + surface: Colors.black, + ), + iconTheme: const IconThemeData( // TODO: Find out how to import the icons from the design + color: Colors.white, + ), + textTheme: GoogleFonts.outfitTextTheme( // Outfit font from google fonts TODO: I think its free to use but gotta check the license + ThemeData.dark().textTheme, + ), + appBarTheme: const AppBarTheme( + backgroundColor: Colors.black, + titleTextStyle: TextStyle(color: Colors.white, fontSize: 20), + iconTheme: IconThemeData(color: Colors.white), + ), + bottomNavigationBarTheme: BottomNavigationBarThemeData( + backgroundColor: Colors.black, + selectedItemColor: Colors.purple, + unselectedItemColor: Colors.white, + selectedIconTheme: const IconThemeData(color: Colors.purple), + unselectedIconTheme: const IconThemeData(color: Colors.white), + elevation: 0, // Apparently removes shadow + type: BottomNavigationBarType.fixed, + ), + ); +} From 78db59ce68c72599052dcfdb8cb1943c345c4a15 Mon Sep 17 00:00:00 2001 From: lucasverdelho Date: Fri, 11 Oct 2024 14:50:29 +0100 Subject: [PATCH 42/66] BottomNavBar seems a bit wrong so it's static for now --- lib/screens/home_page.dart | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/screens/home_page.dart b/lib/screens/home_page.dart index b49714a..83208a8 100644 --- a/lib/screens/home_page.dart +++ b/lib/screens/home_page.dart @@ -22,11 +22,13 @@ class _HomePageState extends State { @override Widget build(BuildContext context) { return Scaffold( + backgroundColor: Colors.black, body: IndexedStack( index: _currentIndex, children: _pages, ), bottomNavigationBar: BottomNavigationBar( + type: BottomNavigationBarType.fixed, currentIndex: _currentIndex, onTap: (index) { setState(() { @@ -55,7 +57,7 @@ class _HomePageState extends State { label: 'Settings', ), ], - selectedItemColor: Colors.deepPurpleAccent.shade700, + selectedItemColor: Colors.purple, unselectedItemColor: Colors.grey, ), ); From 7a9bac8f741eb3971f61867d5ddb43b74778a05d Mon Sep 17 00:00:00 2001 From: lucasverdelho Date: Fri, 11 Oct 2024 14:50:49 +0100 Subject: [PATCH 43/66] Tightened the spaces between images in the grid --- lib/screens/gallery_page/image_grid.dart | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/screens/gallery_page/image_grid.dart b/lib/screens/gallery_page/image_grid.dart index 66d018d..54909da 100644 --- a/lib/screens/gallery_page/image_grid.dart +++ b/lib/screens/gallery_page/image_grid.dart @@ -71,8 +71,8 @@ class _ImageGridState extends State { pagingController: _pagingController, gridDelegate: const SliverGridDelegateWithFixedCrossAxisCount( crossAxisCount: 4, - crossAxisSpacing: 4.0, - mainAxisSpacing: 4.0, + crossAxisSpacing: 2.0, + mainAxisSpacing: 2.0, ), builderDelegate: PagedChildBuilderDelegate( itemBuilder: (context, asset, index) { From 214609146a93b6e4e9876abd4130eccbaaa48e93 Mon Sep 17 00:00:00 2001 From: lucasverdelho Date: Fri, 11 Oct 2024 14:53:54 +0100 Subject: [PATCH 44/66] Added google fonts dependecy --- pubspec.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/pubspec.yaml b/pubspec.yaml index 298b501..aca657f 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -25,6 +25,7 @@ dependencies: photo_manager: ^3.5.0 device_info_plus: ^10.1.2 infinite_scroll_pagination: ^4.0.0 + google_fonts: ^6.2.1 dev_dependencies: flutter_test: From c16462ea5fce322bcb6cfbc7fc6424558c55a10e Mon Sep 17 00:00:00 2001 From: Lucas Verdelho <62015174+lucasverdelho@users.noreply.github.com> Date: Fri, 11 Oct 2024 14:56:31 +0100 Subject: [PATCH 45/66] Delete android/local.properties --- android/local.properties | 5 ----- 1 file changed, 5 deletions(-) delete mode 100644 android/local.properties diff --git a/android/local.properties b/android/local.properties deleted file mode 100644 index 2ed25b2..0000000 --- a/android/local.properties +++ /dev/null @@ -1,5 +0,0 @@ -sdk.dir=C:\\Users\\Alice\\AppData\\Local\\Android\\sdk -flutter.sdk=C:\\Users\\Alice\\Downloads\\flutter -flutter.buildMode=debug -flutter.versionName=1.0.0 -flutter.versionCode=1 \ No newline at end of file From 419af810a34c29b99e542a8a8c3019b615545608 Mon Sep 17 00:00:00 2001 From: lucasverdelho Date: Fri, 11 Oct 2024 15:01:11 +0100 Subject: [PATCH 46/66] Removed build folder from repo and added to gitignore --- .gitignore | 2 ++ android/.gradle/8.3/checksums/checksums.lock | Bin 17 -> 0 bytes .../.gradle/8.3/checksums/md5-checksums.bin | Bin 34747 -> 0 bytes .../.gradle/8.3/checksums/sha1-checksums.bin | Bin 83075 -> 0 bytes .../dependencies-accessors.lock | Bin 17 -> 0 bytes .../8.3/dependencies-accessors/gc.properties | 0 .../8.3/executionHistory/executionHistory.bin | Bin 607703 -> 0 bytes .../8.3/executionHistory/executionHistory.lock | Bin 17 -> 0 bytes android/.gradle/8.3/fileChanges/last-build.bin | Bin 1 -> 0 bytes android/.gradle/8.3/fileHashes/fileHashes.bin | Bin 137283 -> 0 bytes android/.gradle/8.3/fileHashes/fileHashes.lock | Bin 17 -> 0 bytes .../8.3/fileHashes/resourceHashesCache.bin | Bin 18905 -> 0 bytes android/.gradle/8.3/gc.properties | 0 .../buildOutputCleanup/buildOutputCleanup.lock | Bin 17 -> 0 bytes .../buildOutputCleanup/cache.properties | 2 -- .../.gradle/buildOutputCleanup/outputFiles.bin | Bin 99701 -> 0 bytes android/.gradle/file-system.probe | Bin 8 -> 0 bytes android/.gradle/vcs-1/gc.properties | 0 18 files changed, 2 insertions(+), 2 deletions(-) delete mode 100644 android/.gradle/8.3/checksums/checksums.lock delete mode 100644 android/.gradle/8.3/checksums/md5-checksums.bin delete mode 100644 android/.gradle/8.3/checksums/sha1-checksums.bin delete mode 100644 android/.gradle/8.3/dependencies-accessors/dependencies-accessors.lock delete mode 100644 android/.gradle/8.3/dependencies-accessors/gc.properties delete mode 100644 android/.gradle/8.3/executionHistory/executionHistory.bin delete mode 100644 android/.gradle/8.3/executionHistory/executionHistory.lock delete mode 100644 android/.gradle/8.3/fileChanges/last-build.bin delete mode 100644 android/.gradle/8.3/fileHashes/fileHashes.bin delete mode 100644 android/.gradle/8.3/fileHashes/fileHashes.lock delete mode 100644 android/.gradle/8.3/fileHashes/resourceHashesCache.bin delete mode 100644 android/.gradle/8.3/gc.properties delete mode 100644 android/.gradle/buildOutputCleanup/buildOutputCleanup.lock delete mode 100644 android/.gradle/buildOutputCleanup/cache.properties delete mode 100644 android/.gradle/buildOutputCleanup/outputFiles.bin delete mode 100644 android/.gradle/file-system.probe delete mode 100644 android/.gradle/vcs-1/gc.properties diff --git a/.gitignore b/.gitignore index f63c17b..6a46278 100644 --- a/.gitignore +++ b/.gitignore @@ -42,3 +42,5 @@ app.*.map.json /android/app/debug /android/app/profile /android/app/release + +android/.gradle \ No newline at end of file diff --git a/android/.gradle/8.3/checksums/checksums.lock b/android/.gradle/8.3/checksums/checksums.lock deleted file mode 100644 index 4c8f140a63724e6d4336f9629d18a285453aac6c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17 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 diff --git a/android/.gradle/8.3/checksums/sha1-checksums.bin b/android/.gradle/8.3/checksums/sha1-checksums.bin deleted file mode 100644 index 70fcfd8386930abccd82e04624430d34bdd61f8e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 83075 zcmeFac{r8Z8$Z0ac}S+rA!TYJQpzk}08*Ar&Dqk11oK5*d;*Cv!xGOqHP` zk|@n7g!(*3jF4-Uu8@)tJT z{~E{teq8x!B?BuNSjoUj239h#l7W>BtYly%11lL=$-qhmRx+@Xft3ubWMCx&D;ZeH zz)A*IGO&_?|G#9w4Cx31=uGKp3iJo&(>UC=RX7~p>%6~R*`76=cM1O)FIz+kI4(h@gK0g3{m+OUwsCCczlU?5QYA>{Et?V!2V1sw)u>*|nW++_#Sf;I0!GZo^s3a_{LBzzxDMJa&!q_Kn$21RT$C7sIc-`{w1c z`7yw^Z^rO%i6cimaWMWotY0BBmdAXb?wJ7oix-LZp<-wJoAv7x0dDGt;T!9n-A7C( zfqzLX{xHs3|0=e@0_ewzXdh;%oAw}IrV!Z6nPB+oLF$QwP+*VWokzsO1D)p%F4SlP zKUS}ac!XPRZIh^05bz`a62tQ-FU!vfgS_E|0*H9z=~a%iMkzVKUTF@)t7!aEMAqyA z{<9P?{P}QyY}+#!kN9p3pZNCXeWZ36us^ebh(|?m#rIpD?gV&oJQ0u9>Y{O|?okK0 znHh!~%}UMaRK6nMcp)tR(dYKN<(>F^2H?A+gx1)ms7Xyb;6K9y5NRVBZVyt8y4#Bm0)=@qtu; z7sg@uobHq7biV`uertw^$1yORI9i+h8sLWwFx*||{id4V1^_?#Kl=d5@ha;>Ap{)H zl}NO|xFNM~);lo?*vI5xxXAX0VxmQ|z+Slr!;iH{Wa$-(0((Ch48O9)f$!Awvj8uu z#PF9td{4>7azh-8GoDWQ(YLEXl>qm}?Bkhy*xy#0SrKqN?@ywi_>+6a1_e`|0emes ze&T~%4V3qGKLEJ!Yoh%n;qai_6`A(Hzt3(A_b}M?XrkgN!2M4X@yjm+nfR^U)c|ge z<>B&ceGRTDcUItE%!z29u)QYFzvm9DW4hQlNie_i`)aYyKHw+d8)olZO>t=YJG?Kq zB{BTOHo?%bx;o%rDF(yqDXr`$HX(H%ZI`j}km%t3p+Nl_r~|mG{Y3l3Bic6{e<+Uw z`l3kz&cm`I-67Qe*Q|V+3<|*z<2+=-?;X#nQ=q+>!LYgDiuOu#(a^Frb z5GU>!c3+Y#-`V8e>~STS7x?j@#_+V@ndC9I zo4{TzortF>-aJygQ>_i)YcSmumGQ+tLcFWm8~(%)M<4bPZ}S{G!i+g2WG_ zz+U_mhNow}zUbKc4cMPs#PFO!Jln7fj5Dkb!yD=ZtjhgBJ;ZOv@^*D<%g2bGQy_kv zzBWBADmvs=zS?*X2A2g5U!XJTR~+kqbe zK_Z^vm)zv7`XC?Rir79RBU$wP$Q4bnUgM0hI5T>D>P`!dx�BZexDl=5F|WD@qRF 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 diff --git a/android/.gradle/8.3/dependencies-accessors/dependencies-accessors.lock b/android/.gradle/8.3/dependencies-accessors/dependencies-accessors.lock deleted file mode 100644 index 5c5a3751e962ec78b35c16fe4871f5df02a62508..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17 TcmZRcwW;E);*F0D3{U_7J_!W> diff --git a/android/.gradle/8.3/dependencies-accessors/gc.properties b/android/.gradle/8.3/dependencies-accessors/gc.properties deleted file mode 100644 index e69de29..0000000 diff --git a/android/.gradle/8.3/executionHistory/executionHistory.bin b/android/.gradle/8.3/executionHistory/executionHistory.bin deleted file mode 100644 index 86b8897fbbb6dea8297c20c1bbc39508db221c83..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 607703 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

9BhmB7vrcx6c`UI`xx!Rox?%;-R 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%0D{LVg$ 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 IM|#u$0S+Xb@&Et; diff --git a/android/.gradle/8.3/executionHistory/executionHistory.lock b/android/.gradle/8.3/executionHistory/executionHistory.lock deleted file mode 100644 index 92a6ff1dc3b69fd25e3dfa1c8c2247e912dcaee3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17 UcmZRU7IabDvuWjP1_&?$04N><&Hw-a diff --git a/android/.gradle/8.3/fileChanges/last-build.bin b/android/.gradle/8.3/fileChanges/last-build.bin deleted file mode 100644 index f76dd238ade08917e6712764a16a22005a50573d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1 IcmZPo000310RR91 diff --git a/android/.gradle/8.3/fileHashes/fileHashes.bin b/android/.gradle/8.3/fileHashes/fileHashes.bin deleted file mode 100644 index 7334df8a3f978c111c63bfe5a16e7fcc0c694f08..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 137283 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 aB=`3)tm*iyQ0H|{p#mowAhA}IMEoC{j9`WU diff --git a/android/.gradle/8.3/fileHashes/fileHashes.lock b/android/.gradle/8.3/fileHashes/fileHashes.lock deleted file mode 100644 index 1bfa11195216010419a6b5c4a81aeacd4edbc674..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17 VcmZR6ecxb;?3MQ)7{GvaIsiim1^xg4 diff --git a/android/.gradle/8.3/fileHashes/resourceHashesCache.bin b/android/.gradle/8.3/fileHashes/resourceHashesCache.bin deleted file mode 100644 index 38784e64193f7a4d81b436499626be130de6a504..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18905 zcmeI&ZAcSg00;1!WRh;V%3ziWWi|xob|@x6(kN-NK#bICprU~aX$@bdE{R}4Eef-= zjGWFWjeIGo#_)q5RCEnSF0sNFq!PzOTy0SbVmJ0YN#2J(2Jt_5?jHX4=ec`+U+<1F zj6}Rf4rcw>xjw}V0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_0D=ESAdA~bXkasv z_#pozT*oj9AvX~=>95#!+Z2xjw^beV`+=kNfIYL$VGiW!qThM%T;0!mA`$7^Xg(=( zEe|L+7m&V%=BrsL-aW}KCFv_^9^IR;?}pa1Un)KmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHaf zKmY;|fB*y_009U<00Izzz`qqpX1T!2h0%XDy2HmO z=B}r`KOLcxc6smj^BX1A_O$vNA6Gx$Hbt?Gm&^H$*Pdtge&MA}^T*xWYkeLWzhQV~ z+NJ9ro_Z8E5ug38p_AW;aIvMgG!lcSrEf`WIrWm?C@m{4vhM$W*qMAYPe0b~|NDQ# zUd}B(k3CY*GV9K9ERGthEBTEsiy-ue?P#rVA@x(q-SbQQ#z>% diff --git a/android/.gradle/8.3/gc.properties b/android/.gradle/8.3/gc.properties deleted file mode 100644 index e69de29..0000000 diff --git a/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock b/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock deleted file mode 100644 index 794ddf21bd2c07cdbe4ddfa425df83e11e39b488..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17 UcmZSf`ke4kvG!+Ck{_qzAJ*1Ff)yH6_#f|xUXi26nR`o;F^ zuVa53%fMI$#xgLLfw2sXWne4=V;LCBz*q*xGBB2bu?&o5U@QY;85qmJSO&&2FqVO_ z42)&qKP3ZdKW}6*+>EWtxIg|f&7C0DOeF~NUI5E;_xS>C^27g3no81NKL`*WJo0`; z-C5waiO8Qcic6$DE*s{A)>q_hc2D>x2OR~y`FrHOZtKJ~@&bW-d(u2`E!$1Eld;FZ z$7V6|b){-4##4UA_s1_;R^-u9UzabqUl#hHl-<{YJTU+pv^+ovj9Nz6dVx*W^cDw@H$5 z;LdT1Hz99MPP_G#AsF}~JDP_us7STjitzxqs6{?^dC)0qi>PN?e$o&NTr^WEiAJ&up8pu;K862iC!hMm- zame%3`qwVu6$k&ii8S9k=bPh@lTyWc_32c1WLS<2u@j2o3th3a4Y+a>E3R_J%4@e1->-?ZH9 z*1h0kW=8X{l~V%bw~gBY?OLKfY%}|wp@io%fUBFJK6Q3V(2MV~z%}HN7rfDxO)q&0 zT)&*=;WJ`bTFwebK zKYkTdA+MP9{YEE|HjK%jXqxXc>K01PUq-d-i28lTQCG#k9yT1-6RN4GcX-SapWQtd zxTym2qi@3GBJIS6IjNbAyj=5+!gSYs;6bv;yYnMse~5R2kL&>QPZ<+*C*9-#{yLWC z`{$TR&srnf}{e~tZqKueNy%Bp)XJ_(~i)Ef(H zyqepd0{RlHR|jnNoyzwJr{=XQ)~f?fmo2{CeeekMIyg@c1a{S^4B2cS=A!a^dRTBHt~*-%uF&qH!U|++r>Ox5V`>!ogn^f&kAN$wv<^}9+p`ea^-|GLkg;^ukCzwiH{P*OnEy>>O4 zA7m!k9x!@HK|G!~zYeb0`AOyQt~TIy_fc=rq;B#l4E6~`=_BN+&AV1!+3^74w`oIu z>$+!V+2BL)QRzqiD2632b%iEyZEoZPT#Hw2{B#Jo8~PmL=(*RD;Y;;br#!7cw8mnx zrBwec&|7LD56n3JVrwhkFel8GBj01!yHo!8dEhm1$geQ5-&V~!3%nTDi$lq`l_h0` z42L{R_9vo`HYiFCU}U2lE0MHv(_LIHL|8>04}BeU;)^ zAEK_TQeK!?%LVN&(nbH|$er?GJqv(ayCVM}Uh^jB1+~u%`AqY}O9P{fqHK49-rWrO z@{A0h&_QZHW^e_$`s>Me!}mfxBxG=&9u8yrg#OZ!C6^9>`E_qG8yz;>fG`73MODvKZTz={qxN zeq`<4$+>gfBZu{*tq$_-E-X_;T7Cfc)I+YpQ(?7iBh*7O$R4@1`;&>E_fzXsod|Nz zjZN8^KVaWQ7zQIhHD$8e+voy_^9|0&BcHvV7Mz{91-LHy$4FSLZe>(h0bB*wrBkqFR#amFSi`#q>cuCLCpEx4#_sVJwabojJ(K5 zcDBS7n5V>BtlKd~*0B@x!xw>G2ID_ESx)c5{9Dt3OR3O4M|s|C`tGAP1$Yx9a=q;u z@(WyHoDfC0UL4(DJ*n~8!-d0o(mV_GM@ythgkVIwZpD-V;96MEPv~dO zicXQ#r`p|%dc#AeE4#yCpGmyDh}`QFk8@Q`2DGcei~K;zp6#A{;JKAFGC_WDrv1xg zrEc(d6^U?*@>949B{@=W%`^C?KZR`*AP57E^6{7Xx9eU z!B`!YT?ame-T|(L^D)*skjFE;mdcw8_IqrgMs$rdcP{9IZP34^%HP;%t37ZRVdOtD z5|WQ|ejesTH;$`Q%m+0l56-v=`oKb3e`;QYKo9SFr~{0_ zY;1a|-~s-HSpQGyWShP*y0sYm4a-q)m6rZ|RpxupcS$3Ub6KFD{}k?vP{;awDru)t zCwD+9=(XZdpIUjHqgi<~_$%RfIF)O;>Ph3I640Ary*-ter2RE>i3aG^u+E(N(7R@! zE`S7m&0^aB^oE-4ttpZwpby6V^J(ijvu$~Kf`KcMs1J~v@#vTe5BPLrojiSYa+Px5 zEho^sMxp-d>*Nv_8EMdKSs~Aw8hx;gfC z?(n6QTNTi*7tZTAXWJKN_swkuAAL^L`^|_?a(reA`allk`AT@4O0uC{tr*mwecZfv zw$~TnHaH*SAKh8G=Qd*xaR0BUf0eP3E%yVpe$`H)d4l}bzTAgLsXDLikK93`>G{Ji z7I0s(Sg#Vwc3x(=@(uPUq_P0&Uurv_tdnyDy)m|%P;2k}m~X}>h(`?=rf5!&bM+OkdMCzl=vy&ulIvl?z~7j6wey&^0;QSVrPB*SAB^?YrE@th6he!S?w z66*Oy1INSJ-u=b5gZJ@+zsYXeCy_M$ev*AV^&HoQ?ItdBtS(~`)rI@A%tpPKL3-q- zGuMH4vLg?>Q!Sp{HxK;1vE9Uoao$~zzEbm71=sP!l+qS2zuj6T7T~0`k1bQqtt$;?ili~`h6dEOT>eZ7y6&KXV@uRe|rva z#d=zQ-luC}`?~D$;9p*dJS^1r$mtST*9a?K_0PCvL`qW39sm9syKui_?%r!EWm!%SjRhrtjC}Tam=#xTdpG{_kcC{pF{l!Q= zHSR<5)HrGGLY@?!8xWx70{+2T$crxRml-Dj`!rG|mgbk3q@9mjg;M=q8i#z9Bb!0Z z!FcfT;6T1rvBq@HU25G|*ofSm?Jg5{jyS|AKM(owGMWo|76E{pk3QZ# zxPQ33v3Aal0Txxzt7Dv(g(gipyhQ-se-dwQ)A3xE6KO45$=pZjm5@K&)6N{Zs1kS~ z&fm*rI$`C`9Z=4crz}gI1wL}F!Tcqz_{t3Gqh-1)qy{gSRM z>i4yTTo|x}ype{VksoMx4cr}cf7pjyl#cuuj}Ons+pupTWNnbA^H0oPB4FM;#+wG=Ng7H0QcdieUcB^ zI~#drQ2W@@ugGJV7Yu568-w252>Iznq3#(mS`bg;FP{>DO}46%@IHz(W<-70S4O+% z8}&e6D~|kKgzmvLbE!DpG-!T})!XTs$jeO7n-(G$(VqWw=6g4Y#{}oswOz)`Iq#;z zK7z|2F^4hM*5xj(op)$@zy$)I2i4`E{*?%PgE-m+D{D^|byvF{4hnB$o|* z)Dw`eFj9}q2@o6RL_7BTbx|Mngv9%Cz}1;hZ$9qX>&Y9adaj85a^0?AmU3=A%p*e2 z7xnIHUV$Rp;5mrU!u(wKcFS~&GN9(yJ66OBn+=t11}e$d5Z9%HFM5J zP6ckkiCjxzyawxAPvABY$gR8Tr1ciUevi;jM()VEjpf!YYJbw`iu_*js-3Ncw&0_U z_j_~3B*Dz9^TU9@!1{C3|3;$iVCxd#Ww_70S>?NvcSjB6nJBcN{cpbE8O)quq)zEE z4>!9$NeveBwE{PeqxGpI4{0nddI+%xB_RRNX^>#=B zuWCZQ?+OXsZK70vwKF4+PAK$ci-vs^u?y?ot@!+^=g!Zl`ftI2`VSThhF($csfbrt zPtv9|TuskbhW8=FTdWUh%#qbQ)LH_E;~_P1e5OUDvvuTbI0SK4*wg-L^?n1DMi=1u zm-J;v-fGxpDzY5v54pPy`KO~ApCmk~{&G#EdHU=l12NBZVP8Z@8zEmLyzmx#JLHq} z!*wcM{qEGyw-V1lJX)2gx4-@3Of@G}A9e*J-+O8IhwKaepf|z!n7*G`N6zOhGjP3~ zs6V5+@8#0zRQw^B|MaBOZvu+i5{LDq-mf^Xet*OrDjN?zg{RRcbDI#?TnS1a+=2WH zLqNfx88u&Q2WftLdbG}$59|;RsgCj77Ai6Ke7u{=PYbS_x5ebMv_k}_el)^--WIz# zfv>LC2;#KCadKO4!nrJ|9_sl;F$LSbl;gs$#@+;aM_=SAbyodp$<#Qs-i^HAc(>m@ zK`yx8>Y2zZ($7akZ;J*lhx@nNt(#xy9b!EX{L*waz}c+7En8@P0E`gjE;aU&0FdHjF<*KQSoBA|MC!x>#2;{N-x5UZ3$4 zxD)nQ#!L4J6CyqZ-7wNCYfBEPJa(ADI=l)7Kc zPv-N34<0@azYRWEo`>!T^?qj8`Lq@EdYFehMjdyBJzf<6H;$nF@A!n*w>^DA?SJ0T zc<7FAq($kM#%9pJu%Q3pj^C-Id%0P#PbOWvko#Xf?zMKP8{)CRx^yQjF8o!-vtsb6 zu|oZmGu%Z14j+IwtVRC5v(VC5APcw|`eaQBlUTnsV*~KwURs~UR=CrKBN5g?!U*R@ z*29*Qez}JQlbQ%yMau;Wg+P0#ka*>;P0A7^Sc|% zr^jiU!MaZduSYJznx>nhy)J38P<7zdLFAVAE2Lu!sC{FV3389gwaYc0 z2tqtB4UmTkjJu_`33o~dk&CLVBK z{y5&U#qt!`#@z{{d>+vHY-yvpkB+55JtUQX>AfEX#=jXb27NV&`aM3)Vd<)Mz&n(X zA3qVv=iP?;F!y` zD()KaUIx_n&NC%vtz8dX9-l9|*0gV#(=y&1xD_L%dHgQ@z#DKr_UsEesgZpj))%4^*PuD?z5 zckFKs_$)qA>*-63^WB`ci_Tfu3PZa+$56k_&XMcDwHDwN%aJeNqIoI$(`n$^X2?S{ z?uop4q656dANeU60n(_T9C&Xn^1GMku$9*&0Dp=7{_eYSfVSTO6X5MwS3krF9l0!? zM$MNl9opwZa*1b>biq~7D`I`_b9BC5GIi4);7a#teP7Ut8D}54Cjl=jrTNEWjuA8S z=gt9cb{=`=iBdb3gm;u)9C^-_n;wZQR37B7(7c~7S>E}E{u|J@4Iqzf(Ui#2hy6d% z;*I>^jU1gvYD++0Du6syfrW`l?$aAu zzxz4!1)t3;;BVWI=ihSdNk2o?2MuAGf04>5n7YYr8|Y$0XkgZ>=1GE3HQULRY-J{o;M#n$^gE%;>r$$+!}@$pV^x)2w^*L(<(F zcqfj-Z`WS7X5L(-54^S?^_{i4m(S}`^`sT!8IX98EU+MW66ou3z7I&w{J?fPoqFCZ za;1F+6r5(vkx)$p{cDVWz;92svdSUp-(HHna+X&DjpfE zw*#M!-tsDcMeR?z5^4Q+<&CapvE0&Y0$aqFW zey{b>IFCj%n$}0-GaAjvwnknx8qL^MKeO~N)s~SN8%f48|6j8@mW}@l*%&zsMv~Et zguhBNvh|ThyQ*A@l+pCpNXU$!L5=qxn7Ozv`;r z^Z7gP>-Qr3y{rDt`}*g%^>^lQWLqQ2XfpO!X-2j_lKf}1^?P?Q@~V;K_cHcZUG;lD zqq&RUa~^rsXvk>d8I5LSTcf#ZG@9RY9(mPBGMd&$qxn7O|BYAuUd(@I4*&TP{+-$Q ztJ)fk&q&QkGMe7`y{rCx&VN-rqlxhMG{1M%$om>ee$V-T<5j;G^Jp?Q(s?vwG|qpO z=I@MWWLu-Ti@)ls-}Cu9Bm6tt`cKWq@O`<%F`)#*J+1PUyO)H+$JmIXzCSYj^T&g#UlH^XH#h@b|I*j%8ph17jH& z%fMI$#xgLLfw2sXWne4=V;LCBz*q*xGBB2bu?&o5U@QY;85qmJSO&&2FqVO_42)%9 zECXX17|Xy|2F5ZlmVvPhjAdXf17jH&%fMI$#xgLLfw2sXWne4=V;LCBz*q*xGVt%n z0QF4)Gm$UJjBeY~%`(hM%PQo~y_43> zikJm@HBaPM$2A3H7ixgs6VE{YQBoV&DiUxL^zwUA->fBSyX-i1c54lu-TmXc^300J zC^%!84BkoWhZb-Q`UD-=0R9$u*6vW)eMgPtMC!h(2T`9k+xy-(St-yv<5|H&&87-j zr3Sgcb@A-np^s&zlMYldVVV>>r-41X@G-;)V{OR5@>+Uk@Ox+Gqgo&kAOcW}LUmzSS4>O5x}qeprEF z(N#E`nzX|4$#9Bo_T_73SyVhss6TbjYm%-cb;h+tEAsS5_nsK9QW@5hyD^^(m8IN< z{geLqrkJ0{a%n1|zD@S^Ohc}D!<^{AGlvs%i8XbTa!i4nPegw2WS;c+i`35ubCpK^ z!fJboRTYe9(xVXhSBr}*5@(NrkLfg;GrF!y?r3_Y4)Ii1BagbeA^+@|BcL}ENB-QF z-|zH8YCKrUBY$zfeqeA-Hu#idoQw@qLyPKzVf>T&I36ZUN_#4|^y^vBw^-3W6PULP zwmQVm1#W_8iBFJIp4s&A%P2PS4sstlSc0{ud|>d-zDAKM<@y66gZ7Ib+i^7E?|7%Bj_!uw@fpjuSGck44W@M-|{tDW!LXz_4>Uhf!kVf{Jo zN#mw~-V)EgW)kb>8w#^~23%n#>f>y5ugCYpH@T5o&ygp5H;8>uz6bpEqmh5i+{JB38_xI1%LO!?c+0pz-&RHYOy*hEH|__k9_ao2k#Ci4mm-&d zoUk~JTrG-&d6G1BX8x;RK9O5aNpG`phYLE2QGb-5)3MQ%>UR}AwWa|p;O5r@3A~X9(%mRhupm+O9 z`%KxBzu9tj%QWEj*k4mlKYHfG_QHXw=|&%{FOz}r+4PLJuYsN!1ZyQ zOx@D!$(elu>I@m6LhGk0T@%ZR0zwUek`rVjMW=_TO*vqfJfxqo))JOA5kK3rG3VL5glC5sPy0-}?0G!Luo3Du zsl6NdRc*p<)hnuA`6wZO6}%$H$Bo)Yxi6sk^m#Y73O1&jLHw4f$hjQdvnGA<-Q4^SH^W@`d8Pj zUE5Zz2E8KIJ=TNG()=tZU>*^5xKChxe0eERB=s8ftwyvzYssc8ru@l#z-@3p!`jf# znq2HX(G^9+Xfl1fdg8pE8lw4r@w%)U_niFd0VrH?`G!WtTT`=%i9Qc2`KN*cmx zA9yG|j{h0Ch7v;FQ>Fv&l|_B$^;b(4vdaK(-0sE9_;DhZ-?`4rumQ6lb_9@ z>Vsth>Mzg#{`zX26X=6#X+CS~YhQDn_f&sX;(9tO;xudj!%5#k@63ey*lnA(j@w6# zTkRI)=i{6Yxh#eCf>26Eo;NY;j!QeWZ>hrdVpf9~(^mCgg`o@jh0v>_ z^=#}`yI9V9QFWu@JaVOrM|H9vW`NHdtUqk7vl`vML_<8JQ!DDjw|#s)xMdZ@W4jx9 z$w1*dx3?#N+czL@wTR#}jgtfaZpBk|TW4fGv*kuw=K z-r6`_4E#-TU6{R0ws6kksnj~CG>G~&8v7e(v{U=KhU>`1eGV`sb-n~2+ce}mn)dkY zR$2({mfc7GK;-B^78ledq6+(K_QUuF2~G!U{Hyz-zJJnb1wOBJ;PW~h`M2*$ttH2( z`_ja`v1^6DoDk912l`g*U-rjJ=Qt``;Ag!N)fgvx*|nLO%X91@en0e?!_PyQslLtx zpO!Yd-8lj)`1N>oKLJ<4c|FJZeD2UnBly`mq$SRaIqo*ApBHy`f&L{g`h*LnKlHh_ z3Ah^Ob54?`#u;}2-K6h#HnW|6Q?tzaq z)}Og+-yc!oErom%^=zouPG-qGHgpK$)ZU2P^w7}`PXVY8q^>yf60@~h_4Lomk^043 z_D*lxISBh?qB$S+?|gYIBn$^29@8Y`9}nA?-Bc6@-td6t^TwT1T-n=5V`cOnY~u`p&v=>V&w93*37A&S^)mLBanM~uYXr6 z3gek{c#8aZ)@s6|`j5lLfBv$%h`fCAoo{8&sd4)<26<(}tA3NFIiOd;JkMwBk2Kk{ zd?IkeURpn&r;7jj(R8uA&1;Zc#IoxF@VC>@zwFiGMG*!tFNk^}`-+m$rTE*d4MJxYlCSE2hi3x34S)u0SHU z4%nP$@Bah*LoASc#`PaB_IU*QTHI%HcFyHyJxT5VNlg>f_sUJ>WvhXGIPntuYY|IH z7yqoD81VPmOY0Y{+~>iOxq^Crw84H^lvh6x9?=B*b5dzH>fa|RZczRR`z}I#9?ch9 zU29)I^abK118}}C-kZ-Z*SC^dFLueJ{;VLEPZJZBPZwU~c{R_U)#{yw`&GnowYWp$ zN=?#?ix9u+MAUzJHr`x*PYrMf8V@b8^jgaEP65UhspL=p1J`2P3eQll}+ z>kpo2y?Nl{jQQcxNnPQQQ*#RRCil@tw`xhHpUrvTGTq26voxkUXj1FG4Lfr0W%`F2 zPd){I^9JNK*GjhDe%B8^J@nEmJ}v;&L6m{4RY(WUC&=z9S8s5Jmj|iQHvx^rh#5= zKXQN7;GW}|=YV(Mc;LQUB`T!TEH=zZgDTVyd`P{kxnecwOEqY|Oi8hwlYJG82SNek zU#7aDJH58x1?c5Iquxg1(uAk;n!#WBEAkxerWc+jvp}y9^^4zsl69+J4D`BY$crMa z-HLN`K(C4OaanPp?1T7S%)r~Q{wymUvX&{9rS_BMxK1tmI3&e5&wnZS2jDzi_HAX% zj`HpB+(cNq((Nu^7&+(5wS`gOFQbQiHB+q7tO2S{8cQPA@#1THJRjx->9G>I+YL>n zpl5#2u8|V*uyTj#o8Ym4Al}9y-}i3FK0-_j+O5KIzWmfh_Pj80HQ>9RqdrkU{mS?> zM)0?5L4Nm}K*w#2RC>Q3aX@)gS&b8?|w zJM4F!&bpRD{-;zPl+cHFxnK3k6U$~myT;zM53dXdi$qyu7I1BhlUF8h!;{Aq)cP2R zgUj|C$8_jI+K|`an>9L?wEl7hv)DVYq048_riI{`{N@6Z(_m%XjdM` z&x$GAj5oOgv45NDo)%-t-PhP=)JI+E9l?UqQ2n!1vXieqrjW6T|VucW{c1& zSl7sqa$3)49k%O+<%V9+%LpO2iMHmrEI{?kOGo5U-~IACf?PnakdORS?fNEXSL*$S zM+5TPS7kK@YpFaq;k@J5Gi7yISOU*Aq$B2&Kls7ID=u4&!CxK64}a9%NkOZZQS(J@ zJMF(}lBH?akvY_S(ZKw#YVGS|CtJRPkB&3y+pbD4KKqv1&o`jY>h&{q-)|X!aYA}N zrS+?&b6&msdW_l+%S0oW;~PA_k{j|#yu$InT5+Oi$tUGnXjkJR>UDoa7-f4<>#{PA ztJNu1i+ct>MpAJWqP}?R>IFy44gj~XKwdRrl3LTr&S6ek^V56{L+K<1ndfX}B_D!QXH`SHsyKhwh{>Ef zH%*3Gm!*e#x}FTroPUJuy*)S>sles({<(ENqb1nC=`on3!S&KGlh+UpluiwWz=e^o};ji2JUWNP1e415C2khlBK66BVmo{!Wqe!+3Uwky{! zZ~(nA?jHmh*0*i5bJBu#jRj~Q!O0!%L*)b1enV3lIUAq;1M;{E=q)gBf;uNBzkEHF z%7dCL>aET&bF`kwgLdt49tm29xYz953Ht;>u?_X7wQ8~gZ@=2a(2!$mn#o$^B9GUd;T`b*EhHf(RB_NBTwo;MInW(VJDj~Zxl3Wzh9Z>3jW3#sJD85 zBII)q)JdWh=i^4}4G#0qYTJU|&;a$-3GDX_wz~oE@<%>sczaE^tSH3ehVy;X)UNqW zUDsGaUs_4)H*s&>e5fir5cJw<$mKkiXO_Q!{R1JVhTQq``do&Nnc(vV$LFTA=j{7k z2GhaE73cM)#||;x{Pjhke~tBI)6*?su_qqE_$RHep#LYsnCO>tsC8B|isnKKLk`-V z2#0+mQHJ>!l3uk*bzX2B__wY^y^IQz=@&z4J~j^`*L7gNy683RTSyB%T>Qv*~s>Z{6E4=i84C@ae+*ZzBul#px3oNVnA z6$iar1ajZ2vaEd3+Q6MWktg2s>&z~I=NCeI3i4}Q`}@b2z61Xkr;&H1`e&!8j|Z;* zndZVwj(g^!~%Ve*<45x=rKyS`P z`)uKmxw3tmB(;tgBp?snG%kO=lQ8H_!jbRewBg84wg-PxtcP1J$jm)ScAW#RZbR$o zKM8{8XYF`{^}$vl<8h4Zl-1zhU_t9_HJKdC`KH0TLo}Ko*FH4Y%BZjr^!ivgY_n#( z@8Q|}2zbk4)Mxd#HD^}JQyk~xZs8yeXUDuRz%^oM{cevd$re?*@Lq*b&O+YFHf;vi zJ4)Z0M02~T)=IkUhv5ANQIGd!CsC;WvEE=E_%~v|*x9HYY^WZ01bA68`t1Lh-R|}2 z4Dgro$m1V)e%H02>f|nr)2@WEA%*9j4Cv)rX}$fNv(ud?E_DX}RuZ|D<&}KBZ%{V~ zlhw#?O$bQvmWKTgVS?+0{j+xYo`g<0@F}jR^$x*_5Y`Sv{DMa^r~ zJeoUB&N)`NUHUEfXbvKuQ{JU$wZ{aw1|#w%Jk7ERCpQ9D#r=Te>iy@$xsFi&=Dw)k zl~^Lbz9R(mMWV<}{L|Apyd;5F^&z*ob>zNK5Hzi|F;W6>0c~t)OaKGWAA@YLJ(3tWs!F9*QQtGhC>jO*> z&l?8X-z7u0-oH(y6u5j7^4AwWaH@W52Cj{Hb6wAvAsFpSjsI$HTJL(=)Wv>_#(B`2 zPDFkoAb{xsdoXZaY}Yld&b!af%L2HX8tUtmPhav`v;g=UHk!Llo_%?{p#E;)GPsX& z6Fu0K_PmXXUm54STgRjFnZ`cUd&N5B?yruJD;$sZ_VVWsWNB+o~C!(Cq3iw+Msrpk> zN$b5$Ljn@EIZ<`58`o>^^A;J;LvGy!pC0UY?}3NQpPk(b@8yW5dfLZF>AbYh6fXtP zYo;MrmC!Ag>f-}$6Nmi5$0tsU4=w}VMbg}NW9hg34-K+`o2MdAIoNgFZ2foO+NH?r z!}3@1F698;l7hV9dTZ-id20W!i23nf*g&Yr<+p&o0_TN4&%uPU$Z?B+t8vmk{&KuK zA_FdS16RO#>aQZhaL$Uc5x53B>i6obl)BPN<-z7F&FMdX{*VAxfu9%sQ9yof42FLb zEdP!Cf&V-C3H~24QZthL-c`Tn^LuUm-c`RB;qP7bcSiVoZT+WS^>_By-EC(Pzb~GV&Lhca?sVi;BgtrdMx*&X=aE4U8A(PH&uBEGaUP9kWLy9ItN!^h|MPSB&yVo; zdikG!Uw>zWV>$epZG4|Fnr!@D?~KNIq-G@fz1IKEt478=8Zw#)N23|p)@ZI8sToN| zI{#HR2|$ zvH@Qi8Jj8pbtL>>&chK%OEM*95E zUNxF{{wmGLI~|Sl$g4(@(fEu;Gt&9@$Y|Ocjb>!)qq%A{nvu>U$!L83D$Vb;KJu!O zZ*}GqamZYi&6Wy|NJ=5)Sn;Xd9bBY)L516(!M|338D-?-XO9JzP!Z3~2gKk^Le&ZvgST=3W9pt-2X zwbBOGuzK*9=SMDnW6p$xGp(TaUyS^~hPfKyTY@Pc{8*r9WYmWswyD&|ww3W?lcK3} z34@|y>f??L%;=M9l_ya-^DX#jTt}Ym`0h?FwAV zNybtiFWkk8-2CC3ch{!f03X$r$ZZVvEk7(teH%-M3G(R0>Au7e{W02&$nTvhigG%m z0qq)N9>gAY7u=rZ4E;qEdZPa8f};&3TGyampDQ#MpK+w&JEPou@M*;R64wju;uno$ z2fb1k>Qj$6oVngZ-B*th^7Ot}5|_FTf{!$Q98tWn)!<%2Um@`J2ef`05oF5oqV_y+ z{k6z^3kq!mkdmj1aV@~zKcesW*sf-^}+}6P98SMX(`naPUC#~N;Kd+hNWKtyf zm_0=<%%v2Yc$xZ`sIoJ1TT!tbuE@3E?}#4{-kx;Xxzr)W5x9yw>KnVad|I#D0RE*B z$lGgdgmUvZubenk$%qlzE@mRvtkj4{=w6L=u@yQIGl^T}tIYbf48$0HfECqDF=r73VDoWGLk zOM;}8`KXVP*UO^*C}*s6T`;`s~cx68-KXLk0NwI@10-pD#?*ea{PZhA6&Bb16|3 z`Tl`fVxafHJWEMVF}$s{vJJRhGU`uBisfWlZU?U8jXbql+#!7k#xtRg<4vk?#f2HM z-rAt|IYH~CXYSzJvCyt@m=i5n|E0GZec~0rv;w$hBI->p@2J|u0^^y~$B)ZO+i-kw zDZ1Yb`o?V3J3X>n^=Hc2Ar-H39S{X*8E*=e{%5 z_1HJimsBIy?9WQ6o9PC6b*w+K?p3Upr%S^4A=)iaf5`Jq`-uSR7Lb^&h`MgBHwR&4BN_%;X9h>7NM<8n7C9+0sG ze+*|xZf5pZan+PRKCk?9+hgF1`YkVgLzxa!>wXc|F}Z*nidr8#sgHRpVLs)~l_xUY z9qI=k8+r8U@ywgVH0k0nC#rEhlIQ6y(>}mMjUVs*v|fJgKGPfN(beD+g!NzE$$5Op z`JzVfdC89YlpW#>Q-u8B#%jg;Aq!o@U#W?M#vX@t2JP;*=sDJ8kO3?8s z)sI^BG*_CqKxC3()G_d}5JJv;?l4o*J*w`RW1LEhv-PjtJ)RHoNX4R_w`0P_V^0Er z7Yic~__n0}&Ei1d`Z!LMA_ONHg|txXtaCBy6ACqU#3fU8OnWu*hbiq~dFtQ=F&jOP2Aal10mgeF$xw*Xk>xVqcDHgZe{S<2t2oHd&?PkwrYT zt7ApCs~$N&S5R}R1#qkFG}j>KIvQuUL;n(nSZ6etxh&?hPYHr{>+Mm$ptDup>WdEW zZZqVock@N{F+d&&88+mCzUIezs;GM9k%U}JsEfZkr4iz>h(>PSc{2Cwgmd68hjl>1 z-JNsUvT=jJYo?+8Nc`3J)hl2hPLxC;Pghq?&T63QfDx`Q8ktVsA@<*vK)b39s4w_( z=VkI45%BMfLH>Trf_VbF+=0ukr@1DN@BrJ_h7#Z}aXe^>^hjTrc!ru6D&nZ$`Ytl( zS_HLk(Z&1K+%6-Vo})|Ut$8=){q{SV@nMTgYkZ{sDc zPtZPEA&*RoG==E#umJhdJ26S$l-j_j*&lhlA7h18KGZ`}?Kbk;gPYwQmau@{d?)f( znqTyUZ;@1-eKgnJn2~bJu$h`)4s6JMD-NA^9BdudlQz$hKizR@p1(cy?ZXDeG}oCp z-D90uJXL2rv0rrTbawmQRgVWBKW@~wzg$e{ZGn9VVS?jdXHd@YFsB8!ba9k?*TVegzj}xt0bgQHV z^j0_?^gBw-Dkn?x0k7kr<1|oNrRDyhiTZY0^()A2-}k?JHIv#e?P5pnVR^5pTmbr! z^h-n@SD%?+6rs&HIrhjBtwJVn0!!o;JtJ@8yc>O4Yj zD6jaaHlY;avBddkxJUWeTOMm_U3l>s^-VfMjNG==Id<+t3Zp4<_ zbzwz6Rj+z!JY?i!-H0*W0|>BJ+J6Sy}YXPhmO^-KOwz*k=s=8nKB&KhWJhVkvoP@TqVB< z>Jq7&jJ$8H*9vD7n7^biFY=GviOb@aNkBZ-Gih$ZnkDDsQ zoO0vUq)!o`SI9SiR%)nLi!4wLkq2R@w~?>O>QaD^j-(7#Qgx%JYdNss3p_z3NKpGGbaFr)oJFXWRb#W<}^7}Ao*n^5m_{H;(QRe4up zTQRI7q-!sSDLb{E>SCR=arAIhj+t=;d@R^dA2eey-Q`U& z__Vho4?Xj#=KLpWpJ^70JW65G2dU!=!AIpj@|#P=VrrJkgU`!f@wbIEaWv4!)clv@ zhGwdU+&J{E5PW=NXrI6A7^189bw51av;zE1vA_Q1c)c0!%iNi6*Z$9rQ3@;2+;CzeHEwkT zP=Ed<+vo67YTXZ5jr?CccFF#^Rb-Rh!%q;8-bC8xPmg1|!`HaVIPweVjrvgkFCWvi z^~g%U@L=#U(4u`D|JCE0R>kJTs2mvpAN}R%^Jm98?OfqqDO3vk6H-?N_5bp5PfP2b zr+nQF?Rq~zpFcYW%E>G_=8#t%rQeSFKRX_3Ph{cQ!3(g@Ck=n;?>(NMeeT&d@Co5W zpMUi@sYz!J8S%cx<`}}3cOub(6VSR(IKKR=$K>vT(@l(!aSIL~iQq($Yh5H<(q%ZgI%}?3k~a_Igqm zg>pb|f_eM5AOE%XtRQ!Z*+pnqDUpuzFFO{@;ZU3Y;;+>DZY_%b|3k-xdA9D?FK9h! z0{3f=>!6p^6Y}etH0nK-7p_xYG9musq85aK-U6Rrygb+GdVHsjD_ZJOJ+jNMm8thiqKFI45W_Tv>W=2)KC?a?eX2 zg$x%`<5>;YQ(qrn4f|lGDWEsNI^+8n9kb@Au6vrJ;w1Hc&lB7Iw;#Wz+ug8ZnztC- zmp0ZVf2VUSex0mGfd{A3`SJgg*+rUVg>JT+hhM3%fMI$#xgLLf&bVH{P9wg>F00qkKcd%=U+d}^XEnX z&sBfo<4%18Lhe0%kC%53yn`>4klvj1!gFu;;Cnl9?gM`~5`-o$i1*xhjjf&*B@Sb9 zw*cz>ImDe3?>`*oL`5|6Aen3hqn>==mAGNJ_o?zqPZDpZVjN9RbKj}6Nd3SQjWutBP3lFuvB59Cg6Zfy)ar89tQ?nS=OQdP^TOb56te&O;#tYYBwZAtKj0Kx`e zoIbeSnZ*z!Cj)vVZrbNzO%~^@<<0iPoT$ea+7Ijc1)sFvrta54kJdjTzfbouHGBp7 z%Js+>i7!iGIgwb>E zKYkVB3)M#sUTU#L8<>YNsn>w*20ErBs;uq;ZfJo#aerV~#$#%nG?XJx*5EgtReX%{ z!7rdZYRnOozwmk5Feke2qyDwL@}O?i8sO5{zmL8|sVJmK1X&=>O}7mwkxI_yn-p->vfLvHvgvCN6@VdG6m zQ~8lH zL;f;nhOz*oCegeAxo2fkA7F4_jlBK3#IpF^)E5Y}3~2s%;VSM;L+LXiPRoPH zMT{m3ia%Tr{+;**m&f9(YKM#!ARf|e3hE`T!h4rmse_OIG~|k+5fOoV>w(*aBR5j! zf8nk&3;d06em&lQw~@?$Ld};qLa2{CHOH^ai+aEe!56BJGdR3YhT1#>e`9<=c$_=9 z;zW!xH7^vp(5JX8Y~jfn)coqgFK|5m|Jpb6u$tDlkMBh!!#T&SQZh&AM5!c1Ayk@G zyLqyU(yT&BI>>lBBq?M%$xIPKaSEluu3c%?tTYdl@;cpX-QMe6@AbRZyRZ2DoR{n3 zkI()--}`><^*s0UtewghSe+1^bP0U?A5r=gvA4Y~gCb#_5H^#Mn{Z~1S-z|S^3S?~ ze22x|pOY>}0$+#w=$X9ioB#oTJ>WcVO8-n}a-GsEhgOKIgFesn1xv4+ZzTJzqao^> zGa5q8Q^<9jlS}dE!v{ueRTtC(AImW0qZAx}Z}x0}xP~ssSDk)yeY^p=U(7I{=j#du z-G`)&0(}P7^SM^;nc@&OoC}1X8u|pt%vP>nH5BxAwaE9#46C*5jRD?-eeC(672O-& z7r+nrSesN(U!+mK%lsFTs|zE4cV|#{bIFPeEDm0TSubVKM=d3! zAVrznk6WCP>lH}+G;*AFUp_EWhNrGfMoT;>>O2e7jK}A*b6M<}C@lE(Lk*PV2I>_3#5tR`yzor;XRMj~Md{ zoZ~DFtaBRYN_b;Sv{IiBVTtE*n)BRUi<)B0fg9(e&*4uJRh#a{L)=Yb6n{Bfu!Off zb}aCkVC1uQ{JBy}{XB4^1ITBy+Pgh6s)1)y_|r>SOV3Gr)XMufVSJYQ;H6fSumeX; z8uSIa$c@KO&#cfU`?h-{@?+}i%PKYgzGr^EW$H>Jk10F3Ge@Br_-^daFJEX&WLg)( z^CGlyzUi)qFDzOv2wzSRmP;w0^qlU9V~Z1p^!c##wj*!5Z9MDhPr2Z~&4c0@@~msZ zg*K#KcPDZMS@B~-0--;%Y?_fPZS%YGdNX-ma7G|k?y#09b;<^Rn;hh8gDwU{^G%SA$dgo~5 z$1lf5hW@Sz+z|U}#wp^rn9dF4y`^jy>Mv$=_1?)n2l*J`zRna{RcvDFOnwQZjn6l8 zQcX+cKK%sncf#kGDRrPSaMsE@z+F~R{+TP%9-C}@G6Vdrhaq39n>ZjSP#m}euB%Kl zr!b|z+~7V#a3WCedVPXk)N!)!8TleV5T>zhk|L}_ViWG`%;^1}!n~?aK|UMt-jdl= zc5ZdpF!H%<6{LK!On6%NFRsXed@?bgtix`fl4brP&ueQuf3uDgbAn@v_kq7X-fy#> z9P++2QIzZ(nz;V6>dPjM+ao9fdRKdl+aa-%-7^^W7c1X{;;*Ljyzf6tOoeo@r3-aM|*)6 zN+I9#{wgO$R}^?Lp1<7K8&d48ZLl6#nO}TfpPYTxc>j_&X38fqghz_1?--b~0H{3%plk>#5G?)@v;TpN*pE!`^Yh@P>7FA15rl zky}M+?tU`rGH^ETyX;dUO3hDyCHoJj6ZKKUJEeVG{lS0T3gj<>oaG!xZ3Q2*fyk=` z8dCI#0MO^9B5xKG(vNLz1D=L`HD~?ig~O!Wq5rV#aDU|-3g554NeBE{dfk*y&U+!t z?K$R&;KRE{ah|xk^~sy6BP(lSv>)`gm?uv$r*YQ{$6Da!xc+&^Y<*w0 zCX(xigLURbjs7KR*F+1@+ZkcpVxtLV%aj6vYsDgeLj*l29&)RX6V}*Icy%T&tN;zT zSFnn)zvWJrna0~!_B-gk@f^ujI5;3iKlV@Hem5xp+#N&a*S7zv0o=bG`MJr?p3{~r z1HKd2ZEkdmd~|ECd>?0(W}yCdOk?3r2Q$#?$n?c?i z^+uvzCHUC7h&La=#}M~#o@S2wg_Fr}{t||`KJ$zs?M;e>=Y!t<3pbw1R*IVg>z~CH zMt=*|!u-9?$&imO&Npw1aEQ8~f*AOiocGv*pWt z^HV4HD!&i}AI*#C^XBR;i;`$K?^v}7$g3~B3%~s2H_%r*QaoR&rF3CN2i*S&Q!V7m zT=(QZBtXtG!hG`A8VyLBe!Hdb1HuaXbG~8X$W$wVX}|;SppRQl?#QSjxYrR|n~@)0 zHFC$;7U)ZaaUJsW`|fM+it>lRHlfIGh3<6jT}0kji*di?7o1A6Xt*c?`aC5{|5_!p z<=)y4#=wiGB3~yt#$B9xy7QAh$kCtK);!T+)m+qYw64$(kBb~rbyS~i9TfCwk<#& z^l5LRsSep^JSQXHn{<3$WwImqxCSFX+Ic5AR-C-I+hg4d!o~-vJ>4Efjoll^cB7qfgJO!F^pgX3x~5wk71ebbhAtDU{vM zJv{#sd0y1cMZS2@Z8_2F<) zaK5wN;d(2KnV~pk%L($iWDG+6ZTH*JAD0dQpVe28*N@X|k6jJ-F%}Q!RWy83a)4NI zFzC~9T@{H&mR*nQA^TgYDCJY+lsLmyKy?b}^Zk%-3F#@*9CZY^{Rrgelq_O&GmHB; zVUK;FsG_1O<%9C!q^jarE4cr#*5^<@6a0n4Lrw@;#J~LjZ1z# z3iV-`VV$ca1An<^c!zg{Vv|LSz%VAz0XW7dj*JbY=RvWqsxC8oE z8x?#KpPTjocpCP%YESvBgwP^#{nX=nuJ+ekpZ|Q$EYR1+p#PzJIpNO-K%ZghDkA5e zy7i}$A9?PZN>RLK+Q%~@UX^xzK7^w=auajogG1cNb>--boMSQKuF24!Aa15Q@=)If z)djKJfmdQ5sEOm$yu9iK=Pcoj{k-PkU$1@AR#k)E7WZB4fSRkF$*t1Bd04kvF|*1o z(H;W8*HB?U)yjN4d0MG$F!0(|>VsOVmZ#?;qLqQ0gd+FfuhW=uvIw}=S>z{vPLivx zPVeJ{A@<4IEN@W}v!rm)n}?ykZgP2Layax!mRT^x-%e%t;a=bgF=yb<^H+eT3vVvLL&a19|!UpGB*P5H#XUiERpwG;WT zHH#;d3&8qeaRwn*uHPCjJ(%35Tzu|zE2hl5#cqY~U0Ip9{_8v+$Ss~|v=sck9-&XT z|Mez89aG?b3y>$xQhcAH_Xp&eVUE1$;$Ja!$mKK2oFExoFzvjmtL^||N0!{+m>Yv%5^$K`U`*I>O($m7*F=q$`a(;IjOI@6Un~e z)sFn8_#v~vw=Upga|-$6XM0=+-GFnJFu-%XKDSMu6U-y;SGl-O-f8a~a-?M!d9HDG zQ9kd?rYstB?20$|>*4wG&OhB(T6Ewin3pZ~+jj{nA&ylMb)a{Qr+gYDzO;Ydy3jM3v@9}(Jk zZZ@1T2yYbdB-evgBl_GeK5XE$X$AObe#!IU^}!df$}EJqf!H@1xbKfj2F)ekBRo}a$lbTo`?Ir>7$On@s9o0z-zGn&5|kC8U?6dNHoGaH1}kd`WN`_ z>(djSxUX9_pBngd+~m{11E{c{TK2ijIyS$)47jZr^+C%i#Xl~o#KQh!)tMl_lIb0- zo<@G3vz|loRu{KxnZp%=`g~a0kB|q1jf#5W1<#B1Dhv5d0ZYxKePrL`Orm(3h`DQm z?YwTt$Min(^_JoW5%;zMw>f}3)aAhF6p;xK*Y-T}_^>RepU#ly^((x$v_0yMIZ-@k zGx+%2LjB{In_JKRL_T*7Jonq@T+wj5ZdL{U)!mf7{b2b9)%#}gz{`D+AG-e7kcqtcvTa2K5I`Y{z$qok4w+VL*igylF>t!ppRY2S| zYmqyP*l|a!ya+zNmB<6fB(U$ER|l^568VLMZ6RusqqJrii9PD|MpahzgMu?;1TKy?-9giJV)NIew;R3!E-s}zZU!a zd!4&NZx3Wm0-kmVeKy`@b=NAwIw2fqA@?vYmb-tDyboxHBM%&5Ev(l;-cQyVA%E4b zv~cV>^84OK>;oT&wF`V!S3><+-20UN!{n~Gz}0F5%xhaK@@WpDs*y`VAx{%w)+H3`O*W&c5BMc1s{{i$W;et>YwT&`;`mk`C;pj?Stz%a6YoMrBNUMK3hiZ zK_vL>I)j|YR^irMd<6My$VXls_0)Sy>NwClOCj$aRd-u$kQC^xv7dBJt8r%iRs;Ks z*pB!7E=9|St4s#o2Ol3f%BO2XVO6i1moNCd#eUcob-jWosW^|+cccDlUS<5vdE|R# zK|Aud1?)@b*|5%8l~~Vi)x;|c#C8n<|Dv6gzFTc{%h-rG=;y3-59C^|qb8{8odtab z)~$O-P-aK_{W#$E!KjZ-9xm;-J_z#MW{o^9a&qXn#pM01whVb`TjC%$Ve(#K+=IMw zj;)DU8kzqZyiay_9J}qqEpCChb!RF4M;&<&+wkeKz&A`sp3)+FPryh8@^MH&o*(2b z7rY=DxHtCC9@f*KS>^Z0e&U1srDtAKw*4jvc+VoN@SN?LpMKM>-bxJO+Tr@?S#osC zl4&D*fS2Mr?=g71dghpNcuyg$alTYupMQ~oT%$1Z$G<-+@S_4hD)6HM|2Y*{@HrKs z&wu~E#QZP6fbci|zyC@?e~s!dpU;!{AG6@knTZeGnNIlgVKRz|=3C}Nk3}a;a%Q5T zJJSi>hfe6D_#;f5nP`|qXX3*|LyyJZDE@r-i^bn4dWKBM*Ner(xxX~@nf8}+fBEp2 z;eXnw{;CEOpRYG}CefK_=o!)p6CWlTx-*?H@nNFj&-urw&$ay*H_v}+<@tN=|I}*y znAd;b1wX3seO2SfUjDwGSAXpZKDV`Orr(AxxZ^Xy~z+jAEjpJM%}F z#Of~%J;Q&mGk^JfkE7^0(@B3l3no7NMgRXZiocnD%gWO;WJ11PhD@B9Xy~)xZxr2! zKf)yX_o$&)gUKxVYgB*vFv*#ThMo@-!k;sfQT?T%&w`2b|L0Lm>O7(d`KcBBR z>gzev=T0ZzGCGr3Of>)bv-oFZ$mChjHFQF+2A$AH(aF~v^(~#5#G-4y9^tRf^nAXh z4?Q}a^jAJ~XFB#Gi9P- eQVk|P{iR`&4-*YNAO1*x#iIK#A@rR4M*SByy Date: Fri, 11 Oct 2024 15:12:17 +0100 Subject: [PATCH 47/66] Updated gitignore --- .gitignore | 3 +- .../plugins/GeneratedPluginRegistrant.java | 19 ------ pubspec.lock | 68 ++++++++++++++++++- 3 files changed, 68 insertions(+), 22 deletions(-) delete mode 100644 android/app/src/main/java/io/flutter/plugins/GeneratedPluginRegistrant.java diff --git a/.gitignore b/.gitignore index 6a46278..231f7f3 100644 --- a/.gitignore +++ b/.gitignore @@ -43,4 +43,5 @@ app.*.map.json /android/app/profile /android/app/release -android/.gradle \ No newline at end of file +android/.gradle +android/src/main/java \ No newline at end of file diff --git a/android/app/src/main/java/io/flutter/plugins/GeneratedPluginRegistrant.java b/android/app/src/main/java/io/flutter/plugins/GeneratedPluginRegistrant.java deleted file mode 100644 index 539ab02..0000000 --- a/android/app/src/main/java/io/flutter/plugins/GeneratedPluginRegistrant.java +++ /dev/null @@ -1,19 +0,0 @@ -package io.flutter.plugins; - -import androidx.annotation.Keep; -import androidx.annotation.NonNull; -import io.flutter.Log; - -import io.flutter.embedding.engine.FlutterEngine; - -/** - * Generated file. Do not edit. - * This file is generated by the Flutter tool based on the - * plugins that support the Android platform. - */ -@Keep -public final class GeneratedPluginRegistrant { - private static final String TAG = "GeneratedPluginRegistrant"; - public static void registerWith(@NonNull FlutterEngine flutterEngine) { - } -} diff --git a/pubspec.lock b/pubspec.lock index fced3df..ae05272 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -167,7 +167,7 @@ packages: source: hosted version: "3.1.1" crypto: - dependency: transitive + dependency: "direct main" description: name: crypto sha256: ec30d999af904f33454ba22ed9a86162b35e52b44ac4807d1d93c288041d7d27 @@ -333,6 +333,14 @@ packages: url: "https://pub.dev" source: hosted version: "2.1.2" + google_fonts: + dependency: "direct main" + description: + name: google_fonts + sha256: b1ac0fe2832c9cc95e5e88b57d627c5e68c223b9657f4b96e1487aa9098c7b82 + url: "https://pub.dev" + source: hosted + version: "6.2.1" google_identity_services_web: dependency: transitive description: @@ -693,6 +701,62 @@ packages: url: "https://pub.dev" source: hosted version: "1.3.0" + shared_preferences: + dependency: "direct main" + description: + name: shared_preferences + sha256: "746e5369a43170c25816cc472ee016d3a66bc13fcf430c0bc41ad7b4b2922051" + url: "https://pub.dev" + source: hosted + version: "2.3.2" + shared_preferences_android: + dependency: transitive + description: + name: shared_preferences_android + sha256: "3b9febd815c9ca29c9e3520d50ec32f49157711e143b7a4ca039eb87e8ade5ab" + url: "https://pub.dev" + source: hosted + version: "2.3.3" + shared_preferences_foundation: + dependency: transitive + description: + name: shared_preferences_foundation + sha256: "07e050c7cd39bad516f8d64c455f04508d09df104be326d8c02551590a0d513d" + url: "https://pub.dev" + source: hosted + version: "2.5.3" + shared_preferences_linux: + dependency: transitive + description: + name: shared_preferences_linux + sha256: "580abfd40f415611503cae30adf626e6656dfb2f0cee8f465ece7b6defb40f2f" + url: "https://pub.dev" + source: hosted + version: "2.4.1" + shared_preferences_platform_interface: + dependency: transitive + description: + name: shared_preferences_platform_interface + sha256: "57cbf196c486bc2cf1f02b85784932c6094376284b3ad5779d1b1c6c6a816b80" + url: "https://pub.dev" + source: hosted + version: "2.4.1" + shared_preferences_web: + dependency: transitive + description: + name: shared_preferences_web + sha256: d2ca4132d3946fec2184261726b355836a82c33d7d5b67af32692aff18a4684e + url: "https://pub.dev" + source: hosted + version: "2.4.2" + shared_preferences_windows: + dependency: transitive + description: + name: shared_preferences_windows + sha256: "94ef0f72b2d71bc3e700e025db3710911bd51a71cefb65cc609dd0d9a982e3c1" + url: "https://pub.dev" + source: hosted + version: "2.4.1" shelf: dependency: transitive description: @@ -876,4 +940,4 @@ packages: version: "3.1.2" sdks: dart: ">=3.5.3 <4.0.0" - flutter: ">=3.22.0" + flutter: ">=3.24.0" From e243d46966eb4f77cb0f1c54326de8ca329e6bdd Mon Sep 17 00:00:00 2001 From: lucasverdelho Date: Fri, 11 Oct 2024 15:19:40 +0100 Subject: [PATCH 48/66] Changed App name in android --- android/app/src/main/AndroidManifest.xml | 2 +- ios/Runner/GeneratedPluginRegistrant.m | 42 ++++++++++++++++++++++++ pubspec.yaml | 2 +- 3 files changed, 44 insertions(+), 2 deletions(-) diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml index 7fa4666..9c3618c 100644 --- a/android/app/src/main/AndroidManifest.xml +++ b/android/app/src/main/AndroidManifest.xml @@ -13,7 +13,7 @@ ) +#import +#else +@import device_info_plus; +#endif + +#if __has_include() +#import +#else +@import flutter_secure_storage; +#endif + +#if __has_include() +#import +#else +@import path_provider_foundation; +#endif + +#if __has_include() +#import +#else +@import permission_handler_apple; +#endif + +#if __has_include() +#import +#else +@import photo_manager; +#endif + +#if __has_include() +#import +#else +@import shared_preferences_foundation; +#endif + @implementation GeneratedPluginRegistrant + (void)registerWithRegistry:(NSObject*)registry { + [FPPDeviceInfoPlusPlugin registerWithRegistrar:[registry registrarForPlugin:@"FPPDeviceInfoPlusPlugin"]]; + [FlutterSecureStoragePlugin registerWithRegistrar:[registry registrarForPlugin:@"FlutterSecureStoragePlugin"]]; + [PathProviderPlugin registerWithRegistrar:[registry registrarForPlugin:@"PathProviderPlugin"]]; + [PermissionHandlerPlugin registerWithRegistrar:[registry registrarForPlugin:@"PermissionHandlerPlugin"]]; + [PhotoManagerPlugin registerWithRegistrar:[registry registrarForPlugin:@"PhotoManagerPlugin"]]; + [SharedPreferencesPlugin registerWithRegistrar:[registry registrarForPlugin:@"SharedPreferencesPlugin"]]; } @end diff --git a/pubspec.yaml b/pubspec.yaml index aca657f..a10994a 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -1,5 +1,5 @@ name: mobile -description: "A new Flutter project." +description: "A self-hosted cloud gallery alternative." publish_to: 'none' From 476dcee98a0c5ea17aadd777ebca93745638b753 Mon Sep 17 00:00:00 2001 From: DBarbosa15987 Date: Sat, 12 Oct 2024 22:54:24 +0100 Subject: [PATCH 49/66] Get local files with native module --- .../plugins/GeneratedPluginRegistrant.java | 35 ++++++++++++ .../kotlin/com/example/mobile/MainActivity.kt | 55 ++++++++++++++++++- lib/services/sync_manager.dart | 45 +++++++++++++++ lib/utils/time.dart | 30 ++++++---- 4 files changed, 153 insertions(+), 12 deletions(-) create mode 100644 lib/services/sync_manager.dart diff --git a/android/app/src/main/java/io/flutter/plugins/GeneratedPluginRegistrant.java b/android/app/src/main/java/io/flutter/plugins/GeneratedPluginRegistrant.java index 539ab02..ed938cd 100644 --- a/android/app/src/main/java/io/flutter/plugins/GeneratedPluginRegistrant.java +++ b/android/app/src/main/java/io/flutter/plugins/GeneratedPluginRegistrant.java @@ -15,5 +15,40 @@ public final class GeneratedPluginRegistrant { private static final String TAG = "GeneratedPluginRegistrant"; public static void registerWith(@NonNull FlutterEngine flutterEngine) { + try { + flutterEngine.getPlugins().add(new dev.fluttercommunity.plus.device_info.DeviceInfoPlusPlugin()); + } catch (Exception e) { + Log.e(TAG, "Error registering plugin device_info_plus, dev.fluttercommunity.plus.device_info.DeviceInfoPlusPlugin", e); + } + try { + flutterEngine.getPlugins().add(new com.it_nomads.fluttersecurestorage.FlutterSecureStoragePlugin()); + } catch (Exception e) { + Log.e(TAG, "Error registering plugin flutter_secure_storage, com.it_nomads.fluttersecurestorage.FlutterSecureStoragePlugin", e); + } + try { + flutterEngine.getPlugins().add(new io.flutter.plugins.pathprovider.PathProviderPlugin()); + } catch (Exception e) { + Log.e(TAG, "Error registering plugin path_provider_android, io.flutter.plugins.pathprovider.PathProviderPlugin", e); + } + try { + flutterEngine.getPlugins().add(new io.scer.pdfx.PdfxPlugin()); + } catch (Exception e) { + Log.e(TAG, "Error registering plugin pdfx, io.scer.pdfx.PdfxPlugin", e); + } + try { + flutterEngine.getPlugins().add(new com.baseflow.permissionhandler.PermissionHandlerPlugin()); + } catch (Exception e) { + Log.e(TAG, "Error registering plugin permission_handler_android, com.baseflow.permissionhandler.PermissionHandlerPlugin", e); + } + try { + flutterEngine.getPlugins().add(new com.fluttercandies.photo_manager.PhotoManagerPlugin()); + } catch (Exception e) { + Log.e(TAG, "Error registering plugin photo_manager, com.fluttercandies.photo_manager.PhotoManagerPlugin", e); + } + try { + flutterEngine.getPlugins().add(new io.flutter.plugins.sharedpreferences.SharedPreferencesPlugin()); + } catch (Exception e) { + Log.e(TAG, "Error registering plugin shared_preferences_android, io.flutter.plugins.sharedpreferences.SharedPreferencesPlugin", e); + } } } diff --git a/android/app/src/main/kotlin/com/example/mobile/MainActivity.kt b/android/app/src/main/kotlin/com/example/mobile/MainActivity.kt index d859fce..ec1558f 100644 --- a/android/app/src/main/kotlin/com/example/mobile/MainActivity.kt +++ b/android/app/src/main/kotlin/com/example/mobile/MainActivity.kt @@ -1,5 +1,56 @@ package com.example.mobile - +import android.database.Cursor +import android.os.Bundle +import android.provider.MediaStore import io.flutter.embedding.android.FlutterActivity +import io.flutter.plugin.common.MethodChannel + + +class MainActivity : FlutterActivity() { + private val CHANNEL = "com.example.mobile/images" + + override fun onCreate(savedInstanceState: Bundle?) { + super.onCreate(savedInstanceState) + + // Ensure flutterEngine is non-null and the MethodChannel is set up correctly + // FIXME binaryMessenger!! + MethodChannel(flutterEngine?.dartExecutor?.binaryMessenger!!, CHANNEL).setMethodCallHandler { + call, result -> + if (call.method == "getAllImagePathsNative") { + // Retrieve image paths + val imagePaths = getAllImagePathsNative() + // Return the paths to Flutter + result.success(imagePaths) + } else { + result.notImplemented() + } + } + } + + // Function to get all image paths + private fun getAllImagePathsNative(): List { + val imagePaths = mutableListOf() + // Specify which column to retrieve (the file path in this case) + val projection = arrayOf(MediaStore.Images.Media.DATA) + + // Query MediaStore to get image file paths + val cursor: Cursor? = contentResolver.query( + MediaStore.Images.Media.EXTERNAL_CONTENT_URI, + projection, + null, + null, + null + ) + + // Safely use the cursor and retrieve image paths + cursor?.use { + val columnIndex = it.getColumnIndexOrThrow(MediaStore.Images.Media.DATA) + while (it.moveToNext()) { + val imagePath = it.getString(columnIndex) + imagePaths.add(imagePath) + } + } -class MainActivity: FlutterActivity() + return imagePaths + } +} \ No newline at end of file diff --git a/lib/services/sync_manager.dart b/lib/services/sync_manager.dart new file mode 100644 index 0000000..0eceb18 --- /dev/null +++ b/lib/services/sync_manager.dart @@ -0,0 +1,45 @@ +import 'dart:collection'; +import 'dart:convert'; +import 'dart:io'; +import 'package:crypto/crypto.dart'; +import 'package:flutter/services.dart'; +import 'package:mobile/model/local_media_asset.dart'; +import 'package:mobile/model/media_asset.dart'; +import 'package:mobile/model/media_info.dart'; +import 'package:mobile/model/remote_media_asset.dart'; +import 'package:mobile/services/api_service.dart'; +import 'package:mobile/utils/time.dart'; + +class SyncManager { + //Native Module + static const platform = MethodChannel('com.example.mobile/images'); + + Future> getAllImagePathsNative() async { + final start = DateTime.now().millisecondsSinceEpoch; + print("Starting"); + try { + // Call the method on the platform (Android in this case) + final List paths = + await platform.invokeMethod('getAllImagePathsNative'); + + Map mediaInfo = HashMap(); + + for (String s in paths.cast().take(10)) { + File file = File(s); + final fileStream = file.openRead(); + final checksum = + base64.encode((await sha256.bind(fileStream).first).bytes); + mediaInfo[checksum] = MediaInfo(s, await getFileStamp(file)); + } + + final end = DateTime.now().millisecondsSinceEpoch; + print("It took ${(end - start)}"); + print("Finished getAllImagePathsNative()"); + return mediaInfo; + } on PlatformException catch (e) { + print("Failed to get image paths: '${e.message}'."); + return HashMap(); + } + } + +} diff --git a/lib/utils/time.dart b/lib/utils/time.dart index 2bf6d26..222ce34 100644 --- a/lib/utils/time.dart +++ b/lib/utils/time.dart @@ -2,27 +2,37 @@ import 'dart:io'; import 'package:exif/exif.dart'; Future getFileStamp(File file) async { - final data = await readExifFromFile(file); - final imageDateTime = data["Image DateTime"]?.printable.replaceFirst(':', '-').replaceFirst(':', '-'); - final eXIFDateTimeOriginal = data["EXIF DateTimeOriginal"]?.printable.replaceFirst(':', '-').replaceFirst(':', '-'); - final eXIFDateTimeDigitized = data["EXIF DateTimeDigitized"]?.printable.replaceFirst(':', '-').replaceFirst(':', '-'); + + final imageDateTime = data["Image DateTime"] + ?.printable + .replaceFirst(':', '-') + .replaceFirst(':', '-'); + final eXIFDateTimeOriginal = data["EXIF DateTimeOriginal"] + ?.printable + .replaceFirst(':', '-') + .replaceFirst(':', '-'); + final eXIFDateTimeDigitized = data["EXIF DateTimeDigitized"] + ?.printable + .replaceFirst(':', '-') + .replaceFirst(':', '-'); + - final int timeStamp; + final int timestamp; if (imageDateTime != null) { DateTime dateTime = DateTime.parse(imageDateTime); - timeStamp = dateTime.millisecondsSinceEpoch; + timestamp = dateTime.millisecondsSinceEpoch; } else if (eXIFDateTimeOriginal != null) { DateTime dateTime = DateTime.parse(eXIFDateTimeOriginal); - timeStamp = dateTime.millisecondsSinceEpoch; + timestamp = dateTime.millisecondsSinceEpoch; } else if (eXIFDateTimeDigitized != null) { DateTime dateTime = DateTime.parse(eXIFDateTimeDigitized); - timeStamp = dateTime.millisecondsSinceEpoch; + timestamp = dateTime.millisecondsSinceEpoch; } else { final stat = FileStat.statSync(file.path); - timeStamp = stat.modified.millisecond; + timestamp = stat.modified.millisecondsSinceEpoch; } - return timeStamp; + return timestamp; } From 34d00d4ef48cf91b64e6a5b9f36b993590a5eb02 Mon Sep 17 00:00:00 2001 From: DBarbosa15987 Date: Sun, 13 Oct 2024 00:03:46 +0100 Subject: [PATCH 50/66] Media Model classes for sync --- .../plugins/GeneratedPluginRegistrant.java | 5 --- lib/model/image_request.dart | 0 lib/model/local_media_asset.dart | 17 ++++++++++ lib/model/login_request.dart | 5 --- lib/model/media_asset.dart | 10 ++++++ lib/model/media_info.dart | 7 ++++ lib/model/remote_media_asset.dart | 32 +++++++++++++++++++ lib/model/sync_full.dart | 7 ++++ 8 files changed, 73 insertions(+), 10 deletions(-) delete mode 100644 lib/model/image_request.dart create mode 100644 lib/model/local_media_asset.dart create mode 100644 lib/model/media_asset.dart create mode 100644 lib/model/media_info.dart create mode 100644 lib/model/remote_media_asset.dart create mode 100644 lib/model/sync_full.dart diff --git a/android/app/src/main/java/io/flutter/plugins/GeneratedPluginRegistrant.java b/android/app/src/main/java/io/flutter/plugins/GeneratedPluginRegistrant.java index ed938cd..3a41264 100644 --- a/android/app/src/main/java/io/flutter/plugins/GeneratedPluginRegistrant.java +++ b/android/app/src/main/java/io/flutter/plugins/GeneratedPluginRegistrant.java @@ -30,11 +30,6 @@ public static void registerWith(@NonNull FlutterEngine flutterEngine) { } catch (Exception e) { Log.e(TAG, "Error registering plugin path_provider_android, io.flutter.plugins.pathprovider.PathProviderPlugin", e); } - try { - flutterEngine.getPlugins().add(new io.scer.pdfx.PdfxPlugin()); - } catch (Exception e) { - Log.e(TAG, "Error registering plugin pdfx, io.scer.pdfx.PdfxPlugin", e); - } try { flutterEngine.getPlugins().add(new com.baseflow.permissionhandler.PermissionHandlerPlugin()); } catch (Exception e) { diff --git a/lib/model/image_request.dart b/lib/model/image_request.dart deleted file mode 100644 index e69de29..0000000 diff --git a/lib/model/local_media_asset.dart b/lib/model/local_media_asset.dart new file mode 100644 index 0000000..55673a2 --- /dev/null +++ b/lib/model/local_media_asset.dart @@ -0,0 +1,17 @@ +import 'dart:io'; +import 'dart:typed_data'; +import 'package:mobile/model/media_asset.dart'; + +class LocalMedia extends MediaAsset { + String? remoteId; + String path; + + LocalMedia(this.remoteId, this.path, super.checksum, super.timestamp); + + @override + Future getPreview() async { + File file = File(path); + print("Getting preview for file: $path"); + return file.readAsBytesSync(); + } +} diff --git a/lib/model/login_request.dart b/lib/model/login_request.dart index 96f4eb3..6701114 100644 --- a/lib/model/login_request.dart +++ b/lib/model/login_request.dart @@ -1,10 +1,5 @@ import 'dart:convert'; -/* -List loginRequestFromJson(String str) => - List.from(json.decode(str).map((x) => LoginRequest.fromJson(x))); -*/ - String loginRequestToJson(List data) => json.encode(List.from(data.map((x) => x.toJson()))); diff --git a/lib/model/media_asset.dart b/lib/model/media_asset.dart new file mode 100644 index 0000000..ef19d76 --- /dev/null +++ b/lib/model/media_asset.dart @@ -0,0 +1,10 @@ +import 'dart:typed_data'; + +abstract class MediaAsset { + String checksum; + int timestamp; + + MediaAsset(this.checksum, this.timestamp); + + Future getPreview(); +} diff --git a/lib/model/media_info.dart b/lib/model/media_info.dart new file mode 100644 index 0000000..bdd111e --- /dev/null +++ b/lib/model/media_info.dart @@ -0,0 +1,7 @@ +class MediaInfo { + String path; + int timestamp; + + MediaInfo(this.path,this.timestamp); + +} diff --git a/lib/model/remote_media_asset.dart b/lib/model/remote_media_asset.dart new file mode 100644 index 0000000..7c9624f --- /dev/null +++ b/lib/model/remote_media_asset.dart @@ -0,0 +1,32 @@ +import 'dart:typed_data'; +import 'package:http/http.dart' as http; +import 'package:mobile/model/media_asset.dart'; +import 'package:mobile/services/api_service.dart'; +import 'package:photo_manager/photo_manager.dart'; + +class RemoteMedia extends MediaAsset { + String id; + + RemoteMedia(this.id, super.checksum, super.timestamp); + + factory RemoteMedia.fromJson(Map json, String checksum) { + final id = json['id'] as String; + final timestamp = json['created_at'] as int; + return RemoteMedia(id, checksum, timestamp); + } + + @override + Future getPreview() async { + String imgUrl = await APIServiceClient().getPreview(this.id); + Uri uri = Uri.parse(imgUrl); + try { + var response = await http.get(uri); + Uint8List data = response.bodyBytes; + final AssetEntity? assetEntity = await PhotoManager.editor.saveImage(data, filename: this.id); + return await assetEntity?.thumbnailData; + } catch (e) { + return null; + } + } + +} diff --git a/lib/model/sync_full.dart b/lib/model/sync_full.dart new file mode 100644 index 0000000..691760a --- /dev/null +++ b/lib/model/sync_full.dart @@ -0,0 +1,7 @@ +import 'package:mobile/model/remote_media_asset.dart'; + +class SyncFull { + Map sync; + + SyncFull(this.sync); +} From 0749dc248456c2e5596b8448d373baafecc06f31 Mon Sep 17 00:00:00 2001 From: DBarbosa15987 Date: Sun, 13 Oct 2024 00:06:47 +0100 Subject: [PATCH 51/66] Full sync basic logic working --- lib/screens/gallery_page/image_grid.dart | 65 ++++++++++------ .../gallery_page/preview_container.dart | 23 ++---- lib/screens/home_page.dart | 77 ++++++++++--------- lib/screens/login.dart | 3 +- lib/services/api_service.dart | 56 +++++++++++++- lib/services/sync_manager.dart | 43 ++++++++++- 6 files changed, 186 insertions(+), 81 deletions(-) diff --git a/lib/screens/gallery_page/image_grid.dart b/lib/screens/gallery_page/image_grid.dart index 66d018d..6c639df 100644 --- a/lib/screens/gallery_page/image_grid.dart +++ b/lib/screens/gallery_page/image_grid.dart @@ -1,5 +1,8 @@ +import 'dart:io'; import 'dart:typed_data'; import 'package:flutter/material.dart'; +import 'package:mobile/model/media_asset.dart'; +import 'package:mobile/services/sync_manager.dart'; import 'package:photo_manager/photo_manager.dart'; import 'package:infinite_scroll_pagination/infinite_scroll_pagination.dart'; import 'preview_container.dart'; @@ -12,33 +15,40 @@ class ImageGrid extends StatefulWidget { } class _ImageGridState extends State { - static const _pageSize = 20; - final PagingController _pagingController = + static const _pageSize = 5; + final PagingController _pagingController = PagingController(firstPageKey: 0); final Map _thumbnailCache = {}; + List paths = []; + bool _isPathsLoaded = false; // Add this flag + + Future initSyncManager() async { + paths = await SyncManager().syncResolver(); + setState(() { + _isPathsLoaded = true; // Update the flag after paths are loaded + }); + } @override void initState() { super.initState(); - _pagingController.addPageRequestListener((pageKey) { - _loadAssets(pageKey); + initSyncManager().then((_) { + _pagingController.addPageRequestListener((pageKey) { + if (_isPathsLoaded) { + _loadAssets(pageKey); + } + }); }); } Future _loadAssets(int pageKey) async { try { - - final List paths = await PhotoManager.getAssetPathList( - type: RequestType.fromTypes([RequestType.image,RequestType.video]) - ); - + print("before paths"); if (paths.isNotEmpty) { - final List newAssets = await paths[0].getAssetListPaged( - page: pageKey, - size: _pageSize, - ); - + final List newAssets = + paths.skip(pageKey * _pageSize).take(_pageSize).toList(); + print("assets ${newAssets.length}"); final isLastPage = newAssets.length < _pageSize; if (isLastPage) { _pagingController.appendLastPage(newAssets); @@ -47,34 +57,39 @@ class _ImageGridState extends State { _pagingController.appendPage(newAssets, nextPageKey); } } + print("after paths"); } catch (error) { _pagingController.error = error; } } - Future _getThumbnail(AssetEntity asset) async { - if (_thumbnailCache.containsKey(asset.id)) { - return _thumbnailCache[asset.id]; + Future _getThumbnail(MediaAsset asset) async { + if (_thumbnailCache.containsKey(asset.checksum)) { + return _thumbnailCache[asset.checksum]; } - final Uint8List? thumbnail = await asset.thumbnailData; - _thumbnailCache[asset.id] = thumbnail; + final Uint8List? thumbnail = await asset.getPreview(); + _thumbnailCache[asset.checksum] = thumbnail; return thumbnail; } - - - @override Widget build(BuildContext context) { - return PagedGridView( + // Show a loading indicator until paths are loaded + if (!_isPathsLoaded) { + return Center( + child: CircularProgressIndicator(), + ); + } + + return PagedGridView( pagingController: _pagingController, gridDelegate: const SliverGridDelegateWithFixedCrossAxisCount( crossAxisCount: 4, crossAxisSpacing: 4.0, mainAxisSpacing: 4.0, ), - builderDelegate: PagedChildBuilderDelegate( + builderDelegate: PagedChildBuilderDelegate( itemBuilder: (context, asset, index) { return FutureBuilder( future: _getThumbnail(asset), @@ -86,7 +101,7 @@ class _ImageGridState extends State { ); } else { return Container( - color: Colors.grey[300], + color: Colors.grey[300], ); } }, diff --git a/lib/screens/gallery_page/preview_container.dart b/lib/screens/gallery_page/preview_container.dart index c0e7a0b..48caaa6 100644 --- a/lib/screens/gallery_page/preview_container.dart +++ b/lib/screens/gallery_page/preview_container.dart @@ -1,21 +1,16 @@ import 'dart:typed_data'; import 'package:flutter/material.dart'; -import 'package:photo_manager/photo_manager.dart'; +import 'package:mobile/model/local_media_asset.dart'; +import 'package:mobile/model/media_asset.dart'; import 'package:mobile/services/api_service.dart'; class PreviewContainer extends StatelessWidget { - final AssetEntity asset; + final MediaAsset asset; final Uint8List? thumbnail; const PreviewContainer({Key? key, required this.asset, this.thumbnail}) : super(key: key); - Future _getFilePath(AssetEntity asset) async { - final file = await asset.file; - return file?.path; - } - - // #TODO: @override @@ -23,13 +18,11 @@ class PreviewContainer extends StatelessWidget { return thumbnail != null ? GestureDetector( onTap: () async { - var filePath = await _getFilePath(asset); - - if (filePath != null) { - print('File tapped: ${asset.title}'); - APIServiceClient().uploadFileStream(filePath); + if (asset is LocalMedia) { + print('File tapped: ${(asset as LocalMedia).path}'); + APIServiceClient().uploadFileStream((asset as LocalMedia).path); } else { - print('Error: Unable to retrieve file path'); + print("This is remote: ${asset.checksum}"); } }, child: Container( @@ -43,7 +36,7 @@ class PreviewContainer extends StatelessWidget { ), ) : Container( - color: Colors.grey, + color: Colors.grey, ); } } diff --git a/lib/screens/home_page.dart b/lib/screens/home_page.dart index b49714a..90a71e8 100644 --- a/lib/screens/home_page.dart +++ b/lib/screens/home_page.dart @@ -1,4 +1,6 @@ import 'package:flutter/material.dart'; +import 'package:mobile/services/api_service.dart'; +import 'package:mobile/services/sync_manager.dart'; import 'gallery_page/gallery_page.dart'; class HomePage extends StatefulWidget { @@ -22,42 +24,43 @@ class _HomePageState extends State { @override Widget build(BuildContext context) { return Scaffold( - body: IndexedStack( - index: _currentIndex, - children: _pages, - ), - bottomNavigationBar: BottomNavigationBar( - currentIndex: _currentIndex, - onTap: (index) { - setState(() { - _currentIndex = index; - }); - }, - items: const [ - BottomNavigationBarItem( - icon: Icon(Icons.photo), - label: 'Gallery', - ), - BottomNavigationBarItem( - icon: Icon(Icons.photo_album), - label: 'Albums', - ), - BottomNavigationBarItem( - icon: Icon(Icons.search), - label: 'Search', - ), - BottomNavigationBarItem( - icon: Icon(Icons.person), - label: 'Profile', - ), - BottomNavigationBarItem( - icon: Icon(Icons.settings), - label: 'Settings', - ), - ], - selectedItemColor: Colors.deepPurpleAccent.shade700, - unselectedItemColor: Colors.grey, - ), - ); + body: IndexedStack( + index: _currentIndex, + children: _pages, + ), + bottomNavigationBar: BottomNavigationBar( + currentIndex: _currentIndex, + onTap: (index) { + setState(() { + _currentIndex = index; + }); + }, + items: const [ + BottomNavigationBarItem( + icon: Icon(Icons.photo), + label: 'Gallery', + ), + BottomNavigationBarItem( + icon: Icon(Icons.photo_album), + label: 'Albums', + ), + BottomNavigationBarItem( + icon: Icon(Icons.search), + label: 'Search', + ), + BottomNavigationBarItem( + icon: Icon(Icons.person), + label: 'Profile', + ), + BottomNavigationBarItem( + icon: Icon(Icons.settings), + label: 'Settings', + ), + ], + selectedItemColor: Colors.deepPurpleAccent.shade700, + unselectedItemColor: Colors.grey, + ), + floatingActionButton: FloatingActionButton( + onPressed: () => {SyncManager().syncResolver()})); } } diff --git a/lib/screens/login.dart b/lib/screens/login.dart index b621cd1..ff7589a 100644 --- a/lib/screens/login.dart +++ b/lib/screens/login.dart @@ -127,6 +127,7 @@ class _LoginPageState extends State { ]), ), floatingActionButton: FloatingActionButton( - onPressed: () => Navigator.of(context).pushReplacementNamed("/"))); + onPressed: () => + {Navigator.of(context).pushReplacementNamed("/")})); } } diff --git a/lib/services/api_service.dart b/lib/services/api_service.dart index 4bea6d1..3eb2d8e 100644 --- a/lib/services/api_service.dart +++ b/lib/services/api_service.dart @@ -1,10 +1,10 @@ -import 'package:exif/exif.dart'; import 'package:mime/mime.dart'; import 'dart:io'; import 'dart:async'; import 'package:crypto/crypto.dart'; import 'package:flutter_secure_storage/flutter_secure_storage.dart'; import 'package:http/http.dart' as http; +import 'package:mobile/model/remote_media_asset.dart'; import 'package:mobile/utils/constants.dart'; import 'package:mobile/utils/time.dart'; import 'dart:convert'; @@ -94,7 +94,7 @@ class APIServiceClient { HttpHeaders.cacheControlHeader: 'no-cache', HttpHeaders.authorizationHeader: "Bearer $jwtToken", HttpHeaders.contentTypeHeader: mimeType, - "Timestamp" : fileTimeStamp.toString(), + "Timestamp": fileTimeStamp.toString(), 'Content-Digest': "sha-256=:$checksum:", 'Expect': '100-continue' }); @@ -112,9 +112,61 @@ class APIServiceClient { print( 'Response: ${response.statusCode} ${response.reasonPhrase} ${await response.stream.bytesToString()}'); } on http.ClientException catch (e) { + // Probably already exists on server print("Client Exception: ${e.message}"); } catch (e) { print("Other exception"); } } + + Future> syncFull() async { + final SharedPreferences prefs = await SharedPreferences.getInstance(); + String baseUrl = prefs.getString(BASE_URL) ?? ""; + var uri = Uri.parse('$baseUrl/sync/full'); + final storage = FlutterSecureStorage(); + final jwtToken = await storage.read(key: JWT_TOKEN) ?? ""; + + Map headers = { + HttpHeaders.authorizationHeader: "Bearer $jwtToken" + }; + + try { + var response = await http.get(uri, headers: headers); + print("Body: ${response.body}"); + final Map sync = jsonDecode(response.body); + + final Map mediaMap = + sync.map((key, value) { + return MapEntry(key, RemoteMedia.fromJson(value, key)); + }); + print("Sync $mediaMap"); + print("Finished syncFull()"); + + return mediaMap; + } catch (e) { + print("Exception $e"); + return {}; + } + } + + Future getPreview(String uuid) async { + final SharedPreferences prefs = await SharedPreferences.getInstance(); + String baseUrl = prefs.getString(BASE_URL) ?? ""; + var uri = Uri.parse('$baseUrl/preview/$uuid'); + final storage = FlutterSecureStorage(); + final jwtToken = await storage.read(key: JWT_TOKEN) ?? ""; + + Map headers = { + HttpHeaders.authorizationHeader: "Bearer $jwtToken" + }; + + try { + var response = await http.get(uri, headers: headers); + print(response.body); + return response.body; + } catch (e) { + print("Error getting preview for: $uuid"); + return ""; + } + } } diff --git a/lib/services/sync_manager.dart b/lib/services/sync_manager.dart index 0eceb18..395a4b0 100644 --- a/lib/services/sync_manager.dart +++ b/lib/services/sync_manager.dart @@ -24,7 +24,7 @@ class SyncManager { Map mediaInfo = HashMap(); - for (String s in paths.cast().take(10)) { + for (String s in paths.cast().take(20)) { File file = File(s); final fileStream = file.openRead(); final checksum = @@ -42,4 +42,45 @@ class SyncManager { } } + Future> syncResolver( + /* Map localMediaInfo, + Map remoteMediaInfo */ + ) async { + final start = DateTime.now().millisecondsSinceEpoch; + Map localMediaInfo = await getAllImagePathsNative(); + Map remoteMediaInfo = + await APIServiceClient().syncFull(); + + List mediaAssets = []; + HashSet localAndRemoteHashes = HashSet(); + + for (var entry in localMediaInfo.entries) { + var remoteMedia = remoteMediaInfo[entry.key]; + + if (remoteMedia != null) { + mediaAssets.add(LocalMedia(remoteMedia.id, entry.value.path, entry.key, + entry.value.timestamp)); + localAndRemoteHashes.add(entry.key); + } else { + mediaAssets.add(LocalMedia( + null, entry.value.path, entry.key, entry.value.timestamp)); + } + } + mediaAssets.addAll(remoteMediaInfo.values.toList() + ..removeWhere((item) => localAndRemoteHashes.contains(item.checksum)) + ..sort((a, b) => b.timestamp.compareTo(a.timestamp))); + + int i = 0; + for (var a in mediaAssets) { + print( + "Media:${a.checksum} | ${a.timestamp} | ${a is LocalMedia ? "true" : "false"}"); + if (i == 10) { + break; + } + } + final end = DateTime.now().millisecondsSinceEpoch; + print("It ALL took ${(end - start)}"); + print("DONE"); + return mediaAssets; + } } From 2b4a9caa0c7cc64848939f5b98db0f3a85c1af5f Mon Sep 17 00:00:00 2001 From: DBarbosa15987 Date: Sun, 13 Oct 2024 19:16:51 +0100 Subject: [PATCH 52/66] Fix double fullSync --- lib/screens/login.dart | 4 ++-- lib/utils/route_generator.dart | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/screens/login.dart b/lib/screens/login.dart index ff7589a..ffe8b0a 100644 --- a/lib/screens/login.dart +++ b/lib/screens/login.dart @@ -62,7 +62,7 @@ class _LoginPageState extends State { switch (response) { case 200: - Navigator.of(context).pushReplacementNamed("/"); + Navigator.of(context).pushReplacementNamed("/home"); case 401: showErrorDialog(context, LOGIN_ERROR_401); case null: @@ -128,6 +128,6 @@ class _LoginPageState extends State { ), floatingActionButton: FloatingActionButton( onPressed: () => - {Navigator.of(context).pushReplacementNamed("/")})); + {Navigator.of(context).pushReplacementNamed("/home")})); } } diff --git a/lib/utils/route_generator.dart b/lib/utils/route_generator.dart index f093909..78c37a2 100644 --- a/lib/utils/route_generator.dart +++ b/lib/utils/route_generator.dart @@ -10,7 +10,7 @@ class RouteGenerator { case '/login': return MaterialPageRoute(builder: (_) => LoginPage()); // NOTE: / or /home ? - case '/': + case '/home': // Validation of correct data type return MaterialPageRoute(builder: (_) => HomePage()); default: From 95061241de67c06d4b4186943384d9bb8abab2a1 Mon Sep 17 00:00:00 2001 From: DBarbosa15987 Date: Sun, 13 Oct 2024 19:19:14 +0100 Subject: [PATCH 53/66] Previews working with photomanager --- .../kotlin/com/example/mobile/MainActivity.kt | 33 ++++++++++++------- lib/model/local_media_asset.dart | 14 +++++--- lib/model/media_asset.dart | 5 ++- lib/model/media_info.dart | 5 +-- lib/model/remote_media_asset.dart | 15 +++------ lib/screens/gallery_page/image_grid.dart | 12 ++++--- .../gallery_page/preview_container.dart | 17 +++++----- lib/screens/home_page.dart | 2 +- lib/services/sync_manager.dart | 21 ++++++------ pubspec.yaml | 1 + 10 files changed, 70 insertions(+), 55 deletions(-) diff --git a/android/app/src/main/kotlin/com/example/mobile/MainActivity.kt b/android/app/src/main/kotlin/com/example/mobile/MainActivity.kt index ec1558f..890a963 100644 --- a/android/app/src/main/kotlin/com/example/mobile/MainActivity.kt +++ b/android/app/src/main/kotlin/com/example/mobile/MainActivity.kt @@ -6,6 +6,7 @@ import io.flutter.embedding.android.FlutterActivity import io.flutter.plugin.common.MethodChannel + class MainActivity : FlutterActivity() { private val CHANNEL = "com.example.mobile/images" @@ -17,9 +18,9 @@ class MainActivity : FlutterActivity() { MethodChannel(flutterEngine?.dartExecutor?.binaryMessenger!!, CHANNEL).setMethodCallHandler { call, result -> if (call.method == "getAllImagePathsNative") { - // Retrieve image paths + // Retrieve image paths and ids val imagePaths = getAllImagePathsNative() - // Return the paths to Flutter + // Return the paths and ids to Flutter result.success(imagePaths) } else { result.notImplemented() @@ -27,13 +28,16 @@ class MainActivity : FlutterActivity() { } } - // Function to get all image paths - private fun getAllImagePathsNative(): List { - val imagePaths = mutableListOf() - // Specify which column to retrieve (the file path in this case) - val projection = arrayOf(MediaStore.Images.Media.DATA) + // Function to get all image paths and MediaStore IDs + private fun getAllImagePathsNative(): List> { + val imagePaths = mutableListOf>() + // Specify the columns to retrieve: _ID (MediaStore ID) and DATA (file path) + val projection = arrayOf( + MediaStore.Images.Media._ID, // MediaStore ID + MediaStore.Images.Media.DATA // File path + ) - // Query MediaStore to get image file paths + // Query MediaStore to get image file paths and IDs val cursor: Cursor? = contentResolver.query( MediaStore.Images.Media.EXTERNAL_CONTENT_URI, projection, @@ -42,12 +46,17 @@ class MainActivity : FlutterActivity() { null ) - // Safely use the cursor and retrieve image paths + // Safely use the cursor and retrieve image paths and IDs cursor?.use { - val columnIndex = it.getColumnIndexOrThrow(MediaStore.Images.Media.DATA) + val idColumnIndex = it.getColumnIndexOrThrow(MediaStore.Images.Media._ID) + val dataColumnIndex = it.getColumnIndexOrThrow(MediaStore.Images.Media.DATA) + while (it.moveToNext()) { - val imagePath = it.getString(columnIndex) - imagePaths.add(imagePath) + val imageId = it.getString(idColumnIndex) // Get the MediaStore ID + val imagePath = it.getString(dataColumnIndex) // Get the file path + + // Add both MediaStore ID and image path to the list + imagePaths.add(listOf(imagePath,imageId)) } } diff --git a/lib/model/local_media_asset.dart b/lib/model/local_media_asset.dart index 55673a2..b9dd49b 100644 --- a/lib/model/local_media_asset.dart +++ b/lib/model/local_media_asset.dart @@ -1,17 +1,21 @@ import 'dart:io'; import 'dart:typed_data'; +import 'package:flutter/material.dart'; import 'package:mobile/model/media_asset.dart'; +import 'package:photo_manager/photo_manager.dart'; class LocalMedia extends MediaAsset { String? remoteId; String path; + String id; - LocalMedia(this.remoteId, this.path, super.checksum, super.timestamp); + LocalMedia( + this.remoteId, this.path, this.id, super.checksum, super.timestamp); @override - Future getPreview() async { - File file = File(path); - print("Getting preview for file: $path"); - return file.readAsBytesSync(); + Future getPreview() async { + final preview = await AssetEntity.fromId(id); + final thumbnail = await preview?.thumbnailData; + return Image.memory(thumbnail!); } } diff --git a/lib/model/media_asset.dart b/lib/model/media_asset.dart index ef19d76..d34934d 100644 --- a/lib/model/media_asset.dart +++ b/lib/model/media_asset.dart @@ -1,10 +1,13 @@ import 'dart:typed_data'; +import 'package:flutter/material.dart'; +import 'package:photo_manager/photo_manager.dart'; + abstract class MediaAsset { String checksum; int timestamp; MediaAsset(this.checksum, this.timestamp); - Future getPreview(); + Future getPreview(); } diff --git a/lib/model/media_info.dart b/lib/model/media_info.dart index bdd111e..1eb2631 100644 --- a/lib/model/media_info.dart +++ b/lib/model/media_info.dart @@ -1,7 +1,8 @@ + class MediaInfo { String path; int timestamp; + String id; - MediaInfo(this.path,this.timestamp); - + MediaInfo(this.path, this.timestamp,this.id); } diff --git a/lib/model/remote_media_asset.dart b/lib/model/remote_media_asset.dart index 7c9624f..c7e5838 100644 --- a/lib/model/remote_media_asset.dart +++ b/lib/model/remote_media_asset.dart @@ -1,4 +1,5 @@ import 'dart:typed_data'; +import 'package:flutter/widgets.dart'; import 'package:http/http.dart' as http; import 'package:mobile/model/media_asset.dart'; import 'package:mobile/services/api_service.dart'; @@ -7,6 +8,7 @@ import 'package:photo_manager/photo_manager.dart'; class RemoteMedia extends MediaAsset { String id; + RemoteMedia(this.id, super.checksum, super.timestamp); factory RemoteMedia.fromJson(Map json, String checksum) { @@ -16,17 +18,8 @@ class RemoteMedia extends MediaAsset { } @override - Future getPreview() async { + Future getPreview() async { String imgUrl = await APIServiceClient().getPreview(this.id); - Uri uri = Uri.parse(imgUrl); - try { - var response = await http.get(uri); - Uint8List data = response.bodyBytes; - final AssetEntity? assetEntity = await PhotoManager.editor.saveImage(data, filename: this.id); - return await assetEntity?.thumbnailData; - } catch (e) { - return null; - } + return Image.network(imgUrl); } - } diff --git a/lib/screens/gallery_page/image_grid.dart b/lib/screens/gallery_page/image_grid.dart index 6c639df..664fd37 100644 --- a/lib/screens/gallery_page/image_grid.dart +++ b/lib/screens/gallery_page/image_grid.dart @@ -15,11 +15,11 @@ class ImageGrid extends StatefulWidget { } class _ImageGridState extends State { - static const _pageSize = 5; + static const _pageSize = 40; final PagingController _pagingController = PagingController(firstPageKey: 0); - final Map _thumbnailCache = {}; + final Map _thumbnailCache = {}; List paths = []; bool _isPathsLoaded = false; // Add this flag @@ -63,14 +63,16 @@ class _ImageGridState extends State { } } - Future _getThumbnail(MediaAsset asset) async { + Future _getThumbnail(MediaAsset asset) async { if (_thumbnailCache.containsKey(asset.checksum)) { return _thumbnailCache[asset.checksum]; } - final Uint8List? thumbnail = await asset.getPreview(); + final Widget? thumbnail = await asset.getPreview(); _thumbnailCache[asset.checksum] = thumbnail; return thumbnail; + + } @override @@ -91,7 +93,7 @@ class _ImageGridState extends State { ), builderDelegate: PagedChildBuilderDelegate( itemBuilder: (context, asset, index) { - return FutureBuilder( + return FutureBuilder( future: _getThumbnail(asset), builder: (context, snapshot) { if (snapshot.hasData) { diff --git a/lib/screens/gallery_page/preview_container.dart b/lib/screens/gallery_page/preview_container.dart index 48caaa6..16ec3ea 100644 --- a/lib/screens/gallery_page/preview_container.dart +++ b/lib/screens/gallery_page/preview_container.dart @@ -6,7 +6,7 @@ import 'package:mobile/services/api_service.dart'; class PreviewContainer extends StatelessWidget { final MediaAsset asset; - final Uint8List? thumbnail; + final Widget? thumbnail; const PreviewContainer({Key? key, required this.asset, this.thumbnail}) : super(key: key); @@ -26,13 +26,14 @@ class PreviewContainer extends StatelessWidget { } }, child: Container( - decoration: BoxDecoration( - image: DecorationImage( - image: MemoryImage(thumbnail!), - fit: BoxFit.cover, - ), - borderRadius: BorderRadius.circular(8.0), - ), + child: thumbnail, + // decoration: BoxDecoration( + // image: DecorationImage( + // image: thumbnail, + // fit: BoxFit.cover, + // ), + // borderRadius: BorderRadius.circular(8.0), + // ), ), ) : Container( diff --git a/lib/screens/home_page.dart b/lib/screens/home_page.dart index 90a71e8..7432682 100644 --- a/lib/screens/home_page.dart +++ b/lib/screens/home_page.dart @@ -61,6 +61,6 @@ class _HomePageState extends State { unselectedItemColor: Colors.grey, ), floatingActionButton: FloatingActionButton( - onPressed: () => {SyncManager().syncResolver()})); + onPressed: () => {})); } } diff --git a/lib/services/sync_manager.dart b/lib/services/sync_manager.dart index 395a4b0..5a5f11b 100644 --- a/lib/services/sync_manager.dart +++ b/lib/services/sync_manager.dart @@ -9,6 +9,7 @@ import 'package:mobile/model/media_info.dart'; import 'package:mobile/model/remote_media_asset.dart'; import 'package:mobile/services/api_service.dart'; import 'package:mobile/utils/time.dart'; +import 'package:photo_manager/photo_manager.dart'; class SyncManager { //Native Module @@ -24,12 +25,15 @@ class SyncManager { Map mediaInfo = HashMap(); - for (String s in paths.cast().take(20)) { - File file = File(s); + for (var pair in paths.take(64)) { + + List s = (pair as List).map((e) => e.toString()).toList(); + + File file = File(s[0]); final fileStream = file.openRead(); final checksum = base64.encode((await sha256.bind(fileStream).first).bytes); - mediaInfo[checksum] = MediaInfo(s, await getFileStamp(file)); + mediaInfo[checksum] = MediaInfo(s[0], await getFileStamp(file), s[1]); } final end = DateTime.now().millisecondsSinceEpoch; @@ -58,12 +62,12 @@ class SyncManager { var remoteMedia = remoteMediaInfo[entry.key]; if (remoteMedia != null) { - mediaAssets.add(LocalMedia(remoteMedia.id, entry.value.path, entry.key, - entry.value.timestamp)); + mediaAssets.add(LocalMedia(remoteMedia.id, entry.value.path, + entry.value.id, entry.key, entry.value.timestamp)); localAndRemoteHashes.add(entry.key); } else { - mediaAssets.add(LocalMedia( - null, entry.value.path, entry.key, entry.value.timestamp)); + mediaAssets.add(LocalMedia(null, entry.value.path, entry.value.id, + entry.key, entry.value.timestamp)); } } mediaAssets.addAll(remoteMediaInfo.values.toList() @@ -74,9 +78,6 @@ class SyncManager { for (var a in mediaAssets) { print( "Media:${a.checksum} | ${a.timestamp} | ${a is LocalMedia ? "true" : "false"}"); - if (i == 10) { - break; - } } final end = DateTime.now().millisecondsSinceEpoch; print("It ALL took ${(end - start)}"); diff --git a/pubspec.yaml b/pubspec.yaml index 17ddd31..b88067e 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -20,6 +20,7 @@ dependencies: shared_preferences: ^2.3.2 crypto: ^3.0.5 exif: ^3.3.0 + image: ^4.2.0 cupertino_icons: ^1.0.8 permission_handler: ^11.3.1 From 69d49577c7fd42279a116a48e8602f5763390d2f Mon Sep 17 00:00:00 2001 From: DBarbosa15987 Date: Sun, 13 Oct 2024 19:19:50 +0100 Subject: [PATCH 54/66] Rules to be able to compile flutter to realease version --- android/app/proguard-rules.pro | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 android/app/proguard-rules.pro diff --git a/android/app/proguard-rules.pro b/android/app/proguard-rules.pro new file mode 100644 index 0000000..cdc1751 --- /dev/null +++ b/android/app/proguard-rules.pro @@ -0,0 +1,6 @@ +-dontwarn com.google.errorprone.annotations.CanIgnoreReturnValue +-dontwarn com.google.errorprone.annotations.CheckReturnValue +-dontwarn com.google.errorprone.annotations.Immutable +-dontwarn com.google.errorprone.annotations.RestrictedApi +-dontwarn javax.annotation.Nullable +-dontwarn javax.annotation.concurrent.GuardedBy \ No newline at end of file From 96926fea5a4a3880f7ed76df75d9552ef7475a96 Mon Sep 17 00:00:00 2001 From: afonsofrancof Date: Sun, 13 Oct 2024 20:42:45 +0100 Subject: [PATCH 55/66] Better gitignore and removed random files --- .gitignore | 876 ++++++++++++++++- .gitmodules | 4 - android/.gradle/8.3/checksums/checksums.lock | Bin 17 -> 0 bytes .../.gradle/8.3/checksums/md5-checksums.bin | Bin 34747 -> 0 bytes .../.gradle/8.3/checksums/sha1-checksums.bin | Bin 83075 -> 0 bytes .../dependencies-accessors.lock | Bin 17 -> 0 bytes .../8.3/dependencies-accessors/gc.properties | 0 .../8.3/executionHistory/executionHistory.bin | Bin 607703 -> 0 bytes .../executionHistory/executionHistory.lock | Bin 17 -> 0 bytes .../.gradle/8.3/fileChanges/last-build.bin | Bin 1 -> 0 bytes android/.gradle/8.3/fileHashes/fileHashes.bin | Bin 137283 -> 0 bytes .../.gradle/8.3/fileHashes/fileHashes.lock | Bin 17 -> 0 bytes .../8.3/fileHashes/resourceHashesCache.bin | Bin 18905 -> 0 bytes android/.gradle/8.3/gc.properties | 0 .../buildOutputCleanup.lock | Bin 17 -> 0 bytes .../buildOutputCleanup/cache.properties | 2 - .../buildOutputCleanup/outputFiles.bin | Bin 99701 -> 0 bytes android/.gradle/file-system.probe | Bin 8 -> 0 bytes android/.gradle/vcs-1/gc.properties | 0 android/app/build.gradle | 6 +- .../plugins/GeneratedPluginRegistrant.java | 49 - android/gradle/wrapper/gradle-wrapper.jar | Bin 53636 -> 0 bytes android/gradlew | 160 ---- android/gradlew.bat | 90 -- android/local.properties | 5 - ios/Flutter/Generated.xcconfig | 14 - ios/Flutter/flutter_export_environment.sh | 13 - ios/Podfile | 44 + ios/Runner/GeneratedPluginRegistrant.h | 19 - ios/Runner/GeneratedPluginRegistrant.m | 14 - proto | 1 - pubspec.lock | 879 ------------------ 32 files changed, 908 insertions(+), 1268 deletions(-) delete mode 100644 .gitmodules delete mode 100644 android/.gradle/8.3/checksums/checksums.lock delete mode 100644 android/.gradle/8.3/checksums/md5-checksums.bin delete mode 100644 android/.gradle/8.3/checksums/sha1-checksums.bin delete mode 100644 android/.gradle/8.3/dependencies-accessors/dependencies-accessors.lock delete mode 100644 android/.gradle/8.3/dependencies-accessors/gc.properties delete mode 100644 android/.gradle/8.3/executionHistory/executionHistory.bin delete mode 100644 android/.gradle/8.3/executionHistory/executionHistory.lock delete mode 100644 android/.gradle/8.3/fileChanges/last-build.bin delete mode 100644 android/.gradle/8.3/fileHashes/fileHashes.bin delete mode 100644 android/.gradle/8.3/fileHashes/fileHashes.lock delete mode 100644 android/.gradle/8.3/fileHashes/resourceHashesCache.bin delete mode 100644 android/.gradle/8.3/gc.properties delete mode 100644 android/.gradle/buildOutputCleanup/buildOutputCleanup.lock delete mode 100644 android/.gradle/buildOutputCleanup/cache.properties delete mode 100644 android/.gradle/buildOutputCleanup/outputFiles.bin delete mode 100644 android/.gradle/file-system.probe delete mode 100644 android/.gradle/vcs-1/gc.properties delete mode 100644 android/app/src/main/java/io/flutter/plugins/GeneratedPluginRegistrant.java delete mode 100644 android/gradle/wrapper/gradle-wrapper.jar delete mode 100644 android/gradlew delete mode 100644 android/gradlew.bat delete mode 100644 android/local.properties delete mode 100644 ios/Flutter/Generated.xcconfig delete mode 100644 ios/Flutter/flutter_export_environment.sh create mode 100644 ios/Podfile delete mode 100644 ios/Runner/GeneratedPluginRegistrant.h delete mode 100644 ios/Runner/GeneratedPluginRegistrant.m delete mode 160000 proto delete mode 100644 pubspec.lock diff --git a/.gitignore b/.gitignore index f63c17b..82e7f73 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,8 @@ +### Flutter Generated + # Miscellaneous *.class +*.lock *.log *.pyc *.swp @@ -8,7 +11,6 @@ .buildlog/ .history .svn/ -migrate_working_dir/ # IntelliJ related *.iml @@ -16,29 +18,873 @@ migrate_working_dir/ *.iws .idea/ -# The .vscode folder contains launch configuration and tasks you configure in -# VS Code which you may wish to be included in version control, so this line -# is commented out by default. -#.vscode/ +# Visual Studio Code related +.vscode/ # Flutter/Dart/Pub related **/doc/api/ -**/ios/Flutter/.last_build_id .dart_tool/ .flutter-plugins .flutter-plugins-dependencies +.packages .pub-cache/ .pub/ -**/.gradle +build/ + +# Android related +**/android/**/gradle-wrapper.jar +**/android/.gradle +**/android/captures/ +**/android/gradlew +**/android/gradlew.bat +**/android/local.properties +**/android/**/GeneratedPluginRegistrant.java + +# iOS/XCode related +**/ios/**/*.mode1v3 +**/ios/**/*.mode2v3 +**/ios/**/*.moved-aside +**/ios/**/*.pbxuser +**/ios/**/*.perspectivev3 +**/ios/**/*sync/ +**/ios/**/.sconsign.dblite +**/ios/**/.tags* +**/ios/**/.vagrant/ +**/ios/**/DerivedData/ +**/ios/**/Icon? +**/ios/**/Pods/ +**/ios/**/.symlinks/ +**/ios/**/profile +**/ios/**/xcuserdata +**/ios/.generated/ +**/ios/Flutter/App.framework +**/ios/Flutter/Flutter.framework +**/ios/Flutter/Generated.xcconfig +**/ios/Flutter/app.flx +**/ios/Flutter/app.zip +**/ios/Flutter/flutter_assets/ +**/ios/ServiceDefinitions.json +**/ios/Runner/GeneratedPluginRegistrant.* + + +### https://raw.github.com/github/gitignore//Android.gitignore + +# Built application files +*.apk +*.ap_ + +# Files for the ART/Dalvik VM +*.dex + +# Java class files +*.class + +# Generated files +bin/ +gen/ +out/ + +# Gradle files +.gradle/ +build/ + +# Local configuration file (sdk path, etc) +local.properties + +# Proguard folder generated by Eclipse +proguard/ + +# Log Files +*.log + +# Android Studio Navigation editor temp files +.navigation/ + +# Android Studio captures folder +captures/ + +# IntelliJ +*.iml +.idea/workspace.xml +.idea/tasks.xml +.idea/gradle.xml +.idea/assetWizardSettings.xml +.idea/dictionaries +.idea/libraries +.idea/caches + +# Keystore files +# Uncomment the following line if you do not want to check your keystore files in. +#*.jks + +# External native build folder generated in Android Studio 2.2 and later +.externalNativeBuild + +# Google Services (e.g. APIs or Firebase) +google-services.json + +# Freeline +freeline.py +freeline/ +freeline_project_description.json + +# fastlane +fastlane/report.xml +fastlane/Preview.html +fastlane/screenshots +fastlane/test_output +fastlane/readme.md + + +### https://raw.github.com/github/gitignore//Dart.gitignore + +# See https://www.dartlang.org/guides/libraries/private-files + +# Files and directories created by pub +.dart_tool/ +.packages +build/ +# If you're building an application, you may want to check-in your pubspec.lock +pubspec.lock + +# Directory created by dartdoc +# If you don't generate documentation locally you can remove this line. +doc/api/ + +# Avoid committing generated Javascript files: +*.dart.js +*.info.json # Produced by the --dump-info flag. +*.js # When generated by dart2js. Don't specify *.js if your + # project includes source files written in JavaScript. +*.js_ +*.js.deps +*.js.map + + +### https://raw.github.com/github/gitignore//Global/JetBrains.gitignore + +# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and WebStorm +# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839 + +# User-specific stuff +.idea/**/workspace.xml +.idea/**/tasks.xml +.idea/**/usage.statistics.xml +.idea/**/dictionaries +.idea/**/shelf + +# Generated files +.idea/**/contentModel.xml + +# Sensitive or high-churn files +.idea/**/dataSources/ +.idea/**/dataSources.ids +.idea/**/dataSources.local.xml +.idea/**/sqlDataSources.xml +.idea/**/dynamic.xml +.idea/**/uiDesigner.xml +.idea/**/dbnavigator.xml + +# Gradle +.idea/**/gradle.xml +.idea/**/libraries + +# Gradle and Maven with auto-import +# When using Gradle or Maven with auto-import, you should exclude module files, +# since they will be recreated, and may cause churn. Uncomment if using +# auto-import. +# .idea/modules.xml +# .idea/*.iml +# .idea/modules + +# CMake +cmake-build-*/ + +# Mongo Explorer plugin +.idea/**/mongoSettings.xml + +# File-based project format +*.iws + +# IntelliJ +out/ + +# mpeltonen/sbt-idea plugin +.idea_modules/ + +# JIRA plugin +atlassian-ide-plugin.xml + +# Cursive Clojure plugin +.idea/replstate.xml + +# Crashlytics plugin (for Android Studio and IntelliJ) +com_crashlytics_export_strings.xml +crashlytics.properties +crashlytics-build.properties +fabric.properties + +# Editor-based Rest Client +.idea/httpRequests + +# Android studio 3.1+ serialized cache file +.idea/caches/build_file_checksums.ser + + +### https://raw.github.com/github/gitignore//Global/macOS.gitignore + +# General +.DS_Store +.AppleDouble +.LSOverride + +# Icon must end with two \r +Icon + + +# Thumbnails +._* + +# Files that might appear in the root of a volume +.DocumentRevisions-V100 +.fseventsd +.Spotlight-V100 +.TemporaryItems +.Trashes +.VolumeIcon.icns +.com.apple.timemachine.donotpresent + +# Directories potentially created on remote AFP share +.AppleDB +.AppleDesktop +Network Trash Folder +Temporary Items +.apdisk + + +### https://raw.github.com/github/gitignore//Global/Xcode.gitignore + +# Xcode +# +# gitignore contributors: remember to update Global/Xcode.gitignore, Objective-C.gitignore & Swift.gitignore + +## User settings +xcuserdata/ + +## compatibility with Xcode 8 and earlier (ignoring not required starting Xcode 9) +*.xcscmblueprint +*.xccheckout + +## compatibility with Xcode 3 and earlier (ignoring not required starting Xcode 4) +build/ +DerivedData/ +*.moved-aside +*.pbxuser +!default.pbxuser +*.mode1v3 +!default.mode1v3 +*.mode2v3 +!default.mode2v3 +*.perspectivev3 +!default.perspectivev3 + + +### https://raw.github.com/github/gitignore/340e2fe08a2356c2e3760ff58c3a9e1fddf08060/Global/Archives.gitignore + +# It's better to unpack these files and commit the raw source because +# git has its own built in compression methods. +*.7z +*.jar +*.rar +*.zip +*.gz +*.tgz +*.bzip +*.bz2 +*.xz +*.lzma +*.cab + +# Packing-only formats +*.iso +*.tar + +# Package management formats +*.dmg +*.xpi +*.gem +*.egg +*.deb +*.rpm +*.msi +*.msm +*.msp + + +### https://raw.github.com/github/gitignore/340e2fe08a2356c2e3760ff58c3a9e1fddf08060/Global/Backup.gitignore + +*.bak +*.gho +*.ori +*.orig +*.tmp + + +### https://raw.github.com/github/gitignore/340e2fe08a2356c2e3760ff58c3a9e1fddf08060/Android.gitignore + +# Built application files +*.apk +*.ap_ + +# Files for the ART/Dalvik VM +*.dex + +# Java class files +*.class + +# Generated files +bin/ +gen/ +out/ + +# Gradle files +.gradle/ +build/ + +# Local configuration file (sdk path, etc) +local.properties + +# Proguard folder generated by Eclipse +proguard/ + +# Log Files +*.log + +# Android Studio Navigation editor temp files +.navigation/ + +# Android Studio captures folder +captures/ + +# IntelliJ +*.iml +.idea/workspace.xml +.idea/tasks.xml +.idea/gradle.xml +.idea/assetWizardSettings.xml +.idea/dictionaries +.idea/libraries +.idea/caches + +# Keystore files +# Uncomment the following line if you do not want to check your keystore files in. +#*.jks + +# External native build folder generated in Android Studio 2.2 and later +.externalNativeBuild + +# Google Services (e.g. APIs or Firebase) +google-services.json + +# Freeline +freeline.py +freeline/ +freeline_project_description.json + +# fastlane +fastlane/report.xml +fastlane/Preview.html +fastlane/screenshots +fastlane/test_output +fastlane/readme.md + + +### https://raw.github.com/github/gitignore/340e2fe08a2356c2e3760ff58c3a9e1fddf08060/Dart.gitignore + +# See https://www.dartlang.org/guides/libraries/private-files + +# Files and directories created by pub +.dart_tool/ +.packages +build/ +# If you're building an application, you may want to check-in your pubspec.lock +pubspec.lock + +# Directory created by dartdoc +# If you don't generate documentation locally you can remove this line. +doc/api/ + +# Avoid committing generated Javascript files: +*.dart.js +*.info.json # Produced by the --dump-info flag. +*.js # When generated by dart2js. Don't specify *.js if your + # project includes source files written in JavaScript. +*.js_ +*.js.deps +*.js.map + + +### https://raw.github.com/github/gitignore/340e2fe08a2356c2e3760ff58c3a9e1fddf08060/Global/DartEditor.gitignore + +.project +.buildlog + + +### https://raw.github.com/github/gitignore/340e2fe08a2356c2e3760ff58c3a9e1fddf08060/Global/Emacs.gitignore + +# -*- mode: gitignore; -*- +*~ +\#*\# +/.emacs.desktop +/.emacs.desktop.lock +*.elc +auto-save-list +tramp +.\#* + +# Org-mode +.org-id-locations +*_archive + +# flymake-mode +*_flymake.* + +# eshell files +/eshell/history +/eshell/lastdir + +# elpa packages +/elpa/ + +# reftex files +*.rel + +# AUCTeX auto folder +/auto/ + +# cask packages +.cask/ +dist/ + +# Flycheck +flycheck_*.el + +# server auth directory +/server/ + +# projectiles files +.projectile + +# directory configuration +.dir-locals.el + + +### https://raw.github.com/github/gitignore/340e2fe08a2356c2e3760ff58c3a9e1fddf08060/Gradle.gitignore + +.gradle /build/ -# Symbolication related -app.*.symbols +# Ignore Gradle GUI config +gradle-app.setting + +# Avoid ignoring Gradle wrapper jar file (.jar files are usually ignored) +!gradle-wrapper.jar + +# Cache of project +.gradletasknamecache + +# # Work around https://youtrack.jetbrains.com/issue/IDEA-116898 +# gradle/wrapper/gradle-wrapper.properties + + +### https://raw.github.com/github/gitignore/340e2fe08a2356c2e3760ff58c3a9e1fddf08060/Java.gitignore + +# Compiled class file +*.class + +# Log file +*.log + +# BlueJ files +*.ctxt + +# Mobile Tools for Java (J2ME) +.mtj.tmp/ + +# Package Files # +*.jar +*.war +*.nar +*.ear +*.zip +*.tar.gz +*.rar + +# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml +hs_err_pid* + + +### https://raw.github.com/github/gitignore/340e2fe08a2356c2e3760ff58c3a9e1fddf08060/Global/JetBrains.gitignore + +# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and WebStorm +# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839 + +# User-specific stuff +.idea/**/workspace.xml +.idea/**/tasks.xml +.idea/**/usage.statistics.xml +.idea/**/dictionaries +.idea/**/shelf + +# Generated files +.idea/**/contentModel.xml + +# Sensitive or high-churn files +.idea/**/dataSources/ +.idea/**/dataSources.ids +.idea/**/dataSources.local.xml +.idea/**/sqlDataSources.xml +.idea/**/dynamic.xml +.idea/**/uiDesigner.xml +.idea/**/dbnavigator.xml + +# Gradle +.idea/**/gradle.xml +.idea/**/libraries + +# Gradle and Maven with auto-import +# When using Gradle or Maven with auto-import, you should exclude module files, +# since they will be recreated, and may cause churn. Uncomment if using +# auto-import. +# .idea/modules.xml +# .idea/*.iml +# .idea/modules + +# CMake +cmake-build-*/ + +# Mongo Explorer plugin +.idea/**/mongoSettings.xml + +# File-based project format +*.iws + +# IntelliJ +out/ + +# mpeltonen/sbt-idea plugin +.idea_modules/ + +# JIRA plugin +atlassian-ide-plugin.xml + +# Cursive Clojure plugin +.idea/replstate.xml + +# Crashlytics plugin (for Android Studio and IntelliJ) +com_crashlytics_export_strings.xml +crashlytics.properties +crashlytics-build.properties +fabric.properties + +# Editor-based Rest Client +.idea/httpRequests + +# Android studio 3.1+ serialized cache file +.idea/caches/build_file_checksums.ser + + +### https://raw.github.com/github/gitignore/340e2fe08a2356c2e3760ff58c3a9e1fddf08060/Global/JEnv.gitignore + +# JEnv local Java version configuration file +.java-version + +# Used by previous versions of JEnv +.jenv-version + + +### https://raw.github.com/github/gitignore/340e2fe08a2356c2e3760ff58c3a9e1fddf08060/Kotlin.gitignore + +# Compiled class file +*.class + +# Log file +*.log + +# BlueJ files +*.ctxt + +# Mobile Tools for Java (J2ME) +.mtj.tmp/ + +# Package Files # +*.jar +*.war +*.nar +*.ear +*.zip +*.tar.gz +*.rar + +# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml +hs_err_pid* + + +### https://raw.github.com/github/gitignore/340e2fe08a2356c2e3760ff58c3a9e1fddf08060/Global/Linux.gitignore + +*~ + +# temporary files which can be created if a process still has a handle open of a deleted file +.fuse_hidden* + +# KDE directory preferences +.directory + +# Linux trash folder which might appear on any partition or disk +.Trash-* + +# .nfs files are created when an open file is removed but is still being accessed +.nfs* + + +### https://raw.github.com/github/gitignore/340e2fe08a2356c2e3760ff58c3a9e1fddf08060/Global/macOS.gitignore + +# General +.DS_Store +.AppleDouble +.LSOverride + +# Icon must end with two \r +Icon + + +# Thumbnails +._* + +# Files that might appear in the root of a volume +.DocumentRevisions-V100 +.fseventsd +.Spotlight-V100 +.TemporaryItems +.Trashes +.VolumeIcon.icns +.com.apple.timemachine.donotpresent + +# Directories potentially created on remote AFP share +.AppleDB +.AppleDesktop +Network Trash Folder +Temporary Items +.apdisk + + +### https://raw.github.com/github/gitignore/340e2fe08a2356c2e3760ff58c3a9e1fddf08060/Maven.gitignore + +target/ +pom.xml.tag +pom.xml.releaseBackup +pom.xml.versionsBackup +pom.xml.next +release.properties +dependency-reduced-pom.xml +buildNumber.properties +.mvn/timing.properties +.mvn/wrapper/maven-wrapper.jar + + +### https://raw.github.com/github/gitignore/340e2fe08a2356c2e3760ff58c3a9e1fddf08060/Objective-C.gitignore + +# Xcode +# +# gitignore contributors: remember to update Global/Xcode.gitignore, Objective-C.gitignore & Swift.gitignore + +## Build generated +build/ +DerivedData/ + +## Various settings +*.pbxuser +!default.pbxuser +*.mode1v3 +!default.mode1v3 +*.mode2v3 +!default.mode2v3 +*.perspectivev3 +!default.perspectivev3 +xcuserdata/ + +## Other +*.moved-aside +*.xccheckout +*.xcscmblueprint + +## Obj-C/Swift specific +*.hmap +*.ipa +*.dSYM.zip +*.dSYM + +# CocoaPods +# +# We recommend against adding the Pods directory to your .gitignore. However +# you should judge for yourself, the pros and cons are mentioned at: +# https://guides.cocoapods.org/using/using-cocoapods.html#should-i-check-the-pods-directory-into-source-control +# +# Pods/ +# +# Add this line if you want to avoid checking in source code from the Xcode workspace +# *.xcworkspace + +# Carthage +# +# Add this line if you want to avoid checking in source code from Carthage dependencies. +# Carthage/Checkouts + +Carthage/Build + +# fastlane +# +# It is recommended to not store the screenshots in the git repo. Instead, use fastlane to re-generate the +# screenshots whenever they are needed. +# For more information about the recommended setup visit: +# https://docs.fastlane.tools/best-practices/source-control/#source-control + +fastlane/report.xml +fastlane/Preview.html +fastlane/screenshots/**/*.png +fastlane/test_output + +# Code Injection +# +# After new code Injection tools there's a generated folder /iOSInjectionProject +# https://github.com/johnno1962/injectionforxcode + +iOSInjectionProject/ + + +### https://raw.github.com/github/gitignore/340e2fe08a2356c2e3760ff58c3a9e1fddf08060/Global/SublimeText.gitignore + +# Cache files for Sublime Text +*.tmlanguage.cache +*.tmPreferences.cache +*.stTheme.cache + +# Workspace files are user-specific +*.sublime-workspace + +# Project files should be checked into the repository, unless a significant +# proportion of contributors will probably not be using Sublime Text +# *.sublime-project + +# SFTP configuration file +sftp-config.json + +# Package control specific files +Package Control.last-run +Package Control.ca-list +Package Control.ca-bundle +Package Control.system-ca-bundle +Package Control.cache/ +Package Control.ca-certs/ +Package Control.merged-ca-bundle +Package Control.user-ca-bundle +oscrypto-ca-bundle.crt +bh_unicode_properties.cache + +# Sublime-github package stores a github token in this file +# https://packagecontrol.io/packages/sublime-github +GitHub.sublime-settings + + +### https://raw.github.com/github/gitignore/340e2fe08a2356c2e3760ff58c3a9e1fddf08060/Global/Vim.gitignore + +# Swap +[._]*.s[a-v][a-z] +[._]*.sw[a-p] +[._]s[a-rt-v][a-z] +[._]ss[a-gi-z] +[._]sw[a-p] + +# Session +Session.vim + +# Temporary +.netrwhist +*~ +# Auto-generated tag files +tags +# Persistent undo +[._]*.un~ + + +### https://raw.github.com/github/gitignore/340e2fe08a2356c2e3760ff58c3a9e1fddf08060/Global/VisualStudioCode.gitignore + +.vscode/* +!.vscode/settings.json +!.vscode/tasks.json +!.vscode/launch.json +!.vscode/extensions.json + + +### https://raw.github.com/github/gitignore/340e2fe08a2356c2e3760ff58c3a9e1fddf08060/Global/Windows.gitignore + +# Windows thumbnail cache files +Thumbs.db +ehthumbs.db +ehthumbs_vista.db + +# Dump file +*.stackdump + +# Folder config file +[Dd]esktop.ini + +# Recycle Bin used on file shares +$RECYCLE.BIN/ + +# Windows Installer files +*.cab +*.msi +*.msix +*.msm +*.msp + +# Windows shortcuts +*.lnk + + +### https://raw.github.com/github/gitignore/340e2fe08a2356c2e3760ff58c3a9e1fddf08060/Global/Xcode.gitignore + +# Xcode +# +# gitignore contributors: remember to update Global/Xcode.gitignore, Objective-C.gitignore & Swift.gitignore + +## User settings +xcuserdata/ + +## compatibility with Xcode 8 and earlier (ignoring not required starting Xcode 9) +*.xcscmblueprint +*.xccheckout + +## compatibility with Xcode 3 and earlier (ignoring not required starting Xcode 4) +build/ +DerivedData/ +*.moved-aside +*.pbxuser +!default.pbxuser +*.mode1v3 +!default.mode1v3 +*.mode2v3 +!default.mode2v3 +*.perspectivev3 +!default.perspectivev3 + -# Obfuscation related -app.*.map.json +### Flutter Generated Exceptions -# Android Studio will place build artifacts here -/android/app/debug -/android/app/profile -/android/app/release +# Exceptions to above rules. +!**/ios/**/default.mode1v3 +!**/ios/**/default.mode2v3 +!**/ios/**/default.pbxuser +!**/ios/**/default.perspectivev3 +!/packages/flutter_tools/test/data/dart_dependencies_test/**/.packages diff --git a/.gitmodules b/.gitmodules deleted file mode 100644 index 93ffdc6..0000000 --- a/.gitmodules +++ /dev/null @@ -1,4 +0,0 @@ -[submodule "proto"] - path = proto - url = ssh://git@github.com/chronolens/gateway-protocol - branch = main diff --git a/android/.gradle/8.3/checksums/checksums.lock b/android/.gradle/8.3/checksums/checksums.lock deleted file mode 100644 index 4c8f140a63724e6d4336f9629d18a285453aac6c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17 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 diff --git a/android/.gradle/8.3/checksums/sha1-checksums.bin b/android/.gradle/8.3/checksums/sha1-checksums.bin deleted file mode 100644 index 70fcfd8386930abccd82e04624430d34bdd61f8e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 83075 zcmeFac{r8Z8$Z0ac}S+rA!TYJQpzk}08*Ar&Dqk11oK5*d;*Cv!xGOqHP` zk|@n7g!(*3jF4-Uu8@)tJT z{~E{teq8x!B?BuNSjoUj239h#l7W>BtYly%11lL=$-qhmRx+@Xft3ubWMCx&D;ZeH zz)A*IGO&_?|G#9w4Cx31=uGKp3iJo&(>UC=RX7~p>%6~R*`76=cM1O)FIz+kI4(h@gK0g3{m+OUwsCCczlU?5QYA>{Et?V!2V1sw)u>*|nW++_#Sf;I0!GZo^s3a_{LBzzxDMJa&!q_Kn$21RT$C7sIc-`{w1c z`7yw^Z^rO%i6cimaWMWotY0BBmdAXb?wJ7oix-LZp<-wJoAv7x0dDGt;T!9n-A7C( zfqzLX{xHs3|0=e@0_ewzXdh;%oAw}IrV!Z6nPB+oLF$QwP+*VWokzsO1D)p%F4SlP zKUS}ac!XPRZIh^05bz`a62tQ-FU!vfgS_E|0*H9z=~a%iMkzVKUTF@)t7!aEMAqyA z{<9P?{P}QyY}+#!kN9p3pZNCXeWZ36us^ebh(|?m#rIpD?gV&oJQ0u9>Y{O|?okK0 znHh!~%}UMaRK6nMcp)tR(dYKN<(>F^2H?A+gx1)ms7Xyb;6K9y5NRVBZVyt8y4#Bm0)=@qtu; z7sg@uobHq7biV`uertw^$1yORI9i+h8sLWwFx*||{id4V1^_?#Kl=d5@ha;>Ap{)H zl}NO|xFNM~);lo?*vI5xxXAX0VxmQ|z+Slr!;iH{Wa$-(0((Ch48O9)f$!Awvj8uu z#PF9td{4>7azh-8GoDWQ(YLEXl>qm}?Bkhy*xy#0SrKqN?@ywi_>+6a1_e`|0emes ze&T~%4V3qGKLEJ!Yoh%n;qai_6`A(Hzt3(A_b}M?XrkgN!2M4X@yjm+nfR^U)c|ge z<>B&ceGRTDcUItE%!z29u)QYFzvm9DW4hQlNie_i`)aYyKHw+d8)olZO>t=YJG?Kq zB{BTOHo?%bx;o%rDF(yqDXr`$HX(H%ZI`j}km%t3p+Nl_r~|mG{Y3l3Bic6{e<+Uw z`l3kz&cm`I-67Qe*Q|V+3<|*z<2+=-?;X#nQ=q+>!LYgDiuOu#(a^Frb z5GU>!c3+Y#-`V8e>~STS7x?j@#_+V@ndC9I zo4{TzortF>-aJygQ>_i)YcSmumGQ+tLcFWm8~(%)M<4bPZ}S{G!i+g2WG_ zz+U_mhNow}zUbKc4cMPs#PFO!Jln7fj5Dkb!yD=ZtjhgBJ;ZOv@^*D<%g2bGQy_kv zzBWBADmvs=zS?*X2A2g5U!XJTR~+kqbe zK_Z^vm)zv7`XC?Rir79RBU$wP$Q4bnUgM0hI5T>D>P`!dx�BZexDl=5F|WD@qRF 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 diff --git a/android/.gradle/8.3/dependencies-accessors/dependencies-accessors.lock b/android/.gradle/8.3/dependencies-accessors/dependencies-accessors.lock deleted file mode 100644 index 5c5a3751e962ec78b35c16fe4871f5df02a62508..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17 TcmZRcwW;E);*F0D3{U_7J_!W> diff --git a/android/.gradle/8.3/dependencies-accessors/gc.properties b/android/.gradle/8.3/dependencies-accessors/gc.properties deleted file mode 100644 index e69de29..0000000 diff --git a/android/.gradle/8.3/executionHistory/executionHistory.bin b/android/.gradle/8.3/executionHistory/executionHistory.bin deleted file mode 100644 index 86b8897fbbb6dea8297c20c1bbc39508db221c83..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 607703 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

9BhmB7vrcx6c`UI`xx!Rox?%;-R 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%0D{LVg$ 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 IM|#u$0S+Xb@&Et; diff --git a/android/.gradle/8.3/executionHistory/executionHistory.lock b/android/.gradle/8.3/executionHistory/executionHistory.lock deleted file mode 100644 index 92a6ff1dc3b69fd25e3dfa1c8c2247e912dcaee3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17 UcmZRU7IabDvuWjP1_&?$04N><&Hw-a diff --git a/android/.gradle/8.3/fileChanges/last-build.bin b/android/.gradle/8.3/fileChanges/last-build.bin deleted file mode 100644 index f76dd238ade08917e6712764a16a22005a50573d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1 IcmZPo000310RR91 diff --git a/android/.gradle/8.3/fileHashes/fileHashes.bin b/android/.gradle/8.3/fileHashes/fileHashes.bin deleted file mode 100644 index 7334df8a3f978c111c63bfe5a16e7fcc0c694f08..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 137283 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 aB=`3)tm*iyQ0H|{p#mowAhA}IMEoC{j9`WU diff --git a/android/.gradle/8.3/fileHashes/fileHashes.lock b/android/.gradle/8.3/fileHashes/fileHashes.lock deleted file mode 100644 index 1bfa11195216010419a6b5c4a81aeacd4edbc674..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17 VcmZR6ecxb;?3MQ)7{GvaIsiim1^xg4 diff --git a/android/.gradle/8.3/fileHashes/resourceHashesCache.bin b/android/.gradle/8.3/fileHashes/resourceHashesCache.bin deleted file mode 100644 index 38784e64193f7a4d81b436499626be130de6a504..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18905 zcmeI&ZAcSg00;1!WRh;V%3ziWWi|xob|@x6(kN-NK#bICprU~aX$@bdE{R}4Eef-= zjGWFWjeIGo#_)q5RCEnSF0sNFq!PzOTy0SbVmJ0YN#2J(2Jt_5?jHX4=ec`+U+<1F zj6}Rf4rcw>xjw}V0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_0D=ESAdA~bXkasv z_#pozT*oj9AvX~=>95#!+Z2xjw^beV`+=kNfIYL$VGiW!qThM%T;0!mA`$7^Xg(=( zEe|L+7m&V%=BrsL-aW}KCFv_^9^IR;?}pa1Un)KmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHaf zKmY;|fB*y_009U<00Izzz`qqpX1T!2h0%XDy2HmO z=B}r`KOLcxc6smj^BX1A_O$vNA6Gx$Hbt?Gm&^H$*Pdtge&MA}^T*xWYkeLWzhQV~ z+NJ9ro_Z8E5ug38p_AW;aIvMgG!lcSrEf`WIrWm?C@m{4vhM$W*qMAYPe0b~|NDQ# zUd}B(k3CY*GV9K9ERGthEBTEsiy-ue?P#rVA@x(q-SbQQ#z>% diff --git a/android/.gradle/8.3/gc.properties b/android/.gradle/8.3/gc.properties deleted file mode 100644 index e69de29..0000000 diff --git a/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock b/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock deleted file mode 100644 index 794ddf21bd2c07cdbe4ddfa425df83e11e39b488..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17 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ⅅ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 H-+%o-(+5aQ diff --git a/android/gradlew b/android/gradlew deleted file mode 100644 index 9d82f78..0000000 --- a/android/gradlew +++ /dev/null @@ -1,160 +0,0 @@ -#!/usr/bin/env bash - -############################################################################## -## -## Gradle start up script for UN*X -## -############################################################################## - -# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -DEFAULT_JVM_OPTS="" - -APP_NAME="Gradle" -APP_BASE_NAME=`basename "$0"` - -# Use the maximum available, or set MAX_FD != -1 to use that value. -MAX_FD="maximum" - -warn ( ) { - echo "$*" -} - -die ( ) { - echo - echo "$*" - echo - exit 1 -} - -# OS specific support (must be 'true' or 'false'). -cygwin=false -msys=false -darwin=false -case "`uname`" in - CYGWIN* ) - cygwin=true - ;; - Darwin* ) - darwin=true - ;; - MINGW* ) - msys=true - ;; -esac - -# Attempt to set APP_HOME -# Resolve links: $0 may be a link -PRG="$0" -# Need this for relative symlinks. -while [ -h "$PRG" ] ; do - ls=`ls -ld "$PRG"` - link=`expr "$ls" : '.*-> \(.*\)$'` - if expr "$link" : '/.*' > /dev/null; then - PRG="$link" - else - PRG=`dirname "$PRG"`"/$link" - fi -done -SAVED="`pwd`" -cd "`dirname \"$PRG\"`/" >/dev/null -APP_HOME="`pwd -P`" -cd "$SAVED" >/dev/null - -CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar - -# Determine the Java command to use to start the JVM. -if [ -n "$JAVA_HOME" ] ; then - if [ -x "$JAVA_HOME/jre/sh/java" ] ; then - # IBM's JDK on AIX uses strange locations for the executables - JAVACMD="$JAVA_HOME/jre/sh/java" - else - JAVACMD="$JAVA_HOME/bin/java" - fi - if [ ! -x "$JAVACMD" ] ; then - die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME - -Please set the JAVA_HOME variable in your environment to match the -location of your Java installation." - fi -else - JAVACMD="java" - which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. - -Please set the JAVA_HOME variable in your environment to match the -location of your Java installation." -fi - -# Increase the maximum file descriptors if we can. -if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then - MAX_FD_LIMIT=`ulimit -H -n` - if [ $? -eq 0 ] ; then - if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then - MAX_FD="$MAX_FD_LIMIT" - fi - ulimit -n $MAX_FD - if [ $? -ne 0 ] ; then - warn "Could not set maximum file descriptor limit: $MAX_FD" - fi - else - warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" - fi -fi - -# For Darwin, add options to specify how the application appears in the dock -if $darwin; then - GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" -fi - -# For Cygwin, switch paths to Windows format before running java -if $cygwin ; then - APP_HOME=`cygpath --path --mixed "$APP_HOME"` - CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` - JAVACMD=`cygpath --unix "$JAVACMD"` - - # We build the pattern for arguments to be converted via cygpath - ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` - SEP="" - for dir in $ROOTDIRSRAW ; do - ROOTDIRS="$ROOTDIRS$SEP$dir" - SEP="|" - done - OURCYGPATTERN="(^($ROOTDIRS))" - # Add a user-defined pattern to the cygpath arguments - if [ "$GRADLE_CYGPATTERN" != "" ] ; then - OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" - fi - # Now convert the arguments - kludge to limit ourselves to /bin/sh - i=0 - for arg in "$@" ; do - CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` - CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option - - if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition - eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` - else - eval `echo args$i`="\"$arg\"" - fi - i=$((i+1)) - done - case $i in - (0) set -- ;; - (1) set -- "$args0" ;; - (2) set -- "$args0" "$args1" ;; - (3) set -- "$args0" "$args1" "$args2" ;; - (4) set -- "$args0" "$args1" "$args2" "$args3" ;; - (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; - (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; - (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; - (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; - (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; - esac -fi - -# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules -function splitJvmOpts() { - JVM_OPTS=("$@") -} -eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS -JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME" - -exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" diff --git a/android/gradlew.bat b/android/gradlew.bat deleted file mode 100644 index 8a0b282..0000000 --- a/android/gradlew.bat +++ /dev/null @@ -1,90 +0,0 @@ -@if "%DEBUG%" == "" @echo off -@rem ########################################################################## -@rem -@rem Gradle startup script for Windows -@rem -@rem ########################################################################## - -@rem Set local scope for the variables with windows NT shell -if "%OS%"=="Windows_NT" setlocal - -@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -set DEFAULT_JVM_OPTS= - -set DIRNAME=%~dp0 -if "%DIRNAME%" == "" set DIRNAME=. -set APP_BASE_NAME=%~n0 -set APP_HOME=%DIRNAME% - -@rem Find java.exe -if defined JAVA_HOME goto findJavaFromJavaHome - -set JAVA_EXE=java.exe -%JAVA_EXE% -version >NUL 2>&1 -if "%ERRORLEVEL%" == "0" goto init - -echo. -echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. -echo. -echo Please set the JAVA_HOME variable in your environment to match the -echo location of your Java installation. - -goto fail - -:findJavaFromJavaHome -set JAVA_HOME=%JAVA_HOME:"=% -set JAVA_EXE=%JAVA_HOME%/bin/java.exe - -if exist "%JAVA_EXE%" goto init - -echo. -echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% -echo. -echo Please set the JAVA_HOME variable in your environment to match the -echo location of your Java installation. - -goto fail - -:init -@rem Get command-line arguments, handling Windowz variants - -if not "%OS%" == "Windows_NT" goto win9xME_args -if "%@eval[2+2]" == "4" goto 4NT_args - -:win9xME_args -@rem Slurp the command line arguments. -set CMD_LINE_ARGS= -set _SKIP=2 - -:win9xME_args_slurp -if "x%~1" == "x" goto execute - -set CMD_LINE_ARGS=%* -goto execute - -:4NT_args -@rem Get arguments from the 4NT Shell from JP Software -set CMD_LINE_ARGS=%$ - -:execute -@rem Setup the command line - -set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar - -@rem Execute Gradle -"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% - -:end -@rem End local scope for the variables with windows NT shell -if "%ERRORLEVEL%"=="0" goto mainEnd - -:fail -rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of -rem the _cmd.exe /c_ return code! -if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 -exit /b 1 - -:mainEnd -if "%OS%"=="Windows_NT" endlocal - -:omega diff --git a/android/local.properties b/android/local.properties deleted file mode 100644 index 2ed25b2..0000000 --- a/android/local.properties +++ /dev/null @@ -1,5 +0,0 @@ -sdk.dir=C:\\Users\\Alice\\AppData\\Local\\Android\\sdk -flutter.sdk=C:\\Users\\Alice\\Downloads\\flutter -flutter.buildMode=debug -flutter.versionName=1.0.0 -flutter.versionCode=1 \ No newline at end of file diff --git a/ios/Flutter/Generated.xcconfig b/ios/Flutter/Generated.xcconfig deleted file mode 100644 index adf1501..0000000 --- a/ios/Flutter/Generated.xcconfig +++ /dev/null @@ -1,14 +0,0 @@ -// This is a generated file; do not edit or check into version control. -FLUTTER_ROOT=C:\dev\flutter -FLUTTER_APPLICATION_PATH=C:\Users\Despacito4\Desktop\mobile\mobile_base -COCOAPODS_PARALLEL_CODE_SIGN=true -FLUTTER_TARGET=lib\main.dart -FLUTTER_BUILD_DIR=build -FLUTTER_BUILD_NAME=1.0.0 -FLUTTER_BUILD_NUMBER=1 -EXCLUDED_ARCHS[sdk=iphonesimulator*]=i386 -EXCLUDED_ARCHS[sdk=iphoneos*]=armv7 -DART_OBFUSCATION=false -TRACK_WIDGET_CREATION=true -TREE_SHAKE_ICONS=false -PACKAGE_CONFIG=.dart_tool/package_config.json diff --git a/ios/Flutter/flutter_export_environment.sh b/ios/Flutter/flutter_export_environment.sh deleted file mode 100644 index 77feab6..0000000 --- a/ios/Flutter/flutter_export_environment.sh +++ /dev/null @@ -1,13 +0,0 @@ -#!/bin/sh -# This is a generated file; do not edit or check into version control. -export "FLUTTER_ROOT=C:\dev\flutter" -export "FLUTTER_APPLICATION_PATH=C:\Users\Despacito4\Desktop\mobile\mobile_base" -export "COCOAPODS_PARALLEL_CODE_SIGN=true" -export "FLUTTER_TARGET=lib\main.dart" -export "FLUTTER_BUILD_DIR=build" -export "FLUTTER_BUILD_NAME=1.0.0" -export "FLUTTER_BUILD_NUMBER=1" -export "DART_OBFUSCATION=false" -export "TRACK_WIDGET_CREATION=true" -export "TREE_SHAKE_ICONS=false" -export "PACKAGE_CONFIG=.dart_tool/package_config.json" diff --git a/ios/Podfile b/ios/Podfile new file mode 100644 index 0000000..d97f17e --- /dev/null +++ b/ios/Podfile @@ -0,0 +1,44 @@ +# Uncomment this line to define a global platform for your project +# platform :ios, '12.0' + +# CocoaPods analytics sends network stats synchronously affecting flutter build latency. +ENV['COCOAPODS_DISABLE_STATS'] = 'true' + +project 'Runner', { + 'Debug' => :debug, + 'Profile' => :release, + 'Release' => :release, +} + +def flutter_root + generated_xcode_build_settings_path = File.expand_path(File.join('..', 'Flutter', 'Generated.xcconfig'), __FILE__) + unless File.exist?(generated_xcode_build_settings_path) + raise "#{generated_xcode_build_settings_path} must exist. If you're running pod install manually, make sure flutter pub get is executed first" + end + + File.foreach(generated_xcode_build_settings_path) do |line| + matches = line.match(/FLUTTER_ROOT\=(.*)/) + return matches[1].strip if matches + end + raise "FLUTTER_ROOT not found in #{generated_xcode_build_settings_path}. Try deleting Generated.xcconfig, then run flutter pub get" +end + +require File.expand_path(File.join('packages', 'flutter_tools', 'bin', 'podhelper'), flutter_root) + +flutter_ios_podfile_setup + +target 'Runner' do + use_frameworks! + use_modular_headers! + + flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__)) + target 'RunnerTests' do + inherit! :search_paths + end +end + +post_install do |installer| + installer.pods_project.targets.each do |target| + flutter_additional_ios_build_settings(target) + end +end diff --git a/ios/Runner/GeneratedPluginRegistrant.h b/ios/Runner/GeneratedPluginRegistrant.h deleted file mode 100644 index 7a89092..0000000 --- a/ios/Runner/GeneratedPluginRegistrant.h +++ /dev/null @@ -1,19 +0,0 @@ -// -// Generated file. Do not edit. -// - -// clang-format off - -#ifndef GeneratedPluginRegistrant_h -#define GeneratedPluginRegistrant_h - -#import - -NS_ASSUME_NONNULL_BEGIN - -@interface GeneratedPluginRegistrant : NSObject -+ (void)registerWithRegistry:(NSObject*)registry; -@end - -NS_ASSUME_NONNULL_END -#endif /* GeneratedPluginRegistrant_h */ diff --git a/ios/Runner/GeneratedPluginRegistrant.m b/ios/Runner/GeneratedPluginRegistrant.m deleted file mode 100644 index efe65ec..0000000 --- a/ios/Runner/GeneratedPluginRegistrant.m +++ /dev/null @@ -1,14 +0,0 @@ -// -// Generated file. Do not edit. -// - -// clang-format off - -#import "GeneratedPluginRegistrant.h" - -@implementation GeneratedPluginRegistrant - -+ (void)registerWithRegistry:(NSObject*)registry { -} - -@end diff --git a/proto b/proto deleted file mode 160000 index f403797..0000000 --- a/proto +++ /dev/null @@ -1 +0,0 @@ -Subproject commit f4037973661affec183558c0917c2d466d635621 diff --git a/pubspec.lock b/pubspec.lock deleted file mode 100644 index fced3df..0000000 --- a/pubspec.lock +++ /dev/null @@ -1,879 +0,0 @@ -# Generated by pub -# See https://dart.dev/tools/pub/glossary#lockfile -packages: - _fe_analyzer_shared: - dependency: transitive - description: - name: _fe_analyzer_shared - sha256: f256b0c0ba6c7577c15e2e4e114755640a875e885099367bf6e012b19314c834 - url: "https://pub.dev" - source: hosted - version: "72.0.0" - _macros: - dependency: transitive - description: dart - source: sdk - version: "0.3.2" - analyzer: - dependency: transitive - description: - name: analyzer - sha256: b652861553cd3990d8ed361f7979dc6d7053a9ac8843fa73820ab68ce5410139 - url: "https://pub.dev" - source: hosted - version: "6.7.0" - archive: - dependency: transitive - description: - name: archive - sha256: cb6a278ef2dbb298455e1a713bda08524a175630ec643a242c399c932a0a1f7d - url: "https://pub.dev" - source: hosted - version: "3.6.1" - args: - dependency: transitive - description: - name: args - sha256: "7cf60b9f0cc88203c5a190b4cd62a99feea42759a7fa695010eb5de1c0b2252a" - url: "https://pub.dev" - source: hosted - version: "2.5.0" - async: - dependency: transitive - description: - name: async - sha256: "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c" - url: "https://pub.dev" - source: hosted - version: "2.11.0" - boolean_selector: - dependency: transitive - description: - name: boolean_selector - sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66" - url: "https://pub.dev" - source: hosted - version: "2.1.1" - build: - dependency: "direct dev" - description: - name: build - sha256: "80184af8b6cb3e5c1c4ec6d8544d27711700bc3e6d2efad04238c7b5290889f0" - url: "https://pub.dev" - source: hosted - version: "2.4.1" - build_config: - dependency: transitive - description: - name: build_config - sha256: bf80fcfb46a29945b423bd9aad884590fb1dc69b330a4d4700cac476af1708d1 - url: "https://pub.dev" - source: hosted - version: "1.1.1" - build_daemon: - dependency: transitive - description: - name: build_daemon - sha256: "79b2aef6ac2ed00046867ed354c88778c9c0f029df8a20fe10b5436826721ef9" - url: "https://pub.dev" - source: hosted - version: "4.0.2" - build_resolvers: - dependency: transitive - description: - name: build_resolvers - sha256: "339086358431fa15d7eca8b6a36e5d783728cf025e559b834f4609a1fcfb7b0a" - url: "https://pub.dev" - source: hosted - version: "2.4.2" - build_runner: - dependency: "direct dev" - description: - name: build_runner - sha256: "028819cfb90051c6b5440c7e574d1896f8037e3c96cf17aaeb054c9311cfbf4d" - url: "https://pub.dev" - source: hosted - version: "2.4.13" - build_runner_core: - dependency: transitive - description: - name: build_runner_core - sha256: f8126682b87a7282a339b871298cc12009cb67109cfa1614d6436fb0289193e0 - url: "https://pub.dev" - source: hosted - version: "7.3.2" - built_collection: - dependency: transitive - description: - name: built_collection - sha256: "376e3dd27b51ea877c28d525560790aee2e6fbb5f20e2f85d5081027d94e2100" - url: "https://pub.dev" - source: hosted - version: "5.1.1" - built_value: - dependency: transitive - description: - name: built_value - sha256: c7913a9737ee4007efedaffc968c049fd0f3d0e49109e778edc10de9426005cb - url: "https://pub.dev" - source: hosted - version: "8.9.2" - characters: - dependency: transitive - description: - name: characters - sha256: "04a925763edad70e8443c99234dc3328f442e811f1d8fd1a72f1c8ad0f69a605" - url: "https://pub.dev" - source: hosted - version: "1.3.0" - checked_yaml: - dependency: transitive - description: - name: checked_yaml - sha256: feb6bed21949061731a7a75fc5d2aa727cf160b91af9a3e464c5e3a32e28b5ff - url: "https://pub.dev" - source: hosted - version: "2.0.3" - clock: - dependency: transitive - description: - name: clock - sha256: cb6d7f03e1de671e34607e909a7213e31d7752be4fb66a86d29fe1eb14bfb5cf - url: "https://pub.dev" - source: hosted - version: "1.1.1" - code_builder: - dependency: transitive - description: - name: code_builder - sha256: f692079e25e7869c14132d39f223f8eec9830eb76131925143b2129c4bb01b37 - url: "https://pub.dev" - source: hosted - version: "4.10.0" - collection: - dependency: transitive - description: - name: collection - sha256: ee67cb0715911d28db6bf4af1026078bd6f0128b07a5f66fb2ed94ec6783c09a - url: "https://pub.dev" - source: hosted - version: "1.18.0" - convert: - dependency: transitive - description: - name: convert - sha256: "0f08b14755d163f6e2134cb58222dd25ea2a2ee8a195e53983d57c075324d592" - url: "https://pub.dev" - source: hosted - version: "3.1.1" - crypto: - dependency: transitive - description: - name: crypto - sha256: ec30d999af904f33454ba22ed9a86162b35e52b44ac4807d1d93c288041d7d27 - url: "https://pub.dev" - source: hosted - version: "3.0.5" - cupertino_icons: - dependency: "direct main" - description: - name: cupertino_icons - sha256: ba631d1c7f7bef6b729a622b7b752645a2d076dba9976925b8f25725a30e1ee6 - url: "https://pub.dev" - source: hosted - version: "1.0.8" - dart_style: - dependency: transitive - description: - name: dart_style - sha256: "7856d364b589d1f08986e140938578ed36ed948581fbc3bc9aef1805039ac5ab" - url: "https://pub.dev" - source: hosted - version: "2.3.7" - device_info_plus: - dependency: "direct main" - description: - name: device_info_plus - sha256: a7fd703482b391a87d60b6061d04dfdeab07826b96f9abd8f5ed98068acc0074 - url: "https://pub.dev" - source: hosted - version: "10.1.2" - device_info_plus_platform_interface: - dependency: transitive - description: - name: device_info_plus_platform_interface - sha256: "282d3cf731045a2feb66abfe61bbc40870ae50a3ed10a4d3d217556c35c8c2ba" - url: "https://pub.dev" - source: hosted - version: "7.0.1" - fake_async: - dependency: transitive - description: - name: fake_async - sha256: "511392330127add0b769b75a987850d136345d9227c6b94c96a04cf4a391bf78" - url: "https://pub.dev" - source: hosted - version: "1.3.1" - ffi: - dependency: transitive - description: - name: ffi - sha256: "16ed7b077ef01ad6170a3d0c57caa4a112a38d7a2ed5602e0aca9ca6f3d98da6" - url: "https://pub.dev" - source: hosted - version: "2.1.3" - file: - dependency: transitive - description: - name: file - sha256: "5fc22d7c25582e38ad9a8515372cd9a93834027aacf1801cf01164dac0ffa08c" - url: "https://pub.dev" - source: hosted - version: "7.0.0" - fixnum: - dependency: transitive - description: - name: fixnum - sha256: "25517a4deb0c03aa0f32fd12db525856438902d9c16536311e76cdc57b31d7d1" - url: "https://pub.dev" - source: hosted - version: "1.1.0" - flutter: - dependency: "direct main" - description: flutter - source: sdk - version: "0.0.0" - flutter_lints: - dependency: "direct dev" - description: - name: flutter_lints - sha256: "5398f14efa795ffb7a33e9b6a08798b26a180edac4ad7db3f231e40f82ce11e1" - url: "https://pub.dev" - source: hosted - version: "5.0.0" - flutter_secure_storage: - dependency: "direct main" - description: - name: flutter_secure_storage - sha256: "165164745e6afb5c0e3e3fcc72a012fb9e58496fb26ffb92cf22e16a821e85d0" - url: "https://pub.dev" - source: hosted - version: "9.2.2" - flutter_secure_storage_linux: - dependency: transitive - description: - name: flutter_secure_storage_linux - sha256: "4d91bfc23047422cbcd73ac684bc169859ee766482517c22172c86596bf1464b" - url: "https://pub.dev" - source: hosted - version: "1.2.1" - flutter_secure_storage_macos: - dependency: transitive - description: - name: flutter_secure_storage_macos - sha256: "1693ab11121a5f925bbea0be725abfcfbbcf36c1e29e571f84a0c0f436147a81" - url: "https://pub.dev" - source: hosted - version: "3.1.2" - flutter_secure_storage_platform_interface: - dependency: transitive - description: - name: flutter_secure_storage_platform_interface - sha256: cf91ad32ce5adef6fba4d736a542baca9daf3beac4db2d04be350b87f69ac4a8 - url: "https://pub.dev" - source: hosted - version: "1.1.2" - flutter_secure_storage_web: - dependency: transitive - description: - name: flutter_secure_storage_web - sha256: f4ebff989b4f07b2656fb16b47852c0aab9fed9b4ec1c70103368337bc1886a9 - url: "https://pub.dev" - source: hosted - version: "1.2.1" - flutter_secure_storage_windows: - dependency: transitive - description: - name: flutter_secure_storage_windows - sha256: b20b07cb5ed4ed74fc567b78a72936203f587eba460af1df11281c9326cd3709 - url: "https://pub.dev" - source: hosted - version: "3.1.2" - flutter_staggered_grid_view: - dependency: transitive - description: - name: flutter_staggered_grid_view - sha256: "19e7abb550c96fbfeb546b23f3ff356ee7c59a019a651f8f102a4ba9b7349395" - url: "https://pub.dev" - source: hosted - version: "0.7.0" - flutter_test: - dependency: "direct dev" - description: flutter - source: sdk - version: "0.0.0" - flutter_web_plugins: - dependency: transitive - description: flutter - source: sdk - version: "0.0.0" - frontend_server_client: - dependency: transitive - description: - name: frontend_server_client - sha256: f64a0333a82f30b0cca061bc3d143813a486dc086b574bfb233b7c1372427694 - url: "https://pub.dev" - source: hosted - version: "4.0.0" - glob: - dependency: transitive - description: - name: glob - sha256: "0e7014b3b7d4dac1ca4d6114f82bf1782ee86745b9b42a92c9289c23d8a0ab63" - url: "https://pub.dev" - source: hosted - version: "2.1.2" - google_identity_services_web: - dependency: transitive - description: - name: google_identity_services_web - sha256: "5be191523702ba8d7a01ca97c17fca096822ccf246b0a9f11923a6ded06199b6" - url: "https://pub.dev" - source: hosted - version: "0.3.1+4" - googleapis_auth: - dependency: transitive - description: - name: googleapis_auth - sha256: befd71383a955535060acde8792e7efc11d2fccd03dd1d3ec434e85b68775938 - url: "https://pub.dev" - source: hosted - version: "1.6.0" - graphs: - dependency: transitive - description: - name: graphs - sha256: "741bbf84165310a68ff28fe9e727332eef1407342fca52759cb21ad8177bb8d0" - url: "https://pub.dev" - source: hosted - version: "2.3.2" - grpc: - dependency: "direct main" - description: - name: grpc - sha256: e93ee3bce45c134bf44e9728119102358c7cd69de7832d9a874e2e74eb8cab40 - url: "https://pub.dev" - source: hosted - version: "3.2.4" - http: - dependency: transitive - description: - name: http - sha256: b9c29a161230ee03d3ccf545097fccd9b87a5264228c5d348202e0f0c28f9010 - url: "https://pub.dev" - source: hosted - version: "1.2.2" - http2: - dependency: transitive - description: - name: http2 - sha256: "9ced024a160b77aba8fb8674e38f70875e321d319e6f303ec18e87bd5a4b0c1d" - url: "https://pub.dev" - source: hosted - version: "2.3.0" - http_multi_server: - dependency: transitive - description: - name: http_multi_server - sha256: "97486f20f9c2f7be8f514851703d0119c3596d14ea63227af6f7a481ef2b2f8b" - url: "https://pub.dev" - source: hosted - version: "3.2.1" - http_parser: - dependency: transitive - description: - name: http_parser - sha256: "2aa08ce0341cc9b354a498388e30986515406668dbcc4f7c950c3e715496693b" - url: "https://pub.dev" - source: hosted - version: "4.0.2" - infinite_scroll_pagination: - dependency: "direct main" - description: - name: infinite_scroll_pagination - sha256: b68bce20752fcf36c7739e60de4175494f74e99e9a69b4dd2fe3a1dd07a7f16a - url: "https://pub.dev" - source: hosted - version: "4.0.0" - io: - dependency: transitive - description: - name: io - sha256: "2ec25704aba361659e10e3e5f5d672068d332fc8ac516421d483a11e5cbd061e" - url: "https://pub.dev" - source: hosted - version: "1.0.4" - js: - dependency: transitive - description: - name: js - sha256: f2c445dce49627136094980615a031419f7f3eb393237e4ecd97ac15dea343f3 - url: "https://pub.dev" - source: hosted - version: "0.6.7" - json_annotation: - dependency: transitive - description: - name: json_annotation - sha256: "1ce844379ca14835a50d2f019a3099f419082cfdd231cd86a142af94dd5c6bb1" - url: "https://pub.dev" - source: hosted - version: "4.9.0" - leak_tracker: - dependency: transitive - description: - name: leak_tracker - sha256: "3f87a60e8c63aecc975dda1ceedbc8f24de75f09e4856ea27daf8958f2f0ce05" - url: "https://pub.dev" - source: hosted - version: "10.0.5" - leak_tracker_flutter_testing: - dependency: transitive - description: - name: leak_tracker_flutter_testing - sha256: "932549fb305594d82d7183ecd9fa93463e9914e1b67cacc34bc40906594a1806" - url: "https://pub.dev" - source: hosted - version: "3.0.5" - leak_tracker_testing: - dependency: transitive - description: - name: leak_tracker_testing - sha256: "6ba465d5d76e67ddf503e1161d1f4a6bc42306f9d66ca1e8f079a47290fb06d3" - url: "https://pub.dev" - source: hosted - version: "3.0.1" - lints: - dependency: transitive - description: - name: lints - sha256: "3315600f3fb3b135be672bf4a178c55f274bebe368325ae18462c89ac1e3b413" - url: "https://pub.dev" - source: hosted - version: "5.0.0" - logging: - dependency: transitive - description: - name: logging - sha256: "623a88c9594aa774443aa3eb2d41807a48486b5613e67599fb4c41c0ad47c340" - url: "https://pub.dev" - source: hosted - version: "1.2.0" - macros: - dependency: transitive - description: - name: macros - sha256: "0acaed5d6b7eab89f63350bccd82119e6c602df0f391260d0e32b5e23db79536" - url: "https://pub.dev" - source: hosted - version: "0.1.2-main.4" - matcher: - dependency: transitive - description: - name: matcher - sha256: d2323aa2060500f906aa31a895b4030b6da3ebdcc5619d14ce1aada65cd161cb - url: "https://pub.dev" - source: hosted - version: "0.12.16+1" - material_color_utilities: - dependency: transitive - description: - name: material_color_utilities - sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec - url: "https://pub.dev" - source: hosted - version: "0.11.1" - maybe_just_nothing: - dependency: "direct main" - description: - name: maybe_just_nothing - sha256: "0c06326e26d08f6ed43247404376366dc4d756cef23a4f1db765f546224c35e0" - url: "https://pub.dev" - source: hosted - version: "0.5.3" - meta: - dependency: transitive - description: - name: meta - sha256: bdb68674043280c3428e9ec998512fb681678676b3c54e773629ffe74419f8c7 - url: "https://pub.dev" - source: hosted - version: "1.15.0" - mime: - dependency: transitive - description: - name: mime - sha256: "41a20518f0cb1256669420fdba0cd90d21561e560ac240f26ef8322e45bb7ed6" - url: "https://pub.dev" - source: hosted - version: "2.0.0" - package_config: - dependency: transitive - description: - name: package_config - sha256: "1c5b77ccc91e4823a5af61ee74e6b972db1ef98c2ff5a18d3161c982a55448bd" - url: "https://pub.dev" - source: hosted - version: "2.1.0" - path: - dependency: transitive - description: - name: path - sha256: "087ce49c3f0dc39180befefc60fdb4acd8f8620e5682fe2476afd0b3688bb4af" - url: "https://pub.dev" - source: hosted - version: "1.9.0" - path_provider: - dependency: transitive - description: - name: path_provider - sha256: fec0d61223fba3154d87759e3cc27fe2c8dc498f6386c6d6fc80d1afdd1bf378 - url: "https://pub.dev" - source: hosted - version: "2.1.4" - path_provider_android: - dependency: transitive - description: - name: path_provider_android - sha256: "6f01f8e37ec30b07bc424b4deabac37cacb1bc7e2e515ad74486039918a37eb7" - url: "https://pub.dev" - source: hosted - version: "2.2.10" - path_provider_foundation: - dependency: transitive - description: - name: path_provider_foundation - sha256: f234384a3fdd67f989b4d54a5d73ca2a6c422fa55ae694381ae0f4375cd1ea16 - url: "https://pub.dev" - source: hosted - version: "2.4.0" - path_provider_linux: - dependency: transitive - description: - name: path_provider_linux - sha256: f7a1fe3a634fe7734c8d3f2766ad746ae2a2884abe22e241a8b301bf5cac3279 - url: "https://pub.dev" - source: hosted - version: "2.2.1" - path_provider_platform_interface: - dependency: transitive - description: - name: path_provider_platform_interface - sha256: "88f5779f72ba699763fa3a3b06aa4bf6de76c8e5de842cf6f29e2e06476c2334" - url: "https://pub.dev" - source: hosted - version: "2.1.2" - path_provider_windows: - dependency: transitive - description: - name: path_provider_windows - sha256: bd6f00dbd873bfb70d0761682da2b3a2c2fccc2b9e84c495821639601d81afe7 - url: "https://pub.dev" - source: hosted - version: "2.3.0" - permission_handler: - dependency: "direct main" - description: - name: permission_handler - sha256: "18bf33f7fefbd812f37e72091a15575e72d5318854877e0e4035a24ac1113ecb" - url: "https://pub.dev" - source: hosted - version: "11.3.1" - permission_handler_android: - dependency: transitive - description: - name: permission_handler_android - sha256: "76e4ab092c1b240d31177bb64d2b0bea43f43d0e23541ec866151b9f7b2490fa" - url: "https://pub.dev" - source: hosted - version: "12.0.12" - permission_handler_apple: - dependency: transitive - description: - name: permission_handler_apple - sha256: e6f6d73b12438ef13e648c4ae56bd106ec60d17e90a59c4545db6781229082a0 - url: "https://pub.dev" - source: hosted - version: "9.4.5" - permission_handler_html: - dependency: transitive - description: - name: permission_handler_html - sha256: af26edbbb1f2674af65a8f4b56e1a6f526156bc273d0e65dd8075fab51c78851 - url: "https://pub.dev" - source: hosted - version: "0.1.3+2" - permission_handler_platform_interface: - dependency: transitive - description: - name: permission_handler_platform_interface - sha256: e9c8eadee926c4532d0305dff94b85bf961f16759c3af791486613152af4b4f9 - url: "https://pub.dev" - source: hosted - version: "4.2.3" - permission_handler_windows: - dependency: transitive - description: - name: permission_handler_windows - sha256: "1a790728016f79a41216d88672dbc5df30e686e811ad4e698bfc51f76ad91f1e" - url: "https://pub.dev" - source: hosted - version: "0.2.1" - photo_manager: - dependency: "direct main" - description: - name: photo_manager - sha256: "32a1ce1095aeaaa792a29f28c1f74613aa75109f21c2d4ab85be3ad9964230a4" - url: "https://pub.dev" - source: hosted - version: "3.5.0" - platform: - dependency: transitive - description: - name: platform - sha256: "9b71283fc13df574056616011fb138fd3b793ea47cc509c189a6c3fa5f8a1a65" - url: "https://pub.dev" - source: hosted - version: "3.1.5" - plugin_platform_interface: - dependency: transitive - description: - name: plugin_platform_interface - sha256: "4820fbfdb9478b1ebae27888254d445073732dae3d6ea81f0b7e06d5dedc3f02" - url: "https://pub.dev" - source: hosted - version: "2.1.8" - pool: - dependency: transitive - description: - name: pool - sha256: "20fe868b6314b322ea036ba325e6fc0711a22948856475e2c2b6306e8ab39c2a" - url: "https://pub.dev" - source: hosted - version: "1.5.1" - protobuf: - dependency: "direct main" - description: - name: protobuf - sha256: "68645b24e0716782e58948f8467fd42a880f255096a821f9e7d0ec625b00c84d" - url: "https://pub.dev" - source: hosted - version: "3.1.0" - protoc_builder: - dependency: "direct dev" - description: - name: protoc_builder - sha256: "3a1ae025203e99934f33bec2b4fe95f3b27cb1647a17692bf4fc7f174d1f8d75" - url: "https://pub.dev" - source: hosted - version: "0.4.1" - pub_semver: - dependency: transitive - description: - name: pub_semver - sha256: "40d3ab1bbd474c4c2328c91e3a7df8c6dd629b79ece4c4bd04bee496a224fb0c" - url: "https://pub.dev" - source: hosted - version: "2.1.4" - pubspec_parse: - dependency: transitive - description: - name: pubspec_parse - sha256: c799b721d79eb6ee6fa56f00c04b472dcd44a30d258fac2174a6ec57302678f8 - url: "https://pub.dev" - source: hosted - version: "1.3.0" - shelf: - dependency: transitive - description: - name: shelf - sha256: ad29c505aee705f41a4d8963641f91ac4cee3c8fad5947e033390a7bd8180fa4 - url: "https://pub.dev" - source: hosted - version: "1.4.1" - shelf_web_socket: - dependency: transitive - description: - name: shelf_web_socket - sha256: "073c147238594ecd0d193f3456a5fe91c4b0abbcc68bf5cd95b36c4e194ac611" - url: "https://pub.dev" - source: hosted - version: "2.0.0" - sky_engine: - dependency: transitive - description: flutter - source: sdk - version: "0.0.99" - sliver_tools: - dependency: transitive - description: - name: sliver_tools - sha256: eae28220badfb9d0559207badcbbc9ad5331aac829a88cb0964d330d2a4636a6 - url: "https://pub.dev" - source: hosted - version: "0.2.12" - source_span: - dependency: transitive - description: - name: source_span - sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c" - url: "https://pub.dev" - source: hosted - version: "1.10.0" - stack_trace: - dependency: transitive - description: - name: stack_trace - sha256: "73713990125a6d93122541237550ee3352a2d84baad52d375a4cad2eb9b7ce0b" - url: "https://pub.dev" - source: hosted - version: "1.11.1" - stream_channel: - dependency: transitive - description: - name: stream_channel - sha256: ba2aa5d8cc609d96bbb2899c28934f9e1af5cddbd60a827822ea467161eb54e7 - url: "https://pub.dev" - source: hosted - version: "2.1.2" - stream_transform: - dependency: transitive - description: - name: stream_transform - sha256: "14a00e794c7c11aa145a170587321aedce29769c08d7f58b1d141da75e3b1c6f" - url: "https://pub.dev" - source: hosted - version: "2.1.0" - string_scanner: - dependency: transitive - description: - name: string_scanner - sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde" - url: "https://pub.dev" - source: hosted - version: "1.2.0" - term_glyph: - dependency: transitive - description: - name: term_glyph - sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84 - url: "https://pub.dev" - source: hosted - version: "1.2.1" - test_api: - dependency: transitive - description: - name: test_api - sha256: "5b8a98dafc4d5c4c9c72d8b31ab2b23fc13422348d2997120294d3bac86b4ddb" - url: "https://pub.dev" - source: hosted - version: "0.7.2" - timing: - dependency: transitive - description: - name: timing - sha256: "70a3b636575d4163c477e6de42f247a23b315ae20e86442bebe32d3cabf61c32" - url: "https://pub.dev" - source: hosted - version: "1.0.1" - typed_data: - dependency: transitive - description: - name: typed_data - sha256: facc8d6582f16042dd49f2463ff1bd6e2c9ef9f3d5da3d9b087e244a7b564b3c - url: "https://pub.dev" - source: hosted - version: "1.3.2" - vector_math: - dependency: transitive - description: - name: vector_math - sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803" - url: "https://pub.dev" - source: hosted - version: "2.1.4" - vm_service: - dependency: transitive - description: - name: vm_service - sha256: "5c5f338a667b4c644744b661f309fb8080bb94b18a7e91ef1dbd343bed00ed6d" - url: "https://pub.dev" - source: hosted - version: "14.2.5" - watcher: - dependency: transitive - description: - name: watcher - sha256: "3d2ad6751b3c16cf07c7fca317a1413b3f26530319181b37e3b9039b84fc01d8" - url: "https://pub.dev" - source: hosted - version: "1.1.0" - web: - dependency: transitive - description: - name: web - sha256: cd3543bd5798f6ad290ea73d210f423502e71900302dde696f8bff84bf89a1cb - url: "https://pub.dev" - source: hosted - version: "1.1.0" - web_socket: - dependency: transitive - description: - name: web_socket - sha256: "3c12d96c0c9a4eec095246debcea7b86c0324f22df69893d538fcc6f1b8cce83" - url: "https://pub.dev" - source: hosted - version: "0.1.6" - web_socket_channel: - dependency: transitive - description: - name: web_socket_channel - sha256: "9f187088ed104edd8662ca07af4b124465893caf063ba29758f97af57e61da8f" - url: "https://pub.dev" - source: hosted - version: "3.0.1" - win32: - dependency: transitive - description: - name: win32 - sha256: "4d45dc9069dba4619dc0ebd93c7cec5e66d8482cb625a370ac806dcc8165f2ec" - url: "https://pub.dev" - source: hosted - version: "5.5.5" - win32_registry: - dependency: transitive - description: - name: win32_registry - sha256: "21ec76dfc731550fd3e2ce7a33a9ea90b828fdf19a5c3bcf556fa992cfa99852" - url: "https://pub.dev" - source: hosted - version: "1.1.5" - xdg_directories: - dependency: transitive - description: - name: xdg_directories - sha256: faea9dee56b520b55a566385b84f2e8de55e7496104adada9962e0bd11bcff1d - url: "https://pub.dev" - source: hosted - version: "1.0.4" - yaml: - dependency: transitive - description: - name: yaml - sha256: "75769501ea3489fca56601ff33454fe45507ea3bfb014161abc3b43ae25989d5" - url: "https://pub.dev" - source: hosted - version: "3.1.2" -sdks: - dart: ">=3.5.3 <4.0.0" - flutter: ">=3.22.0" From c8e58ef71fff251a255e7a68d1647548e93799bf Mon Sep 17 00:00:00 2001 From: afonsofrancof Date: Sun, 13 Oct 2024 20:43:17 +0100 Subject: [PATCH 56/66] Full sync working without caching --- lib/model/local_media_asset.dart | 25 ++++++++++++++++- lib/model/remote_media_asset.dart | 27 ++++++++++++++++--- .../gallery_page/preview_container.dart | 11 +------- 3 files changed, 49 insertions(+), 14 deletions(-) diff --git a/lib/model/local_media_asset.dart b/lib/model/local_media_asset.dart index b9dd49b..47b2a46 100644 --- a/lib/model/local_media_asset.dart +++ b/lib/model/local_media_asset.dart @@ -16,6 +16,29 @@ class LocalMedia extends MediaAsset { Future getPreview() async { final preview = await AssetEntity.fromId(id); final thumbnail = await preview?.thumbnailData; - return Image.memory(thumbnail!); + + return Stack( + children: [ + Container( + decoration: BoxDecoration( + image: DecorationImage( + image: Image.memory(thumbnail!).image, + fit: BoxFit.cover, + ), + borderRadius: BorderRadius.circular(8.0), + ), + ), + if (remoteId != null) // Only add the icon if remoteId is not null + Positioned( + top: 8.0, + right: 8.0, + child: Icon( + Icons.cloud, + color: Colors.black, + size: 24.0, + ), + ), + ], + ); } } diff --git a/lib/model/remote_media_asset.dart b/lib/model/remote_media_asset.dart index c7e5838..38e7879 100644 --- a/lib/model/remote_media_asset.dart +++ b/lib/model/remote_media_asset.dart @@ -1,4 +1,5 @@ import 'dart:typed_data'; +import 'package:flutter/material.dart'; import 'package:flutter/widgets.dart'; import 'package:http/http.dart' as http; import 'package:mobile/model/media_asset.dart'; @@ -8,7 +9,6 @@ import 'package:photo_manager/photo_manager.dart'; class RemoteMedia extends MediaAsset { String id; - RemoteMedia(this.id, super.checksum, super.timestamp); factory RemoteMedia.fromJson(Map json, String checksum) { @@ -19,7 +19,28 @@ class RemoteMedia extends MediaAsset { @override Future getPreview() async { - String imgUrl = await APIServiceClient().getPreview(this.id); - return Image.network(imgUrl); + String imgUrl = await APIServiceClient().getPreview(id); + return Stack( + children: [ + Container( + decoration: BoxDecoration( + image: DecorationImage( + image: Image.network(imgUrl).image, + fit: BoxFit.cover, + ), + borderRadius: BorderRadius.circular(8.0), + ), + ), + Positioned( + top: 8.0, + right: 8.0, + child: Icon( + Icons.cloud, + color: Colors.black, + size: 24.0, + ), + ), + ], + ); } } diff --git a/lib/screens/gallery_page/preview_container.dart b/lib/screens/gallery_page/preview_container.dart index 16ec3ea..151a4e3 100644 --- a/lib/screens/gallery_page/preview_container.dart +++ b/lib/screens/gallery_page/preview_container.dart @@ -25,16 +25,7 @@ class PreviewContainer extends StatelessWidget { print("This is remote: ${asset.checksum}"); } }, - child: Container( - child: thumbnail, - // decoration: BoxDecoration( - // image: DecorationImage( - // image: thumbnail, - // fit: BoxFit.cover, - // ), - // borderRadius: BorderRadius.circular(8.0), - // ), - ), + child: thumbnail, ) : Container( color: Colors.grey, From 821641b2fbd7478c1f5f28162a16d905fc5c49c2 Mon Sep 17 00:00:00 2001 From: DBarbosa15987 Date: Sun, 13 Oct 2024 22:11:28 +0100 Subject: [PATCH 57/66] Fixed photo sorting in home page --- lib/screens/gallery_page/preview_container.dart | 2 +- lib/services/sync_manager.dart | 9 +++++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/lib/screens/gallery_page/preview_container.dart b/lib/screens/gallery_page/preview_container.dart index 151a4e3..f2fefab 100644 --- a/lib/screens/gallery_page/preview_container.dart +++ b/lib/screens/gallery_page/preview_container.dart @@ -18,7 +18,7 @@ class PreviewContainer extends StatelessWidget { return thumbnail != null ? GestureDetector( onTap: () async { - if (asset is LocalMedia) { + if (asset is LocalMedia && ((asset as LocalMedia).remoteId == null)) { print('File tapped: ${(asset as LocalMedia).path}'); APIServiceClient().uploadFileStream((asset as LocalMedia).path); } else { diff --git a/lib/services/sync_manager.dart b/lib/services/sync_manager.dart index 5a5f11b..f968378 100644 --- a/lib/services/sync_manager.dart +++ b/lib/services/sync_manager.dart @@ -26,9 +26,9 @@ class SyncManager { Map mediaInfo = HashMap(); for (var pair in paths.take(64)) { + List s = + (pair as List).map((e) => e.toString()).toList(); - List s = (pair as List).map((e) => e.toString()).toList(); - File file = File(s[0]); final fileStream = file.openRead(); final checksum = @@ -71,8 +71,9 @@ class SyncManager { } } mediaAssets.addAll(remoteMediaInfo.values.toList() - ..removeWhere((item) => localAndRemoteHashes.contains(item.checksum)) - ..sort((a, b) => b.timestamp.compareTo(a.timestamp))); + ..removeWhere((item) => localAndRemoteHashes.contains(item.checksum))); + + mediaAssets.sort((a, b) => b.timestamp.compareTo(a.timestamp)); int i = 0; for (var a in mediaAssets) { From 1ef42b9d65596cc267c6842a35f1d47203b4f410 Mon Sep 17 00:00:00 2001 From: afonsofrancof Date: Mon, 14 Oct 2024 01:56:29 +0100 Subject: [PATCH 58/66] Full and partial sync done Need to add partial sync on refresh page --- lib/model/remote_media_asset.dart | 12 +- lib/screens/gallery_page/image_grid.dart | 2 +- .../gallery_page/preview_container.dart | 3 +- lib/screens/login.dart | 1 + lib/services/api_service.dart | 28 ++- lib/services/sync_manager.dart | 161 ++++++++++++++---- lib/utils/constants.dart | 4 +- lib/utils/route_generator.dart | 2 +- 8 files changed, 176 insertions(+), 37 deletions(-) diff --git a/lib/model/remote_media_asset.dart b/lib/model/remote_media_asset.dart index 38e7879..e825233 100644 --- a/lib/model/remote_media_asset.dart +++ b/lib/model/remote_media_asset.dart @@ -11,8 +11,16 @@ class RemoteMedia extends MediaAsset { RemoteMedia(this.id, super.checksum, super.timestamp); - factory RemoteMedia.fromJson(Map json, String checksum) { - final id = json['id'] as String; + // Add this method to convert the object to a JSON-serializable map + Map toJson() { + return { + 'hash': super.checksum, + 'created_at': super.timestamp, + }; + } + + factory RemoteMedia.fromJson(Map json, String id) { + final checksum = json['hash'] as String; final timestamp = json['created_at'] as int; return RemoteMedia(id, checksum, timestamp); } diff --git a/lib/screens/gallery_page/image_grid.dart b/lib/screens/gallery_page/image_grid.dart index 664fd37..9290388 100644 --- a/lib/screens/gallery_page/image_grid.dart +++ b/lib/screens/gallery_page/image_grid.dart @@ -24,7 +24,7 @@ class _ImageGridState extends State { bool _isPathsLoaded = false; // Add this flag Future initSyncManager() async { - paths = await SyncManager().syncResolver(); + paths = await SyncManager().sync(); setState(() { _isPathsLoaded = true; // Update the flag after paths are loaded }); diff --git a/lib/screens/gallery_page/preview_container.dart b/lib/screens/gallery_page/preview_container.dart index f2fefab..0958b10 100644 --- a/lib/screens/gallery_page/preview_container.dart +++ b/lib/screens/gallery_page/preview_container.dart @@ -8,8 +8,7 @@ class PreviewContainer extends StatelessWidget { final MediaAsset asset; final Widget? thumbnail; - const PreviewContainer({Key? key, required this.asset, this.thumbnail}) - : super(key: key); + const PreviewContainer({super.key, required this.asset, this.thumbnail}); // #TODO: diff --git a/lib/screens/login.dart b/lib/screens/login.dart index ffe8b0a..403c0a2 100644 --- a/lib/screens/login.dart +++ b/lib/screens/login.dart @@ -1,3 +1,4 @@ +import 'package:flutter_secure_storage/flutter_secure_storage.dart'; import 'package:mobile/utils/constants.dart'; import 'package:shared_preferences/shared_preferences.dart'; import 'package:flutter/material.dart'; diff --git a/lib/services/api_service.dart b/lib/services/api_service.dart index 3eb2d8e..a7c70e3 100644 --- a/lib/services/api_service.dart +++ b/lib/services/api_service.dart @@ -119,7 +119,7 @@ class APIServiceClient { } } - Future> syncFull() async { + Future> syncFullRemote() async { final SharedPreferences prefs = await SharedPreferences.getInstance(); String baseUrl = prefs.getString(BASE_URL) ?? ""; var uri = Uri.parse('$baseUrl/sync/full'); @@ -137,6 +137,7 @@ class APIServiceClient { final Map mediaMap = sync.map((key, value) { + //Map of Id -> (hash,created_at) return MapEntry(key, RemoteMedia.fromJson(value, key)); }); print("Sync $mediaMap"); @@ -149,6 +150,31 @@ class APIServiceClient { } } + Future syncPartialRemote(String lastSync) async { + final SharedPreferences prefs = await SharedPreferences.getInstance(); + String baseUrl = prefs.getString(BASE_URL) ?? ""; + var uri = Uri.parse('$baseUrl/sync/partial'); + final storage = FlutterSecureStorage(); + final jwtToken = await storage.read(key: JWT_TOKEN) ?? ""; + + Map headers = { + HttpHeaders.authorizationHeader: "Bearer $jwtToken", + "Since": lastSync + }; + + try { + var response = await http.get(uri, headers: headers); + print("Body: ${response.body}"); + final Map sync = jsonDecode(response.body); + + return [sync["uploaded"],sync["deleted"]]; + } catch (e) { + print("Exception $e"); + return []; + } + print("Finished syncPartial()"); + } + Future getPreview(String uuid) async { final SharedPreferences prefs = await SharedPreferences.getInstance(); String baseUrl = prefs.getString(BASE_URL) ?? ""; diff --git a/lib/services/sync_manager.dart b/lib/services/sync_manager.dart index f968378..16135e8 100644 --- a/lib/services/sync_manager.dart +++ b/lib/services/sync_manager.dart @@ -3,11 +3,13 @@ import 'dart:convert'; import 'dart:io'; import 'package:crypto/crypto.dart'; import 'package:flutter/services.dart'; +import 'package:flutter_secure_storage/flutter_secure_storage.dart'; import 'package:mobile/model/local_media_asset.dart'; import 'package:mobile/model/media_asset.dart'; import 'package:mobile/model/media_info.dart'; import 'package:mobile/model/remote_media_asset.dart'; import 'package:mobile/services/api_service.dart'; +import 'package:mobile/utils/constants.dart'; import 'package:mobile/utils/time.dart'; import 'package:photo_manager/photo_manager.dart'; @@ -15,46 +17,150 @@ class SyncManager { //Native Module static const platform = MethodChannel('com.example.mobile/images'); - Future> getAllImagePathsNative() async { - final start = DateTime.now().millisecondsSinceEpoch; - print("Starting"); + Future> sync() async { + final storage = FlutterSecureStorage(); + String? lastSync = await storage.read(key: LAST_SYNC); + + Map remoteAssets = HashMap(); + Map localAssets = HashMap(); + + if (lastSync == null) { + // DO FULL SYNC + List local = await getAllImagePathsNative(); + + Map checksumCache = HashMap(); + + // Generate hashes + for (var localMedia in local) { + File file = File(localMedia.path); + final fileStream = file.openRead(); + String checksum = + base64.encode((await sha256.bind(fileStream).first).bytes); + // Add to checksum cache + checksumCache[localMedia.id] = checksum; + // Add to local_assets + localAssets[checksum] = localMedia; + } + + await storage.write( + key: CHECKSUM_CACHE, value: jsonEncode(checksumCache)); + + // Map of remote id to RemoteMedia + Map remote = + await APIServiceClient().syncFullRemote(); + + await storage.write( + key: LAST_SYNC, + value: DateTime.now().millisecondsSinceEpoch.toString()); + + await storage.write(key: REMOTE_ASSETS, value: jsonEncode(remote)); + + for (var remoteMedia in remote.entries) { + remoteAssets[remoteMedia.value.checksum] = remoteMedia.value; + } + } else { + // DO PARTIAL SYNC + + List local = await getAllImagePathsNative(); + + String? checksumCacheJson = await storage.read(key: CHECKSUM_CACHE); + if (checksumCacheJson != null) { + // Decode the JSON and cast it properly + Map decodedChecksumCache = + jsonDecode(checksumCacheJson); + Map checksumCache = + decodedChecksumCache.cast(); + + for (var localMedia in local) { + String? hashLookup = checksumCache[localMedia.id]; + String checksum; + if (hashLookup != null) { + checksum = hashLookup; + } else { + File file = File(localMedia.path); + final fileStream = file.openRead(); + checksum = + base64.encode((await sha256.bind(fileStream).first).bytes); + // Add to hash cache + checksumCache[localMedia.id] = checksum; + } + // Add to local_assets + localAssets[checksum] = localMedia; + } + + // Store the checksum cache again + await storage.write( + key: CHECKSUM_CACHE, value: jsonEncode(checksumCache)); + + // Sync partial remote + List remote = await APIServiceClient().syncPartialRemote(lastSync); + await storage.write( + key: LAST_SYNC, + value: DateTime.now().millisecondsSinceEpoch.toString()); + + // Map the uploaded items from the remote sync + final Map uploadedMap = + (remote[0] as Map).map((key, value) { + return MapEntry(key, RemoteMedia.fromJson(value, key)); + }); + + // Cast the list of deleted items to List + List deletedList = (remote[1] as List).cast(); + + // Get the remote media from local storage + String? savedRemoteMediaJson = await storage.read(key: REMOTE_ASSETS); + Map savedRemoteMedia = + (jsonDecode(savedRemoteMediaJson!) as Map) + .map((key, value) => + MapEntry(key, RemoteMedia.fromJson(value, key))); + + // Add the uploaded items to saved remote media + for (var uploadedMedia in uploadedMap.entries) { + savedRemoteMedia[uploadedMedia.key] = uploadedMedia.value; + } + + // Remove the deleted items from saved remote media + for (var deleted in deletedList) { + savedRemoteMedia.remove(deleted); + } + + // Save the updated remote media to local storage + await storage.write( + key: REMOTE_ASSETS, value: jsonEncode(savedRemoteMedia)); + + // Update remoteAssets with the checksums + for (var remoteMedia in savedRemoteMedia.entries) { + remoteAssets[remoteMedia.value.checksum] = remoteMedia.value; + } + } + } + + // Call syncResolver with localAssets and remoteAssets + return await syncResolver(localAssets, remoteAssets); + } + + Future> getAllImagePathsNative() async { try { // Call the method on the platform (Android in this case) final List paths = await platform.invokeMethod('getAllImagePathsNative'); - Map mediaInfo = HashMap(); - + List localMediaInfo = []; for (var pair in paths.take(64)) { List s = (pair as List).map((e) => e.toString()).toList(); - File file = File(s[0]); - final fileStream = file.openRead(); - final checksum = - base64.encode((await sha256.bind(fileStream).first).bytes); - mediaInfo[checksum] = MediaInfo(s[0], await getFileStamp(file), s[1]); + localMediaInfo.add(MediaInfo(s[0], await getFileStamp(file), s[1])); } - final end = DateTime.now().millisecondsSinceEpoch; - print("It took ${(end - start)}"); - print("Finished getAllImagePathsNative()"); - return mediaInfo; - } on PlatformException catch (e) { - print("Failed to get image paths: '${e.message}'."); - return HashMap(); + return localMediaInfo; + } on PlatformException catch (_) { + return []; } } - Future> syncResolver( - /* Map localMediaInfo, - Map remoteMediaInfo */ - ) async { - final start = DateTime.now().millisecondsSinceEpoch; - Map localMediaInfo = await getAllImagePathsNative(); - Map remoteMediaInfo = - await APIServiceClient().syncFull(); - + Future> syncResolver(Map localMediaInfo, + Map remoteMediaInfo) async { List mediaAssets = []; HashSet localAndRemoteHashes = HashSet(); @@ -75,13 +181,10 @@ class SyncManager { mediaAssets.sort((a, b) => b.timestamp.compareTo(a.timestamp)); - int i = 0; for (var a in mediaAssets) { print( "Media:${a.checksum} | ${a.timestamp} | ${a is LocalMedia ? "true" : "false"}"); } - final end = DateTime.now().millisecondsSinceEpoch; - print("It ALL took ${(end - start)}"); print("DONE"); return mediaAssets; } diff --git a/lib/utils/constants.dart b/lib/utils/constants.dart index bfe58f8..3bda8be 100644 --- a/lib/utils/constants.dart +++ b/lib/utils/constants.dart @@ -5,4 +5,6 @@ const String BASE_URL = "baseUrl"; const String CHECKSUM = 'checksum'; const String JWT_TOKEN = "jwtToken"; -String getAuthHeader(jwtToken) => "Bearer $jwtToken"; \ No newline at end of file +const String LAST_SYNC = "lastSync"; +const String CHECKSUM_CACHE = "checksumCache"; +const String REMOTE_ASSETS = "remoteAssets"; diff --git a/lib/utils/route_generator.dart b/lib/utils/route_generator.dart index 78c37a2..f992da4 100644 --- a/lib/utils/route_generator.dart +++ b/lib/utils/route_generator.dart @@ -30,4 +30,4 @@ class RouteGenerator { ); }); } -} \ No newline at end of file +} From a126c0cc3f803e4eeba2c8dfe962b052851268b7 Mon Sep 17 00:00:00 2001 From: afonsofrancof Date: Mon, 14 Oct 2024 11:18:25 +0100 Subject: [PATCH 59/66] Fixed warnings and changed to sharedprefsasync --- lib/model/local_media_asset.dart | 2 - lib/model/media_asset.dart | 3 -- lib/model/remote_media_asset.dart | 4 -- lib/screens/gallery_page/gallery_page.dart | 4 +- lib/screens/gallery_page/image_grid.dart | 7 +--- .../gallery_page/preview_container.dart | 1 - lib/screens/home_page.dart | 6 +-- lib/screens/login.dart | 7 ++-- lib/services/api_service.dart | 37 +++++++++---------- lib/services/sync_manager.dart | 35 ++++++++---------- pubspec.yaml | 2 + 11 files changed, 44 insertions(+), 64 deletions(-) diff --git a/lib/model/local_media_asset.dart b/lib/model/local_media_asset.dart index 47b2a46..1247838 100644 --- a/lib/model/local_media_asset.dart +++ b/lib/model/local_media_asset.dart @@ -1,5 +1,3 @@ -import 'dart:io'; -import 'dart:typed_data'; import 'package:flutter/material.dart'; import 'package:mobile/model/media_asset.dart'; import 'package:photo_manager/photo_manager.dart'; diff --git a/lib/model/media_asset.dart b/lib/model/media_asset.dart index d34934d..cfbf93b 100644 --- a/lib/model/media_asset.dart +++ b/lib/model/media_asset.dart @@ -1,7 +1,4 @@ -import 'dart:typed_data'; - import 'package:flutter/material.dart'; -import 'package:photo_manager/photo_manager.dart'; abstract class MediaAsset { String checksum; diff --git a/lib/model/remote_media_asset.dart b/lib/model/remote_media_asset.dart index e825233..2f4eebc 100644 --- a/lib/model/remote_media_asset.dart +++ b/lib/model/remote_media_asset.dart @@ -1,10 +1,6 @@ -import 'dart:typed_data'; import 'package:flutter/material.dart'; -import 'package:flutter/widgets.dart'; -import 'package:http/http.dart' as http; import 'package:mobile/model/media_asset.dart'; import 'package:mobile/services/api_service.dart'; -import 'package:photo_manager/photo_manager.dart'; class RemoteMedia extends MediaAsset { String id; diff --git a/lib/screens/gallery_page/gallery_page.dart b/lib/screens/gallery_page/gallery_page.dart index 64be8f1..d902ca3 100644 --- a/lib/screens/gallery_page/gallery_page.dart +++ b/lib/screens/gallery_page/gallery_page.dart @@ -10,10 +10,10 @@ class GalleryPage extends StatefulWidget { const GalleryPage({super.key}); @override - _GalleryPageState createState() => _GalleryPageState(); + GalleryPageState createState() => GalleryPageState(); } -class _GalleryPageState extends State { +class GalleryPageState extends State { bool _permissionState = false; @override diff --git a/lib/screens/gallery_page/image_grid.dart b/lib/screens/gallery_page/image_grid.dart index 9290388..99b7964 100644 --- a/lib/screens/gallery_page/image_grid.dart +++ b/lib/screens/gallery_page/image_grid.dart @@ -1,9 +1,6 @@ -import 'dart:io'; -import 'dart:typed_data'; import 'package:flutter/material.dart'; import 'package:mobile/model/media_asset.dart'; import 'package:mobile/services/sync_manager.dart'; -import 'package:photo_manager/photo_manager.dart'; import 'package:infinite_scroll_pagination/infinite_scroll_pagination.dart'; import 'preview_container.dart'; @@ -11,10 +8,10 @@ class ImageGrid extends StatefulWidget { const ImageGrid({super.key}); @override - _ImageGridState createState() => _ImageGridState(); + ImageGridState createState() => ImageGridState(); } -class _ImageGridState extends State { +class ImageGridState extends State { static const _pageSize = 40; final PagingController _pagingController = PagingController(firstPageKey: 0); diff --git a/lib/screens/gallery_page/preview_container.dart b/lib/screens/gallery_page/preview_container.dart index 0958b10..892d0cb 100644 --- a/lib/screens/gallery_page/preview_container.dart +++ b/lib/screens/gallery_page/preview_container.dart @@ -1,4 +1,3 @@ -import 'dart:typed_data'; import 'package:flutter/material.dart'; import 'package:mobile/model/local_media_asset.dart'; import 'package:mobile/model/media_asset.dart'; diff --git a/lib/screens/home_page.dart b/lib/screens/home_page.dart index 7432682..e8caf8f 100644 --- a/lib/screens/home_page.dart +++ b/lib/screens/home_page.dart @@ -1,16 +1,14 @@ import 'package:flutter/material.dart'; -import 'package:mobile/services/api_service.dart'; -import 'package:mobile/services/sync_manager.dart'; import 'gallery_page/gallery_page.dart'; class HomePage extends StatefulWidget { const HomePage({super.key}); @override - _HomePageState createState() => _HomePageState(); + HomePageState createState() => HomePageState(); } -class _HomePageState extends State { +class HomePageState extends State { int _currentIndex = 0; final List _pages = [ diff --git a/lib/screens/login.dart b/lib/screens/login.dart index 403c0a2..e7e241e 100644 --- a/lib/screens/login.dart +++ b/lib/screens/login.dart @@ -1,4 +1,3 @@ -import 'package:flutter_secure_storage/flutter_secure_storage.dart'; import 'package:mobile/utils/constants.dart'; import 'package:shared_preferences/shared_preferences.dart'; import 'package:flutter/material.dart'; @@ -28,9 +27,9 @@ class _LoginPageState extends State { } Future _loadServerAddress() async { - final SharedPreferences prefs = await SharedPreferences.getInstance(); - setState(() { - serverAddress = prefs.getString(BASE_URL) ?? ""; + final SharedPreferencesAsync prefs = SharedPreferencesAsync(); + setState(() async { + serverAddress = await prefs.getString(BASE_URL) ?? ""; isLoadingServerAddress = false; }); } diff --git a/lib/services/api_service.dart b/lib/services/api_service.dart index a7c70e3..8f48ac6 100644 --- a/lib/services/api_service.dart +++ b/lib/services/api_service.dart @@ -1,16 +1,16 @@ -import 'package:mime/mime.dart'; -import 'dart:io'; import 'dart:async'; +import 'dart:convert'; +import 'dart:io'; import 'package:crypto/crypto.dart'; import 'package:flutter_secure_storage/flutter_secure_storage.dart'; import 'package:http/http.dart' as http; +import 'package:mime/mime.dart'; +import 'package:mobile/model/login_request.dart'; +import 'package:mobile/model/login_response.dart'; import 'package:mobile/model/remote_media_asset.dart'; import 'package:mobile/utils/constants.dart'; import 'package:mobile/utils/time.dart'; -import 'dart:convert'; import 'package:shared_preferences/shared_preferences.dart'; -import 'package:mobile/model/login_request.dart'; -import 'package:mobile/model/login_response.dart'; class APIServiceClient { Future login(String username, String password, String baseUrl) async { @@ -31,7 +31,7 @@ class APIServiceClient { final storage = FlutterSecureStorage(); await storage.write(key: JWT_TOKEN, value: loginResponse.token); - final SharedPreferences prefs = await SharedPreferences.getInstance(); + final SharedPreferencesAsync prefs = SharedPreferencesAsync(); await prefs.setString(BASE_URL, baseUrl); } return response.statusCode; @@ -72,8 +72,8 @@ class APIServiceClient { // } Future uploadFileStream(String filePath) async { - final SharedPreferences prefs = await SharedPreferences.getInstance(); - String baseUrl = prefs.getString(BASE_URL) ?? ""; + final SharedPreferencesAsync prefs = SharedPreferencesAsync(); + String baseUrl = await prefs.getString(BASE_URL) ?? ""; var uri = Uri.parse('$baseUrl/image/upload'); final storage = FlutterSecureStorage(); final jwtToken = await storage.read(key: JWT_TOKEN) ?? ""; @@ -120,8 +120,8 @@ class APIServiceClient { } Future> syncFullRemote() async { - final SharedPreferences prefs = await SharedPreferences.getInstance(); - String baseUrl = prefs.getString(BASE_URL) ?? ""; + final SharedPreferencesAsync prefs = SharedPreferencesAsync(); + String baseUrl = await prefs.getString(BASE_URL) ?? ""; var uri = Uri.parse('$baseUrl/sync/full'); final storage = FlutterSecureStorage(); final jwtToken = await storage.read(key: JWT_TOKEN) ?? ""; @@ -150,34 +150,33 @@ class APIServiceClient { } } - Future syncPartialRemote(String lastSync) async { - final SharedPreferences prefs = await SharedPreferences.getInstance(); - String baseUrl = prefs.getString(BASE_URL) ?? ""; + Future syncPartialRemote(int lastSync) async { + final SharedPreferencesAsync prefs = SharedPreferencesAsync(); + String baseUrl = await prefs.getString(BASE_URL) ?? ""; var uri = Uri.parse('$baseUrl/sync/partial'); final storage = FlutterSecureStorage(); final jwtToken = await storage.read(key: JWT_TOKEN) ?? ""; Map headers = { HttpHeaders.authorizationHeader: "Bearer $jwtToken", - "Since": lastSync + "Since": lastSync.toString() }; try { var response = await http.get(uri, headers: headers); print("Body: ${response.body}"); final Map sync = jsonDecode(response.body); - - return [sync["uploaded"],sync["deleted"]]; + + return [sync["uploaded"], sync["deleted"]]; } catch (e) { print("Exception $e"); return []; } - print("Finished syncPartial()"); } Future getPreview(String uuid) async { - final SharedPreferences prefs = await SharedPreferences.getInstance(); - String baseUrl = prefs.getString(BASE_URL) ?? ""; + final SharedPreferencesAsync prefs = SharedPreferencesAsync(); + String baseUrl = await prefs.getString(BASE_URL) ?? ""; var uri = Uri.parse('$baseUrl/preview/$uuid'); final storage = FlutterSecureStorage(); final jwtToken = await storage.read(key: JWT_TOKEN) ?? ""; diff --git a/lib/services/sync_manager.dart b/lib/services/sync_manager.dart index 16135e8..4feb650 100644 --- a/lib/services/sync_manager.dart +++ b/lib/services/sync_manager.dart @@ -3,7 +3,6 @@ import 'dart:convert'; import 'dart:io'; import 'package:crypto/crypto.dart'; import 'package:flutter/services.dart'; -import 'package:flutter_secure_storage/flutter_secure_storage.dart'; import 'package:mobile/model/local_media_asset.dart'; import 'package:mobile/model/media_asset.dart'; import 'package:mobile/model/media_info.dart'; @@ -11,15 +10,15 @@ import 'package:mobile/model/remote_media_asset.dart'; import 'package:mobile/services/api_service.dart'; import 'package:mobile/utils/constants.dart'; import 'package:mobile/utils/time.dart'; -import 'package:photo_manager/photo_manager.dart'; +import 'package:shared_preferences/shared_preferences.dart'; class SyncManager { //Native Module static const platform = MethodChannel('com.example.mobile/images'); Future> sync() async { - final storage = FlutterSecureStorage(); - String? lastSync = await storage.read(key: LAST_SYNC); + final SharedPreferencesAsync asyncPrefs = SharedPreferencesAsync(); + int? lastSync = await asyncPrefs.getInt(LAST_SYNC); Map remoteAssets = HashMap(); Map localAssets = HashMap(); @@ -42,18 +41,15 @@ class SyncManager { localAssets[checksum] = localMedia; } - await storage.write( - key: CHECKSUM_CACHE, value: jsonEncode(checksumCache)); + await asyncPrefs.setString(CHECKSUM_CACHE, jsonEncode(checksumCache)); // Map of remote id to RemoteMedia Map remote = await APIServiceClient().syncFullRemote(); - await storage.write( - key: LAST_SYNC, - value: DateTime.now().millisecondsSinceEpoch.toString()); + await asyncPrefs.setInt(LAST_SYNC, DateTime.now().millisecondsSinceEpoch); - await storage.write(key: REMOTE_ASSETS, value: jsonEncode(remote)); + await asyncPrefs.setString(REMOTE_ASSETS, jsonEncode(remote)); for (var remoteMedia in remote.entries) { remoteAssets[remoteMedia.value.checksum] = remoteMedia.value; @@ -63,7 +59,7 @@ class SyncManager { List local = await getAllImagePathsNative(); - String? checksumCacheJson = await storage.read(key: CHECKSUM_CACHE); + String? checksumCacheJson = await asyncPrefs.getString(CHECKSUM_CACHE); if (checksumCacheJson != null) { // Decode the JSON and cast it properly Map decodedChecksumCache = @@ -89,14 +85,12 @@ class SyncManager { } // Store the checksum cache again - await storage.write( - key: CHECKSUM_CACHE, value: jsonEncode(checksumCache)); + await asyncPrefs.setString(CHECKSUM_CACHE, jsonEncode(checksumCache)); // Sync partial remote List remote = await APIServiceClient().syncPartialRemote(lastSync); - await storage.write( - key: LAST_SYNC, - value: DateTime.now().millisecondsSinceEpoch.toString()); + await asyncPrefs.setInt( + LAST_SYNC, DateTime.now().millisecondsSinceEpoch); // Map the uploaded items from the remote sync final Map uploadedMap = @@ -108,7 +102,8 @@ class SyncManager { List deletedList = (remote[1] as List).cast(); // Get the remote media from local storage - String? savedRemoteMediaJson = await storage.read(key: REMOTE_ASSETS); + String? savedRemoteMediaJson = + await asyncPrefs.getString(REMOTE_ASSETS); Map savedRemoteMedia = (jsonDecode(savedRemoteMediaJson!) as Map) .map((key, value) => @@ -125,8 +120,8 @@ class SyncManager { } // Save the updated remote media to local storage - await storage.write( - key: REMOTE_ASSETS, value: jsonEncode(savedRemoteMedia)); + await asyncPrefs.setString( + REMOTE_ASSETS,jsonEncode(savedRemoteMedia)); // Update remoteAssets with the checksums for (var remoteMedia in savedRemoteMedia.entries) { @@ -146,7 +141,7 @@ class SyncManager { await platform.invokeMethod('getAllImagePathsNative'); List localMediaInfo = []; - for (var pair in paths.take(64)) { + for (var pair in paths.take(256)) { List s = (pair as List).map((e) => e.toString()).toList(); File file = File(s[0]); diff --git a/pubspec.yaml b/pubspec.yaml index b88067e..b253bde 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -27,6 +27,8 @@ dependencies: photo_manager: ^3.5.0 device_info_plus: ^10.1.2 infinite_scroll_pagination: ^4.0.0 + http: ^1.2.2 + mime: ^2.0.0 dev_dependencies: flutter_test: From 2597caccc69a23c053a4816314cdced1f1bd9978 Mon Sep 17 00:00:00 2001 From: DBarbosa15987 Date: Mon, 14 Oct 2024 12:24:14 +0100 Subject: [PATCH 60/66] Fix setState() and preview error handling --- lib/model/local_media_asset.dart | 52 ++++++++++--------- lib/model/media_asset.dart | 2 +- lib/model/remote_media_asset.dart | 50 ++++++++++-------- lib/screens/gallery_page/image_grid.dart | 2 +- .../gallery_page/preview_container.dart | 26 ++++------ lib/screens/login.dart | 5 +- 6 files changed, 71 insertions(+), 66 deletions(-) diff --git a/lib/model/local_media_asset.dart b/lib/model/local_media_asset.dart index 1247838..488f61c 100644 --- a/lib/model/local_media_asset.dart +++ b/lib/model/local_media_asset.dart @@ -11,32 +11,36 @@ class LocalMedia extends MediaAsset { this.remoteId, this.path, this.id, super.checksum, super.timestamp); @override - Future getPreview() async { + Future getPreview() async { final preview = await AssetEntity.fromId(id); final thumbnail = await preview?.thumbnailData; - return Stack( - children: [ - Container( - decoration: BoxDecoration( - image: DecorationImage( - image: Image.memory(thumbnail!).image, - fit: BoxFit.cover, - ), - borderRadius: BorderRadius.circular(8.0), - ), - ), - if (remoteId != null) // Only add the icon if remoteId is not null - Positioned( - top: 8.0, - right: 8.0, - child: Icon( - Icons.cloud, - color: Colors.black, - size: 24.0, - ), - ), - ], - ); + return thumbnail != null + ? Stack( + children: [ + Container( + decoration: BoxDecoration( + image: DecorationImage( + image: Image.memory(thumbnail!).image, + fit: BoxFit.cover, + ), + borderRadius: BorderRadius.circular(8.0), + ), + ), + if (remoteId != null) // Only add the icon if remoteId is not null + Positioned( + top: 8.0, + right: 8.0, + child: Icon( + Icons.cloud, + color: Colors.black, + size: 24.0, + ), + ), + ], + ) + : Container( + color: Colors.grey, + ); } } diff --git a/lib/model/media_asset.dart b/lib/model/media_asset.dart index cfbf93b..d186b5e 100644 --- a/lib/model/media_asset.dart +++ b/lib/model/media_asset.dart @@ -6,5 +6,5 @@ abstract class MediaAsset { MediaAsset(this.checksum, this.timestamp); - Future getPreview(); + Future getPreview(); } diff --git a/lib/model/remote_media_asset.dart b/lib/model/remote_media_asset.dart index 2f4eebc..aba9238 100644 --- a/lib/model/remote_media_asset.dart +++ b/lib/model/remote_media_asset.dart @@ -22,29 +22,33 @@ class RemoteMedia extends MediaAsset { } @override - Future getPreview() async { + Future getPreview() async { String imgUrl = await APIServiceClient().getPreview(id); - return Stack( - children: [ - Container( - decoration: BoxDecoration( - image: DecorationImage( - image: Image.network(imgUrl).image, - fit: BoxFit.cover, - ), - borderRadius: BorderRadius.circular(8.0), - ), - ), - Positioned( - top: 8.0, - right: 8.0, - child: Icon( - Icons.cloud, - color: Colors.black, - size: 24.0, - ), - ), - ], - ); + return imgUrl != "" + ? Stack( + children: [ + Container( + decoration: BoxDecoration( + image: DecorationImage( + image: Image.network(imgUrl).image, + fit: BoxFit.cover, + ), + borderRadius: BorderRadius.circular(8.0), + ), + ), + Positioned( + top: 8.0, + right: 8.0, + child: Icon( + Icons.cloud, + color: Colors.black, + size: 24.0, + ), + ), + ], + ) + : Container( + color: Colors.grey, + ); } } diff --git a/lib/screens/gallery_page/image_grid.dart b/lib/screens/gallery_page/image_grid.dart index 99b7964..8170752 100644 --- a/lib/screens/gallery_page/image_grid.dart +++ b/lib/screens/gallery_page/image_grid.dart @@ -65,7 +65,7 @@ class ImageGridState extends State { return _thumbnailCache[asset.checksum]; } - final Widget? thumbnail = await asset.getPreview(); + final Widget thumbnail = await asset.getPreview(); _thumbnailCache[asset.checksum] = thumbnail; return thumbnail; diff --git a/lib/screens/gallery_page/preview_container.dart b/lib/screens/gallery_page/preview_container.dart index 892d0cb..980a8c5 100644 --- a/lib/screens/gallery_page/preview_container.dart +++ b/lib/screens/gallery_page/preview_container.dart @@ -13,20 +13,16 @@ class PreviewContainer extends StatelessWidget { @override Widget build(BuildContext context) { - return thumbnail != null - ? GestureDetector( - onTap: () async { - if (asset is LocalMedia && ((asset as LocalMedia).remoteId == null)) { - print('File tapped: ${(asset as LocalMedia).path}'); - APIServiceClient().uploadFileStream((asset as LocalMedia).path); - } else { - print("This is remote: ${asset.checksum}"); - } - }, - child: thumbnail, - ) - : Container( - color: Colors.grey, - ); + return GestureDetector( + onTap: () async { + if (asset is LocalMedia && ((asset as LocalMedia).remoteId == null)) { + print('File tapped: ${(asset as LocalMedia).path}'); + APIServiceClient().uploadFileStream((asset as LocalMedia).path); + } else { + print("This is remote: ${asset.checksum}"); + } + }, + child: thumbnail, + ); } } diff --git a/lib/screens/login.dart b/lib/screens/login.dart index e7e241e..261bd8d 100644 --- a/lib/screens/login.dart +++ b/lib/screens/login.dart @@ -28,8 +28,9 @@ class _LoginPageState extends State { Future _loadServerAddress() async { final SharedPreferencesAsync prefs = SharedPreferencesAsync(); - setState(() async { - serverAddress = await prefs.getString(BASE_URL) ?? ""; + final serverAddressPrefs = await prefs.getString(BASE_URL) ?? ""; + setState(() { + serverAddress = serverAddressPrefs; isLoadingServerAddress = false; }); } From b70b438d26d6f199ef29fdc27fbe8e56b5d20ae6 Mon Sep 17 00:00:00 2001 From: lucasverdelho Date: Tue, 15 Oct 2024 00:08:36 +0100 Subject: [PATCH 61/66] Started improvements on login page --- lib/screens/login.dart | 120 +++++++++++++++++++++++++++++------------ 1 file changed, 85 insertions(+), 35 deletions(-) diff --git a/lib/screens/login.dart b/lib/screens/login.dart index b621cd1..f3aa494 100644 --- a/lib/screens/login.dart +++ b/lib/screens/login.dart @@ -1,6 +1,7 @@ import 'package:mobile/utils/constants.dart'; import 'package:shared_preferences/shared_preferences.dart'; import 'package:flutter/material.dart'; +import '../utils/theme.dart'; import '../services/api_service.dart'; class LoginPage extends StatefulWidget { @@ -72,61 +73,110 @@ class _LoginPageState extends State { } } - Widget buildPassword() => TextField( - onChanged: (value) => setState(() => password = value), - decoration: InputDecoration( - labelText: 'Password', - suffixIcon: IconButton( - icon: isPasswordVisible - ? const Icon(Icons.visibility) - : const Icon(Icons.visibility_off), - onPressed: () => - setState(() => isPasswordVisible = !isPasswordVisible), + Widget buildPassword() => Container( + margin: const EdgeInsets.symmetric(horizontal: 32), + child: TextField( + onChanged: (value) => setState(() => password = value), + decoration: InputDecoration( + labelText: 'Password', + labelStyle: const TextStyle(color: Colors.white), + suffixIcon: IconButton( + icon: isPasswordVisible + ? const Icon(Icons.visibility, color: Colors.white) + : const Icon(Icons.visibility_off, color: Colors.white), + onPressed: () => + setState(() => isPasswordVisible = !isPasswordVisible), + ), + enabledBorder: const UnderlineInputBorder( + borderSide: BorderSide(color: Colors.white), + ), + focusedBorder: const UnderlineInputBorder( + borderSide: BorderSide(color: Colors.white), + ), ), - border: const OutlineInputBorder(), + obscureText: !isPasswordVisible, + style: const TextStyle(color: Colors.white), ), - obscureText: !isPasswordVisible, ); - Widget buildUsername() => TextField( - onChanged: (value) => setState(() => username = value), - decoration: const InputDecoration( - labelText: 'Username', - border: OutlineInputBorder(), + Widget buildUsername() => Container( + margin: const EdgeInsets.symmetric(horizontal: 32), + child: TextField( + onChanged: (value) => setState(() => username = value), + decoration: const InputDecoration( + labelText: 'Username', + labelStyle: TextStyle(color: Colors.white), + enabledBorder: UnderlineInputBorder( + borderSide: BorderSide(color: Colors.white), + ), + focusedBorder: UnderlineInputBorder( + borderSide: BorderSide(color: Colors.white), + ), + ), + style: const TextStyle(color: Colors.white), ), ); Widget buildServer() { if (isLoadingServerAddress) { - return const CircularProgressIndicator(); // TODO: Do a full loading page instead?? + return const CircularProgressIndicator(); } - return TextFormField( - //key: ValueKey(serverAddress), - initialValue: serverAddress, - onChanged: (value) => setState(() => serverAddress = value), - decoration: const InputDecoration( - labelText: 'Server', - border: OutlineInputBorder(), + return Container( + margin: const EdgeInsets.symmetric(horizontal: 32), + child: TextFormField( + initialValue: serverAddress, + onChanged: (value) => setState(() => serverAddress = value), + decoration: const InputDecoration( + labelText: 'Server', + labelStyle: TextStyle(color: Colors.white), + enabledBorder: UnderlineInputBorder( + borderSide: BorderSide(color: Colors.white), + ), + focusedBorder: UnderlineInputBorder( + borderSide: BorderSide(color: Colors.white), + ), + ), + style: const TextStyle(color: Colors.white), ), ); } Widget loginButton() => TextButton( onPressed: () => login(username, password), - child: const Text("Log In"), + child: const Text("Log In", style: TextStyle(color: Colors.white)), ); return Scaffold( - body: Padding( + body: Container( + decoration: const BoxDecoration( + gradient: LinearGradient( + begin: Alignment.topCenter, + end: Alignment.bottomCenter, + colors: [AppTheme.darkPurple, Colors.black], + ), + ), + child: Padding( padding: const EdgeInsets.all(16), - child: Column(mainAxisAlignment: MainAxisAlignment.center, children: [ - buildServer(), - buildUsername(), - buildPassword(), - loginButton() - ]), + child: Column( + mainAxisAlignment: MainAxisAlignment.end, + children: [ + Spacer(flex: 5), + buildServer(), + const SizedBox(height: 16), + buildUsername(), + const SizedBox(height: 16), + buildPassword(), + const SizedBox(height: 16), + loginButton(), + Spacer(flex: 2), + ], + ), ), - floatingActionButton: FloatingActionButton( - onPressed: () => Navigator.of(context).pushReplacementNamed("/"))); + ), + floatingActionButton: FloatingActionButton( + onPressed: () => Navigator.of(context).pushReplacementNamed("/"), + child: const Icon(Icons.arrow_forward, color: Colors.white), + ), + ); } } From 9d7a96c3d13ff411dae6616ba77300487f36e814 Mon Sep 17 00:00:00 2001 From: lucasverdelho Date: Tue, 15 Oct 2024 00:08:45 +0100 Subject: [PATCH 62/66] added color --- lib/utils/theme.dart | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lib/utils/theme.dart b/lib/utils/theme.dart index f31569f..e76811f 100644 --- a/lib/utils/theme.dart +++ b/lib/utils/theme.dart @@ -3,6 +3,8 @@ import 'package:google_fonts/google_fonts.dart'; class AppTheme { + static const Color darkPurple = Color(0xFF392548); + // For now we will only use dark theme but it seems simple enough to implement an alternative // theme overriding the material theme TODO: Add the light theme with a switch button to change somewhere in settings static ThemeData darkTheme = ThemeData( From e654e75e258f4fc1f3c79afa6554f744a9354171 Mon Sep 17 00:00:00 2001 From: lucasverdelho Date: Tue, 15 Oct 2024 00:31:15 +0100 Subject: [PATCH 63/66] Changed login button, added logo widget (text only), refined spacings and colors --- lib/screens/login.dart | 107 ++++++++++++++++++++++++++++------------- 1 file changed, 73 insertions(+), 34 deletions(-) diff --git a/lib/screens/login.dart b/lib/screens/login.dart index f3aa494..207f65c 100644 --- a/lib/screens/login.dart +++ b/lib/screens/login.dart @@ -74,46 +74,46 @@ class _LoginPageState extends State { } Widget buildPassword() => Container( - margin: const EdgeInsets.symmetric(horizontal: 32), + margin: const EdgeInsets.symmetric(horizontal: 48), child: TextField( onChanged: (value) => setState(() => password = value), decoration: InputDecoration( labelText: 'Password', - labelStyle: const TextStyle(color: Colors.white), + labelStyle: const TextStyle(color: Color.fromRGBO(255, 255, 255, 0.7)), suffixIcon: IconButton( icon: isPasswordVisible - ? const Icon(Icons.visibility, color: Colors.white) - : const Icon(Icons.visibility_off, color: Colors.white), + ? const Icon(Icons.visibility, color: Colors.white70) + : const Icon(Icons.visibility_off, color: Colors.white70), onPressed: () => setState(() => isPasswordVisible = !isPasswordVisible), ), enabledBorder: const UnderlineInputBorder( - borderSide: BorderSide(color: Colors.white), + borderSide: BorderSide(color: Colors.white, width: 2), ), focusedBorder: const UnderlineInputBorder( - borderSide: BorderSide(color: Colors.white), + borderSide: BorderSide(color: Colors.white, width: 2), ), ), obscureText: !isPasswordVisible, - style: const TextStyle(color: Colors.white), + style: const TextStyle(color: Color.fromRGBO(255, 255, 255, 0.7)), ), ); Widget buildUsername() => Container( - margin: const EdgeInsets.symmetric(horizontal: 32), + margin: const EdgeInsets.symmetric(horizontal: 48), child: TextField( onChanged: (value) => setState(() => username = value), decoration: const InputDecoration( labelText: 'Username', - labelStyle: TextStyle(color: Colors.white), + labelStyle: TextStyle(color: Color.fromRGBO(255, 255, 255, 0.7)), enabledBorder: UnderlineInputBorder( - borderSide: BorderSide(color: Colors.white), + borderSide: BorderSide(color: Colors.white, width: 2), ), focusedBorder: UnderlineInputBorder( - borderSide: BorderSide(color: Colors.white), + borderSide: BorderSide(color: Colors.white, width: 2), ), ), - style: const TextStyle(color: Colors.white), + style: const TextStyle(color: Color.fromRGBO(255, 255, 255, 0.7)), ), ); @@ -122,28 +122,65 @@ class _LoginPageState extends State { return const CircularProgressIndicator(); } return Container( - margin: const EdgeInsets.symmetric(horizontal: 32), + margin: const EdgeInsets.symmetric(horizontal: 48), child: TextFormField( initialValue: serverAddress, onChanged: (value) => setState(() => serverAddress = value), decoration: const InputDecoration( labelText: 'Server', - labelStyle: TextStyle(color: Colors.white), + labelStyle: TextStyle(color: Color.fromRGBO(255, 255, 255, 0.7)), enabledBorder: UnderlineInputBorder( - borderSide: BorderSide(color: Colors.white), + borderSide: BorderSide(color: Colors.white, width: 2), ), focusedBorder: UnderlineInputBorder( - borderSide: BorderSide(color: Colors.white), + borderSide: BorderSide(color: Colors.white, width: 2), ), ), - style: const TextStyle(color: Colors.white), + style: const TextStyle(color: Color.fromRGBO(255, 255, 255, 0.7)), ), ); } - Widget loginButton() => TextButton( - onPressed: () => login(username, password), - child: const Text("Log In", style: TextStyle(color: Colors.white)), + + Widget loginButton() => Container( + margin: const EdgeInsets.symmetric(horizontal: 48), + width: double.infinity, + child: Material( + color: Colors.white, + borderRadius: BorderRadius.circular(4), + child: InkWell( + onTap: () => login(username, password), + borderRadius: BorderRadius.circular(4), + child: Padding( + padding: const EdgeInsets.symmetric(vertical: 12), + child: Center( + child: Text( + "Log In", + style: TextStyle( + color: Colors.black, + fontSize: 16, + fontWeight: FontWeight.bold, + ), + ), + ), + ), + ), + ), + ); + + + Widget buildTitle() => Container( + margin: const EdgeInsets.only(top: 128), + alignment: Alignment.center, + child: const Text( + "ChronoLens", + style: TextStyle( + fontSize: 38, + fontWeight: FontWeight.normal, + color: Colors.white, + ), + textAlign: TextAlign.center, + ), ); return Scaffold( @@ -157,20 +194,21 @@ class _LoginPageState extends State { ), child: Padding( padding: const EdgeInsets.all(16), - child: Column( - mainAxisAlignment: MainAxisAlignment.end, - children: [ - Spacer(flex: 5), - buildServer(), - const SizedBox(height: 16), - buildUsername(), - const SizedBox(height: 16), - buildPassword(), - const SizedBox(height: 16), - loginButton(), - Spacer(flex: 2), - ], - ), + child: Column( + mainAxisAlignment: MainAxisAlignment.start, + children: [ + buildTitle(), + const Spacer(flex: 5), + buildServer(), + const SizedBox(height: 16), + buildUsername(), + const SizedBox(height: 16), + buildPassword(), + const SizedBox(height: 48), + loginButton(), + const Spacer(flex: 4), + ], + ), ), ), floatingActionButton: FloatingActionButton( @@ -178,5 +216,6 @@ class _LoginPageState extends State { child: const Icon(Icons.arrow_forward, color: Colors.white), ), ); + } } From 675a93fd4b992afb6a83bc762bfbc4dc6dff3e43 Mon Sep 17 00:00:00 2001 From: afonsofrancof Date: Tue, 15 Oct 2024 18:48:03 +0100 Subject: [PATCH 64/66] Remove redundant ! --- lib/model/local_media_asset.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/model/local_media_asset.dart b/lib/model/local_media_asset.dart index 488f61c..3044255 100644 --- a/lib/model/local_media_asset.dart +++ b/lib/model/local_media_asset.dart @@ -21,7 +21,7 @@ class LocalMedia extends MediaAsset { Container( decoration: BoxDecoration( image: DecorationImage( - image: Image.memory(thumbnail!).image, + image: Image.memory(thumbnail).image, fit: BoxFit.cover, ), borderRadius: BorderRadius.circular(8.0), From ce6619ec8abb7f060043ab55065f078212301a95 Mon Sep 17 00:00:00 2001 From: lucasverdelho Date: Wed, 16 Oct 2024 11:33:01 +0100 Subject: [PATCH 65/66] Added logo and button assets --- assets/logo_base.png | Bin 0 -> 1518 bytes assets/logo_base_2x.png | Bin 0 -> 3512 bytes assets/logo_login_page.png | Bin 0 -> 5317 bytes assets/logo_login_page_2x.png | Bin 0 -> 13503 bytes assets/temporary_app_logo.png | Bin 0 -> 160892 bytes assets/temporary_app_logo_2x.png | Bin 0 -> 360454 bytes assets/uplad_button.png | Bin 0 -> 891 bytes assets/upload_button_2.png | Bin 0 -> 1819 bytes 8 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 assets/logo_base.png create mode 100644 assets/logo_base_2x.png create mode 100644 assets/logo_login_page.png create mode 100644 assets/logo_login_page_2x.png create mode 100644 assets/temporary_app_logo.png create mode 100644 assets/temporary_app_logo_2x.png create mode 100644 assets/uplad_button.png create mode 100644 assets/upload_button_2.png diff --git a/assets/logo_base.png b/assets/logo_base.png new file mode 100644 index 0000000000000000000000000000000000000000..558aab0e88099ec59b6cf43f4452ea9062b77389 GIT binary patch literal 1518 zcmV5iu9we`LQTz&(g4jUYi}-O!JW7?_5cIm~A0V5>FG|7P zf)sn{Zf^F{Bo(o_WH%UXq!BlugnW*_U-y}2Iy>9EX;O9%?++g4>zQXhelznvGjB{q zXeqST$*rxeS7WhQu)V$gJhGmG)R3M-da|>#^9JJDS2v*|v;-jS(8k8bc|>O+uOod1 zB*iS10LiC8;B}DuWIP@pM|w*|Xe~h0b0FmQ=H{k`EJ21L??Zl5;D|L6x%ftafGLNl-jyne8~R}(6orI-aLJ&YEAw|dngj+PjJe1Gk zgE^xj><7z`cR7# zTC|VJXy-i|a3sD6vI^pam|gUJn7Z7VR-H2-|7(Qrnw`gEu?V&=`YQW&943ZacM!rA zFbSQ!MwSB}hSZlhzI|`ReXsKd^K%j{S;!tKAbK_mFX@ILu4!+ zEjlG%Uv%B6(^5BUbbak%r(CzcTOi{@wFhA5-hvFGp1Dq3vpev17$atKoxEw&X}v>U zRy9r*k#_R4GJ(mE_J>?MvM{FYdLhUwiB8hW8x`AqlGe5jX@`9+NIK25Q=am*hh1~i zB9CMrReOM384AV*h`bqB^&^K!sqmO|(q&KmqLVg@Bk$z%s7_ktyV>Uv$LFIlQ;2vC z0n;fR;u<4_1*$&w5g~z#!MNaor9R`dQPC2)J02&5mx6w=6amp*w+esPCOY zB9VAWS;sC=i%VlQr(mzBh0sYh(XBbn@>o_gq-tf39rcD=wWekN$j2m|%bd>1jO@%bY zW0&hP?9Kg41uDiSYR)6fd9p~w! zQ~v>v*99hi#Ca0q3(E!G_v}Y!*oZ+6^L_`%WL)&_TApgASsP}O`}AXa8$2lc2WY3y z5W1g!gwX5Z+oVMvpUB>n_#Y_yh+ZYa*(UFw_a3KVC;FAw3h4Upp!<*0z)^>sqWoRB z9}iz3#Sl9l`QF~%6}vDZuMNN}14yJ}bVR=2cag3@=onp-$AJd?4_!{6 U5+q9jt^fc407*qoM6N<$f{44`=l}o! literal 0 HcmV?d00001 diff --git a/assets/logo_base_2x.png b/assets/logo_base_2x.png new file mode 100644 index 0000000000000000000000000000000000000000..e5875d36eba6b4742b30ad8892e29b48887375a2 GIT binary patch literal 3512 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 KvP#_e*Z%?2>;Vh_ literal 0 HcmV?d00001 diff --git a/assets/temporary_app_logo.png b/assets/temporary_app_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..21b7c3caa05350ad6862dce11d88aab138eda346 GIT binary patch literal 160892 zcmX_GV|ZlIwv3%jY}>YN+fK*U#MZ>NZD(TJPCB+T$;6uE&D?vx_oKhl-T&5Ed#|ch zRZ+@{QiyQ4a3CNch%(aRsvsa>f4_o(z(DYQ6GK zMKwUff1|hM z9@Q&p%ec}i=u!z8mg=A!@t(ZZbF)3Yj(&7=9U73RVuk*h{k6M1nLgS>&$T^Iv$^5850xiRUQ0F4QdKNFlD=SlC1HK@iG2NWADaY( zl0XS&p4L5WeU^7S#t5(59|-QgfKqFY7Y2`={0ja`k7_9@{8@3%qAN6F7ZNjtRC9Rd zb-dQssYGe_QynCLKElQRBC@G81i7BuZBpO#w#uNkExDYgfVT~ku5BwUN#N=3oyc^S zd)*;jiTiUag$Ne42tiH^fC6pqt=xH zoquVae_oGEV*7S#+$PPC**U1Q2-Y{F&t)f z%ICb&LD7D^NPZ5=F^_k{QVPd#gMpU&*)Y0Y*jGDb508D2EsGtBPe`ol7Y_ZY{0~8i zf`Z9aXk7Dq!(TsLs$4nudlc3;IREz|kvF*Z@tT6ocw)fw=|wgVNW78szHQO8qy+ zKs!d`0#Q-jM#!!frLwBgs}-#{18;yGPGFQ-5y0v0b%s**G#$ zYTk+#683-~LnF&E^x>kt4EHk}LZq$i=y-o~O4Vv&k{q@{j#oBBK&9Lxq z?JAAD%O>xLZZn&H837s_fEZ$o{K+a zb}0UNavZf!72E8Q<)Z1fqn<12w6pYLG=J(!d?{bu^; z<`aqM;2F!a>WpY;@9APrWA zLy>4{wt@R6&c&p0aF9MnZc3#@+f+f3;PkeoiLSvYX3UQti@*6wu;DdMHfzDWoh^fk zCcU1&`?pYh>=)kGb5(iyU!*VM6NyIM$JCW9ky66Ao#Dxau7kDhtJ!K)3oRUB+qav9GvA)q6#D6GJbk z*a-MWX_Qd(bjP5+sr*BGDfI?YaG*PeUP&VwsDH4}#l>Z(n^cW}9lrItY{v|wWqa;5 zodu2PtAoX1YRxTC2igd?V~`XxwP_^cf%tpW>%StoKJz6$Z`3&=slSKJGiq`g3=~Ut z!zioYb-E?Uq=*zk828Wa(d%5BIz8C7w3G8%f00Ym!d}goTVlY=lG7aS7!OfYV)%=u zh1YNz-U=~9hHi+1XJk;U@AKbC&ZpmHmR4tGlf^btT{vT{Lnw&XAFB|e{<-TrH!WwA zZ5@X3U4IaSTP(eN^Sx(?6Ck+IvTbg4CHKY?m|g{yw7SwDHw|O^)cAvy{p-1rQb;FB zB-A~pOpDJv9;JuNOh+KoANnh4_>A%_;$)1l$wn-l07He};p68?_`l+Ie}C+12r(cp zJHYE~Myh7)z$RkqHWD!POZz~y!dw%tE-LN7PubY@NejDLdO?x@5c48SSmb#tL2`Gj zR~e$icIvT!{Nb=?(+8%oiuwMX$~+g|y4ZB_j@w@NtD+1(hB+4$jzEF&&*|{2mY^PV z3H?N%(H+j8%Lb(l!Y37-DaRlRCdW{ti>qgn3>g6L6|&@*dohd9JLNFpsf4Ng|0izH^#S(Ju^{ zZYU@Hd`%CI)6sz6Y%h&}vA1vio?z^Yz=y6&brZN?cmoY7vrZ7aNv_B3EVy^;mvI)jajd+;Wx~ z{F}$PI5*f{yp@ZB(@gV{)XdfsOqJt@F|&9%?V5A=Y@jvj`n_niWL*ke&A?ZC`HvOL zW^SzZoM&n=y!{SC6*Di4UqK}i#gM0Va!x0-se45!7JHm8-k&NVI*|0nP1M2nf3$P? zJj9>Wj=@Y>mpurgUQHaazBzng9sip>LUJFwVavL5#sY%$quD&0dAR0t(~K${OgX5A zd2%_=iQN!%VjUXc<-z(=Us5>jR7co;w0OvT!ZevbQsF@hige2y*1{!KsFW|gU`i5>Wi3wQuhK`W> zk3ydl(Bn5G*CyX#%=E|lR?9>6F4@-TPbHW`@pQ{%=RirR)iDjqWLs;cGV@l3`NF=T zMTEW>NYnTo_7NT*X9V>gK-5c*g9EIy2eVQ+*rlsjvLBCN)cEZFvWC9^a`iia%1FDG ztxXerY-M{^KvXw|G@cg|Nxy1ji%kcryczHw`yKYB!ZsDUlMb8B-X6{izzuAnitmvP zrN$BcAzXYmbeYc)A)ieYyzj5%gf~!ratJ6?-UJK1+O5sG0=pm=@^HtNF}iG$i{PX5 zZRqJPbFnT@Ef)*pPliCj5GOMYGyHumE(W-%kup%>9Cm=p2KXrEkz#j+6y*p;8dUdW z)^a&WWm&IEsP7xAWdN~)kb66C^E7}h+uh#?7w;Rvy>Scxl@ zRykV`t~#tIY>`72LWQDM4=5E8DR z;^p;U0V|~;d`nV(JxVfRd*b5FB|z1rXOZs}PtZ3GMbW{6vkOg?Fv-zY6I5vOB}K9H z5I!U>OfEg|Sztrh2Xhm>CNzkXP-KiEfhd9WYn3^(+mnZLK#V2v+>PKN`S5HPeoQJ_ zF^oM>7A6eC3|)~Tk|@h=gY_1vYG$bMndZY?Ni`=RjBc|O|MFKF$Iay$NYq|fhv_IU zy;CavZB6zw5BGk`%Iw>aB_AlbgpZ+jn+A%p5vKE9X)Ron!EJvvmPe9b$~NUV@*h;k z6GJfrX2T%YM@AeMQnAQx3O;;PE7Da12$Gg^ zcK~w9K&FJi z!cs#__doZfR-rQ& z^;^(!;{z2ezI6+-Ad}kH2gy9qaE+0v-#FvE=2n=67a_5B#Qn}6?hz~LA0NN5)#14;*_O*kG$ zI0+)%6t`QIXk9*)Pn9S&MBV+#($tK_0N@o}ip#$k(45dJ89XlaCx#&1D#Gxj^OF+1?<$4f;t*k=NoQ zJ)q|0ywW_l8X>4-X)j}Ym|x9n$P+Aq+v(u#+ z7*k@Eff?8!B+454g{GA96O!HIR@+Jl&>Y20k&Gr#^*I)iTf?}1m+p$8(09DB6OWNi zw#7BmqF}lwx2|WLg>!amqe62YXU* z8rg8hEyuQ-v1_G=npe^hgD7o{)9iaFV&MgtDy34kreoqaEXzvaGc8FGg8`7iNY3#P^sB`hgws33(=Z?4rtRk!{X_kCER8hc1nKz>qS)TX zB_K9vIc82~I%Ccg&RSX9B_YMkxSfBxgRmm%W5DV%Re|MAc%M(_GB1p^#ZAuGE zGGX5MYQ>5~mTuW7aYZQ;hW4sK%1H z!Whp+{jo=`pKYm~CqRPkq?*0>W1N^2g$=xlmtLk(>!X5jO5-;Xo-8)^zOLH0o4Xqn zry8eGMelxR?ua&o)Z`Pk)}M)y+m)ue9joFD&k-xd)(*>dq$azs7OO9NhTLHUL;r}x z&)6@^v@brsNqVtRGqNK3+wPm>&^yzWg_IJst@|&p8-^oQHR0iq$8OaO<-=?mGp*VT zmc7g}QCycYVpF7vBGH`7ZcGyI)8lQV+21=zy_Zc%B{!%L(d0D+KgdBSt+rY+(rjM~ z#E{uCudKba%^(s5^5_m)2AvgTZPzq0znNGhJWR!B5s%Bx1S6vejoA6;uL1Cih$e4v z=DW6nD~p=1B_sB|L97*8;9YMSHXpVh)Zswc%{a&G z-|Ei?>+O3Re-mB*M|)U(>1%F{S?T=I2GufD+o zLr;xN+0wDFAcH@Z`0$#NtCKFVo7-f_xK69ZXyRZ8R>okN6lpEAPZJ=PIe~trdz~zX zn`>KdA?Qx`oMlA)gymrRmHuwR3#yxzcPAxWsST;y!HGC&KRw;vPoCNiFjyP0t?5tY@S^5DFCmJ%) z6Ij=zw*Qqq`L#`oRx1E{v{Wh2z4t8e>z%?w;euzvv8pCw9Lg*!g9#e}0=IeE%?1D{ z>rQzBu7>u&>i{u}QxeM|ye2ca$V}wcg9DXV6<3e+T3Cx^oqQO-tmz9BOPTx84#;?< z2CET~jYv1)&q3a1=v4;@*kcY;9{F*FgX(BLmVtU`HG!bT5@dAlD?5b?Ig?~HnA(@F z6Hqqo`#S(zzD9fmN?_Q~_ZACHutfPc*eov>c5c#eX<-&iW4Mt&8BV{Vzddl7X6*Hx;@_ZME%*GiCNu1JcSq_>q$Kv_QI4=Mmb%D3#JHfiUl_~G@e>6@mYU}o za5*~dIbm878AWteFTqqy4W@CyPtT|(!MM05zS=V`NYI&nH@1K7tVRc+%|$7kA+$ux zi=vZbrUnT;9I{z-6P6RF3Zg2Kc;+Qg<9-)0YrH%$GDedUYKRfn+tN4UZsvR*Ug@|i z3y7k}X@4`KR82X@Ph7B2CKtkvRAm$wS1o<@c?YiL=UlGP^<*SUd4<{6d(hM=LCoA8eqC&pj0-fV~|DmT%|tq z_?^)-mIp-k?NrH()BP4b0o6Xpi=71P;gvznMofP^TUTXh5>~QYJ!B6oG~ftHK&K~U z)^&Ajg)%LcFwXNc1~$r-RC0>NviVg8_9!?xYKMZxG>3I?1O#||)r9nP%@Vj?ff2T9 zI4SSAC;vK)_f@*`=8E}OHJ(!3#lRWcLD)5=LUO-0Nd>x166gOJt%JV-)K$25*awflXfQUsc^fILdhjsO7`a zk2oX%BM)9ZdnfV#;5h1|He2hN-`|>G?}o?arBk{Gis{F0;7j^|Og{u9cm3kR+tOQ0 zuew_0ZbNBH78>>l!`*>g|4XxWIY0A7K5x!)E2KE}IqSn!@>$7v;Wj{kZDwlKVz1+b z26s;t+fnMAU@BIeR;g7wyleMxSrt#T{nC1-o|AZB#9?8`I?BI5Ty?zh-{t$Kl9mY2 zT2MOjxItA4Sqaiv(C#AtFsw_GWgmCcSY!gdpYRSI>8}cd5JAcBPD@uy6st+O#Z7}; zK<7XY(_T0tQ1~jC#Go-684qh7L0HW!9o99bQjJJsvz=>%Z$LaD>n^si<-tKKw)m5u zLJ90{WL9mk6IIBw{Vov&O^IuQOYpV?ph-;iO&t-HF$-hB9aO_pCdO*Uu}7EQBy&>g zqUBc`uWb}JU*bFeBg9dB=Ksv3)OgZHObb@IDi3au0%5{MH$Q2BV|MF?8TF{O$WaTQ zOyO^4)>rEYjnET1PxB6Wst}xXD^g>fM;V=ni+%3YL`}`4iuR)ie_%GXYEnQCB(c+So+b3aqPY3 z0%(;AlZ;{7Ys;*@MEa;_pVwT5RbWHW%a^pRt==*!2wSwT+f>mbktdjfL zArFI-xu^v!ur4w4McZY0;$OQ?*gw$DEdPJD-H!#vfG~khFYjIs8C+x#pb&AxbMMeP z9ldhf?EZ;dM*N_vwO+WegpwdjYccR2$6r~^y0Q^oidnC*bXy$xv38&Q>`x(JWIl~J zu1XDC+*F0oMoSlQhb9uWO@ZI1)7ZFlE1;5xEJz}p46G);m>p8mbYkOJzVDgWnx#29dUQj`*Uniq zK`oxz5f@X#0}DSx*cI-E|4gcY!{@)KoNLNdq%*qaT~RpPug*QV+HW8?H!YKt(^?-l ziDlBALes~3xQ#~JGqBRpp!j3e5ul>Gs%0-vjB@2nej^*k-knja4gZUaaIBHS)KB+V zYV#LH`MODs-@1^>H%tT+c12KNGwy@YI}~kO1~qLy%z@N(GriW7A_6v`lU?^2rfU{E zv#c{GY5dWz=Z$^tL8P>906>og+@;0N%8diHn#p#9gML)18PM@J@FiqWA4QQIZ8S>r z!yB}J^!r~=Qog2qK&o8fq{HM27WO}-2l5`Hd{swdMzi>Q(mjmZeL<+o?lR>-yJ>xE zHY3`Qly!GkHtsaRkpg`v9H|p0lNG7hUDlfhTO2JH=Qp$jc+GEF^KZm;BF;~AV*3=H zG?-T?^jgfm@38-Xn8)h>QEWWUxo${yw^6V1bbvRwWp(ejRJg>9%{YJKAK&D|gLiB> z)}&WJw1VRe8l)XZ1}J{nGuT-aqI+;%1}Z}67NDJbnG}8S9?Bf_V0 zRR;|O3%X%3eoxa!lr|Yd6Zb?kY5Q$tVXgX)A%7{JektDKh^TBW91ci;4cLmd>b>iYt%R$L?e zH5x|t&XdF8Pfz>X9H_462|XGY=R|Hh#!qtuWHStdnaToiwYO@{*Cz~!#DeD@%y@Sv zwa?N|IW(76TaJep>pXnxugkt)qLDCF>(<|N(TLAR%KKqODH2c-!w;QaHx~)vjC}KJT zCu9arI(ND}uTi8IdcH|S9m?k1r%dUG4}6QA6h%%1o<^;cWI+bUF3J5#7bW)ejAow= z#9j(G*|=8(EFv=(7J8Lz!DRPatL#11Z*Oka4U-n0tjWhdlH+jvRJpNtmFFqWf^q*N z&1{oj1Y6-xRtjn=u^mLLmE^rF#lqVVbV))YE&zUN9himgBwmyk5INEPEv&chCMl2r-mE-Q#}5YDE#!Yi|1FJLc6cR*i30G5gY z#zcjB5=7*;DqB?k6`$yk>fkJQUTJCYr^FwGUk$h)_@JtkSSNPIy$E3_$SOFWk-o&- z7{NbhM1#$7epvMFDHh89dGXBG=oQb5E%@W{6R5GwxI1?4%wj*$7y&=V?}7g+9x zTeu`_wX_&_K~sTlK_8jPDmCa|cTElk@%JW?w}HrKOfM)sDwu^cd-CXU-Qe2AJ}*T)(h|*T{K~M!z62vF)`Qe5J zaR{tydJ|$siMo_yA6fw;&?!@Uph}r%jjNQ%B9jXkf93j#3oaR`7;T^%VE|0vqNIBF zW_hpyp-IXNpD8aY>_%HBA29%e5Yk7MlOr{?(;5_M9a&PVN?j{xL8wo-V^sbcAb+Ui zKdvb7GrjSiOj=|DH=}rYb>c)an=u^{N3ko5wm@2ip-3HA@Qez@8~a+@H)! zi5D`>quZ{53vZ>Q5fo#LZ6@=X}&P7vs$R6hPp^)yq8BD)jZzM?I<2+deq zl!Q+*zHGQyVtrv3ErFT0_R=VY(m-Z_RD822^FfD(TW*j5Qu$>xvf@FaCMX}YRz>Gy zvARUF@RvKf)9^Iwc?LNEQMt(r^+P=HO+tj9ssNa{O|n>z+q}5Pp3g1UFfq}wXw@dD zGL%m?=WcKM0K~Kkw@s-4u^f!Vz3Q4Dw?W*PIP+_B0aTJUqnmzsbbhWMcr$yCWtsz& z_T88Gv5Z6v zVLS5!CEQrh8fvq$C+sMm7`O76)}#sI0tn!NDUA$d`NeONomX*pay%_q71^;V6Z#ve z$(bo4O0-CsysV*Lkq+Dj>mqJRItdzCS%4|W_k!z=YWEG&8lV&l31b$k)F^dzcJyi* zbmeo@X;UUV9|R1z;yjkpzVFgns-}Lanenz(1mk0*wKarbc}HRO`h+kE9YSMY#sVn? z3&beM!muFzx1>#uG*EA}F_q89!Ol^pF+eMRfp-GJz7?K4SqK>z0~bMzI~^t7ii zX^Y_5sROQ~3GUC*c*@<0p{e6>Pw+)e8ICKNDe}C82clClb>zehk=%kGcuztCdG*}G z_n$u>><{S79)9Ac#OO3j#xjbwIP^+i0Nn~b>cxE=y%$;8KpCjVHg3qdg1$6 zMOW%0Mf|4+S6%*VcI9*WN!Ejq|TrVjlWu z9?cvJe%cvr2nzsXmdGf{^#y-1vvEL`(NM@O5+>Se#L(M(<=g2_{=_bqiAaA2H%BnsQ1peMO6l#@Fo;}KQDx$c26z>tUca*9 zGQ$%QXdE*jbOhYeC|{7lvH0oG)!qWtk-cThz+Cv3?MV;+8xuhMyy0&~{&)!lQJr2i zK7+fp(K5f}pZa2#87BH(N-3|J{bQ7)J~wxSAD5Lly4uF7yi-i$gDcGKP@v*!7tc@j zdy93GaEmcCa^z^Mv2ac%+xCyP9!SY&(!~$o98FynjdRDHU{dksrc&V_Q#E&e)E48= z7h#wtN~z$2gO5j)%O(WFT60QS_zQhWJAzh{#$f@b&b>Zf?gE+VrvJs4 zFkkz`x@L!25h@Y|V|+NXe&b=AAo6Zfi;`r1hX+~2(Il3$Ke}D?bDx8?!dOlUqtH*U z{pH>PV~5*2PxKqC-@;(XmQn#vBpZWK|5#JbN(eMX=R!0Je?V-cTz!5Mfln3^1OcX5 zzsDN`1)JWrHR^S;cNF<(%v;xFecM-KMs81|YgjE>Rc12WnHt$fYOm=HA_2aOpK5&oGXj&Wc!~gco z*NiB7HR_pD-jxFLgXNa|k9HVbCkUxWyO9;AQ5TZBXE*?vlwmOZOgP#fU@pzl355Iu5Grw7V%`eP+)#AY*6-G}Qm74heO zOYZ&I2|HsS8Sdf$PJyc}TC<=#d(R#LD7fARvhUfzk4FRk`H#D^4B;=Re%RK$;qr~_b`d0R~W>4$fSZ9FcWBN3D{h7q7Pts{FLqJ%ql7*8+$2HlE0gA zgOcd5ysznxKIS_V@X`NP{AG9d<*S^*+<0wTOb%0VL6Hi_8bC%52ITx|D$oglLj8pz ztf7~OhpoEtARWZ3^#wM0+-*vW&YsC`jYwr`Lk$NIQ%vkTZ}l~rX3nk_oCa}CWBOL0 z#k8)z$5DN?&D;OV@O~s9KU!{Q<6H-&Jih2rp!*YXB;jT%w5okSsXzGYK)gkGQ(9Qq zjLMb1oZqd49%5HKS-iISQZFLR8LfC3zuUBc2t$V!wKGp-1j^yi6oADcZ^ zCLje((5R?0V??zJdAc?A`c{QNzt~p+3f&&Ay|Gi+y>Nums-pPHqtN?5b`vE8l0hzW5~2U2m_Q-NK$b&H2VSH-&#%VL;k+HAqE+ZLoYc7%WPz^f zYQZ1gu$eq$-~ml;tKyIJkv%i4E3Q(F3gYc4!1F{u^VHN$;3Y%l_sS)XnO(YYc^+RkI3CK z4~A^xs35JQC4N9gY}1%Ivan&8jkr$r2F7X03Vy%}O%E7eIEG|5UqUG4{fd@mF-l*= z9UJ)>$;ZE?{h#%E7Z5?OkitBmJ~c{`q_d=-V5sP{4B76(tZdmFdrVkl1uM$dwSvz; zs=0Rn`DaVt{H|NMgu>hdrD7L$NPfL*N7lQ*pFsh#K|>&wySnTTM23dq2|Oxt`L|<3 ziw%__5lH5$WLc8g`TYu!!DRC4PWI$I%43a;=9qdn#*Wp`>L$wHh<}J#qY$|J;9Tsn z6YdZ`MLUv&f<>G;gjW<~2bf{3dYEnoIi`mvn%sMPBi2beg%m;%p_0A6wiTvke;Zi3 zSP;0l{!eX5{oj{v54Ia*o69wXvHHgQE6@evD4l}m4P=}6Ev zfdvN*_bgasR3=RrL>^B=cAB{9P700SzHTQPWyMZRv(r~1il_gtjecOSdk$vINg;wI zZ9liP5FF)t{nuE%AUWBvRW3x5^sO!MJAf#?M`&v4tA%0uxT9>-@v-#Ouk{n*y2Vpy zX&SO?hD<8`kBl^1Land3Hto+asFiekOL2OocY$2LT$ZK6r=MLC_=sN)v^FGZy2_#bXS6kwEBR zu?hz@(g`UkEPWkRyhz%X>LiY0xLy4;|5=|#3beNocWq)&C7rTuv?~? zxx_1B!$pnmxgu_D9Id*GP=0>k1f2vKhuMn^N}Vjnp)6y<{>Am*X5$u{q~Med4@ z*aSRLtM7p|z2TI|D~xhN(2o!sSqs$p2^bT2<4GE%prvbh^IG=gvt$&WQlh-Ag<9M0)3jI3J@dKWoy z$RIb_iByH)n#|J75F{`T4p=ZH?6B4vr2}@A$tlL`KYfQ`E)^FGEua`le?n=Jqqd;^|v{ko48a3HMz5R5H+-tKn(e7 z>zInP>rQIu{_?!K9g&}PtlYoI;J}(^j9cjW`f1RUvfGipko|_@G$TNjE>s?J(&jwC zP8Y`XC8R3@liLTUd5s(K8(~b(h_K zGFgJvDs$4D+=Ag!>Z!2Kd-TRVs_dh#`4m(U4${H|F;5Fu?+Zdik{D;>ROkw6&XPGY zL}1%dCS#46-=pqZ3`PoH*gmkW7jH+wd^1%$vZ&6OamyBWXCR}6PHsunF34fCL>I9t zp$|7P6#fK>>3Zf;g1B*QE zEebZrzMiEX#T)JGsxh2pg}_1*Uh3)WSl=Jkd#wB?*l^41nh|lq!y;Jwod>?gPHM2; z4gv2)mNa2*)4f2wTy!Oaa74g++}5;}Q&c-UH8Zm^hpq!18Yamlz*@qt4Ml;gW6xWV zR<|+s3`{m>jJcrI{xeS+FQgp>Y#CJ zM2&&w?ZgcX*c+o86J}>8N1X7l?I&Hpq0qyB=>qDP=cqfH(b~fzr38%Y6JkUySg_mC zB@$ZuBZJcQX*E;FmY9%qt5^CZ#H~GJM-+eiD5<|`?ToNpAlO4XF(qT(jFzx=^E&;i zsf?0Sjd8UUivRODtk8;LFD|QW+m2B!xP%jD0_0ZJw5r~F`eup6SJIAlUPkj>;~BLk zhsQU;lxy#)g$p(qpU19M6mIUj$2Ydy7Pmf!aaS*#@3C>3?%#$+1w#i`gSDKVC|+2q zAA!gQ8p9XGX=ue0Dk78^cg1^)lbsK9q6{z|NcR6iA9l8fLRSqo_ql(4#lPH^LWb$u6qPv&46nnT7nFqnCE&79Ya8;m^^tP2{Uw*RLhnhDO5r>)5zG;tZoHx{2r5 zFN@57vnTuH#_jWzA<(M{lxc1fRTn7uje|V4)K3bQuw5zjOYD)XAH|9aEGip{d?cKU zhcZz|(B0bcQI=<`yGees366Am>UCQboD2-{rq@|wyu`a^I#pFNh+)n=2>CV>LJ-RO zEr@VRc4zakNsp`%qII%GY$p_xzz8m+!Ky-;NMz!;dg%)aFKQw%%(|m9S3;mR3H(D)6^RjPRvXTd@JzD(J#iS|G49!UtKhTL4`G#O^xIRLzohAqu<=1kq5A^ z)V{LZgD90?5A0&5;u09Zlh)IYt8a=C>BFWDnu_bKjlkN1GkvArmQ9VCTJQ<`f2ydj z_cz}hwHY#bQD6t}+SL~2U7!MRyG`whLPdYTcTw@wek{M&18N`}YxqLKM{twf6$rAP z;!I%!<=Fd)Xo`(X(|)u58rW&%WZwu)KI6ZH^6(Io zE+o*n_ig9+{8SH^8J1T=1+~ADVgWf`dEM!k-dp-&a}HtgN4pKJ>1SKbm5Zzp+E^Rw zFaMeYxOl3!Hm(G*c(uE`F1eCKOnqsOK>*}x_b-s9Ng*NPx>Uz*x*SPoKncMgM5VSQ zaONIdK-RUET4MFa@bH?gj#6vBgTa)SITxQ_4NnN=-=K5Prk)hkHFP^@x}8P(D11K( z_dS|0|Dwl#NzL`U&Yn;nm~mU8d&0(}XHdH78%vO=nK1SYh*@sfAQG)^sI=+H<&{fi z{m!hoJQ#Rp1<+#h6j|r+hs=*G<8nnx^WFNK5@=Q%>*R}?4bwIn+>G_=6)e9j@D-{% zug)zwN#jY?S- z*+6cw%B02CynQfh>r&9h*V37lDySNC3b~Zr9H!a@5sO$K7BtKN=N+CUi`DpAE zC3iaDv^4gM|39tZ%lqPkgC0zS)o()6SrXKYB|vd%tR{u^cj9}pZw=~Ah+ivKkNyGp z<$<3ehQ}QRDpH`~Q<_iUHHSN>8xRb(NA{?5HG`X*Nu}(xoCO6S7;AX7cf3|jkh(O3 zz`MXX9*X@!{u^YRwg2GaL;JfgM9(6!WKu*``3;5P-3TZ^f>u31<%BkMV4I9+E)ceq zA1ib+-GZ}b{^m%l|Ja{NL-)EsQTG#+B?*Eu4!pQ?xU<#(@q7)VR?GFajFbjG{jg%V z!gvvZSfQwz0a={+F{nfJnE7VWAzh&rE8SN(GfL<05VTg_zO*i(m|0>i^D;3-cV3SC zDsfUVx$_6&9pZ9?9cyCadd`VB+MR;SG!z?S06B^o9JK)#6Kt6AYf&lm!sY;c!}~5= z5KI59ihr^RTx>oNZKNLP7^gByp&9iYHHSP)@q{*|;up3#8j!a2Z*Qpi{ql8ooWC!U%rXTG0F9K%#AXi=t3 z#M!s-9a`_bS{V>luZ085X8r79D`0vc9cM&4v%B<0$t&?Ao4c7n>Z;NB0q80{{e&j;g`N#^^)RbzV!PBLh%8uWzCsSzXFF@_>r`@nLw`#qRP(y%bWGL{r}5CyJ7k@U)i|5 z;so=h z7@Ng!vAOh%djn0|u^f7hK+E^^QxW7P;L67jpGtT&05bz&dpkFYyl5fH8LX*zkpQ@D z2RQ9=jncJhd__j(9||fimP$NGh!vHH4v+oRhs5tx1>c}7((Ae>cK?(tOtnNFFv`xe z_TX6RUu9n}g^!ZJ*n57_dazDvOYh|bNs?YA4p{3!2tnZZ$LmkBqipg{;EslzSTO%R z>zwcZ0mg_gzE;cEX}jy%qd1Nsm2_B|^ynq+l(Jv}{EQo~>f$R>l3 z&|StjzttJYBsz+tP-gzDZcNTOG^OBF_f5C)ABJKSud2i!%=wK5bF3Yt*-!s0%Nh?5 z{XX?BiZg=Eb17H|j%Zl1e^t0|PZ|3?RtHWLFM$yF>y8DlDtC}Zv=uGVDi;e9yGY0k zHx|W75!0hCzf*>}hDqhyt!9hM$bQT>*VPHdsWaFy`uI{SwTxBIgGCnPioPH*1i_|{ z37%j{w<%8f$uMr(O_}DACTBS?(+r62QK7ht{|N1Et^d{yBQ1~&BKdve%=wzaEoM;7 z;2$m;r6R_xKvG%S>WW~&V`ArS*6PXwL5TR=Vw0w_v(7r$o4aofXAE#64!ouFP`L)b zB-~d4Aq|Up8My^RJtI2hc7=W-2P*ZWk+F4?i!xS!;3O0KXA=@}U_G z#u+x+9tH^g)21!u9?uEJzYKU;2Fy}8D*Kk1nwUn5WzX@HPJW(FYkdarV*zt?+JX4Gc*@U8y1|LENYH7rMs8lC1J5 zDi9wY+f83O z$Fa}ZQ=>vpWUsS$g}A@UpAt#TV+qHk>mreymxwBh@rdHKQ`X^Z<~}t(Sw*gjpn{>j zXDm|sfN>*u*G)IYX^%!UXrByrjZ^jpvv$BmKC`{&LdN=&J)h&4Pqy9UPUobFmO(-u z*ZN9~wpC&KQ)V91qJFs=1Y0zLUTMpC-pU2r-NdUph!Mf51!HiKx3|eEi-;TUO+qxR z!lE+!yDev+G1}YfTO3`} zHHu4c2=4Cg?rs5sdvJHl3=A&8-8E=%cXtnv;7)LN2AjkEe$RFO!Sr->?OIZ6GdD%n z*B&aEjTO+7xP{$SUS*g_0&&wN%VL6{at)noX8y3IKRePT?$1}5?9luTuD*|=FdVOC z@T#39%(mN-^~pn81vqfT}8{g%UPTTG)UzF9Wy!(8X35jZFDnc?h+dFM(?3^9p z*M}P>t$G^{Y~Sd(LXg83ZnvHP-u98@9_ar0!=qD!f(3olGLs#z`m5lW^2(@~Qjc_Y z;Rk45B8FQoB(-k7?kuU81j{q8!{6Fd2M(hS(kM{4afmX%^2|+}FK7e5eEr%Mm4yYB zgpfRDn~)B>^ru(yghhaK1cYIr;KY?ZjGgvS6*$)Ye!KeUD&Vt#;tQoKN z6m@Q%N!O)Dky{v%D5T<$L2xh10$S@NvK6T_BWQ9RuAM-JviHgNo?pcfCnwv?>wi38 zGURp%s=^g82Lm1NvY-d(KKRx6u?p4ap7IDFGZvw)yGi!JsUWKEEJ)NG{@t=L4kr*C zWGws8fZRt9U77jW*e?KOA?XCwM$Htv>N7J{b4wTnibUnbE=uV?tLUWJq42;TiZPg` z>e;nGk0W#OQ}Cy=3}}+I=+Km9#j6n|K!q&vw#&PN`IPpqSDazS+Mu(>XYpT4z?yz3 zC+x1$=ZL0Sq>^)O4oT1Rc_#+k@n7j#`ZA0ID~by37ijmoC`_e|2&q2*|I-M=bKYt) z{yxT6H43EulO8+sNo@R0XC_}Db#^`i3$D=q`Nv@wfBNCzM=h)OK z)taT85KM!lvq*0+AJmCnGxFPzq_br!T!_6x`;V5A?xyx52RiPM?{G+8j1t=;syEPw zkeq#qmP#)t`Q6nl2S1mLlVksLS}o_`zrCU+F&HhraX`4m@wWjz^WQXRVHlab=>0Pc zb7yYN2*19G&)h^rLt~nRp+Cc#e$e|B^U2#O2ZgfnxyyRBC5{1i;EULs|3u4wV?!;( z`BfLtiv#X;*i`gQlhTs3Bps2OT5cL(apy8)Aat-&nPNfv{t4Y~B7&!)w1zeC=!Y_o zU=bkk(F!Ij{pJx8*gFjx1f zG*24acYw>G`#CAch(h_}a7GLEuKR9$EO@wDZGN#uzw)vUD|oJ{z5N$X$+u!~VYK#D zC-3_gf$2+mq!B!3RrQ_zFRKD<{oid*a-6**ZbH=i(pvyI z4&8jAugri}KL0(?MC&#A>W9NZ`js4An60Il&{aOuLL}F&dh4oa8t28XwUoO>jb!{|dk}_ZGaX{*`8EK((V(_#~k;jrM zR@MVMEEa~9M#NdxfqfK5p;XGQEDfg6kgl_LM?IS$u+atK1K$2!M|RwuZAe94#nGMC zK;^#4Va~KHR3BNK8rJoe8e+y!IFzz4d&v@Aq>JLOQ-gOznD0KyGp-C2a~pzUfL<*W z&az5KSHmKy+&l~5-$EbNzcv`LU4;wjS_b^rR{0ibKU_4cLYJuT`Rv+u5*Be}OnyOu zSp9|*(iC3|n4jwB7`}{5>@I-s8WwWC5M4HLph-B->4&_Za^}<34JxD%T93oEe^>fT zEm|Cy&smmcD^vl#L4JQi4o)lf(J5v8oiayF^L?hNqm<0V3mjiu$4H;SN2+CQTM6oxWbQI`Sy;ce_5(S;G@UT1Cdb{3HRJn8 zm^N6eoFKhIHg$^+w|}<*<1D@#i+|nkC_=lYfXsftKYs$AibdmO@iH_NWK2|dx*#T1 z1Yu3#dk$LAue8Ftf76!i@cE0*bITL_r5>~`;>?&%HFCM`-&al93(NSTB>~|B6jU$Q zS@l84PkhNsibFiHfK+5Vbo+M31H&)%4TD7h%&wsze3c?!E@k;lG_ec5YUe5A^&zAv zXn89ch&8i5e7Z@Q#Xd-6UWG@yn8!;prHeT!kY5W~?L5Bte;byWyAZ!%ha$7A&B+ct z<~laot9+iKnq) znVv-c_G>1W2#Q#+e{0s|vS-p2bNcC3_kvi>M^1mr(o31iW=wtVf?3uii+7eJ_!AnL z$t*hcpG;oK>1gKbT)Rbf@ver3z@U!`iF-i^dvLXlp-zEH@4(i=vhO0vIUw@dMkbo; z%U2PcHCS>~7;pogUl%KBh8e0EDnY2mQ7hxseCK09f<@*3M6$CRkj=$@4o6WL)Nv-$ zcYTb=PzeU|Cvr_JH@as;Ft>E}C++va;ER7Hx+dhJ+5BNCA+MEz@Jf+ag!vCz@hLQl ztXn&ORCGGgt(@-Ap}vIDA(ek2wCFuiWU6!|6-pcy(4|9@p~M~@qL|UOrJ}&EXDTMd zRvSXXA~54ZaMyLPPGCy^-0-vLk4Vtedbv1<1W@7+^4TYI)RRra@eAPlu4A2NtSadQ zRCH?{yj5ShHK5OCwal!{E8S}*hLM06njl;zi0QzDqP4~N6T=KvrV&~`H;;zzvoAT; zC(+mv(xrqj|KLrLm*6lQQsfn;*p!eor>Aj~aGr6n@0 zy39C<&IY{}iiCVbC#if2Q|BKKZc80yFon#|f4HQdv?{NXs<@icpVhRhq@w1o_7Qdw z`4F!*ph_EBm(@uwkos^1kx{8i%bS|=%w6pIquW^fQ~?>c=|+ix5lEzTE>HFyI@zyu zTNuM|#jO0Q#E~qNiK*H4fjxFM+l}u;ZmOzwRQw2D&tvWYXIcJLle77_yTl>5=wPCH z(jcG4bUW!jG6Y95nq_%tv1%+B++{1N75EsK3sm|ru9Mvh+M4X;rT_U-5Wv06X*QI9 ze`iW|G($4xG~`6x1;a0}vej{yN~hAg^Q}8);`Px9ji1pYqw)0CLx1AhHZfukWU3)> zchqr7`8jwWO_8iMhg~7j&Mk|+#3s>&NSh1kp+mF%x%G6{neoNx&Tg7=cQTD~>?3C5 z)0JuF@F6-xJz3F!Re+~5lxChFQJjL}U5Hh~(c(+gfHi^FT_QwS4SIv$R1&ZVU=`yo z8J!=i!FwhOuY%v*9?g)1?Ny0r87${6u2t!__Qxj1lFb=n{B?-RI$4Op#5B1|I7=ZN zhuk*OhOJQ;^nXbY|1D@HLWDiDY%;S6sT85KGIU@D6pRN$?=>Vy$DhDxAJdb|^itBGV@G55axNn+Z) zkW1R-XL<9{Bnm8~Z2-K4t=39cUdZAIt@2-TPSrrRffQ~9RJcOSSSFeIB_xH{sp}b9 z61C{~mW?5dx+K@uLd|!=(eXdrnaDlG&!})*k!Fl}Z}U4Pv<465DF5mAALo;BSf6{C|MXxf}K zS|)Uji!A~pOv~o#s^=k?gO&J1JDQ2`)k;D`Q zv_~4$DA+QVN|Pyi8ufxXPjnnHN4g@I-OnctsDO#(N7}iTUM9Q9$jCYrM<&6?b_BMcjfS)-exgnPlq6 z)DqcYWcpZzA~_WEm+P6$YezJ!pPQKQomVCA2U1v8ykC@8st=f;w<-1R8>|Qzv}8QO zvN2hyEH5k~Qz|N7p6$v8P#TQ5vFUgxPZ0p2`v49Sx1ekQL54D-9s7cI&VoW#0W;7; zVcW)L8xIneDk|mQ_kiiywcG4T+C}u1G)STmTa1nMNdXx=&Xo=nn3RzL^V^Ui>k)oI zS~jzf*Ud@;#`t)nY97x=hf_eXDMWcTiEYr;ak1i$uAPhF-=$pM)!Q8@TF0vlGq(^|?_wt$Z*TU~IDPLKGtHP>lvqxpLGh#F+cMyJO6l zBd2{lwOkf1sm$aMk(p%5Zc1PP{(QJUf87h^jzLw7yK=4-`QLnR(l=JTAW10l%85jR zem4n*^Cv;lP|ox({~52%04^ANWoS`j4@V{N>-<7=@ir#$dn)`Y+^GXvxWIqirB)It zmJTnS@QR9)oW>&CFCx%lV6|zef0m>r$ordQOisW$5pSHd^lO3nKg+`(ka;B z)UucPiIY-`17CtGp3e#AUR9}gd8S*x~WCW-vN;Du95&ea%S? zgP7{IRTdtX(z*s?YITg_D=OA%xMV!+sqqS_dLxgO3Yfe%+xn#dd}ErpyvIRZTdu2CA>gkrL(8ZQ(Q5U ztl)=vK)qJ-?@MU zf=QkB8+Ba|p`2EbMNICm)0zhzY;P7hw18>EQtP`--6s6D>JY!_qR*T{b+v;&|NU_C zkI*W#I3FU&tZqq^9MDKduggj-$$0u6g@M6)CRXI$xRDK+sNzgSG)%LIM6h9^YR%(e z2t_MwuBQ^(h-1I}6rqDs^;aw-oO|%5=90UNM6BDyVIEd+!#{qZyqD7R z?+6OWqVAoMNz`^Ui%ebpba}Z8v&@Ff=4JV#$KAETu}{|RJT|ao3aZ9?HrOD$`q#`n zMzFMXP6e$Eze$@>aekW&js97}vWDY#Nw^L-4X(FT`>YY{WJ{x0`JS(HEZDrnu87VI zfb&Jg;f;Rc!)A_~Phzh9Q_I<@DA|%#X()f6L}r!# zm0FV!V-K$VqQN~1N0)=pSo{su?9*GHiP4i-lacx@H-8A)S5Hj;fI2+yAt@$yL&NX4 zm@t@i(;a)VrM&flCCM;$f4THAG}EBFvU!8QNQ}lws9_SlSgdC1JaqWTaULc@xlduj z6zc8GiKJ_!2`!#?e7e0E5wL)QXkw2w z^AXMBY#s^NGVXT2>1o*>j>9j(=~<3nqM~c}##kbo*iVYI)yw&z{3w!yT2u6_B@DTL zR~cvZ*4svF_?2U;zD*g#%sx!yfqqW#RY9*Jx-AH5myqh#^0pD^vGaqY*AgMfuC(sp z{s-361o=aGV61CG1c8a|yrXs^Dm^C3*pVIn^O#Khr=XygulY#uk4>h47TE+~k>(-!=}l86J88I`u}?`c*T)=3pcIvMhfm zCyG3~P=-)XBS++RsH5+_Qc#x=VmTv`69hw3biw@oxq{1#vmE!bkDMyOo6Y#I&Rjt0 z(xeU-LYm~gblleeG>YukEvzC6U*=sk&Z#0D@h&851tG5e&+4-E5|Z=!Je7Pfnq-!@ zI&Xt6sd%s$r#*4#N-lJG`cthKPX(3{IUE6>mrpRF$qiS6-K=E;j&y!|BP`d2t2x{l zKv%Dff2sXjakgZQS)C9u`h)oh#r7mGkN=G;<6@7YynV$$6D^SI(tT)KDC7$ZJ5HP35&#^dc}keUbUig zp%DowoHxfswq4#AwtDPBDY;pQM#Jyxj~R0AmWNrRQbZ)5&PaGmaVTFjS)*+ysv`^? zfcgNZNU(t7EgFUMih&!w6ii<}%))+l2`@O-dczK%G{uBV3vwkTcx+3blOO}sf)pz^ zu#u4GbvEf93nrX4hS^v(2dEpVM|qpdOQ zs*apxL>gqsbbA~O*k#2)hs*y_fzJIw z>kgDuMm6M))Z{odf3y(Fp-8&<>x?N+$VCD*I+0d>%3_Ex)~Y^H@(|B1K`pZr%w073^ZtweAeLds_`Li&@k&r$~AKK=Dsc#S3d zZ%+t7X+H^${*>-TkKSWh>d}KF{*jqGqf{nrc!Zk9vs z{f3}8Q0#IkM_hbnrOo?dy?s!xmwSG<0MdRdOcVg31%mb`=KJ@Vb*cC{SN12<-zIim zOO(^!Zb~NI_HV2@pPsFV_m9t-uCxFe4|aW~ zOx3Q;wmbYfE${CsZS_5acU9ZZ=cZmxebI#p!tPR%8aNyA`7)BJX3{@uOVWs!35Bz6 zScy_FRCh|tutUw#*}wim4X-kvc?t`v)>0l2@{WV-f+Yf`6Snk`z2BtA^tQKC)6{1lisGgfa`(b!Gd1$$wu#;W)$z8 z0b0O)iSGIR65EqQZI?ZJ&sCDKP>wJS!rtR9hS#Gvcz5R|pqB2k$?Dy_d`;8=@}{Cb!P{TV`KGPn9#c0*!m?c zbL5Bbx6jz9<3V_HYF}L$M_o+5tzogKBwgS{FnI40L41EE6F_IKrt|}@3LUZo92p4p z&kx|t$?r#4nCdHOdw;et`6=nq>fqipK5oxAA8rQY3%fC!@jEQqAk#f>I1aN_>sqOV z*uSi4s-9GwhnwJUC_RQJ>u-fc0#s@pNr5HAsHNpgWu>}k5)LM{u5v_Qx9Sr~pSPL3t2XCgua{qawmZGj)SAI=tLR~xtdHuFFa@Gloy zvm*;z&vD|ADU^qGpZwNz6JJ4V_c|I}i~WML?*9ji?RHKgPPc1Ygw*1USsR^8Lxnxx zDjwh2ZWhnr2GpoKYnh^)7ookI-E~E?g68CmQm@dmm=Ad(PMTFZyWz7cKUumI_cPje zrCMNfJuS~pz|$31Sp94!D>F=s%o!C*)`q%}4X-Q5Pc>3a*3!j1+0+C0V@+wFw=6Dg zN~Be;?8*>RSzQHCS~G+rx3)B&+34 zTYH|*6Iq5%YfTAS@kZ>WVp2m1_daBbdx4Fc5ePZ|yW#igB|?o`z=lx!rxC40Eq6YE ztBNrI%4-&}k?HyqPX)2yU?im)Z2I@;`9 zt&EDQ95J|ke|A`6b!xwlg1UPzfty)h$+p+RF$KfqQcLHJ->;+MGzhn^s_?U?c5yx0 z64?5uy?f0M%O8i#*{C%E$>ow}$pMP&4C1AY$3Cq_V5T!-_luk4Wdn|^LzKY?@y>c6 zsBKp4qMJPJXsxh^G6^Z0l-r(Ga+ zIy<)+<-p@~Qp6>uqEvs3^;MkXTwz%U<)S z%k++*v)T%cAQsDbHYNXv(ykO1PZe|^Pp}puq)o0K7sU$Eq-igkX0g4q3z^43Qo*sz zuS|n~VF+p;fhnO14<)L7$qE-p&F(Tvi^Ilc4!OyTd!`Dac>ZqM^R-V?Y9MZ$s3>iS zj`?*a=P%l0Wht>;?Mm{v3<77}EA7ftq7jme`9Q!DnhcF@_}LGzQBN-Z!@5j0=Zu17 zvP#wi`U&h|+w&Mo^*+kp-xc>BVarzt$49582Tgk|v2j0TJ9o^v^qe2G-EIn>1w~xm zMvw!>$N)EqgDj9ut1EKl_kRT6oa6L(NqFZLmaHSu#K-pRqh!im>1$_KE#e1AeKwta zNSv)~yD1+}YrCDdMAxOB25fq}sy+elqqmwaMebv|JrzEg0M5NYZ+}rH#X^-Mw1cIE zwmm(U|J(b4c<=Pa-7jJ@Ceuy$fLZM|==f=N570Wk5W{TWie#}AdR#@A&KbsD3eQm_ zN1Fm}d>+!k8H$=ph63|+)`GSqQP?&w!G3=U)zCN_(yU8UdWqj|W@x$02#wtMkl?<>Ik#CfC zA0cuQeeJT2VY(_06Exz5>d^CYEfAL!GFChy#2>CU2^-NV=s@&6Uh(X9R>UR$Wr2P9 z5b~=0kU9&R?s;0NT}GMhsiT3}+gi5$ubLriVGyq|0RijvxFPEw&A@cH*k+=Zj*DBN zx}-yfFLBkrLXwsW%t-G`H{?Wb&GZoG&n)I0aJXrG47P+G!In#Dgv%nSn&!p1clC2Y zfEMir9@sX4J~b2N>t7^m;{o(nwuLNHxW&uLz2#{WvOXy^QgkwnRPJAKTD%lUy>j0(j;&EbYjawr&D<9qSlyid*iWhR3~;X;#quXWE+LUkp}7;*C>JW79qo-BY2_dfmb zKUdxopn)}QVSn4#m2(dy_`l35j8upT;MR(Tn@+9|1G`gb zDSZ6NqE=CO=DrIZ6w_y}pV;!l*u7Am6> zqwAG8zfxSDg)jC{?_>)-+mSc-UOQ%?csn)SgjD_WM@4nlol!pZzLP^-_?)p~MhX5y z@rT#2+v1iLGLn`H;dj|-7HQwB%;FNs=>6d_eaXqyNqbHfc*bJlDen*WZ*i^=;;yI~ zejBMw9CTUE@X@^SDFSccWY8&pQ>m2LlDu+f>-B^hNev1;WmlHsDFp{ImOcQR_Y*5( zUcRX|IE+6uI9}NoY?>aWUVu$Y$9oNw)WN+01gR*0ou2m};=)pu~yG z+md&3X45)xWdoUbL(8*vTFRJ)~^>q%v$yh!hhjXqG=*`Rf`d+!d zw+piQbV=Cs!D)>^7GBAn&W-Xd^*DYu`h6M*;)TaZCgh*EpX-)86ud%29N+$d77qM5 zD>H&yv{J51KTMbJdjeh)nMp4sAzL)K4=>v_&!2Z#p9J`hJsS~e2AL7mh6Y-I7Bz^q z&rrMaB?1)!b8MG_u+A$DDvj(P*ne@DW=Rg+020y^0E}1pw*L~wAirMuZK%u^9#04wv(AYk9KIX;sIIfsUipJ6G?@Q* zYg4#i7?&C^%=XKzzH*x-VLkGlAlsq`8I!=98C#Jlazaody--->a5ru2@FvVkcpB$V z)3ykHX&-lCf|a2LTG=--QX9#f2tU}8Y$oecut9*Z9-zw)O%gWOm+@=1e@vQZE!}~; zZjNu<0*#!iOG~vBp~QNHxK&`{Q26O~pzQEi^dDUGe})ae{b@4;{ikV0!oW$oB0R(e z6}lp{j68<;gA<#Wekhi|ROSU=GY8mj)G;EX(mNv8^qovpgxM#kY#X!B@Qokph@N`s z8aeX@d(Yzx-xBG`Vle#g=wFjTw>aL9{yr@)Pr7X6ayf4eYak5^BVpcU7g&htr9i`$ z^ZF0L*;;Bwz7g3 z6^c1*J+{%gjm^hAe^&yli=6WwU2VN2gP>41#=b`QFs9QK6e?$G6}ro{#h+guvWRyCEjj_A#QRE#L0= z^y_uVcDI=Kxj3+`7Sc!k2sVxgg2Z(?8`{U{uEx!b9(3>LK8sO8Yqa*iM}XE}`ZfZl zo0sCYq{jTAbPplBogrIfzIS4v^ZljW4_q1Z2D|5jej`{l=#+nbvHu|5{-F!OKp1s* z`|tw*aqM6T**j=aE8LH|S&x&J{KAKlJ82XASEc-|X&VM2kVLhJrjzDa^{S6NgQYi< zUjN|)5~397E)9v{PbfY2HD&%|HKLtQvIJ=O5}I(RSfXyZLIeG9I>u|Yy!&rr3irh} zd?gF|rCkKRpz^iPzt1A&cg2^XA3Slmk{*<{#>|F9rIeCCvt$Lc#>-pcpDA@(kjC4L zCuca7M5%7(M&ZTcaq4Bp!!8kS%D7!u+#KeFG;&&^c3o+|JJF8+DZ%xf^j`JeiF0dC zdZJ?8w_0+v>Yq~O-y(hR`4;R>WZ!~bUyf!We;QQ8O*CHjXF*T){V~iLW;2cTPhiAV9>8 z>1aU$TA~n{7wMW{GjAga`m%=)~a8=GZ+&l_F9N~y9KWJ(YMa|hw3e%dl9~!7{NM!mjmelO{wdRWt{n2`b zOgU@lS_N4Jsq~N4AXt zn}*-g#q`X&oysHL6-%rwk}U^$zf%#+&K@p`Eh%<{Wmxw-+oX#b3BqHxbNe_s@J{Td z-SjPUa0>EXQpkA}|1y1u4#~be;NP_o4&XtgGZ47&zas0rC_VKc0a(0a(BudoK17+m zFW0}k8wkwcX6YZC?}XzIGJw>C9iM~m?+$lnh6Z#ZuE%X zxZj-prx%H6->52(p`T3esJhRfBXl;4S_8*d*{3{g6f@jY)PQwRdh|_+2IlK3v>y|p z8yE7VJ6-7B4Gwgo9M63qx2VE;JEo6SNT^<>uuHmvW0qjD9OrYW>vhwxK)bZQRT@55 ze8%>)tCO9g5u9OUKAHr2GvF7U2ORwqQ@iXM8&e5MrXwe2#lcKKDe5r}lpj5fMfk<^ zz;DKqe^XOo612KVeCA72^QOKRvM&Sqpz-%!$UewnY0Gs()Bj9h)Mj}Gu-i>4US!e# zhjKGco(*)F4+#=|tG;AuwcSjBL}2KmdyQn{i$Bd_EWe<)eh)Zs0S*Q1`GD?S4Y%L- zkAv&Ki3E&p4}_t}Xb&EJ7+3HhnMexR+@ zdkSnR#VfX$Z)1#SQPdvR$7v{$lC#;RRyd^KS>?HBL<^%ABR#;*6c7Id%21hsV}ZuZXGa%j#q; z8FnD?S&Oi9Juv0<-}a>;*A=zkh(+L@Vj$>kHb6Y@d1S%+c)o;x2gLGDtT?C++8y+M zA^n(-UM44rNk+9u<9jdb_Zj2scRW7At`ks=+PhwVV@V{v8Vt}1uRK9oc6#$~#+7mm zGzpOVEPT2zxj)rt$65ZhMBAD|T{xO*(4xE4sJC&ZQw(3)o-yLOl~MN${Zm-@8{uUQ z%M42j#bbJ{YCvLwHcEZPwuN6=Rz0&}E_J~HGtl2!ndjzDdAXXzZ$b^ebYAwmW4ZK6 zIx2NjifXKF-&Vp^&!E`nG>FI&Yj;p73ns1y$vW%W{qg{h{YFQt$cFT>%XJ?(goi$CY?suH1|L6$luRetNRpXBbua878 zQj0J6{HUbCV!UQbatNCNNM#!v<&6T!$uG3eH13hW(R0?(uy?4 zpaCCnz{RyR%$LcFB!_7-0iDI$>I&xA>DbR#uu=U(d`F`bp<~${(BTto{#N`ZZ;{lp zSlq%Lbb?V(>DKmMqPc=^#us67Y|a+U(OL(U?B>EyeZ;Y$6zKkDB}F)f=!yA74K=(8 zw2?+Bn7O%MKc6k6g&Ufm6}kMeTTL3Xz8Q*TKC{I~hzZnJZZhh}Iu$lVp^Vy2P10MF z$$g*daau7I@^+7xzoI9*$uwxp(*DT6=rOJ%*6Q~-^nRZ(=O7fg= z=Ix|)G|-3Y^w3n--meL9^_7rY(1R@GK)2URVbKIQ`3m`0CT9Lfh5)W#12})q=REol z14OG3)_WY;y3XsQI0D+Q6QG_dYkPV`9t52+RH`rs5WB!1Odb|Q1HbaOkgws1$==*w zuqg^|17Si>LTbQ57vm_aE~u83-)o;hYy3#lEf)59#AtOOH0#{V_Tr&M$s{Lv)lbK1 z+K7W#_;ES+^39VGzE^*&E&Uq@V(_hIq&+dIEV%w}|DzZZzwT%hSLIv>chTtjZ;WH{ zjzQfepnpJ8aIE2R>O79$l z>o&I96zt+)#w+nl(`t#cVKT6hw@p5-2=-ePo||Cx0AE~#)mY#zbNc{FMQEH z=-hUVKu+AjMxGXi<%gFq13!49QSLNC_gA{}a75G^bR3p`h50B@?9H?&dI_oP0Ly`M0=C zS48;yf`8mDd7is6Z?gej$K}s$#K4JzzxqhM_on$*OD5ADUxC*p(dpNNYJx=0uMmwZ zapgZyxeuRZ?IuamKRUdAY3C>p#x}v9&}klrbHnORC6!fQ8-v9#X_RuAOs4$P;2R*(`mpsh9?lTl1ylO*cICS^-ua_tAey@>iA%R; z*PI`x(VKbF;;X;RH%sk?Vy|7j$>s-86KUr+%=+0X*w0G&Xs+6SiT0Qssot8TDxul$e-o(-lZ(O?1twCp)Rggu{9sjvj@9pHn zPW)TwhCd|t;V(OIqsAz!v4u4KGMa-HvD4_8BspyC#m^$@NqFns8F*E%F*J8})cZeABsP2u+tiAuS%W{4pPZrtjt-QA>=^_9K;#hBzcv9() zpE8HvSxFm4WB6$=@k*%E;>m~fX(NU;WVe(&8&}6$%WE}wk}zkyj)}qlsq1JkG0=ye zRUdC?NL0qQ>d0$fo%p)qx$hdrUMA+Xn@tFT~{J1g-0$V)n?mzThy$P@xcYTH>*6;rjP7LX-eJ#sXTdt?)U^eVT$9JLta=$l5 z%}dWH6lr!uk*@D!tZIMkYs(nl>I8%#64qAVSNr=Vzdz~C%;E;F`eL&Z`X)=(kakwe zb^3<1V9uj)voURIt^H!A9&l$L6z7s7RN9b4JiLIQ?}W-_(GJC?3TGu)$kYL^@o-iuD9dB8Jm=ojhgw zbj!YG`Z|7yA=dL$`bwTa4ExmmxMigtaJ8XK+|#vDKaC=wu7{W90dIE(-~N)IC-%B5 z?Y(B)%Ia?lIOly|t*m8dMwnEViJdL&Z62$;hQxwr-Jm)~HC&kFtFW`0tPWdMn2OOF zD{12bJl}pjaX|%^UTIk^i|NE?Po@2ATgOToalNq*=}^oz&fkL@pY1-Kp%;(cr^J-E z#|os6)RwCaw!h;I+;|qnH0ax4_AU}3V9?PUw?Genh`Ej(s}&k^p4g-1-}I?i$*r6+ zYo~*yR=-ax&k@QJlYolZT}jO^-|A5|^)AlttbVOnNv!t5EmTVckJZe#n(}UUbi(*$ zo!I`8rKr8jtlfzL%Zz+>ylC!tA35D~1ucq$`9U-9o1mN4a~sHr{Mq%RnDvs8PplX7 zXv5G;jgR;@3=!Z~k^pf3*7Vkjda0+yWDWVI_F5d2I}|uiz@8|`BFvsW8-6$v$PvKn zy3W>j-m@{YM7JJydCO@65e|shi3VNoKdt8nm^*F)wcg`rE!aoj5LJLrHUZx@Vp9}%rTdtUAuy{`vK1lHY&S_xe}-a{FPA-Ybz z$dJZ!u{zVgd>1CQ_;C-*uPo`(pLSo64RZ(}N8Cr1{xi3{7ca*wMdZ8}?WnnqZG9PB z%2Xa)8Ak{G`gQckiODAeLqiAcqlaXHLljz=e$I*0ekmr!)bHVrxpL+iUw+=KEl{O?XDNEe&p;f;Qg)VV#qn@>h!?@beNu&A4WPGOieCbFw)D} z`ElNlzHL4R9Em<0Q4$ic_5`$%UY$(VvJtanHn(n)UpL}(?;~0dX-}Z1 zhp|qwnE1C{^;=aBTjjN3@h5ehphRGd%ytdnLeGThZj2JS>-J*p^?r$cRhhl(?BzN{ z!-8Tp=-Wq35MaAknCMVKgNt2?R!jNQ9lQ89IKEpnfIWMT-|1^>9q`xKBxf2nkKO7{ zWkW?=Pr8JQOH)7l%g)|O%|zBePuidS5qf<;Z_0V(x~*`wU&Of4C>nLSE!9p{>EH)C zj4{Ch;@s(}p+|o4aFXpk#r8lvVMHD45FuZ+{Ibc6%Qk|bf9TINRw+GRRq3eVEQi8q zZ7>ufQ%bp2nF>T&g&Z`9HOPrxzHKyb{WomTj7*Go4!Jn&a2l zfhRZ*iTN+%RtLPB>)}w{hGd6HqqjpVdmxL(%?!p(x5M+vQ;YwkwEe%oXT@KF*z_qpG|8Y zQfKCMk1b>G!Pq5oj_ZM^Oj~mC!MHVDg|9Z*#1QqHt?s-^{(opBKLn2_#1ASFVLh(+ z@31sP;`k;ywS|+XZYQ&E^TTys%)JxbiMpi7-OgAr`oBc|B{5Win=~5z_yhpGqJ2Gf z@Yb=JSfR2Xch25IfBoJ)<^CyY%X&Ypo+vw?g7h|b!dY?VtyMIXpvF`}um zXqC@K4Y*Ay;$g+ioaWSO=Fr_!O4E+=MN-V5keWH>H@s^w{zk?quke6mk!d+jaF^+$ zNO!iv2feHF?XMqqrI9>2e>9w?EcQu1g6Jo}O10w_Jl$>P%GB}3^-%(}XCJy6jWnzR z7Yr$s36azxo5_!7;&UY4Gwrf8T6XmWldQ1^ykTRh~Sde;lb69@PAt&K){UZrpjn?Xzsj zg^T$*_wel>53&Z~n*vux)falM29&+`%%R#Ki7)B$qaOouhh2I2x^08g=%aU)bU*8d z3*%A5_3OGkkJOA+L%>p+f(k< z939Bv8KU+4!C^lUp9a-#{VY@|YSq=D8rN}sk~3cTsw9~^2%jZ=tRyRN`ngw7BXo+L z*$OYg_qY;`4}{VuaAEc6=&$o=@ckPepQ6>2k<V`2 z$q3`DCk{+<>+|cO7xG)v_i59}-Zu=;An0U|TnM$C|4QtI>vZd${8%4iICGh^BtOrg z12e*MUjHc4&~>%{F-#bnP;p<7v)kw1Hj&$4An^>LoTq%ilr83nmCZKXE3o+6H<8CP zlnA&zA#!!3n9Q9cd^$snXG82OUEw6UXb{HZW;*nn>D$6qBk<$C_8Z9dUfWxoVR{+# zrdMCT3SH#}|EVs-obs5Y4iRR7z5mjFEzaE0 z{6s8NzlZio_(8T2de>uoU*P=XvZBZgU1)}c!8ybIUVUed(E+M)|k*!*vUvuEzy5k;Tn3-8;sek}AIF6RZ0ySdZ=jU2E6N z!&{y2LVv2}(8f_)!`gY(by_C>P~j9vOt2~v?Yq)onOEl+TJ1)YfR%T^)TE`(=WMAd zm>cZK(b4n!+qMNfmTp=IW89K6pS2~-*|y3tw$_hs@AFu%p}+(IRY{vw@e-CgX-!Ho zI)&wq`bS77+)9^TtJzW6Ww>%iB2&NjzKqqjA7r(CD3GtcPg{_(cS8_F>!Gptj_cIE_ZFG|?#_PVK&}7r>7H9}JL447 zAH`%&e{A5|L|axv3Bisj9t4>kF+BOWRouihPmN%5z;%aX(p!1^#UsYjO(cnb zbMi|4Js)zvGc&U}>`(>!UCK!>E$xWJD|f( zzPKsQ3ItRsXe)xsmC~>yGt3=0h=&)c#RSQqJ7&w@ZHz6hW9d?*1p{>SyuI$+neRM} z`e0Oh&2S2{Dogf22aWC00p59xg~#=Ra)h z&wdp3O^m*xIoYB?;4$mLP%=wmHqomPVn;ma3x0gmk z`5u5gu{h6rXLb~n<{dk39o%v;> zGjYHQN9A5#{neikVOH%RiCxJT$oQ6G08`3H(3mlCTP}m`AWdkZpk27v##F1jWl26H zM3htQ>E#PanvQIa7%BTHtW$})2m45aSWdcp)uu@j#CAwzAMaA%Eral*Pd@4&`NU7! zhkoV*%SOL3gBthk`F!@u6Mx;o67|pR&gHuUZnj%)zj@K){2@>umTcqIS6-XX9*#|4 zG*aV~_=M*d+l|eC7Y;MNu>?FHPqSqi__`aeT{evk-N;@m6#sSgI%~)9*Z7g9vH9{} z|98Ld&p-PjRspow5&sX%^>NE>xA@=u?O*;YCjf7BEQ~*3cWh!E_!_qcuD$l!W%fU0 zJ>bG)&u8T^xj!@f&ntlvAr;&z8ET^(YPxF&*>*0gBA#MaFU)16U)p!W1RCQ|h4-Aq zY7MK~=Wm7ofq7o`GwsN+4dXKsuS|Ak!C60T-wf)av3ZSEOb)$LR}78#8NTL_gRDtPwq_@Md7?qI`|a&ed|- zzI(~j`eRvvO`da+$yPZBGd!+JNWGPwKo}ZVmbA$4Vty}z&DJw}Lq}K{DFS2wQn>d1 z3{fZF`nVo=yljPF1ZI%4RW3u(I#5Wve5xaZ*|O>~9>E*4u<=~~Z~gsWvtRm+U$77U z^!u0l<{;2|@Mjx;g=1Z>uj2u9e8Wj@eRfZimV>#+2L@!&B%t z=YP8rXvb7vJO0~DxcbgaC}XG=3TtvbEP=yRej<&-GhH4D7hEmPAW%T6FOXuV1vMzVX!IUhtRf3xEE_xc!dX zeEj6>a!VjL39e_L-w%D?@kg3}+*Wz&o8Pg|9+H5IuV1L?^HumiY<>NW*ZFuE&`mer zwEX1ra`CTe^Q$ESW1zq0nrrNidv3S)9I!RsLiob7FD{Rej@uS2tNdPMm*>@r8Ers}qH{GE`=??<~{pk*Ok;)n!O#y+=Mc zDVv!Nh49hJMwt;WKbz_W<>jS5zw)>KhJEU{f61PB@8io$bRgglV<0@02<-BAgvT-7 z?04(!w=Pc#jOY36hRw(NTQ7iEzAs;9FmR+Ma*r z`DF(?9&McOB$#d+K%Icf!XIu%PWW5Ex-RS|L~Bky^f7zSLOexbKMQs`+Gn5 z#PZ93*X6tYzhAaqw?k|tzy`L)+X%-m5?;7)!Jav+4jChgzvK9CN8|O$&wby+8yu^_ z_-NpL)B1iio~-M}8^{KZza{?5?ceIM1c+8o`p*8OUEL0`O6Kgu3P2BU>(k4hB>`9) z97F2-k)B9n9SxQc#WA+0|HIn~H|-d#+Y&|BUAU(lSQ&uVG7xr)PD5Fq*EZI6jcy7@ z$w^C2^m#KM;zm7GJ$!}NvN7J$&dkf-|u zz0`Rz3T~W$q=6(Vj%~*ivYo-Cd5)?Yj$-~&TGl(<5A~n=_y_G5KlO9=(NF&L@*3Z9 zkCd)iA>fBG_^sJ7{*A{C@n*mA!$Md%?%cV#aNO@d(=;ht-g=H(+iQJ3a7kiNNupY4~9pZU6MY`tR-4S6(}@5V_+2 z;nR3>U?h0sb%c+`L-b#;kfND0mD*szgOo(7> zU)y^kg~^7#SAgwjT_#uXxhk|ex5kJ0`Sswla+o25(~K$R$ixk9x`J@^0a!t>2%rPI zt8v88QFV|>wk)-@UFqGxX56INMqa(2d5boztpYtXU1-Lp+)*^o|$XqlJ%zzHEBvr%!&NYW)iTA z8xDj2nDzY9Z+_A~{Lv5CeGlDt^g}u)4Dv%c<_taf7pmNF(~b7-_djm8-Fd4$^sWb& z)rrFlbG+_#?hhCR_r_bJ5sDRJijKhpM2A5?zVw%08OzrG?QcCjUL$*07JiT2a@#F- z{*ZheG6B=uok)DQB%mLN0>dx&K5+N4=`MfH_YL_!Y&mA$Pk-~7<(D0mJKtaViu?0K zjTz(i&lB%^%x=5=R=@FpvylugFQ!_aKnaE(H~X>Vf7>f>Dt87o8Nkt?F3_%$8Ouui zUO7j}DK^1#`qBIMW*25qWjB}8+2+*-{~GHM+uw};S6|g}{QQi6>K`%<3#>(Q14S-nmO6IK{D;(i9cb@H6 z!eAU+olcwoE@s_BrL4jbQ~yaz%`HhIkf*gWNH}3Bg!pyy-A| z9{2nI@&Do<9q#vkVg$YA#VIJG$B$}|YyEnCAAd)HzW>2{?SmirfZcvrvcGikvVH68 zPc7rj*g&{!=Hfmr4T7_=(1s)M6WGh%fTs`luK)1g{IR|8{EN%I?2#CaCFyZX09e`H z8*uvIxN|th`vCsg|L0#UPhMQQc<~MS4=aw_IUoClpE}&;xy?pHW98=uCgI43GnnHIUNGIT)L-&WqA~YoH974#2tzj^;opV}zF$(!PKki}G$d ztIyUFxM{C?`49)>`pg-Ccht;Xpz3G}k#ak_3p(7zn?g*!!~)TVpiRt(p5~G)<^QB? zi*2UFw-P=YvNK}}*@P-i0Qq@eF!fSBJp`)?h>%A=^tuCWJrKa*%i#b14?k)D_<#P7 z?AL$iSC;qqpBo#l#`V>phJQcmLuJ6d_zYdkZGrL5fcN~w6XU%B%S`^;-*|f2Fts~3 zA6wj~1DYx!(Kr2oJapLM!fO}DFAR=fwp(6EbngTA*e!?q!{^TL@^(WlPhag8!I?cU zdpp?iPyXP~534gT*^AG=^yd8c@zc_~_=QjXoZo%#T?j}&FuN+o=L%UD?#_Geu=gBR zo5uSnzVq#84l4rB+VT?@GK&1T@INF;aj$J(NCb2=u1Xb)Q9Oq_h{*)Ptxe9BYmBYM zF|}2ekvd*iTt+oXq^#LOasgvVzmp2ljERbqTDqrM+D4#|Xp<%x>Z<7x2^eM%FqX?ierFdHl&o?H~N-f6w0k zlTR)$Lm8XhM!RqK8LbWkLi*+NxPLqD8ILyUb|rDuRU)!ANm?kN7TN9EfF|ArcJ*3`LEj3hr#pd zZ+-Vo`9I1Z?CKx>*awy;P_Db~x=D@Q58j^LfAinmcXGYmGk#R)kN}RS8pfv4i^~%z zb7Sm}1OFjK2EB=K)GA+Q4M-BGF2TN6#bL{b9Z<`U@ot?)&oGeWS7l&Go6Y#zw0UiA!j8Zq-w>OUrf*ILf; z3xngg3GTUn+;={2$82ONyYP)nw_C;uxh)(E9>Ib{^fwlQKo?WxvQ zV~5o^FHQH}G~p0Iy@ru40nR|a46}g*3)#$6SKBmRV~f7BPx|9c`Hy~ZrR*Z(uu3h9 z{1}v-HLQ&plB(pDrT9nyKC?Ewh+ZAE!Dvd8_NeiVgQu-}l%`<9*&@YcNpEB=6w(N- zJ<5a8yXu|t*3zD)h&7Y%kXqY8J9U9}tjd)QQ!aPrjBJ?%vz41%fyv}S`Zcq9%dmUd z-tZ#Kc4Tm<7mdg$AsIa)fDuBB3W|x2HlG`mh0s&gkz^m1{eS9bKIp&xyT4|C`yc$q zGF$e1v@bo=MEr3%=*m3C#den9r-*z_Cegi&r96 zLqlkvZbhQsYUIuKAtVN06yIeF}2Y~GtY6iCgj>sZfobT zt*MH|I%!}&$8$_3QdtvaTbnCzg$Pt&5ji{!lI2c;)+LDukz>({^<3^}*-CC1zl}Vy zW>d*B&;@K9BAPTb+gAc~a+bJO#*nSPnRB|Y^)1&5IR#n13Ids29&I6BobLInXu~%D z@&D`}`rrS@zq7p3cPy)pg1fir{r+eB{QDEA|s1GQ!LiGkf|s^n}mr#KUvO1j=6|Gg=pGNt{Pr{T*= zZm8PEz`!YKU|9iRWv>oXUO3#usn$}Z5?n8f?5n{HNuUuRC99o$X@UuGWOU9t@*<1s zKX_eqGMSODr|vGK$-0)=bIa=-c?kw%BQCqbYBToZx@Tn8lYRm89PG>XAY^OG#OO)Q zFu}Lj3!+8$;mk~BWRCWyl#R6_`gJUso?D(-US4eSso(w;|HWVbd3)%w2bNh3-sS&J zo28!8W1JhmYcPIUaJ)NUtbDw7Sh{`jxfi(t0?ra=W`X7ZQ<#A>#{2DGe&OY1W7ya* zc>CSAEpM=!Elv;d*JjVyih#~d#(NY#_orX5KmVh@v`d#Rzd8R8AI5J2yyyK-#A8oB zGJd3I{u-qJ@DtRY2w*6gdroe?<>mvncFSXeufKj_d2`@?wISd~#sB4vfnhQMt2hpO zdkK~ai40~Gmf~4hdkZ0Y#X#x|^bu>NTWGWshi7CxG0vF8+=#Uu-7SvCG!DXTa_cn% z$BG^7>u-_&s)&^@bu9ACAsk77tz?$OfMdG0w`>CRZe%#g)&`)_yFi8~139P%f5?GN zCIQv9Z9tp&t5{G9D4hUGhsf zg?jg_CXVdd7VJ^ zpozEf(w9}hM!=b+!mb<=fES*9A)fipv;Ne#zZ3h*S8TjjVeCaXf6X<^Bb9GO#&_~D zkUuukjoT(){Op&PU)_5%{tv#4MD>7KfA0t1Gxq@Oel!U{iP*o79}yZW0C(Pfr_CP{ zdf5)EOGvDLr2Ic^q<+q&eI_c^S8KLv$$f(QS07lU&GQg$fey?0xC#kZ6Jhqh&+rBSn(xF85KhCFBxJI%t%#p{7H5ZDy7sNsZ^TvSQp=i5#mb z729;Ae^%S`7vcADM1mb(WJIHBb{DYw@?Wj%Zh}aa4Vfc~Maa{ft5h{IF2w2n0Tk|u zKvS`wc8RF<5M;HBq|3}U{3m|;efD?$;cwXcKK$hI((5~TX&QP(PY{=1GrV=&7I@F2 z%S(j*AOH9NmtDMYA*0i7CIgwo8fO5!t2n6N?3-g)DNq>AXl= zQ}0r#=(5!IRT?P$mVBkBi5%^aZ2vgA=}Sh88aVo^gtzQ8>@b%8N4Wey{Gb0f_8Wiq z*Or0k)bUOo{Pj4c;}}fFVDzDn{)Bz}mp*FuJaD(Y@cc{m-KU;euF=oTkmz^EjV5cm z(k6rss{!LhH}>!U?H?WP3;*%*2D$Mx!dQ8jKP;5}@80=#UmwFvW8cJg4mSSFKmFWW z;{P?*p7;A7zTY2u7-aJ2+(JW4xW8ub33e6Rfv|McG=>@rgRu=vlI zDY4F7vJiJ!WOr39XX);3lCP7{nMwr98A9w@FUCGI{kR)u}7{s;t$o%eZ)KFqb8FG#J(Ss*1y?Q&$<^ zdtq^;mymU;ld3yq{&%9Z5`^_<;f2XVh&&P2U%QFyG|(^eJ3Rf+UrovWO)=qUd(1M& zQtM5(-sJzq|Mow#pZnF1FN4o`BOc7J|IW(sMmpbc{q=VL!}r>wk3YQZ4H(aOUwHk( ze6(*Y0WN!4W-Hm6NzgTGL1hNM;j*zLJQ9jO`n^9{W{G3}!Sy#@xA#r{fz`y_3f9(0#9ae(k z_17-sq~eFe|0xG0>~oWh{1Vn8YSo~}Dh_(0u!Of7)LFnnMnA{+(-wZAbMXHsf_Vz+ zG8R`Ia4g5D?8{sS;_-Lal9H7GsT+Nvab9Fh6=bseR{5_P1j^SqTo{O^FGa|9&b{l- z_k7w+#ES=(h;NK}1mPy!~}#zG1alCq^q(RG>9>z=##Qj;gxG$eaP)+j6X-hi-{ zhl97PvP;!$%bOv}{4)aEtS_W!ui*3sFhlm77F4WrY>zsTn`xF2qWajm_#!d12DxS+ zEWBU|=rS!iSd+w*e0Kg#DSPpE=y~erdd! z(Ds-2%Wa3@6NKEe=9A~X`@H>&|KGpXIo%ubf81k#@R0|WRjj$M`0Z=6@veaJ16p_A zGxh{r^uw*7c<#H;;kMill>d&|on?t&9KxZKlcld+O~-X?$WxHuxSbi-+}jwYA4MHk z#)zZcj|WK#midEqHJ3mtKe=Ju&nZgx?Le7OCR@C?5pq}>NZ)8 zLrhw<+Jy+O}R60CM>My@%P-&mU&}zxlhr=3~~R zvy*M`pT{X%EVH*8uCsd&%edoq!1&qPS6_KGUVY^?A8&k{_MRJF8^PTq%K3>^r||I> z!Eb%-+kO}b?9!zxarb?9`glrU{H(Ftu^jK@VkcmL#{k6R+j*OUAow@t== zjfdX#z~Mgo`uFKpLtne)ER^Sd=s77fA+upkC*rQKm6E3rpMbUSiW5jIB$K7TP8pGu@Bl$ zef+~dZVCL+@BJxOuK3GtE(s(4D`dxKqI#5l{@EAebAR>)|F{4Bzl&S%xYZwi*MoC) z#*gKCrybB~?5`NV1@L?S^4~AX)qWpu$p7*8nrqJacxvMlzx1)?2bp~5SM}YG@>nMU zx8HHAJ@n{>BA%D7e*Yq8h5ty&V$&PS=?q^RQbd*;8S zIWiuk`OSDfa?Cue0KEG%=rwc(FY=nza*}LJNpQGq=BUhCmvT663*18Hy)40nh?>d6 z>Wq%w<&h%ZWrGQ)PZN|TAXHGxyQvGq7P?eHPx1S)W1&5l5&T%T=_Nf!_1sKy@hJP4 zskw~rISSeVawS%1$g-P8jx6Kmg_~KCQ7@uUv+O3D_niMv|Cj%ree9DTS>A(>AId?M z?YR1J%0A->igC~W$)9-lvQhArmtQ%|-Y?lpFTQdZ#1QiW7;|Z6#V){oCjVo=d*$WV z{EvSBPwk6;`Q>G1IDTAc{E*R`$@ES+hAqGRxv%(B-*|ewFzKrN2c6Gdb3P6$Gye0x z@^RaF&%EDmhf;L>z2R^>;Jyd%^>-g`U;Oj`=3m(oxja_^z7PCIjTs%oWI4R1H5`V$ z2BjLk5HoSQkIEIx5Gyg63*-8LyU2qv!R%=A_LguRR{eX0TKOq@NluJq3N(GCxs6E@ ziJcbdUCYY!YB~StsQPb-|2hs&4>AdIX$R$<2|({rzf?y#2+16Fk%iXF$_+Td(GXRR zw2jt}wE>WAAls1jn-g^lBNH=CzU7P5Rbk*%NerB2a4p#I$@X-hU;eu*DCld7XE~{_ zi9m7(Z^5ebsw1-FmrA*n{DFrb@Q?rEN8`8t-lzQTd+!`O zr>)7o9dCN9?Sve0{D%GbU4gL-ee-QMFH6wRKK<;n$|(pP|JB5m@7?gzyz&dLUsyJX z9cIJv%1f{M_=(|LZoTE`odNGe|Go0^tM>ITf5Sfi*)PT69(j&8agzVz^!QPr1FqvI zKlT%T!;LpA$(csnxAQSK(AgzJ9CO~Fb9Op#J z%=%2Hib~R86-J}2HW-@bqna|%&o(6fqFaioqwY!#8HMF-v@^W-f{4Q*JM-&W8!*aT zItD_pb$pgyIJQXfcCB>%EAXFFSdpv78L#$Yc@faNKW#e5ilYM7DJRsF(^>{pnqY?R zR^H+D*|GFh()U4~rN{R^kap*vB&cLq(F=7;0XgD2%HSnmSo5aJ=_^@rUUSHFSSWT* z4dABrPh1Phu-b;EBEm`8!0uz^J8+bsPF^4W+;-<}_K9Eq8T;*j@S8p!LE6ax;@jZ= zJss|+XO?5o8Mjo%2Ep-SnipSqdHHdnu{U6UW#58l9_!bG7T3Ho$5&o@#lH3Rr~DgV z{nprYxNJlmKQTPsE~oDdSlWqr$N2Nog-iCrb1yDWM~sb@tDuO3{6By0oZWW&t^UOO zAGfiobxD%O@b)%-lu~^)HU^Fa^6mqE#_f-n@UkEY_}>%%rC3%Bv0+`a)#|X<3*pRd zH8!~R1DW`ly~R;KB1`E5z{ZKB!*nplE{HC7H{crg@rQH$N?R(%qCy!-wx79F>@%-E)w?FY|S4UV&c{m8G0m9m@^Ddlw(=P0UZ7F!v zdj|vMtN zlnB{&b#AR&`#Lw69Q9Lo!&ZH&U&qXU{7}l+AoZJn_t)%i{rz9J4}SCmw$Asq#>l4zu$fIA<*NaRQfXRNs_0Cy^f1X+Qb1AGZ4+ym$PV(DDm|c;X4c(GuQa{r>4ul#%>? zJRbLl|K^YUvw!^g!z#ded*tzluIkGlXCDun-E`B9_W%Ab|7&~oRaaI10HJ0<| zcX8+4clw7u@`2^`%Hw#uCjjGEoR+dMcbQ!Q|QU_(4}F zY%MPaQ?*Mn(`#`8eO1z-L3$s>)7hRMjgin8rmMuOY*pi!(^oLq_rm|hM$yMhTt6fL zPkh>@9XRlnv2=~26jt%`nw5j{y#W|-1x)pBiA;LZU3sk~XIZZ-Fuf@mTBR6E4Lpiy zJe7{a|J`LRE3i;ej*s3s`{4DNq=amAq~R6;!oB0(%TCkDuwf1Ur4C0{>7xkcOcB!@ z+0p;V-hT&Ob|v?L;4fc&<-M;$RlyWY!J~l&8m0}J-OZ*G$q_{(%8V#2rPz&~*@%gl zi1}wDhB2{!uA7b7P^@M~L5b4Lh!l;;A=za6MmHMXdyhhS@BR03Z=RFx-1iE$s!&yU zx4ZDYci+9|Y`Z-PI4K>8bdUFr49kkaxMOR;tH4jkyRNT*Mo=CapB*G_%IU(NV; zyPJMKe9C8>_#IkL;PiW0AnHeUtjmYESq+LaSrxKfOpI?k@ z_ZWG2x7^{Bz$O3dWkr0G>@dt9IE$(mvQC$896*!;5_W1E2W|e3y})Q=PbTDU>7(Nx zwjkZ*$Rz{t-&$eR@0HeI$mHgQIV%w~DNj-q(wBofRge8l@jT_9gcEN$OpBgH0Mc;9 z^cOkL5$_;xpXk!c!47AynIuJ_B}qFX7)t4tq(n{{Q|P%XY$n?UL;;?r{Hz3tug)fJ zX6G8cX$lQ_UCv%(k!M9}ggQ`h%gpqvuG>IA_p4vWo%h`VnLO5aQj_b#T=N&sFZ(X6 zTDz)@Q+KkUZb*P-4*~YPeFTGMMUZ1q=y%l>$?V8UdAqjnqP@Eg$b>mMdGZwIbv(6{A6|n=^41g&`ws^Xa5sMJ%)E1 zJ2=LtG%wg=lDC{hcW&ObwINtraSRAHIACvz=3kG2W0I+!wW*{S#Uq7=sk&%t9Nr8 zk6Zqw^u*N^6w=3 z1}w(Sw{McoefVHEp1*DLcJ9WxTWopeXjDK6mreO{y5Q?Cy~zjn9io-1SCq|gYz=&V z_L7_<(2@M&)30FXww-je%K}*EsE>bvh48He0CQ&J>%a6M$z(~%#GsAsFWRdwANeco zS=|jG?b)@r><`iXE%VFDS!HAJAB8pcyD zdbHW^=ux2a3uxq7{g^wIO)$f)Zx5esq?w70cbmYn!Cbb-y=aTj^!6!LTc1!RZQ48P z%s&$T?dk%6vJ5bddHAG+csB?h>j1s^;rdgo^(_U>)pW4)r z6-(4S%$$}gDkqF)A2LZ!mYLf~lw9dUo^8NTK2eYH%5v&s!r7Mfs~`KeZ`8+4k*W7o z%MBXC-!_b5H1d$5WsBe8H1ozySJQ9(vtOg1|Fv&)>E|WBEo$cNjXf^ zx$C%c<9fR1i+ADndv2lEUU~y(x}N;0Q>WU#fLuBJW{ZM}{65=ma8%OcTQ_gxhrjm- zz52rIynN*{TC{jU*NdDvHXCrM1Oq~!WI5h><2~NDYhNWDqxgq9B01cubDDJX9XE8t zB8%(333W~lF7~UhH*(2GX@hKUEW6Od}K-(AQm_@KY9Uaq$_%V5L& ztY)ZHpjv!ZHA3*HD1hIr)Q!l&DIMW8HM|PNg6l;0VbRis^xMDt>$vC3pD#O%N%}LN zC^vEb7w)27&(q`}x+6=}WNGG2w{I$r>eR{8ICSW6IS#l!q!^`k?KZMONfSpLCtVP@ zfA2whktFJQ>z{_xe1Ol=|@P(&dD#HPFxVAp$HkZ6-Z;n2OXAwGO?|6M~ zSBs%mLNMZ_+}`Kx0nj@9euP2e{S4>%X*o*}pMV?;r3s3`ta#sh?U}BGm(*VBIbw|9 zYfML((eriO@{@YbqGzv>x#*6i4O5z6;KSm-WB^h`KjKi0c+-f)NW$2;jWFkK&W_RW z2*DEsPixcIoV+W7IawzJri4^ON0}@r=&-$vgxpzox`T=}S6((Ot3&;xmsuhb`}Hsk9FHtoRow%I_OD zUDIV+Hk8@)5&+nez)R(7b*9dRnBD2i+_`hgDU>_6?UEfQ-FUk_jh%th1h}v_J%^%} zBu(I^COhN?$}$Pb*~Mf%YO)r2Ik#HXu&p_}kzxjoR~ml;|JvfGYhswzG+beLva;|(JGo&e`rtAL?yzwlHj%Cca1oF-dsln=DDftj&k{d z$BrH6>FFWKI(Q%68a3o*kkMd%SS?WJ1ZnqiE>d&*JUZ->uyk=Ck5oupqlIu3oni*LFd`iZ#p2egYq+%@^C1u`BKN69l{9{<$Y! zU^#*EjI4}M`$XR7PXQg7W%4p9|J5t^Fs+wjhAV6lrA{Gy*xx7bCA;eZng%3|0i&Kh zO!eEpF??Y3-?7h>{DVIeZ3x`Jhs@kI6R6LYY_J*bp{OYvioVp@*N$~2aWv>@%4p=< z82NT3-v{7dHUj!R0|drL3Y>qZL}hZyNp93E3Bl;qr>_~K*Y|-|un76PPv#!OO#*58 zLsBM+p^(hSXd|MAbbm}+o2N*8 ztaZyw|6lrzpM%VPo;kBU)|W0Z!*{t}eOcHUFC+eVIeYj~$~e?`|t?W9Bwx z2shrQ6In0Fod}Jq()UjZhsaF_G21b#DittVAVz&dws91;HNBU3;EpN1lixc_1}mlK z5u+e&6>XLP?hhI=GIrg0Q>HJ+BhimV%Ln9oaCSb95#!nMUv>gSBV@QF9p#=H_CM$P`b_73TbR#E zucmfFkVIq4=9Y#OSgLNN`iiQyVOPUnHFSfL78K*Q>DKG`%inx}?tAbHW!cb>CzJjz z=4+g@H6tQ2l|Vq!*Ilojc5UBX&H|8LY;lGIY7C!VJtJSofi+1a^9|_C>1p1xdmp{| z%3Hi^#~!-++6}e$P#ohZJ)icFKsLBT9+m@x@%VbGbfwZPc+2X4{YtL$WNAS zE?%+-(oPne^l<3e*Jduym@4c8qXq+VrhrTglv(6*(x9w9nAHsx z$*@4(Arcs;DxbFg2wid_;MUFCO(rA_&QRPY+pO z<85HHKA2Jlz@2*9G0s#X(#guGG&|I3q3CTklvuE2grsNHEhF|O9urVlef{loGo$TO zUdo7ITxq-S++;L+nS|DDMxc`|t1{#O(X`Q+92!Td zDmx0nBJ`w?y53ouBD=ob{lMpB&2t&=?9zg%{kSX)-sOBzg!9dJ@$oW&Q}zwG?#7LD z=FCv$bkM2Or*QJvsWLo}CJ$vJjdAz~)FclEJbh+J2lgGHa>Ve-(buR8QM|Gxr z*27VHKaESOJ+Sv6w!gOnZ@l~#)nk^&&V&!s@AgZ);aB1RU9L*B^ zOAs)7?kpVGcL=+8?3SGZ%WoVeiIOcs>IAyMGYi%j)i7ZcznPtHI+KkVr}Vjfj(T>U zdiMxsSJ@^!xeqWi+3zH=l}2d(5_0IPq*FZM-E~J_dN%Paf)jH8mpY##G8ysl9P@X$ z#}{WkdQL0-UMp#Mm|9^xl4?o@fZbVyW1&>2wJteW^uFug_IoxenIZL_hXHI9w(lAZ zS+H4QJa|B4UtCdZS|3RJSrbK@02>C+zSRw*GnthBpiu)K#CN~1br~&$ypxZXQ=^Iq zWQ=d+tG%BbJE>`Q{$>H@G+EH*55@i3uoA6HN>rAStys03fA_!oCnS6P%ONQ8$mEp2 zOaGcNV_=rK1bH{#u?g$C?9QAybFgd2Za#S65O_EYh{4ml?~8v?Z}}|gVp%Eh_8aeX zsr7fc>s`~0x8G38mrOt@rg zEALXfnvBt)&KsH8WdLNEqqOnyhn~iR|9CCyE?)^BoVsg}T&5vFDb+|=2051{oA zC{2b;{we#apg%}Y(g1q?#;BvrpVWbbzZ0CU{H&7z^}%rJ4MY1HuYNls3~HP^8Ue;T zt>ZSwWGzaLs;3qHffB=;Tvb-MFkKo@r0!0H`4On3vOOKtI@;VeI-BwZ5g4afXo3+B zjyQRFc;w>pqJG)EXouR$Gp|}+*KQ8glff9*Tz578&Tsxaef8(R+!=y)X7{A$f9YL0 z8{iY*bWg1=?T`5j=i&OBuEl*1-YrKAlbi+6IdSeBqXym|0snITN@v3cG(%3=qb=`l z#j}q-UzAh!&zBPhB?FNYqM0tE_d;G%GiPAi=Iwa&M^AJXZy*6sugBQpUzW(pJ{T)j zFQZMjUSEz;mJG+Gv>!nK%KBlSMNZ3CE{BME*UmlV%z%1mo$3(4*@mO(;5E9Dw{!>e z_sA5ehQS z5vgoy==1v99;Lp|Sss)E9S^+I79Gy3BnSKIZS)ptN3ZX*f>GhKEimf>fNOq_ecjq< z`NY)y>r>#R!$dOvV2L&`p9_#M-CmqN5y|#PB)YuV_7

o-?AMCb{~`s1IdOnGNk0a6;2B3w4Gl)%PRro^VWB_G-4$5v4v%t%LBsObt8dV>foEX9`E?$QSo)aNp#QxBzq7oPUq8@3HT-1tdp= zCTM6tg^~N*e{`hm^gK3)Kh~GMx8Ah7$B>$)(sr>kl1$-xQAcA85o!09 z*}AENF-Hg0s2EPy;qo%)puw{Xr7UU#w4c7QSjN za;%hlXp`&WzuMW|obLOl@?U#K5&|>29{P1RUyG^PGrOMOQj#9vLx&&6k;6yJDS`0G z*B^|3wko>sCr+H;Za9FBA3Z_)_8q{&#S5^h8(LblWN`@uWTT?~%7E;k&-W#(6=rvI zEbju7eS7yiD)kEdBZk?I9X&~h%kGN9Z0;_LtJN2lV}r|a-v{>{?1qW<;Ec=%Fz>C8 zRfjUHMokS*vf(%#h}BS6Qw%bH!3|bfv|ly z(+BHCae9uT!g{7+odC(!!LD!!+TrhZ-@0&FS5E}*#7DU+N0gvB~a4^ks2%GCfb zRTf?Nk-iqGk`_8wu3A>s``>ZTt!0bXvOH|E)$b*D^?SE*zyAU7;ej-XtsF6Y^*Y>s z_pNyS8tki8XFb{T-Xzj#+i|4bMpFLjLc=@%OyD>)V{ zT+j`b%)}cnzrhFgAF4ZqnithM)uwfzFr;DY+*eZSCHmD)>@z$u{FfY)zAJCY zkicUDG7%kFw0I$wtz3%btCrJ4-+7o-2lR!$t&^+2 zBRcYsCAp0aSKRXt=FDOmn7cdV@o%?dOy&o`76U{5ft4 zs(D*RqPO}v=IBORP=uft3OAor5dMId3{;>F8%FKvef2R_o zkrU18X)G+ro;euRZMlWn^X-m`YG3!=3Ik~OQxV|T|lan4=FIhRA zCYX$&l1#JNSyP?77f0z2D3%2#fkliEJ#^<$_-|O4W8ogizf!Ne@7jSZR`zyKw!kJ# zl(Mf1z%Ft^-!QyK58O}}&}G+j>D`}XFU!O2MZJ`L2Ur(fOpHjW?Z9Nno? zIC1Pm=ZKGB|K0=KrFLoWp8dRU*Iw#UynOuF2|9i1G|4l^Pn_hVM~_iB!&3Xl!+&>g zdb+MAk)LEc;YWV-SQ%UX@;4vARo84NPDU~UG9N{B&;o(;IZ05;limH+u3zhLHxRb? z?~>e#|I??=;7Aw9$X3X;jn+!O?1E)$kE{x~@%Bx)VK-y zG8=1gshRrZw7hsw%eL@2tp87SFY`dzVIr{88j9gZZSpecI-nEz% zf>}60b!eWwvs{ZUPfR%@U9e0oi*tm7k?EQ7kyKgO{C;JE)6U6jv9U$lYjX$En0=19 z%-JKd9vU0w2_eeT>>go>@nCRMhbvw*#M2e9G!v>YEe1BF=b$^WA_p@yhI8I}Dk#(j z9uFo3XZCgl(?A~2SUs8f<#(kk!tJhJ1j59^HDJJ)szPQykhr~@?l(|RYydwrPd!&Zf?0DFy7;Xrhq|T5AB=&-> zee%F9)X9a-)(N+=n&8FLzs&AV6C~ZJBPQ*uqjw)o&B_Q^e^A>QX%2l3)}6IlD9>eJ zr{01RPOV{ghum*S6F_)d^p`0mDG2Txr^Z3a-$7nCOymwa-s8}!{*sRdLK+%+#DZjB zm=Lry_JEPN*~%^yiF?M2G7FM(*KJQDn22DcQ0VX3v#>akF>-j4X`a)8)FxGQ?S90# zO`n-5sc(rJHl~`UQ?y7yL>f#)KqO|kOUo|kQm-4XS%)ut=`NDBzvVPEnVXr?#gpsY zT|P`V#>uz8RXMul9A=AIpO@ulW%Ityp-PWgzMnXLvdq{%u>WA`VIS>!sr&aGz@hzz zv3<)9-nVBTb!m6rw|jqqG<&oRpW#-I_qBBV5Wu;`e;1@^kl!U1hC`Cm1;6_jKfvZU zw{$(sxA65}d=Q&%yB@RWXf{e=KurSilLx2S$;nB0-I#vewXjQh%S~AgAZNk%@h|Vn z-T~cE26a5umR~;3->!COss5FtgYW&y-FW-;cVt+IyI~`$deQh60(x!{mK8v<&g5B6 zN~vl~bNZc}u;%1W;i>*`xN)%u8sN zFr}i@88BNww55KAHXf2yQw&lyq0<5{Lk&xcb;({rUzxbRW9E-&#;+9QO51Np0n&- zFOFW8>h0dS7dyA_hV<-r@7yEKpWk_NvjhdQyI;a&DWa&`RNbOidly5~NaQVn&oBOE zsUVe&1LWyfUU-dU1EHrLd6s|cpZ*%%b>AIjBN{nETm2vljn@T0eK0722_NR}{jy>@MTA4LOUAxS`9^eEAz+gzO8nW9#=)-Z6!& zob6e;p*B;4O%Ob5sveD#buE@ZsTO-*Eq8#z7r0F~N6H>!kg0qa#oWO9=WOvL_tNi9 zkiSIHLl3`Zy|J3EALbQUDQD3X7Mmh@)RJf;LaHIr;T_?4CwvgVxswSZUUaHhfeQX7hJx-LVl6l^`^aQy6n8l_4iq1||VPUV?#Of-=xRpTeAy~jSB zP?Rb4x*}?7wZba#2v+H+6X;Ec8HgbvQ)5i_>-Wy>`TctElKRTPeo-me zepM#l9XfERY{@Dq`(xc0{=v@a@9EO!dvcGDmJ{-5HFm*2!q zciaRC1Xf?MveG&%d5fALqtP_=$Gzlz;nRkV8w#I=m)RuOXEOdP{|+BKQifOL-NB5r zpLuY(T-HIj>5fg1;hXL6Z7cgH)J?=tmPJNia^z4TvsIecbvqdqcn?3@esfICFj;c_ z`kIcvW}VCRGp8Dmd%TUk^a{1k=D;?Oaq7Y;_W5h(@Qo&=qEw+vl z&r7FKlH{Kn|Caq?ATYyJ`7IgUy399a0`&QK(Q)YkLj5xp#YJe5qA8z`R;U^T;yEPS zz#-)3uxb?`HLNfgJPu9_WxO#jJiAS3NFgIRlY_GyQ5kcBZR1Q$*x{0`qfKo(-RLG) zq+|?X!3~XXt1}%D=5Y=h1|h8Eo^6JN)fId)!)5Xk8w)v@LlvzvuM`SbVQDeHU7 z#w@X&DPwYdysPgltE02wN{S><8u*fDjvqTAYwe5EkFcsFi;tW4^YOn{{QrPod#JaQ(Z=#%a7&#ueTGZ`ukfK9e_+Y<>}E95-l z-vSRRa~MucpDf4oc0Fv~xqS~wrsMPX-+?POtSxf`#Mw%F%o!!8@Ua7dvKdlW?v>qe z*c&gs(cL)=YV1qGzhYE^Ey=!!d}Qh5oVjy>(I#J3R}CbGSiWK@uDj_P+;;bEvgNZZ z6Yb)->D)#2AyN5LgIu;)(<0uaQ(?C~SgnJglpWh}=)q+j24GI>yPFhoOsMnKeQGe9 zPE_tvhtKBt9=-SI+AA+2W>5KP|5G((}^wFTZD?+uzWL$V{IGRW~y)0W0} z)t5EZpWQ)BvP>cvhyN+(MRgE_{30Tid~rsEe83_r5uKl}&Uo zx=+((eua(K4~xM(eQH|A>${%(fx~69m3?~;ly&K{>soOzvP5s|&SGRcN1yv3sNJ60 zlNeO_)+ADSuEOWc^fX$%v$yo-02HcXMzHi8BH?ra@b5;q!~{c`vp@&;9pJsY_R^Vd z%>C{M?!@}eLC>E*ALY;shZp1_1{t0BMXwjE}2bSjkRUJ7wmv$`IOseT& z%~Vm7K1$}5Ozq4j)*sLh2%tU0RD^c=hT(+0$8SLh5=gY%CTJaFn^C9MM?k9)i#mBA zm6!ZadMN^rz=ty*jx;S+|LXLcW;TMyN|aos`5Eeu^V^H>ga0XK3Psx~%cBAW)}waE zhr}a`Cx&bj(QKS1g=0Ya9TxeORuH*hm3AsK*tEVJ804&h-%AZOouk?$FB@5D5Z`Lr zJd~h_LXBYx1=Qe&T&xa|3&xy&Z@j;!a6zv{ueD8s+`iN<2S5!c9XMvILkJdgmnBbM z`ucs4O-vRpT7Vj%x4o&!6<2od^}F8F9=gpZ!gE@O3zlt zn`N?|?64-s>2~RUmXvapBajUxm0s$=0y*g>Szudw&cl-DF^BAq(Qp&+rL=u1n;ZAg z#Z0#wh6{=Rk{TXXtO`Gm9Xn31bv^PoUVV$7e(X7V@aMi%0s&bmAZ@ngiJx>xpgiCG z|GFEm=>m*-TBe)}aApMm77WQA2@;@f-Mqc-nZNw(0pjI!iH-~Jmn>b}WoACt*^>M5 zy}$aQEFmqwtJ;QK)t;NKR+UZxD8bU~^__t`xvXpH`D*JxvEyWoKQ;KJY);wr8KpBg zOcYS`j*~4fdO6TTdDz=vok=#VSX&G1Xf#vZ(5uTC-qsp9G4tf7)wvvy@BqSHyHE+ zEPY0L>AQE<-n=;Y{asI9mP<)GUwX5$7rykC!MF;~#Kir6}zgg#t^(E`Ml~xuuZ7jto zUm!yjjR-*lN5dK)LWt=&DNC$nHRVPea$fL1rLurePHQv)NU0K!ADZq*Vu5~lf;Hx- z3|CJKccRWujUJsWcWlVkqTaT#j#?+hf|DIZmEHEv%)?}5gtjW7{OLdAT=?RkGTnyOaoL3g@9$Nmg3q?S7ZIv zSGe4gxIR;tw^=p3?Ukr9CSy)||4e7-WZYeLk1Lz&96MRZ<8@44di4kQ9g(I%QCresi#5 z7e!NpJIBbUh=1!44eQc8lD!O0o;qF9%+sA5Bn7>?OWT)y1K4rtGVI6oA9TrzgGEag zcH{Z8_{52mm`E(kSfAsF(en-9osgd14ON<%7ud2{FBnrpAZ zZFk**6|0t)9*nW#ax+@FJ=w8)Jm@~EeWqp>;f79}{i&0u%Zz;4R7d{G?B@erDu3_p zz1_e4C3U}l??D_ne7J0LE93aGv5jo7bL{AGo-r6S4qiW&?4x|Op>|DZG4n7&LX~3} zN7KEE>zaK`jy8)>UmeD<5ogRq>}*eu=n+13{9C!I@3JbQ3%+>ou013ZCx!Pn-g-T* zzW%Cmenoli6KuyT=M%`rSWA~LAxZ6*l|Dlr!M|FFGF-8L&%Q3WJ6@M?x@o{=dAY3^ zkY*)GcvW^0efO;`vJ{nM)k@t?*>tJA2@hC-7~3_cNWO86{o*}ZS26c-1hgAWR0WCj zF|=ZH;qF*nt-O<)s8j9q&XvB(8hv_cnw+EDF`jZ;~bIUNJuR%ay z=OV!WRB}?3&|Y}LDb-!V5weKHh)jgUCN^Pp(ZoMV3R!5bL>xN99sxFWz@)2FJ(<&c z{#^jTQ*uNk5GS@*`bdjlP_FA1Q*jB?*tA~U>Y$=!}F zwYjT|*Y7K1_1nAjy^Q5c03eQDChAE*ASvk4$}3w3Y7FZTcUiJi)KS^z4K;le{TnNZrj<({g{JcH%~+~E zCB;a}Xj;|fzuf3bXq6EcwicnI?nmsG@|fA+keH6js@ChnNpmSJBM)7*upy{qXH}}Z z&QG&<8G(PhA3@SZf&VEdyxqdlljDu!amS^laS}YYRkn=kIa93@W+3ZK(rS#D(@FpU zeXJ>6t&)rwfgTOj1P5>0LN)nE`MZ1A6j{|)t34;{Bc;x}DjnGlPMI%^rjFdaN}@5J z?f*`CE<=fOfJvk(K5q7$S#-}A@51#rUt4A?OYdJMltue4y#S!!o3A#68z*nP6GJsf z?X~xgAC)C|N3gp~E$`mGt8AzvuHvXLQndAz$Kd_ zt-Eq9R<2puJ^xDS$)fb^Tl}Xc(1HDjc*nM#B-x;~>sQx6lLnVM}8sk$Lmgx8&&O)F&;%^NelPJ+7G`b3Aa@qytY1xouo1 zW&Q(APcR`2#5(kiZsK1l!4#VlA2I`6xi#X|wYO!1l54KN8uxzrZfv-EUG0$? zIxlh?HP*@3AKcOF*V^OLqg*`zpqkc~^t~*tJEXmLar*N8@S!7o=3bAs8|rV^Mh253w&G*jui+w`v;9Pfnfb1B)rwqP_-8mEF)i{vgZ=vt^20xT z1iN?d=~B^~apP^9aL3)Zs=V0u4fr6ZEE6#0G|XjP0AXCII@ID{N9W4-PM1iwR+c>* z)?ziH19y4O1?XRPaF}FGuIYwiB=|ahe1~i)Ssw^JG{L)^lN~pe3LY0l%zZhIG(5cM zu~*=z>3gBEM4VC~d&$67v=( z24rEk;E#_Zoq+@ldUm)oP($#sO%U{Q81NKB_pXHqUQ z!LxrZd=A6W*uhq5LYb;`C{_{J{i>1h2+s-NM7OnB6;+Jhf`#+>mOF1IIl5F%^pa=l zEcQ&#r+Z~%$vsrtc)UXjifZEvDr+R|d%APlG86x(OvpQY3@1*UEGOT|cUfyMo3_Z| zGY2|{AxF`kIDVXDLf^^mpY-r$k9V!#S65_JAA(0hv~W^Qaw;XQOpnRI9G1feBV8J) znWteUTsWXt=NKKSkQI`Y$r*z^0l)sgSHV%SO2cm37Jk$J&V3HLOnG}j9 zc>_X_3H%Me8t3n2us_z?s?>VdzLdhGzJV(YqB@qv9!yqYy3I%4c#x8rtkg&Eh*IoA z)CfGi5#MVf$7pX#ZGwk(86-PHn7T1hp1)uo-E`aab$L@Q)w2K>Q!k|r0-)fnUC*H} zYaz^#p4_17^$g7L`{MWy9yr`N_`PLq_U5;?$g(8fyL)e$m?TT{x(omxJ$y`N<5RX# zcIA|@YKP6?sN;y-fXm*}|74N6Oftahrd6zXHeFUf13TWsGf45ff!l&ggN&((0d~Yz zRuYshC(lXCPcbKRgBXXssPW&XaLdVtufO;P-hE?p*9$$)zw%qZM4N884zs$zcUm(z zd2YeDs|%RBpkc0-suuq&_!sSv)dG_Gmen1VL%3)#bs?^4$*y$6YqCP))fZoveJ-+o zQQzts?*d9bDY_X>GVMzGpit1K*qndGMEx!03z$mYatdUDZAjUn7x_Fw#fWS{!G?!5zdKX4bm`72+mo7iyOKq!X7+DiiECCipz-IZ5h%e&hu zCyk#8|2nTg=Gl}J4J`vONPB8rj)8#L4*4tin$_{^g{NP_-~9Ra@T0%|u^KBgiM9Qq zpK5R2%GEnCJIRfn=aEySRFQX#8l7?{SbGhuIzD9Nc?9nx5X!DG4b_@o`Rw6;DvPVv zU<4fC4zgBS#zf&64x(g0+#qNa$o_6MCMhbRF;3F!h!z3iy5X~^!#GgT*Dr{I^OmU! zaifh~`%KFBkZERkf=PigEE`}{X_yxJXiaJ_`Pfn6Lk2?~oYAMKuYeSERCSP9|8wTe zp)0T5fY04?n?A`|Oy~8=2GBAM)}EYs7?3)7w+`^&OC0*%J^LWztGl-E?ozvZ>2T-R zrI)v7&;HWmk}>@whYojX{8L?1~aOsx9v!c!?Mwg2X-vWbq0;G zF`icGGBx_1)Jfz!s7H+=>mA%D>K~%)46QtFLp~1}k#WOKonCVAJ2O9ln(Z zML?<_h&dFO7XCR_CzLyq4SM|Hr{!z`+Ol~Yf8&=Pq*ZHIV$R$-sQNKz0ztW^W=xeG zGS^*I0)Wayp?2t0qU8sb)VG|~AbUf|B-?R;#if2_OxxDs@=xYIJkjy^)#qOoJW|&lSbwg!Xl(K7RE`B0@HcaBw|Sl_bt zswXN6GHjkt5vM7Y`r&HSYG8-afWQZ$2GFf1H3*2Pj*;7{v=9f|l93E0r^Kh$Am&Ji zRW>q?x$(NIu<^!?=glDHOhT^1duKxqGffGXRP|JzlfCed9yyAWCr=gUe!T0w$!Bry zGP7EYxXiMawf4um=Z+ma!D47n$=dvrr>GmZ57XkM!}Kg>qF0xs1j72C;5KUmG_p~n zl%neNOexw^nl;+i`a@SNui-L{V2Gm=oOipdx^9yT0|Swzie|Q;Vly-xtyF=)@TxVY zqLdH4CYq!!IsDf;3oqr!URfz1lRnR!IYSG(^#0Y?Ux|%3TvNvRDeR)tGGj{S%`B+< z3YZ}tI*pG1+(VQAKmtehjV&<2D1<<4)tvSKh&^FT7snV078Jx*fUq zMnGZvWM{`gGi2LS;hF~LJU=R)fe9atEZ$ah_{}FMMnIGxSf|*GN8C3)TqG9JM((xKo5WS|r-ES?mcyGNpCF zk^1U-hIs@CrT*9n&=^yMpl7!ZG0cw7>rU#YEP!vy!>&;t3+Ski38PhecHVF@!=_Xo zVOyUh%dbrSlOD{Cx7|=SN-6822Q!jY|7ezpQ`)b8f8?|BSyHWqK0WTX96#Ij3}o4m zj2p_PI`a9gSKleS=k49OkGF2wPCK^lC^PZ9K!8siKS{Fri#Yu0>2zEzhsifZq@cs~ zkt>qQ?}pDviw#Y^B0Wcx*DJf{$}zY#l92$V#%P3Z2o>hcr$R4r5@BSrYypSfknfiq{=L5XlT7Rs=l{~Puasc&<~wfU z`@Z@G`tsNBFFpP8Y{~-2Y7*HE@QMv<{GRrDd-xwzmUKM<(b0W-_m`atCBwkUzWIZ1G?oYY^;I%RYBF^9E>$L9_%nifQ!BYWbv849@!$~$CN$nhvvrVC9 zAlG9noXt&>(m-ygG675$Ylv z;#zYbBshn>MKl(Bb~hLRCqG%AXr7T$wa4yp>N)rqjujyGxV6RF=5>2J$SZR4qr(%? zaHZGM)X33cZdQ42;o=2!$LDXsl^ZvthT~&hNX=|LNR_(1W>-@#^i;JT%>3n zR_34teN=eL$%t7sO20x(0qpNr-FDqEgQhD@2-dGsrL}-5Db}Tlf73s^q?am=`sL?d z!B2niDF3tn;vducE>M=!{A}|eNnuL>aFt?5hN*@;9L4|8PAwuje)Jgc+qGYI!s`Nz z8&ya7vT^>&)|H@L__S}&Aw2ohr}3>n{Z5yyJ5+y1QiNoaOn=d{Ld;2IZbuXT)tN`k z7oCg@$e_<`15Al0`2Pg>ucrZ~%Di#pQI!g^5lgBdya&f@d0lp(fUjwv%ph`RBGQk2 z!@=zXgz(jFY@EUAH~UU*AnX-)n5@4dZ+$~pE&kCij;yK#N)QvRL6JWi74m$5=IyyY~zl4q@Y>H!clCHdD0HL9rT zh+3!H`N-^o4PGLp*%Hr78;3}GRP?{}_T*drDa!&$w;G-~-&7PPHUO!Y0q?o6F*wvA zG?kEaf2ge*n&QzId0DE}XW)C$@_et2K-f7rWvN~j!sUej;=sBz_1-=EDC)+3%Y-^X3r|?+2tBmr5lTXHTw#f5$8#0uRDx z690BEwna+uP|zKsj$ebA;0s2pF6Nz7*qlqUG@dg(DFb;}X%w8E`6i>Kpy?ITpF(=s6nZ;ZyzUV`#ug#O%g{62cRx z!zQsig>2Fi-DnIMg~*a_=4jki*mTHs&3Zlz^ncg)Dd|I2v8oT|lufFEkF2Zy4x)Pj z3w}#Etr|GLFAw}z%4GOSbo8l5o?+Ppsta1n-v9S~<(_g%rfdm3r^^Z~Ub={n9yum@ zo5PDX;I31B==hQ2+-15NpqXx54wpLE68yjY#=Cg-@#paJbFay^+2+Vd4^GGqS*7Dn zxCzRd_z*Ga&m8YiC)kw-&N2R*H%yOOT#eWB&k+8nK;9fGyJ|6K7-!aJSn&I`dlNk_FP5l!$u#%;ymz?Ng4myuK!y3So{Ku|$8*X%bq>+_>rU zE+`8uTv}}e>0_ZK^_Z5@s#1_s-)o~d|9K1N@?H0T&c`>K2pSk0wHh6<-X8S;oRg=^ zW;!z2M|$w$ybtJ-Cpp)C^V{$7?(KVM&z^la(WUWEoIJ^=Po0r>#nIPO+%SfZa0wY7 zTt1mDvfwN0gavG-E2g8|7-)_M$fMm8GdPco7X;Mso*{*_l745BZi z%MJe(JzfYMK76Db4tTZ9L3!o**Gj-FssGvCUl|s-V*MI==dJh3($hpsgMV92C_`9+ z3&Du>{x9_aAa@ev5;n>b+b(<3rT?FiV}N-ehh6z(-|PXyp_2DN8f-fw$KhXoY7Wu~ z5#j$5QKM62<#nlt@r;O7Nurid`dyYFtzNU5zWCL9ivg3%*E_2WhkDpFQ5=S2 z?G4=Sbs^LKp zO!I21xt$2Z2qq&o2!RWdRPM0uo{5Mu-?JmJETO!ry@~RM9Nxm5=}ON_046-q6cE#B&fWZbRJn>T!%^;FPXh)BU^UIODAq*P3pM}ysQ(R zQx7;illGw4vmBiH$-2XjzGE4wN>@@t&boYA<6oTn&aFGKqx;v5;qx#2+RxJGy8!yi zYc^oRHS4f_+s=~lDovc`QT%h|rQkubVMh-i!~BKwoBaST#mo7o_CPL~A0d+|fBfB_ z;?nLWoJ+m^KqY9WXG!kc%IlBdm z^rMyxwwaS==aS5|N{_7S;b*Ra)x*M>m4!+cJ5bO73MH!wr}wl=nu-cd_V?MEtR-{Z z-goKBrTE;vx0N)e?2K1Vyz4+~C!-nN@>#~-C1o$i+DdPJ+k4yb?%P}Wz~23|zf0pE zKX!soh?DQe>&xEwlFBcq-c=6P-4WRp!P;UJc~4vEGX)F{W8LJ1C^%?Lwwb^Y=;-^f z$T(&D%)3{8su7KHxpPp{Lz75~&Fzi^=I5X;5|{x*cXIXwdn~UDT-;bH+rrCO zuNrXXgG09wj0m01d^Iy-tg=P|pAG!)*uIng=->Pq9{tf1<#3y&E0&hw00g>6@Nc;f z2@vH_sSZbF+wDP@LAsO!0P{y>&3}h2+2Z%`-Xr*nKl&?d*}M(MPn_g(il)xR8HayT z*_1L`T|KAxcNCglaN~x{g8YxtjXWhWJsBQGL7{ZCAu zF#R!}Y3jjz8hdwEU0vl3Y1*ubb_l2$}%o{o?pA^8ovL*`^vqU zv!-f~zXP9)%kSL23y1a}E?ai)-@CsXuRKVyZdu0YWft$j{fGES+05ibN&64WW;#RE z-SpyM54ZzhwYG$|$EUZIrSLwI3#mWB(IFS?X38Njk{-%sTe@1?%PIg}304P#hehk= z%$bEH%NAqV%B8e&^~$pLTYB~Lx*ponWs6DHd(U4qpO!3Lj75tVV&?3bYSf~=CF_!+^XL+j>9jh=(j3)!=ch5H*6WVU zv8t-$);2zpx$fDS#z2*K{ zHQ$vl8y^P8EOj$_eOOud#@;6y9rGsB2PFPhI+fbm#(8t+@bVQ)Y1P^l-Prt=GFh)2 zhSNFtJv;ZvZfKC6z3kP!W7}@pw|5_(Idw*M%q!cco|crjfSR+K86S`}XrvABfX3UJ zX3*x-H(4D6yUddmYf*LJ&nt@hdg@UVUFGY{Su;rtt_*w3oSKRG3+Bp9ZeF-}Aua11 zzMS#CzB9`5cg5=EowHxm{XVnojUcBb%G`;<&0#Hb?}>eQ;wMjbeB9b)K2CX{;k;mL z8(g`KT+>MXK+#foYEL6U3kG35CS!pcI@5=w?AegG4?;xp8SR;wmEH?&ajh>12v~E zAH>PlK#-IBW*g>Z)ts8+Cvp<{c*kcH|5K*&tSK~qfMd2M8liak&LwU|7D8%$i8YY= zH-O~z!Vn>;Kmoqdh{g!DWHDT0J!}nWs*@saXs!&jNX+8a%*ck$m}J_M zsbp%}Ufo>XsEC|z)L_DC?b7~b``hhXcHrUfKPnENcXs2KG8_NYiPK##wmSLFP{|Uy z%xnLf+L8iZrIk~F(z_a~3mq4RDKSwt@9Z9gfykPvxfUlpl+a zrS@xa-S7r2Ub2X66oLvCoEo6Nbzwk@F`c(fU2C%b zbS*IlOubgC8;!;wfs>4aY%VzJ)l^aoe3%eN@5guYNV6UMXda5_$z^R}uQ5KpJ5NLu zI)k;moZe-7)_Du}{R9_~^2{2EDXdv`0gcH{Ve@rQpc1}M2)Af;4cFO)h% z!I9|asI?I0K}|NuO}mrqRCKwg-)AWd{G@y=Ywn@S-{HURBB)$pnLaa33l}Zy#^skv zI+1R;<$A2^dh}Obvw@^n-;LXo&2_MYgqkRxsG%i0efuj*y(CC@YvoK#CtwqcWGom9a9T%Z$mPTi^fIL-@(}eu_g~3SY35 zhTO*DUsln`J(*1Vo4@mGkih)dk)znPeHXp`#ydFB4X@b4HJP0va*Cd;>IHL}Ga@AR zoO$0aYH*5>Z+pMoGgF)hPtFvf^Pge-Pqji&pn4mE(A40JZMILffq9-q8yTJLbK{AE zL+bM9GMleg#h*^wlpb!^rCl^W@2xTrQ2+huVHCqjJeAZ(O!ITz%H;UOj1) zoVN%&>56SJ8#zyF8i;}!T*vxLokLsE;B``CTx~`yyxF6gmSxqTq$<`BF|F2lX$DvQ zy0%hhu@IV0wDP(%r%ofUrF0p?`Sa&t<(d^`BbJq2x?aZbSFKrz1&bEQGA&xPWD%Bi zWA^hF&g)YB^SaE(JUQ?uRy2TcHizH83jcMEgA4<_^1^F)@tKz)+Yy`06!UHjoQaAe z&H)utk2e`c)erkWnVe0(&EI8h$%dgZu;>W}ZsgeSW{DA5WZAU6Z+J|x+#1w}Ciwrb z_?N$(9+e}fW$%E~XUfTfmr?*Q4kv<%S6_Th&f_QncG=Q9Y}N?=2U9a>x=YWkTD1bV zeC{Uh{*`A|uUk`gCY8MvWWNL=Tb-1GfJ#MHavw)T<#{7yz=KB@qLyHCN%pV7raMM5 zD?LU=pLP6CDJk&ZdY_}w!T$>U+6l~QlA4Es_azc2(Q{BL8^f!oY9oSkU^9g<()-2* zvI!KarCvX`&Kbt1Fj&F-Dz{8aCS3&p&3o7T&La4l=um{j^mscNQcem?_zLQ7|Z>RyBQyz`5wXO2x%$YMWYtAg5H*YQ$ zEnQ490dHG$+ES`V*CG6U{8_1RIoeod})l zH(WESt{4P_>4EF94oW#Lqy1_}{IlBgz;?Yi!T;ItKhToSbdGO-=iK)1-Crix&YCsL z&%}5?eZ3g2+;f!X$S{UX_Iu=^$MD80Z)4w{19j}*Y{xkKD2t}_MOe3CEw0{pCCLyQhw@dm4`3jMYILQBK1x-d*)G)wn&2^G1r$aY;9hdwNY{4v z94jgdN(q6ZN;gT2wZPKY^^ZnA{4G6y^MJ<*XGszfonAjp-^TjzpN`iurn zbtmpQ(_wLAC_pVQXfl?L8ls@x4T>@kBZ_HWTNOj?of%XAEtr7D7$!Q<2SZs)lgd+) znx?1s*))SPpNFMP@3EO|6HnVn(b}x7YaMPPMhv6OtnYf~+&O&`2j2bV`3vXKij~Xd zXjZ;%(?(oz)fL^?{i^QYn$n|}a%F>&QDy(|*ZaL|^xCnea&3KgJDz#$S$^xax9Rk$ zGiv3kegkTF5F?ZN8abj(sVJc|j8QT*z55o3Ie@vZ6Nu7W&vR=K7So*?WlSnR3h+(0 zx#xRLFRTv3$^`!(2LGtbV!JW(gZmDV96BWDTS#Ebr7{Lx>=A%orLA2S@zB8|corNPPaxcjxI0@z-&`DhDll}e}Aj8hn| zq>P1>x)df0tt!)yqb+W%LTuTwQzL|i*0|qB!dkyao2F**eoS1lQfzeIc1x4H!yqK0 zQx9lJ4dSp>lK@~Sl=aXmP|C-}%NAkd4V{BuznZSP_DWo}@k(^#_cCd(^ymvUgEnP9 z&T(_A@y+#7gM?gGG0xq;!=17F*Z;#G;JK$>DrXlUDT1Pk(u!eJlYvG~j!hL&CJ{gn zv|)hYJ%BvJ9Vt4Ozk?XFY;}U%>`-=8ZQX%Ojm|iFQ*hnSHYtM03I1#OAB2B-a>&!z zyJsJEZr@XmAYP4CxKysv5zuo(jvYP*8LR)}fA^oTch^2i>8suh&x(JMP+8j6vEx^M z;}>z?gZDr%FP97*2#Z#&S%t5BXD7qfCcElT<3fF9Bj8DqRzac{pg^}kG1Fp77LMIbi>>SkLkV9GOQEF7 zr`!#oOhfKfz=g%J)INf|;7=%VX?E?|a2gdwbD1fNXqP#APliph4s&WexAuCAoTsw< zP8|C3Rm+hYgf_Q4Qn7h{BFFj^Z+E~FMF%YR;%;6ar>zmQ%FUHuz|)wM>yMS z$|tz2EZMSEjNRVd`^v<>7rL>3S*whQ)l5Q7kI>yi0&K!W8}LzpIf5K3Tl0YqL|stI z4TNiIHS;7X4jU){BWyz=ZGNKKJ&N@r%`JvtV%m{~Yuwfw4FGa9rwnPV ziAlmZUI^eU%7!dGpV?&KtP4w(dMy5;+d#KANekJ8uS-ND@JVlZ-g05U2`jWCNnbix-vg z`)=%>WaFJB%a)Y02y8Qy{`FxT`nh!a`C<*<#n{P`KiTx<;qO1v^>p^I99EQ`gatvB z#ris+QD2iXMC-h~m*ita!$t|K?zPUr#qIi+d)nb-hw;4QCyWXZX2;7)zE@gQrivg# zTPrums`@m+|A)uFz0jq=`JkM5dF*)p?V`Py!YIf^<_Vj<6W>M%O?@C3y(!U zi<4k;0cuHBpuWe5FuuQFgSiEwulgbQ-L*u1nQ*{|0hC zHqV|ti)PEjyO~pEEw4EIHQhMFv2Z*zh_Wg*79@8M1Cfq8(;awx&Pf4kdBcbb zb(S&v@=as5dp9b9A}Guejf$Ns_{ru(aqs8I4#~?C{C{}-N5Bj^+GUbX96MRY(q+PG zFHpFsE~8!k$qfIuUVjJAKm8)hE|{9}F#Ur&B?OD4+uw~4@WMs&Xzltn-MIhl+tkr&q}6*#s8~-GVh~9G7=gExroZU zWa&A3I6GvgfuoyT?^}L7gr{||Raxn_HaDC~=EC1>*2!mD)DYH6$&{kprKIpW%Q?zJ zgqY-Y!Z>EZvHilXWm%CprO(U~M#?}Z+sP8TuCyh~7V(PJD`ed+UAt*xIT=mH@z!)H zJ8|?)DvIKe5bi5ddgfxfs^4JeTy_=N$_f$JzRG~P>H3@FcAJ&16t_PCBz(%HSkhN=DD{>9k4$(PV;0gFsZ`s+XaHh%h}$MEKBZ!1(m zVdvEtln_lNQDij0sKhy>lw{3nT)?q>EgV;MsR~kf>dl$RDHs8bx({}*7)P}SWXU|hIBI4 zb=iW=Z@t&mb&x#?*NO{ zYmnzHn8ynjE}&(rmSXveWo5nn;-!me;o=45kQ_@?JLzSOKa}bTc3gKZqdgI z)ih}jH36Qh(nCLcX_@#QP86#^2u2krUQ|bBv~%OMvduzYACZjy1pglj|6Wn|;Y8<5 z6i8Xi@IPZFRkrg zc3U>?TGw?x)?Be!wk(%<6D@53Wj-gnNPYUVE?X5Atkk)y^(ku9BDG%ivZp_o;J=&( zs1F!q%aDpT1mVh>R3Q+6bGp!IoCVu$8@&MPCq6ihwOLpL?Puf^hSCO0ohYv;C5vn% z5p3zZ$ethz(?U2IvgZ=Q)&YRbz>gSXRcyiL6?54MT)v_+yUfTig3dq4YvKDvlyg3fkoSHR` z75O+n>vy^Yocy@U4Tbi0jvYOYH(z}dPd@T=*|bF_Aq7A+XxDcM-lyWO z53=OH;7GpNm>98nscG3BQqFab9lc zA$Y~Fa;1EocO!Bz(^LVR=Tad{HIG*(B(3QG@8T9ai-6%Br&tP(RA^%iN@eJ8##&XvZQ*xPsW$0yiuwBKu z#W4w*O4{~NUVszgo~9q#n9LBsg+zHO)?GcOEZKH{&8Y|8G!e>O`CA_*KkX_U4cv^G zlKwcvse0kqOLTiRVKF;xcjz1ffTRJ6&h`Sx9mx;$gz4{HCmp4dW1=E4Bf{&g{PgIxP$9;%2EuWQb_!ne`brFj8I6 z>lAwg`IQ;|d!?AKsX`c?bZYl7*JC#y*)A)Cth7WN|Ycx#FRZ`wr*5QK!b z+thA9Sa%>l>KNdvuvshI4uSN~;pu2SQ=z^y|3)>LSFLXsQ(KZlXot7W=&Lz4cBv#F zrVG%xG|@YP09e8Fa6p)i{gZg?m9k(8#X4+0dJm02HHW3a6?7aL3A(4SO~T6jM(xc( zT8hHG_p|_-RdU?WsP8(4BQBqJlvLh6ovT_9j7Yo^3pc6Dqw)mNHQ)9paoYO{x>6Qx z$hvR`>h=_HNo}BI*>?tlRsc77dmuQV%HZ*Z=OhDxGcC(Z=fmwqh9EvI@Xq*B-&$)% z62;q8;cg^PI0gu+cbG#19TuG8KquVp$p#|+i37x|?jktV8dcqCj| zSLTD&WDr~a)z*urhQ-9nViW^72Qz+Ply#E1iW_!Rx_2VV=WnERwRPa0kx&^_)3FSE zA~WzgaqED{4t(3r3Q{KI6-tPfP2IT9Q|siKPIjE}{4P(vgh{J@OQ)1=`%_h$H=-Cj zNVO>ME^*9wMAG*gLkoi%!H>;CGmgKg$xxfBG?A_ZKPdLFbcjauhV#-a;uM0wyW)`cjPX>!yJ2$lndzc1+>-PXq zrKOtsA22KPeV+rw|`E98|Aq0kC7NyvIFxN-}A{^o-R zD(uWNRhoZF&b}A5lFu{=EyjUcu5#ndAba?AIgwa@51{mC%>Z^?sU0}{wQ_B9$=L=| z?f~N}w#;fqx`f`G@(E$_Ru7rhPY+7nBCtffcCkr7GbZn&ceTI94y(;V{XBq<;})F- z3;K&cIJFFYsQ(-$!dE{j1)R#CrRsB0dbk9aRDAMBAfA=B?sDHDY zC?M5~$}(|+=A}P!WxGlQ)V|<|-4mxozL0|_0!a`j$Q6mzn_r{d?Hpf;QkkV;9xLvC z#|X=BG`!2n6%LFld{owUR!B^#y=dSH`LF;~)Iaim8-U*Q7dNZ!;)L&c4SaUEi1;1T zEklbl!$PQPr&;zN8oy!%Qhvl_)s0+HIpp7HC-2o!IZs5?q5Oqa09UgK!g?1vCL0s& zGI5~mT%R{k&W!1r7os`pDP21}L9*D%OXYLB13$w#<&QxpM>wsY?v;Aw@Cj|e&<$O0 z0N;g2CINbj7k!^8nsxZd#O_&Zfj7F4UK%Dde5VZMH7d#Y5* z@=Ov`rW!GBgK&ebL(7Gv;I@D53+?^suXL4ZA=|nR7=2cm~Jl<;hyNGf8|iA zu#XF}oPky!l27wgrM08$uX&?x`81}%LBg7z4j324XV^S_=`CP|{XAf1wNGNl12@{%AJS2J8wdPdO5zu4Hnt0C#Jy0awbM-Nt9V*%jn6WC8-Tm1 z1c0x$Atrr>gM$Wem|a$~oB6B42-Ldg8H)B_M}Kg=JfpKJm;-amJ>qimA#Zv4c}~}Vv+~hnU^t?xFm3U znSZD-j9tFOMVQ;a@hREt&8K9@z>Y^1WVc1SuU1yXtk^C?B43XxrZYJ=po)suAmmYK z-4MuPW96yVwrmWiDo0hod!G)%auW;A$GD7E*)q$Mu7P0UO-|^de%_nwU!J)=K)t4W zsHmSS+w&pg`mOM-mRn)COofMx+!(mbYAqqmNtns9d+KJS#=xf&=vqfv27%*Z!QO== z|Gwlu80CMEL`&i0UXHfJ%PTSZ9zq0Qq~L93Y9ASHV?3rQAq9eDH=p>=9i9UfUp=q0 z3P}0F+QGGWQF<^-kwk_T?-H6JM49cVPUkY(g{;(u(b4`$ zW}MFq&;a=7c>`zg2-tHze3&+Z38crfcyO2W06(1Ui)Pj=o<`p-P=5X9sapawvUEi9 z7&r=tCv@6=pU_}3-yY`CD1`#+#VTgE zcAeLQO*MPrzdeor>VLt8%ny@o!&2F7VZV~`Pk;a2DZlZ%onk`<6^h_T{~ZKTcyxA{ z|J0(?pLPj^G;|c5Ijn{gI;?5Xfbg~6J`IMoB1&l>*B_22UJUBQ!I7qLVFLJI^1i#z zjvR8=A$K5$Ri|ZbZ}|%_g5Y$Mu!MAnhrjmd5?ZRNaay?Bn5;VcHn+oe_&&Z?|1}^M zzeEt;oN#q4`Pvyz51ceBjJ{2-a_M2B9MZR?FaFmMi>F$i_HaB)oW~6x zO2E+PJE_oXS2l}rnw=w6*1zFEn!1gvCZ;ucZKKk*lfLTp2a*`wIw$svGlM%f?U)H| z{V1`$1QLAC8vSE|Ue%3#)uQgrdc3VFsizJk)!?#Zmh9~Ysj&sLXtP@IkpJx$$oevnh>%5sTGULqjyy!34M_}nG#{uqfHabKh1=A0)|ryw zw>HZ^4{JGzy8WJs@2tc`C(kzIk{@a~j(5%m63MWDsyTV5kMC!Xn|lgshqGn zmpA6~wf0&fp$~{W6%2Sg+8RiLV7d^cK=|Ip`AowojiwkKT5 z817O05acE&1aIuk-d#aMZFZWV#k%8{Q_U@Q<%Nwol7ovcmkj-}fM6Cd@uuIN{w0yX z5(?m(kN!_vTcY`36RH6E(qQ511s^AH@Kb6oaN-rr8!KY?@&T!H`L(kvNsU+L%!W^& zRf!y^;PFmakMj zJiM;?9(R*JNgs$dE>$?U6ojAQ~*c=nn~XIXpWEzm5|+xe8_; zp&LdIu7VApRBNqRi^2Q5UJqY+&?T^#CUgzrbPT4`T*kDx`cm(nznmt2uns~u@m(>^N3>$_Ns{LX&YM);54 z{k$dm$z$-691<0QG$I&4Q9)kn$)M2mDgV@H!3i}XjD7ek>~Qf$aarGeF*rS%?VXir0`@8E_!m zY!DswvNoav9FgPYekMSZ9iNX0y^4xrE1Uiiay2Q?z{w4$y*kKb?03f+7k_ZJIm1=q zgmt2^avms~s3?)(`?&)w?bu{9YnzcR8G5S1Hg+rp7;bThg(LL0$c_^j-d|g9a{5?;F>swER(jS`n=`ylrxUV?o*hXZv*zF$K+u)+z zEiWB*wYMiCI_XRE6^Xmai?86Q1$N|>1F?fLIdmcCrLXnn1W>1bv6!qq;GuqS zcSRYZz`Wr+$(Pz_v(tGs2KsXTlw|UE#uI_o{5Fg~QtUmq(DMZZgiVilNXe=T0c9nQ zzZ87of%pYL$;X4dqU;!FK=!wu#BY&uifedw_R0NXHWZQSP%C-SP@-#M(+GU$GXzuV z1V#_5KUyFJdlc1_&KG}rgB4FX7WpQL%`P|TjGgxnhYuCC6jMT~R^iN=Wu?3yI0G$= zQ^e8M^6LS}8z&22GY(Xp$!MmBBnaD)Nv*xtcgb91KK%V*V@a9R8-vyZc$uqXgV?x8 zQ-wKE2^jh0?^$Iw>%uz>F``B#Ef`q-hBV2ADXr9 zFZ(ez=?~F$LW{ih-+8`Gc*qY*;OgNipS@Y55NXOD5xI`Hx!6P>rzgcipkcR6rr@>1y@=F_Zt6T6oKef9*S>vy7eR5rxGL(3 zgNy-T(Aki20bnb))75CJrw()5mkDOvY&1T->IHlz^7d2kZ6Ar(^;!l$mUYJ&KAhn8 z3|6<{a@4Km?sClu(n-Z&x$FTgxYQ&)ij~#0lZj$R(hZSgGTAe5)ULRrHzWt*)l^=0&N<_YyIncEqnUJ3U71O@7G#+SXuUfu2@}o|4bVe{`tiQe{?a3b&CaToqT~oI8G&58Z@8r=N9X4e$K#m&2_DhvsUE=*^1N5-QnC^uOjHQ$Bkn& zy+tpFPOgea50RN|?a&A`#KIJL8ayuXeJ&m}3UDo)*- zxufb^+x0xodZylm%*UpGauD$KVYK0Pe1`Qz$?qgL1IvVL&Eed>(qT^wzfM=KdQ6kK zlEaiX&9LMvd(&%wpYrYw={xpSXMH2xUB+DL546hAq0Ur7AZric6{LDI z6$lpEKo79(b=jXzAPe>CcLHROjmkWvQig*Mr+~rDX4K<7;-|AM7*vJ-q5SUDQ} zsfsqGo2^iU;2{KEOkS)hJDbD>79*Oqp7l`*zPR;XI3}R9GzW)`d%ZcY;#36{4@-8P z@urHdF`Q+Ny=riJNvcwn>}%M{8ynk{D{_wG6jiCAPSRT% ztSPX!VbLiqMEUv7EBVSR1Hs37j~%DHI!iwSUWoXL9s(y@v4RL_IcuMf|LDC?6cHxMySZXnZM8M{3lZMD$- zMc%bfR`c*6O)oKDh@{1R-P=DpvOi_|hmV%daO6MBXxMxw>@1-OXnQZ}s6GhkT+L2r z3Yw+e42E_HJBz#VN}Z)%u(wd)`a;?1(_mwIuAA>k6|b*cw~KZSZ!y?|^`Sjy6j!2; zrVIMY&y{mO4V%H^m$r{Dam0y4iGZE}nrq9(X3IN0bYnsJ8lllwQ&|FGr0;`ie@{}+ z{#lL`q8j$WLkHX~z0solQhDOn*>rO)tNG%X!IN91Mr_C!i=1|lxh( zVLO(t(iLZDj29_*_V;?{F>0KCh_(-L#C?Jt@KHr@k?%0>*(~R@K2}HN4RBzQRdQgK zrj-jRFyj32S2~@q1=_nKyy?(AW5xPDx@bc0jAzR*7*?mP9#RMM?YKLTZTD5dK>v;U z&+BSb?Ov;eK{3{lQli3_d2y_-$r2+)p4|g6?JC57V4)be)9}M;Oj}mOnUfprY@Kn; z2gmuXGQ_jE;GU8>XJztd)IBSA4Wqu=cVqFVSI5LHyro;=;U6JA2nb`nFV&L5fHj6- zBPml&JmQFjONdG|4}=F(yfhAE^+&*_y1R|V}*mWe+uCnkV~><$fwMPE;u>`QmGlf)oZ$AyZY8KZp=;An!j4@`EQnlVX< zm{63g5I<;~4PO+Vy+BxJS6&TL`CTkULl{G#UpiO<`;YqPav>iVn|T#tpU@~`yz?)A zi8y~x1Zv$z=HhwupX<^YXo8p#KR&PWgb$K(d{+f*YkH$IF1g|dFhd!c`z~e!`o>1z zoJUvJ96El|@CkwE?|#Si?YPPUb>A75SYdwX;y?sh!f7#Tev*cMIMt6dK>^OHvs=g{ zRDB0R+hp0kCfUU-WgLF3RxWzeV0s!`H}PX#ST-)R`Bh@H5t81~qHZ${8{fQbaMIq^ zy()M4DiHkryyOYNaa`z)qKen;6`REG*h%p2*k!rhhExpJ%qsn?UQ-V|w~?j;X4I3VO38)XCbn*Y4@5Y7Rh>#R}b5a}RHyLtOES|ynbVsUj5%XnoYfYk9DALAff zGXkt-4}|iH`A(stET@Y|n>VS`gO$KZad6~BpjOe2xYa-HQZ1TwlfIr{t%HsHlt!Ue z*EWy5+*GOr=Q8!V#}j*sYSh;SQA>9oJBxcY8avClF11p2=D34E%1e3H(WXW_WxsT*R!3>c;S+f=_l`}tpd*@hoYQgVoo-YGhV?rbRj^F#dG~9TW z|CQAfAV%$@P_p6}qD_)L}ln)uHvIMm3m0_jEhTw_eUqN7(7;s?y z5Cx-U_bxTf;2-{8Ps?yKRHi~MS{iBF?eul^vB#QE7M1MQ@Ks&D_ZG1M$xhSZ+Q0WX z^FzfQ{{;mnyiy%y?#9j8T%hLmv{4I=Q^x8x^ZA~xXfh_B@{j+H!ubWk4yo~=b~v!0 zOvPyj6;_#ZTK0yNw|%x=jb+_PcpU>u+ej2vF5=F7IXO_uwT#$nr3P&CelaNUDEzCS zDVuDwP9+{Oax1%xUrJy@Z`-|&9c}{|3H|m}-AF*Kxtm``GM$r-$>n1nNmgoSL3J&* z?#twEk@#G(zX##wTApjEQm`=Nh=hZL1UyW@U7yWBky?DG^uqH$e1iMx;0AYs!)~s? zN8o^*pB|}oW)mXiw~lJUh10$WN+l)c*ZNPJfj&S_9=jH6{ftVZz_cb}+*8ah)UNW_=pw|E7p{gV^p)xU!c z$lpb1JSM1q5>^?rDDaIB;B)ISCR|p;YQ~UT(~Q7mjsyu@9g1OKFOnIQ#nBy@GS^wA z@=?@b@@h%N?9^#veR_HQGeF&rX|WpY3itWIo90=W>6PwT+VSc*VQ;zKh6VLp1b!nK z?)i%fGox`E_+qmW4h_7GA$a%f!mF2t?_AcXDtYL*tg|%ZIuOcuJy5$Dw|3dqNcfcZ zC%gT65;z~0d66w-fy4CkA2vTqH*w<`47F%k2koHbGQk?F-Zu!R3~z2S$~T+R_R&g2oV;x^lRC5V^&7u zKb6~bpV(Lz&0hZ6Em25nUm^?8?sCQ-X<3KtD@uk=2Hpa2ZJTpQQyt-Hd4R8Bs3Z)& z!W@2~>d#-ah&sg(h&@$!zdQ|gNYN=~(w|fUw#I1-r3Yyk6l7v%V{E}jM z5Tt7b|G_vcu8}TJ@l0p}5c&5#yj=OH;JVoETAzT4=} zCecv)+XKve*%o7mcAm#RX!S;Wt~v<8#}{q6up23?3{3|RK9F|h;%c;VDXq>7ZbJDj zlh1`FwOX4(z}H*h7+hzh7vUKMz6$|=5)13Nyk9WK(1m3Z$q;VBAr~D9vrZ=MpX9Qj z!0(cU`_7qOx58U6m;Y=p7){tPb{X*VyS1unncY#AlD?&5VGFiL^ zvqGZrLw{uVSb>yE<^*eXI(ga|eb4p8_gpYPA;&&_1-N+4PMFbyQ!n zj1(H_ZhmHU4BgU0z^bN9)e~N?UDG9#t)F2~!adaAFyXphE+(F>mfpZU zTkpemd_E5moj8IgZ-3G{Z4tnC;IXUkYT&_&sGcSW=!;dkRFgUqu7Sz78GVY#^&I^6 zgaDc%1WC8$l$h>geAb&;iH+3Y3n`kD!XmE~AcNp6nVYN@%<@xH1l`$DoMb-XB{|Rz z8r|$I<%zM1^7CXWIb`DH{skILYSqd`6N76a zWBZ4SOqDOAUq1F)m%pJ+-bYp!ayk=6!dRL)QXo>tE{6K<6kEv7$NrC>OJMq9u>HEt zemaqBbFM@))>z9eleKUyQ%15VdZqfv~zEEa06e+*|Omh0ffZ@af&l?#eeIbybu^`>EylcdKMX{zLJ4*I=s(t z?!RgV-?r=H*seaTy(nkQl9^VV9T>W7{CH2P1w_=eUY@cOkspl20zx~H{B*9#!AX-! zeAt$U$iG#H7R40<(k@QFfR8?dgJr6_!FZZ0GEMMfgC?)Zp9B+S{)M*0I+MZR#4fz? z5zRtJ+;w8&qpVnt3=WOW;3eqM=1cVXe7>Q^6O3Is?KPHLY3E%Uix}*OYWkAWnKW8K zP(v`w$FJMwD=Qmi91@&%wQ${NbC>$mv@>8~*dsp$)Qf#0UX*N@mW6nwyDqHn`>#Cz zg-m<8NMSR}HR=_)qkfWH(P2b^d$8-2-^812I~V$-4NTR0LituaNsF8!A~I=*C-L=j zwzpq0vDU8imZj2m%HxK*f;_y`?br`^cf50#g(t&GK0AznU%<6&0A*%Y!DMrFpr!uWULN>xYC7R&bo z7B42u%$<+hciIe%NuPw6#{9vXi#`*PpYe>N^SH4OJMkR+ASB|inqdyThlboZ!+(AbTJ{(2%zkJlFqJbWKauCfpSw8MzziBjHkPtnq#vS&;Xcm@6-Grph}uoa z#Yo>4k$eC0tOe(HyKl8pk%oFMH0>vRfYxP*9uG*G!sHz`00VAlw@#sVwVck6|K)GZ zXLy@gaIk7*HMu`1h1*3O3Nids&r)>zh?ue3e za>boh>Np1aHOe%1c;8nsl1db_kE0{#rII|@vXd%&Yv@vZqpT9fbD`WJwpSSJD+?;- zuu6;s0|=eSOg{&P*cyD&V3w`x+vsoTPCDcTOkk`D;wLP`!&FpgONw<~A652Y{}q6azc6T;55bEMOG~ZB1C59hIIX zremVT!a?&YlsezTBS>b)`uc?QnnhmxieG>mN*W1A{H@3-A1=|D%0JcW4px2wA!NvJzb8i`RMT=| znkjx%>D1q_fGWY_I*-l225#BI^2f#DX@ivS*w5vg?jV8E?LhT>694zRFJQ~98jW0= zcV(^%gwR8r__YAKYB$GqmOou*h4Yp1*@QN$*|-P~p5yLOK~1w!(?FGN@~YT~u2?3? zaOQJHTLRR%kPd5CG0|lObe$L`Z$7TDS)}m^B})eTEZ<_-zN5Gjk^Z~G32J_M>nrD0 z_JEk2Iul6ILPumNsZSFguui{fCnD1T>Ksn4PHsGmO-WSpg}5R62R^>ac1iDk3Ju{* zd@C&nccX$qGJ2b-|0L#-W)13F*+oAxQ z00EW`x1|Sx(K-t;b`|uz&d2CVIs6A`u}IL)NBT4;Bg@Z_jb}Vg@E#A+AR}gu z$1iN%cQlz7<#x8XyUDT@{G(E9p3G+uX8rW3&p@v}*A2Bhdb;wue{c=~!~z963tb3# zE{#L83ASFNgEzG)6U$>HNYS5ho0dUB$;Wt@myrY~tVPXO^z12!L235r239PfxIS;> zAgs!SuV<%s3!-7^lU7!Q<%TLhSk&k)ovVC3$&mW(XIl}^MkoJE#(cnFQV4wheo;UE z3iwFjx$ala>piqzH>~?~`*TGsrOqkD4R`Fx7=COcDD}L1zj(+Sqgk_Py`DGoCu49y z(4v0ipRGi}))_lkc1JrWjCNSn2g(JVa*n@Tml30aC((l~+D&cK9-ZUH$T|~RJ-EBg zzF5+Hp^N=KP0$C|6p@!s<7Cxac8x~4u!T=jmi$vg6IN#9DvJ8SJ7f<)1V<HAs0orad9UCXwzCDOuU zUo10?^=dBxL13gPuy^VoM(@ru7z{x>V_&3Q?A!%U7nsD%z|eoiT65@irJ~hjb-t$p z>vLJ}Sq_B(ZR$G4RjH>MwB8A5G&B62o&32nl%aG;lj%9hgSyd~8H|l;(>$i~Z4!iI z7Kzn-xJ(9RzxV1oUxhFr+)OEWEN>5P3xq)`=ooIU@N#L2&7bQgL=-_hY~{Q}d!Y|! zorw0E`>&1uaowMR^%kt{2LZVS)$f53Eu_pGr3rh8A9EJ;!Kp+(GuI&$cJjJ>#joX( zttRI7r>du++iWz&zxo%&l&=Ak*H-}1HExH#*lGdC{pp!|1t0ti_A^8FU*K23v!CEy zze^o))0x0iPTEQOqdN5j0Iby&um!RJ20~y-2UIK*&~_^v?z>!0_Dj^^*g7rk-vv9R zU+LRm-yIQ}PilAM#V~8*`M15U@{F{FmZ5CWJ!F&&X{w*OOrT%Wq;4KbPnDsapc}ZI z>DvV#GE{<|C++s4t+{`G9Zf!^T8ra9<~g|Q4GzrEH7mn13rQAXM=kjRn+RDS>B*w*b@!~&9I z*3>M$I4Q+O1WUo?;paI99T--&lm}KD2rLaBm-FM>E65*Smqju(27j-5`|+BPL(960 z0<8ccw0^x??6vzmkwC-~d632q^9h2U;0qi&0V5FPswHhF|JUqzKg`zPZ6UC-(4@nv zxC(54e6?|W^2-|{_SiBQ9g}`HaGeBtOyu#znLZ?8@b>_`o`QA(`L9>eq7q^lQ=Z1j z$Xq@W(b$0tM_I5u$YqEV!h}Js5vrqGpYWqT|0#KXWSPt0`^3X(LfNnO@Yg|6VOpnG zW;Mz3x-Cd+=d4_3E)zN4Y5e3HkNJ4|E*~Vo-?{S@Rt9-K*FO7hXbXTR&~%=^CmpBN zR}I%o-M|``DlU{U(R|Zs({68TF|FZqu_!VHLk>ld3oas< zoBt1oc{#OQ?mr!ZZ1rF}SMFIE%Ee%ppuVP6xY@dDQAIw%QO|5irNvA5qx@JLgEF3W zcuOKFOc$SmTon7lt<8TkZgh&OBNe6@Y!^d1^%k?x8GrY9Sjg}F`{lDch^$@@869?~ zz{f2AT;49deU3{@=tj9-?caj{P8@mu8a=)EmS?8YmNKywkFbiG8UhhvUyI;zZ`;iNt$3&Tw7Ak0;piM>^p!UD#H6u@e;RL!jVHwk zm~c(Q?VljsGJ}WY)8;ta(0!^dudz9^)sb6*97W$(5Qm<|9bRba$?A;7C#B9^#%n%~ zcirK2w;MKgKI*RVCK2N#7M>Y< zYQ4j33vLMrF}A*Ac$KnpvElYSZ7l43e0}`(nr-`hH(xZh%L3m2>AOFyx@)e(n;h$C zsRM`WAp`>47=qMo&qJYbzNH(ImdN*o;^nyDPO|7kLue48cQm^0Y3C|mQr$hwM(#m$ zv5_@uZzP7S&K|ioB|*6mdZKb;+9mAa={6Fbw(5iYWafrEwVQ~(KvW8}(vk73nFP~3 zg8+`?m|8m?NfZU{ptkeR{PhdSadj5czt4gpCKWy(^WA|17qcUlPG2Wb-21bW;Nx}D z!C%bQp%TP#@+}4txwe3BE|1`HtcbDYJR~O*Qq;f+EDSx|m0k|+y#v~RN!)LlVgG(+UR-{>Q>HdVjI@%jx>Vk4MemOurRQ8DWgj2H6=4YJX(DffQFQx!3_w0q3(M@7F1feDR-#^84x zzl)v(*xLf>h}Z;!aA8u1PXg-?t?=$eu~|oaxu&XZb1CXax}f}pP)t#MTR%OkC+NvF6!mZx(|eM zxjub(%%lN9l1T&92M}|cb*Z@m8w%{i1!S@Q2KxQB-(yjW^JX&B;+Iw#Jr|D@LnvUZ zk?*0U7=(~92rGur!lXlgp;{~U8E$W;|5(*j9hPYR98r|qw1@+rv$S$v->QZqBm7n< zDOtXmHIJ_9$919ar4*DLwrxlZB}lC+gs@aOZxHKLLuo3xBoH&kPL+4IX6ZIy}Eh2s?V z+fE6qc@mXhNty(?$;o5!d=ygz2Z2Jrk~m}`(7yNAG@N8HR zULnPY{Ja8T%qsTEmEs?iK~FzbP@F#GkqJ|YS2`>*1C)xC%8Y{QFhplDw1xh5$6&%R zDVh@zblOq8yvzGfIdJhbmZBR5AC?FMRMk#S9rL$3OLgXBm&;v%BvJutLJ(X4>D}gf zI_71rtMkqC2vY5lWN?t^1lBV2CkEUC-*tGtTx;@RvySs0>S}I;+I{^=pAK>J341(U zJfHFagJPESW7ZivG-{bYPd7SmbrbVn`y{N8uEjkXw}0 z#CL9${VI46u5_93N9J2JGbe^ce#w@CoGMFc1G;q1jgNL=n?l?StBR~-Uz%?M5jxvB zoUiGqg#HzJZd=WALdUzU^b|EZL}v36zTup`gl&CElVpYOsC z!*d7kNcgaHF2>!R+zX#AZA(Q4pmCUV!wtb<09>sqLv^LOIXS0t{fu8D0iz-k7F-?_ zuU$?Musi@PiU6C)&tt`uT$4RF&gD&K$i-Tr8VgR47RtlCrH=k+nd~tUKi>4B@Zh0Ok3O?N< zEqA%WxlU@k>*XS-3c0-=O=bl{HbQ6^@PhA}R?qTvtl! zcSZZ2L@FG#Hxw&bi%O2>7lZ7HGsB|S5?~L!!&!ei@F_=vMpU*d`5TzndJ^Ci7i-{< z|BssMyL2L#-r$dP9cc{I?`}i6NcyoBvjFVYee0zP%O=LxqFeHw(N59hZ{!rdOFyhv za}Pdg8Pg43&7$1WhFND9=k(6Xx$+#cL+TSAgLHQkH!i z3E+tb(CPw`7c`McvqX31!Soc2%cp*#0k5P7htBPbt=n zAvr7&GJBGaKfjh@)GVl~1vsM*A2^!ndmg`u^mu?z-|k0|Y9pWQAH>{JKkI~2R<++E z3O?5x_FR2zforup&A(2autT+>FRd&ERLhmA`c{6Hv1)xBRbuikF#poa>R7m7!XJWB z25f!^opttRkvtrXtV*l6z<0nlZECXzTD&40UzHqPJ?eBL$e*krfL@693;_@}=8OB) zaxnN22m;=C03XCR+q{03Q(gq%_atvjlSxkwFT0MRygwMe>*Bw89Pt>`vP3YdGh^jj z%%jF{DcOx7LQpB69FBKoNi)=01^DI}6>lt*EygDqb(dt4NL(Kj2^RK(O33m!LVfe)kW@tr9a~R;|~X8>aMeqG*jV?zYDGk1KH_65KY6)d9w%q_~VmO zrzgx!f%X9(E*-D4Hn1v)#O#|XLnsozS?&&}iUckpmTunz14vFXJmXRom8@TCEcLxt z%*@Pja3$uFBA>HGWWv4-!bv%@56!Xo@z)}ue9j3v>-+h&x%RYCm2>gLWQ+M;b?vc$hm!TC*v>IyV2$_VWy`URwoCqebWrnAIBieC(EE~_NWeS0 zJjX4jINb4XW%6Q`{y_7F8G845LUT zbNXh=?P#bjicvY+=moY*?I2XZIzF4w$xgKN*<%xy+INiy#X0gu4nny-Ib<%cYE|nP zWL;E`C00+#&exfwLkNBZ4-Q4*+fWYuRP~g3lec!Rz+Qdf54=Ol>$A&imkcu2z5+WV zLhU=UZpos(l)2U?%e-DrLatbsaB$$~zoc44`(~{c6t3fa4DMu08vWbfR!>%yU?1{{ zJ1=443m+JwpOMY1=CB-t7R(QXx>FKNvsjCDc^@Di9i@@n*Pn4MGEiz)h8<(Aor~~( zVQO#f|C}Mz?}-J}exj@rd+UkF`egG}Y#a10R$@B=#@s6Sw%|MXxU9h7c;_q%L%>#)$?F=^DzV z^Yky|pL7JN9T4I~t7jNS*5GcXp7=$Dq)KFK7FqbG_w>%TwzA>=Z94mV%=a=r|scfaDuC=8*ab- zD$)cGGoB=daCRU=LnU0UIdlb+`X7-CJ|+!yPH7Nmr->v!okFWpGvo+(FjoVui9t6a zV7scdzcuHDQXFMO4y$G`mMgbrW*jMnOyXIdeW0#(n4l;jWZ+3?Db|njDD#jnD`WZY z6+ag+lx{hq?CjWx>u;_7DzZ}R!-v=SG^^9C!<2OHEGSlFH+duVWO$7TgR4?_Q$Hp` z5F{>>ALLoYIeNe_gTTkp=vqnH-$F<@-{Lnw*MDk-13J`?59Z&}&hAgtp{8fLpYeM**uRdMD^y;VgAf2M4S}J{AWxp)0tS%5gl^gtGG$5Bn%1n(9n-fJWV(Qw+h> zRl4;Rw#mQb8vX}dL8HEK@j|RvwE|1Jp#Z=nXxKLARhdc7UbZDYSr4F}6X|TExC02} z+c-mdr8tpfJQ#LRjUk?>(M7Ahl&{9XTMxx)^&vxNq_N5CXX~^^k4RzQF&4~$gu{l# zSJsxM9nKem564XK|0&^Ly^qO5uGw>D(}rs{;J1J0H@eJN-7DW1aJgMw?;q2{tOu%0 z;e&0(h~-o!_&>+^9~3}SNT5ax_OK4VHi0gZL05I=h)D<@xwj8%lwBE+D&zFs$!NbR ztQ=Veer}$tM#iEfzX#WxD3KDLti&dzWpYA>1Q4&o0|}YU=}Sd z69IXVZFyP@A=@Cd=>@g2t(t9Bm{OX~*&}9&Rjy=okw41_-44Alw`N|?>tPeE@yBlk z{3z3y{AKcXa8C-?J^Rh|Sdq<~nnbA;3sO^a&gk1!m$bd&n^CK5jqE_(2&k>E_!`NMAC1H z-|8I)qXC>7%)nAOMh^vHjRQ%1LyrbHvz=p=jTw+VzM^S^7Gl^Q(IkX{>a{OkbFGNB z2f0vw>ZjbjVwnIq&8JRXIsrg-{Kh$%;PiuUKZI9aeyso+;p)>%oST|gb zIds*rLcLd2554=E31L@>KJ_h)97c`;f7M|}9rhsSPDD0D>2I*G)!_;L@hRZn{%Yz$ z=E8Ji{d~vWx8n=t4y??o6)zI*a*$Mrl5meH<`Zu1L;6Lj4#P}aL$@WTp z%qPtx7KE~s#bZ!(D=8LzYj%vHO#3xp3Y&aWo8uqJHYiE7CPU-AP7yr2C^*!j(3`A~ z3f)LeaXkX$wIrgXc!bspwcnGra*8FDO-^TzVwL9UGiT`7v17OtF6LHWg?lHCAIG=< z@_Tsvr%z$~d)vd>L;ol`xbigk(S2XNb~V2C^AF-zfAg2i#zA#o@ap_!cCMs8m#H8Hu*30x$&9ubqbW}N8ZYre{{9h3K*H7#jZK}{r`coZP? zn-+hNj;YuX967Kl5)+v(>?}2LPeM$X9p)}R| zH98WwE+vFr(aA<(3CPOww++lm!{mM05B%tnqiETC@m;wmVxNWXx8HaN|MLI!uXz97 z{nZ_)7F5y0L`%j~`E@`8Ua)9EH}3xnxc7_qbiJP0wURORZsDSZvNK?jZ`m*@<0_+- zxhE_Ct?AVzXMn61f`(zE(57b=d{d5X!mebvC^9IIW8^Z8OerfA+@8zc!f7>+h#dL& z;ZD z6+k+E^mvEsA!R-%69Q9SqU<|)f`6Pl{FhY#6uh?fBQ=*yVS_UA2`=o|3+g@8*DblZ zX&PetOIG|D!80#SGD zzT`qv{|GWZ)%im-2EECilBCRKoiL(WT#T3TsPxXe-nwi`^70F>;yZu+ecrWWHz_b9 zKrlC9R?+y={WxRx47&AmH%%i8}bId6$ot zgUh0#u*J=WFGQ3B?U=<5543#@yM)o^&CH>swq(;(QE0wVCwUplpvvOCQg=ISO33k- z4ctmY4!qo@*l*g5Qo6N^Q(UtG<5%w39w)Lxd*ZFhK*RbctQA& z6nI~b*O4QKar)Fr*Iflqa-2H3UWLQ07ESPf4)8zF5X%@?Lj}sgH>GGqh#62AheT5= zx%3NH_n;?evBSBp2h#HWJ`7xJnMO9-1nzFIu<|_jNu0t2bVS`3vVa<<~28Z_eyFok3iLWy_c5&Q$dX z>_IhgL>kgUK9MEL;Md|BP5L;6pDrqMq-jS zd6;%=vQWd|hZf8w@)!^zsJ5O0m8q{~)oa6)S|0h3NN^9WGlH7}{ibwQ40`wv#9vAX zCnp_7Gg_okh=3IFCBy*3`&E^NkejY3tX^A^nG>o#q~-~XN8#PZJA$z=vl@sEgofw}YN7NfXw z)$*d{CS-#tf* z_kHOLxc#nM{g_{C(BArX zSlNS0*@c8NYCzYd19QWeTKqW49*Nt3EJ}to+8Lj~6x(ZBQyi(9Rn#p%6Vw}oRpVgk zI`*DJq+8Ss)W`Hi{f(o13$-*=lqQ^*x@j7zvI@zPuqqS@F=**bne_axa$jd(m(kZ{}2nhp1o6=hM*c%@mRYrWpOV9NeOJXa4j6ui zO%W6P*B37Y{?+zFu(NpS5`5+BU&7!0`@d2!A$#L{kjs481psD8OsHb}#0Dz=WJ&~@ zzznLV3OEz(1phc^_#YJVyKCrCHX50wKZY1NT-sDOJE*S42dnYVChP_yl)M~n8e{+7#E!RIQ%mdUf41msX$(==*$!;N-SW=(g1 zKYhAA4Y1#wPx~s38wODR><|9}JGbwYC4a_eeKO2D%&==DE^NQHUu#WLex zdj1Q`Qr8v-mz(pq%XCoiJ$?F&3?Cx&yM|f$X@plZ1)1Rg9O8cvjdFsTN;4zac3P^y z^#@anJr!py8N~kJWaR~kIVH$rjDf#p%R&-e{`(lZ`)$zN2#@>C%Fs}+6^MhMQX(cO zE6de1TbCln(9CR~C@E%;KKy-@H z5H~!pU%K86J@A$L=-w~gU6=K7M9Y0cm)R^IXV0FECCio+#qUyYR1f?zZE?Vx^J4cB zjXa#^sQO2V&Hy{R5c)=g!&#VBNy#ZriFysV?98sbVZ@l2 zyix_s!CWpwD6G$-B{Y~bv<>Byav}@)8oT9$a>_1g1D&-<>f*k~)P@t?l@%d)XCK(2 zQx2lbC+`6$oBE`YMr!Q3L#`~P=hgA&!2W|}Tg;2)%FcPHsrp?zcjMt7K8m;Bc$beI zJ#JC3ro|BaN=gS6!pc=EaQ}n%;g;KOD&Uv>&EL<+<=Z_b?A_;3EZ{~9;kbbaaRcna%%>Sq<0T=LGU)hlt;HCL4r(uy*S z*&@}H*VRE4f%4d4VQ~EHq9DZ0_tbI~4ash8ZQ$67h7%e6KE z*!~+9gU0iyx*f9**?cw6AkRdO65Ta&3~EpCe}3`bVS#1Y@2pufdE<50@bCVge+L_{ zzgoT<|3mjL)2liwDno!ejOdD+u@*kq5By2+0WijXOz=PEnGb>gK~-WYVF&{pY?-b; zWROt+C@3pOoA3s)A`@d8kcc+J;yhEMPn3z(-UI{w45#w-@ifsWCNf!pYO&%8GghS~ zLyrMHjmK*AFbYKW7S%E}0^?*9I3yGQF-~Yu=n5e}o*7PK@9w<~7%qlOXdCK5MUVaD z3I5)C+a zt+`?~X3d_Jd2?1wTyB?ic6RUDgHv@5fNksmc6Bp%Z0f*y)yV|^=Mevcs>IPgi&Rvv z%ePSL1OaDq@RqIax;qG4z{QCor%dm7yQ*Zsxy?DEuJ2XuFtXv%2g7M3BLi}YX#pB? zA%~GcCx@=YxV_U*#6&jml;~a@_4{JrsyX?al?eT=9oh zwBoFvdEz-d{G&(ctvB8w*}6DlV{$Dev_KRd&tEVPH{Wq1e&yHyPMP5xY5$Mbz}Y1L zSX#CYo;7=R&DD~-Ag|N^s#B=HkRiT4hj28E8Z9rWGNA{sN5qdtEjTu|B;7?CRp1U%$U`Xtqo35m$ejdooU9C zh8$^4;A~Sm8Cn0}X(pmzbQnt*4PKUh?*0v@r?G$E0i2mWlO7#Y<$1nxokIKcnd#DF z|M3qVF1!8-jYc!4m*g5MC`?J^TDE*SZoK8ja?+m!6uEcvVGN%=Bip3PhC#9)z*P6y z^t490p}py!eo|d@@N?5hcW91Ba)(FpCCNX2w7@QZmVZN&y&JAX6Xy*R0te|c(z6YZ zI6tFKjapBoP3&<5sh91TYU;xT|K|_?=A=px&<%ave8){)HtbexxN7~Ug7HuDGBuHZ zGVCeCigNw|D1tyXEcs{ENBiEhQ4{=YYd-=0r}{Uvr8Z7cLkVa^&m7wd+HZNxELC5g zhb`NzGW2q+d@x!ZgcM9Dm6^5WT9J+ELQfcIdj1)zh z(gf4vzabDM%pyvTA7e?8rWs{CZ1>LHICb(AOxe*hW9R!anuOo7JV$!|r>0L~^Skfi zkN(}C;LxGNg-+*bYEp#SUKj?QqyFYEe;q&n%iqB4F3p)!{~w7iU4AHzf9<+8WkrCZ zfHc(Zc^CvB6-4ad@Ns0;MZQLQ(YYZvL(5uRv`Ifi1YH3EcZ$i8C{|$DLE>|`x2U7M zYwGRo;qgkqNF57@L6(iv2lxX0tW=C_xF+~NfA}9%T4ky4hAY?MXTJHM_WtKOCX!>p zWq&E(g&(`N?=FV{DeTC#6ji2u=Zft6O}{7j|HSwocpOEDr~z=)DQFQKwseHOktVMY zLP8b|dt1|ejlYm2=MNgJQG1s9fKykMLua2miLjwP13CF?6xcRcyU|eQr?2MU0@7wM zU}bO+TT@BNlyTBixDF)6KsK||K-o%n$F`kiT+Dg=DH(&xieaH`^E>b1U;aP;N9^6R z7pG2~bUtbujF;6QgPX3`H-7$S@Wrn_P$uq4l%JjdhizMaPG(K7ShYfzOQ9^EwBCW~ zC?)xNdsH4-Cdm3+8yzOwDo&N>GOV4B7uTjdktgViUxNnqC7gAPV5=!IilDe~#-(;? z{YV)>ZauisuH}$tX-ZwO<>&#*MHGfYO+~6dbvWG2M4kRzh|<-Bvt5GM6;WcOCIO!{>`6Vh zCY5?MfMtV_`o6YR_&4-ftM*nSOfcutxC&;-dv@(D<6=f1GhZ;Hko2ZH>n>IK?mL_D z;wLvaj=_ZUpKw5?3K#=(0OR+epPZ;4}H*z9d4 zXPe)y0e=(0BQOLY;f9p;!<44v5~o$=qy&COSfcXPd)$gYJ+pySIUP$A{OdF43jZ?( zGvp0gvUD-7Sbqg>zwQ`7=#Rq?S&B%XF}stUI9U_yLuGP~SS@a=Z35eE%F1R8>*j6#v;3!SQlWdgtCGrFgK|I& zu}t=pQ~u;&la;GiRGthhF#Z?@&s3u;LnZ=B7GU1|`Sm9_fT4CN}wbX3q8wBf-$Uo`9Z{55FkNo6uJn_hr9X+QK zI802|b_8?PgsHqV8{tvq>!2B|Kua(tDr%PQ!83I_kd`TBntSmu>LYg$-DvxLW zQ&gH9lizp5CuB9?_5U&lUf|A$wZ{wi!CF;wngW1?6Bun2J&byrV8d~Q+~F}g6J17F z%sP*q(Ha0H5t*j>y8tIzwf+hI&mI1$?ta+ya%pkb`Ekp!P;Luy|Qvk(GLJRP6B}CE0$yJy4AFB(ZX`C8w21(ht9;VM4H}UOk2HCcB|FJ z&@*+4aJf4$$n?q?QZFNh-2vK%(TnU%5l)WO;TIGe-JJC;-h-7-nUn_8XvX6EMv5l* z$2rHpQv3gB?>~SoJ+d<~@SOWzdGCD{s^C4)K*KfKJDMKO&<(}VN{XG>jhJ0UY^(`w z?5=jFJ7N{`)Mzvsa!6`8Ly8&>MNhT|8s58tE12@$d;4C!s(X|t^SI1=U!e-90?NF< zyYTM4|Nm#6JbBD_PC9zz%MZi1zw>oib;C-T^jBcT#n6c>?cz4`VPd?RXvg+lWoVH! z+v6P>btcM@9?ldTy8VGM{r}kd-!a|r5=<%VpE8f2UxQ-AP%*u$)3}9gAwA(sX9N}5 zSc)rCYr6~f`n?H zpOuvW$BrEr0|A%xQX|R&%4s_EKdB$MpZA>3^pj43M*W z_uPLsKJf5;uQCkM1~?4`M~~sep$L9fA`H0Epgd4SO$y^bzGbP~~sF%J@EBf72?wQtCKX)?xP3w_i;2~HjCzf8|pe z`oc+*C&69!-T}AVesjuP%{H)osdV~szY2IP96z3H+<|=up-Z)nwO2^vSNa%rHa=Vh4^DvmPa;C-(hO8Oic z`YGkH@&`IdV}Q0jdMADkhQJwzBBbD(J1J*1UDWUa0$&|%lA%`IvS|zK-?QK7P=k9( zFD$41z4Y9x@CU#BhqPncPTugx+7AtHKpa9cW;v}jWy%!%$N!iA13mPG2Vmi%1=?Qa z9emQu%PD-AouaA5OBVs}qb`bI7NYH|rVZMrY7-fe6B8S)Px;>%4}eDH8+|dwM{`CH z=>P?M`Vcj=HatTktya;X4lTPH2OHZLBAZwM(U|^+_J3^s7YcFll7;Y({!jlA+fJq=buB9kRT6_uzP8!D>^ROc5MSTn^6ZW`sk)n$Si3Z=tJcfj5lCwV^JYni7G z#u$jfLW!_wR1oN{dZQ2DFt$l}moJ_ibNu)TX!(6HFI61=%RBpV)bi4Euaxb6-}|6P zIiQcg^E*6bF@5HAxc;V<@C(24^T@~bHirJ97&*TS5%MZ8_v9cQn<|%Z2w^q}tJHvYeLXAj}Z?8TndAsba6DqpE>g9%{bnC{ViDc;W|2g^aN;tLn^`Ys=5fJoBzZ6 znLqHz{jmJHrJss{W11#Uot#ewoH1ht0GW1|@vwaP-$0Qn1*v*PofZQlQrs1XRGyXC zflN+>5_K$Ms&XA#9+>HX7^wzo+}WB8i+;Nl*|R>5NDx6}WO&d35#eHd)EBzOl(I?q zrIvC`|39Yw19&wF1oK=Ny5sI!%Wi)`-HCdP_ce7XpgMW{WS;0e#B+>9mQ4=%lAdsk zX~QgLk}PBjQZ%Oj@Uiv3Iar-Y6*4f*)yD~zUg=7w`#_5 zHH|0}F{(!*Rcd=;OWe?)i;X^NMn?q=r86~kq|z=`}Uf=-%AwjNMs0;Cr^Tz2>{HUHyh0O7BPy7k>$qWit-pVf~ZQ?HiiJBF*R~x zyfRK?y`vFFohy<0-AJI_quLksa|%Sky15AHO==Y}8blC%los%R5rR{5! zWBMO{`e^;<0?wvkv+HkI3HRQAH{SdCyYsle7m>tTKOyb>v+a@&a$dW5s|c2DbsgRpR(tJ zt_Ug$M1xrxeFy_eGM8$mi1axWH%dxp)G%wLkZ2579uS4jP{BZDGpRtJwHf031(1=x zl%DH4PpY}ob(ayiS=DBhs?T)KG5~<}Yd1&*WdAPKrGXLuJ$UdC{OKS5Ijnj6eK?lV za$s!AZK5JT0g9)qlMEZL82I|Pz6xLexv%8)&7a1_G|9SQm@;)rnOSX1ajk!ppA<7R zBqkz=pgmtoN1M}4!CAPnnhz3U%EM|72!hQ*H6VyVQ_NgpmCN&NwaU6lX)Z^XjZjc` zP?GbnT{30YdbM0>tW8{#_oFbm=@`@hkEj32|AE0l{KhYQ6(0H0LwV;vmQ}2}>)Lbv zdPN)d;rnZ0*N)wJ$#Lj+qN;B|bl7cNOm_WzY{rd zR(B;s2u@msh(p-`&AUpd4!Hp77M~PSHeQrvbU;r_vK~-Hl{YktLh86os!X`ddIZCw z#ehE)IPE+60R&{0U$c-$-dAoz5G?4RTS?Rxy}hUn;Tt?FcK^Nuv}ygO*vwCCJR)$- zC;Fvp&#t}j)9*hHt5fuUoL3$Yee(eizjZJ`J4q{05D;~IL=y#FR}=Lf(t6|g9-l|h~T&;8Q3;I=z% z2HxiMvxsaaPnnz#Rhcn!Mjn|NNn~|uD zlSP6EL{&wN!=(7#_7blZ*^1ON#9jEzm{G7_q(%>;RtIO<(~abYOm9(3sFy;=kDY+M zyY~{O$U;NlqFhwA)ZMaa8@#{fLq6%RAWMyatdmOwB@M*l{4tO9Pn$6QrR4Yp>{2s%No2t<#S06iYx-2BJAcrw;;sV9weMA%T5}Mrus|;r#R;r94Qu znL+5P8&~1|58apb0~$K6b?2{OkU7X1&b>SL=A8fy@kK8w<}tpn5muC^9-Cu|Gp7IW zG4#KqyLB2e7G+kJfsy2CZt!wqtpbANN7W|iYVSpD5ENJXCUlhKlK}%ae2I}(0b+fu z1IjP%q6sB1DF&t66>(F-2qUQ+ED#yDuty-w;7I1g%A=^|SlOyVQQYd%TBfkl*;^Vg zJTwGHj~vb00u%I@s*iOUTayzXIyD5(JnOeuR*tJd&?tty>mNzgtd-g0{ zcl`?ZNB{Ugf}3x-DUZX4et=7T`7i+Fy5}#LpZ6UYER!Y0kH`$(JeE=V*n>o3Lqo&TUCL()-9}Mvp>b|jUVZ71)tLT&9R2Tz<^#pXDFUyNdDQGGW#%1oNQ~$aV%3uAj zf17vv`|$mBxs_pev=CZJQz08hV&uMb`BHrN(Ffp{e(gKe3WZP8$Z1<9O`4cj0r1I# z1A~J_&Ww!GXi;>P0jzbghE^glswreh!)`-xO6Z8c1h6Qx(}R5KG2Vf8X+RMPG&xjz z6BHa>a+^*Uk&?2UDO!PuHTAU8)XOHt$xSrb9Mk{v(*KkSOETBV&)xUnz3{E?d;`An z%`Z7_85{SvOKlKeBO_@Z)grzZGtjOJZ;cX zaD@kxEs+NgRKSrHH1SrrKCNO|0aYGde^Z-K_-$ID$ic7Zkt(A>q`hR}TX!3Y~>6 zEM>ZCDuN225PfE)v_)HH+e>C^Rm=^@Sf@)}>1`CNW~8`dmid$rCjJC5K$Ky1ugV&V zmI5P^*Kv6GG^}5@0fvW8D_43t`h2cvn@^rNnV0*0u;xQLcJ#OlEvT)dN_fk$rJekJ z>GCD;xzFDNx7>CUjGr*R0vMnAWp=v*GiT0(aR~?%{^FGbd ztez@&k)L8PeA-V`S&;|T@gk=fiANtdbVn3;FQE?4AM!4A=5v{!JkC!)}O2Lf*N5l}n23-K{ zckP;>XpO$93MmRKb&l!(h3J1r5fG7=L~iAwD8F+QCBabuMO#m-*#ChmuBKOFZ-9Ol z+Dt6EhR`S)71G9v57wl-ijwsn_H?U93ks^ruhM?fovEyC8eOVAhz*Ut+)9y8Qili) zV%=?V>?^c|Z;hNjjqBc94|*JLU&;K4OX=cq$>Gz(uxsaT_~{QGr@edjA}CDroN9Z^HgI|OD9=I3g%$?)pe+EV_*2zYgw*;Ord7|vI-W4eaiy*B7 zyt}lRV$9L_9&8VplDRq%QB*4V9Cg>we{f>L+3>}mmp)h9f&}g?mGhYw?uzEm%fK-?ks6pG1OXM<8_MhqY{u>Hqoaf2W`Vc{#?W>cq!$|KBJbGpVvKyl&k)Pis6vcm{wWi<# zU;XLdz)!ya7)Bw}=3q#_mcMz@UtVwjz$5qLum0vQ!>SusW;()qpZZlg1oA(ghp;4N zCKfMQlvgGct@e3cXp-VVYE(u7+hqg5K{vIsTr|d(3gu@BqQMBXfytjamdXLuY(uTD zEz2mcpKWD_+*HX!SSh;|BoeO%L5HUxI{Y#H_j3E`Ki^D4X}EalLiqM~zCr)qfB5Tp zFN!RS0|P35pP6o4E|+;3Dgg%TDbM;(na4c2xyxWldy%S`3SG{Eu95Aqs#sJ~*JwH! zSU#rzA4C5;szzX$G<)695sAKvQq=4fg*Ai^Rz<}$00`t3Bhly!x?ONO)F62sF?Ce# zA==tdj0zn}iA(_RCwmqfCRVhR^h?*f3!?~nTLpb8#~K=}rw}THX~J!^o*EjajT<(> zkt0XSBVAXl(Jpn)`V1@I*3H}CtvBAG_t&h=^!kycI4O_dMqQSzpn}c90{nS$R1iFAFTPff{AX6@5Zb74#B8WKv{H<=W-DQbaOYZ+@pf zatw{D3^HIcW6wppT)S+;6Qe`Y^P;N`NkM0|1Jy=H42{cJkk?4fnEv-024Gb?sJu5&9QXMA8n7nh%o9 z=~kLml)PI%D-@EDfDn5+KZlXvXoOS%5Y-+vKgSL#W=ErBfL7^M+CXSGdMe?QK8OP{ zj(E#6oL@L|dIZ+Kw+@ab<)PsCKPti~&BeT{A1mP7tKWsyuf2&I*KW)Ol+^%*4$D=L zHV!P6xqQV^y#20Q;Y(ln0!&N}mW|-$a&a3u8!>y%OqiR7C3q4RsPhOm#Dt(>neAC) zN{B%XwI@uV;&*Zfh<#Mr-hsNq`(3tXS!tK5&6oi~-0%dg?Jlom&QZyLN|`HXtA9+1 z(LRpp|7iMOXzSA8xIw)BhLw2l1NYz^NiTHV|7wo-qjPV+SO2<=eL`0{wm}E?AI$rX zoE|=%1%~^i+tm&;+@)jJ(G8+HywcwhpGJ|^Pkt28nEvb6NJD@9???isxhmyH2#L9f zG?>k@r;~v@D2QM7$yT=3E%D~sPESfjH7gP;W28Bp@}8C_ofkUQ=r473DRKgvHkPFk z?tI-!5J|aqB&fF1$CxA~WnE`na}_ZfLp}CBDgQ`#QA*>nvJLAu(vibQw8Zl=Hm)Zr zi*RxXUVG^c+Pr=<96fq8@8l8gIC3o@G-YEtpXK_$hZ=iKGf@W^?T~9TZALV`NIe(TQfWpWejEd?` z#WjmJlaZZ_gJfaQ39~0)vW-~FQFs+X+s!v4fJv7dH#JZ;BX~^zN7MfTA;ygxN2_jH z1-IRCYn}_E^K-1+s~8Bxt9ATrD|9ZAW#^KeVSvtALmr0Qw|_sZ|6m=QVVOrQTKytj3ahv88ZWc3jdP zGy`U$2+;B+Y~mc7SPO^vSXIJd6lZ;cIw_i|Q01?&6w z?uQ@$-DB{>zxfd!Nn>w(u>ywvj8(DoFO&X;N9eu>@5OI_=Uedbmmcy{&EWDeau#t6 z0L))F4|yV%{LcSJmDT(k*j}0_h#S3sYBg((l35WF00ySyaZ-+UfXTfy9%aWT0uX9ZQTm9FFl%?wH z-~I~z@<03~;2rGAN|)#UV}4bkru@Ko;V4pvTH-(h~7I(aIO^Kaj_6E<(y0y}r? zOqs{G;KZ@xa5CNFWyl`c#{MJSyI+@}Vq;)YWY=^Hp)#b=E*FbErvDeD|ARyZwUNA$ z)(qYUmVhdyGsu@eNya2c@^A=Zd1Lxt>Aza} z2@}Wjw%27M>`g1JP!)+l&J}ej?d@N^*ui7e41l~b*`Y&+@^QXfHgAKS+jhY2U3+NH zu6-%UI6^0moxqdHW}Q573Qi@5&(2@w0u*2#_#O2}>bD6@#WvY3sH8{UQ~8&2qByHw zjOjm|pZ*Ve1riCUZmW(uD$yE3*^aUStLQTSO4_{WIE6hzjlUfTq~;xUiWqoAQ3Hie zu|NbiY#B3(LVqo2gyA85rmD~HsSpHyyEE-~ReUQjOs7PXI4YwFu|DKtXlOVepSgJ1 z;tT+~2~iHfK;L?D-{lDYG;B%;{M8pv zhQ-QYE%)*{8W}Yk6rf4ZA4CC&z>_I9{R!qc}Q&1q)8F?Sk;&F)jIa}drLpxXQ#by&;IP}kEQJ6;X{XE zZ~D%&`1v32BeHkTz8q+z?|Aso5lFU*y=5Lk;Z;mjvXv@JsE$j2lNi<0?)r>7b;0oE zC(&0kT`J)LJl5^gAI9|mBlUk!m5Xn8!6ILDMRAlAl$Znn$@9To+H2r%I-)U02&RB_ zgOq50-ldfMzBp;B-;>TRpGk!S8BDa-l0P8euFM|9Z zqUjCJOz1MRm=HJZ+_4L{Zr<86<|s5(e;Kv&>3-|hu7~&5e1Ip8pU6i&bqz6sH>{vr zC^DDF>o}E8U;Fk~aoLJx+1Nqb%**7;>=aJVnl&^3n>=|k988f3D$eF*le|Abmx4e9 znF(PWHVq`#GO)C`Dxl%{B1z?@=tAQdG}Gv^1CkvgL2MucdSxGRNrM|q6qQ1kLQsPS zY8iXEqGqQyh$^8_cmWiIZcP9C>;L$P6JYVuMR_QU5B=d(H$STrVlNlHXq|d{FY;5b zJZ>)&h50kj(C?ll8X6wL;ZwuFE0DHt-9fu|?#3<2{;Yq00~|bfD1&U4ku%9Qk)0@; zYjSs2F8$=c21llVz;r;IYr9)t#?-2#VEMtuHI#tw^Q8M-9N2nEM){UwsGv{{*g0{NE%2M)rHG_JOP-+{90 z*g2G)uNR(u37-7vQ?UA#)zldn$op=q&K2>J)LJ?0A{(;=E^ukeGTe3Vo%qdP_Bm2tCg5p6pb^T)8Fkasy&mX2>7$PJ`j-+850>T6x5>S_BGc{ zWBPvq`akG546=YQP*pT5hVfg`J$PqGM5gP8r5vF)G&u-IB*^O#@;zIk1eaOGsBJ;{ ze-xD-y>wUY49*22M7~%=Lf|$5wM?x;#n9WL6{=BF9x9?EkqolQA3$Q4~ zspBUpIW~O$=@;Qwe&g?#Cz?(A0~OZqE{+>F z2zTFi7yN@?|D}}rp9?Bmm$RW`@;NIqefo5mlZGp1%$#ob48Y4@lg9$MO!pdb(*BUB zvJ~a@i4l;fRe#pL1u%tn`A54CZXEQPFk#M>A49pdI4h+kQp)dlFr*&+zP7&7=jgUk z-JLzz@aY=WfAtpp)1t+T;5+}|=i$+>eW5%WCcu3b*GB>Wcxi@$ZNhLKMqCG5H*L*n zdyeKet=~+^`6KW0+3lXi(?cULbb2U*g7go0+uk5f=32E+Lu70^B&bg5%+4}eQ!4`u zC=`2Wh#>zLLqRU9`D?ebo!-}~MHIk==+c<}pO^j*#`_h2bCYZv&WcIe2xpK?kdVDP zv~nVMmDGTe@Jwl9WD)6jB-o5j!}!8OH5O7Z>5W2*iCdXNq_SZne#lmf_L zmB~AhjssydDvoj?ObU^@^*4~d2<_<+8ZzZ6;E`wU^Ee#u3djI}qCyFothoHlt1rJn z+qQ1UFLMYyfHD2grSrDZg98I}_kDNb4L9GAfk1oE z&!xJ~1-cP&R1m<9o`?H*_>afy_w3%6?7`7AhJQHk!nZelKa|qa_8rWV zgGmgMTL@5Lu>47>9KZt!#bw|UgE}N*6aB2K&5L>Qotfq zN+^HbOq+a;>Hm4@|DZvET)4Jc#i1L~P07UMwPqN)U%5qs#neE6Bc(uxbeKHjp@lZk zI+2t?VYo!;R0fi=)KIBM8eqbKUUsR|gvHHK&;vv_QUoe0<$WEtDeq{5+?SW;DKf;+ zb`>C%nev`lAB>uYVxKrY&pTZyw^Xc(oOR(Q|E6NIslqHWioI(`1}HHbIE)Nqup?U z$#Aiz!I|YJ$mZNc^%viw2F9KS?Jze(>MX(R3kDVSs0o!Kiba_W6B)=9Flm*cWsy7z z$7qm1snd)s_EIZ#sgaE=y~g!FU4w%YI17ef`No&v=38&f+hJ#*8E3^`;5C}#?pIy} z0n}J;K6Bud%&;FCI>qO7WXI1F^9~+3NIQ4zf!#ZIA*b~B?%GFu>gTaz#|r<+4Tul*4rwXinP^$uxwHgFpm~WxuWjY*OkLE!&%D%22;^0zYCX0qA7T( zCmL__sojY0=y#3s zH>}&3#_Tue<-uuakUm_q7J2RcnKL8OI5AT0R&Q15#8IBC#h_LM}2Ps8JQRI99vo&qhNe%+<4U&;&Qo5a6vTfGfW; z+)4HT8A0a0N4+W5!CJp77P#^jUc{2Dvx7niBm@ZdsG=zdE#w)x`}Q4x$A0((rN{(V z-f&$W|7K^;X#b}_{2Bb%CJG`XMIYvF`|1@ z1suh`TN#bfG{X?&(>l!v-$Vv8BdQcsHcngVHEF3n zj6rpOw4ar4(Wz=1A@mypL@!AZ)QVz^>A!p!RsRPoGQiviLCs`Iadb@@>h6NdK}Lk9 z1VhuoMw$LDECQ_AqjWfmqPp|FgdW8X&sz=ouOH&=WfaB~N$yl*ZjJB|Rb`2SIY%hg z8|W6G-3noBX6Y3O&u59_^BnfR6o`%dkQuaMPe-etppR4s*&?55?~KqF>#{JWlF^Nl zqEM)5xTf`=H`|QD?(G%E`CDIXXN3r(5RoI(gP-9yJwmKkB*+{tdAndt|IexagLOq%qr=dq z9<`KrtVIU$>*I5qr<)F`ZiX+lg0@Jo2y3Nr;*0?d^|>>R7a9|q>LoWGO1V{s zJJ7t-@7dA5yVLTv*nMehJ{y21`Q38pW|%#DR!#@L{QN7le%(eK(G;L_p{2zHFh$CE z(``4wm%sMtc`Yrx950n&?rKi`&zUnj@nm*N*ADWT=JZjI zenpyPVvU6vFz+VI# z@5$eN9Lj}8(o;@H&E(SVLR8)ILPZe{z}jvhM9n*L_$Y4PxEXe(lpq6ucUHd(@4WRc zrpO_;5)@4Wjqy5pWZOc)UndhPY)edYF~Xo@FAPMtm# zrq7%fVZJo1JSkswM!EN=$&cHYAZ;!~Sl=tllC&zSs`bmPXHeQ8pMkzSu`Ud!iu}vc zBX2`hK&8}LS3g3`c!k^1h`7F7tNOoq$wD6chguHqp{O(-mFAmTxj)&N4;ONJ^+&!L!P7 zLdZNQ3~;$8l~)YU!I=J^TmJ{G0GsY(ZFRxWaXZmt1wz(x?}Pkwgro)2k*$}kj6h6R zl|CcqcotxYa-`+zkBG5z#aK9hNngPlg^KWsus9`MJE#q%iggi2 zoz3Sl3Iy7%od6ca6dA2LSSdfa?*P2{+FP(-;rx6O-hcC-{df7qKStg89Vx*SuS?oD z`2#!uDbuFFFZ}(VgGayo2+o^77kJGtFa3*rxl%3_1?KC-i4!OR8%!C1{2Ng#^aSVt zD=aM&Ee<{nD@BpFO=j%9;A?801^GskLVc%cffsH%q`w8Zs$~~I5ol#68@-}Ram>)6 zr#6)@TJp81|GWd{!o>^d|M(yOBjkgA_+E7W{Tw|<_&h0(BYd8T&*S#HckYI@AFNA` zeiv-sunE?$-w0bbZOd~~Nahi!f#+zD9sS_I0LbB0AXHQL?Ag+<2(?10EU4uu=E76+ zW^?-Jf8|7k$pAXIAA}rSn)LC&utYT_npwy4@yMJhnK^4l-Ys$2ie>cGZ+;n{eC#QB z;hC3k^M=jREHX2yV5`()ngkUFiuy!0yp2_dirh4P+M97g7}Njr(0`i*NRlAJLX0WA zpl90*2}T5LH zWhbZ25jyXr$+9$@#_Ug=IFVEKdv@-Dt(&*ej_o^<=iVGTc$iL}Jb`=&&gs*qDKFDI zl|N^Z!_I)wQQF=OTYE=m^U?YbVt1_FQieG6zWQ&as)NW=*1_M@>T;2t{9)YS_(XPc z_=5vDe*Adk4Z_&bFIv2iC)?ukRV!fOg849M$|RUDaUx8bI01(f7~;vr%qPnH^%YOW zTiQ~=ASd2u82T=7#jSPlx>QiU1p#W45q#-fbe;Y5UzLgoEMt2u>i?h?5OhYBs|cG5 zkoFP^(gX;gC?IYp#NL%krT2paw8=wQX*|W2=zmIORuMD`P7@ zuIzZM6E8(!q`y-Z1sMqCb<_tB#kc)k9_H2 zoIGh#o|wmbXz)Ki@P;?iIezpQ96g%G>-X_wJRZkC$p2{fu06GD?HCyq1VJY)1) zw;|U0pQ$cBnkqYR{`w!9U1U?+gZ=g2Zjs6h84BWmeBc*ve$+{hd&2k$FnRJsnl^13 z&YCwHrX~HDGISUppS(t|*^Zp3weRlj$KK?Z9-Mc^Q z5!1o*qKk}C*|xbfG^mTo9!ke}PY3%5RIi{C(sc={J7>ohu6Wd||KxH|cxhV=xHZ3) z^nb80$#sK(ycxn*{VjrSuez&hZ*6lmqd>hn+OSl^n}F1#xV#LxYje2-!KouAa9dz) z)r_JE6FG}87y|c@bu^;&_@N-70Q2KIlLiAC18b%N^}r3#$cn5u$D)#Z1=W9w=~oe4 z>7Zn!hJiQu;ITy^%JZ>av>9f##Yw5*z6bAt2Oj!-0s_;V3E}URcB%8{|M1=jypa*7 zB=_vv1H-3>0l@o@T$5AQBX1allP6E2&p&)0j+{ON@4x##ZQisMj~+f+)>KQTu#_&H ztUs9(tR@?|qr*refC7Jyw%m{tRrEj_i38 zt%;K-=A*xPGp$*(XX1*LD}a|8FGvwSZ?m2B3OPICa#!RwA10JC8I%GMoPhB3qH9nZHEg!iavcSj6 zE$S}NKryWHFB8&LdC#Yl7ZC$9C7C#vLsW$~k+Kj(;akx{ zZCB7-6r*My7pl}J_@Ov4t_IN=h%iXUU-RuQQCPcwZR!8`@#7c>6CZ*7|Nl?_bJ&!| ztaohN!CU64l~mEqya7GQud7|2gG+tj^+*x-5T94xIOQHX2yaAo>t^S+GNZ)uj z!|`dno|iiEikZ1{=itq^-UN$MN}rcJu1o-E#meO=OE@t{^AL24i|65rk(A!gOCnKq z4)e3)I)mAk@FqpCzq&eSNKky3>WtY*x4r7Clp!{JB;bI|XJS1mV!s3;6I$=sas9V#UVbGYt*c zJH=GG!lQ5=1Q-AsLEfQcZIyQCrTk?#7VJd2rBYdLqcRMNwN<%zy?-Vx8L8XuybZth ztuMnp_uZ3~Sr0Z*zFx^!mJ2?+AbsYEkuy^S!-h;Q(jb7yrAwn1UZS;m{T4WsBEH4T z7QxTY{Wjcs`z`Rh|NMV~?c25^Z^*)jsUVoE0?~^CF3kVfSSQ86OJ!bVl)!sf41t|! z2N1H;*0`b;MPJB57qUt1h|!6cB(WO~m2(HTXvWCo-0xje`hR-l3~t-JJ@1RpDSsZf z9~n8#sqnx+P4@xsoq?wK>eQvsOR4|m*N%dn65MLE*EJuOQ}E+b7Ayf_nlN#Eis&cf ztl6{k=2$DQzYZ5KSq!u1&0>HIQ&L)gQVI&jj~`40;3tm1iKkmv!3TyQ=kHG60SuK(y26nrNZIYS2flcfhbNf=}Qn9!Z;p zqT(1NA(maYT-m5b#v5AxBi+#$B;jz;6Uz#MXd(rC??Ql#TX5l|L9r zH)A1XCxMVS=hirZ2!@h}!d8Qf)`4Pd&8;aVT8I@;?xb|((&bC=;V(W2yuO*!w2W=gI5K*fo@1y@Fk3yML5ZdSf4gq~AsiYIGCjB2&dIek*0S~BK8R+sX zeW^~$+>SSd+-p@*MWJ=U6B#q6Xd`1?LEs0aFG>)>cLclzR8T zpzslEnw>F`o=~<&AEn+1Jgv>>OEI+VN-JP+?PL-QHCO=0k)b|*wxgsV=H-2N-g9Rf z_rE{ya+V{yD`cPl3%-Os?8JE`0FTLLumft0Yq3xF^S%iO4;;jkCr`ndG``E}Q8t`E z_nmLS%IjC=<(4yN&4kxpej{(>!do&&!Hj!V5hK(`owT`j5r`qZoUSWK~Yk z@Ff;ll}{whJA1N|=ao7G;|5_;%52S=Jqvjb4{uvMWqKO7pD`n4uNKqnS+j7#;`uzm z7Zd2u83Bvhg9G3x415A;2RjhNAZG>jw^qjcU3wM?uejNhD2pg*LjVfve8N7tRAWgI7^15Yni_mHiGvQIV3XK{usJHOd ztFI($8E#xG_33;PUT8-UVq3ZyGc!xz0xu#`)o;9P+TI#O?Ogjku+W9e{>z$OPWnmT zlhMdaoWA29TW`Dryi?my84>{Pj-ce;InuA9 z?LL`_Vvm8jPJpTytcn7wOkS;LGF2gKh=fWmT-=5iXJuD@wjUb(V-#j?EpHLt~Q+gFw_ zp0#6)F`r~uM1_Nb!7%rypA9%4yP!vL^W?~vpMM3mY~B`{20q)|&7aD%Nqv-semo6- z%YEH7P)Y%Hd_iVL?fXXmJ-7z|*`-g>i`rW!hHAn{2ZrFP(EmXJfl)xs1}J7h6oFNU zV@=TNyQSc6ufUVH!zO{qBT>>!2>}fCOLIIjS4XWXqvJvLt_*~9BeHH8M7|sXP?2cJ zDFuUL(=se7&_IW5*^(PEV~5$kQV$r-$`_enqJpM0)S$rLg@_U%=tXT%QHG_`|C1xc zpZmpc!56>!1(-Q=W{TRjQ|^*X3A{f7(Jf1YWN z))p-tZTvp!KS%WwlY^f!WeTV3^K5)h*DqSK2$n2eg7X*7gT+f0;f=T4z)l_~r15>8 z*E5)8GCT2s!5p>o$^^|CpgJ|o`(pGoyAsV$XajVz;FgVB;mz0IO6mWj7=ujN+0?|W z<9q&F8BI>k9hraChrL%ypJQ;z)+ZobMw8c2Q=|W2z(U+2V%%{Mt614;GMVyKW6@1t zq53~)vMI?B>lWvre6K)kKx3%m8nO=8#&+~xP%E=Hb^lpE_LEXe3l{d27sRqe+fo?8 z&vyDKzZeCuHex-C)Y?<>pkacAnK0w3!cBvc$`c6P57A&iXgoQxGYyR_2{T(`6RcNJ z=O_7u)bu4eE zbq`_d=IwC!(2)$1*tnLcNm!l!$0^qbA9)bw%$6-jd0nM+iy?mN&EPn(UeKhXLYBZsRDcam0U!_EEmusFbo{O#jbY z|CP8rSH-jd|rM!BaO)~TC^}b`uQxgY3zQAjM4L0 zJx|O_k$;vw3{WVt#hku=1_uB=Ec}F*st#urnCEOu-d_Dq{n)mgv_94pd*1? zfr9P`;L6eeK^Z_Uj0**aR+q`4Myx9_fv2a{jG$=&j^@m)N>USz&?BmX&SZUNL1k)h zB0`j?pr9t}v}hf)Gn_IP3@gJ~O)~u+eXL$fsm6FvBp7u3G{UP)jWtPls<D{KvWqFeR}%}MF<72W%)bo!Wi(Z}IUDtbFsnZ$AyXNtjJ&)h>-|-X1A+N9J(>8e%u6gt4(2SWg zc>Eq`&z&XNs<|1o@}30a$Bp-P16aVCovwJ1*7?Wpm-;feQ?`A8_t$&~>pomhJdZ{e zDukYQ=c|`HW*iW`*4pr3)n*Z2 z1BpR@47ED&K;=W;a+81J3>MG!y*)+$4?p@~9t-Dj|10mP-;Z~3Tc=E&oZCHd5^w7Y zJ`R~LGN)BO7ctqkWgDN;hG%p)w{T_Nb;=O;Y~P|F?e(HzjcO?32&oGfzB6 z+qP~)b49WQ7@U8g^=EJSG-<$zKXQ0-{ z?BwNq0sT!uPT8feQ#t$3>QX(@?ARNxt%gk-H|O~?C2B2e2!lKp&sW*2au3}W=831; z51_CU!q~dX8|i(yLkhR^eF0SyM!~_9#LSH{LVZO8Lv94L0pJceI8QfXVd6ziuP{}e zt1&4E37RnhqaDD755oNr^-JMkv}#rrQPZj=M$+dXf`b}F)Exw1k(4z;jgj)hmMEpV zfBDyc3BK|3Ux$0{yE|{*F*vR|>=CZUD;m)hd%>(Zv+~iv+}yl=+Y>kWA|H<<-q>Z! zrY&%A|AD;AB21gwx9mYVWJo7heKYa+;V(V}fA3d*5&zvE{~0{{#ItD}^hDnOJsWP| zwc}?OB2-mT``d?`4lKDwbE#Zwd#6pG1~X^RfC*{Lb?D@f z3k1}1$C(qAg5$?eAn*UqW3kZ)=U34Uny#T{5WpFM8*aV<{^7s>YcOl(OnCR5HTgui z!v~KL_eW;{v1E$7RsX6QH73Vp62&WYt7s-TVAry!*lK)Dwk+5Hi1JyLNj6tSYPfpz zKlYuNYbpoS@W@Wr>J0N1bN>#G8=oCGkJpqa?0R<_s-{C205E#T`6o;`7ymjAs4Z7a+ecOS6bpE;^Cpw@Xnj>!toO) zv7EV4k~AUc5z|LiLmXrRdQa;;>UqLMRMbNr7l4N`r=YY75Dm7t|%Ip{_zU!NOqjOP96&4~hb6vtl|EtZZoz|7yDz)!}nMbfQtFg*L<2 zt1=cSN70{H+89}EAMLMB!Xfn zHJH4@L$^}^(P_&A0z%LydDP8|_E7niOR07f(+Y$bj!-5i1H_Spa00G{t9973=FH4X zq}Yfv0EqnyrVxbAR{-7;c;B9Vc}vuD8Q^>`*>Bc0&aUwO>GyyBb22=zoSg%_`}TXt z$HVfz0ieh~)Gx#s;bMGLF-o?b9aJ<(`IYh$KqY%Zmd( zQX(g43>+9wp*WQi74n+*fx!+=m^2}ez4IOr6DCe1J}!Ia%;`9P{sNf82jZmh`WZ8M zUdi+f3OLQrt7_&gn42f|>2})c=vC+P61=FUplSV@x0jQ%Z?A~W_#XooK4@#hx{a{< zwYTW_vEwNFCU{SS%A0kx39Rs69dN!E?4QopY^U4{b{PNcpKR<;E13shUJ3P@mG1bM5i zN8Es^0Wt@!kO34CQth2zS<0o=J`SBl)u!niPOGFn|4#p%W| zJmkXrEnI)o_3+fso`J`I_%qnEXAd7WoX>;LBy?4&bqoo7#(mHc@Ucn@N6K%}fQS*z zvZrb%5~2kKr(P9jhNbWWsR5mrqy85GHt0~IeZQ}MMF4>Cugv-4l^uLv9~-qFOBEtnfVc5T2y?ttheWT`G6@P+h&`A z!AI%bm7tUA{8>-V(%C%b|ICxm0^1orE}1VGg3MhmlaaCNDhkNgfF79a1Rz)2`(W!m zvEwE-fCjVI!PfgwsXO^f|9fmSs8iG|hDvEQ2{HfH4W3uG{3S48T*2%+4h~NPRA`_q1O(xsHJSwo=tAKZfNzN4+SE2QFv4lDj<#Ng+CLKn7q03b9IbX# zFN)IdV32wXqYi)Nq_BSPhsO-z-um4t_^fP~CC)`!!O;qVW13X@W$6Mv{ z84)ZGtQ*Ug^CmiTvh!b%96fKUGdBSM&YW2^A0pp;c$Vmq*Pn;opaUIy_G;6!$O8sV zhYlWsHE+L{_x&Fk8A;;YDW<90Rr`y<>4ZM9Zr3q^;B57KiM&w7H%9%G_v^}EQEhf3 z7bZo;7Dm0PWC-i`N)_%`)G~zZzL4S|NAYAEX*8RM9S0 zoT93vU>GR;ZJA+2g|Zt}arKGL5UelywVrHwgffd12T*Y5E{NzI=P=2ggVWLoR{#=~ z;DEL@I&E~oV00-T`Ma+11ZZZ8Qq981KP!s@gak*La_D{jzAlYHzx={0ux!~9_|n(D zXj^uIw->I~i`&LyuRLLoHv*b5YlZAVz>w>0gy5@588+^E0h&5v8uE%5-YS>( z!sm1B=P#ItGgAtmhill`^Ag#zMt^*c*g2YaKZ4%3?C1yT!*KLo#qX==GFR9w(LW3T zyz%O4;1e@>o=fhRl+o(Cj35T%MdW=H>~DTfYS1r1ob2~XcEU~7i!$p#2%0tOOD;5rvGU|5x31sbj>=CcSd6a61FWp$_3dlha5 zjAS}*BQM%OeF1~tCWA`O5O>wCKIoi=sxLHM1Tx#vWh2t7uR~;eD3#>2GPOsJ9EEl7uggbs-g?I^ zIU5kKt1(jH%c7NJ2iTbNT!?uo6QBUno&#v270BYm$C&Qjy_Zw=0Mq>WbMdQo0Ht)s zT3jse8*tY>cjU;DS0(Vjx88U=M^UFvohtK83eC0hy1=>I6=jYxTxct%$bqKmJb5&1 z&(`u8+7F+J{tN6y>44Hid7B8j6}`OAMF)9~OB$o6)VDY#rR66~oRBxV;RX7)8}fPf3j{Ddb6fNBdI z^}l?_O6D~SLGdLoq4;(Ej{a`OI}{wPfD$xdYZ$}y*2?^h^?#6RX9@0r1ie>j2r}#@ z1v-jyT#=um=(cQJ&gXV`W7Jt1nSypu9kq71G_NaN7na*KI4g7_gixyj0p2YlykrwH zK#f%>4}$57vMF?f@vPJxAXq5@l|N+tfEf5u38lXmd)+cq!aM5=)b=si9L>I;QqR0k zw*r8x)$xyZ@eFRB#Ff+T-Lvwm$p@P2qwHMZ#EBEgXTc8*of1nFGS%mCwb39OPacA~ z{-#xV!WbXqa`x;Q-Z&+1AjHcPIid|!6yKLq&8|44_BH5I&{rg&@SFu<3JjsqYl#e^ zA#i;T&s`M#H>F1mctB5V6L(PVNhDQT!YY`@>IVjCaNIzCh$rfCpDtRm2zeqNpL{oK z)=XTG#_JhubqDV_I3Q(MR4DBsw%H+NN0?edb!ym3TGTP*923vT+Ng>>|%I zD$Wf|63Fcj1;1(Yu;dqcC!BaMn<>c)#jLs=#85jKF(mV#6nh}ZULW~`&uMYk?{1Gq z(f=aV?wMoTgHM7wUJLT=zoEyIUGQK|3o;*25+v>im5-l^{ttS?YhwVa%v49S(H(`) z1VQ=Heh(bJgM1+15eP}}fNj&pe+Z$v6mB1uDc}KDX2M+Nv9sJSvf0~!6@nkrC z@@l=z&~!><#~ZG!T(vSg;SfPq-cV{u<(z*P;fs=6Cg zwQ{6{YDJYlzqtBuQNAS7a6p?vc;;+r?^%*P2Ib<}_#D;qvCh1ne&ON;c}_i8qASP@g13BDT&MpmF|zOj0{cBHZy-rKdoquZlg~hC9DMZT%mF8px14Hgk3e6*H_Dz_`}4 zz%L(**T@=zr^ATO{GsUPU64wIP&S$9VSg+K8+2xtDLU)Yvt+r5w!tb3RJQqwF5Ej0 z^vTE%6H+e`s|PK`8LK0*JPEbPFH(`@wr3!UGR~ z{$uT-(DIXyWG!j!vVqXzC5zzOzxb^*G;=Gy^1{pT{lEGVZCJMvk0*dKkR4faUfph^ zJK?h2sYr0ifRKDkkt zpa0~Y^Ew@OFQfF&n3M0lqFvy*FwE!uDdK-A$?D@jc><0cK9Zl2LmJJ|$?IoCk>`_`LVmkf== zAiZM@HdJQBmr<0i4IM(H&A!PRh%zM*d>1gNpVAJi+oDW_Py^(Mtj=Pzk-xVI`Un_N z1$Q-$Fs17O6c@-MM z(jFcI=0jG}crgtO@HCeZX}BwYWrEU|(<39WW82Pp#`h<dMb*~eRNGsxKkh!_16Cle==cE71 z6A>~ENOF89^9Na9%evJ3ET5S$Y06|uC0w0Wn6yIl7%=wIsKH%=aU#|`iyD$ zRJ=)(CgpTLue;|ldyIik+b8ItPkEjHcCI$LzO+|s7kF4~cxV{5Z`%QHy!K|^Cu3yf zw8!{vi_B)Z=PGttWy!5HJIQX7&D5?nU5PT@Gl$CGscf-XYNg+07<_A9@mj6^d)7)x z(B_djf7OjZi)O3I1|kJ3#F7fO)T^`(I7Fmv9vp5<;%ncVoAHxBjc_P8R*ef6K*+3KcU zIqmF4S+J?bK9`P?p$e7G0tVfHewrT(OF7v1xhaM+l`PIEtMU+a)an2xBcasgG)~61WZ4<~W(K zu+~&sU z@!D!!x?*V>6Q2YO0BjWED!nv)$vmEv9nkcAOfugi8-wx8lfK2j4h;?AhIJe03=fr@ z$6f&ELrV<;WT_x8XG>0v_l^JdcfJMpe*Rv#oa)}W_6uH)4 z6f6+AgVB0a_+<`(=!;m={`xOLU<3idUs#lfqB+sUI(UHK&rqXB_MUY^N?}MLXAp=( z^Jf-u(k0jb!OD?nN(1z7T;_&N%q``c)0JA(@0G@S8$-$&&BbXM(8o2~WTN2c5JK`c zzpHj#h0V+w8t?;8qdOi$H-9Mfkk%YuE3*#kHbrnq7LyBqOe@0fO@zMxKiDJ?TPxe} zL-`tZjIbWGb|@_hGrbRs#_>Tn>_A?9@wNOMZ-8>g-M8E1v;o=M`)V?#CIWITS-u3{ zdh;C!3Ch@70lMAn@J3FbPASiwdA&Yw2J}fX0FfT6OvI}Iff8x)oQx$)7o{lqo3Jzu z)%@`9ehlxdem7?Ycq`%3M*~>;tSVQHr(y6)maM%}x5^>vq`op1&qv+nl)dPuIAJ`K z_jm`)yCg|tr91nv%)R->+wkM>KL&5SzFK}W8LTIr={!qN zyKg?)Ch-BFgKr%LHz$bI>MM*cUWp9hkUm2SIn;o;9m7Zm8V%>te6?x(zLUR*(z zbvCp}&pS)eFMzG_Z?1^>puLM;hfg$#o$UM+5Dpd%#dWKW5Ypouv9S|7bm%awdFOq4 z_NnLK=G$&Ub~@P@%O*irQ&dHkZ7gkBwrpwM&h_AdgK`R+K|z7ZmNm>H+1;~eaL?{N z$uSS)z23FVi@_V!i}D#j&za|cT-PnP-OOooy!G~5VAYMQ;K|3If+MN#Mp8zjGf;M2 zBaXtooC+6{Ay^_+%Ur&hCeb&sp!u*uB8YaIcX#9AqS>=%5pSf#Y26Od019S#C!4Y*!AgLQSXZ_D1Uh_ z%F{o41~#nU0EZ79P8psKO7_QIhz`aA7cw~%R}%sjjgl=&0+m_-1l!b!Ttt0?Dz$Fv zr!TkWgufRN7Df`Q`n0XFHUzBrU=)-IeCqRz zRxnS25o~BUc(L@Kr2N6qd5Tgh;?3D$oD~c%K|Wa{Hc&D%U?Ev>T2hTUW&&SL(3EY4 zGe*e>fG&Jcy=lg$LP5nTVCX<>ssXa30qPfFcL8qJnT>I?&Jpob^rE0j8V@Fv$gyG#He9LNFyedtm4W?FeN&#s-j@QKHs%E#C)zixTn1+C)URdhLiOaLGa zfAC%i6L#*-!+2tue_Pr_ZuA5ot3fUG;^e7QX#Tvp`9Pe>$$^hc zAY}67Nqmldj`GU{y;;a>?0M4Oq{$QW$#+wd&po))yVED50@sxQ58^9bZctGUkN6}K- zrwBu7Dbb#nB}7=j7Jh5>AHd>OdE1CVh@OeSgGpr?Ns$`alX!QCR0A1}u}#&dTv+vv zfEs`*0iXfmC)0n;d<-fPby#mRC-ZixLXJ5z@Q$@Natqw&D(b8F?#(q$*z88FKLknU z|@7{tCu&FUotvHj=Kdz~BhIcVsym&GG?O%N# zp8V-kaP;Ug=#Gr!p^6Ot$aD*BjWs$LtfCVal3;3hMZ#pb|H1q6SUt~2unl(7Umm;X z%n2WFE0ez}`ZaT*yTwH|X|%5sA7dN)@nP(`9Ij$g*iP`4zbWc6|BG`ur?(#-FL425Ak z#5$dgm8d9B!X{o&J!cNg7^QuWFGNXgp_Kq}5=F?2n9$11QV{Jyr@yon9WdD- zl8niarq?KP6P>yF`tbb^vxAv7eQJ)3%c_8@>#Ts-1YZ8gDo&mgqsO!8<F*@4d@LB*VDjANY6K+1pQ?5q zk*NPrFPO1I$)J|+9jsi2*zG7Rq~a7EHBe<6LFqDG4)qH~6#aqSYxEyPB|X^0V4Fc# zYdLMjl|zr6hRRn`^grMY)>zqmjnVFy+LD#!XZsx6{;~Am*^mIhvHd)j1esHaYjN9#|t{ z=x9;fqi!EV&o$D~i^#CzV>uVxN666|yDiay>JGv0p zJzb6{J$Yh?XT`&~!9iTUaz#orPp~dl#CkOtY;Fe|Hg;mKy!a~a+OZq=@7qrXR$X2~ zEQ2|dGdOM#@4EL+ygrS?>qNjy#gphTndaz3^*e*L1q&DO34=T-pGMA{#WXexJS4yX zCCB1jSM><`T!XYe7Ykl3abVxU4318nIGH0Q28ZhKYx;ab-)N40?7A|pR>!$N6F7!v zo_H3XOv8llzO$xeOo=qEsJj<~u`V`LjigOfs!XTYC#gHz^^$_F?6?%?b!ZtHt-DMY zsU~;WmbuQrMr~;mY_*dFqW))|bc+5Lad$@>%Fq{r?~sXi9gGpa+iYn4pu#5#`{fjm ziei71Wdyb`O?5gX*ySxPOrgXD=)W>-P>Cd{dcnEvlzWO^(7F_x5SsuxK19+pOn(wC4)jf5h+;0B7j9H`QVe2$4}%L@p;+W zr+BsV1K2q8!A86}4lipwb@CL>PQy3+dHvcAaC&&Sw0A%z{1DU=LP?Djs3kRHG;;b3 z93DB0FFpSXoH%|mZ}!5faN~{F+cL%?<+dMu*cv146i|RT6??E+rfAdI3o!8IbB+FI zfFMWA2<<-Stau?$)dwRkF}d1tH^D-*+F(Z>hCnPnR7b1egR};p^H+G557B@)WFmY= z12nNuK1%=f-oUhpGrkw{1f&ef$fG06J<7B0!psZVf3ON+JBAYtPsr|ElHXTnPinFK zJ4EplWE{waNO6h$WA1c9e??itnC=qU6mk^H z+SC)jkYc^4ePE%uwNDWPX%a;%HD9l30mpt|OqB&Ul+Oz2Ag>A-I&~^fLLPSC@TK7=>ldUMW@d|JHdS5I`l zykX9DtFFtFIC-po_s-pLqeqV>{_MypU_KCO)eWoo zh+OQ*q!y#0M%81W;0nBIu#fqGs*#a1@YjFwH}JEcK9y(w=Xj+{ZsWrYH$&HUx&EmA zwcsbd167O_4Kc{6dC;2a@TAXsa-*)3r$b&80)U|2jeO8Z?xX+icx?P#ZDB{faj4!s zVJu9j#=s%5=LS3|M7dPyWT1)4cJy_7y%APs`Kij@OUGV-{wDx1^Ly&np(D>{CoWEq z0P4;Js5_DD2MU59?>Q$b_@Pu7@Q58R?b4ZWJpvcelp_grH*3$vyo@XItN3X2DLzZe zefaPZc8qlUUALui;Fn~@F3;oepXQ~`wgqCUehk()dvoK>H^P^{{v|ki`r!SwDI@R_@?kpM_IdN?=2!Wi2Wwq;|wlmnAN)XJ*Tk5@|8%jYPH;Nmmg-G39iIDP9 z(1JvZgN9O`%DDhv3qpOQR~r)iL3GWH{)4ozqf_an6w*{|pt%&FZ;7+gwh*}Owe{*y z`_1S_J;{MyBDPVhKi9!}b}d>u#Qg@Izy1$QoiO9ODDx!1!d}hShep}`@Vh7Q1Cl}Q zY{J+m+p?IdK`0?4JgNK!XrJpuMiTU4Y~@S?GJ$|KBv&dO?xjohodA!l^IUlP**ryS zCWsK~M6}d1`b4j4LRL&Aq#RqVdhP^b+vGiAY6X%aA3<@C<)?6sDTuH|F6`_bdky^2zxrc%@16G`Z~m0C zNpjMk`8tBux=7Md6$VU>;>132718#T8(3Q_c?{Hzi}NXdO>L*Y6YL;X-!<3^_FljN z^t0Nn{s&?Jd?8}vmE!!e(!h>nMKD;9Y+s{4pzy9bWAu3m<(Vo9CWybI(`GaaZ3cuS zBE+5`9nPu$1JftW_?`#(%1|`-0~&!kD9UXmb1lLUGFKCv6BwpY!YT9sxL|r?)OuxU z1pB`*&w-crv?eWru`~=7!A~tf=;jZbc%!gDC6-mM zIRCU4h4)UIXV)lH?Pa4d9^z$n8PY&R%RnX4*bt(d(B?dedDTV`N=FFW#Dczoi0dD$OCj(x}3$e@%;A{ZTZ^bs|V^&I+NG5{S(F+-S5 z?@lJT8Vtxv5RU?yQZ=9_88EaiOsW8^`&hw7+kHNq9-X8;5N%r=orvFyJ0&~p z>v$8Pd+)pVGu<*-0nBK1GZ5eng!t&(+wQn6MRBKrw=`yQPs+^xT#lyjitdVhp+zxK z|M@=&9OAKK$7%oGeYoz!^|}6WkfG4$!FoG zKYSdvZrDs9PMRczXG>;= z5_$kg^}RUWCaciuzvGX}{%d{V_o{qtB8GRhF~JdHC=Qh(4L7^3(-Wve{TdZZjhxa1u{25JfR2^sn7xNk6ol20PA1110 zvEc>j3WF@joG#wEeJAnhfgIuS$^g7d3_8=!=f!jM%1hl=zwuTweA{_~s>BSV%49z9 zX8Co?@rz&nLUks8<+=dF3Kf1VdWMCaZSaP0cbu4vEV#hJe!{LK$@jpLtyFAH8i@WAz;4>l{ZwEXH`ZZ)3(ceR`8R7E-j;%R^(LxDFYxsAoO7h z#&k6Jgf#HZ%+EN_dKz%9t9{-YBR`)rjb1UP7Wh5_K{Q%9P%~1q{q3`%UWj$IS1Vwn z(NClB0D5WnvI9T*(A5e+XbAR}rLw=# z4jhC{8#clFYd(v`l%R zN8WtXoXX)sMNVBw`O{SF2o~$WPalDE=)ch1Q!b36AIyhNv#C+@PV?QWG@UDsz30mJ zf;~SkdL)3%d=DTc|J?04<`}SK0HC*7!Es;&68=Op?$Qe~dO8z4<1$KJy}?M#Z8xRW zOmA4x+a-t%P=nsG6htU(S*~YBG zz1U|C>@XkoIXpZ}hYub?-Vu(Y$vp9kuI!Zo9M$kjfHXFqm(9Jk`fXnNWE!YLS^ODw zQcgLf2bU~c0{7f^ciA@iGQ0W#68()qz@*8O^8A1$OPAox*|V}-rQwgf`A?Z72;d_~ z{eXI{|I8-_Q^P~2@$lipnU@FlAEa^P29Xa3;?on$w!l8`VzdZ!?7H+<sH#dA4$ zDeUk5^WTRx@4T1#a;T&r&G|!c)=e56bW?i3CXj+&yG+#o_woaQ%xUVSS~hhHbt0A% zDSJGLt1wjZO9XNF6Z>;V%j&29+U~}`jiM)cLN2x(=>vQk|E0bNA}wLKK_~GGI>10Y zwG$ho!z`MuwPVS-1P@q(_3%CoOdUV{yS)vyPOt|x{h-JWZDw6hW5HY~$T*M?rm(Pf zz}Ps&(AX#}=VM5sn+@u50-n|9BD>2#VizHbhzTVW2c8I%WuvX>HH2N z^aFMJN}nqTY11S>MMCK|E@D(1vURJRF5kOnFWz+9%`koX^c>ywI}-OwGUz;`Ij;oZ zjcyJcfR|rF+_DO6w@t$t1#BOSd{2$E#RQ3(k?zx+(!2_5r zYa&s#vu49|f*xX3Z~Pc-DtVn=R|cYO{jI}o^dDo$>|BlRVpK2?sMNU<F|zJsJ8##`fi2;5>826U+<-zgah+n}gw2L;f3F*(&s-<;ruFW347?K#%}LuT%J~_w27is`9SWukWe`xWFle zTAj5?30Jn+-#FpKam}wD#_AB{KKgf z73@mU-O^=?VG$qsI(afsJ=S%F0RXZnh?f99^W<}I>eQ(m&BlHT{g(dQ$qeG9k-X^+ z@5g_ow7Kmk25<}lcy7n7x80JLer;U85&4MWqBdC;@j~^V=Zqvdq4(Z>51)VLMObzH zN?wIva|4R$!cl1(yFQ&uGk6CN9t1uP{9pgxAHvSxpLiaS-U9c}02-SbS6uE~#N<6~DAX$fV@(kYs+=fD zQQxjKTRW{I-D8KbDAaYBVi5i80b?iFZ71B@S$$XGa-jnS4xmV`&}?wl(Iz=R0Yxwr zg_Dzj)=wr>rR@aOWdcJwZGdnvISigL&uhTU zg1`OCzk?6fe3(ID$$)ix?5Wrzi%o;g)ARoNg4vklK|bxp>qP_yAXV|ICX0cvSxoTYE<1OQ7Lt1|{o@JeV=eiagoNN_OWp1qI%G5WwN2J@Lt3qi08es5sv zgz4Y)J6^cG8wZE9^AY;ZS|p%43I=uDPCWQfe=|AGrwgEomWWa4MJyeQ(eGn~X!c$W z-I}^GH!Nl40vKAQQWtswd`4!4n!PQ>GY7txmIdD)@N-lZ?fP2Hq|v5sxn3U$x;y%YJgzDl>%o@`ZRoMi1&!cBZrUXV`6zve4Y&tb)&C{iva-Bd*cQF_L%i+9EG|D#8a z!lsRz;P-y#58%W1J|sQ^1OQ~U)F}FIoet#yG5MPNNo|XGtuTgO_hJmbbSS`WoIm4k zz?TflJ4{vwo1|qmG~l(FC#V!uLu!3B8g2Jcqv^i`71FhJ>N#UD9c(OA&4W516!+2C zYiL@dP|Wxm(2Rkn3XfNOXnaSch4M%PVEomd6Yb}ZJNYxDjKLA2Mf?^eP)rV@Dg_4}o zyOg2^Y!u&<^^8~@sj#j?X_<6Zr(fJRjp&efG`m>br`m=xc7wLOG10zp<{V4qh zXq;aaU3%2i({Uj-im?_5SOBdPN~DEq$1xZlsRJVt37J=Kr1>g8-BT-$&-6p=wN31+ z|HaeWCP?y2r+QY&tGra;9ypJot>1@V)$bzK&IwG-5aPx~*xNtqxqY)kr^y^?C-_M9 z1Er*aDJcVh5Pq`V3KiF2Y+KvIxiKA-b@*PfyYLuQLzJiDz15*o<(R=5LNOf@_$3au z;%^U)j^IL-6cI?zBnqo9wBHf|EiI8p8Mj6>i!MFn?NqcOc+LTWMeEWMeV=O03bcS3 z=330Kk|z}m4Bj2Q4jYPdo@v4Wd3^YVXJ3Sg6DGjCh4b@{b5WnJ1mmq6oG{<^?>oTJ z5Ts}byF5l6`h}k{4a0II_=E`)=z)hnkF(~?&a>(Pu3U%J+HC#4>V}o@rLTMuZ@u;A ze7Mkt^&8^`K_6TH*RR`vue|gsyz}Ne`SijiOBTbx;J~P~j9nl9s^c|)x88Ug{`}wl zCH(&H{3{w97|>NO=dJ&81uq_h9ISw!KUJj>^-X&xWDFowVD-x9xI)Y8r8o?M7B*&m zHMtXej3{Q7qW#s7T!b6dN)oxJwe!LffO%Q@i zLwwKL1W>0V0;T#)eAa*$VnnwUpa_C*VpB;Xl~yqb*q_GD4<0;}w+rU6<15K{b93{N zxhWGclv4kz-*^-D?%9_k-5&54l#xI1(8n#e--0WyTai=ed|mGC{isWwFQVI4UdPY- z2HbYntuTMVeB8HhKb=S!0b4G4f%>nya5jxWA3AuL-d_C<4h;?E38lQxI?prdO0z_f|wFd%!+`yHY)V}5qZi7EP=$`b{IQW_YU=nhQE zs`K1#OzI&XY=HqtI9raaio#cQLP$6`4h3k1(aOYLK#LGMK$S$>P`?XWXN~-{=~8SD zxB$U$fkvzqkYf3cKp+ZE#cQb)gM5QM3uc?Kx*L=aB8$NMfBwkx0eJTO-ralhk}^Jt zj-5tT$mM=v9@B>xpL>y)LJ=EBbbzP4Hyg=+Ic=Q)58ip#9WZm&j8e>1=&X2x9#0Nr zfR_LO%$_|9dD!F3nX`FwC=o>J1YI~E{Xd&P7taScuzx=sK6r#uh5>nOnui~FuZjK{ z+N+Phm+Fenp8?kPZ9Cw%|NGy8S6+H8ukwHrW_)b@HwR{pl-l34-?5Pa00{P00`T7Q zYMZRh3XaWeG)B6y=c5OeMu$^{@~L&6xgLTZ{SQ2d_k#2HEs3%64b;zX)ot~5Ibbn& zp^FNPxmGPgn3Dl@kO>0r0;mIVe(EZ8Ol_NZ=!4IN_`;VSfo0b%-q z)X9^1?|9E3pTGXA={RxXByQWf4f!w{PUJ0ExFBT%reE=APkh=}3zGP}hsS>WIQ*yo z$^Q=+tmnyoW@|pV{)d{uEtcT`C=pZCAGKB{58)=F+CPo#Dfl0>XIkTj-gx&z0G?PD za=b|%zuHDWZhL(J;i&o#RlHi%s~F{QCps{5QCPiOJ9le9j6SM+{NGMhh9gn) z{1&atvuczA6MKXh0eZ&XW7~^vGShpcB zRolILkLzKWo>3IK@PgUK%jCZOop1L{V!PU|0)c&AK%N_r0Mm7=R=^j(@+cn}jeMBQ z?p=HGoC-01aAEpi0Qdzz?fb>zP@jNP-?KQ48s{9%zSa%J_UpFj4QZiTXkN`mzSG-2 z4e30K5z4K6Lm&M&fDpk3g!hauXn|-fKmIkJ6^PRuy8$F@^~Svz`0_F60cDXMcM6#w z@{a3d8zAOMfYZLGE(jaudOjP1!*>ok!|Wc$sMjlQoqq*3gycAW(TiOCz8W2)1YMAu zdrE2)Vr7WEYY!<0u;NGHiDM5F=CVh6*AQN;7efXI8(PrYT-VX-{HZ2U*l3^wmFKl# z(0Yh^=O8q^jAggallCD$-4%H_Gjaw;PLJ@edbH|>l{mRs>wP&I?3`*&0ATaREwEw3 zCfKoUM?MA_49}Ie=Y6zA`MK3+&z>coCBJmpl6=SxU)O>|(l+w2KuOn6%bWY~E`Qs% z??eR&7pnhx4o|vsdUzxQij;}T=QK>5Fp(xro{U`n*rq}KuQu(^ds_V4Kl*ohe~V2U zHo{ri^h%!2k6uju7v~6|#*f@*^wv`z0ch-7@KikxPtZgxH#oKG-G22L4HQ!n3QQ|G z4Lsi#|UsiNE2OSVpOXRQ)Sncb; zlzbSFk%JhRqhY6(p~QK@rY5{pOW&*0 zjqS1DtuB$>QLRsTl>EI~2!)^Wo6>BopiVz zm8|d%q)cY-zV|Lzx_oJJfOD+OtN9XM*mnj2JnX}(A$TZc*RI|9H$Fk~%*eVGk! zoJHVs8Tgptjq5kT(5X{6IBo#OvmB+e83>F<+qH5<-HFbhffH}+^P}(on3wvcEXwxm z{8RM*Dd>OiJrNgd?Jn6OE>znVoI63Zb-_j=G~H~jzmQ)^0ENNnAbaj;tx(&3xKM-@ zvgo7#r5zQG@-z8}y1P|#$mThWm3ptS@8+DMZ)+TVfp?~Y4;*tq5-lLL&pzmph zuh7B(;Cld$oU}8YGqn&=V7((G<)1N4nFwx6e9m2CBubqf1fv?Er(AtrT@Y3>A*6N! zDv0O@0ISrx{|WUJ1&E$i7)U`8efg7jbR~4HP#e8!5S!db)I-Gnh%g9ke9MVK{ih5Q z76hD$l`(eisWm2-luE%W+U4Sm2ea+?i4*Yj6VJeHcixUXvpazS=yzQnM!QTlOAZUx zr(u8(-v2N!3xq(P@fzJx@qbobe_i^wDldVoUbxDy2n3iN6DLi~2md_q(EV`c^a$A7V5bpRX1E_q(|59QnWU;w$j~ z`G5YCyu~#S#}Uz|rvIL~bW{<>!b4_&s$dAgeG3HVS-#m{38x}_kpBeQqCaRHXy2Tv z)`0-n+#gl{&EKhyh(!h4>)C<=4D_@6OZRIn4hkg4)mVt92~Z8}>lo z7s&-Z*Xtc} zY+R*Y3e>*xbK62w$iAvjMdix;6zdEj`n8In`a}ktpqnSx@smILyB{MTH##qk<8rFJ z>6Xtt3!oQocgqtOc^<%h5bcoa0`2D~Be%_}c54%j7 z1iBS-ysqXxh|zw$`1|Xxybk~3pZ!btr~l3W06YUcug>^P^q=xqwMBJt!5WJJ2sX5` z`Oycc9j)C-sw^B7=^`BMx~3BeUo8y4?t zTa0-{3Y_FfgVqBO%hk@Q0ZnL=yhQPX6f11UxLb$6Z=ei&yp{^0ehyVtV<`|M3n1Wd zvKsgRYB+iF1aL-RR>}hKgf2c*s4lX9q-M}b4++6rha_C+WI2uiGJq4r%#XYQcCz={_s!W)t6s|qeqYBrJ3^VXQuzb z0hlok_6+42&p?R5(z4azQ7;p!X1N0fw}dW3?zd`R=Dtai1j?ZZMm|dagYTfqXF)_; z?&Z}%yI+upq}`!!E2j>v-)lZs9=@+Xqncfg63jPM_KN|)l=0KP3jn@}fbq)f1f&Wg zsaRS=!B|d!PE*H(Nl}3cWYtuvJcX9lz5@`EQG8xKs*0KC@!fA*=YVw{nI|Tj^WZ{K zQK%F(as?5H1P}udCNxI=XnW(gD17#zpnYvKB{=9Lr~o4-F5)y!msp!RBLVaTEiMpR(arr^WlzZ`r(sXHV0vox5tG z3PfQ5d1pt?(w+C*fuFnoUYnryY198%U%mDS^Y+Md=FEoWE0*QV3iFmN$>GCCDDU)V z#`HY&zZlG1GG`L@?%BgT65_!Fhv~$L6M2rwv}x1$EPDt;eLb{Y$yXZ#WSLF>`0R@J z*SrsZ@h5)?&pi2T9`lEiJ^9S_KYA4Z57f5Ye(C9`04OM?ON)<&;6qwk9iRl;T;YUz zb03jI3(lhR6>g8F{}uRwCipDg6}>ezfI@eevD{oCMlhjzVkE`r4lHfr^;T4r_8?;T zUO!8Xuab)a!1v^t*t^X(x&RHKjZ^T&f}MPn2=53omU+FIh@C^+bC0l+XYmG23=PNnh4ciw!r>=UqXeohr%4ky9I zNQzei?AoylHg4F2>(Wp_iAD=afv%|Jd5rq*d+&z(KL5D{YR2`!t5^4hApp|v+H`jG z?3i!3@%p@+kFx^rz570Q#|^^aLr36)_ddY&Yd64@DO2F)TW`vf z5BXlp`>VAtc-U&orY-RJj~|DB`7eH-P8>g;`6`E8T^9Neqg@J2gdieYVkZPuo3x?- z7OXe+@k7uAQA$t%3ei>?4FHvcbf4w*_tXDampg3;)kklMQ28MJi{U#3e)QI1G)Kk5 zzU`La)w~L7FV~*SN!Q@ls4@UR23sme)J~YNPAiBL(DNJS_zZoyI7SfEbM%yNXnwD^HjPgR23O(yaMTBRYYYJh0-hWb0sti0(gl$1S=kGoGO;7x!g+egig||3_IAD zo_{%yv-8a46)RWd8Qs`Kke}v|06L#@1fL>G*t>Thy!+Ogd;(sPn9^qoItys)C<3Py z*Db@vix*dO9Ih1rpqB(B)sO)HV<*MGEnd19KL6nT@U5Tw1{^$a2u_dWrJ{L~ni@tr z5B=w7lI&;zl+)eMJoya0{_1K5nK*Oi^b9T|Es@46>1y>Lw&z%i{D1U!Jk$RV;7|Ve zPhp_b!L!}79^GC>`ftCB#j^-FxV}tpSJtQpQ(n8z=mRYJ)xT=bdqYO2OgElFvzsAM zt9SzzY@bvAA%G(S=qq4U(Hk?tV9U-O3kqK09FZ zrY&^mU3XwR95CAFOMP)&Ji&}7E%Iq~!^1-y#hUDhe3(L!2-u>93-i&ox8HfYCy1^v zXLGTx76?RM@K8SQ8?frem9TQ<@)WU;hrN6D@^;F)qwD$WKXt{~@zBix9y@k4XKr}e zARl?lD+O{!Kqd)B=XoXcO$%Q5V!C;*3ZI$qFaP=P!B2kplYF`#|HeQIE_3~d=wwiz zsm!XC1Qvhg=TPHGG}CI$kiT_NwKo<~sSJ2OA1EbY^ssbJ{Wt!JT}O1=UGvWBEQkZ! z8U5we z4Xz}pB4nD2@=mDFm5f5iL8L!$D)6JBT@|XHy-HpVRba@03v)iGnl^v;<#2No=t4-Y>4z%>s5^y&xV_%A!-;2rsd%x*J`JD_%7!9@`fcm1+*Vf4t7>nRF zX$GKLbJ!C}1NeGIqh88uP#eVetWn-N=Ytm#f5(cEQ1`glh>*U*8td5bggay80gZPHK(Qb&>9iiQ?)Pir?Ns0o5Hi9b0F}m^kN1(L9iV(n&S59<$~NWhaiGfX9CFvt(TJ_Nitt9LUwYV`npU%2fLHFMJEjUh9{h)+^y^K|pl8 zv*ygo`v%;6>&+=6bPR@04&jLexKcDrrfP1KrHFp|Pr2VZW%3^#J8}%yez+F)?Apt_ zQ|3d3CQmNQ1>0Q&`_cJXUHyQs&UxVL^zdoex@8-0wN1bGKmI7ExY^=L(uNP4dWsU^m0Lcm$F3uj!#ROrK>u%^0|ycc-G79 zy$n!!87v$f7wr6(XKnA_zdxTJz_XVZq*VIirHg0Z`Ud>=Kl>f{qksL!xGm{Q8uQOu)+KfRSC0N0eZg*raw|P6uUJ_=SrBW-rgoZY zU!`@)z7ha9iVoXXqJFmfocdpV$1<+(ENU_oR0q-CMk^y`57c*hKT!l%@bivT~*oD2O8ZdrlIL;zsl9q!Tl$UxVN~L=vIy zRKIC!q;3~J@SWb8r@bnnxk2q1R8Yn;N7;T*2WvEMr#D?rOc1Klg%S~PfEplp&oshH zY8mTyAbe|fJ%p(8S~p6Y!)_9_At^gH*0frKg2b9GP?>mF4wBiOjNI$l`Ola!9VShl znA64m(zKVtSaUu3*oM3f?NFXwy>9LLd}cjFJ^=Wf4QWw|T9H=({Q7VHnymzA9pANn zDL>-e0G%YrT;vIqcieS5-1E76VBfxdJjo45&WsdrRY&e0ssCjZu#?qf_s-q0Iz`Q? zFLBz8X(_`qF=v{%{+O-77*u}BS6i?0hX0?S8pO;Te6GoQ4iUKkrai8|t?eXiD**+?QnFMoRlL+jC3T8vUne(}1onmkEiXhh!& z?V$*kVmYxMewK~>$rGoN;Xjs!2ZnLt#PJCT%z*I|##c_GX%}3~tI*iVWB=Q??|?Vo zcqO=l9KPTQ1q8B!$N3Tcts-Lai zP`>r12oN>pM13(DLwOP9(I|Cb%WianAkw_Tkwy^gdc|(KRn3vs%P+i){5P)z0B>235~YiGq`Nmougg{}x6Fl>J9hacJdE;fyl3E~ z`v&mDP#(KKJ8~v3dE*U$GAIuEFGAK||ARj9|BfC$nz8`vc-{$(q^!>P@e^p`#ECd= z++dy`K%+$em!kh#$KU?O?S22<_u;9ZJp(`a(N7ZycnOAwPwR8Wf~!IQEx55t0Y+;d z)p}QvOMM($U8=V=%867|qAGL{Y4@b~kJ5i*4OL*Yp|w;*wQcC>rVMHWz>y$W>29($ zq@4u4qEPoU^%?Gt?ak$a^%uk;0IUdXI=%cROWguT-5Uk8-3(%D<{8;{>w+|cM0t7H5 z7_0(G%4hv4zOT??fZ$}MXeRtCj*FEkZJ?-4dv6zj|61oGJd8#io(T`7Ib zso@0+=UY@wmvBgcs(D2SKl$-vdC66FK2X&gXf8ht3=YzbH{F1D-*Xpm^s01SEZVN- zi+Q9VFQ?_x_m!(wz)iQ@2+Ni)g98Wl)1kwM^OnNA#jRxiqqQ4V|Ec^Zzr#m7@7}!| zKX`vFY~8XId2^yUbLJ$VIi-|R1MlkZrM%)$#E5L``>%fQU&9an_D8UG?K&t+&}~k@ zRj2=Q8(3SH5v({hx$nY24-Ln^F*qe^iEVT44oqE3T+4-E^X8P#EPf= zK9lq1oEeoCyioJk=yiEQusmG@cwAY_H-D)HP64oZ9VpMWV%l=4eJ`9T~XLW;@+o5GuS#GBd57C7)a?*+O=yJ9N4!Xc>^Jy7cfhX7H)xn75Om@ zbymb~X%0Id-f3;`-n}G80|P)S?-C|JIkB$O8Gv8@wZEU8Nk6*AuFlcH$EWResCs++ZJ{AWPNpxMMV=TN~q~- zgtPKby*?L;?4x=tml0^qC*K%Uhbdd_Ry!VrSIn8k$swT3vX0YtY#hYVt4G8^aea>; z8=n%82LjSUEfsPpydl}u!jM;BUuXjvFVUiQXBsM>yCGGTjR-H4EY(GtO=&XC6t|ev zcP-&lkRAlY2(f+S^L+d>_7zVu6M>~>u&QeCCU6wWZfjk#{&f1n4q%3=3!hZlvEd>* zm}%M%9!+TfX>Aq#+&QwdTc%ICiVZxcZP$LVE{}ok-+zFYD8a;u6VktlDH||38S8<* z2DVVs&*F@JY1$7;MmCQ_b2NV#kHqw071?N#XJq6I?b)*@pL&-MyBTx*7kouy80}Xl zfvd$!7Qy%l<6!RmxuOn)JGbx3Q8Mox0N~*IT>7sQtjg#>7q@QSmgjry*uD$r%$)@f z4Lz98s$d|%GS<>_A+psk2GQSGMv}~=$p1LJ_`*wRy#MJu(QnhHO?jJaZbX;J9nCeQ z|6=o`Dl4OYtE4X6E~_iI=)b2jtYCoEt3w`&2DClKD~NUSHB0EqzY{*#;(0nEE|+Sg8FX zy=1U1Fat~iLRhk(U2|{uy@|g?~l_HHv2*x`_mAZ7u zAP;)Gv_3K|#Mn;jA=gx`pM2LTXn2FF#nS(R_t2HgXv<)+29dc9g9C$j=-?sRx@8-_ z_UapuBDL(8XU>{oy9cU5wQ2W{1p=g;HSfL;n>TKTg9i@wEhP38|A$vH{KMb;_3S*x z$?kJwK;Xiz$TR-Sb3gcNPSYpAw`A$!eDD%4=R17(5T7mxCr_Nr;)Iq(`e^-Ed(Fc= zoZ;ECdk?+x(rb9;?3pYBvuDrB0Py3=R-5u~%V9vvCr`fm@@w#4{%8L+z4`iEye9@P zU(8mG=bc{L`i~GDTmvW!DO9#1e5SxBx4of%ofq0F6Q)N8C}pXnqo-Y=H7lpCwW`K#UZFcT;qL_6!dJd=GjEF_>4aQzxpI zQ>aTv#S7MMMIu;lkN}RRyle{h8lKC;L6FK|kx6gu&mq)B66Yg=MF|8{3AJz~ZrN+w zM1nYWGD$RiR0Ii8H)O7bhwIdhe^MEpPEj^g0Rkc1J_qPSzGA=yfxML_Kw6=c5z12D ziCsWL*{J+!_<^cmQE@97&`+X_QgrNFxud*8?Gt%27g5m`CI(?y_EUCx>mcvSmxclG zxo2L0HSer}eJLX_ZR*r~!k`*hdA2gn=j(*yb6f_ehu5!Nk9&6SE{EDQGT+JzAIS2# z`#+bDzg6ck1^_)$p@z_Ozg{djm`-G}So zFaFoRgg^M*e+_^1Z~hlJu>YVf>th+GpbOWs{zs=B?XLz(;Qj^3&kNAKj1><;03%{x zb34?=WNREwY^6|^wLsn*RsVIMLiq&XzMh(Pi40c8BlD&t%7yEhcgi8}Qf)tXmE?2{V_6)V9#vqQ<`S-7Y2 zp(j1&ijxZFk(79VusE;13))0PnoLCd(OLyd;%(5^N*+HqEcasthV%Vfo?Bu6W|%AN`v@ zhMzt56s%vjfsd008RySCn9`X3YXO!1qqQR1b*PNEw-k&m6ij=~GpH0&`ECV+`Xztx z-1;BeWc8uZV-I7X*Naov)zC!N2?l4Bt=`t)hihLHY^OR#G#A>i*n8Fbg3ki@Udwo> zcp2`Ik7-+j)EOF@qsUAcUp zXarXLi0C6iyh`AdE>}UN7+lI?`(sBV2taZ~7wMM2=z{E>T$3ILMT3$<#m|V$5WO&J zI*@|qi#%8q4*)%#UDm6ZcLbAz3nnE3fODjTpN=*%f)o z6Ezw1%}VKd27r0_CFPwNd9^_H_o~YTAFcn2;#ihWo;*byne*m5XOi<~*cK zg>gceR881ZBDG_z;ZmIx3SxN73#G@Ia* z&lVUMh6*Dfu1pjf)QA7hXYc_y2RCRmhAAEpL5h=sUXRjEO{fNCHec2LsL;Yokkp>E zgPeB|yA-tdpqv}t$>*PUF-2&!Vcka9vUO`QsOg$JcWwp(V3dyT@cV%Te*Vmvvw2zA zOE12{Sq40H@)QOcRjISC6p)Ji&W$(Sh_~K$%NPK-h?hqG{XVmEUb*VJyl2GRIdk&q zf7`ZhM~<#pyu!25sFy41f3|{TK;dix61#TprY&2x;@;hRY4YSryc{thGfzDWM-CkU9eU8Afie9*KmC{Q3RWbw=fl8UM8{oY zZF|jz`@QNpZ2tQDg$L)M|5Akp+l4Ox5VO604=QIv-pAK{PPF+7#!{J2RtL)*_0|k;3l6QNxA=H650>;0a}l!^{KSw`Z~S+N?LZ{D>Q$x0@7|IGG#7LifsWp(LzVwp{W^Eo4@2G zf?ZM@$(cir)_6F8jV-5IXQpxZiF``m)T#NEcHj4SwcktXmdBDiz+=K&w`|QT5Q4#z zezm-`y~*3o-hSup@VWc$&E=eH2g9-J!Y>>J2yp+-oH-L#UcU++eB{C0|A!7ArlUuX z=9L*dJmBaY&Z++t>XKmv+O%;qKKt}@z$X??NJ9^0m&zID=-Z(Io}9RT?K=2_-~Tu1 z-yg#B&%FR!H*d8tQPcjV@-h9_ch6Va%yWAE4e%NgsAaDeqMEfeD1*>X;mW z$UJM0+;5f?L1}AwdzTcXFk7q{jw(s)v^nZyhrMyb zCfc%jEAoay>=^jSUVbM|=IS@ATV+C>H}A*JfMWBeEs=UuTpOH4u?nfP@4D+Qy61EE zAg8FKvl_cD-c{Q|ton}m&Zi45S-J#ycwpkhNw{_Mmb~XkPjK+RSCR2G174S_z8IR2(Lw9E<+N8Mcn@$dyUQN%X|36+!cKCr~g z{?x6)d9mPaBegLi7M@GC2bwBAg;Um=aX#^s78!NmoAy$%Fcas5qo}mduaSIC6lHOt z3<|Gtzi7&Xm7%wtp|YJwe#+JV4LVXE6(T*l)6!e%5;TQ!x!FeYOz1m4@OGC2thZ4Z&jj<2jg!IbUd{{+v<@_a~w?`Jc+MPJnb>=k zO^M>Xk6~oeaJZk>?mJ%zUC}W1XbR!%g?%o@dmms|CLYN4DnuDm8XB5HPQyYHb$4=k z)}FDhYj~RIFL^-W%L$;daR-((V|j=+&r4g8t(kR6t034>)$+w2rORy+D0y?h1cy1J z5C8r}q(wFkmEK8n!NnGr?^t+M)(z=KOJizY$v0GA#hN8J{}&79af*`(4CkI>Xu8%x zP?2LMKw)VvIxikv_sYJAcNu4#CBOU;L6#EYMQ11K>X-VcLz=jLzD$FVxm7cydCZ$4 zRVqugEnMlxTd`bvLLrBq)zn0HM9f_2_YB|vb{bx;bzyD0 zT}2=A{f1aAJ^E!KH2~AFOc3^O8!g)^Rt6SRMk(0F|JXy$}0Egb!smMTXy#c*9vj= z+;Y!X{2e=oLAJRrRVM@50*1Jj?|<4|M%?3z;g-&av{!BGFTI2P3PTmI(RNqn$8jSq zBrk|t(nxT&UAoS@ywlx_zu#C_lVblt$BR#6!7ue)ucRXX*=ZwSd^Btm<87?3V99!_ z^pKoNi>^gfJ)O-6HusFz+XL$5Y75qC+Z}n^>!HfJ5gCs!Nj~dxLv28EX2*h@HktJ7PNHc z%foSuJc8!Wd>hB-#6>-;2CZmufm)i_t*d~9*je8@dc4+Qj=*=StHfQA0UJ0b(LMzv z6JgI;>_gKLgDqb~pH-6(BhO&@{AhSEnNQmZIK-{$=-}T(>#iS^8~>zoMj~kQA?K_r z_WTR*N;RNW#d!j$=)~#v56&2riR|BKbrI<6c!-jUvRAtaO)Am&|9X(Pv5*$Rz*fpV zzCpv6mt*`XxErNcKC~I_4=y&`;>r&9SN);809(gM^&FXmYOcr~HlS3cmk^I?LOvcc z4{y+}oO*Cob41#m$?1hM9_uz>uUaU*&dd9&jrB+ ztQ_EPScvP5=G>0+UyHz)Fg*F1e>EW9mP&KYj54^=d9#c6>QDQkEvt9Nf7y^25s{J1 z!l~X-$2Pwb>d+ZsP;zy#wR1TNfPoPzR%B{ZpyRajac824V@?r|@f?{-*Ak5Gquf+W zo!w_<9Sj9h;eE^9uu+XZVY+6#X~d}y@@p^HYtFxMp|*7>w)r3Q*tq*qiU!p96*{!% z#N{NjxxuSoX07I-b@g)gk~kSdO8Lkm<3b$`WWW?n143s5 zv1(rt_iFf~Q53{G8?6^CRW1~%9rLgte1GOM$S2UkbKDr2(nM7_=Nh|(S`ui#*8**= zhkKDPkK)01g=m9V^7WdC$?8Ppg@}s$ zS(N*nkAkXbr{juTAZ$^-?K1z)j2xVKQc75|B@MZL)t(;J7vj;07!YuFZlRAWqh}ypsN;;8IbzzkBn*i)2Prms5rx^u-?I!i$6&pWfdBDzIVwuU@19A zzKv?-UoqRv1cfxJf$4tJ5e?M+R+od4nB25b=4)l1Ivpl_G#J>2bzxG8;cpbmyPykP zG8lYGf{h=^aEDSxj2IRhY+%90e#0m|NB%1qZCDdc;;9NMsH6F-qQG;Y{HY18>Pd5h zovPIGwI=>MfCve`^J$s4mKq85wz+Dhs=ZnUTV^^_9m86qCH~8FMop$j?J=?xd&cd4 zjkEjnNhgFSj~VRtOpktty`hkLd(G+3Ksj!8sA`4UeZnudry_MXi7>aovM6ZXb+vFxFEIp`6(N_t>bVtv z%KbwoUf$35iWK0SUz!(SvWR;DFAcXpHm?sS>CXpbS4MU&=-lSh@dQ~aNswU@6;M-; zd5)B;M3D>TF++&dVXvcLYuR8$g?-l$HkmP1O6!ZzLOi1hb`0Z-XtIDJ>}?}&T;ZF~ zLN{{zKK>hTdF+p`3^#EB);Al(M206E$7qNx4JefdEB~N~uvx<5za$332uD~En1v#D zTE;}Ps2Jmvp+BuM1s11&Ut|_cNc<8(^(5jCQIm`fLGI(u;&Z1lg?gS1C9EF8%JGah zb6RL`x_BUFRxXwa=6*QdMFw7nrh{)a==Rh6V+nXr&rzL*9jk0N#Mq1*&Kl@M|EdUN zR=_Ld(c$nXp7`8q0X+p>kw3b8Z(r*1viKYzzA7;in=eEIUum+h^QoY)?@5ikd16H8 zkL2iUhUYc&x7h2S;Jw~?GT-2BT3!yUkw`V+!o5*Wp`t#Kn@M`pzhU4XY4*V~E5~b_ zbrN}hH<;zKF~tAYE_5a2+yxaPJ>c3n10J?o3{%eh4-aes*&TdnZ(&gG(}i~%~Rpx3OQUq#ycTf*O&VI z61@KLYvN=~UNpQ;NM&kxck{q;=G0rZ{a@fX41UJ1iNtm#H9yLbtIalqT<>G4_QLbBG(_9)45IEN_GOlmE6iR}IYUR%yTaxw@Mmj7ST+ zGmPf&d)^oGXL8yEkb1>{MT)EMeEF2N{(Rc;BH(t8NrIX-$2X|_Qb%)khvUZo=3e?; z@tnaDN$17!FL_PuDPM>R7r}5-efXo66}9dXgwuZfbY-QHo~J0~uB!pJCna2aE7-n7oFLz5`bf6iyh?4-Ya;CCIo{3gf1* zNPlLV7$>UvN^gG(r1@|PVwxbu(H~i@LTA3SP@2iuDsEZW=EJ(*s#K~;;+ZuPll_Nn|xhbX}}Z$RT8R zunzr8svcraWpMfS$lwfk(;UhI-TqOeltW}4o$%zl)kEdOIvm2%>!;6bzW=9y`tLdo zsC`lG^U0Y?`a=ZHD-u}|$L~wM3^i+LpiqzSrsc)3p!$pe-#|MB%JYY_1{B=qZAmwe z3&leQu&VqU|I8=`rBz4J4}c#XJ43m?FEdwe=eQ~|G7x&=DgA4} z`%vFAC+J1L4b*h2&q<+q#l(5mK3H%#E{74(DE=8V*OG5{h96*P;b zM^Ywy1Bly{;yE4z4sCgWH$T|T@ps|^7Ppbk$bndpI4NMr{X0ykFVOYQ2k*y*?}P6f;YT0gYA$drH)qI?59)Lo zgniI;ktS^nW7}f5;pC zOjG$F;~v8iG1xz?!$~E{b`%$U-rbC*&S)|xzYx_fPjMgu09v8x1K#O z@4&Bzr^^T5%^k+?)OA!WlZntqGZzZ+-l+YP9vE)xJ(%MG^ zY5LF>xPi6NL^t={mU=NI;SgI4@L%hu_!e(`B8>yio505aWv*P~#Zc$CdpZ2(n$(KM;2iKT%R+eO)Jou=Hq zKpa<8adjsa5P3hj%--98tex-{V_|vlXRHC!Ej@uduh~0&cEDk~{T01Pza7x0U~dcP zaRXESlQ)9tJXhSTqcz)%}fA=In_cN++>c!sC zA{H$K+Dj(~bYmyvQVWc73eXIbpMM!zvL$Y_AMv{I{Vd((B6^mAEokBMCFQhKt+&_V zP?1ppsOe?~sBoSl>`|ji*54t`hK*UA_=4ntb)Z7u$Jm&j=NC|)U@z#S=R^Kv;Z(p2 z@Yu=lSw^Qy$e;5mdPfJ=$Td3yYU)|Un!<1b@tvOdzPbt25TNS7{W~y_@MHIb`}AN>t_5iK2|8H@9V!m7IuMr-F>(tC=T$x5X*wVB zoLtF6s z(Qre8LRX?!46M4!V$<5hRum#6BXfW08!lN7%V*R3K+U`IqnOjR@MU3zx;lC~L`6vxY*8hY7o(X=I075|k!Y>uxgKvm0P!QPgkpIhlSMXSevxa}Y zkKZ}*rp4&}q!P^S0xVZ>KM`8d$nk@pA^&3!^cf0J2i@!U=uLoH08e(G!xz3iz;=k+ zlN#v0wn|@2nAi6IPFznTuwpdI*q{ND{2Nn_W6%w($CE{ic%T`s9!CUCdMxZGjhvof z4<=Z66<%915p$ZOXfO%vv2^_G-4(lL>lI_Y47=VVDpT9o#c>J(kt^XsN-2*6{WZcb z>l<;U`pP5*37;ePMVGGY;UU1xaQeol=1$A>;OYpDS0=_e1oK(f1&ACb#m_6SRA?cLV$c zeFqH)zET2sL03D+@>9jKXXBl~>~~eEXOp2_!4WHh%^G02Zu@yW_1=geaO{;-rsut* zC(`aS)NYUSEBm?S?fL9Dd3n-Lef{*@`ONv;eHXl4f$aXg4HeXZRz3`jR&N1rz_mUJ z+5j$=dhCxS>ssAAytIZnH*y@G-pIwsW+|5roG}R2U8}%!oIm;l0jjf{1p-@G7racF zA^T^16ES87E!@>(p)^D}SQPi|-*>fu{h*$xch)K7ALw{?Ka`qdJq(K089FxOHc1lU*cEp8w|iXqxaJX^+wNK`&Fy&ZiW6QO*e4;`a&P{rYU+_ z4#wZk)sbTZg2o6z;e;y>pi5rgKfZ76 zH(UpT-65}6D=#~r*RFS|H4{KV?~g~f1i~Yi3(&HlkKQ9l{i?y~z5KKcOa5GaW0U5= zQG4*c9q{^Qw!=lK7hRt)mUsBfDKx7@DNTK*6Z*`gAwBJu>(mkGddkLI5BjbV0}bc0 zV0b2S3$v{(N<E zS1^LVS|lHxsk?xiRhJL`w~MtW{gsGb8DWoNU%buO8X@3mryhv(g|2~Dd)$rrGSIi$B|#3sru?rK1b@lM>_0W41^z7 zE2@EZz;RA}grFY(p1Zf59iOe|$Q}T~i98Wui$U#{!j%|Y;EoE4@GHvocKBR8FH0b2$yUFKTk z-0o^@uebJ}w_~9PI4{7x&b?b@JY9iK+xL0O+p2QXQ?Zy7Q_*5RCZN ztWXff=5l-zZrFbAe0>GGfo_%(Lc!3Qe&b=zk%|nWaE}1vE2!;y;>=9dJZ`|Mfecm8-YPD;k;X< zZ8dnYP;i3)o~KJR<+mK4g52YOQ&o(6S~SH4a|1{!4k09=Qgtc$r-x#~zfj}ri#|)q zl;2s;{p27GNrcVzK7V?Cd;rpj`U<;~V2h&Gzd>-zObnOvxd>z6hThhMpSnU3>lQ zSb9w?$$qQl?fn=mXfD<#OyZG}N$~URAn2haHaAN!;_pYswnHB1?hd_O(0dhGe}iyi zdPhb>o;<(LUCrS_pX5LM1o@JDa&jBqBWgLKNM!^+<^iepn_)=e>=qE{^q3%)x?8Vo`RT!P9H^3lhUQ(oy%%nOCBITx54;Fc0)K@ zi)dc&MuF}ATSGtD(MczriHSf@%b`mvMdCQFVO&eW*0L=MhD1 zHeOkaO*ffS4nifAiu@_dV&Kjx<9qV@sj*Z}wKnHeLP_}<^=xV_FQhNi zO;MkrzLiSc|C(4{Z;LLNfNBh2X}u1Rx#MK!>4Wc2)9Qq{)NHLYlCs5r5bT_ftUEb> zEX}csC2!4f%gJtFh$7f@|LZw=^6ln)pxdGeD^8KPr22S(s&cv&tf<10b?l@5aTYBt zOEz0~K|K{XaT)5ll+gynXui87LrbR=$f?etSIpk{YG<;Q$PFYeqCpPk9gU+KUz|1m zB5JjFtR56^0!zJ!|S1Wkg;#^dd!gEQT`n^N$-F)zkYF1yw38 zePEEjzd>iJi572aDuaBk^t(4P(2dOV>;`A12o6vM(gw8v1sOhZyF~BLbij9E({V>L zq-#9OV5}zR+b)+f}%K)(Y@WG7-_a2IEittW#fFCj-04uZXT zEE8CrcT-L_(_oo;PuiN>(<`??w0u%!ZSggX@$qipk4JWsn(v8uxJ&Y zxa)65VLOt1nb)Rx&_RB(>Hzh!cOYj#%tj@ZSDzH6NsPS#OKI5wqq1bN?gTeMA1et? zzXOYvP;nw(Ok?9g<&j{{5x9MrW$~49Bq)qxZTIvw@oq1FsAVA zc2>XV`Cm*|fn5KARv>n983K%hRWU|?sz_kuSp~<~u;BKoLP|VR%<`Yk+tm*tuKW;o zP5SjCF7Y2rpTYYPAA149ZuE9|8tbB zqVJ&#j=};>p&8A_#Biy0-D03@qJ+PG$vBv8b8NMaRw4JtX`AxFE)jCZFu{gY`8a#5 zNw@r(K<4tiFSzRGBd7JLnGWqb4PFP_ld6&R;Fa+VB-kXQj3pP0Jku_|lVGIP8jBl? z1Ys3Fhsc{Z2i$2en6P|Eb} z#kU(DHP1(1zKkl%f&azJPAD)IVpkFW+%Zjt-~Do+JA;fzo#YJj3R0|Zr*FFJOBQ6x z8?MH^BgrI{k4n0JG)-0T+RtpI-LR!l!5X}X>+{InAvnmHS{1^4f_IORTC95e;G*@= z(8=H)z^{65H(dBJ)n;Ysnc}v+`-uL)L02^6(NQ^HIL!+B(keW!GrJ4E>rR@vIP9u; zV(TNeY@Vwu?zi?MOnJEIGON9FZJ_HKO}9nGDZgY%$MCiQTbS*>?$57cASmGbd8ruA zB7yZ}YmnIVzxu_iBtvIiQ_LXtAD4ezKo?a=wCo6;5P2>oV?1K!WT>3|A=cDLmFefD zy&ese$1eM3^8sp&K8nK>CT5)bf9{%+Zbt&)D`XF8DZ-ss=uLD+vhIod^=FpM zxnoe)4;Rm6-f_TExfU=dKq9|dJ)o}wD^oV+QEECO7xLK?OtELWHOF3lOsC5>V?)U8 zXopP5ExOr{Dd(m|q-WP@eOed%oJe7QCZZ7icB-OR^m|i|{GcEkEHWRUSH2#$w-0*;gV8|6=X<@m!Lm88M?ejQ*&DDTksyRd>}92Qf5?jPeAS34mM z?9+4m#2-?caqF+LrOAx1x(*Fo1~}8epMfe?k>gxrrF=LbO@^)TZ}+>#4y~Fab!gA$ z#>nB$gC&&xOFN60W}%B{3&^OuivIc}V%A%HdrE!(vS^g!T; zIekkncq+#_DgO3*!_<67pJd@G-L8_p0bb0gGpqHSeQWk|sU)=N+0u$6=c>Q@Ha|pU z#$1gl$sH2%&Fy!w;lPhkSOt~kruc75!;?e#`@L0d(|_r0Rm940#rTr9Lv zEZ-6y=0dQ!Qky-pCYpWP(+jp7N@q}a7S=Q5ZL+;XAjhvV*6Xt4S{v=0L_Wqphh7Wl zlL(_G#*km-9`b(1k`JWJ|9(W(UH+H>K#hmjjhcA-ul>KkiUsN;_|y;#-c zpbH;J)@dBpavO=9A(5ARCEK?+p>9-wmdGT@Ra0p|Q6X!=IAXq5Mv2{ofpr}I37L6W zA#%V{M(p^~04XI+mBB`dSKq54x!X907MpX5%h+l+C4$)Q!tflbdw0I3bAkuplUFv1 zj1GJ-UqK5J#HrYD{T~{~>Vlq^3c*JGmqnqAQB;1(it~}WOm$H7KdO(>N@JQo_DgD5 zStrtD)pMY_X$~-7mVd(qi}G8S!JOK8_Br~w{*Nu5$iqR4MA=Cpxjr_C`Hr7v5+Pgq z&roL|!qoRmpA%2|-;80C3X|Rx80M-U0TsL8(HDm}G_nyqj3+B5^$zv#OP7k5JUikf zw42(9)!*SH+vBP78<@{l(tB;C(Ve`$%x|!o&SbN2tHL74Zi?^zyZ+ZMmO<}xJ>E|f z`o5y1l|&)IeU6vxi`bodGvz6fFG$!6=Qi5y^#|9a^V1=TAHjHNBe zf4Nrrt+i$>>kVqYpWhv~MO$9~zeAG@)bAgKRH6+<4=*2T4Kr-jFzIavC;!R4l9VBn zniqjFj7nT(wBb-_)J`ZFFinji_JL9|fnJndho$WaaQ}#YxktQB>#M(6?=vw8P-LiY z^DG&9oAB8WeS-@0A=Dx+Q)4#cHm2zb=#Xs`sC-3eJCd;780=YJ#3%hFB275q$Irf8 zS^d5l?0wuy;)5pU90(i1R$S`7E)U?705IU8?$hZiR+O1~@q2vAN_pO8#QL1GyF5p8lp#?Vp8R$nVdXb;M0*h+)<2#?avb#A3;K1K;|iRx4apf#5~vY# zhNhWMT;p3{geGS(ujm_?nK0*%YPwYWWg(hmo`a69KW#!*;EQoWk0b20{@-$?&uyukoZ4 z?yfmk7~?1VZR#VL#*{(54T;oBYjWlAPPh-LO}PP_c9)c6bD2ki$2f*W$k*T$cc-+E zKZ--J0qDuQ)!}DkwUX})+PBOFurVi$Ys@->=15DmRSu7$3c3SQbaKpP?}3FAJ+Pme zl4Aw=iCEjUWkCwe3Z9Pt-cWI~xu&_Rn9|#$Af=io4iFSvMhsO(3}pVtYC*P7zMEgG z#9W_9F(^wFu>~+u-=lGGW`6YxIix65oHk)a8i>sn)CHBnZce`VHHmB5@)ku~YAq)T zwTtE2hK5#6sdtxO9W!$Bo{TKvWt|fxWLeO$Nuwrs_WnEE?@3FA_aAI9lpdZiQiXpY zcN*=bJ!b70;d7otN2i@3j(?3F8`|JvT`&=@Qii4+4!i1Zb>pZ}M53spXwLFrcy8vtvWmaG=3|id zW#-L7Gq7;9Czwg$vj#1jZB%Ly_3zZ5k+g$?SoEV6d8%=%M~muN-IsT8~0S8(MnM ze$dj-MK^YAUKc6%P?4h77~n{1*e2_;040dnOEoE^DN;8|DxluZSY{S+Ne&ZAV6FQ-bc&*e&I&3;Uk)Hl1g_EdgS+Z=&cGH zlryk{QPHsrHGe87ItVg*(+du9IQRw>T#YGvW|0l@8-6l+N4Puk5r)?cZHeaYgB=j4 zxlV1p-E7!>UdVjWK)KHib-{P7YGDagwjuvYfjEC%7{sN!9X)8(IE_2Uu?QKoAuLRFtDMM-ISsy6;eRxTo_EK`(gU1;HIOFW){(T2MF z0a88;^o*56hqXmS;aK_LKzM43xMLpQ=#A+ROdCeD3`m{iLPoDXNU=isNhtD~j5*A7L zud|O}3gqvc`ltZ@rqr>*1PxdO)-^IVjK69RCm>xKpd3>kc`d!a4!ojjQEU9H44gA& z@rp4oJPA0;MTHjUtb~3u$vcn37$sx4aRRHMs+Q%XI3I_OR@OQ1{>nb|tOWV<5cb&# zjH^{yja6N}_fT`OcvfKE0lhFsU%6Z>TTL{pS-P@OKyyvo{P#Zw&%c~orfX8N?Js)P z|0{d>zP?F3fzU(|T3e^~SgBwJN|6*tE_drG!<&l#}D7q>Elq&a&oZ$lD+9oFV zC(6nOOHdxG1?kdfIG>=zC%>3hSB#&K{(`o8JaeEFSpz~P1 zvU1$vZk#oNvR|nP&8it`Bb-?AIbgmR$$7((d}l}noJKp&Aswo4ufJ$$u^NCku;5bR zrYUG_$&8#tzw`5kq}hm^e@gPNHqlv?;sI~R*;x2wn~`llIoT3D>AtheF^S9yCpU9E znw@s%MXRdIc@Ggx8Adb4G?z^Ce{JBeo)P{zh`dftr*cqCov#Wm-drUHlfm3Hu)$Jx zjNO1b6kuBoLDc;d{f81tDUwAgjyeUSKCK~uz_@NAg7wsZ)M(@dIqDmqpWey>i`T>p zhxm7Gw#HpvWrRy5Y|POLd4vv?ziRhqW?PL%+Vf>9KV8ha4SK7HMn4Asoy4-`UC%bx zFRb&O_znu%U?hZ=2ry{@1&pd8ADoF9Z|io=SSWY2kNb1Z98*-RrokyRu+ru9iPm+x zMrCo9dHc|LO}~Roy|g?M{!ILCxaUlah1OzYSJeJ_JK1g#S>)nqe}L`aqV}`vzdyPx zSj-6cB4Y^pZ|8*_SuzIS!pV7+b8R0XwH!5?fc4KKQ zeaAB@Vgh5D&Oa#c`Wm)R#fk{DFS?EzJ5)HBBj{sx{C9VKzAFEx$q8{KDwxB0I^eNx zqsuqPDQnFLzR?i9i`?@^41VAfHTUk8#*82WXP8$S4!*lW;vbNONtBI0i0D*&XB|5qt^2t|#PKnkfIejoN%hR@H=9XYEHnp} z5*+}^HrM#C!Cy~GUr#r-=+1NgGn}#U$w&vf#!z#8!)ttt8Jmy0)oka#m)c`KO&j>tcg{Ko6^(jxG@4fG18gkE+NNGY zPEH;)S4V2;w6k7f?i-@;2{oeyw@UnwXcJpEsw5nvh8<;nXW3$bSDrR2xCKA zgj7kSKpFIJD-QVNIJuc<8*X+9gSBf`?9Ujei`ydy`A9k+w3)BVv=BTe=&$d|-Z`A| zy6euveJ|JmZR%mpb^`(wN8@X0!KWLXgI>+nr(2iW1d)*U2S5?P$y{g>b;Bg;=YlAcU2?dkbmE3f3<)A#= z#&6dj20y+@l7qx-euQV75tB_HSo>P|9V*}d$}ut6*;99F`PC}d#=mKyB}2THpLQMX z?{)ZJ(WGFGiFWIhRYcq_+nR8PmCBQz*z;|ZzBO-IxhR_N5YE!)>2>8Cl~D(eaMCCN zWz7m31C*S5V;*wNM&?%}1^xU-(?P%BC8H`Q>bbDDpDw&*9Nlf4wuteu1wZmT3Cu)n zS>L!zx>JaYovTEhpIVshN29R5oZ z>aUhTo(rIfxuJSGocLA`&F{)IdjBTJhclG(*Z=VOZW`;7pcyrYvQEqpD5(AWbhBS1 z@f$I_<*ntGM<*9etCET!OSIGjXT59M41cSmA~B)Xm)~Bqj4kCJqGUQL4l8p)@I4Jw zhagiU5i(LaSa9uQwu$a=o7K}h#ikko*T(JVMb1!K?y#XX00 zj!mLI6vG9Ph0?u7DfRWu9N96h3{(jPEu7xgtSeeIplBRS9E~UaLWosXr(Zcb7+S=e+4-aqBl&^m;T82< z5v26o-{gB$e&c%5=}dnooNjZ{kf5=7mC|ELDnlOR?7krNfU5f+UW48jLF(O)k<}zJ zN|<~IxENmDCB3q=6n*x7JI@o_l~wU$R8sgWbW0;)!%=vY@jey7t8uNxTYubJ%sFak zeq!Z1XI*Zj8E>wXd&-t0sn)JMCv@92S{@`%apy{JmO~6RMvpl~v(IZ$+b2{blVMM` z&ZJ5046Yj3NIG1OEa_)ITXq{-(Z?#a&THNtw9-VZwhlc;3;2xA=u|r@N=3MO=&Sd`@Zuf-fT}iT2z>1giE?Mb%4o39wUb);`;_ zan0YgEu*NZKsehgDJj-Ud{Y!E5D^%q{$M{vjVF&6j%XFrjm}~IZqQ<$P*PkU%jW(L zbMx5@a=zUopZPsFfy#OL%zHx1`{H`%N*2A98Q~=T%8JS{q_^5MWo#^9RhNxpfbpq^ z+{5ka?4u%W8srF>7OthL5~A11V56-6$lkQvvh$XEV>R&~1tk0;^!17l3d`^jnj^9> zu}x#i9WkaQm7SHqZA87`=U4pShoHZ{O_4|VRvT918a&+V{9X(t(0`2BCG9UgDq&>3 zN8v5`Lvb@}Fc)TBDw^2SC)@f~7AhxA1a_9Z*OP39l@iUFo=;XUMBZ8iT6%9Z$-HBm zkC2{&&=0hgjvTg`5fVoqV$NV8>kT5@>GH1!JddjDUBdK@xgat0EXn9V`T)LVB-xFX z_;no|8bbSYJhF(gF=y_LbKqb-k?b@f47knhw6l0>b#L3`{(62q zmI%UPQ8aJUfAz|pjqNvI*f-y?G3rC7a<9fBOtj`n)ZN0iAyaBbmW-loBS;&m{n|uc zZ(hYwRwS!tPaHJenRGX#F}Im$RSY$ZG_i|jvXDm+7R(KCzjilLmg`2ZGtqxqIxJxf zaozZYghMx`%FcE7?t8x~<0hQfR0Eawbs%(nSn8?eY8F${#<@uC7T+P4LeUv@IgwPt z-3_whObOF#$v7UgT}!ww8yOKpI~;{CITG?e9&&~kicM|4b)i8#XKAF2WcP@zJ!CWw z4Dpv(xesb)H3(qN`xO-`7-X}zO8DTTzh{q|Z$=mbemld@HNeYBc>Ry=#=4gHzJDy} zk9vabGibFj7`wb?%OP~c#@keB;^Vdx;k=ou%H$5P!u^vtx8*MHePGa?ON%aIDOs>G zQ1eC5XhT?5_%&UHYZ`o9l=&wNIjvU0Ft+rEZ6bK-g(Xqt zcV^Yw(Bbx>EPu3ptrq_Ext)p`3YYca%su6(Tsf1;8D_SSGvDDBS+c7&hGS{2vzlAu zDZ5!nd5Uaw-aT0Y*#4DuMyq4>?zX{os2qrjV^=$$c*4det6iy7DW-m?eutMk%6JY^I1&nn}GVgY9 z`>8F8^>2q(z!BMAzCHkfSb-ENJah`{M|G=27zGEf0(^h&Zj~`SgV_Dg51uw>e+~s{ zdwTHw2rQ!1i4y7pO4yS4UIrE`oWJ1@*q#lh-`GC)YZE@S@nD{p1cq_z>;RO#6(!*? z#RObE6rFwXb!EnQ=>JD5E|-HIV;p zt?~1qn0S3nKMt%*k5j72Wn8 zZOr%RVd%L8AS7A@mgWH_k1Pe+Rk>WIQ{|*Von=}Vy zh<|RxfR7Kg*l&Hv>SlCVoBh3SmrD8%#!A4erjlo{z9=dP?;J!2W~A+sVKeZr&F1x< zEbSh3a}o03=cW^5#i)%0U!9?Y#=C{$R$H0z;kbb9VbeAHBb^gix8m| zSvse_O$vp5V}JJ_6)D}WdWi1rl}j>QUWQ~gOzbTu^4=vKYO2c2+$eLQ2g5OCu?x5B z6<`Dx>oxy$Gj!X&u%wZ_!LG-(>zHw&4dw}+54saY15c^&G|Ms`W-;LD*Xd@KKmNQEW++h@Mf)YRIG=`Txu(V}O!mU4cNqSvB! zvi0k;;#CKD`Hn?+Zjh3ajNcKHBaiLJRTUK;R2q!^Wlv+7a(uo=m*KV?Vx z^|_Vh+Bs5IUhTY6diI-_Hb$blCCWxk26?WdI8fVnGo|@Y!gba$efaA2n)43e{e}t7>s|5O~`6P75EmpIn*wqmzEvYP*H2#$> z-7t@hOC4?3)bX3$mlFO90-y3w82VUpgd|tcR;lzSc#fG>vh~TCHrCfaQZ)vLiht%E z$8xXI3{aFdwW+TmQ;NnWrKjWnkOu@aIegD>1nnwH%NNtr%OfpV*d}j86EOo z7rctD`)Qg8ce2RW2+r}4%~Xd9D6{nZ;5NN{q5BRpMO`;&6BE#)1V5Lrvw_BD+~bHZJSjV-iGTPb(lo`ELZUx)Bay(KTzp z*2>(#$(=~8gdO}RZ+Z+WZ^|b^tceUEM`0W*6~)FDJ%*CL-B`5|EE{V0=*Y#r?bRQ@ zC9{U-Y}1my2}D{iMlOE@Jcq6AJQdgsr}>f%E!g60-Ze?C!7NdH%~!Y?jUpD&N?pdO zeA!eX!Hogzhh;(APb`A3K0qW;-_bUBZ2*29bNB6F@7yNo@ilv(X|@Dno?Kv|su{y7 zO!oT|*$0tfLz!C^i3oDz=+ z^q%6ez!JEns+ndgkRAd5n(!~C@Yv(;)5%&VQ`$y+-yH%6OocuJv^R1GNhzMV*6N%; z?tT^DCd2ZN%Ac5Qe%hr8-h6)Nr67X}31PV^^)$gZr4qt^GOv=`9mFdO#+yDe6-U~@ zDd`a`PDN(`PSMagmwXIkV0W%xh4OxnV4W(%-nlQjcNu~?>7!e1L{gz4j0}B8;NWw} zYM(a93Jua$ud~e6yAT8dOol$aX90?rAod?JH%UK-qJX7ZYbAa!r#Vewz%oQWj32S^ zPZ9SDQH79>DWJIJU<7;&(R~Ii{#pI&D2s|nKdxAkiQJU`m`<^i4JlN~ICMF%!I!xw zN1{;>b`u+bb}QH_^v>U7*p+v|k+cZAf3RZ|@YZO?{H-FTL8kAwz3~mkxI)ZBn?|2A z+|RbU^PWEYwi=b%iz6<2A*F$GvT##-X1BV^FTP;rBt7c*f~H-}?oxX4GS3~izVaxI zl^89;c-txdi{npD-C2aCo!~?PCxD1bJY3XRemY;_ ziGB3(xAL(fpHs~DtO&2&49)E9km!$AZ0fyl&rJ$8yo3FnbukE&TI|v4E%>*I#Bkc( z+OB|ff8W99;;ZM4HY~D@b*)|uqm8=g?wen><)Wef%wprg9B)f(%P^|mejHfDZD(>( zMWD}NR=S#B-k<-_znbLKhkg4`A_!pC(Rnf6!hP``R*n<&yl;0}Ui{R5;%AA$1s! zXW3l+BsbdAu&-N(0RxMz<_k54aZg`&ryrsyj{*~DMA&!PH8=^om6>HVWG zNVw#DYD^Y=uNsis8|ZWHwferG-w=*7bLS=ajkEuHKg6)&&45qcF8fv&jpo~gnOgVc z@nN0s58T3mbm#b$MvhHz6o@)BVQ|Iz?V!xm^0=TJTO=`&g9Py(k!bg``B?DPze95h ze7@cWiuhLhL=4FT;A3{t(Z_^Jwgx;jr0)!ABJ$i*Js%HlHTPI}f{mWbm1XWuk%gZz={DQ{0p!!`PkEt8mU3{P*z5V8{;k zCw1Yp&4>wqs!W(ZhLy$PcwSvlS%?Dg%8Zjh$934&C(hh)q9#FIUqV-9re&J`p4vv$GC<;<;y9&)#mY^e>*Ono z<0Ao2!_&)x{r8^>e32;b;r-M%cK5;f4?nhb+*tvL>rot;llZJW31VrE3+s)yktquG==r+B=KTmP3*;D%Oe0 zrvZEuFV-TO_JhLPn-`6zemk^XG0{&SEVtKvY<*98}(uN2=4+eWeN zshc|N9p@^84$g ztmu@Jv@fpNBE>F2OU!S;b<0yku?I(#`bq)&u}t3fl}1)?{$!1Gp&rSES*m~MXYtz~ zezGw*5Y61vTewXBEtthEk>@x!|6&dnX)qSXvo)1^;Fp7nXNMV$j=xu5;E${4X{0C= zrg8`T${ce+@x(sD$&nOo;-*~z@EqT`wFQCLJmCz*lx-T$HQ8q!E)bkXu4_r?ns%bh z${V9taMq=jncn8x?6;AUI}gL}wCb_?t1C#GlX1R^>AZ>AsPG@)L)KnUbG>zHOGGWd z_;Frt?>-h}&G5T8#8st=|8T2tX%(CbE!deR-;HK>BaAx(X$((baWIljIiM~?$yUyJ zs6>=I%xrB~Q>=Ft^bxCX4bzo>jg zPE<=}u(FE0`cFo^ShDfP2}U3L66{LgDd!?~)Oj=JITmNUa~!Zs+OLFFduwHBW6(;q zQEiYZGCa3Lzd#q_*x4e=oZ}*?Za7ooL$T0td_B^2hq@qU{Y z_w>sjk!ar*%6L7uYxm$dAQjnX+kumuXWgHL^CSnG`T+A>>`*Hg-{+^z`hVL z?{)M8LBrWtSwU@R&Q0n~y#sLlb0w17CBNWMPFoHv4-GPD14ASA&hFzZ%ZZso?g##o zCd^@8JH%X1oK<__c>f3aHQYC_`k!x8W?N~8GJgxzjFvyR62X>c8kF4-3)F5bUKp)z zs3~=^Rx_O47%39QxRgot&^0HeB7#fA&O1AM4$>Rz`NXV7IG-S$|J={nf3h zXZ$@=aO|v1!}xPRWc*VBa@{~O^M227sog7M1Stqu6yiPy!;edwW$`ub6s( zqlT&+_+bFnaA@)NN8(1!F-#xgmH{O%6aU|_Ur(O>TBYU5TO#AtY+?YsX(9{9~umxto~_7IEq2#&2I@sFIBmt)_OS2kl$U_e@@f-S+m6Ea!^m#xG0IQWebO~}^%`PST5kS}rCP&^&MZjL*ZeDfQFEJ&o8Um@# zjmA(gwRdz=ja5pjIYfqmR-&j&V%*m-J|=K+`qy0Ua~rIsTy;hzvt$3I`zx?2U4 zVKl!<@f0Jm+PZ7FnBeVFdbJ)Gx!U0mij(5x8SX@8K!IyPNWQTmI>)^@3B@#PFv>CY;yg|=oYU)8aARY6$@Vp)ymO3y#(N{h zjaTBtl;dHKQm9_u%*sfM10(flVVLS2y$mq=n3M(o z7os>kLI_V4p0D@m3=dS_QGp2VN|COs*7pv#jwITk7?KMJbg`7*?j9&td8 z9Jfs9% zPSM!Lcv#(NR0KrEEq{{>8Y)`Sq5Nsr92sns@7nqKrlUC%AMU()2NPbdW}!!cNgX4|Q`VOMu(_BaS9J85I~<@e|;Ny~#Yn1+uwGYF*aGQTi&Q)6v`ibni|1VwrQd5|JZwZIlyWJZ*QnjLo!ICWZ&e+8q9$Cn@dzO~x zo)>2rzwigmqTZrl;MULx4*S>fOsm|Lu(`R*W5uWg!6bj0op zH=!o2=QQzXxv^)L-2}(qGE)2PHePzHPRt~~@K9(Sl-wR6$bvE|Hb0_W>*xH^)Zy>N z{G!4w;c|>7tcer)UTf*s$%U}5`%>O+ENF%w%MK8RDZ$4^uFM|6Sj+YjWc5(>@ILl! zOecv?kHw}$Q&&zmKwINtPEvSjoyVLK0#{$>Fq;clN)OGqsrLa-{o*Qay9Q9_t z&0uyAe>CebvNc^=W~Qycu1Lsjf`{I@?v7as)(^j5wxWqNRSzzt)}QP9bvo+$)>8=_ z54H4LYb#FGF8&L0SgxKac1l}F2%^s^NIAs51$`C1|?E6Ef3KgY!~XL zO{?1v8o#Dy=OF-LHG;SA3Nvl09nsrpa`_wLhc1PC-%`Gb8?1`hm-3hpUf(I$9`8q;L!*<&(9ba$vj;@K;47(rTzydLLB5i0ESZ_P ze4}^8D&cGLU6JJr8Bl#ZW}AL(%{Sd*SX}Q&j_@i z(6D(e6%_&~EC`z)asklX*^_hsDM3zLcebJay~>(AI}Bf3nXYhvswGK7gaTCwFX)e! z#H`-(#9-sKP_M}DfpKvZdxcZ(*!m()@6GNiyo~c zA<%EtS?CXGeP9g%Bb=3n!DAn9G(X<+FN3>qk4I&cL~G2Ly|R@$fH1I`W>I=J<)N7` z7RKt)HB^KY*R~crh8a9K1Z@fLa6MA8OS=f>LqBWazdn+xu|)O=Wb2>Vj6L{x#I2ye z6a2PB&@Fr5h4%jYzrR4Xwus~}da3{O>oBFb7c8@vI&_t97CFEFx4@?nM9h!qO6-y` zZa@TDSJh}@ZN&V}%AhaWMK|T8v6lYOlZuFMrb+%16UHmpFl``q@?-qc3^(^Ow>NBS z3jC1aX@BHOUE$DRO@zO7g$?gBje6!nX;wZ$3kmL7IOMN_;kZJ)5U?2K5?MU##8# z^dEXjb-z@vtTejU?x**M?=nrGzbNo`57q{&owSSJL4*mKg# z;rTKqI4SCBBygN0U&tLds(}N%>3b2h@C?^KDko1gy_Hev)X@6$KFi5n$=juRX>|

Lottk=>{}$0o2^~LuSX*aujXqs;f{W)x(dHW8mSPAVYb)5gZgc*x zpy;^jfV(#Acu9a~XqlW*o=Ml=@#n$j?XWRN;t4$S`~#e9vwB^dg$=BdKglqpl&WG8 zQlup%Pb#qR>IY%*6j9g~*JYF2ePk13&>7<4H_>_W!t8M6KQuGl$aO~7;43@jbkh_W zzvh-N#H$jn&n;CVd{bYAGrtm8#5_K61yC3reW6TTPQN=SLpOK}CmvhYrF1M@)%9AN zNFUfV575#Z@-yHmD`RojFavuPL%Tkaj;_;I8fCK%%;;r5Y>SMy{J{~ryhKm)bM>nk z`?5*FG_ix2XS`^;*NodT0{i!zWi$WCdlIdA7pIjYronj5aTu1X!S&&zzAHOCRe{}N zOT4uL{=86lbLNS@ivM=Z>u+U$o2de>{M9nr!*#&I50BK_RW$Z9oQk3hP@2$P>rjVZt zU+j>-`swGV0m12)_9A3HulO@Y>tEHLGlCPiYBJ$m?k|D}++IerfzVI{cL!&}IK$)s#0~_sF4$TNE>nVbvIL+% zEQe~1TY+4Gvb8&=hv-KubdDBu>jLfRZQOoaiS-g;$N{=EKvtR%Ua@WR&2u3h{rOK1 zsCK>oVlz>b#|}Nh{jnHVqfHk)+I=OcroZsdun=EWtTVDr5up+Bx2#Dr%2Z_(>>c0= z3@!)+QfB%}{dU)|DB+~;Hhi(6bW<9`6s;Ot(c0sR(@~R9ZWmt33p(kJYHWi~vNII^ zHOvnO%w4uJx9X*-?#|_c#wuzkma$i=UB}RGW-(H`P`d2K%}`n4v;5P&*Y&#)z1d*r zs=knTO7niJ3tSf)0XRIc_XF@wa<8zu#JO~DgQ16?6Px@btirn)@9c_;_Vp)TdQdjG z0QM}A*JFCJZ^m~Oh!yR5yjC-p2uT68Ce+~t*bG|yU&)e8S)gwXkkmutZV-?{p*f9* zm+KrkKIsxXbUjLhjnFj(yDNwTVj1Gu&OwF~;5CO;Y7TLKTlmHR1+x~LPfssckEX#v zU_<@=M_ekB7Rr@f8*mQ~j@|wDm8EOMe(nif|DKWH)BEv#;+jN$F6sFPEZuRhrQ~15 zYCVaZbVF2O^7hNw&s&6~-t1?Dr!kqV8%=cl#O$t&;_`(%S2n({U1PjyZ+Dx^Um1&D zX$4lD_5ItYpTU1&i(CeAd0!b(LwUs(-6y`BO1J6pdix;Y~yTeMl9arPAf0e7)BLO;pHYl*4tOayHSQfPaDR zCj+0QbE_YA$I8f7)vfYJ{Muu)0h*?PTk9~eXx4=xO(wLPsC|$|eoI?TbOsrS-E~xj zluq$fOLIr4?gB|dSV-dOTJVk^@tyFN^3u*VuDxhrZ>5>5Un8cAWL(_T?iI0g?-JrH z%!=-%Pu?4KJ1J^r@*ANwS%k^%nWPGxI2&{zy8XonE1qx4o`FX=&33B%W{V0i%-q&X zjsb-=p2FCPM~r?=4GjgX(>q5@ar814Tcf68xF2X6Ss=QLGE#RLbLWckbt_e78ic}_ zz7d*Qjde&S8zHm!l-tWN@qCWv4?!R{XCDunIDB)55m8MOIkd0^4v@Xp<_Aec$q91; zcGBLV`ueP+tK!2Pt|8tH#nB56edq5>YG?J49l3fQ4Fz+g8ZHc*R*L5_NC0Q+i&rrt z2|)+cG8iiDR*ChDWDHh?HT)z&crjgdkesRydq4c@JUXYL|JehX2hUg7K?iuu~ZTSmwczq~#2GsQDEXF;D;4HfTK2heb3 znlLDWt+%|lOJDdK(#b~dGlQ0yxZs9{E!|_rN;dvUx6I?_dT><6lwe_p&CmPr$P|nJ z1T5=)UCef}fFQf2Q1;ejU>Y*Kdqu=qUOg|i9n=KcA zak<7mTNGh9j)Un)o!qb}opIWs6D*e!a(48{1#$ZGBZ;mM_JS=}aGJNlRQ`QaT`R!BpVYE@6(B1gh0gGn3MvV9ynf{1p~2 z{`}*?bDsg}FS9bH;qMw<^I|Qzb@HBV7+(@Yyx{-z$DfW#R?dEBMSr)v&&!DbYVc+1xuGPD$qd`q`2#<}RP ztiF`LuIbp;qtVzl{bFY8Y9HsJ+5#vW&(5^mGp0F74rTm-TDR}o@9zy0`4fR5)uFSet_ChEC zoQDm3!wtt2KTp!`l!Q#9>Aj%1?u*U2QaJ=FNmDQ}Er+p-!$uz1)uXERfY3y*k{=^M z{aMaPi1u96+C$Wmn^L;uwDU}^PVDAyk!lAh%3_|p!OvLy7LZ^W{{b4M2bwQx#~@+X znLv6(W%VInj%1!a+qGd^L>*Is36k7)1#=r8K(Ke$j6KdmA<+Khw;4qz> zFrnJ>ul%RePpjf|UTQkxPYQVAN6J_J&;9#Tv{6LkitnZ16{rq)r^Vmz7kMNT359i-{OrrYAVouBhM4uNHClx}q&_gAVX*C66)@ zPETMPVEF(LCNYgk8-f{^NR%x)CD5e-{E|$jC98*X7GNy$j#_kNUy1Qjj+tt`R^Mr+ zS+d+^Eh#6EJZO&Rk#w-h^1kE3vK5xsm0})uTh{7Ib&<4dxtd@HkNz)iuX_T)iG_3H zw|}V^RNBr>FkY%l>E(Lm%=2xt_aaxYq@^d7x*AdD{zK}7q{hY9VreNDT$P6#QDi5g zib4nk7}*5~&rJX!rmN6742Ig4v(W8i)GUE;TBvWC(Z6;KAhY&cdamp|AK7lds~&jb zNNuR`aT-|_0w7m{cx>N_8_feb=LKmcau6_vI=Qn*FQq?LNKzw_Wh-QDmq8-uS4Euh z&}zsYc$DjV$;sXk8b ziH0HM!bFF8Lk3re_42scHW2^G2TD&&-U{6}zaCU988?#7TJnD!AG&fIS|d#><0a!7 zlQ6!^PZQo9<7}7f4XOVS+bin#O1jmf4PW3g_1co+!A=-ExjGq#BXh`2q$Y_U_Yg(N z#8Cp*py*pZtly1l^}1bz(P6grdKv+@@a{{dKIZ$Dvp7rP&VC5&9kU9~yKU-TX`zuS zC@jqQuo1PU&g}#E*OAXZVP?MUJN;bqZ2YSVpH^vW|IR6gf!7_X5F-BhJpty*q#SU5 zaB)hsry!~PDITxQO;PN_wSjtMMxGsFT8BK+wDk8M)d#b~aEdrq6CT>f;UtZt?Nr?r zneHpgrMV{Rr~2jd1-iTH$;F)^sQ^Z}M;DAVQDOd}+jRrmZEr<#fbD5L1q9HuQx|-n zutrwHvWU}$nvo(KCYWLQn}mqTW!uDes2gclht&A%XjoM(^#TU|l;QbIbfAkM8OX9kNYp~m9-F;l%5n@-h#N{W|$bab+MLA zCkp*GE?g=lR3*Y%me#Z1k`Yc!n_a zn;fQ0-tzFcv;;WJnWUCraecBe!s^*-Px50CBCJt;st?ufWZf8;WATb-il6ZQCW>N!S)C@!Qe&1QpKZd7#_Ky( z!G$VQCRFY+Lz?k96?%pbs%&VWQu?@pVIDAr2VVM!V>E~uT8v|jZIH=z8V7R z(kYxhY#+?)hrJTXJLjr7vZNfSqz-W;rU{qt>son==$cHqlqgA4JF{-%EoJrg>z5T{!6%(Z1|IJ-Ij+x!zICca*rmX z5-Y3Uw^Ix3Oqr`?A>T^Duavn49*Xhqe5GDIF7|pgij7$;raUn4xc=*i46>3k8|iEF zr?-+VsfP8!ALlxNeCe?P3-aIVA@OMVj+cm)N(E6rd71~E1VO1tDEB4|xpLS4y0-D? zJ4kyqT)EYDC8&bIg{C=fI~f4EpDy^+Qk;@K`c6*X@vb?+g?bV-xCEd>>3>foN0f+j zB=;u@;k)rw{qu^eAqnP@ODdy*Z}+>5S5VIoq3tDIBV2Y~0DaYg zY*S!%Au_ae=X|?<7uBx)gL8$sYA@EFmVn@>!HDAGj_2$}VJVd|LIbE<#N2dH4)B398 z{s!Xj2f)B*gGq)`QFb^)4ELmg1D#Bj>&H4r$1s+Nd|{DaPgzNtnm3WKIhY6ChNi^e z`|wbc57J&TMl4*X<$`IU4VuxoTaxVkDI&T-Rhn~kXZ9Eo2h;ehEyLk*82JvTLRkV2 z_N8>ykvLcwf=D8PATc=3x@(>w_nsVyZdQH=`!v`dh4OI$(Jd5e3II>5hFURCo0Q44 zWa5UhfMl3M>A(ea@F#k&86Hi`V_&;%UI&mlPsc@fED4FRP0yQtAwDgR^TGFYn`=JD zEJs!Ls&;`vqw@_&_~4bYCcXu*Us+Kt6KrU8_vfO-`TAWY;fZZx9dAi5` zyMH&Wfu8XRp^4YJdgO%Zyk2JdA_k7{U}k5DlpRHdm{&}2{(vPpL)I{LD~QsTXLm3X z>chvGp$P*fNE}nsRW`X+GOT3G#@NJg(dq>Mvl zn%)Wk>?sl#-lAEWGStY{<@+>HQ%Y_6ak2p1`4~~pKI?U7(yxG-D#JWYaLvn0hz`>N zmw{(HT!l1Wui%$p0Eb_K(ZPoux57`s`eHQ26A>s}cw&Q{d@;M)%ACT)GTw@*qE*v( zfprU-m8|utyo&W`Gq}EUbB@Y7D_87YqcBp|#u*80@G)hT=L<}L@?|8|rp}CS&vYzW zCf%y+zqDpPZqf!BP|CS+Vz*^~FYkqO3B14taF7^`(bBIEbjryW@ z+F0O(ODHv=^o_pIZ0FWL)_!$v^3zwi)gIZC{{dTcBn&PBKAf(h-v)Na4}2-o>+7v? zqxMRB@IuJwblS{?9k?ZX%=X9))Q)TJ<69qo6r*mx_qEO?`VieMfud$&j$vC4#}QGD=eXtNM&K4)dxrGxqc4|Kc6n4XNr8s)KfwOu)_<>H$$hZ9TmREK2Z}K= zHd-Y?G5Y>^vQWYsJC0Ok=yH!Zg!K!rUJLlcGSGlwn1c8%TgjGtzS?9CSN#`f7_0K? zUgUuFU*k&NykJt4&%U}vjNP;!tZ@KEhOF)Pa=aoMkClV|)0Dz}Yu@t4h~*dX8^V)| z<%)=RF_Bjx@4XxGYZ@$FW{3QLDh}47Wwd%ETjFbCR}A<=AGmX<9)&kt2@`%VKuMPA z6F;sT2_#p0Tq(MNth*a-|DZFj+&Cio1K#gu7FGq)%e(_6yme$s2xI}PQdvEA`EFNp zRm;{?&933a#t--ZfM27icu8x29y)xAo(+ttwLh@G-ENj%e`qgbN%e^qM*e^Uk+PxVIo>(0TRLo5tI7e`L=y`m@Z$G)$w^JI z4ISg(e;H5_a7K)($Dv(tY8L~RyH}=N^Ul5mX~+G1bv5oQ#@E92H-_iy@4V(wrp z#1<(0J8Cm8Xv;KHz%x%=S#3mbCU!n$JfEU^tNAQhQ0?C`wus9(=14S^t3Kt zgUc}g1R3|;QkxMSd0QekA6CxbRJ&J7>+B6f#|~ZygHFic1^^X!aDoGjp}eN9}8;Zj|ajS_n9z)i^+; zQ87XLdC4o5$bDarFp!q69>N*OR3cpsp&Uh`LM>>-C6mOGC{H0Btf}F342g5xjQHs* zi^~(+)JknAz(1?8+XYf!p01960Jgz1|HrEO!4=K-(X$=;|M;~MjV2fqSo>^H97LlK z?6CeQ?=GD09(;gAkdHh_wJgss>l!xxtKNZe8ZkD=gJ{+OKvjvr8jWjDCym#eVI~y3W+GZ9asE8+xo@)igvx+`Lo54!pafwgz>PR9 zNiU@<0F&*>7Zf6NFh42C1}&ygBEN3Nm`wQ`2Pa=P5#vapOlK`gq=cCY2nePAEgcsw z@IlT-D0Fp5+a2kX)R_9=;}HdCmHeaLJV+S33v~K`YJHrjlEp@VmrwpnEw2cwVXAI)7SOpeo+0G(3)a(L|C7LxYyMW` zPgnm`eqX@~GIIr}*SdMB#0*5~mv%YX+*Lc`3luPA-?2H~m1 zYeuzeat5sLg6Yh)^$mggZf0KonDbZkon@YkYSV(zhy|(IEUo9vmJ|iZ=ZR{CSGeA% zLytkaFx75C-MfqU_5WSETK&LI~4S7LxI~; z%U8nnf=<}@1++y}8E_nUWyf3j%)(0b!bE^UkwDFRAT07B?ZWi&VBpPHnsIkcG1~Q! zeL+@CJLrt^RIl0eB2MioA}E6I$<#hGm#RFu7Fo76x9HCl zoq}IUT`&|qX=IzGKzFz?OE-d2HTu3GAuhQ%$I2<2n&p-a6R)Z`xBUH;B5y*t)yuMa zx}Db5x?={k=0X*}z~o!Co&^ps17$mu-MR^mIGLSGPS&m`kKWD=f;lIjE0j-_>saEC z3=u`mmDe-;Pc_Wq4#Jz%mKaF#dhJ|xm)5{w(~tQl7$KrCFms^7 zx_1$@AKX5EE9!a|2X*B9ab^HQ(%3Jgf1XKh#rhKgwS;P!gfV30m88bNH=q!RJ<`oY z4CRwmydeR{Wj;)KyDI$b(Yakg>S@>gOrrYqyBuG4UiN`)%DY1derM)6gL937VUty^ zWiCM26}PbIoFX8}!E-C~IhqJ!D~{NRgLlP$u*)V?-J5XKk#rUPu+FF|hmcKmn(7psXQ0Z)Z797657~1vJeV_qJf-(Ah zq|pRZwS$r1yPrC={!QOeVYK)RQ(uGN15sbr=P&d$d2a2}CT3#F`XvFp4g6pl_`O!5 zg`jcZRO!u1$8zx_J0FFa&obnPhDIe)ac(2`4-?YkXyJm(SzKvO zB4-d^{3T_21K)g>WYb0$o6d$lksX_KjxxHMtiQ?=C>U>H;kojcxi6H7h`t+68F3pa zANrC;4kAzhr$W=%p z7jh!34`xA_RO(70mCs#rQzS#9{B%qMMC8Tsk%_vc7cm*=ZBzVqcGo%Jho;h`Z|XzM zi{dxN0hMeV@2E*XQWm>&>c$}KS7~jZ7-W|=9O_P#R+3TP^P4m`8ZRS1+;VPL$z7$C zW5Y08%P1e$yj7De1WtEqFCmDumEBg2hM5Fg9UcUaKa);m8u@9T{dc90Js0Kom|GHI z`@P~K0K!&Yc?55$+}wPXm>l)nLP8=l>f0UxgQS3W1Mz2tE64ka)P4lJfCRF1R%M=umuh@`Ok?+M7Lkw{tn>TJPi z8hIN~WCmoad*?Kn@7Q3!3Z;2)*~XOaIWmg5kR|TMX5G z6lB$r$>}Z4js`fbLSS>du=bYhzW0cRiW8t(6X$y&B#cSI&!J+y&&uq2by+`zvW4_sLH(5rhI` zJu)%tjYesordU!Rd@EJpPsO~WQo1|VW=V(V9?#n#b3(s~x(E(UL7cPIL+~s|K+0QZ z-s?UM{9BT}pJu@UwlAn(C`p6i6&U$48$8|d1fJ6nADQRyUiN|smnQVU&2ZJ(;cXMO zS(OW4HXex}E=dT+xnh&}Vjk}t-O!}PRfnhNNk_lDKXaL4FiZ1e;M7T!dxw3~M=zQ< zSTPfos7W({2gDo-Qyt#^oC#9f+_Ou$n7ad&jEq~Glo!VCj69eZ&Vq%_aZI`UikHnR z=H5dHjsP##)5Qq@U15#%K95gcM+JCJXvn8zu2uNrj~c}aU7J6^^AD5ZZ*{#a^GQhB zyz4FF4vB_~FL2+##^`Iz0+mPpAVtrv{nIZ#JRb`0rVC4ht0)EuLFRXkLmFAU&Mm8% zRjF@?+0&>^5J+eRMIWMN?-Avx#sE*GT%ab!!QSEVU$Mg)fwbMvH7!x?|fWl&T(iEpwfo*yg)jbwyd9pG5jLPu|UY-0c~ zH@}Y=xo2bGZ3gyck7AE^)%afgWG}|pxN7c}F5cy*$jp$fjSp5Xv3k7UiRP6=J1-=i zxCkKO;;1|$ZA#mNluiNUs`lin!#2E`H`m?h6!=AbeaIXeIB()>a1fPK1_oIFDZ(%L z_yP0+y(;C!!+~o$FYf~E_0-W$S%JhY@Usb7V=3XVqY)C<4=OcD#$?Xns7YG4%rd92 zq@Hz3Yfhx*wkG?td$$i4{oqRY;h?0;w|)8q%x_~QIjNuCU|pz<=K_3Y7=Q6ua@t;< zHS*;~uw&9c?Cc=3&29J{{#2@zzN{S?O5vuh<^CKna-Xt^EBF9pvoTF!VZo)^R4T@S zvMva>s&%~8@zBKWkFF&HVT`aO5u@`ZOJsVfdS7WMedqm*w2Tm7qAOJ~B{}kqo4u7$ z!=O@dq$gX-^R z_5&;MMXS=`KItL~nk(e;3+z#zM5Nq%bVjX4$m9I7Ea5X-0X1|Phn?EvHZI&g^bWc3 zWL~p7$&~*sMIo=EkE@av81rA63EsK_t8T|vq!_{Dq6)Wr#)NQrNJ0gCp8UMnMrSsn znj>17422WP3r}Py`tbuF@iINRzq()tx^(ZYL@M6|)Q>YxC5o%8WiG*-3;mB3A--wj z-i3v88Xx=RbI!l`U_kqzO|bjVqu)3~;g$e@3M(z<{64h|Au~4A>A!X#Ux31fwN^7% zRStYEt4VpR2aU41tbd$#D%BEjdY87>CE538D;Kza*?d-MoOLk#^EnO|;PFQ4X0IyXz|-_So2i-p&sw(cpor`u;o+1#SG;e{~S)>oRc2i}}|=vHoBO z-yC#wK<6m!h#a1{v=oz{NC)%XT5SI0nc&);cb#=Y2HCTgin8Eo}b~ z!(4f4ePJQB>n6qBzzv3V)^!y$e9oTxW#CtM;{b^)K0cP3h73uO1O}r*!~^21dJ_YR+S{Q)b*NA*Y0wdqo%<%tuv ze{=5mj+f14xSoihXoON8yPonT3PeT;L8cluGmKt7$rVCCrp%=DuQ!;4)ySx;qj?Ho zW8_;`B2E6OfXJnW6FuWh$jrL0Q6{?m%u`l(`RB|ZU^X#_(JTdBR#&0`>pYHt^d^@L|B1s=ze_`Alx7zBzR8&Yv8ZzG?kBiD2Q{DuUF8{#^jR zYiyB~*M;pzdtBES@4w7}-0C-_D0yps{i%|&^h7g*dz;XR|bDL>JZhn@+Y|oF8qv{6XIy5GD zkjOX!U8VjbIjvmhWYM}Gh{C34PVnBG(*3kgA?VLH4!0lVGa)ctHFpV*=mvymW$_AN zEf=eKyN8OG_I+ogTXn4*AySu=M;XXav2N1oK5hUu(a*9@BSVMdJLP(!@c!zt8^vEL z78#14FfHutsoe`T30Ok5VAoU`4at;DiqMUXC${AVx~G~<_jAw>4BxL9@)v!H4^21w zH+{X@^i{nFZoigou;vp8Vm*)ATwsJRwR0 z4cC%mg$$v^QHF1yj1-&eGEdenjx2hSHwD!cBDvHEM~5h#dyii&j6Lt_Cwm$ZYQF4k znUi48y$Tn~&!M2~z02Xz)e^~y32K$|U7@O^=)7I#^GS92CB+e^bOq%J_q*Tz+D`Ak4cdB~R)9y`tmp>~! zNxVNKHkNiMq{U;xFeoEjVo^UvW)LB6Us}oiQ!U@&(ZRwos*?&XwWi80qG7f`+Kh%R zwo!g^$S;(T8dZg3zJs!WE&nxqBXTJBjZ?Kw92wuJiu~EHW5GoQNiJS`(3s-p{z7IF z!c!N+TaE-C?3Xp?;%E#q>_<2sj$oJA9gjvgO1M8sD3PTwHe45Cus+)IX6({uj4W2K zj?QBji0RS&Jcs2|nSUHHLOH{jpP3%wJW<5uC_H`BU|8oLH%vJWFZ?6B-2HD+f9+ zvPfIbHu~EUeJ&UUq(8iX~W>XD~S$`BGY6&5w5?$e1;-@SR*Gy*> zAO=g`+Wf5J)l(CN?^`jg+=-g2ve!lag-|y_+<_#pn>Y0?y2+kuY)q@PWW-R6m}qm{ zc@R>60?wtdj;x1=M5vG7x2v+gSwgRZM;yYXm6mic#=CuqLL$&%{rI&6`IZ5Xx(jZ1Nmx?-6=k&DNcbT>b3~FQ2SU@ zF?CYohmva&2Wqc{!S!F+k|cmc*Zvf5p6A$GhX!b*f=V1Kx)Yks2y(|BNSZ(zzeTis zGEE#&m#6QUt8+3)b?Fa5(eKEKd%rLUpeII*bx=9WWz}&o>6e~j*eBW(a)6{r%{PU; zWmFIisDeb3_lm}Q%T&Ls7UHK=IDC)+_v)k~-})fzm)ZlEb`WAd$!WzOdZIEC>cU4W zTkigocBRXonO-_3qxu)u{j~hYm&rTC!7OqD8Rqwm3{~IEB|_t|@I@U{4GMrgtC8c` zC)}t6KMy#z+}{rytEV>ls?+I(7NPb4Xvsdu=|p6*F=nAa{pJ@SFtxF**U&w>8o%6a zaqW`t7sxd3$6@}|jXh6=PBTJP67p?!HojIPm1Euqv&-YTazG;mIBcY5&|nSN&)$|o zgX`_Yfy22rT~t$Q>az64|0rWSR8r(>iM!Xeb?KC*QRSC4_3LnvSlJ@Aj1|6T7`-ZU z)mg*aZwf;Vq)_xRcL;(VXs7vFOD$fL?~Atc-%@jW^}?xxkHB1Ym&R`AtOJQR7(xzH ztoaLIA{Z={;1PlXi}Uz~_h@`38By{=&bC9_3(}$Wz--u@{M{tzG=T+GreNqf%wTa7 z{++{V{#l+dA{Oj`k`9Id;eAfV!oImb^HT~T4@+%6xLONLpS{MQ?=D&&_|ARDf=Z~Sm znfJiR-OEU0H)^3t-plPx#2US+nIik;FM=7jgG{CUsx&%-hSd>K55oclGuqKZvCkGy=<=_28bf#C%Mo7uo2)S@p+d= zJo>!ftpOG%5T&e=tY2U{>AVz1G^d&jpx+`wrPfN06EW4#5OpFH4WFQ=qFCV@-4Mtv zohta^$>Wk;!K=-{mv&xZI3k-*>I8R1>w`b0-qOC1XuvitKi3Crt92YvxL6=XzwfylL&0 zFep~i*0CDE0EnR-qh-7czbj6Z5;5SlAj5Or=95Q1OWrxt^_d@S=&(|aY~Ov%|o!n!JxdMx{N1w{!lTS;9z7zVeXrZ z6L3^Hk9e~juEr~h-dqoxEdM9VzIg8TziR=n<^|6mg3a)C)JQu0Q1MyhdSyxDOx?IP z0`e&2DN~%%2tl)**)3(1LL>pWFvO-5T6{V2#={%mj+#H&yaBz#w*SDS!m$b;<;sv; zD=^F?*ZbBkr$WbN3cH}eqMxxvqp|9djik>@(~ElTddfcTlMtl8{8d(${NvZXhy)E( z6ZRh3?SqAJKDr1NOxPQ89{*b^`SFuG+k1TJi5QX-Eq~t4LW5*{tngmA0)20xysV6S z*Mg!Q%?+HaTL#jlYTnBOCLZFJi9~~x)SfG0FfjS*-5;PGwSN^#l>gXvFMAgFNcYsi zNpTOS9DP@6xK$P_qVFQ{2f!=cJ^O=m#ij^(S&hH~SfFwLjO!5|BP&?Q>0 zmVc;C<49y_X>68V;n~<6A$7%=>1aheM?qQ=r*9zN{fVcQ&8HazR=@C>pL7svNcKe6 z`JlCDiBGKvC3Oc&8%o86VePcSHG&p&7!8ryJfkP)^)TEve)bKPw^bmdR`>)qH2nQt=Ehst9t0kk&%u7fd^=wDgNyn42c||3Q{Q84AMPHL_`;H# z|8d>Yf45uOHNlUsy8vLkr=?^FZj&tYR^%dSRNG!d$8Fto$*UoFSno>E1a0{n;$$l0 zzE3MvjU1Hy$eCmQd}Qkr3glq+IaB3uO^=9prnyg-1w#T{tgL?W1@ZFBwV~<`2DYswv?~acfWVEo)iD~8aQAkG)8XGJeNDj8KmN8lFT$iccn@OTmnqSFS8|G|OX2f*;#b9_ z@(IUoZ-p9~@yDCyXTDTw*Y=P&Z_{gCC4A?0FRumub60mS#nDYcqV4s$n@@~8#nRsZ zJq#&gS`0?p#qbfQ^bSFrFd+ZY#;^TeOK>-mUM}EuO|@g@GZmAENzdY8%{Id13-Ml7 z>JiS*iZVRqb%^UR4g|Fso>R=|*#<6Fk=^@|29MLv8y#v1rB4AV#1u_562@j(-ww#~#uDq~Dj~`ofPpRKZooN;>vV zb2@1@<85wdOSB$R(QHjU?CJE;V}R#sYdi9?4o?+5(Y%N42SNwDepjIk9fcAWXvWr- zl5v)eVuz?a*Shz&XzYGhaRQH|F-mw!w)>+GD>gH-nS_b)Y$(7U1^@$^!+074{JXb| z4KpL=TX&Zy5BRB%v)`V2=e4pjl>6+;wt2KQQ@dlOQIWmW-*(?T&@+s(lW1g$+=(hFFx))gH8JQA zgBNNZaOAjM9B(Q51G?kL6z$KAu=e;r^x{RiOnx>Xv0}P!9rvY`$<4;OcZebH*!FGG zIG|D$=M29q*Ey{*KMTi$65Bn^6e#k_+>5m`BS+lfeIubbw8i~{-j5>M#@v^d;GjWm z;*LL2K)_Adm7qhU<&7Yv|4sMyVLxSFJ82vYq5pB(p)8)z%!~*TUBK~|Z-k=2*Mm_2S<2-fjPLb|c|BzCJ=OvPalTgWWYdB_ii-s2?iB`+B z?N3c=T1%*I+Mfe43W|aEDc#hhit>)Ccv^fsSvbQ&g@Af(4%YXN?>s%SP0Ssq(o z9fz<aP?Mivb=1XmjYu0j} zcGTzXVV(Ks>+CywyLU@`VLO#-b!cUVZd^yRuJPRQA*i9|59ZpHpw}&zfy3;D%4eq2 z|6w36OzYDnxYk_2T7z_^bwLA5qIN?ttgzGX2qFw0Hh9gBk1RF_S<>_r5|rHr*yGf_eNWNT@>XC}snx4;gRJQF~>$^v@GG-*yt}kVNP7T*u z_U6;h1^NsVozd&pO)a3DL$<36f-jlVk&O)iQGjW$rqhJA=%^kATUI9Ag&{E}+%gZR z6mi&ZV#VNDG|eW^Fb=ztuUOkMLmO}IEBODXXw1KQ0ucJ?$0a!0bg53$0X1J$gC{!s zJ-J}(I`$y=DP|uc>^S=h{o!NpN-lu5{6}UbW(|@^CR7ed{jL{|)5j$cD;TT0jc5)j zo;qP3gya%<+ohbMk?0S}saclW=b3g1b2vq1TPCtb`-Je;6Jp{k$DWCfhO}{He5EVm-Hgq1{EUT}?ViI~Z6JH5Xh6-5^SVEZx-tE{+P9CKPVVnVV66p{8Eqvg_}w-^)#uq<2H z&N)BRPVa{y=v%51iO_H1qwBlaZvhf^sJis9bz*_S8r~zJ}jh!%432> z@_j5jmnXZ-A%dzU8GW6vTCGW>-B&Z%?W4O(sT2$IU4aEbXtSCXwc3kCk+D|A3z4dC zzU3&XwxlPqgn7b&FcZ!;az#}Wp%c))S$Gd1)*qwa-Ot$3@P0vn1o<3!#Gh~g>BG}E zoT1h$aGQz!j2FM1-o?72VKaurkq-qHa(SFahy6$X`0qgOwH^X7?}4+B?fJEN%@!Aw zdJLv&0j4OKkLzoXG|u|t1ZCCKgl_ahH_#a5*#uR4&qLJ|i)kiPx6XKMAUB8)4XrU} zTY45JMPoO2wJ34o-|*PW8@SXep2z!K+1fIOV9(zsXwi&^E*)D$AP2c3`*t_rcGhQU zJ*8rz(Tla^#Tj**)CfEl(2*ag$BwTXKz)KkDV?a71Hr;^7GngP!u0FJ4(lc~)deb* zmA~DiUnv)msKwV;9K2#Lq)%t zD2{$(;w=%ulmEQw^X&OmAtc8*Ll?n-?yIA{kd`}&U;mLw=cTd$1dP&{<(NoX$Zn#< zNWdZePTUyfuI^5dYjGO>>{>eIua7 z8E&1XEP@)+wjd#p(})laP%B_L$8s9-W8(l-PZVnR%xc2t<+VJ4xC9fWp?AK;=;*Xu6H(_ zUWB>sk#C_SqoxAn8P_uD03rxl%j}B3Bti`)$gVFn#_;FONrIjzYtFi*PjMx3 z$%F0uF)AL=#t(}kddOdRSd?{$*$ZT(A4{&B*{CKxgGIT+KtnS>AC@mNq$($u0w9i{ z;+d;nmoe$VkLbn8&BeeTv(qfpXvo-8aiGOapYxI&hgYPVvK1#Www7V|E-&CKF7#yDz-hK#j6UVa5<0VE|VKvR@tl8@rJHhCE zbB90*fabQFhNs7+{PZ6R@Q)l3|Ld=Qc)M~x4nALdtg^%TWf%-fH+|oAIT+(is8GxQ z306&6$scQ*`8{PA<1+lOXT{J6r`(thR1a^o-`W&I8fE=Fqi+`;<0G${n^>c}U=|Jq?#`zHYRgDBYyv%z7QtqPHw_ zi6zH2a_3|}030fX=R&Q$%!KT5sB3Qq`-R=Mz?}L}R^10&O8)H2+7NG(IoxTyqtuTC zly=Al90Xm_m$a2WPa{*{d{4UCr`PYFiS%gvr_}u&+`MM`w{r}y%W`0*dtmN_KBLIV z1mz&d1_+;yVmZ_dDu6LbO=onrECPnUi{6b`p(Zr)6LD{|{uj+y?eAaLWzhy9Mas@( zMtN6^E<$iW_fout|RCTiz0UXI2d?Jqfj zE9WL9Gtew=0MRrUo~VAE{ay0^aNK`IH!zDBn1#Ec3MbY6O<(=lfS}lR66wAy<*-^d zC58)!7@;f56_ITW{M}L`DGCYgH57N4lUz1sRO z;VmkEc@G@}uP2o{?uDmc+IlrG_{;!&`uqdj>C2cTJk)lJqeK)kl=g8S_qs{4#*D-> zk`3F)KThH?z*RyKO6Vo-jIq zIUew%&&y`F(zADl3#iV(R0)E4xeeiLWbHmWBM|<&_o2T zXpSszUF_-+F+?_lEZn(W|4Akq?jxC3E7cRtaQ39~i8JE59~}#o>b9+YRu66M4DHSn zDRcJ#AGZOa!Zb;WXZs_Ffg4PJENJUpr4F=~u+Onagk)m&2u&2{LyN z#r%;SH(Aw=oj&f|o;9|0dAt1UjEa2YB_@ICP4|snufk%7=j)K2;Kz&8a#R5e?}6@T zeD*kw^gXc5SKm?%K?kRaTUnbdJF02yMLKBy8p{ux#s@n{H5mpIc*UAq7=V8 zlk|IlGp@ib@w07Kn~_H*Y#G!9xM`${LQG3eO(8^Ni$iXibF>Hm{0EwFwQQUc&J*2{ z)W$vQJf{^hzz1sMCp85NMg8E|dqR&2aANT2_z}z$$nJ7_jsYaVQ<9L-A!6pU_q_tr zkzaQ0^roC5fGhvt$rTdM`}4L>0SDEOTRr+nRNjj`&()@a+1P?BW?PF#>?)i+i^mMU zE!D}4Q)7n@e5lOn)?`j3QBkDIUq+k#MW-cu644dhe3cmr6<`7n z<(jJFE@)EG0Z$C4Y3nD%%(WF>=dLx2+t)T1`dqLlN`qD9sl&QN4gKke{@(ryw_QQgx*A_{kalJf-K&PAsrV* zqN*VZMZ>_}R#;UnFBMm61C#;}kTfPY8cA#CB{O%tY0}?|P1uP_4E8mi)Bbud^iwz= zgDWdeL@{ta)z-eO`)b{kzAAOo_BttCH|MqtKnw28RTHC3vKyNTOT!`bek* zm3bn)aB;mz_A{&Ot#Edw*U_fohJKi4YI|dpUYN-fV%3}^@ZEz(7Ks6(2U7dJo<6*z z5V3DB=_2b(!~rYn{sAaFr~g8WQcqv7lD|x7a>0+};8CzD1&-S%fvfkq!!z0vA16kF z5+L#OCQ9-2HQamlj&LqL%r@UsDZ)b>c3%vBs*gP#7-3T_)cgN@=)>k}c1uCbZV1c`oPM^Q%}R5bP|^l z_>Pw4=Jsi=X5GLnG7X=v=R8w)hs}-`yc0&h;9gTo)iYDui!s5(OE2I5OpITjc=o|p z%`WXmScrnEKkK*r)UNijTfyyJfJN8!X2dYw@h)Y#ls=vazW(?q_ugm$1|O3b<^0(s zsJi@l6`doe=yOJjL^I#c3NO!qI35;)T>h@b)}q1Gq;}SLUKhH0CuOK~mJMgp&t6!r zBO-@s*lYi)-P=>nnmvK9>?m|i(*3N<{w`qeIk9X*(@YS@J>l(Kzx};3_g-rnarrF( z>}(bL4g=G=CYpZw@Uc!#JlnqQidvt>+kaEq(d@{(GXH#1H_;pSgpk=Obefeaau(Zg zj$CO4R!Qb)wGB;w$89ljH&k-pJuKe;RRHdg`d0w^?>jgG7raN9qOkfpR+@Rh`W zg#Xcn^U1r@%vQ>M859q)I-qM&Rdio#!hAB96XP}J<3HQ56~^wRE;nf>BjNGHN?$9gv^3remz6)iKYLYrtp992 z{Bz9h<%ERBKRlmeRP6@fa4BsWz{R8C!ngzSksh&~5GRv$-Rs7D%| zwh5hMb=8k#qwaXWh5WVMcKE`OGBhu{$EoR7D_A!KO=&SqUAfdAufYZMg|C74^LxDe9UxCZ6z}+7Zze|PV2& z7WKnnk~dB**dA1LiA5yC6a~V5@Ll3dxpAVIy6?vVmlk|xc7|(2MnZ-%cZdh894juw zxu2ag$XDdq%&sbOqOdX6@=B#ERX)mJR)F`EQUdy9XcC78;uI@(wNFm4(&TbHeq)u} zBzX{P8YH7wZD0~zmxYxpy6Eu9qL`bR#dpT6h{-zJW^g9{ry za&EjS!aGW#OUID(_@WF4v zy~n_B=@b`3)`cST{st15&as=ppoA`>%0M?{7h88#FY z+-b@~s^iJMqo_w@>=3TTx)9m<)ZWX6t;G-%5U$Tom||{{zN)5 z|K3o87z40%I-TkgM%mWAY#>jw!>iJb@Y3RyR6Gy-5@iD=?IRe6b%nCg(u8S;gFr z$kQ&71g@2eL&d-J(L{pJ=7O(z1@fKtTorYUYv>xfX^DvWX6wRtwE<74O{wk;VQf`! zR|5mZirx3mdG|q@UE{IZ=Mg|Y3Dk@#t7y>t*~r8Y;2u%YuCP@mm_0)2BQ&H@Gp{&aQ@QtQCa7+17g}ZrC zDd!V8B02IQfTNG$TLnzD9(gt7B-9CwI8<7!qVJMy$SzJH)XzPkuA|MzP9+u4MPzz3 zFSzG+Lf5TLXVqMFadfn%^^??Zq3*d9Iz{pRx$JG%F+N+PVr~4zw1jKrg7@H1ltA{) zZk$|8R3Qc_#k3K|DIILrEtY`$61;kuEw$I6{(HemIW)mAp8vu5XN*_i8QAPvf-LQP z)-;OCoe=X6^zGa@oFe9!by+kFCXV%OHw0^>i7S%Y+`cqA2Q!BSpNx}a1S105R7FTAzB?EEB_d>V?$q=ZWtr2>?k>F zw51Yv5rQUKO{ zai~aMK6;RsgL1mxfmP7YPjp{aC=yE(b!z(K@KYhAQXXyT`M3$tIGjVQFRkUuo0y(Z z2k;Ok)uNx&PVDM$BWU5bg6JM8HEm&E3~z@(??=;3Q&o3ubwiKKhqkKGLqfER#!Z~p z3K^-~$anuiw5kiNeAHOcbwJ?s6?Sp- zz5XBS{*T~!y$1HP;L3;|V}gD)C~+a$4|`j)6qsB+w4CK(U$S?N+6L&FXVRfY52WOB zL~XFa_JP9esw(NQNbb3M0*JBg+E)w_eSJdXj9HJ5-)Pypvm3eE-fb#!qE)>!au2fc zIhVykE=>#%398*Ew^WDq@JOV%jxkM7DEmArxcB4I?@ADjXO9elzfAbLA>J@F8*Xsg zeQ0cx3UUl>SH-;1br$uSr3x{7;a0$AHZQPUqQryBIseXu{sRX?r_wD4ZI_Cdl><9< z9b{{k7U7gA{Vh%CZG_yysdZh--m$N??1M-adDJVflkjl3cK$DktNkiwgI}}Wnb##) z`0)rV@rB$|L30xW#KY*E4HZK`zJ8AlXOX_uj}El{xITgpTq34a%-N;nA)UN|(N^%C zId^m%2#4lWV6(W}vo_=jkNAfDb5|=VegSi*{TX40n)O08Y6o^~b7psKTZq;8V%NR- z`y~M-c*69%_0i8~wxdpmi-)hr`xoPt2~m3%vx4)&ONH2=8eMw>bR6m2)Yg(naGq%(l?3qdCa2IlI)tTT{R!#)WK ziUehHX}t%Z7~AT68whz+8x^bqF^OK|G~WW|P_^F<-pXj9)JsB6RgEClY~Xx#E^VR2>U8#q!%_?wiBq2Hks-9cO4^jB0~xu+V%l@dYV+6uswN8>SX$)C#wVFe7{iMFjV?5dr@g^K8;kmbHQx9=2b&a=JTjS#B+eLD9G8M`w z+Au5+`YZe3rlqaW8#XEQjx+;P7jRnwpJSHkkYvDQJj8G1ep0p>2q)rPU^7IQkPycX z<3@<{ED>J^@xzGR6K|_8$xR*VXzM;3ZP+&uZ!zEco52XjtzE%#xsQ~wHgrx-EyqR~ zhIN0tjn{#K*CEFjfH|~q=r{O^KEdiwpzgxUP@g2FQ1T&H@h zizd}FSMg&`Lqs+QvuPK5zh3>_?8SLonU-Cw+aJE}&jiI^&sg2RNaW)aND&NVz*Y#P zQgvG3CXGU{U<0`u-Hs5Xrrp-*`Q-;BRvKJ~=is^zVbUq|LPK&h#L$n{M_8^Udx%$E zQN%bKglSldP*5g7l=APKUjG;nS`VFLvj0Xo;ETfBDF-{l`#>unL$Z{%d?jC7B-_+{m8Z(>@&>Yrk?jBN~DqWj4fjqIiX5 zDv^Pz&Jk!Tj?8o}s(8_750o8(xB;h+;90EbmGu0HWf?%bw9qOBv7X&*kJq6Q2TQ1&uL#>*&!0Nbf`vW)w;7yQTdUv zSCjnxHGa8nh)gE_c^?-es}J zjcJ0k3G$E+!+Q!IaYPLp2OUD^vs|AUHh_T+94VI5;fZjGGd9@%KeH1R?EYPUB&??M zL^=FV@BA9x;D<}FXq7qxKvivlW*D;C1zr)4UNtu<8AqdoOl1jYy8kQ6#N$Of3fuO$ zYA)_i?KawGX49DrC}b%On#Cb=1=XN>kqji=JQZ;n{6sa%v)^eS;=(^H)<=bx{Y=PXVo!CX!hBoGUv%kgjBoh3emF*JmZg%-PELcsMw~Rw6;s?@!yIW zD)~nBcVx~Br?qyKN&?}Am$R9vg(Loa)=8*8mDT=)I$d z)%{kH-&Y>G3&qBAxipu5)66zS2SvRn20+4dMT4SgvMxUC4SXPyjYz1X;AD@+ce9$j;}R<0 z($PbIMWwt%<-_#7PcwI&>CM%B5+He|_YwkP;xti|rFM@Q81Id$2=pqIPrM+IB81SR z`!@RKRJ*1N)#94-Rn|u_{Te?AnMMlI@q}I+85N4pe*R%~`=7v0c^%xI{P?Hwcv;;h zcjfntVubHu zv*+_ot4RSmJRfRQUj)D3OukWwL$##%N6nr&mqopoWaU`9Z&yvmJ@gdh54ri`x6-;88C|prmr>bV<-Ny7yfvj zi+ey)8p?+ub~J5jGb%iL?p@9@!`7DDOt+l{bR%7wh;s!RPL(=i_#OI>sy?7>rd72u zm2@iuw8;KXCBqi@N}l(#-KDm5#-ZlHLY?&9UfZ0(L=ab=o!r*fj)(f}p)e|gY}bJl zq}iW1c)g+$2OcQR&I*P(;=guu)y;Jiua`#lWe@2&R(?+IMdVdO6GH%EI#P|bNX-e> zQJlZAuOeq=VD?;GH2R&yO25Iy3M>d!ZFmn~^0Q?@L*rlS~rro0O0~d zwWN4~CFL?9dn8pSVxex%#z7SyO)6j7lPMyq*WeH6e`_!*&k_$3ny7mw(RI*r$XEA{ zs!4z9p9;$)yTAH6l);SMe(}aayDxy@(I9F2TfRXCbS<&=H(LjJFVD1QquF74is@~$ zyqvMUihfw1Y&BktEY!!brSgZV*l+w zUaK+~`U-4v;Zk;!z4ZNVM1yUq8`q}7F}VBp_n{9A`>hpw`zmj%@v94CZ)!NQJ;>C` zE9IfzhRsnN-$mg}&fWbk(c{3as;b?!CSZxW1L#Fm<#|4r&QfRS(F~;}f{ZHaxeoJm z`j(pL@+?{z&-sUYE4Am~xw=QH(C;EKsPW318| zrs?a-gIV@U+Xxv@C?0%2Lh@Mg3VZ&W^!W2>Po5spfw8pK1lnfI*(FG2x;aWoa6U0Xu%I;IznJ@|P+A&v| zVLNV+9l|!*CSI`cQm72Ot0hZKB+wE^1$=srepy!BN3r3XkH_fmD%&rDyB?&>FW2~B z@r*@~x~UAkD3ae!Kh~|u5*D2d?#P5%-0>y-3MV6;Dt1XMjV-J6VO4TPLoG?MrHimrCdGHK}RZNvA<-^3xXK;u+G0W25|3*3bPiWyNHW35^J=Z3+{)WtcyK;s&qSIChUr zD4;`CDbH3soW<=@KHp;deaB21xfJvxGt#opQ?I6E8HrC^IKxa__JX!(yrRjXfo}}uGdjDs*Z(eldP(2H z53j=P(8>G@3lJ|(KEKYFGraO-iV* z;xqDlLE_!ufV2Qjowc@;58fsCqux?Sp)zTxnj@*7H&qx$@LPm#h->P{*)7q|og>&G z)LJI}gIL@CNn6dXwjnRS3d3Dj`tAND^#dGHP+l6-L1DQkP^eu8;y8r2O1m zwYb`+SwhBVbX<7x0k~o{(Vl>xtz3|x^W?$QFlh2B~gUr5V z#Xka9U@E^F6E~JSi4Agp_;sq~+`56%irb{>NQ+D3e$p(2bZ7=f_}^>(*Va-A zUaJD*Yhbz2M#e~r?66vO3rXmS(}ljvLQ6(8X+sPUw1!va4IDyLJc3qKkH;nfh}ab` zDmT2P%3aH(51$yZ)6kB_gf}VQ!=(OXhY=oc1r$?DhmIXv6lY%`>o;fcTz#gmtlj z%D+cpd?r5Uaaom*oq|;&(#@Z^l42*CsB7(l)e-LdYtto?$&9e1-kI{Fw~07;*k-eC z{I1eJ{+UkqThL^=(`Okx=Nm}rEq1HL5I?eAF0;W6xMMiV@yMowgM zjuMaLY7c#IlzXx&AcYU4uP5iLGaZf9fIy~Ay&-_^#)L(u^%_ax2OG49z>H05t5DJu zKVa4hy|w$qwBYgMTe0}6GI?eY!FmZ{SWVVog2s^GQ29)gJOWo8X@Oepva{n$>1rnU z|MaO+BrnrRFLte$Cj7S_RjzsPKC{n^XL*a|OeG?&+7I!X(j%(9{u+mReR&H$)B(nvi-|psO+1)-&2o1hh^0*ZQp5D^8Keg>i0G}rrD*c8&zkJ}oZZ2c(f9*5C>6ZyRvNcj& zouFDpXx}3+)eg*iBFqSmE~U0(d@x2$x9=>l(oDaVviO7MUv004zgi3x>IGi)g{$g9? z@m#)P+5?U$tM$~{Hi#&|o~fRVvUG-Jd@s&2t5h`|`z}WF_0P$EzqVv?XO(_kf6s~X zXQ#&Wy>qz1^CPjvT{l|oSDv|L^~&*Uxi~A4ZCd`Zr}#GGrGPZ!#+nD=1ICxMjn-T z^@32FMBGD<1wo9;x7bLJ$FiuzygI~T00NxZ1>EP_$-4Vqg ztr=(+MzQ;8XTDe*Nus^pP8LUd5eZb}?Xvr=z7tOA))Uoj9gPckVw~-wc8wK&=(w{j zeVxLmECITq>-_-|sekz&!zV+`*Cs?*0t{qH4CyA5)xWT`#U0C&ndN!Vf$K@v+(me6 zIxu_NMd6$QL1z|k``~ zWof%Y%I|L@+9K^Fbvd+FOM2LC3VNE_pLn=xYscmf=sGFW+{HQ#H9ihdK!A^B z+HndffKt*2%zFP^vM`#g0kanr#??_*Y z=FctUnK$OJM{iOD2f1H3D~o4+QC$K6eR_Jf)P)sdV-_)qI`e%L+*td4T>){bXBQ^- zFfQ$*GigO{kmBB;X`>bekM;ex3`lX2)YWTItGM)A_L@o!#K76J(lS>U0|n^>`+6fF`IKjapbm6@F1HV4mxCDJ0ZjkjY6?XB_&m80LQbSs*Lyn55x&0WtrJ zvK+3z*N_@TQTSc%14krVG4+B~2NbOXqv@CtDb})Y~{l5;eSEv~`Cw!>$1U7hWLJXfkt7D?$;kNmH&wL4< z<>4wAHEMwBW4P+^e1@8@lIwEh1i&FG3huS`=pu!?drJ|jjnC?;-YRnO^xv2e@>)r_ z^RT6U@6-i6e(@OyZF^Mr!3xDQHpQ6Vl0OpDql32@Vcmf>?a=qvw5er@HWmgV9=M}3 zcee>2A-oTxve+R^w$`4={RrnJ^1jv7YsD}gj{M#9P{;2L^HD>_+h%qB;V)j_TFi=z zO^*qe^HMj;tKdgVyDCU8JUmY?ld!(J8zMcgi!@Oe#a6}+@_RhnS>CxRW>&7ql?8(=)?~so|VbKE-MuD-X$EPsuPh8G27BX zR}{+yD_cwUAq`Gr_}$G+JgBcvw>%>-P-uD_XRrd_z{DKsW&MUSOO=+P=F}6@ ztv(zn*AZvDY^zWq$Otb`$&e$tau4B0BJ7jQ+<$C=|II7-y(GJYl|WQMGyJGeVv#Au zc;C}W^!=2F&lE7#ok!&<9b%v+1{&aiM*PXD*+`b|TWr}3GA*B&tV6MeWWGhH`JT^8 z;Mbn%HY{3)mn@nO80APt zvOAfgI(Wg*-@GQ~JMpw^!?TV>*pL9NzLt&i*LGz-Y(TElFxp2KLl&zAl@I<{*0$(5WJA<;BIdP zVCz@&rtH#F4COqOtQ=TLRyNE?GZm1uXo;dFQ}##=wqnS-!+8^pF}-uDc|X!dJa()6 zo2$|fdRpyYoqWzO`s%UwKdm-c{s}~|96+1s3HDE>|1ju0vl-jn)Js=$2LJ2kK_7b5 zptPgwVb2Q7X;@|*YY8M#Q?%Nw4Hfq&KBj{g28v7ginDkXUE^@rV8C^*si5Dz znEh^iaMq|J!Vcjqh}GL1tDp+U?4kJh;_i2EP<;Vhy1p}!e(!qrDmUMbvF*yma4ZqI zqYuzgb>FiilsIcxdOKV4$F67{iqQ8jPSV}M=)M{w9=jz0+My9Z*c5bnD?7sDj@?Zl z4Lhf`sX0?9>3n&uxE8qI_zGzBikV(sFZkPYz9I`~#!8PXF#I7{VrIVr;g>ZZa`Z0} zm7Q@_!jUk`>pet(;l4W-PHn`Em87%tS*wO^5wjOF0NnX4g!f1`Myw!YPIjCUPOvgh zd;3u#ytb;s?_|66ax9C`uT@>T$(XM(y^42Wnx5oT%q>={&^EWY>72b{HsUd`>y(-f zQl5?W?Q_M!7n)cyU(M0EBquSj$R*@i%Jp~#7k5mZLF4{NCF!86_n!6hrwNkwBsOng z02`n4mD^>jS?1S(v!eRn<8_*kaDuq2bkQ z)YjcwlK=VR>*g!Jf@edrRY;QfTo`fzq<(5Bg5REVK2X>e@b8i%A)}XK=7U-2nM(y| z!_84|BndoSyEJ;cs;CGq)Q-gLiWY$+94JA?8bd`v-&z|N3!e)8*(RekTR9nqH%5L& zKtZ*Cos!7Y8*O?r5#o0C%-pBHC`P_c%i11h>_jiS?Jt{d1{l0xhRYc3h6UN%vZBT% zUdc|ytP1D7j0M_nqxd&(9xP=Xnz~wuOmhuCJAV%;Aperfb*PcMeNoC}q->3I(bGZB z-i+s?n6NQ6eB0Bqizslg zakT#enMVk`jc1D=nS#od3RkCqn3SAwv2mX9jVpGx-M|p%1UchvP2O5NB-YbEiR*E1 z!^l@cgAB!)5abU*BwKFqEV7Bbt)aas&s6;yLlI>1xd5eiwR4%p%b}ZsT+7D3^_z{W ztvw;tpYIIM0$ZKY%N?E6j0P^(GV|F8;0jMhFJ6%$s;dB8P81;FC8ZM+iT3$_t{2fVn z&CNs{uWvYjwq8kYznB-l)63Mhu_!d|mpr%vgk2pM&WogO!|`ldE8zls*9a~MGi-Vm zWyE@({%{|nh<)Q-*Bf9>YiXMt68{_@&qaF?QjLd`V$N6h@)4<$QB8syBW9{AjgOCl ziIk~3;4ACpnN9-j=i0%A2t1hQmYt1Sg_ESwnt_E+@9DoKu$|q}Zr)Fxn8Z#`Z?jfu zL=pS{+Eb4=@EmZ#KB-U7T9K27oo) z>$`hjy>?cyxqJDNmEs&;BiPmF4?H%_e16;X+GQ4ge}x(7Q{YMsvY8Mp_*VI{tCZlB zN3kt9e?W0|e2GV_`HD>Zs0?=Mfb)U9v|q&6XioErXH0jV2;h3+&miy~@ezB|`-yJ! zX6)qJ^o3=>p{m4!D^X;KQ8i{7zg24gHZ8FgbBtk@%~!%HCKWlKci3XLXYX==KUyrF zl?@%DeM!^^cH^!^9o$cD2>_95=0ASLMit+tX}6`4%BM7?zlB(9XzN<%Mw`5&BkH$t z3}@5-z3jd_%PRK9YD#MYpnSF%O2||F>T~&P$K*(u0}sEJ*cZ)WE&BC*3;SSFfC#GS ze(9TDXb1cRJFJYoC_$obdnDHg1MJx&Gb4m2lCs>jX}+SF2m^+ZC|Ot&lO3nu7VBU1 zzhktoI%_mA5EfZ*#M|TFh=^(aXm)B7EWt#ux%AQd<=JP=Qx>}9c*PM|d&5P@2Cm5ychoQE%mr5*Z_HPLpR&H*cy(~FLOBu+I-DfAZ;)>d>6wA-DQlN-e20Dw{3TcR%=4?m)U2gP>=n( zT;j1~3*v!DR{C{sW<%_HV}>}I+2X}JU7jIbu1yL>m3@t>4Q#7)z?dk-1we1>KtO_U zwI98NDk&p&XURe}6a_Yd&90WcoM@AX&6=Bk;26b}6lDvtbXm;YsgUcC2h)jpikiJ6 zwBtU1&B`e#CV^dOERFRgz~BN+OYf^r48#aBgVu0s;3xE&gA`qqB+YQDwfsdAh}N~cA>!QYUxd3l;)&T*T=*&p zwbhzgYvhx4YZ$v9)j_-p4Rmu0ZERb|T3YkWfn2NGySF!@%Q3Xf?6mHhy$x zvf|DWSrI||sZ1{OvUjpLI)3`&GyNlu#?BsspkJ?L-93QoH6y+3tbZXTpDn@n!URTp z2C9Tq>Bra~h3DADPAPM$JqSnBllbpOzIWtOvbzgB2<-l_EZ-+gV|%pPRiThsZ#@0R zfYOp>=8kgK22WMbOu?I}r+U8By&j+#-=PE%@l2I-}%y81q7A)$} zLq47odVa@ECa>yZLdw;CO<>R5(JM~{eEuK#Ncdd$FTlAnd=jReHpN+%J-*`Ti;B7x zN)S8sm{GnN`RGm=Z6>@zYMOh5z65hBFoN_RmvEdU1kjMjLT-dcI@hAe76S!fV~Hl@ zTBd?#dl~p&052hImclI%B=v41+R>efp$cc5#@)R6c0X!jg6ns~u7+|ho(|8? zn?&bBKUhWoVstyo{&Z#fc4P5bFxQX|j6pjl?;S))o77ch?@@rZ+o1wpvyJ{Of1y6> z)FY@1cjd7=?$4U&S76Tb^7hZ4Tlbf*`Hv6nCC%(08wdwQ1q@Eg_ik;HZf^Kn*0G$W zndESdA+Q2V%39IN^^);+>-S&O&3S=mFQ*c1z4^(txv@#57w{)Xh{8IH3Iq{y5~V#> z8O;&cODE6%dQ?fbD6*WsW7A_cu+_H7=G{B_T4I)Z@V!bdG1C&f!otO&B!E4@Q5tdg z=n*Mhl_As&A7>4bnn6;Q+I+fF0Dx>+vu`&}TGK*j+7o?iN4U8Y!bNa*cXP2Pm3cGw zfWZ6k2y9MucsCior+edYiADggC2*&Ks^IAS$aVuT{5P}Y1{uD}`leTY8XbRpcYxNK zXE4F^VDMGt&tSh78G&cL50#kudB0q(SY)`jGi4tm@F+(CW{+BzN1RDUoC8?Y}7CrX#bscCI+s_bk26&N5eNn9>G;J_FHRyEL3* z6jbcs&YbleAm)yio}x()1{05Jie-0;no8Ho zTXXhsb1LNCU(M8M0Dm?Oj-B~aFS+`{DCz97amFtkCptiEz|U$merXN1uJ|*5(cOf~sLM-rs?ZO) zm{92w2CB2!L<_mzN#Z7DUP2K-WGX|0qxH{d{l-Cd6osVN@V2b|sJ0thVw%;U_a?qZ zgqcE$`?y7lc_62uA|O+F3f{6&!%?fV&{!^w6#4COfkZf$eW??X4g2-RThz8sjydDb z3443b_X6dwAm(4y?~C0(clo65r2%}(x&%9E3qjl!Gg8v=Gqv z%un`&g`{IeGYgwQJQO`Uei(JXEfb^{6Y;T#&;bX5$7;#%{JhpT{HdNVZVONd`{rhh zoPWoj>)CbBRnqOF5J=3K*?+XOE?cdc(+m493LDVM$6fx+NJITScA$$T7m}9cwnm7a z_qNaZipyqB66caz9r>d13FoPtJ&2zAO&C!Rf338$p#PkJ2gSp_-+LJHdW$Hf+-6%LrE#1|>->^%bq1 zaM&n(O;_s}IJ3l0u=CuKCiQb(lJk&&D6!zk@!G{;ut2lF^}57%JuJ~)+io6^aQ@<= z{GxpCCb{=;!i7Ty7$|oxkG#qM^~=~-P&8bVz7TVeTp!-II`DA$2z^z5`6`uMQ*P#r zyK1hRG9`5#El+e(Zxj`JR1X3!nzWVq=O6lgOH>z|%eYEs|8XNcFph@ZWL*n7lL{1jpVcEPKx_2NB;PbHB`bW3TYQa3l1C+Lm`TfIt zp)RuE1zv8i-^y&5yOadKjUKO3*WM6)N*c&`E9l@Yn0tzGAw6Gnd)D6XOhwws^%cK-*ZA}=|jG1g&$0v@M+1` z7c<&d{Wa>s+a*)gM%g(u&o#Qo+H@fgT~;m*N%KmQdtcXHgD1dJ$X( z39=*k-o_E)5f9kB`-Tt~pZBg}?Go=EpZJ>F1ytaj-Ei#UgEZ><9XEzJkGwLB){yNj ztsBHG z-r(vdwYr!r#F|2T^Pl0oA2|9Cu2rr*q9fwA6PD*c-+!43efNRT0@iouxAq z_FU~Jus3EVhLGq7_U7B=zUC@N)D=^q_H%aj${7EFpfxZ6xroK`k&D4 zi#=D<%O$d3PF-fI0|4k>7z7AZnVwe@$j5K#3QJwTdE_+7h7s#uSfwQ=B@+?CV!5q8 zd2wn`(6wl8ijB4<((33-A*UT}en$=<>Qh(vtc+U=IBd*tAPpkop~D`EbTun-!mA;S zttqBTmiAqTlyhjvW;y@dPo!A*jFT1!s|7fRP2=-M&-nC$fZ0SJVG_`iMf2j@cXT#l zJl$D2i33TxDVxohFLQBLdxZuTUb6fP{o2F$KL>wlF15fw0_YjlDN53PKiDSvTTc3N z2~hyt9pokCX5Qf1MtLfjmRr%F%Capn-mS+jInqDE?{Gl3dXKBI428(4F2AmtyYE@q zifyW)zJuB$>P;%I{?`YC&&kuY#dC)0Gv+~FIgGx6m$78twK{NYO_(@}oecXIE6DQ# z;e^+`Nv32afn@G$pGPybn=I43jEtQ}?7jzA!cG>e??j7#XkSOtLdq#}4CmroTSIK2 zCz@=;rrH4zWj&hU!C?kig&v%Vo(Jwxo=PNHSpe{n=fYL!$K9o=uG_M?xGE*C+GB)(wlW?r6A%8l*!#aY&%i&ejK&zCue7qH+5Yxp!t z^iTc*x6l6-kiaiSTU_24vCsub0)`O)vLNmyeb{(8+SLefF+ThvJtCHVG>Mz{QL4h8 zicsWRpYP+OgY->yOR&pXLwau#w9Mmi17GEUiGcQc$A_@sB`0))ZwJ+OS=I{ zboKROxmV~Av+Tx?G0s+HK zDY#sf?axkoq>iTsP>E1!P{IvzJ$2TGwASX3|Gz04MDPTX&(;@S`Yw))sU79Tro$ET z$aH1&Y!VZJoy;&q7vj#(_qJg(n-oHril>j439e_GzP1^|o~)ymS!6^yG@_W94^QJU zEA__FcwM|w$I#s5m$<6dbi?MbXm3apjLZ;WsOwK_pJy7HM73uE%HAb63~ju?LDiGy zrS0<2PFV64xZjqcT#nxR-s?zx%G(71*Res>IijSxfHH-u?R`BHulIOlZ)}<`y?1w3BT6Jg8yXsZjeP^kqO%20^a&zrLKmqllpS zS04S3Q1s$X(yGI8=uGmbrEwjT-v15j7>1);s$1^K=SQcchAj~KyO1)#l02g5=UopW%M0&>TwP(#0 zg|kyFAH<>@mz#A2w(QRj=K`8ZK4VvRl=q!A11f8^TANcmfz{-&;1RrC))epxMmpAW`Ieh%0!C2vc+ zjlQ{GY_sx4WByc?)*m=4?Qd3Kjz(q>*5`u`|4!jEbdSb5+pNqtegN~zs7I0Txt(Z? zBNLrkQ7(n4{+?#n2kFVoW(eiy=^hDi__WR^23K@dYy_`PgO zbD+RO*PTw+0#eq7StGpxuMm~=VUb07Eudkd3f7rl)+vU;;<=nj?N~%$R2CVD1Iwe7 zI+j1v))C0HdQ{65yHqk%Hf5>-;4<{+qE5W3+pi?Q(unKN-)LCVo9=S~ne2kA;$%#N z5GsQ^<~hW$d&OLx{ie*mj?PpO!r)D5HKbf0X9u8Mqi5{{qOzg;$mF*k5Yy ztodcnQ7zfvfipj#jBpiNEtkDnf#1($J}Qqw?>p*F-8vj2`XDpOmbJ-j9E^|@?}+2# z^kx%c`>hLwG_OB;Wl9p+>TAi;bN^4v8Ep3F*Y`*-D{ug^SIzlN51$eJl2 zT0=xerA2eoCQLEs0TePIza^2Z%zDz&O1AjHPIz5Rl~lv?#hg8j#o~EfX1V9xHm#*F z!dZiLAPb{tWT^8M3yOOO(0hFj63#jvIw>A_Kk^hP!Y^(+Ya2$k4;Vin9o@Y) zT?l^-^Qc~=ulsRs*#8N9u+$Nl^!Wz71bU9sZm{QCiC;n-B=YPLh%+Ih@Jd{1=?cO4 z5NUC~$H7f`f*0DBl&f)$Q{_yijmim4`Ym!deGu|K)%aR3Xho3DaqZ$j*NgKAYN=|0 z8TgAAA3@#PcW!(Dqje!@F_}u}{1!IEdgVG#UNYVWJ(a7m#!nDE! z>P}+DC&cy}yoauF3f~2s)Z$d1m*V6yQZ4#6{SR!uu$vz(^}nXPs#e{=L_;? zc~Ki!An&ce17IzZ0uPAqMf9vhJ21dI32cJ~)V|XVC`w+fsDH)sbA`bn zG>=MMIpQ+nM~&VJK`hU`Ax^-5#>2ECn8ujqSrZsMu-QUL8~Z9%+ckRVb;`e%YwbDq zVfA!*+VD#DE4GE$FSzq|@4B21I6WI5Bbx%i_!rIcQ%AeMd)j_PdE!Fhae2LeWT_nq zR6-2eqY(+c?93d4DecY^weS7Z@Q3*nTYM$rum3&|Rd;XyX9JsI5g7l-y1%$!on&e@O!kbFWb3$P8wlsM`&tw*7fbQtq0HlK{*a8imll96N zeMHFXsu&hWlSl@KY9r#`isR>sm+`lW7W_AvtuP^6KWjugis2b>FVwX|Zpw>LKK>Mh zqX{V+YWAe`Tm^BGX5;ktRyI(U`5=B|adG}yFok>@#-&W7GojQ%;u5|j(VKqa)^#xU z*RA*W1;0OAuKsEgXIWQZei2&O)N-T1$r(f;EVCR_q&*>V)i%S8&q!G77XT0BH)@8~ zL>toelUK8jAw#5my*8vN7QIl(r#4#Gz41Trh*$edew{_m+;J7I~=0p z$g&}gSpx8AoXp4yO0g85_U6Kob-M_-e!DCt(I}@$6Je;~pcD$&Q0Omv8!^AU?&DQ3 zQ^p{_%6?%_jC|#UP4!9qFKG`-eR=09^G{@x{+s5{DlfsZ+0O)_)-=D#Xgs9)f*jPr zpOuSjk;x;H-{N2qn$KX2!dNm6Oj-I(izbT@agsT5P+cHlB0qi4_HRnK-i?!|ClACX z4Gf>yGc#pBd~Sg!isd>?Lq+`Qd?Sq++<4rLM^JnLWYEwiV_IO2T9F)RwZMh;8K+S=LGkFn=+jePSw)a7;tU=b-su9N}=vM*#!BFBLt z)zGo>90HUr2YD^obuM!YOaL`aDb=()!B^sbD0>e4_AluPe10_&&o7?*DQTd2u<0e3 zVUz>gBEBKN!Szl}=9jB*jlxy8v@wTD8N(vhX?`u9&>@0u&wVaB3eW)GC7aqjC%IF6nk{~uT1 z7#(TXtR0&Z+qP{^Y)tHl?POxxwrz7_+qNf}n3MjJXP)=G=X|Ty>ih0q{ipV>U3C?9 zm35*qo0_M#@z;LteX|JbNHauZ&T_oa_G|+NEW-)b>bgALEg~T^ z)BT_lGavI7p*XyB^w9Ek>goYRhIy&Cw>|93pwror>baK`>^3Tm>QfzPa-U0Bj#ATm zf`8BH|AHntJ|9l9JfKE5AA?$&#|UPjOc&F)0=YmlbDacXkw~Gc=%^G~5Oe^Q?UgSS z{TuA`?Dx^Mf~+mZ6(W?Xt9+xVCcdBMeqgC>gC^Q$Ht^7QRPwvp3ipO`C^Ui#*vy1s zChiHNMKNaV1M65suc<7XUSu{bK?Lx`3sX)?--Zayp(f$R`8GHMy_N>R^>UdfIjd8a zxxo7$XKXgT-N}&)v{0h&Q=p`qvYao%4^@crETU{-Glw<^4KS#jhv*w16>T6#qe!cg znLo!!`V4CQaUHAs4BaQ~{4bqM;M4vN*zI|nen$i_k$cHdJ9~T~cM3lSdRxkgj)ktB zCx?p=p!buJfjOrX--&>yETz8$72awSP)?iEsQkfB%UIu01tDPBqnmad7?nz?o4(+w z%O;-V9s>2Ynf3cEAZqXa`<_a7rc*Yx^5ZuMU1SmopR2l?66WF)1Xlx8jd=?Zgt8Sy zjBX{c!T1#Wqh4*xYwwA7``a+AtE07E*cM-|@8^5(85-D-!;*!(T;ihyQ_&kWUVFAL zuOzld$$r{)9&$E8pu`nxj#c-6}FcsP65}Q!rL-u($ z>C--ig?Y>O7%3;%sHFtKUAY(x%H?WfYiOO#nZZ21`CzJ#Xn|+3)rxcTS2LKl?yjbA zlFC4zVk6VghCoJK*$cNo(8jHS?K!A9uruJs+1E)J-PU%Z((NO#z>_61*e$YY+roam z2@8&|=A59?SMTd=gjf<-M(d`JT~MZJ-R5YHmNL^qd+KVRZm}_~sp!aZFY&QAOTItI zFa~W!D9S0lnp1CZkeh+s_?+18Q~7y${xgdIsd+yJ#_oNxevNYv@E@tTw24ZgX~kgZ zF~jsmp8Ju_Xc8trXNuuTVK?(SHU^Oz7xYc3GAI%`b{S-V)DnHiZD-n)cey;}>z>GZ zT`Oy7x5LpP>hj3B=05A}tFX~?Wx6TSyTxn2QdE&;pQpO`mU;3Oa{<&s#nSFegm@eY z!F{Z!WYEuVwI%4QT_%J>^Fp`#3LsQWlm+RzwRY>~^;Qfb*;s2p0_qG_nj~{>4(D3^ zPGd~JqDY#$UsxD>q6*+jvRxT@Ox1UEEk;WuJhZ2T`6&E1j*pI-UWP&bVep?q(NBB& z(R3=t+3=HXy#hc=L|xbwH%;~A!8l5nUZ*+n**Rr#@EmYvoFzo%$(&~HN1?L>@m z@|MaSHm?=os;3Nh)~Gx78Toyp(44VEG^2g0{KM;kSS+71Hg{3hHWPQ*8ul?$4AGuK zdy3-H1Yc&YHh|safp0jI^=*DwkKwK@AD-qi%J@6`#020$)E@PIIn^})6v0tfw|d{t ze`oEN|Fd|gjo$hqDrcKsc2?xJ=o;HJ%I`NS8m%(hWVpH?z8>0RKaZt;!hH1g(@bEv z*G8H<+t&XW9h3RDAp(gS;ClYEmZN9*k@)ZV1-O3{a%c9SYmv_MkGXI`Dj$86A2l*7OAf(hLd>S9|0 zA$}H7_WZGNf4E$RN~t~xKdq0{>8!>}SZ+{{n^JHzV?;3(e7nnQqv8q{ErhV6U(UyM zdYypf)s=lb5-f_pg&gao3y(ig)xiR(?5C5BK_MO)7-yjA#l83Qo-dka9m;CQ3KCn< zxyihGwX92tygK?oRdf_dmfVQs7Tz&crZF4TZRo7W@h@81rTOTZd5rwg@#3RqMd0Q? zH>Uw4ALA0be;UIQ`u6>KWg~x|BJuR2zP~$&yGtTL%)$9$xzkuqiRz6bwj8cL9rTqn zf_Ycy&A{@9pAKsmKOgrn5vkfDSHARM^wjF<9)wt9B1LTkG2{XqV7kohEFVP?$_>$( z?8RY&=+`@_R<=l~L16Ii=y~7wwdCJJKS_VnLp3^qeyd0~#V;J5#f%s~o&dd&!_Ma%aW>@TPE5|YQ0SIa4$s7;$5DEVM?`<9 zMZvi#lBTy#wwYpdTKO0X`gc!1%N#zk-j`9lpUU~xbmz01I_$E5Jiyz^CD0W@e zW(w0#%F_}3H8WCQ4Mq3yMHry&?;n;mRP1p2?3Q$kS~n-39Vzzpj@ks<+B98Hf- z?dyhr>k6X2BfBqa=KKcF+rd&4f1(+-II8j$Duv7<27X_QWABEHQ5$mSofs9{p0C&> z**FPhD|MUjY60KTVHfYPi(D{HH`S0>Fq2ICgefa}4+z+Vh5+;ce`DP`Rh>l>Jk7*u zE}n&kmdoFo!oS-3Kk4<4At4`?z;&lO6W=5yQ(x zxRL4OyMgyWQdsGVi-xdwP)A69rZ1Ff%m(yQns2m61-0xqR?w2Iy?*Od-S}>g6iglVf_|~3!CRY5rBsy6izQ+v6-Ui+2rNH*u3!f zNt7y1^zW0rUcj0cr*CFMe%e{=xe!lVonbXQdEbAMY+0XO5&mlIPp=Sg|8bidbt~v@ zTG=yNOzxLNB^Y_N()0W(p1|G8OKv0rOs{kx7%<~BzK&wN4rA)}3y?cAT}dN>`9RW~ zq(CZ4^81F1@IxA`{CDvkC>BWrg?$Gox6Q%W3p9P9RfLLN&9BOgQRmUU2Z`!CSB2zI z29Z2nZusJ3!~!?0C83Z=*8KaUsLDx3Fhq}Rxl5bWY<(-5$KL?DGDmj8&4sZ%GC>|* zOK`rfA~u3S6A%LF5GM`Cs%yNRDe_Ud!`fB-$wt4txTs~f`DW$qGiOfiDMhfG6|sfk zAeKz11!pUKbpEF*>(dQJj8p@3eHP;ZGVXE!e|-L2ZTStTtbyt@EscrV)?hRG3z7R- zvNj@6fJ){-yl&hDrG_ERxXG>JB7VhlW*e(Nku zQ_zN|4;s(J^IW=p5YY*rX*U40n;slCK~DCJPgHv>;T)Fg{o!;b-6dQ(Au|XlBdUQEad~}`1TPw6aoeaXlc?t zkr~zkVPQfa|FM;1zJR-PO;Eg`_Ue^)>d6?7|Ygd_4*gZQ4iAN)QRm zqEJH^hWtdED^0`k0DM_^3C+kYb!IG&xAgW~1bLHbWJ1on`B>dyT+A*amiOVgKDO+p zek-~_e{2#86YU~qUt@0$d;b@d)Nel(+oG43&jt3m3nmaMQOhx=GTz64Q*{|A zJPt+Ac5HtZ8xZ6|C~EnFFrA=5_!z&O{!l9zC=b}AyozwMvT4sp;(55zL?yhZiLqZ zZeMax<>iTjP~-i>XBdKnk(mLgFJz}NsCjz%+9P0C@seK)MdN^=L2xJFe6Nem)?Ul$ z^_({~*V5W1QraG?&MwB*UC5kDGYkKusYHFc@7nn<mRV7MHa`9pv!FG246flM2VrPTAutMGg&RSxJ_ zq|1-#7F}nBz!wpJ&@3x^wt)nv9P<3 z!5MF`E$_2Akk}4Ci*+9Ct)gr7W56I`lKKwT3q)qK6iWnc+e_Hj&BY2%aMoGCj_exs zK*R*)j>K*l26SJz60FaN5#4qpZ=?QmUT)4J9d?Ac82~(<+8) zTXj7m0bdZklVos=xFoMiC?@tXMsK@}Ad00v2~5u;U6DaTs#w{1VO-lH&u=xQ;6^Ji zhHbGACI8auKT+7C-;bzjz?(|}kwKgjwgW{=Nj%Kx4$*OEM!M`6s@&4jg*+o|n2+8c zDu)VE#bjq@;x?phrr$4^1;_%BIJ&&M{(m$NIs{1Tc2%4d5suqc-Uw$_7|>Es9Y7|d z7cwt-@pqUq3PYJVOov0u6tbmv$xNA7st+&bCl;f%-6u3bWIVO*h8WD0KVvE;%omkH zG(_>lBdX0s^3R|mmIRZKz%a6+PFj6IYvO91si~r3H?{>vE|WClUL&9&?fq#?VR1q> zWNhk0;ki8^$81ZkO7?3QBx|gijR}YwvCnkR6xJRas}k9=*JV9qVnSBI+}{99A4eoq zILAQ{Y|&AVhrC~3X_Ns!x)6EIjF$8Af-#0eY*%a59it1k)ObU%bh><0o)$@!X!Pac z9~tYD)0mIkxO#xq}>XPN4RDF^1`3puvR28=R=61aZb`cj*fE;>y*n2n}|C zQe!Y^DZem5-^fFvkaA%8k+`X9GTC=<*NO(XK>OyUDdfTRePw-$OA9XxM=`jk6wAi) z>@E0S;=F3YxSE#8Ie~7J2^A_R?6_bgWheb=ikb-@CL~@*M5D8C2gkdd8p2N6z&3(% zL8za?X;?rHfx%)fYC;sDqY5#z9x)Y9930r28o(Fm7=z($kgv~NT}EYrlb+oj^nWyi zWrf7)TTAws^uHQUVC+ZFjgP5_hD(it0e$56B@|Pr!6=l3{%&I`x=GJAAGoJVJUgP%1+wO7(k>iiq2O7HE+6_H?VjDOHY<3lPa z{E+Rckpvh!=+~(GP<4}6_zse9RvD|(OG}4_<+!$;aAl3sp75Y?<9(dj2KX#P{}F`$ z`&@~||NcIW+PPJdK3h`(#Dtpo(bwC4oH2HZ7R=NvD%B;otVO+93oq}5JZ^8S780hR z4il@FSdj-#4+@ewh)`SxW)xX6azA&9KYDHCFbYtX->^2zLpBr1>5r)tW}zrcaN8D0 zdst6X6bv3MEZRiv4%;(C4OTfcdpl`Ax2aKCtD-E9I!9#P_-zvEn<+^F_D2m$5tBaV z&jkjVW8FN=-^bai$?p*{fL<*|J?If=T>sROR^uOtd`T!dDBWle9Qh;Y zQO=^l%)~Y8kou25E%Hbw!M2n$tnLwg8g-cC_-^iw+hTz&FZYK*-!wZ06h_ZqbtOyz zKFBBkpU20`a?5ScEdc)jQ27+Oso1p6X0OUj!T9~WLrESyrkk`7Y|agR;Ck#rj?!D+ zzRT(GtsIQXdct&89yw>AL3l7W7OjE*m)>F>xl*7-ZW?bvY7wh=+C($Nmu8R$)>bnd zi_2knv8@7d5h7NluNHnIMj0m04lE@Wd1unx5Z{Zp3}pNx=J>-#;#O|9n-^P@ zsl*92oX`XgE&Ca)h)Xn~d(tqtN(CY~cNAL$>{}v~!hWJPoWy@&j?bq3vB1Op^Y*_4 z0J`?sO*6`QdtAdW4#z?{Q^_q2j}4qcZ~^JF!~9Tvw84dE-iNYS%R+);=;TAa>4SCH z&mRL`{9#h;yJBW&_)9ogj=~A}gL^|&Axg-Zn$4q7oxu)lNf1SHfV4@m@5o@<^AQ!T z2@D=JtvK>Raf?0otC@94EQ6*LAmt-+9-C#2O^!3p!;Rb|@SoiyrGITf+ElQZ^s)b53@CiDgAn!vFnmkQ4FXH#bZ$iIay{=rpv#(OjTLSs)AD#j<9~s z1yB>OQN@^<<}~}x``QgQ1`(Ero(CZGxx$CGdDn1Qmr*2A>3+lRl4__pmO(q=6r85} z$qgv`5ZIjmq8ae`&`M~G@n8d77lF(Mx# z0)tmb#6hWz3$yAZ|ItKpornv=R~;%Z{uU0-i%?tCjk?p`Ps*v#unb4L@W7|pSHpr| zX0+!3XY|9_t8~oKEcBes1;JgAh*(9?Svt(FR-#dPd3rq$M3s4AjC|3NVDchv^&#%e!VC2=qum`+LZ-3m``^8yuh;8}rJu}HAQcxN zzCiRg?c3khoV6HIhe7(0|F*y16Y6-PlgE`MZH{>!Ejl2Kigd&?9&tJKB3k@1c6{_uxOmclq(?F7gl~-mVQz%(q}^}SuB4MgG7@cqmO)4NGx%7QU) zZB=GxfRbyiQnFxwFVvS^!`hwIWiW|GCc?)Ax-ju#tnEESB3h+T@rO7X(`una4%m^$ znULkPhwd<$i?*+VDU6E9&BS?=`9sco@pJGVz29OoQ~qDTKIF?8!xYyJdO z+p73yZv;_`&jdR25;R!=6lR&M^N-(c*Z#uH{<_lb=NuX@sQ2kc3>zU+v^HbQjdkUF zpw5IElzRmab+`rvCS5`*K}xXWk*OeHD3dCGI9X2OMG<0-of@F9GYz8)_2LyiopRux z)pKL)_&vrO7U~17pg--9$V`*!s_u*I6*ItI+yaq50@g#$Kw>PBuX`D~H6rOmk^HhV zH@Gv+oV%bLy09Qo;PGDxeg&_V8IkvkvJUW*LnGF!88(4~ygs3#Ol4v2P)AF_Q7AL- z9L#>Ij_CDgy&TZ%v1|LRDW9{q5=1p_fa?c`pG3dz_BQ21`|&ar@=>hB2Yf}x_B~4- zq58}*!=O}8(Jh@a>UQIqu;W1j?Sy8q72BBga-^=aV!n+mt2fL`=2x6w&ElK@z8-cBPJEkJC2>eOKk4@V(a~e;YRY@g+LNHWdE3=H{ z)%I|wBA+hHGK8Xa-O@oH9IL@$lHJiTJ1bXl7$v*~a{s)6rB);b85UI2c9qUX^%d$Q z{^e9UNH;0`#60Z6+wFnNw~{Hq5W=UL%!zS+&#+SM`D9GFM&VO7g%-t?PT#hRHkjUT z)pGz^IKJz~o;;#YxIGv9)0F1QputW-jmS$@vqV$aK5=b-Qm8_4kFaqfdCu7E^ zK92>T_cB*C(#e2Qk=iU*h6uN})9ros8`|wmFQguT-HD2_EACm-!3D;Q+)N18{LKv# z9_5O9tA}0-XZsRLF3}*DUE?IiIu%+$mlp${wIV77<>CcvRR)9e+@KJuKlP2*!|@1f`9svC)9txmbP5Yq}a9YPfD_dI34=i@8dv z2-$H(x)qV46a#0%tp;ud3NgslV4@`-(6p){*vtr4@YPv{7$PHlckHm?t2KT2`u7@c z94Fy}-axU@T6lxqr;=C<3JHC&``*enqxFwe{TO?*tl(0X7y|syFWruE*z^NXni^#* z2?M>T((-z)IA0np$cu}{-_-n$H9U?b7g*&JNRZkL$FzJ$+~UJex? z7`U9&;nAl96w#IFSSfjrH)qqTcSjatu^ex*JCRZ~Am~;s77Pn#Qj5sN;gR5}Ou?f; z=;g*lYny8LL}9%Yst}SUNm8;nINZ&>;PJ=B5ZcQfN@3rPjedWlISt5`7H$?V>?tj6nM&aG|;bbP#al95FrsR=CuTXyw*zYsZe_ZZz6>L|Soc+}B+CqWl?sQ6krMj3 zN46get`;)(bl4B(=er=m94PYXpl@=NvhCG6jbo~8HF zz2}hNi9eZ6QuzE7{l)or1+oAto(u1P!z9}wZ#iFm!` zE{h`?L-5X)`BMj@2u6rZWO&>ijtW+%@mAdF2l z8@z3D5TF4V@e#zbDvI_(EX714IOJn&E|H~~HiJm+1A}pb$)$?-x}4++^1HjV zmd8BRSkt)SvIO}eS2wI5{a(}fu@xnn;F6G9^^NMxRVE1!+KzNl5a0K|*!VLBTKD4^ zFoOTN!9>ERHMfBGLqO!@SRTHOGL#uwV#XWo!_w+F5p&8*;g3WGxcfuK5JGclwZJqS zC6ZF!l~m$ta%@TXod=fO+B4PDb5ciN)%~xWUyKvRBspAVIeiPl0)`RHeeIU**QGPB zX9{Z!fz_!`t*qt<^FB(F@>2!!T%ntwB@tS8q`vqs&&<#Gp#Ujw#&EJ*WP)u)y)lvZ zV=AUW2RPH=EV?KdIR+3x;b@;58w77^fYGMZGC^?mmuj=(>W zBuQhfoxBI*>RWt4TX$kJ4ezF7ED`PbFMJ0jI#$DMhg#-jE8`X{yh{G zy;Y0Z&l1(0RP3aPY?m*pb+u)<)`&lEhKfqgkKn7*@~-GE1wtt0FgbW(|?3`}lnW@sp{9t4hNp#L%yYSn;q{huCH! z;#Obtz5$*_gxb@-nv(8H9q9BDqOPj)7Juc>?MMYTF~)ecN^73g@1wT_mmzCg<6Z~4 zI9skLE!Kvl61w3?Hjzl%n}Ew>Z%zPTBcd1Cxz2WSn&eWF-6<_-ZFF6D8mm)OjM-hQwgM_Z-IoAUP4$66Yt?fDbh@Vi;y?e5&U|=Bc!i&^L?PrOQd4vb;6DJs zNsjXS0%=6hWfcTLwJ{e&Y_=W&F#!*N8z6#uXg}BNV}%WzwIQnjJ>a9Jr5n^MOG=f4 z`fYGsN57Yd!Kj{AZvX?f0am*U6N z$*^3^2qsn*;2OV(nq2P*9Z0GqK{BAA##*vpENW6iK%|Mv;(rU20I3EQj~a*yE9{rj zi+xtTnV75O-|g7w>oX#U4tT=6wO4p#0%;&6%&?d8%OkB>3nGDI3{KmLy8fi0bdr4KYIS&9x!6+#$>q{NHNq)93$7fS<>JNXlk~!1YE?-{0C?vZ4jQ zFuv3-ISx_|)e2XZQ%M|s#Y#m@!;mf=#%0gvojCY{xt2+;N(suL**rLGh={Km83(0J zXmAbF;@W2X5GV(YP+q|$Yr&IG4^Nr8Y3Jf)<53GNZEbWF#2O%u#Mz6v*4AydtV%|q zT=67a^DzjNC!>q^4l}xR0HKyu4oC*%h&IqjRiw%YgogaC6-jj^_C|3b``~8^CpUwK zyB%|9IX~@KYN^&;YD(^o3YqB;rkcS*G2Ak+sA2&S`(BLY`P1_6p>mvH^u~tNOZ>C* zI(U-7VElOEomy}NWIu&`qMY1msSmOEbe7xYpY?bryBB9RN~Mhq0LcA2mEOtfTD%38 zQja6@uW|}eMreOCUw;rcb>1JJ|E^jNKk>)e;qc^Xkz_RrR{~P@FyZWH#~=12B1|+$ zV+AiL5A9GmEeApbZEqT=k4>jz68*-C%vNGON*Pr@KY6h?)6l9s#q!}U%9(N?xU)ka zimiiL%W|?`H5f+GEvyRS7gG}FpPktI!*6+PaGu;Ns#6bZ=D{u~<5fI~R+pYsj9EC7 zQd-uFftf+H)UU?DT|+n`dR`K+(e_SY6dD8l{`z&rp7OvDlkkYsJ_#-rMB2K#^;#d~ zy$FiyfYXeigp`$}5RI}O&R@=ffO46HQ_O#Mc>{flk2W@Daw&+Dm#UH!0T(7Sfc|0) z%b#xSRhxW?-0DpHZv>^}H3}e3x-@jUB6Dc>Ub6pw3)um@yBMlAh$L`QnrnpdP`T z%qYU~sIK)NM&@vb@;#l{v+uQ?A!lev5^j`%fj5u}xw~eJe&keqO*v_r4G<#`iuJ+O zNgZfP3xbfUaKnRqCNHUr)OH0+qHGZ-*xv>i(^r;JMIBoF4udJM-DRI9U(FPiD zoG(;-^ApMf^d*s^No%B4a0IR57F|uv$$t78+8Zl-CfK^h##r~ZTE_jLqQSM;BgV1&?*?_5IYqL*?oS%x zHk&JjS)D44slD}0O@ln^FP%nR6As-C{aRWXZBs`>55BkVm-}Z)mThZGN9eXzR)=*p zI$hb99+?36Vap!4q13C?pm8O#rZmvyhRGzr&i0hgdEG6*=vZJaNTrS+07?4tCa-+| zxpxBW@5f+*G@KwnP=|rGVh%*bK@Ydji`+oUy_T3A2ITT!NU%_*^3r(FVDO24F3?UW zf#FQ0FytzJUc7QBGOn&iHb!dPvo_3B?giovFkR;MNb@U`jKPrc#OSJigRfLqq*GCE z?0A(f(9E382ou~~k>r8Uq3pfOqlMS=BLqmC--Uyrsu_V*{ia{$RV`$6zr-~UJvu3X zD=A0e0k^fnd(4d--F%r<(OKL40BEwOZ|ZfWw}9j~^^60=L+P#|&}K*euhXV*3v`ny zDJdq+j0Hiv2QTmUky%MiNxS3k4iE$Hps$oo(t2CVk5wN#VmY4JeNn=MK3`Egk!+e7 z57BY$W8xf!j)8vb7jH+IU(E3PbS3H>r?G)WJxU5u3r9=ji+)Cx4fVR#dVk9EFPUFB z9PEz5gx)`UoOY%7b6!?kyW`y5ultIel&grsYDqFglyVON8$S$?yO>nJP*gjF=7^*R zePmK@n{V|HAD(?U-sdlW5Ih%8e;|~FXF%_b&#XMUNJDH)`MPvIpQ)I(oe8@vrSRbF z#XZ|$KpHL#BV|k&c1Rtb|CXa|vqCK&Im*Ce_Xg1t`Z?uDu^>H>NQH@F351+nY23r^ z`v5n3DaZ<$CksuXRlPb%?a>;G;RVCF9Jr@)ueFt5dvquvBV+S4u*(o!`x0|*65}n~ zW{;$-Tk-V@q01t){FpB04$4pZ0}iI4KhiuFIynW=FD^3Nu%XDErXyIq7%TWCY~zzs zW1gzg)VzDfC+rmsB|l*oP~6J+EkLb55OohnaY!tn8_1~oY?z{ef4)z+jK?c&YB-qT z%3Z>!yt6j7TjQA4w|n|Hgkj^bnJ1z@<>_OvF7+_!pS7Ne{+h?t#`D+ZdbatLdnaDD zwH8}Gy~Y;K1x+2j$-TnMwi`{csBdCI0-_&b}rvZjx-K-)$1&D=;%|Kx7SaWj}mFq_jddI1F_0=ObR zLt#G3@A8TK0LvtPz-RFb0Cdpj{p{99am@EV+)Ul^Ld}1YcK%N!u=%faD?GnhlX86O zxkRefb)!*@Q}-N)gctFdG4?26v3u~gKe*R{)g3GP8$zcV`ija2(XvLfAK9YF$f2IH-2>{cvH*mcxhv9w<8;-i} z>gsB^p6;51N3(3+B$IFJEm9%T_+w}Y1bm4tmke-vLoqpSq%pNuy&mr=V|BY4QgF2J zdRvJ2{IM~IqP_^qqeIFH?T_P$2;ryNb0)x4VX^O7K99ouE{Ahy?GD!#KLD3nSF;Z; zQp{F!L9PtNH56Xg8%24WO@Zzn`$;VhCCfFNBOUNcU!emtCnPr(b>O&|^6CpIjGW&) z*s}n-ZPNe(WVu50mQt`NpR1J zTysC!{Mr33IivrKslG9UYG6i-uA@uiMU0vP)w^P9^q#GaPjf|l=xLlpmKG_$HSip(Jf-7B=DK4Ta9PHfe5&R8)ll*Z9hKW6e@7Ln{5| z9TUbLr1#9DAB#p$4QS5q5>-<^Pps4}^`Q691m42l?^mBO>R4voE6w*5Paw%$OO8`k zq9gs?m$l$<5<%f=W)$Is)zET;MKhYT^0;()g2ILU5M4)T3(*?j;@Px~IJ+zz7Q`^{ zXp8SZEfdcoE#r(buiJ{)J5Ke~gshmkcV`e$-TQSU(0+YSG@#WS{=x{|BvC(zfC`(2 z^5E*O&5jk)UROLXxl#o{RL(`b!`ho^jUDBT$f#`93@o?iOX?|MZk9E7J6V&}7_y`c z3tPXg-Hvol7_E+=3I7Zr#k{&RKIM?gu3sthy(aN(zS$UWzv|FaUmtJ#o?@)^O}7wH*@k0av&`YPX|nY|@7(#Y)xKauhH+b6pT_o22~I!5 z>&K;1Fv3k4M&}$C&_W&HQIO>t-Rb)|KJez|=6bN>?XJ>$j?=xii08MWh?J0aj{4B6 z?t5MKt)VFRc8_O|2itZP1B8kd6_+_Sq(eGghV|zfn7ikkkHEtC^4NzALQwr`jZk=S7s9N> zKK9jtvg8qDy%Sy43?hVr#L|*|heMhko3&}N{g>=m-?hr`Dk8;|f0)lQpbR_b8{3e$ zvpgryTUhdLedtGdL}oymc0!uXvHbEH1EStig4HYHr8LLlI7yE8narip_D^T-hm+Zj z$uO3fqhIf*ZPF9|t87|E(H?JJJ?leAfDd3&YXY0=^9k$&PDGWzAC^s&0sEj%t z4s@HYxp!O)Um>K~PdFoE(k|bwZhdk9VIP?2GhjeI>OBq6bXq4R_dVjzz3Cc&Y0<=9 zg+PYv$uE7;hNckyxy2c5ba-i;iH(9siKDX;X)A?x!a{W+Ns=1Eh;=Vv^Nr~)!^yGQw7hDg!2r6Kg>rs^!RR@I= z7LC{nT75u35pF=7`UAM*0<{1<8UvE#yCk7GJ2a-b{?Eha5fH9vZS{_auEP{mR1&4X z*()FF)URMKhS}j)SHxTW!%{=v?C_Wt1d$-yoxaG4i0l5xBGc-VgoIK(`9Hm2L zM=*9u=S~+lsjgR<=~f|5|4yx1h%~5<=Y9z{$;0#Fo9_=_w0@A||}AKGMl{f)zl0lo*j#MNA@=TCZPb9Z{nF$I?H(}bgD zVSfnX=;$!PWL37;rTw?80gx9@ayLF|t}5wgoFoPb zz}7!hb2F%#tiMWW=-pQU`8h1))}PCbT<6zkND{G*DX{k6V~7CHGh%M}7SNmd8R#z# zaYCevN3OU`Wf>yVVhqI31YRs!Hqn=jFaSHL5!UfwWYL}IQ;F2a&FnSsZ)sA+vH{H{ zE6QNN6{FO{S}>I>#x+D9J|LZhl;Pux(+<Kn`3|lK`WO?4kmS+$0|x0*Uk|2QN#lWN=gjUTMCROXfNx*l$EttpIVstt5lb z+Xr;PU@&Vs_(-135oAP6SP-j~3_w+f8ZXRFipn%yidpc$+t>|Cd5gt!(=n$U_z;mo zRE)3Yqnu-lo=W3KFdCK?g#8K@!|hep-_vEle;!<08kSPuLnnqsHK-5HU&;!s%{OqmLVX%?I~WOti=`=2^;AuEg754Hax(+cS;&YPD2HxTGPijaQ7KA z`B8_OqD7VCmLH|XlZ@5f551>S2UY{MZxRp^5q}*BVqNDc9;n|fPjp8s{>SC?^au0@ zrnJk&m`lZsvcwh+ADRp!^lUWn|B#Q);vH+qlk*_m_7gc&^mu(Z#(6ocmOo>7`vB3W zGqVBD-X6Sq-Pr=aFcpB0m`hf@#0?%ZP+K_Vb4)A8I+}enqyuvw1{R1OmbIRPD)dcl z=}b2}t%v&igog%JDddmUUJ)+}D%7hFs}cE>Y8%{*=A&l^Z&T*>VYxPAe|NP^AA6h@ z2Y%wVcq?lg)6wJGthaNmJUZvk5YjZjg!cmuANNFWJ_DGpeP(;B?UeF@CT5;*;9#B79ddqlX@=hCqSCEvD&rgK*%Z(On;@WSobSkqVe(m1?EsHYHIv zAkEv~1aHSSCydNxvgDZ(JHpghwbPcfB&Ukevw@`>^ehLhm^yT&otNl)mT7JnW`9ad ztbFYU31QcF#em!i8(O#IoKcvn!y^mnZb*k_)<$l<=R}4%7Gn43g{*^jTEg1vA4R<4 z>QipQiv)(fB##<9b0vaPyGNy{PLObi$!CEs5F0hZ{% zYI7f&FLjZcJDIgKM|oh6WKBBs@EJ1j3;~>)801|H6LjAp>W!guTA%9*)MjTnydBtk z+#S>v68XHq=Hw?GlC8Pg5%B%#OK7|I6M6lL0`{YTZ?88wL#WWBhlPP7ut6FaPQn^E z7MWw1a0}7#`G+R7SxcHHEOWOmn69<$=1f#L0E_3aCs2=@PxW zjM;5n_RYXbgc_W^#2U3{QrA+*G7I0RLCvQqGr#BuixpB~MAI05A?sO3>80cc;b>Ns zKtYP1#Tvta7@VY!v>x#`$R&(b_BKKvePNNMiyeD1#Vnh$6cou&ui1kz%mCvIRo6Y| zl&~%%8+#xn^f1WS6AM6A|GDZP&5ThyaM`~H0yk3}yag9@#sJ41p%6!=ZBW9SI>1vP z$|QM*rUKm^5l+N**^kTE^GuZ?L7Hv3Z$CK{_*HVl=hNgpLIEmv+tBk*m@z!bdGF`O zhcz=_P>FiHMtsEFKXTlk>(X)I{r(vJ8EO_VeNV{%5{H<&Ro^g{o50q81F^cMjS*6^ zsC0XXu!<@%jEL;Q^PbT8Nt~e39!OX*KOzPJ#GK_q^(|)P;9+^L11IsjF>K-z3;TtE z!eOG$lwyz!k2qtc^RFMdI#y`x!9Tc&_3C(3o6-C(G*eN}mc1;a-62p(OHB+m4Z-Sg z*Lzp?qAO3%G{s=Y(7$1pcXXmO$E_u^b4UgaV-p+|Vuslm;Phk0h4>5_qLK1-&_}B@ z1O%a3Nf*4+$(7DUi#7PICL6`0O**N!F0qhAGY|fg)^*JUh>UUZJ@Sv%b#@L!NW*GA z^vB@l4+ddX{n9HL&f(9%DIUJU`#Ow)adM$t;&^y^Px)4I}He+i`6xFec@A0m#}M4zZ_0*lW7(ileafnm$0A_j}FjUj+BL z7gulqjDE@NV12t795L`c#$a2`-&II^d>D|WvDyi}K-{*uVNxNbv6FTpn)osPxvi7M z3s@*qcsbEwKwKixjNA`jD-MCRFgZNcKQ$P`K|UQmIK(~SRkA0Y|x<~3#- z6MaXv8@L7vD}2^nnK~#Q!%bgew9U}fKg_}@VggOa!-QRFf&lFxR-dmMV;S=7hw z&5`>|8b+WZKamR4HA1qjn%w7`7APWz`6}?ts~8Q+%aGeR91=hLKc>F&FUl@zmu^WV zq(Qp7ySqCj1f;vWOOQsoOIkXH2I=ljLAnQqnKM4`d(Q9t0r!`E@4e!RwRF_ShbWpq za{&+~8`eY$SUo*n@o@@y>dcz9B&P01$na3cXbg?8VdIF)vl1l0ebFi-!=iKLE;KJ_ zZBzmF1;C;F(SOpt9eZ$dT~O0Kx^+m|FiqPCc<{A(4cdwxjXsvS9j@->!sru!yAW!~ zPpYk}J2nFmWM*uV^Ik=*jYP^N+cEcbEdqucO)qC~Z+tQ>aW+tcH#>>os%7@2cNN-I z?SHN_kUAk>s*%PN z)C;tlhpoIlAsWZz>kKiaM=(csE-w(8&(-?YTn0qwF*2+&VM<JGbut;ab^gd#PL;GIeJLF@@rR)I7P!f|<@z?6T5C51U}98{gHiv-fr`TJH*ynj4HTkt%2Hp)ei}zEh5IZrn=&3l=jR?#!)tUU_T zVH?Lp@@D*Vgmzqf2k7EWF8t1(v3qN8*aqZyNT?Dx3ZJMVn3(>kPks8(Xd#4%@yUWy zNa-`P&a`!%R181dIU)ijAMrS5QwOGu?_a})kI@*iU+j+F^D(+D98mrBWG?lV*U@8F zXiity;dBv~`g%>x{HI9|_B(~SkIiSP1iEoock&@V9&Y$@$H&4HOgycIua;8m=D$B# zp_nG?;3uU8B`{${hMh)P#G_4j)YRZ8~HKl3c#DkC_^IG;_lPsw=(AV ziCsNM|4&)~*?Sf+IGQ>xCr z@u4%SXi6OvsXh!h(q4Y%!sQF}S1(Tyu*R@bgmGzCB=W(2XJ-BrwC#x4pZsCrnD?83 zije?%)=S`+cH%F$1x^mxAE)b_ebl=aKqoPAi~k-y^wg{VU2!a^a-_J$rELf!4KW|pOFfD~ zz{#YEL*R3w4hAFfG;DJ5MnV{T(4;U~3k|n7H7ac2;P%6ejPZ0wbY4zYH&ue6IPVfp z*=~97qrNPjb?};^^#~@m1p%(zkIe<Qax zQDJl^n-Ak@QG?OKV0OyA-7m&|jQG~UZ)M@x4!#hm)s3Ls^;L+=&EYjhTzEwMYfb3M zzd>x>&&r^8Qa`j%(K{9*iBta+2Z5eK7Q)NF2pH`EhC<4(Q2I7YB*qC&PXL}{f|#T` zKYy2^3Xf9SrdHvj2HL@|3~7tmhB74UpK77Zqku+?v^%fuVvIu~iGe^;>sK{;me2A} z@~*;0BhyWyH0=o?iL^3n|!OK4&guP&fo-GIkT%ZPl61bYc0!m<&dd<#G?;i#1+i zGaBVn?XUB)Rl62$6iU`9PV+Xngv-s+2;*T>Jcme3+}i~``I8_)@z(2N>m z_vcE18=PMbg#VM`f3q_~#v~hK{P~mRMDD)qcA%o5?BVV8_VLZ^`N&NQ5FY*5oM&dp zkO{}k%8CK-%5a>yBmJEuGhwN`+07;bTd32)PtClNk#uYC$kuZ%(?Rq2u@MA*$lOk5%B+cX(BT~A zfHXSPJ^VdI$Y!L_?rhq-IZI!&NQC(<FKwM!{}g+|}a4Etz0mjJ${vWQ^C4S)3D>nGAZ#)1bjNbeO==0y&jy z*XBhtFLsYOJnN3)$QIOGR%XiW&&Dg*l2pPF*M-yLvyW*@sB%c)2n1|QccVt_#pA+U zWO*qX=UZv+l`b;$P4Z1&{~|579DU<LOFR`&`@ppgu?e!PMj65iE=HTZ~)(ZRQX5|Vpp=_JV zz}J;Kp0}#pp#8&ZfeRS@qV)8m0A?DLfO$lrl4=sS;SO0!C;X6}`&){P7U*aKJp4=o z>k(IxKc?4W))$JE7N$D@-LrRM*Urw)Cvm4E;rp5TnSajA0>*6IzODZ0fyT`Ljv3h< zeDxO+odk)OhguTE<2M{+$8mIq(iyEPIXGLS8EGmnfcDzT+6a%WgKZ#;`xb zySxa78b8)D_wYV1Z})dfID;kudk87fE{1`|Eiy)cLaSfRZCf+av~TT!f); z7tfdG7tJ3nO+^SaJ`yQoqEbr@^^L(E#CQ%1)=}Ds79bQS?tK=gQW@EU5`M5y3BmJZ8I>gajvYbGoo)Idpq6n^97ev#kcf^mW%WXaFmh16v~Z|bxZP4H zu5X;X=+k2r>6uLTZj!j@WT_F31Bitxz&MD9n8 zV1b-ZhkJ3E@2^YNr}J6TY0cH4cRE;h?&oeuq08(@_e?`rly52XS76hjDO_XO4J$EY%5r7$GOiYV{~#6tH!CkD-Z| zae^~gDJC7~>yznJ$!9nNzyxB0Gr=!wn}b?2V&BactYKf2tk)IKsV8?=g8ZiiB7w4X z(BvOoq}`sRV-aLR$nSo9qXm4M5cBihonkInTU+Dc+`)%v1-I7h>IJ`L-rkg@(*P7s z$U$$;V@owFr|V09L1${F6Qgye9je4De4G$ICx`3YYD9ZlE~(8n^Z#&xf1%+8isAPj zLM%@65fDFYNoa@)nokyf)BU7}L)NIaE!(g0iN3_e+We|O#T>qMwVRq!>cWR7_i^e^ z7~0r!Fo#XxLcF{!zAJmHU8}KtJ<1&EdrF`%dQR&^HR*(HkZaz9_E6jI-~-3o(o{di zAwTs=7R-fIW^9f{mdey;6l;#gUviXKLz37+OEWlW?`@*;;V3v`PHH2X%_~n&dmrqL zvVH=_64632kl?Rve%TGCMBwO{S#Y;MKPZs&vv|OD{H#4i@WHO2iT0mH&qV{?Q3Lbkl!)9j^sb<0TjAjFN zOwAq0xp7jYOUYqs8d*4#+^Hn%eF^k;hg}5g#s^9%N zJ?NMTjDDPJJdnEsW(Hkz)|+*yX0n+UdG7?UwE;K+fND9x4&zV8?QcYK*=EW5aG2uF!Op$n24EK;jH9*5 z8jpl>FOL-e4}z44-y-764i)MuQ)hRrU#&G}Q7T5MH}sat&Ow|LK80UC!BOIy5J*Uj z#Y#wYhr}q*^iN%jI00a3o85!VD#3eHJ#EVLcF(M)uLWNqDPGH#|` z-Syo0Lxjgp{hQ+(6RB@Cr32Gd6gRD40HGW+Li~x*dpcgk(PtdlaQRSOmCKD7I<^@& z5t2i^0X$ES*E`)5I&s%hf+>~DWI3*Y5tm0nf8LB8jj1$@zMr3vGB~Tu?dU8uR{R|z zErA~3-w(Oh4Q@a5xCpN9YIWYa8f=8@fbx_VL!t40XEl9MY zW4s_ABTOqxEgn}Zi)r&D*jxR-gt+n#P{xG-^$OnJX-NUk6tfPsVQ1na!n=D5*^0yR z_p`}Q7*23G2d!|TX%PM3_x2b{c=aaKYHPYvVXSL&x-_oaDN(su`+ugh+*>=S6E^`d zI-ePY%r^4-m0?o`L^8`R!`ZV8Vd@gDDEph*sSv&w;)mEC+MtXOrgP(~R&M@5mMHuc zi-N>kRbt|y^NQUR2rMt7ZqD>uGgb7gYxp({RMGsLi?Yub!;o5i%prfFpi{2%lL-0d z-F%C&rkcEt*X-es!y{=k?Hk+!9g`wxw9y6sB^gwj7|eXTwUz(_gAeKt&**0IOVxrd zJB-~S{ego(8SH4rkE^O7A>s!aPy|69%}w0H`#Rv6Gw|qk2?TZq=>@w#Kef#pbb1|i z)uskkncI_Bki8vX56JIm zo=1U?L3zuhCqM-co@8Nr2;^MQ2lrq52Bn_f0E>>z3Gon zlFQ`{p(NSoo-I@>2ia!%BEpV{b>| z^o|{IHagdz;d3e_HDl??=!A)A_P>iSs=KF}d?>OIhQq_%I~1o8LKgQN%ntAbd6QFh zD%nt={zuHNAafbhCfeSl{5Eg`K zmqxtnjj!Cf_k52M=hdOWiA3f;Dl;ee*O#Z_%0t~(-1Ke*4MxSR)|q1@RCSvDvmfaEOR*0 z>k~x0l=DLsR8E?I0HE1##%CSMI}*$ExMruE@wK;SS^=(K1yGX<`5q&fKq&}-S`xf+ z7tH+B$ow1J!0~$e7BXtmQYsC~ni3n9oCN02y4tjrr4NRtrqkWst`|rbhs1GPmmudN zg+H7AS10h9^~MjT^VC9)7x}Cb@<;c06{mfB@U%vCuiy@J(7KxGj0oU%zb4>eyrrmi zZ1{=oSiGaBXUfPISwdK~PWod(ePCUdr7~11@c+UJxe$cFgbL}Zon<%*4IYm5_glrh z6m2Bs2JQQ`cV3}C{q^J_qXSFvzqJLKL)Zdc_W&;y7*)qpa#L!WlEf6%uf4q^^o6v|C_(j5}Dz=WGZ~q@{I~NB23NIYI`tf#+|-{$Z_WV>wO><#uYw7W2qEZcG-U@INjOC<}w}dD6})_mn(QjZzdef zf!@;DsXVF*T@S&2hXC_^O4Zli)!(6d2#X)u+w2nDP|OTwo-YMBSj)p;Koqr`1bozv zA-GvP!B=mam+MEwrhztHpJ3)iV9qu3xzut=&NAungrTG?@Zo}QyNo>eWSH4o@zI3e z`#V$z1{`_#D^Oh&v(3Ho0|{$IUQaOnu1VaALZ>Vrl5Hl1aEEBD=^RgzXm zJ~Q)wuOJmQmjI11At4{i*Ffn_$~fhC;!Gt!+;d7yb#KH_n`+T`H)}kN zF;1Npm>dZyqXsVB)+}qs@ZDv#^qeDIcZ`JHY8c`U6soVlT-U|Pq!9+#o3)3pp2dbi zM{NFtI0XG1b!d%ASM!-qWY`i|oH_JG!$bJ44k<{|+^HLe1DM59oMVYMMvg{?vBVRM zO^6*?*F)2PGBYfEX%~O$rW5BBf2UBzCDVP&`CQV%k^4Q9Oli*7iYw-Bep)F4Rj&r> z4BQRI0N&gJ5XIS`Cp@PVVIbDfb{7oht4Pv}_~9FA0Zu}J5_SJE75~n~3~Q4OWX7Dq zW%!kG_;zksQYQBoj|v}cvJJwZYaD}Tgg}&Vs3lAbYH5ZZ3D(!$O*~85_?m|P&~7TW z5RC_&dOPX4zsmZ3DY$;@kuIu=v3gtkBh_ihundI@wPLDhfWKA#Si5AHKj7#Q35iH# zI@#p8YYZakQojwRZr30ZeEz9mVEj%~rjtm@V`vw}lv7Oocho6GsB5_Eb#5H#Imw5# zHQrC9Tq$r18G_~^Q*FN{2csy%&3&xD%FEf3-4RR3!}=1|N(s`wAkeX6$%5rVb@t?w zIf)|4xFZMHC90hkSw5_Fi4*!CRnQQWbuL57*cEEn3z(Hq-zV3>i?@nmoJpuT(VA^q7 z)c5PNw_t&qH<22E_1m&`In(ARb_-H1wjSYC86b+fn8!VZ2zb&G_y&ApeXhUjcqE&I zPB#SI9}m1{b`K9+*8mXT9c%^A;Uah$^u=me7L+c*DJoX#VV z;Q>#RU_-q<4bHi(YgT|y-1v}HnXkg84>tR;O(>C`U%Hv4G94|Uf#V@8O@jy$BavBb zi0}5Yv2lzUMum~NvE52He?F1gVt-`IG_%=?Ruu2-YiBQle2a`n%{@)ShtYOQwQ4Rd z3(7)Cwt+rNj&5wtz97RHo`k;Bj1!Aj{QV`msi^*z;Es3bE_DIX>awc@Xl=#7*}v!= zG{R`fPDeNrB1EGZE{(Qu*ys4h97XOjNk?nW_=zIoU!!@eD8Dd~!;(!#e^XeX4iiVP z4u?Z96#94*hFWgs7EsRi6-8|RXQ^OJBw-Zgfi)LHM`HF_qHG>yZer^g;7`T_2X0Ox z2aU$Qcmc`d3G1E<7|Z@fdGofp)zoCx-;5-xtZ#3o*ss)`2twB%oe7%NIYM(tPr^j9 zdFpW4Fq9dVyMsI~tL}k}&%g}5Afu{O*AzA^eSL=CA@{3&4|@TMFlqjX?6p@$6(4#s z`v(So1_)&P5>6!{{?8KwLHds&y-@rRumLiApS=*HXsp91qEuP0iYfxjOly=?v)V^m zI8BD3mT>`tEx0m{+^qBt1}0nm6Ln&#IK7srsIPv>*P<<}Pro0UhFzi(A{DzB@G&Atdis^BQ{u9)rHD%pTnqY5O}HiKnVE+@L#ZVr7)Q< z?cRwJV$>Ao(ZRxVepz1aw}Exw<|WSFT3Q}&j>WfHJ1^SBL48!f1_V%v$E9vfCtDEL zp*N#yPLktbP@&jkQ;zj$;FXpY(^=sUznPT|=(E#hF`^{TD$|pldi*t-Qo^!z9MhzD zot4gms6)Yk31{ZI;!y4>dxf;&vPfo`ANl9Nt*E2a+`g4Vc z0bn>M4>*0TwR3%B;h$~hf12o!bx-rf)sA6BL`2)r)Sx(W4X(DXJ^>+Rd9{ng-cpUN zXLBZ!8suZ3Z@ByLuoU3-eAF|f7jx4l1TpHmxFGEes@+7U7|!@5Wy4G!UP!i4b9cJ4 zR}y`Dl4?UXC4{fp;dZL{O;Rt~46@_@YMfywkKb^9*f%Y-v9TQg_#rhPY2_b}4t+`g zlR?NJ1S;}6?83WNjG8q-LTlWc_hemv+&A_qN0gCKlxYVy1V*z)7`dZDbzkcx<4#-{ z16Bz$96W-NVfiarT8B}#j>8pNs6OC3PwrYZVpJpXc-Hus7aQ8Ng@+l0BQfFFDXt!L2}`t9f4BLSo-M@V@)D zbo1!*9E1}dv6CN>O}#r=Uw8crK4rYo(bP`VTf1B+H`rJ4Vf zWxfI$)bunkNk!#t3Pe*Gy4%~60R%_S!aF&@V0(8aysPnHCeX6I^GRybyMwhd5!s1f z7d!1=x)A4qzwYRi>QKX50`2eD%$~DBU?}1dK?f6bb@e7e271WcDRd4z@UMCYxG%{( zT2Ht4wV8dmxF{ZF#_tr|%kZ_>{!cyeAolP81#jVxr|*J~y||?+VOUZ8HPH({6IBw8 z8){D%>$6<+ZG8CoT+By8c_=ZG(0_*R)tB*tJCG)L#*hD3F7QemPA(a?E~HEMgIGgG zLlREQeRLykcq(ivkM2kDT3+l8&u^27juaN>Y9TSAzAt?iykF3#%EPU_iAuT6`142^ z!#I*8YWQ(Yk8rWGC4#H4bsN*+l+8u#9L`(6i7Ti`7$LEaM_A@^Vi0KEGdI~p3F zo-ORv=$HSejdSAy>$OUNiASLdhTj!AId_0eQ@;++?^$S0GW27+|~Qd|7jTYG0hz=VCWwz$bm#1EMp;OuD(Q?ep)TN|12tqB2EdbIwqX5Cf@jg;`dD!j;vuG-3TQP<)JY<5T? zitvcIy2GUo|GLzlBF1>rGuKtom(kA{+;eKX{dB|A5TUW)9@dOOU8y|aW*~=={#YOh ze|y0b`DP{$5X2VrEmJRJf%@tBxysVFLC-WGaT?$+3V`$g%$&yBnp>odjEp*7_w{Fet-sPFIJx|lVok4-rD?22I2GG8R4-s_E7QjgEf4fF!>**-) zHz!Eu)5nhWNtH$z+)>KAn5Le4x0%eBjp65j&hN)16-g&gc5O4)Ws3K|SNu648#GdS z^~ULKX2E;~VsAqXhQHDa#v*1ZU*TB9d)$i8(ddVr2%iUR@~7MnvWu?h3jCQ@-Y&_( zA#7&d%1|}YeV!Od;w-Yxxbw#qWy;Xb+BR!m22tw|t@w2)6aEAg^SJm6&1)6Y!O1VJ zKmbZlY-lr5wm`%^VNnW#wDf%Hdbk8X+^rwvllGOE#q-~C@iOW{!Vrti;>ysG{sS-B ziOSG5Eo%7&MS}0MeA4gUR17!^vsDx4JQw%ReRb$OhO4j_M`qrUt7FFNlDNewBh=CM zS@to_sI@#17EUgY4Dy?yE{vlS?iwzCXHG9z%HMOozzdT`FwU$!uj@ajTzNA*!7<(f zxYNZG^WKY-g#4s2756xZ`sJBc7nTh_jWvK@wVr>lYlaAyslXx=YG(13zE$ZI1jqqB z2^QV1zc7*tczwEqtf`5p{QYY`n0d6+U8!pA=@_{k^d^4!@E7npIt*Ryp!9^lTIO-N zv3mCV?(tdey(sMogxUXKJ^gPkK6Lw)ed59qoF1!b(V!gGv87xRDNzby^li(i{c9!k zWf6^!pP`XX@-3AFEc67Nbdzp31B2zckMWF%a{^8!eR0LzA;~%T$6r5&`Ov$V{yEIX z1K!OY7fS5JZo+Gik6vAtl( zE{N{z9|XSz6r;AP2wz0r)j#i7;$owpy}wwE)lW5aZa~YT?agjVl3NvzC=3;V(^eTt zh~%(5`>wLj&vH0x!D~Xo z6t@ZC#`jQU>1In5mpUtIcsRZng-9MmTOJp!z8%gzStR$^r*jp1Qu{Z$te?;Up}I8^ z>=LK_*+OAwwwt}q_g5ggPVZ+i>uST7 zFoxte%OkOM_0h~6`5kD%b~xW~h&csmi=ibi-u1AdQcc%o8;IHb7s_8Np>^?J=m<2r z7sBTm!0owNCDMLMh+FrdIXQd0EvrCvmCU|tnAIfvq z-M{{nH_0X)=V6wv6;&-h<@i|8HpE7l!w^2YN^i;D_7X&B;-tG`mHn+j5NFvXs2r2fV03jPCzgEjkkSo=qnqe!%a-;CllwG!pW9KR{kr zAg3UD0It#a)pcyw2wfCgm{w#BTby+R$SS!~g0LR9jV%|DHPik4Rxqy?bgdZ#c>*ts zCI4Mriym*M{^(rlw7lwhdXpJ9iNtg(KCk0f2$1t|n{23OU7!dqkK*X=cSv2>6_0AEuie@Ct5g@fTk-MQf%ZiiGf%2Dmvpgl-ubcvaiD0KLoS zry#Yqe28<+uYRwyvG!r7^na{kFiYT@TB1YX+YT`4?Ftn_aJpP3pUc^C=c_Vbt@NGN zNRxQ$$OXRL9CsW!d%<7H+x6ywWgm<0VE;xJzwT^}|48I44G}-EtZ|ydwDvXayN7VB zzkKDD4?&3^t!ta;hWd$Iq{BX6Eqzw3M2WO@>jnQ^aiw+sdgGjG=_w!jefp2>>IbPZ z(~{x$-@S7XX1yOyUb?v*$DFV={kqC#%14LFLozk+SFCDWH^z0a%Gz&Wl_E;3PI2f?4dqPJg7 zoy-NGH3GNl*RjSypkT1QUXTKo>l_%$pPv?!2OX*}({6FIi}=5umDSuYkoTlKY;13< zUNFm|%I(e(tPz8;>fPteVAllt@Zq+74@`QW!NURWeLKJn2t8l$StQ-_=}E!Z$&9Ec ztr>itmk4t`b7*W!eJl@#TP;+*P+_q;1xTrX52~xHJ$?--C55%K>4RSK;w!#7=j#sd znF_3Ku7Yq9zU*fo!Q<9ZP5+HIttckBiI<*33g)`JAdppWy#gcjqmdC>vko7fpz90r zBYU%*paas*?@qLW0feTWP3EtvgX;y5$CZC^sw5X$L;d@`kWe6CHN-(14ey5IeV4ZV z%m)}1MoCL#+&Kh&nBF@#IsIazQ5N0Ca99a`>s$_9#8s90(*rHosE>5f3)E7}NaP}2 zU4kxdAKCfhqYK@+9XZB~LRf$?24c8sJw;F7 zI)~&z+I|OrJ3E?_r>SAKD-t0g>3vq}lnQ<+23PG(1R16WpRNRjk_iN*;o}pm_D&8i z`=;u=(hLajr!TA@U(ZS1FS@H8KAqaZoJJWzJ)2}b;PD*mIWNb2{Pm6-hkjjB?iazp zE)d-{6PNPkIu*U?89){d)Mr8+gSIUp6wsJ z&;rT%{i|l~cweyLkMsz=my}%ak>hJ-{pA#>{=UQ2l3GOK)6*Uw?0aKEWiuzPx1I{a z!xK)ZTP2;}0+b*vrRY@Z_R`1$sIrSQVUX|z=RMt(p;fIUCMJ3uh;OfL|8As2oTpTP zV~T3}Yk)_b_}=p7KmH%u?*Gd-Y>vd>nWo*i(v(@-g%8S$<3lBWBtQO)b?l7gn;)6L zMji0UYGFq_*)rFVGSRxOYI70)y`URA4JWEa^-cal<;JyE)DT2`J)vCT9m$EW(6nDtI9)GnxM{_T6>l)Taa~7&f*zT^;$Jzg=~h3qlrwJ$w4MhJSeC- zK>&X*9S`5;Y`_vSP9OZ8)@qx@JP~U-+%=ts8KQVRY94Z`u8${q0aH-%rD_}kn-|_>ZN!n!zT6tc&EeL@e;5ZdoLIJPB zqv>gg*EfWXfbQg1+Ff;O`R)E{2TlJ48tNdC*mT$nydxKRPSHxsru&{wi8rBPHTw?>s} zHwxQj%$fna`akTL^SDeYeBfo8ss+#N-)ksyoTe9l)7aYSy5o zmXt3*3l&7qyaO+a0Y4b-090S2f=_RPs!A_jlqTX;3f><~Iyu#KI2|NTAjI%OCs@2H z5wKO*xSUu9Kl|?#ubBE$TV8hUJom1RZ@ey>)RAMg+JN*hZyfM@)psxe_wIfehG$nN z08sNUVbF^&Xo&hgvK~4bSLE)QLD1vSyo?RM%XQ7keLEV(8~O%D(f1dxbJ@R=fRex$ z5N42$uGvt zZT#E8y`sm_ZF<1D+>Y;eRZ?lFf#JRD8^rR=AFWH`R&>7Ot)w!SED8cB3-(=kqNi>OB;*Sck-OIX1{l3 zlox94S?Skn(bPq~LY3h0SuJcS>^u_vKBT0H;k(eoCBKv>aEX3v!d{oYsFE%g{7Yvs z-$81k>U8Lce-+irob(#yAXEf9{ig7duZZpF9Reck?|8>WSyiQ^g*%6ZTN>+aRYpdE zKWd$&c0VOG^)%89lqsIHP&Pw0=n}?}%hm8}5}0k5Z|CSz<1!B;sNT2U?UZ^9?u0?6 z?F#NC#o{sI>`Oe4ubvoSc3Z`P=kH%*CcCI=*+n4(g;{_I>ua*{3nw(pPAj zUzY7)@>7%_8WL-jfIdWdYdd)|R#ukT`Qoh~c2~y`4+k6j3Yr^IHo}*U6xLw&po-U` z(iGE$#^F8Vj`x+_Y+7=Yklrl1tvMAA^2h(Yf}28I5G^yv0&+eCHSJ&b;GY1AFTeV7!%btjIw$dMYG^kkW_irxDNht%*1gM${KC3`ijX+8L>+ANba z#!sSLW&8qUQZABbX0zKde-2?ca|4XXs3cJQ0{4(l*I24yOx>l z#C}uc*k7GCS13?lSWKtgFs2A}dSk@3UVuM8cw#xocJ{(V4giiDb?i(L8{I=G#bK{~ z1N7xrf_B)mj*G`u(3&JR?1uRw%3!BW*D378%whd@?ieDiq68@$y)5&OEVUlrzqMH4 z!P!DGQMbr~_c}6<71MAIG*h&gwry^%oOO#^c&lpR~Wz0T1~S--R! zGl}ATyZTvf@V{*4e>En^?5Cq+F>WMR3!=NbJ2L8ZigS^8o39HJtU~4w#t8GuswQgc zEyh#B^mKMjNrTYB!aq1F2yhzs22^X35fTc+wO_a`#J|yG#}(|$VxS>^PRMkCq+0JY zSElXkU??(EMr$*WX| zVTBhART0*Z*Z7FshH_>Z!krSsm6kOtNlQH~^07u~gvWEt+H-dyGt@*s8aB)-r;quF z7pcGpB^E{zKYB5SH)W$yeZmgW-O74}SvlK~Lwuv1#_2`I370?QKF#~gTJmAfU%BqRJ`aso$Ug?)k1y+qL zZO=6T=fMgTzJ`z=%%_)o9oxnvV#ON{3tGsg&-cy1z|MYi!|RF^r(c=lYQguMffsFn z?>lB)em%lA{)GI_HDyHU3RU#=d}f`{Ms+fg>S*ooogM%pCpP9qdM>~7dW_YKVfI`$ zvw$~~JLN4487~03)n%s8pSm-CQKIJh=@D?Q2-OyJ$c+yX5DC5w{iek6O2&_hpsHZb zMBy=u{ZldxIlVa6?U4R6wX#i=5|WcGS3#Ck5xd*{SoF|=2mqzfs*hPvjC777_g3`I zUy}Pvj;RGdyMZ$!UUMLC5QddHU^U(4mpS z8{7seh?N1u5G)M{YHAa4bpl1}i5MiqaB~boO$-!Yu^!QDPFG{pZ))#<7q$1qAr^Ah zweY>kP!XTvseERZ zQBzZ-XPOX+bY&YNKeSlLkQ;#VFST z0Se*}5E#LkQv)BbE-4^^#|}U>9TX7u3slquulwi&raRfa4Ct`&J=99o|5LPe99%&7 zU&Sbr^^anxhmdQ7*_!a=F3P9~S{Jl4B)@;@)@o7t%yB)6kBq5tA)_L-YGa%vxlS6M zzh27CyMr5!#f^d^KC5Z6ADl(SL{!L7A?@<|ZupNRWkah(UM|A8iUxVbk4_O(k5B%* zY?<#%xx(}Ed3*b=5fLR2IgRN*@DFH>Bv^4aYO}&mHbjX*3WTu@WaxxsMrO=v)3p{D zJ748>(8*&Fxm&`Ud{vJIa-@f>*h10+TijmNd0O2!L3)TkLsYPp-iY_#AB{Op;m$JV zHo{aJQ(={jj8nnm$q_6oB#Z4H<7*jZsr+8gm{yh@_AgAMUgekB%s7tSln4bNrxS|( z-1ouA7J`IBP6=EO+C=8QK7VE{`LnwR4=qUM5~2%U=TH9hT?=g4{&hD4Dc7}K^?j_p zFmmr%s9#bLd2NB{3WOWwCB+hu^~>y^oJR#IF)0BJH?)Ip^m>!c7N#S#poGsA;34s9 zZb@my%0KyPsi3!t4Xg5&EL*uljA!QWkut|d;aBr zXzWgPAan$lT;{*d1A?3iiAONSTZvB#SWb0j2(h<$Z=9jd4%ZygKdkXl7hQ@`B8R`w zOXu26KPgM%R=td~)pw>W(?|DclGF1rRC4ubOmnRTPlm6#I%Qci%~*)nB78(mBa8u8 zU&PMey|6`2qb^BsbuD=i^MbwfJAl(v0uTnj%7SD|Bfk_ei~g~1AxByHQC@9Nj>`(h zfNP{Yo)A@lz3^}a>{vV&gahlZ6k^D+f$)wq6-hUHBeECqla^w_WNi zfFZ0dbU?iKS3LhKSSs_q-ZGfdti|7#UWvbiScNUUTDZOvH%B6i9wzyh5LTJ0v~4iH%WnLXT`Bw} zH$Q0aH^|RcUYEH(Bb;CxpnTO6_zkL=Ek_7>*aw*vB1Wa>7wjm3o2~mE03N?3zrMaG zIe!rd~c=#Bb0Ug_0QIesgQ7Y)mxBc z(&1tK?A?Mu?YuJy`5#N~zuw6ktd*8V#X~JWoNpoTs!o9DNF2eBMp3IieF{S(wrAy) z?5eAlBtXIaToX!)9V7oukcyHnb|i37>bxE1^D1B4q{bJD_DbLs*T+9&V20a|#I3L& zL>pQts6(Imt%i{NyDq3xrqF>OHp!CU_!-@4a8?y2ovjcMt`(>oQYslim|~_%dZNFV=%PY~+jw9Mm3+d64dhRVcw-l|t0Pb&_Tsj{rM{v0 z7$d00@ACDT%9(&m`ooaWr;WjTWOGCRe&<@tqI+37PlMf}fae=8R17K>{2a3;#~!X9F^uS8oz?}9e^&axI`XdYH& zB2lm|iIc5MnU=iP(=$J)el*Q6zj3(}Lk1gYFgnVttWLDn20*UkH^JdYdMCk`W^a(g z6-&A#pi1?8NzHA&UDNB`84vBOHf&q)AGaFOJ7F772bvLA@IEm97Z0d7;}Q*w1)jdL z7J$s{yp7)PKbegu&U;yf9~a6!$}DS;BBbu+U+-9j4=Wh#PEKsOEI-yB3q@8m2S2jC zeGLk}f5v&)7rVLZaP!-=@Jlmid_)Ls3ZdUfw7EIIR`7><{kwd)wirlCAq%9O39_jQR2GYvf)@OvGKN3htW=x5TNEUrFxaNLHzw{kFV% zV~i<`in$7V5N}K|!_VK_|b23BaAiP>3o^#@UnoFgOuoCFloFrZZ72Quco_@Z;fzNv^GAndCiInkSc*wkVAbu&m^ch!j8_ ztDl?4tt(|LE=X*^UsTo`>BNSsen?aIG(MFaGgwOeLwN!iq=_K92{v}}y9G0wpIAtL zyb-$&jDB|3woZlzUIi4*Dc!X~W7SU6$sJ@9?hRh?d(3Fp6a-j1{r^Q8u|ufvlyOoR z(arG`4rx|EbREVqC`}VX~g+n@CpG|SPxJc;A zf#1WrgNj@9rHx93!*&%G;XofybOyl9|8~7@Z;+uW#oU1Jk#3 zi7)&;tG2wKA&&W@L1AUxYa`gAiLcx;f2xPz3&Ta?^F?a|mTd_m2)uVF7H)S=8{ArLU}$(q zO^0>z0)?I>DyGwNtjo-%G}pvHX9aaDo~~0>{RWZ*-+p)T4V!P_r$ukQ^I{ccc_&!< zH*^6|QQ%KS-g6JO7WDZee)&4O^QypmbUcD@((6OBrLH7U4z@wW`|;}a?5v4ge;cpz zdYTFN#Y7qCb1GLqdpnLx>i4SNyJr!0olU2Dw^xGfUIKM0NP3r*0EL4pvwjh*{&U*N zHrfr;{Wdc+o$S)bMW{C;F5V3Y+PDiAHFJY;1MV+{&TM!buHxigU!h_aV(|B_jak_3 z1J;_Tb^oTE_=V3CKKo@T7f{JX+q2w zD1H-^3v|p*rxTyMPI(E48Y&-1axv>5V@vVe?|hsB0~_gwVoOq5VE)i2Ejm=U5z$Gn40= zKf_^I$tPp|MBI?fp;V)LTkbbofkdlT-N?i8*`5rR_y5rJmO*X3-}g3J+`V|w0>#~> zxD_c<+}&M6i@Q4%C{WysOK{gx+}&M6AbIln{{GL*nY_--NzU2#+G|~_v`Ybo@YKJ}S5S3UA4oqzP+5 zQ>Hww&DY=fzPL?ey`jZICVM6R8cet?7oXRc|1@@|ERA?Hk17uSkdoPoh5s^C&$ef1 zfqMN{BsdEs@%eE#wSACSHvS4DHuiqKtYGRv{0T!srU1NKb{Ei@Y+UJVpxyNG(0+sr z2Go5|xi-;X?7J`+s(;-#J@a*Qq4{gw6Vv@ic%~UqrK3%uf-UF+@DXU;2?QUu({j0f z^byd7fvuZv^}_Jq9l5W)szawNc0C~+Y-yifPu#<&;->-+p8(*q_JMn(h*o2O2w2bv z{rX?hsKUW9Nn%<<1opfZ_8*y6GI55&Pc1qyA5G_19i2>`!^OoV+bzh$WJJxB)5_}l zYAR?;4S2U0AoIiHqfrM^AfaB#Cgu7T3*Lxpdjb>J5tjr*KnOLePP()J0g$FC zFb6|W7;{=XyR%E(eCn->y|BW)L>4=t&{DEhG#Z)hy#1cb<(bCn3*V<*eU=1&{)+yj z&dDHTDOD?`E5ks^e9O$qPRc$V;MjVvJfP5B?jm1-oay~uVOeHm!R_gq_Ql?%HlMzazdsko@@By#jdcN zxXdVoDjqV{I1snvPct7T`Y$#oaoId0Ko!W`t9JI1y5(1$|A1ZD~4Gz{5g zio)Em!C^OYEh0Ulj(%I{uaerl{QGZO2CVZRw8-d3;7)xts5oi8hzO;_Zdh=&2Hk2`GB#+aN5Y$H!!{G0TazsB1@5WNJeKSadxR+zy&(3jFYCA*YeO z+>#9ZhxU^2dT7XUG&H(;@kxwuQc)3@kug(Kqc~*HcG2Y?in*F*j93g97cdX+Io#w$ zl-h59^m^hMJqV-=%wnYqx_f|d>HfHGUq#l%~1-P>E;Jot!xza=*}7i9g-j!6 z=BQtA(y^SGc~XlpY!3|Yd5V-6H4T7vW1Mh(ZlT3EGZ0lHr1U0a;!rx< zC<5F1JduhM1)aHOuD5ki4Ms0Z;`c)AFHAO`HgtK}!^|YrAC_AN;DenQepe*SyAFILox?p> zcXo}>-ucj5olx8;CDMw967Orx#o<`f;oB?wE_1{%Mo>GD?M#cMItgL&nh?)726sQQ zk4-K3nlbK(aMGXjlevQ~u2R12v%a+0kM=3sCItirG%q`00y1BomzxZuZbP z>@pS~Eu^9ML=Eh{=~!PcSgcHP%K-O>d)fREqGAz!yRvgtev5JWlmZ=lX-c{FwmF(W zU^ir6`xsf$JARGKlJ945h1v6`ah=}zmgCDm;P#U{M~0_FLUYiW5Zv@FQF(v}6o!2N zJz-+GJ@tkXnChD;n0twwGCn8e6!Z-hwgRT#XlqGMMQL*XnCy6?bMgt(&I2Z~Qg8p~ zC>rVg2I0LB*=2ycr}8vVW;8dn5&LXUy8Fbc>fOI)|K$qN9>4w(evgYyj?T* zt(KYxZHHu&rgp2R{X@v=le5H?2JAo7JM zj`?aX_l3Zre>o7ixi3~a^b$LyqkV6*(px-zLlx(lyugOsk{CU1-GL-;=76V2=jM@@ z{UbnD=`oEpTZ6e)LKC?BS!Zryh-5Nw%~vw&(VufSVlv_h4hurwIJ!f~kr3 z|Zr{rSlKeP0f**fC_B_gtX^dk&Wr;wfL6B#l_<}tr1NO|J&@Q zKQ4Nbc&iM~|uOC1IKMlbJN^PeN)ca!dF! zhq2e)^C_INE_ec!o3!xTf0MqN0>#u)pF?VNG% zYayE_``y%)$&i@uY1>`2O~>zA;ICW>cG}0)M%WH-dw&d%AThZ9{n)d}!MW*|=U`Pk zRb`mONQw{~UY=7Z=R1H|;)9*7lZq@?`VQqCD;T(I#c%Q0x=sHkc~_9_#lQcG(XgR# z+E6xg=+6=Oq7O-zfGW55@oVFg^fu50|~ugl*m z2-@W}Y7b1WHSUpv!VFNr14fswTSg${Hg}alBr}3zbtSW_X&~Zj)qOIEL8p|N(P`^*eH)7l zDb~JtQFMP1PZDZb3Od~9pABv&Zo3+IPL2^C$iCuPNZ(GsFQ2+oc#}=i@*0JGsb>)> z*_QnyOG(cD1u zWybf;RmxT7$hBf#`v-`gY5G^;DbPk}$a> zb1!w86u7t^`JQL40QK{)WY>(LMm!s1^&pZ9Ims-R*B!=LVbpI>Tn9N9`+N--v?Joa zT&_arGp(3{qi?_vIb319UTu-MntwHeO3sC0uW zuNq8J(}%@WMlraB)a=mVI=>@~$cBf{&Ln-}Es_=`|1N(!vfL~ukSqiD9>!iK(46;n zC7JR6Yvf%J`v zxO5rRa#)QEAgKTm7;>j$EaH$zmz)!!2dD$5HJ5yvgaXDhP+ z@=O%GcObyLfpp$n(363zDtvK%zJF9#Hi4+wD*Gs`{o6~yp%pxI)x9oKdT273t&Pt< zAO8aT9+^IHU2lg0NNZXy0g!@ElehPcJ%Ie5emi4bsYlz%Z#{Q*>>jvhoBfY9yVWCh z1+)uD1JKx54A5b%oxuF}z7};+Fe%{HgJVA+w`3wWLnq@l9#3}Zol6Uh1iD!APF z@2ywG-c|=~p6P*5Ckm9;D`2DAI3Mi)DHtHp_marEHcgH5CQJ5asymq~&;JbQ{8J@W zxc+d#w75F|g~Dg&k09Kxdi4pZTn-70Pv1rDySeck@cPDBM zr`0Eqj4z@Ph=1?loRyNSXh~D(PA@;rG_$7vaZV|f^e`lNI`=LBN9Q1R#8zZ6>XkE4 zoY7C2Al?%(ACbqe>t4<1jGqH1na{9!Mc+A|d7<6D|CiFHI}0QZAs{-Nkw+bu^jRm5 z(50eLi^w0DF_v*QLXnyo5>Q9*D&c<4nJ*l`P5rXM5zJViyc9;AvkLhZtM~D)H#7G* zx97DirH7M)J>BWnPWdfolldkQ_~@i|bQpf$vCm@m!RpqEX(I^08-0leo*Ux!&|2tUEe*L{de$r?#cHJW(%{wRc^g*qm?$nfJE#JUThB zx^zQYW}qH7+gABJfda5_>wo7F*oPJ?zzCL}9Py~uX8h^O{iWM?Wm8J7qaqT2FvNm( z)uVm#ELaY1_zw;dZV0Bw65nnHGpY4LMm7SP&0pI%VGM%e6Fj=3TK61^XJh&wUltTJ zBo+{t^!D(5E2oLL6!6a{*#EM~7%bDb8lhR+FTJ|`Z2g5A#jJ&HcSZ0_gYr|voWE++ zQncRfH6fRnt@@u~Zhwg^07nU_K;Bn}{PzZbIy=MhSL(7rVeZeP+?5>KQx1%YK{wHJ zgD%$mRZL<9K?}qmxEIl6LcyC(0whu<2q<69QNp3zeE@ezs!GDv1Qnqj>GFZzyd66QXDK$`T5N&P9NBe4FOuXZVn;&1zWrPFC$V~bpHUD z2Nct7G`${~1RpMKz?Vv|dlce^IEhG$lU$LjqRd&lMM~K}Uxqmie)_ae|CfU26H z?}2@>E9aiCWIrS~aI^dnH>>H{!e%sj{Gt+nMH2#1@%hjnr-L_zS|;WZ4PO*1#4=Ho z_`b-E=AdEfTj!r!9o0M2y_Qe2T@}8|A>?E0^ua>>_&fdV2`VoB_m4i@LD@C0uQR%G+W( zMa>C)zUNZxS}(g?UGz?;zoTGBFC04u3sx5s$O!N)z6$|-DF7THnKl^*qSn7Ck!1(* zZmqNzzeYY!Tfq-CmiveS&MTTcpO<&mAE8iPsFHYwH&UM8FHr=pH%c1h+M2T|R<)2bK@giQy8szXAdc@Wr+Pvk@wY}S_pCfi}*26$b& zU39oA$sHa)9L}gishMdMDW8FwJ@r7AEMU3^{|U?$lL6&HG{egvx-5l{^dN&L>ow!4 zO@5aUsfjdUKh=SX`WKgOndTZXJ}MFA>LIR$55%@ff}%;5NQRI&1~=)^nGE>e8~l$Q zpZgb=@)|1qP;{XPZmdy3TC%p--4V#p0J-cf&@w5|vDQhqGLFflWMjLr!TWbGFZ$v#w49A@ z>la4_OHX>VJxl}rr(3E%PyS|dPW*lH-mQCqICzk8dfg#AT|R|0qB$zwlnLC!sB_J5jHYa*`TiVDm`)1h*?^otFaUrR3`-G)^3n#&?DeU6OS{psAanF@Kl zbp~7G>Ts3F<*1QXU_$r5XGEa;)lyXYD4u`CNKBOZmo|`0AkUMLa9VxapRSa|QgYFn z+L~(^V&-`4XxbVLhibE+pvFkLBA(|{@;^^MTcyM8DNmFD)s^enozS$OT*21QM0cx4 z64_@ktd~c}%HnYRC;x*XT?`v#oQ^^CZ!;FLeXt!&@(ISjb(=>n;*I38PYO&tiIPioSO1$Z;aJ`JTJ|x&~#HZx#Ky{94E-h)YY+c ziZVkh(5*Axf~kQKYwPQ~7$oec;0xT!m!Ce+4E~7tj9dTJ!%)OX?AiaEC;os(lHdsS zd@-q|I+s}==r!1HBh~y{hkRTRR~Vnl|FA;;TebA;LCrOU;_@~dVkU`kd*LRX!+i51 zks^LwEH|Y)$|kCC+bTOXY!JftJQ^agkvReC7tMJ0bZ8XmV$Wg^tH20A+;$PqFSv~5 zMsp|^gA{$kc`{Zvtjn1Y`v^$^EL`aB&JsdcMBxYHhQ=(Ce^gT$WaNa3jzR4oml34k z4biSW@RkN&2m8xwg>sNj6O%RPt%cA#3S#z99SllThU4(#)hwi=&M+lM!*dWC_gG5 ziys1a#efUp*(JGuVd>uq6zD4yTy>Bz6ZtrQR}f5`6F*{B@FD!S5|4)1^?~)vZu>`% ze1Enr%jARtVYQjSU!p!DK}EsP*YK{5N4}uP=Rg}K6SX9WvcNG5CH6?`QNRqeeRz)> z9)>hW3c2pQ%A@lW*|N)ryqJJZ8r9TA12Tdyr)Cb40Vh=^sqGrV;D0hwXX#N^#&GU<^qDqO`Fo66WP8~R z)E_p`Rs7#=-+{7~VS2*WMP!5P#={ORdr`E*$3$kdSj>b5rb+`cp5g#i-U_$Ae?IJLU@{gNey2??+B`7FaT~Wx3Ohgru{ySwpCHvNVG6S{0E< zW62^^JW}?1?KA|=D>Wt^`(|5DHJ@vHn#yZl4DwhJvm{0X>3iilYjyU`BYU$x(@#C} z?8jL2cFuWNlM7<^)C{{YrX5e5AHKyxLYIrg@kdgozl4!f5T#P(Hb<)jw$ev8Y`FNQ zlHIm2#?EIb5`=m$aSh}wSKFl$VSh-Ev*$G*`kjQUHb}9~Ef-pZ6dL|)vBF$QjJY-P z$`l*dc}-n3HzD?g1!6%FHA9U7J+gpkp{R2_DVTNe+yQ6qx>bnlCu{E{9zalw-2e0Y zJXt~jQA^NRYu3GjiRx_*JL>di%rB>e2=au?;~=5iVmC~%mRcMAp_es~RyLHz0&XoJ zsM+DukGvridjsSKD!Pjq%iAm51Q$lEcgPPae8V9dhqT>#p&JoM(sESQyV+rzC0K)= zOZ!GC4#thv%N!`skG}bdZS^mwH(!OU$V90LUeE)wDBMEPQ)f=CaHcgjxseP4YrB41 z%KU(}zK3p*@dAiu#_1jKIlC*}+pI;>|ERrk(z<0hIcs@@{W9FXbNjv1c!amG zQ|4Bkz_-_S4k(+GixU=*cau4B_x%g_#>a#L@SU` zjDQlK#X~z>Jyl@aH@>A{*otkuy>-ThqWg8%!P9lt!pe#7ibavZ=+IS?nzFsAX>Tu= z^F()@SlPBUp~+ZWK{4@@YGM`aL7DQjDc)KJ;{r_coA^WB#k<{tLN8K?JKL?^6q>;p zby~OPaY{qxOM$y%b%_#pdWR1%RKtl0xD`6&Sic3nkl3aU29K;D*S+p9I1cE)eDwUz z;Fa!;{69<>?9T+dVBA2C6cHKLAC$bPsBkEs2<3=m$#G)SJfCFT(M z`EyvZ)YlJmq+tTcX<^ls>gMD>)cYG2s|J>fDN;cp=c}Z7ugvwR-}$yGClFJ~qC_1@ z#nDrT{EJ2-@V`!t#r=YpxgddGyr0v{mO-7(Lf#LR96{j65G8dBl(WDvevd>%s*jKd z_enBkK{KWOEN*<5HDL}u*Oac3tF(wvL78|pp8x^w#%6{){!Pm9yFAzFkqj0kvz!;% zUDaCnr3@rhN)tUHA`$#pXEUY#Q%q_maJRy6XZsrYlTl}l{$JxucSRpu0ZuBv{V&0k zJ)?wB%!BcviL}cC(lxd>E7rq3z-n$+ zS^=McwRLs=T`!PU0Pl4$<>Eqx?RGr_)Bhs`NU*IeK@T$nlA*EYDqj!A;&1|K(ZS(0 zm4%W-k~P#~MAx2DNKqznd!i`rmPu_gm|lm30$H-uf3r$aC^6}qcfL=mIfruN^`Tx; z|7cio(!tC9l%$}@j%Vo<;=7O72(PGA-_Ta6PunzO$i{{%NFMrg*@u>onq0|)`VjJq z)*$J3UY!gwk+w6nrJG=)=xRN(0#nbBlv|_2)p;<-W9l$ruv#&G2=ah{0(`s8u>*GU z)|S6cV_{6OalL-4ygu7qtwlel72$k_2qua{FRGxslW=p}ib0>2Bi~(!-fP`_q4)M( z4Y=_oqp#=s%e*2fy|f9-saOy}6W$GCHE|Cmb=yswa98nk5(`Fka- zG$r=OFrYRw(Krt5lr7xyr!mcB>9KBphYp1Y@)xTuLs!7c!@}YjzlR{Ts@s(h=TZnd z1fp)(LVz9~GIDI{{hCVuBm}sWzV!0*i`I$cKzZC8$Mnuw$28$qJTUgJQ0`a^w6lwz zZ$5H|1r8cX^Cqqx1YFMcpnrq3t3?$Aoh-DEO*~ONL`3YLX@pFq1wc>Gs9&hPVb{|44x!4Xs#3 z=1!3^Bp3#-%UYx7wypfJK(*`{LPkWj3zJ(bzu--2_c6?cGwG>7Id6pzl6g9wAIWV{ z$4PisPp}li51KMQW_BTNsk5@%cLj|Z&TTiDF6ZpqBpb*_z@u(&YmWARhdAY#SGFvF zxu{$9k1~s*BAmxWE@h?U@)dA@p-0KUvS?V9AmoQ%A!d6Lhx+M+r1*qhrO`@&R*p^v zv*kVZfG=0C6Dy4qtgL@(ft%+#6fyC(-RG*=FS{aETb@F_@jE6g(CaG*5$tAmbmdK-vRe$`4gep4u$D zb;)4}+2c!q&a9dVFU&_!+U zn79*)XiRD#8b$>0?iXRi>gP&RD@jc^eQ%xRt8NP7L66OtUpX{pD&o;{92K zC#kK&y2ARs+q!%5!m!zokU*20tsCXIKjkL=?TInHRYN}nt0n#jLdo5?gdn=2?iC?W z0v;8Zqb~Ueb0^OoK>ikmnT`NN()HR`rC0!+B7~ji%!~h<_zEt`ARIX~=Y*AgbO@}@KpkqG2`2>wAWxgSeULq#D%BB-d>lqh{I2Ndy6=`y$&=1Na zZMm?OQ&h1`pNllbrr|8)a6A#O=UOiIB@Mgrr*y+L&#KoCsXzx{f94X2a$@`eCo8$( z&YED(y=__k8PbmaNG0l3LN5{t8DrwH-eOm5#&o3o9OX*kjwu)H&hEXW(S#TvH(iL- z^3-BW{W+u~d~7#f{nDxuuNBUm!@pY>RN%5cV$Ww}QsTfv9dPQ{GCLClvJsMK^<#eY zZSmBXBo|-Rl=bJ-`WpX5Q0b?Cl`>RAKYcNlHyb*t=z3$MSckNnrXk@JYPX zspZ5N-s51?v8A^`v!)Jxg9nm2^l9$r#P01&^I7}p83(XP;1j*Ddx;}P@cq4;|E0~( zF<1b+D)!(u?N2N%P{%8DR^x*ne-02D68{mM^ZR0g^f)xuYYUy;!*_6ahk~c z|1>UGVsA~P4=U?`8}bD{Ew<%ZM?Ny6HY?<-Sr79x>cfB@T*mFX@_awMtt`pg&i!sq zQknJ`WxB`UA?X2{h@_IcZ0{btw!?;C#^g;cVfa+2f;amITO!g?NhDTDH$g%5ikDsU z?*b1JbP2f?xTC-7Gf`WKKdk(s{MWpndB)^D{W-4M_4P(Ej%KT>5121FWO=iajx2W4 z*FUy{;o$HAN#8=Mcp!nCCqbQ#V#O$yRLY64P{nkgKm6xVwvMW#a1iQ37Q%k2D)*^B zUd3+)=}+sZ{QA*YpL=PWxDi85w}{4BxvsXIrhXNDL7g^Lga5o<{K~<-W}(AplzeEDK z)>>U%oo>47bjerFL`z%Ps@7M6O`m_x&H(PkFz}5D6fpVvBtop8QN=4~?g0LqwXtcX z5Xzw!heo5~)*Y@vkwwlGg*d~GV+;GWEpbDLehk#mC0C`lD|W*DKJj~(ky6w@vLNi( zA%w(zZ0-L+l9i^VGoHE4LGlkd&#gRkp_1+kfuy&| zCljZW{gUPK@e=5J%P#~{K&|3pl!7EY?#c1TdJYsdF;f&Yp=%OScQmDc1d&PHVP`J1 zYLNTsM!(=;grp&a&=L)O-dA}2c$RZKjliEpNui^~X(1PMXD8BaLCY)bG(C!(OQ>4M zsgw%hXnb`D^u!|q;YM=-PamLuF;FB@S(2w)$qYPb4H8uLX+7xtwG1W!dsxAE3jLr0 ze^9yX2S!+P?4u*(zgXP=vc4T2FsCGcSgz7wzJ{E|dIRp7{h!)UKA;|B_y#lMP}~@g zzFZ;c8opm?UAtA}_#T~kCt~DJJk)UyTzE<%wMqP8cT;ya*^_^Us{39)*to}SQ<4`l zia5OoMO)7Eke-!k@P8EI@orxmwkWU6?&eBY0UdzamgDkXnjdTUCf!FErgwcw6SRj!0;a2A`(4HocHff zsr<*=AQ$2&mg5bB*QJr(bn?IFgb?VV3FzUKv}G?*T-pS3%5muJa8?DGkcbFy_8ich z!RTJE`Qa@O-2R+1-h&7}UQri^ZGHuV@?f~?pVZw?B7h_61BP3%!CBB%A|R{N?_g-@nfk4}?m!24Uj`h6!Bu|4!1^bd z(DQ=Hi}{4e6-^Mbn@!Ii|MgMrm3eW(N@UgZQ&N$r|1Bw{xPR0muwiDgMf;Kq`|eUc z4?17^kz8P0RdCA>R-1@K)L#HVc2RlWhT#)lmI+9cQyswfe@oTHWfH~w7=aSteLMfF zd=Jl)ej*4tbOHL_4uNS zEpp}a|33JSsJ6DzE~fdQ*jTK{6j2rup&-Aj4kd+C{TC9vNpZN+sL&>u)6Yp}`9r}& zj6Mra4w)Elw6=#ytG7>SUp%g`9KQdwtvbT)Jqf?tf*?{0r_n!R?eE09#cMW~K7aqz zs97GdfID7GGxLmiJQR?qo6_GWpcU>T&AkkbNM9zRCaGLHlAUmD3k+Oyf+DaKbp_1! zX#8nOz*(0T1%BGzN2tXYxF+kpqx;S5Do12~aMrGdCnFY4&(jOUd1d4NNxdk)VO3f? zeS1L%Kv=P2ULCM;YzqX~hQXO#phdSiN*$X(fRO)nj8l_p?D^0R#vRPlTDq^!!g?aS zelG{7Ayv>h3KcaUzC9e)*~KlG#3k3WbBp4;Jm;BC*=Stq8w@!R@Zeq`pA$nhlp^K~MN6|R7=_L0=$ z<@3EQLgwec9E_qE#K;73!aIW7OScEwT!cyiAt^}}DNS#jIHK~V-evKKHG@cK$&qv3 zw$%1p7TsCvS6GlTZW(NBsM=4VJ|;DZ90Sp}XxM(HeDSs^>w+YEqerxv^xUNJ@{K!& zyabIZd{%2lObre7gv&5i`CySx0<@zHk_&{fo;)9JoACv97{_|Hx3k1xjWdw)5wJgH04E!`Irj`;^*<#cz@bcHN;#NlZLT3 zQ^!N38gEGmNpsWBgY(+Q&E+>xO}EMT14!9b<(?|w>`th50RF=rD8u=G55v_Zl!3Qr zCSxhkeqHf`f`*@N{T9~hLD@N#OA{j|zXSQcW<;2X`DI6Ph*yO|0pipF?g~h+ubBXT zx^p0828z-l8fXV&8OD^DtP_C$sv>wPcQ0=^AK~Mf&OFx@piN($pU+M&T*TeF0Nw)H zojdThbL+a(i-$NM<0Qw*z?UII0Vfh;J-yM}67LGacKxlZgpDjLL1=m?G%Qg!XQY_$3StU7HdA$NNOHL!;d7 zr4^dERVrW-BqBoNCcHJNK{Kugym$S7Psmys7|4eYGJ}eO@SSm23kmC{TFG#}_(v4F z4cySY|8zKq9_MAOx`6F{JIlvo!gRSr5mF=yp1;V_RB~<=x>{b=Oo*ji;d@!}e|nsv zQET1s5$%^X^Jbjs5_wUv34g+K?Gh8MmyMWGM-fx}aeir5!H=ZcW{jpGabMy_T=B@B zF>-nb7i)%fNUq^!r1Im2_Br7AHbQfv_^{0+WapZh8Ta-gE` z%s9GBc5RFBpv`blQ0*PH>p6UF4knBRE|a0hv%UfXW_Ghm!;-X2X?HS{|7WOPgoReF zkYLV0><~8EKS8{|j;q?#CgIsg^+I+S$^Q6YY>$GtF>#q2CCzolWF}<;wY`c%by};w zAi_=B+wmixBWd#LD;Fuq>F1%lrWeQGW%VX}=jQL!E2UxgaCDfnkpm-Z4t=YR<{qEP zG;=es;TAx;8z}4{OH-BKbK~6FF#8@`dRmBnUCShbvR&v!3ZI?h&7d$jwD)C0txlve z-Y%$ZE5g?2t}k z!b2r!s1L|q`Ivf7c?1o7M&@kYFo%rc7*Ahu^Z=rRp*}syxv#ecVD}y=SSv=83G-UG z%>)nhU@KT^@PWX*d+%+B#V+#So_bmC)YS8XF09rH?$I3rgt5epzP06T;VfHFJehH5 zb>-&yq;;OS$Nv{ly#*tp;LKu3+&PNBNxU^f!`bsXzx32#daD+F{=0Y#8W4h7)PKc- zIl}%=;)UTvE6htyjs0lJ#LCTlQq!!6Al+o7v>%Nt=}tMdE5?2(hNSLc3Tf zg?5~kE)Om#`>~R#Q6vhf^d#qDH8Fs%qBqC#d;ED$sx6_3V}HVE5}JGtS)M~%7J(Bz0T#@!;ioZIAK-*hf8%<;zs4wM{fmo* z@C!~aeYPQgDEf586q7Ry#D@h+F9?GB(fdOr`Che`?%osev#nJH){rHdSue7N>B2<< zLCC}Q`BE9(z4iK(Vf{+G9e3#IJlP>H#sV0< zQZdts!f)R-7;xGkZx;}d>!`Fe_I3RH#A8oJ1iDty17Qll@PfIiu@qoa8`Co|3by7L zV4v%;ESe-B>@UUM^D9{R6^j?PSR$7yh$Rh9f-hvr(1Zm&J%1Zo$$tJ7iQs(tH3+q< zf~>GHr|0CdWK?!%_A6Xu+y~|gQT7{VcHisog{8NIbh6v7)L9rq=aeKA=^6Z07Nhdl z3hC)YxNTf_r-yNC*ZlWyUM^9hs5Qc;Lj!!_2rCg-%;B5L* z_zpf=wqiAhXruh>9D=?oE0QwgdO8KA&(pmnh`L8*=<43KmktdX1e4j%c$k!LF3B>1 z=58u1PL{^*ZENn+Lhc>>5$22NB9D)YS?M%b} zDnXBMdlS}|<~u7azCREn6sJn=0M6(1<}RvF64;C^n)AE+kcHDvY?kYy-VFcIP17Mdr~{rRVT zgGD}A{NyMm&leNmjmx({;BL*+jaa&hc+fnOwh%-}Yw9ZyfAS2if7da4O)k-5WD$$SlyT%=pOTE0W}!@Sz;PxcFQc&2P16GL*J!zc)U2Conh4 zh^@;f7g`<<)J1s$(Mir!Gm~K;VS7$h|xy8PR>9QiCj+>=)a;J7>G+)r2{=+>yi{if0xhJoFKDm%UO zuVCB{3vB*loWP1VcdeYj;WE9O-YZa`=ya^>Nz;d$NzcX{r~^FJy&;K#&i4jX2R?{B z{-g6R4H8)&7HI%(Y+l*q=>9Y8==dyghXbj|nR9{OW*)Z&gM6GFUblQ)O+Y32he81G z)$5V}YS947$>1K21KoU$9q+OUMizCzCaZA}s1^DJ`0aKLc+2oo0eqT2Kvli?THt=6 zT?W{K-T;rFV$drPVEkZU63X;5D=f2;L6PVEujF01niwpagcv?tHvRFL>GTydouu=e zq{5Gy*(t$4{muIZukOZcMUNjWur8;_>P8c5&^JSn6${ra`fp>=!cDvLm{YizR7{157+S&lga z=15ORw)ff4P9ynOx#`fx zcOHzk5;>mzh8U@LSmdtk+Jt_S)MafOepv?2&z1sA7cM`hHDMJuHt(%&F|8!e0Xkg4 z>>k)*@K}~13RAyqcS%XjEFyS1(8^J7L;ndHAk=6PX|6Gj;*VHGNSrB5p1=VY*Hwme ztD2ll4(lhwIpg=G;R;tYtjLjw4i{&1Aq+`m>9ZZw=k#5LfA-3%Lt0-=3oNMI413C& z(bBL+EAg@yyyw{)W|B3p-a#tZ28Um;3xjW6I2SB%s1L57MOQl{61V5q_t4b;P<4O% z22gCF--A5Gb~QxvS~pH0g*d~_tc&r*BP-TvL}-00X(!H;(ZztRuB4$Z)< zM)&6xDs&6=GmhTBatA0j)i21+4f?!qG+^LUHj^$_eK+;w$FQxjcbAdRTd=kj=+kRK ziva|PivMnpGTl_!!q{m#>Kr5B#GXhigCGQTUpy1{Aej(Kv z3#7`dQ=~Rw*u&O)eNtg`N*TY)wFR&|aD}XW+XiemoD~K&lvHGP8Zetk;HimUl@c^G zExiDIaHLf=9g192A1^}gva8$e<$tY(v!a=OZ1`t&vFiWeP<_s19br~tO#0c|?6Vzf zAuE4KG>cp+;w}w__I;CtIblG-Z{Uj^YrDE&*&inxsWz4;rztxH z2+)0az}fW9*5;^(Uv*nmL7G#jAfoI%RDf~kq8+! z@cL1Db<9){sz&~(aK2h=CAm$o@1;@}w|(8pamEU7@Lvu0AR(d-cxp8<&Q8sgsOROl z-0txUJ{>H^IoT2m@SgiFgW?G`Fac9ide8>3Md&vX9!n5pKPVsh_P&a19zmBNY{X(+c?z9|M*qi!F^GROfdZ& zA%d+R;Gj~Y8(lk=XF7`Eq*nL|ty}S)WI!wOsux31*_3gxAN5Z?n&NulzyzM`e4%zK z2WkBua;;7bR}}Jd0-9x^^k)kb^i+7sXc;*JCi_2a+_9_zEActTlISo z9qff-XQ8qN-N?eKiY&qtgot_@Y^4y1GnIZ2s&J*@8i^!+^oT%2!yWeeggio&8rVNf z?{_ETeAnhHw~DE|96mBTQ(V6QHWbn?Yk*gLJ|x{JsTk~_$N&7*;Gr}-$wQkMO)Pd| zktO3Z=Znwj*<~xE6`i)c!R?}8cCgMOl4rX zTCSQ$R7kpgc&4xDjtpum`#V$l8$k=QKRvg~ht-ispMYB=^-oQZB?41TATPgyk3yiG z$F0-DNA&_h`o%aiq}XM~hT!vP#9wC?9!s@BIogw&_^R<(wBF#xo*HJXYb3`RI_VA> zCm$tv%3qw%g!~BTBkbZADx%MveLr3M;k(AcgJOm+!I_Az->Y&`+69Z`bnq|03hVxj zS9aILnH}<_p8Y;Z(2pz|EdNOzixfbk}cI&oBa;|gB)jyHqUU5pKH2eYpy)oP+>7&?H&#j z)UCeEE^?e$u<6ZKszu7wl&YAHF~+ec*iK5KPR~m(W;+;BJ4gXk_G}&Sg%Y$RMgn_m z{qI%ea`pf&@QjvO6!Hy^p~*Zg2J_0=YGq^hETi(dX0P) zE%G=*()VG^sWdUVAoQ(n8K=08d7NEQ82ve->FGyj2B#oUgtBa5SabN!9r?htZNGjd z+8{m4qkNc_i-FzMWr_DU8us^Z-8npc^UQA9EcO=^^^|=D$B(-J?rgrLod}bJ0>R%$ z)Z+g2T}LXNPv^gqk8`)yg_G3s#W~xZE;c)rv6@6>gKp?%KECt0T2VaO6ssGV$rIKs z=!!0ryo`0&W%a>@`v3J@MVfAu>uqLT@&rHBb#s|ow{G%^f_LZne{Kw zBC@`4?ifBy*7&WyONe)bZx~&UHwP7^QDCN1AKan=rG&sPqe6}(>)KgFW&1Mwdh{BJG=z(rOFpdf|1U}(+?>d&zTOe zs643m(*bOt=S!6%j^K;Ojx@^SokuK8pgR|)4uZd#o~|3%Z#nNTXsI1lZxd6oNW&Rf z5OGCQ6^5I;X8)iv! zi#+1E)Gu{2`{Ex-No!1b*2V|50UN*QPp2v;; z7&uUxUVyt#U3vSm=xcZvm{^~apdu{PCUsF6`QM}qZvv~FFhjT58Pqui`9KU0^E%m( zZzfioirKXvg_5>Y@b0b2?i{a)NJuI^$R2Dj@H1XSxk9nOIYd9p5WGd<3Lp%O$kP-a z!OXc2n$-`^VO^`5@V2b4`!4T-O`JsozYhsNwDfV?l3y8tG4{ivDL0Ha9a(fScF`;)9Hv+Vh!=yN$>lSC zW^!DIRhLlt9Vg0%w2>Qnsja=mU~Jr5*iQuVGt#-4wVN-=t*RVIlTAytV?dmyV+5Pt zV>Dq8{18k!O-zVcqky_sBn7CO5njZeuXm(DErD0E$q9=RcLYAiZSDB0!Aj;iIPVnU z6BK3v&hKpIsI7{sSE`4_nt7DD6@V|EtIu#xSU@72E`_Q-@q<^?;A`H3a4I^jpxh16J0ph zUI99Bia&t|Y`6|kSJ|H7L+=B)?=|%pFtwK5mP}vYU`HuSf4W9=b6vIcK{8%fbzjci zP#a~D^chk^3&w?q=mZ{LSVH>%@O$YRpT9Dta$qWzb_;FZ|M(BcgJ2h35MaVj{|jl8 zKIEiya)M1UE&ib5`X@9D*7yMg$>ef}s|!*c{$N*%5cC4V{;7#qgRg^LEkI|5ADxAi zCf8kA;pQ9@b6AFpLx}>UEibKb`=z ztG-X`z5OvMo0PTktmow{3A5odDaW`fLY-MY^gI3UE?;n-gZ5KZh^P;VZS1x@6Ii^wH+TN(pyNd^<}P^TU0`TBwQYmZd(e zalP>Rc)*|PO#rx3KDgN*yky*UI65QUIR5wUp|tuVA1+(bmiw{WL3z_jqdc&u&97iP zopJZzZ&zh&0FEk|u;p7E%|p>z!F&wp$HEEgUF=9~9yY)$18n;@C` zSHIAR3Omt%By9PC?L#FocK)*5EAfcN)VIApxVp>=Dc~N{VR@Yc7P$%AWR>oC=KXO3AJN#jRejHnc#nra#?nLR?e&=nJUW-eWZeoII7Y(h` zU%8*jhp_=cmJ~7m%7(mRG0!F_$bIZtJexEos=J8Yp{-qS(Ck5d^A8e1 zi2(N@?Xc&7!<+WJM;UI>)x*XvtK3@1wIf_{b%E#hd;tRh72xRwsgi%U=c)%`L~&G$ zVA#>clh8{W5H@nV3FjCjeIL$dh)TY_VNQ!9ojJdS9(I{*r3JiqRdT)Vx+c$#}T>J$iEllK$au&39oBBBi(Bp%}am_EPv{J+Sc`n}wXoOU1l^ zu3F|}Y(g&;OatT2Q&amKGa@a5pNGl9XL%RsP&m^VCwF5%+2;McwLzH~0#nArHHM_= z#=rssMeHdnto@f)p#PpjcjZ5_7G%+E4BeO*H$NF|8Wz^FWQr+KOP^MBXAIM*WMnW- zn4^8vddn-m~bQxUAvPUhY3*Mf1Bn?KY(rtrJ}7>*)& z=gKk_xyvMXy58irpZF9bdHBlws@ly2JJ9O1!im4$@%Jz^0l7tD@ULYSL38wT4G+al zqM-Y` zsRDYmqarx4H~3oOnr1zGA&Z*RjF-Z6HKIbLE}F4am@?$*%6880Q+?w<48wUA+y8T2 z0Y3mJU+Z-n(Johl-~1`v)V=+a%|#5W`1RmGV_SW36c@Cf7TT%sTxkfU$dT}t2?Nw; zVMh&kvO^#K;qe7W5KKC8a>JJnX2^%Dj&P@m^v*kGYE4T$BeWERjwF)HNZJ~huSBNm zWR~<}P=VNv1mC)p4;-deQ13eM!JLMOC(u=9nK?uosw-{XE<4@9R&@MzB<({>nm;xK z!*93d%yQ!MvuIHCufgHb&w7Xq#F0IIDE8vx~0a5RJ>@WA`?ppizR3`6(bWUA=jM&=a z|Cp20UFEktqfb#Yv_p8v|E}D*jZBK2(db1|2f%7pR8sA-hLBF#XKInG*TJ@AY5$-U zPe;{CsK}0qAS`|8DL-tCiC9%=Pvoq-|5M4yOg9!YGxI%`1sAwy2otGhV?Qa@LHIBt zUNN?z2Jy}0oql=>--gY#Y$T{V=6=&N=dB7M5GH(f0QvIV*-}g5U#DG_=wQ5eF(2uWwBNs;#y6 zE@H-}7W9b-xZhdkPDd6J*>Sy#i&7q65=W$wI2m14LZqnViNC~HD|a~gCn1M1ysw=& zFO)g

ja59Ugt_7Mp!P;h34`C3{!nkd^7e7FyuZNiG@M+5}yq?HWh#xFCi3(L+G$ zW~IsxXwH=164?xwalvscp$n9zUr&Zwd~;Pp{_M-VhV@bJw7~}7ni7rO_Z?J^Db*xHICd=ds(Ob#9CR z#$Ub`f5gV(%JIgpmI%|Zhn^?-S4-tB%Cl*}&!m<~)kky4L;53t+#18J_+b5#oj58@ z2&^|QfVK;qaB!Cm0&a<#t_engVt3$|ckNuwy;H^_FT zXb~`po4t&*+|-MwZqV_|Ox(*5pt=@rqZ71uo^biw-ybTnZqS|!(9t%SJ==KNAGokfBoXAw5?X51wvdjEw?g(Wx3Z$3c zNJ5Mr7{n~`2OT=7#E@*C^195FZZ?QWu0Bt7`5Lr!xLh4O@zzW6Wo5awqm_X*Tcoe?8Ln9Q zhY#_HVe}Xqnb*S>{?xr#hB*>q*I*q#P@nYk?;;^^SSF@2ql4m+z|eo2C?6?T|UQ=3C}W zbj%otQ|9Nd@-wHlS@Yi+i~-r$gZNi_cZ5 ziKp^{seo4wRk%uqIZ*<`4~cUhu>MM;gU*xaA_#~JbeNqD_kh!|pMB3t4!{GlN4@dU z$xoDb*^TYL zJUp*d{!#?dzs_~AKWa;xGAtA{1nRCIo)|ti)2w&-lID2bz7_X&cINiqqgpD&7FpNM zw9GO$)E+6Ap3;vR=%E(-$@HtKEn?OO;057qo2u*LU;nd=8djpKjUX5BbG4uP&78L= zWj=Jh!xN9%|L{;1WknJmU!*tRAx3-)NAZiIHHu+I+@pA}Veg6lE!TSt|K7l!S>UXT zOboRg?H~aQ`-n~VA<{om_kR(#J{9SE2rJ#`$G*Erf$n7#VZzmqUForQ@rq9xtu9USIHV^u9sfFEE+2k!YWJ^eB*CaN& z^LSCwR)Ji#$dxW@Y)^O$ox6?E3UulN$Kl|Z8gI&^toIB3woQ>fu|Jg=*#11H-_fwZ z6U6BVH~A$yoLawej4Wo(zPpMKnh(I_|9L(U)27rqRWwhz-ScBT@6eaC?S-@R| z)LBQsrK{WKWp z_d?_&`DoG`yS2aFWu=_Ebc8#tHEa%#tBxFi?}@!^U0F{~DE*)lkE;~0T7B(8b;pXc zv6U5y;9e-Ydpj@j(5-O&ZCIR`EU5byTffUC<}dh(G7<)W{L$RQ>%P@^^=$Slo~0Si zT>UrC&B5QZ04xuoyG$TkU*3wb#yNUFd@KQpm-J;r#s74{@u3i|mvM8kAd9 zB2;u#;bg1tXsGCxx~11b3t$w?zKm?c^du1N^a=}d4aeGolB-tiA(k!d40*lX^Tmv*`dF#mAq#2$_1}%`K>C3?;eLWrUWLnp){5N8cMN8)d(peo z-?+3UxtG|nxkn?2ZKSm~1SG1AFn!Ndcd%ifXF z)QvqntcerO5nuJyM5HUk7Zt(W;oVa*_AivCi?R;SL*I>wH!uXkGZ66t-_H* zj#17LVRUXFZ?RuRgbgFegT+q6;%a>4bFJ= z%Y{mrI4BLq5cF#lod{v~y&f9fIK8k_-3jXiG^C+e3FqCgJ*(W(TPOQq?-kpl)UZs& zjj(55V~lKxsmIRr{&u2a#CPpfe52biK^(^`<)F3o0l`R(+q6d|G(ZSBY~nILXAVny zP3=f`-)LGR08uRoYqg495Wh*{KZ2^cCiT`|>*{>QjviM87{`kTj-TqMU%QB{;SuUtW8%T{mz7 zir`LpSK4Bb|AwVohhI{AXWUrR^r@-CFbYpGd@1$Hhm(?{!Nd=?@J*lCej~_VM6_gD z1(HHrbS=`ma?Sd(27n4ij?R`&O&_&v%%chj3SLM+%eR63#KM0ByPuTouOS&xxBDkd zcZvU#b6k^yf=@^dyqjY^jd@6WsBdUF#34)4Vu$dXA8k4o2%*+a+W0lYLs^k93ql%t z_YI?>#?Hnn0#jFibs*{WB3=ckrKBU%k#ce%Ze8`nBLR2?cn)8Be&qBkWp!E1T{q7` z)z}s6z7`?zCkacvQJ|dt#mus<2Z2L*xZc7Cs)F|c+G7=rH}CYViWzkX+^C{+f?lIx zO^CV`@?e`yO8Z{q2Z4I8o38O3a(!>a=OAP3IkH=9aKxJx{+&5ZlM0rnj;TI5q1U{> ztk8NdP!&T{ejQQ_3nc!amBtH{mHfMWewZ$Z?&87~CVkBv#Or8o-nsO+6nABr5!O+x zyDAJg3sHm8HL zkd(`LCyk8@_1$YsJ9=ZB4pTNRRI+5(u^=ZeK0^M2U9+Eg+|UA?dS~Z0L@)5nj?W|! zNK6@|%Wd=!@3lFpTB?kPY3yQPbudNUcv3*$-UZu~c=73-A74DQHGC|g^LKa8nd)>E zAl!@`!9#{g2Z1;MuE*I=Ragfc*Se0K)sy1)yBI@YIFXHfu-PDDPcPzi8E9wkkO025 zs(>4;DylYy1M;pmYS%NBt?lcUrS|qWdcwJn-ot=pKVLl+^fvfjIQaB+?>q0`YWqCL zBxQQ|o!B}~qwaO}KErb%;E1$O4g@PcfIV140T|jVcUIEB<(lNH1)>r6P>tt1mPi*% z=rJ(T6Eg*t$Qrx0J|=ghXUrf8kFmkeR#{pza@*ehAxjUkva3`hwjHsjZX9sBp{*A- zq;FjhHnWIS@L--x4w+5(O=jl6{FIg;kFU)fF?z=Q>HR3yR`1*!eOheD6O8S0Y5R)L zG{x@XY$8~2gqrDR7;hbY8_`ITA5T*=VvzM9o*=XUN$~kY*H4UnVi78hQ8|?R;u~t$ zMHg}2fSs&u#}#?zvSZsw+@`n8$BB4MB=DqAM=rP?qBM)?QYHu1znJ7y9Z+#cNDq{6r@_%jn4)wX&9tzsHfqSXaRn+(ui@BAHj6FW+zK1dt z$-i!l{1}b=or$LUgI*zGqL0b@$a`uaaswzLZv zMXM&;3!&F~La5oLZ0I==@qCe_3OK@!?tWrP$rupQwoT!YHk{o*qpgkNlftqByL4Cu z!YNV(3rk+%q`3a2FAPc5?C2s%Gi|}yAZp;wwO!ouY9sY*D`6Gv(?@!*Kv|@tsbf8h zRd+=``^LqmBzHY@)K}}Vk;A^z_|~YGF;HFag7xy)N%C*nior_vW6wz-@hRVj^WuRK z+~2@^AlUGzY41IPdAnt}O$uEv=7^e{n24@B$uH+-X&WTvCp{N;p9_IvhFER60{%fM<^I z=$-wc(y>yGqsO$oYJ0^SiJu_MR$e|l!9&Y;%^!~bG?~9(ekg#AZ#;1x{RtZn(Px`! z>Ate)@-TVW9RS`obqoK09x=|FA^zMy4W<(R_8G|Buae3G^EhOIt2Zce2! zVJG<4{ViY5ZYg=z&vhXcoaksz=b~F@3)=0om^JJs2E?$G&!G)7;NzmZ-7~1)FJ^kucxJ6<<(mioe^nU>IDkb31QsH_6-MWr zMJbH<)kv^7?>Qx;2_393DP#Eb;fKEQ?{e~^dZeFPXVUmbZQtzcT`iffU#Hn4KM-RY z01|CPL=v31n12xfwsh9gJICl5?3;eaR2#R>gysp<#7;Ku9l!}j@zc)_eWF2Sr7|V4 zS<{?bg~VJA1q(4=^C=c7h4!kKd!|++v82u`(!B2q+uCDawq?{FHk%yUt&+A%e^%Rk z3wSTf%;{vXbgxxwjr?{3{z1pg(v#7GUI`StjolgKP*cZw##@{k5%1aoU--)v*y)(_ zthBZCreF0cP}ch0ev$3;`(#iz+-Ewg!Rs@H{EgcH?0Vwr`sLh|>3H@A zm%ij_Bfp&?Q?F{&qoBZ>Q=$`T3S4MNdg$N!iQkQyAe{5A?E5P zn8sEdhCBl6BNkW?Y>a@@2YL$)OHG!Vm&WqE?(L#{AP~6Q1i6D{o)-@tq&V1{-R_A>d1wXHufgH8kbo)5Tm zd08EK`@-&ftG~z&pGMlC&7}KYQ^^QE1(enl8`&E*6u22X8CN5jf=d`|TM&yV6@*G# z89tFl-d`baxMm}Y%AGoz`t2nm6n?G2W;`ZNZ*?yW_$_C#R5Q-s8AF54p?IeB>HVaJE-7QLyGgwVnIsQfO4DBOl7WcKY;FNt3W6$RSB+zNx~ zG_S$12jxLQnanlCS!E)jE(_l|jYSTP$f?uU{MX6O)cjQvHamDsYug0D(oIK0L!a`t zK^re28|CkV(olAKw~+rDw@T&(3;iL7@0b9DJtImrw47L`PuwttUU(v{HFL?){f>%6 zMZoiJR;ktERL(I9@FuONOweU7^ExH4BM9d7^-zWMm|vHN{e7hE4m=Rl;|j6e?>dMc z?Y5IBPWkm($Tm5!x2)FRuWuDvWIAwNZBnM zyK9}Xjr@ea*hG{1;R=p@Hr7C)w34J;)}hwqr?AMmHf0;qHr~Yjun?(3kxVkuKiw7M zMkU7UkwA_{ru+&!Y+3gBED=FyhSFD9we#1mRQdC(N-cqGneumW$r?XahdI9;#k@g~ z;oz3xWCWpb;NjHZcw7bRt*JGB?F8XJkP5sh~_IdG2F>_Foahn zGUq+L3^lE~>YgMAGD2#C8Mwt0YYjF(L|)ru5{a-Nb^KV-yFoTX+u>eDXUG=7-$hi*l)vKD2 z?Wmtpb#*xR?0*!OZKy~w`k0i6DBsbxe8LO-oA9(L@5OuY?iRLP3A%}U38Pi}3wX-V zJc5%al(ITyfX9oua>8Mn3?(lUf)9h!vDBi(MW8M)_KPem3-;l`A4Cho?e^P>3=p}r zgl>V3yZ@1ZfZE5q4fK#qepgj8Fr?1Q1<#%2@$3qv+!0~*y+lzXu?LQ|M# z=&zOmo&ms055W;dA`A4gc&nSb%WFT{X&;Sl!LxBVD$b>D-d_DD1%`P)%1^(S8t)MW z(Q-i@9qh*T_fv-B*AsgNtK+^S147s0301;e`;fhRaCb7&4 zqL?`g2*ntozG8;+rL?(}YQDoyK0;LNRI_AlF6q7R6y3L_`LlJb@@_db&9q z#&{&NZTP4paNr|59Ytcsf~_r-E%SreQI#9P%8rMFN`g?m+sej&5J=>3-uWf=2<6X? zdZo*AiIr_B3!r1-#!C6}I}HJv4>o`?OK9eu44AGC88vtEvrbBj3;`W}I}C#c5D#_t!^=KqGHlrGZrJbsoFQ1u zHUQkUtvNK+<#zQ;;Fs+KN4MM2uiS=TorRTAAbCa6bxEDIdakul6{`bP)$P$#p>4pr z6r^^jz{k&)83p?l;)>43PvzAtF@v~X&r-I7q9ce^5*cVKyt71<9ra=!pCgF$C|GTCt?K^fG%aNNKG5#OXqPIz@J}%{ zh7gx&3AZAz)K)VRsl78)pf^JEvM>|X^u9*2WVq!H<0X8kU6BZr*>jakQ_=mMAaRc!1`y7kQo1XKy3?9G zT(%QpyQ72Qv5bwU6-u|WYkvI?xASp5RcGfb9k$Gbb78;t*$IVIzTMn=ZhT>ZugGP! zZ41{7h}$mKnxs`IPeTM-nkBp-AlyL>xW5p-`Lu0c7!b?dzgjq&n!bZfq(>@I34Pu1 zdUQK5RS_@bIIMQeAqEW{?6&{k|L5WcvSFRj52ZjhChLUCpwUKGyer-Pz=K@sEk%l~ zI7&f{u1Wn}32F395R;WS+gjrg4}0nByokcEnPQ8Q$~4?+ykwa5Yb&}^o7YdYGF{JE zc^sdvQQvWXk4PY?Xzs#oAub_b`Pcr1hD>st=AMflF9Mc$o1dbC;v7XiJih4>frVPG zG3lw#RQNu*UKGFZzJ2+KlOXEL!XbmXavf4&qht*Ua?DiGmGIT7+aX$3A_viS5srwx zSwVvT*T)ctYEV6Hk!IrnI;(Z0P)P+7UFh$aivDc!+Q3 zUb-I>^WotgYWfA;N9@uCWi@ZZ)qwz#fCr+y=d$zXNy8^PJQyD~+8 zn&*GY2dAkiHr^Zz1GBzSdFwH}4lxu0-Unyq>h@@WUfke_QMtXex)X-0Xa@1zsz+fB-&)=bYq#x}Wr&4gm3f^{z zhb??P{H97|G_i`eI_11)g* zol*}D>ke(4tqKdTYTpELZ3%QlyMS)kn@8%*?R^}ku`HLl%`VkX>a>llOhckH0z?oq za=$fuK+U-Ql>3$zx|~Iy%CKx;yiUR7;a4lO2Z3Dfcc*^brPE84#p}F%WL(M}FzY?8 zRKp!AB-fkaBU46-xJG!5qZNqwxYj-k?!mbN`pNIS6J0m1sJ~Sn1V+iPArE#b-CU`_ znb+OYgMSJhH25w()SjwrbLh{v7=(^&SUoFgMnOb0SMFJdb38_VMgS5{T;A7w)hf_a zi=x_`hUhESw-!Py#2YF~Lt)ceNz2a3H&=Yh*l2>=34tmOD)y|r*tphy5@ReL;7@cs zsU5l7*Hkf}=U$5+!#ibEgggQ!UNmn;mN%BdCtT*`q-mvMXeex)k+10RR89ngj;=~+is?u2-s9zg?fj3uE=PmBt^p~x?5&&e(WgJ*kLL!%k7e?PvRlr` zJ99r`a66W|{qBz~=XCw|*rO}@k+{p1G1eSW*Pwt0L7<_&afV0Fug;atJehjrhBn1_ zp)zf~I6HuMl(R>vo~pS|C;aA-LXLL02l}ab&}Z03QLm@R(xan;6YRi$%;A1chsV+O z_r2dg`Ee8Dvr<<>j$QX-vreG;z8TgBR+%B|ANqn+~GI3G;g- z+FIF{Q{o+Frluh;*NyrI2_oyCGQVRPV#fErxIrgA`JBWgt&IJw z;Wug9X*_@x1^m;;1L2oVVcu83gfF98u<}=TqxdH(HsxvvWDW0eK$f&&cmm}8)>KLL z3G@5tLB}{2$yi*w&jc}B?>c5)W3J7DRIq9VUPM{>=NV^-t^c<;0I; zb87|T&I-Itbpq_^i2RTeH(WuY!sSvbxB~>v8oS;Pd9x!7bTjX5wmX=Kv~a#tQM}co zcvbGL9N3RtUVUBSH(g>QXnH9alHx@x@Vp~ax_}q=$i&5M1H4K1wBGwZg{hRo4BA<+ z7&%8fdxso~El5&~o_{6*oiJVb_E>VM7j-^YK5Ng!S!F*jh)8^ch1G7n2@+?#|6IxaQhyb(cP$L&k(dz)x8)KG1ZVImqn z#c-bR?_r^)aT@#?2SAq>Z~b?x^=H`-+}h1ux`=&+{dV&oFNQMU79!|Q&w*^k;$(H- z{ercry)>yW8y~p?^ikY^;G|Lf@DTr?3*mB56rjW=)ap1f;H#K#D|E$Q(taY~wbu9Y8s1VjAmm0Z{HW9aqAj z0uVB7ECqm^jyP{P|HP2c9wdO1vgx6BcS!X(`OVf|tf9G2sNJXU=Zx(tRE~o^T6Q9C zm&;NSzuv5*)`&0XYlBU7be*@ju1%TqxkuLxdTVBpbn+PfzXV&yT=stlN1`V3z~zv}e9&kHt@)q3(<&aVep;llls9L-^uW;NW0ykK^!D zf?dLIH$FUqDbG6_xXt+@>a$&$=l3a3A(b2-E*Fe(27NB=d^usP$EyIitP0&skw0mM zuoFKm0-mF8WqSC$iV?a09|5mh?S5meX<(xZe~m}5{@NLe_%vEo6vjEa##f;8itH$d<2 z_@^UQlj&&%o&V2TSllgqv8__>c_uTIwpUZX@k5G#C*7O&_U zy5UsJ>^f54$UXTpn5lW)8tKRVGz}GhD5d%&cveaj&YRRGu1$2SePc@OKExdY=ElGX z{MjEcT2Aee6V|LjZ8@WV#np7flbY6M@un|%#7 zj*Jk}c#M@0rFCE_3@zLsC~@YOr^eHd6Z#a!wn+O;$M^&Qs*DfB%%c9SkgWOkgoPdS zTeoabS?+Q7z05nof&{mTEf;8k2n^@hPnndXeei4iL> zNzbo(Vx=4ll`u!#Um0f5?$su?r@r9?Hw*eItPOs$u(=tAD?PbGjC4E{CvCx&QJ>)S zpWDq^#to#S=h1iNTgGpv%TdV{xN@NjvVyfT&>#CrpV>)~2S#JM4-VPS@@q9;PwlI% zl=3*Oy0&%jY3&yE<-IbjodlO^I@&o9Rufd$+Fv$}fA$&NV5vO_2@q31ciyg_wG6+9fkk|kod8k4g`nnp#=Kt|1+c1Dqb zSaMFP%xg=mFo(3}V*|+w1=htvC{PN@hx!<=lvH?&eR8gJsIdyV4$!weGnMa6nQWw| z1JC8Y)9o*vQL}Lw(HU0rry%p7XJ{P=h=1-cb6vZWjo?a7MJYi_kDSq}q{3>qA}YCv zS6{Cyui8Y2pu=KpMC_+NS7b0^)-JZkNg2;p;5;T^r9BJc4gCl}nwrL;ueCmlSc_Jq zcL=v=5XgOPs!=tQ`nxE;7Tn`{z+ny>tsl4@f!)%=CmR5aIOQlOtl5s_*Pl+{DSsO6{goz5Hh()SZp-p+?2T z65y{`iv{N;Shm*J%FASUz&XAJjiU@Kfcc8E^}*!gM#;c{(n*l?^HG89@z-l)w1?SP zX?w){t@C$#_xbVTMhE%NBX;$p{?88|KW)k?J7C&}k zIP~BPS$w*ybWg?>Ne*>Ppj>sq$g6GiYtO9C_C1G5-844e0>>}52u!aPnAEs^^*BKtDO&j;>VVH{OH4f}(NhspQq!fg`H8!2$ zh{+KPqgR#ZeH-4dVS6_N8lSebcYU9zLs66GPMCf@Os+NlJ872^Op=K|BJ{8HZQ$>0 zV7sn8ywm6~mmFcqbjD?{JT@RIWQkErzznG{-D?BCf1=)=k>i6xZo za`L~kB=7SLu%x@d9ZNUfD1>=&=6(vwCj@ChjtV}E3e?e!yUK3^A~FbqEER+q^DENr zsOW-Chy}kKhP;Su%ImbDF`Pz7 zajCRKvUo9DVl+!~-za?o+v5$l0G&J=7)dC3)A74*0H-2$+U$yA8&tICqCqdW5w3a0 zcwBK?iN`Z+WTPnJC# zg8wY5K!|Kl9Khw8(Ld&p6#B^dse)JRvI@NMgz(?q3_c^!%0T0W!c9oY`TeQmo?HpS z(oD_Je@-HtmVE|^dYU@?^?z%W-G8XDBvH>SOv;tpXpd&8?iKE%thiII_z_BH8XroZ z@yZ98p>R+t$q1orl-#83I@F_A(5#8G_(Ij?6H$RFP8e3|SIKZb4@c`=DV71U_egJ8 zKXTuf$Yl+mu!q?FrWU0jWL(mL%?P1*AQCch_SxzD3_Ba_ZT@*-<`~5(MAj!3QolI~u zaM`YRl^*|x^>F2Z-)RB;?dT5E;g&27MKCOYmK5#@wSJ!M%+d?mFc*5xFj9s>noL%_mjW!~&n&jSmF z%R%*hQr;x7bV}YfEvV7NUhHO1%|F@{1)}OCqRws~(U7?w{7T+9V_vz%&m)ei4}~%J z071}fGK4%dgy*pc!gg&OHdE8G&Idx{LXAl;{KUd}Fz&9KcJN^ z`lv^|!>w6K*xc6D7TjWe;PS5Qf6ZnCboK~q{tc5v6+1}(`Zlagg(HXlLR6*e6iqtVcH;cKK*tx$?jUJ@zZ6o=SJ2Ujig}8HqFr5 zHVjw_Hg-7$6L8GFjCWtW5N#-_NIVOjk&z$-2VKQ{ELF~FW^9wC%{?9Io}6r#Giuv< zDD4Ao)xx}o+}p~be;oa^smE(y`W^qA7y_kr!2=sF^xPvvaWCf|A)cfgG&+~bc zlqzjUoVA~cS$Ra@95?Ggl4EZ48|qgkZEbL(yA$f z{Oj-`7&1S4hO`tVMSH|d-VABgVrBCmybVEujn2>L=!tXPzcn~|dtDLdZa~W^2LXM4 z4_$kk{CdHvnx`KJCLq?4gG%{33U+JT#!cmr^Qk$bW81_F_;JN{{XRp8y}rD;7@Ot5 z2{W!e@a%Ps&phz~m@gKErw$>;D}$||ug29f_{E$L!Qh^@!t7KHqGklR6+ZrM;am8&c!}~w$eTB6YdarHyk@Tq zkr&;!VT#B(=l&FZb{tUnn)g4H`T4OY&Xjm#{C5;RDoSNfk=NFrAF)H2+7>_h{G##C z#BwR*+`?1dH3m%GG=^ljre_}EWzP$+c?e3yYU93XBz}{XA0cD6i%S#@UAy^FX~+dXVh}F@`Q#8fff~ z9{|VrdafHsOC5PE2ylcACLVIJ+N#io}@@By|}U5KAMfNc((S*?w^yHvY>`$z4g4(-4a?V`)~)KLyTF|JM0u98&QVhA|m}`VBDx zJCQ~X=P`GK?nnYFXw4~-2r0kt{2!X$vZ1Z6?b^lNiWDnQpjdHt_u^ilxVsl95?qQE zcPqu+-95OwyE_C+cCPz<_LuyCWM!^%o@0z-*v#aR1ZUNn3LzEPtGH3SDrGeMaVd&- zuD$r^%V(d%&+CsY_X)V57b8lflbAl(hpj7I`lJ_tv6Tt>?Pxi~c1Q-$ZzA|Txn;H@ zINPTagK4mZS6e>KZVt#gjasF5E3lIX^qQRa3O18`grU}rOwn(?%qiUo*PCv?EKN@L zJc62B($%|~6Jo{Q#<(XM{S{x0;a(MFdKoz9K0)ByWmF~KLCgI!yG^7DjirxS*0NC0 z2ih=(S*=*V*V5!l%Y2meR#zu*kUB0qBEYaH>~ck4=iLb%rjp?m40Q=_h-7%)d3R<) zTHBA#=MIV|L_udTGqhq}PdOX+AZIp8ofAK?w94fUWCZtd{F^ya)LF4F>We8eK#;%_y~pejFI5}Qui+m zgjy`y)a;jvclA9Wli7kEkobI<>zS#JqSvlxS*Pptxubbn7NfQb9`+rsEFNSkyE(x? zGGRzA@oUG{fBG8abpk^3m4A*+D7y2@c zBf4KdMQ);bC$~^X_Q$-q)A1}XOrrfWUkno817uYECys~p^8U3<&1zw<>2)rL&a*G{J4JXO{6LdoJmDyUuSqp2yub-a^iX84*NRBqXa)+K+N5D%mA`j zOSVx@AipY3SptYj+C3)#i|&xl>ma%=8wu`HPK;#*LMKdmHXMqX94vl$1l)orfOdhe z9^2EAl5v{1-RYxzI!!m1YlmX~g!dlGu+4UaXM$LN8(ZYEI&D=!)9!IRRS~#lC$qKn zAcW!cDY=z)GH5YLdlqEua;EL0D)R3GHHamMeU%F$;Q08tKyP=~OK4lh4)81rMt^x4 zJ<7?8)0OUK!uYQJ$P6}xEgFwC{RMrsYz7bUuX`E!TzVCJL7%(+amjPLFyfoB*1(UP zd(bj<*y`0)mDAnTBr~SK*yi`VOYokx`EuRxxcjWIdNAll7``_)NHYq()6926TjptA za+O1=9ybd?qLtWeUK)g~8?$E8NCzGPI}Dt;zs?#2h9HowSBhn72q74{{wRX(f8%E8 zy7$ahC-+oDix{_~8rF;ABwZ$fAj5~iP$$TnkuH~uN1;%m)k`V_WOTOUWuLU_Jq5~j zQ{Vt&Hw{6t*)t%>WvS;0l-nk$;`M-6{hib@jwFIkxX2z)LO8FpeIjW+?|iG#im>yx zHr0JA4%|xdHxBSv@M~uayampMhdc&Swq=8w8GXQ4>;J*aDvuy{cYvs|rj-C8%08Bl zdz--bvigSokIeyAL?JrK=jbTf+o+UkkFdW}GM6x1xduD9mM>4iu0fg)%O4Ap(_&A3lEbsZX*?z_C z4l(YJ$;n8mf24H@9phD3X{wdqLzegmj;onyD=ORPwta&Yc=B5iD(eN6<-y6Qsh9v? zoPa$CwiWRz?mLHGtKYzf?ntvaq=p#lB1^;#B7CFh8YAl&W&Ks!uA>k5kF=K|bw)`H z-~A0Uj|7?wL>E87W7Tfl^JzqjSx-vTb2%CPH*B!5ZwR1*lg}u^S**;aKm>|gD)&1> z5cz=%=Q=MDsicms#IeBzoSWP&r?=wPo2>+$Ry9cWrEHz=wDIzPOYOByXs%xFx!aAK zrYB3aoF|AVhnxDn_4r%OF3Qw36Sb40Zx{{@Ox4z);tq~?b|1BT)92m}L&8Bu8zdUO zAwEZD*@Gf&Z-n25YVNlz%jeTG_QSLT7w%-$Xt?)-<8BBzdnL)azMg|QLqp#^V37-) zv7)1-db|d;w8-Mnl6D%SEiq0IRsg&z4z9eK!6bdBnRf?e6{&gGhz*|?ML_(@qMDfb zO$>%wX81X+pPJtvm6HRT|HNr^hxGNUYU-?grE2DYB@?G`l+n%WsLKiwZDZKQ~!Vr^1?zp_n#fmkKFHA z?s#p_2Kv3~W$>cQ>?2vnD}Ff4j=NwBiFT&Oh4p4(1;>I94-c;qI{Y`C{QL|IdKV8H z9I-WX?j0Q+OVOdi1iyv7gNL8jUw~Ge5ucBESn+8GcSEf?I@qASsiGd?+tpGPQz>Dq zGdN+y{kKX)c6v%{J27M|abGcoiDLVE^y&QCm37u?yVKJ(f?FA-m)Rc$-7DjxO9S`g zYw^yXF2lQ7#02ZHc;=$CIe3E2)cm=xk5>gy^L9KkIIXCP ze*}!neTay?qdkM}jYDKQY5;$8y$QrLV8j&{1IOA5cIi*9?l+>0ff9@xCjMvYw1^&4 z`j|6WhhY&H9G*F-RyT<;XT9r+CK6&dG{|zl+8yFGLFE099?MDsfzdspnIh=veX{Y} zfQs2t$v)<~A~zmJlqoTKO)3oUS`uy3KYC1p?Lp>0C_tM=#-A}u8(LKomvERwls>Lc z)5jwoEIkXU!Dqnn)G zWUf%{e?N-X-!1zvt0VgGyGgUC|L-TsW~iT9J;QU(6FRvpV-EYF`JdH({`m_|jIT7q zaU@Q8hQiw0MvJhEv8LO7r|wb95j^G&o?UFMKN^ea{P}oz=2SYY-`1u`IB76VuH5OZ z7llIJP0C6%zVIghCfXpp+g+t9!pu2JN7*MY#7+4Uy!Bj`19>E+JBjLkY;Wt1ZuEsc zxQ>^+In`)=Hu}D-=F!NFxZ?K7vvsQ+>Io7Hk0t+CX~RI`f(K!y$(O@+{PasWFWk?@aZ+}^HmK9`=@X`KEX=b00yN)_`uVLuQbct;^jYVRhZb0 zK@Qu^iSU1thVW%iNnwDLGp2pxK9* zY#NrK`k(p60K@!9`d90BP=c2$oQ`P5w*aK9lK~+>dQH|7f;S>O_5i_ex}^*}CG{u6 zD!k&q&0UFp)g%-}%GGr@5Pk^I5muW$FN5IR$-s3>7I;;i7{;-k&S9uc^NdhflxNLZ zx_wD-_|8RVxZ>u1pzR=nn~slo;S@*6Ln{d$rl7rHURrl6lvIu z_Yf(F0R~soRe6QZQ*BT~eS125?a1da?Oot)!1^wfB7$Uk3*Mx)x69(m1yv6vIz>o&B3>=#8e(qgy<0F387?cf~c<8K}O4D0v98BYlYFS>F>%9;{q0p@DdgdeU~FKP6HDC#=`Pc zEmA$TU$Yy$s54hJAnN7|j)bF`yh%+WoM9Xf-4)M9Id7?fOe`!TwFTixPdcJtj_#My zIP3m)&#PF==B88p-P=k_3R0O#L)K&W?rEX+9M9C{^B@Y1w7T?*eV?r72BO$G6w%q+ zdiP3^304*5vt9dtb2r8CEWBZKivlrvz~ZK=<9SFW?3&dUe|i4X?SY;9g?jcRWU`dg zLcD`gDa|$g(CEbgiVC^|07VMyDDi_`JdQiwtq!(sxKOn|4ZZQQ$Wg)6eCCzaP zqIs%8_j;bs#9CR?HOrQD%?S;go)XB$lK-uK?_F}=vdeuz5q|jbj<8D| zCyLQl3h>YlVDFj0%hY{c!Ro^GP8(hegff(eCk5^p_e7<^s;qCuH{HkLR{t>Ech(UF zo)1gIc$=vUp?$k+@zYfs{>~qxkI)f~qME*6A3;E#$p!z3>)Fb=zjQ7N$K_T(y=mD< z)1BbkE1w;WLBnoIKoEzuAMoZN<=JvyW6QvqjEqz?zg_zu|Jn^H$NUArXxzG* zh0F%r%)vKaa1~ZaMaT3<4^>bZAiB{jpx{&H!J`I_MZ+i^yU=&WMFnTRd*GYAgniC@ z_~<`d{D}tCpL6r=1465*#DTT8EfRr9r7LGC(#66w3J|3P&EJiwR|jT=tcW4GV}FEJ z45*hH%pi8DEwA=$pYc!bHe@z%uEJUadE!(5%Y~Ls>?=)gdHN5-#gwtCvLUVbRp$@+ z%r1sj%Cd>8X_LX=;oiQiGkN~Jewf+(wW(<><|~`c(!`?i_%u2z+s$Eld#~>$bII$v z^i49ctQMkmXF&L8@D6QH5f(Gl`i%ay^mcOdCOqzx8xKU=LTm0I3O&g)WR+?PhE6uP zxKF~4Q+d&nJ&QYGoS$!#^Y@L4?wqD+^gAI?A-1loN$oeB@5{y9sT7Mr$6vZMIM%_XKMJpte@9(TmlTbm zFy_B7`ujB$PYLx*?*T`kbwtFj-D+yb{`m%io;d%wKSDOJOkW_#zag4VI1fp^+7=$( zF(taK0;OATTLtDw+t?UrWTI+!zk{8+B-?*psN2!=zRz{YH@_;$9sGBbf;5yu-3q2) zC+AU^qP_aEir6SrH|$t*nCQkwdt*Gqil9Wf&&%ulSP1VeFno6X4>D2`f{7LDYKUpM z(cdS3(tIWO#r8$7-*185n3<@gThc(A@^-882g44NRvzwGI16@Zbu%kMvxJK65cNTr z$xAm?11ea&M>=}T{j8u!q3BMQ{*mVWSBc9fAsRfNkzFMF{?veuF;08hf1d(Ahy44; z8X4odIWIdJ!|sY-Hp^89K*W^&eqG+M^;Kc1O0bST)uP8)i+ghMfn0igC}TE<=xZK= zq?TfWCRoAFor%lMAAb!F=gHerEWPcb>rAE*a5{kxczeUULg_e?bRq2~wxqQ2wr;!;@`c zGS7i6`wq zq^LM0VT=k%nS&CknK<3ikiy}@Y$iu^tt*pp35+Y&7`91Gy6poo93k2u(Wz6V6g!MF zpPNJvdMp3J)?{u#RiS**G^&tokhP(5+MWCp_IX70(@-=^Wb+lBF-wn=Bl@S34x3(418cV{r z=}ecvkib(7=HFCepv3^EkgOY{GG53SPc{U)d3@J7eoJqo*KXZmngcm(U2_4Hig$BG zJY=4drRRX%vxjR=StMx4nX8uBRTTbdRpF3R(&D!36u<6Fmyv@}Sw3w$wm8%!C%+}5 zcrR{RR>ZK| zQ)GP_12GWsqR$99q9XgUQyR|m{5!@?4s^Lnux{M!yR$Amred3yC4=?4dDE@fbWK;H zvF3Sk$}Qk`i($Z;U=H4}X;%k{)i~q|e}9+WfI!Jh$6M+s%S^3*_f5Kq93z%KudF93hEQPIj-1mIcY~1I@Y+YtHa0|6h{5}#VaJdq22-8JTRzrB_ z!GP`jgDYqD=oB4hoR5o80VEEamag`laE1igyw7?ra&MbR%l?;q&$plfBYD?h%9FgA zjeq+A=%kShEBa55%Tk&qC~BNpbdRdx;p)XD!kKd)KKwaNbE+Zu5RGLXi>-yM4Rr$2 z6}Kay5<9HLI1Bo0QU%}){CFbe4TX@rcHHKY$)e312IIOEUXDaeURRyI<3b`=K`JXo zmbM|(Eh6k2yaOphhf~oI#h4G!`1=z&2mQmyU7p(4j{n!Z0WknVGC^1H*DXv1AgAO? z{4Y~6kSJ8FTr5q*d?Z>nOx39;U+NCgvwLwaB@E=om765&y59;7YH{9Ku2E&(Kp&YM z3^9O~rbj+>g(euM@#pf-EFs8_lJa4#Nrm2zop zYt_cbZ%3=}z=FE$N6g9TwWmF)n}2ZEFsTUY`eHg!H-rF*n?rt$ktFz^1Z_$!=WmUy z-N5Lj9ENzt4a{}@*wrtw-K#wjWqqc6GoP+6sE}K|*!pa^=79)h5!~|M4%(;O$;5T| zve3Q&&=yJfR>q7>qFCH{UQHciqIWi!_c((H_1U$H%vGL2Gj!xLh`(~YUR=CS7LGiw zkuTbpO3es8ia{Lo zBi(2x2aif}BfXj8iG!1CsD|0_z){)JVP$xHKkAuWeCyqHu(Lk9RcBbQwW*Stuk_#z zO-raR!qT%e+#hk``@%BIZ{a1wzy53x39WL1*7BGGUL0;x8PJ2*fm|H0k2DQ^khG(Y zr@ijuiiiXq6%Dy_eiz+_s)}^g$M@6jXUq+qH>(+od>xTT4l=$5qvEkE!5YF}wI+(g z?6ov<71n~PI|Y;Olmg)En*_qUK{s^hs5i)GXgZ0H5xdC<*5R!EQDm7&N=o{}vJ+nk zb1k0KdrOKR-Xb%iXzn%7`_cD$8ur)C!jb#y3SsV7bQj>^qBaZCsJDS`Nz4B|OqBX@=t2V!ct@#qbO;8 z#2t0nwI`B>TX^Xlutc$ z(lguTyQ~$|cL9^w*WD6~7h9i=>b_pZrQ^kSgZp{eaNNRKGe5X&hy;NSnAp{4qa^$? zfVu*;%Za|fCEm~4dHmYU@$(6uYI*JrVB)-Ng!+184p+?1sx1zGbo7qT(_s;egQW=B|gP$BtJ1 zM57Zzu(WiqBoCf<-5F3^!s0F#?u=_ z`xZdud+fB$mac{AdYY3_%N2^Q1KkEk643tDps--Z6T1lSz!mrAjn^O)!gS$Ak~IHj z4_A=c6yf=C);8p`OLhpSD-0|e(*e8eZfOK&lmQHR>wEVsA95s*Ueq2NXXM$gF#3(I z2tEcI1{YbB${-ih3b>TDPK}j!uOv9-@YmYFnQs;@+~*@+&xkFUUm3K<^XIm-g<*T`CrnB`N@i=N#~ZaZDvIJdEc8P48EH(DyV&@Y>F`}|ZE=saT!jvierWQ4W}H$~@5SQG>6xd> z#P2^B%CCma(n5}REMsaEG|9T8aXEk#2LwdS;r>fZF5p8p(pJ#BM+L`Pn}VNGXZ903zUg`Q9g$;1nj5s-&+M^93j^ zJ3jd(fVL#50ZB9AQRt!RERp@Eij50Q76LWg`hm8Cf(G|vCy|_eTlM*BW1=Ut9j3z% zlKUn^2A#~X$wcrqAPRtI%&pMnR1P9c=x-n>mH;Mu3W`IrBJ1t{v1DBEj5^kl5qWg4 z0dd4op-4?VoqsP+t(rYOEo(ZBx~r_NnoDNX@p!$xo^KWsW<|d@Xmi$jUl>GB1wQ;P z*XU2In7tnwqCG3#LyH}|hkV}vltmMEEIAnPu@r5o*t>Lv%I^Zc5?@E2&xt31SfgwQ z-|@o(_{<5|M}kFMq`uhPqPnsYUY3n2GkAQ)sk!P0RYyHX4u(b^)v;?NPIb7YOlAvL z6L#FhIL$%TmIn>1t!Ka7xkJNeP}Kc3^+OcwtG%Vxhd-}6KNMX#(ycOWIy~2|K5kw4 zi9GFc0uN>UHVT2fMaNsdZ_NvHLU!7u-}Uv6#!{=wgu8StdokLv$@%lDb?|4G*!!kG zmdriUG!u>!qP03$8M6Opy*hdH^n+NnGGTr9JzeU)RT8cpN72>Qy-PpY{MDBKf8+mE zI)v91i!>x1znKBd`U2ha07bMB|MDazg1T*fAIe1)h}Zr`Ttko0;0k!wi3`yYH_M9( z99aH0lYqV$-us8YO;Sv}MZ;z-Y`-vvlw5HYTt?qw5$q6QjGyp3iEGH+Nh^nknPKw` zqlQf_ua7YB51OFMo`oFNo@Vv!4Aa~;27?DdN?J#PAVP)Qq~|}!sYh_s6V+}WOrG1g zlg<5?&vAOq70Sj5W(R2^=IQbyT+dIBgXIC2^F6SE4$E_l%}ZaEvE?SCXs$zG9{tm& zi$>vW6v^z&r$TJp=qpy%j%8=*K&Gq~2e$9c02Rfj0WBXW4P2WGjdEazBx!R>7?-wO z8SLG4t6PWZlPkKpV`LcP`C4tL`}OK6b?Ra!Ss}GCABvV6QH4?co?-(j+_+`v+R3_h zj08|U)$cg@AqbHp>%5UVkyoWzsw>43Iiat;UJGf1HoWh7fAfF9yT}$3JtrkM@`X8J zJ?Vm?rO$uopIkzlKr*UM1c4U9;p*4M>*zbq%&jVo|$e02CKF z6S_Z#IULfsc#|c{abm)i3(NyMv+VP1I+b;;ZN9-dG!v>*efjyECft5a2gMw(wPNCb zieQv}%l;z+rZP@r(JB2#P|Mmjs6-hF&zSTZm6RmsjMb~4#3-h5*UyTqAZs`V8uz^(GZA<^@s*STD5tiMju#QaWD#6wCqfO zdU_c10r~qnc(ll8I-X!clE=Uyklz?8`SUud#T}vAsY~IR9p$T63*}4ZZeDFhj^C>c zx{5CI#!0@feb@Pv68b8aSYvZNfB+`CnId+gniYrBP+nQBgHc#Wm6rnf3UFaV5-4Sy zawu)KLD=3@M=o+CfU&fB3oPZ*V%oNir5gZ=Jm)ap=c!8GMc!~o)u|qi6W}$82g(=B z*Hb0)7k=%VqnsiWBn(7mFP+1*A+NgR@;0Io!C&pPN+ql+2}?26(nya@I6WH#H0wEa z$u*DH5jp=8)Ja{szkXSj=?}L9_x}+uep1=XysF*2_VNa)UI4y9o#Kmg4;rNkj5~ZA zN1zGC|Ewv{CDPL*9SP_#)ABI43sU0f~avxJuBX9C$uMN3pXc0{&ni zvTv5_AA?0MlE)ELD(8k*k>l?1OBA2T;jx!T=m32Sb(k*e8GYE@Ebkhv{!!1d4Vd%} ztp+zLD?h>JeTGu(^E#6UpQTVvPiEii1Ak$;uAY;dmkF=!z9j}wb z4#gEM)rcWy+Y}ubK4ObcC*#RXinM`{(t+kMP2~)sZ@|im7o*9IzY%Vi*v9+u*@hI5 z9g0yMo>>sfwzXOR6g#$=$W)!~hHks&c! zN$&fl%85Re5qOsZ`0Pf=DbJ&tA$aUe`uVjE_!ljcZ&WKP;iaQHwsWw{{cCXN5V(lu72qR;k- z(lVN+Kcz)np%LAhIt^`Kf^kxh+Bx$51f%#NGwn|_I{f2G$1utpJ1@hJc+!qd92Ezj zMe?8<%TFm2bW_G-CfedGBgB~mMkr&QOoOzan*X_&e`u9tk8u4GzEgn-%?YUM?&XoD!5$9!CBO0FmAu3ze{=P%0Dxy>&)5-mCQmel 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 z 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≧X~{1lFuZNH=^CGgiIN@(@q`WoIZ3+g>9@6V*-~H2DjLU!{?h7y`C_T&eQ>wh=oca=MJDWj z@IiO26*~7wjU#xZ_Qpzqq(q=mbhP7Yu)zxs^RFSpQek zKnokbDG+exy^t{WJ2Ocvwr67GfFGF>D7t;(=&5rDc7?c?!ETXMMC=jou{c;3um+}w z(In0&(O6%?I#&x8IrinKZU)pNxmOZO6|-;P=2pvay`Dqh;qwydKKaf`P^lEm_qnJP z^vRPEn?%dCbfY|l)`t@0X;4sq7AS$K`T3=I-1|q$K}53qfFye7M``$23pqjw+H_-G z7@V`bJ*kG~IwPX$erwk=cg_>;X8Zxv2_QpsX6e@_w=#_3Zg}if46FAEwyK|&J|*Q0 z1Vv%NhquJw44AVx$Q&R=(0kjj#yRR51UwwuY%hbsHQZk!Wh1Y)TZ9)o+CGH5Ui9$I zn(p31?MIpL!V=dX$-IFfLSN6fq^F8iNLS0Pt*!m}&e~&l<9AK&#~)aq0B@t8js3d6 zdh!G!lk2xVg~A_l5O$}HKaj0IUncxq-v%RJ9PSeS^2bgf6G_t__-8D>zA+VW$p~6p z#B(XiNk%H9fWk{&Gj!R&iMgZ$*B-l|R};`J1T(SD;ZgNzORX!n0(1yv2=p3x1BZBQ z-8ui_vYgO`NOi;7-EvoLOj^xOnKNB~Bk^N%BFVyOoDq8!2CdbAKRSzu^7bw54bx1{ z$Wu%HFLy(3f8LV)332F99S4PjKPRDN9WuyyI|=0{9WyA%bkvQ8Runq$>bdNEQI_p} z|5qi)5c65nS{zym6MrYoyP_HNG0HV$c-rS1Hg0Su&3iW-H!vg3JWB2SOk~MV?~a4O6w7B9f

$$`l7pLuu2dwpS*6yswe8Nl&QW6Cww6Uw=W-NcIMm@3fZi`gI?5k`rBg#d+veQ=Q-QH#0J|C%1 z#&KSSh#Fso&&xh>nTH1C-C@bf^|%J7J1d$5ho~+vM~fV?X#wR2{%bsdLD;*QWp|_|(S-?w!t(zn5#P$eDU8ZDoF`Re6w?qAfRc&n2-T zlS?YXMK9M}_#rH=QOjo&c|)&dZy37%4o0?(GofR{pk(1Ve!>AV?>)@u1ZrOFaDCdM zlFxmo%nW;Aec)5tNF5Ac0??lY%jB+7IO*$UYK#j*quYJER{@6*_du>62{G}({>zJA zuTo!6hP=-U+|}#=X21Gn%=y{b2jQ!&H<`asxlDk<+1_`!-A)@&@)$0B{#YA$$h*>I z!?)r0>U6dF*n@o8dWu1Gvi;QD)iO7>TVl!x;KGqIxW?9N)1?JJf{VSuht`Kz8<`%S zPqWyv^g&rh0HPnbcYr19ipUqjQ$T{aub56u``>mi@LOw;k zX?g~7ymw=SYRbx2Hl~1AK0p-tD|q*5gL`J~cBT{N*5lR=^4?QyVZUT!!wR_u1N>ig zyAA>@O+li%>eOx8B6DIiCaf$jA|H7fx*bZrRFM1%MUdc}cJkXOY1JALf7@C??Oens zofMF$UFGn8rtuSeHqiP-QfU&RSZ5mWq%fear%Ol81n+uyfF8{tg7~-p+x5a?{`@JOx3PnT%x356!Uebc;Lpq|9;B+98UY60l8h@3p3p&q= z?#U;O;H-u_M0uhVO!auZD`r&=^N(w}cVbwZqYzW)VE7-f>MiR+O zpk&s(PPtLwW#ngDtJG9a+@@x4sn$Ag_)o&Z)Dn7cTSYq*FIQp$0O!hh1 zv&;CE)eoi9-GcnmTMa?~eabWS&_CH$U?A!MN%?5J2IQN$sNSU(#Pyir}n1w-n%NF^aGZALh zaNo_4RaKF37s>`6i>e;XV{V+OwPQ-**dw?XCMd=fWr$sF5LcL{Z{rGm3nPJRm(r<6 zd}m*4J#jeH!~YO;qp!DAbjQFP49I(#Q(&&B^ofHR=rLxvQX@=+RA56sz9Ia}-HPzf zgwQZvlXjrx{Rp=cnBoZf%t%eaiT=F6AL*fAFyIg^z^bufnKbWUv%Kcf(jp{L(ilH} z)X7A*`fbhMV5Owkk5kYaU6Xrtta4|j4wY(aaLjkLeX&j!K`~ASJK`@*ma+U@DzLCgy4*2PM9qaqQXvh_Z{BU$X?0 zs^ZxG>*lzq5*ed0&6DZkdnB?YuIR~!iFv2;;T{Ct;W3RDRoBb4cCXWIc#0R)izBti zUpyxZ!*_RVtWt4qgmvGSdT*-?jpwFve+Mkk?<58N^4qa{D(bnP2-rS49Wf1XR2FV~ z5&y(4nmxlB24E0Y8ix1-c1Fxzr_Vcy|I&l!fbi!Xf%vBT6O^Dq5BPOY#&yY>fLl^v z=xU~(&;9=LmdV=$aLZ$1fty2&FP&bWEYoYk3WTDn5 z9#ZocuyHlQ1Wy8R9#9uTiER_loX)@Sh~$$e5puL2p>vNK;aQ$ci;-E2=<;$y-1^1e z&T`8qBBwU`2LlrCXj!pj-X?AGhatt9FNu_)v zDY3RLBZ-nnpr>7f8{7H0Rf#`m`x_Csk-%hA=r=kQZcta{NQft%dMr0_<~yMrBwG*+ ztar1f+B2>0!)#NVdnXx(S=y{n#6B>}A){OU)~<}!sz*kAEd1pCuox)8yetRJ3qC^# z;{l;TAl%0KwQoZoVK7@hfp6!U5+G|rkpgD_v}Cs-*Hl22{QpImf8Poe(&M<2itR!7 z`{S_bUfxC0E^h{qWnreMm$b>LeKz z#9)|LB>phm65HfTd4N5cePp^L!4a+T;TJX*9-=MrXV;+HB^1wzN%K*3>I{sr5VKCw zZQF7)ksr^r?mx4l%itQuCcYmxOQ!uic<^m_$MG@JR%NyYtn@0=bND$0-|u%`qU|?o zcl6=C?7w*eI#>xZFlH}USe0n;+^g)o7lWVIJg=PEDnexDMfrjtyd)u(#$^$c-!ye$5W+O^TkB~`ldQkg95UksOeDNmq;>p6SI zz$5cpl6x-MMTI;Ls66z_Ene<^k7>5aInZD_kBc;P{b_vo>}z3K_>RQ)Pz*!czPusF z^B!vLRCs+4-SC|`;&=736!I!aRZ7vGNw=^oHnRw3kSWQ8orKR^s_m1b5iIpgFHj&u zF(Y~}svjm9zP{W|a{XGIuzZTs>=~B0=Fo7cKw2K|9r&A-8Z})!O%b^Feph0`ujTVx zj;Jh|Bu#IQm^o1+sXyP#y-Yr3z9=VhTjr*MYr*86rR$lDR>;^spqwE-~!4npUInAh#_>4@;Y+g=n-fP&R zKPmLM`$^&G;Gsz&uh5Bp?DP9A;Mr){R#|e1t9bzRIm`Ph!)GoOsR`Eie;lNea(toi zqvuPgfZch2?y|o-6LjNowTGE&E&`QJzo#>2MJ4Nz=k+l84ebIh4|jH`z1^>Rsf0bZ zI4}dQdSQu($s;>1y551I-tp{i-&#a&2v%y{;JuqEAJShIThyl0!yTc8K@oa?%P%Fc z=(d%+IZpT8bB${eJvjg;SM|EhTbM^U?)V*5Z>xT+cx&qu=6@yeEVL@_1ND4V5K$UL z^+5;yuy9Y~8aZ-SoFe_q3iM;(sWg>_Z+B&3(y9Bwssoc9t#gBllT62D#rg5Txt#`w zn|v=TzM`MYG~L2<2nH{_)W<7CW{XeXqE`2#L0q3vrz<7Hy~)>1bXQsm^Dsi`~5;ydg=H3d+ z%Fpqki-c?Pg_Ze4--Yzu4H!aebD~uZ$msDA;9m^ajJ~5NkmWrseBdeYC?i8}yGz~Q zLJN!a*n96(#23ExrSiQI57>+YoS(X6P>lpOXuF6F?(P*M90Kqu6X~dc__(0GP<&Pr zh*N)g%Q5o@Xpb4Vr;auMUpJI&1`@^Xp9L93H>IJ>P(%(Wkw<7jkY4wMA04R;!XxC3 z{C_l^Ra9JE*Q{~Z0Kp}=1rP2Lf@`qg4#C|UcXtWy?(Xgm!QI^*x=-i*{xb%b+|aw( zYt5>sYKk&>1BmuBQ-A!4-4}qh!H^-G%nT?bTHFs}z{;t|hmoeQhB7T>ua{hGZyxBI zVyjZh2x~N+%{4ZesY}rm9SewHn;(~n5qEmP@X>#e8bY9lS&Yfb7ftR>9OQHaPG~Bh zMs!)Sp=8pnS*jVHl%eceTAhiNkF_)B+OyUy9h-#gKKSNb?4Jny`jJqfK2&7PyrlE`KdV0Pfai61f(TmhqS zprBAlb!Y)AdYOOnZka@@cbehtE~PNnY_rxkEcC$+K=RoQxH>p=-S9Shg|6;=CGdKP z(A#sYXJ@Zj_8c35o10}}%qD6JzX468v3nVMSrPr)&2HAAaM!;1VdQq@?dsUseVqbC zPiu}dz$2MzDlRuTeK)?7tkh;UiH$09v|O7OxZ@{U1t3gi5(Z2IE+a?1#5XRlC>@vJp1_GRU73!G5e0uNER@Wb z?`$FG=RxiWKGJr;Ja(Hz1L(87C?p0l9RWqPba|uEj^g4F8*SDPRx_IV?TU4%yzM^c zn%p;x%u3{S+8+Umn~-r-DZN78&-YnGMCX6P8)cOuNk}X0e`5y=TJ(6LAl$EMMK0 zHm~U6t-qi>(jLYO5T>7lS2QNbeLJs0X6;h?(m&_(#YKz~oX$yCslerGLaY&H-zB3s zCWFyt3IJ^y=jFQs`sVisU>>Ls&Z%Qag&-Xr?`rJtsJXXLe=w+5-`h;glR#9QDO$^U^I=e`=`Xm1&D3J&C-&+2pg~st~;1hJJT7^jg;?oLR}1?c(s! zdw3S&;~QRz?~IC3uO@a_stVOb8VbvV@RqN9Z@VX z$`P(_BQO4y86mHt%5SqR&EYpwoRPkau`VDn`kkkgMp+C?#`y@dGcz&|4v%JBWHvlc ze&>fsCKNVssowvK%HZBI9^N07CFjHM2&r2yKcyF*$>V1;^LUV&N33u{F$9!?(2wgK zoJhp;gV>A7Y@LpDwv&c0l>My1-6VX10=U8T_6yyXEC`xXjPFid5ikKAvmxKUt+o7Z zU3Fk-#=!l70u8NDATzt(qjMnv<4jm)EEk^O3s1<+Z6z0^(w)8#{PMFS`V#>1-Em-) z8QF0-Q+^24%6{~`IxqkO&}GE&0eJ}{0&%r8OXrx!?}28k@MLsM0yt29T3psvPCU<& zvpT7^U~l$%tKmkUVM##=rAY2E-lo}lYlsl8XfMASi;;=3hCS`XfcN>W18JLJ0DzeE z$Lde|pIr>M_hWmTHj8oUAeX?o`urhZQHcTIq{b=tdDSc@3UI_QE z`w2mk9621Bu&{?{7y z>%!KK>*D^!AdXb{6R1J~Y^KhhHBZAI+#zSHUlc5ILHg92|J2BnABiJ#Ebaz28`=?*F++ zsoAxUU8{R#0|0E^_FY1%zlL?Ks#nE6;5`jufLEHC2^P2kdgr_Dyzm^tSy!C>Wnf{I0HmdDZv*jIIIBzLD zl&4d*Fjed`NPY^=ZDeTJGG;PpRs5V5tgRz@ag79&+&-u&3HmfeqXtzup>i*88!U8kw-VOl4*z7aQ#}ka^{8A|Exhkn z7x>=`NGt{yfs!*@~=U^ z)`d#rk343K>MA$mAj=QM;o)a6{U+RFP;7F2^8UT;06VBIv= zT#S%kGsD(>a7ccW9x(rm{n09Sm?Uj;#e)#P;_ZaeNWrO{x2km_uA}Zo_pI>HrYyOS zD2djImi@7C^fFL1nQ;w1`h9oe3|eHekn+#ErU8u(Cxb^;x^oWioAd61^4YS4Qsa4x zUd-SX;uP?^_dw8%(eTUBW9Hhwt63f|yn(&BIo@Aejp<<_Al8*%$kr={tbzhXw=@)Z z=|_GwsR@8hh!4Il>Si$vbow+XV(~7-#X04i?e*r6o>;BMO$-&_DyOW2~GkwfAi67{>WBzCIZuZfU(ZA~U?!Qc2uB z!L>@;=qFc0qh>n~3@c0fWdZ}&`Pi4$t(js1xO@nu(ogl|e)Xuq``3|?AMy|d>Tb#>R1o@;tBqD)Pn>GGR$VBvwYcY6 z@Y^K-^^lAK7mOp@C(!_&DFr?T=B<{_I4c4sGdO!U`JVcq(Kn};JO#_T40x-pz_O4Q z_({6ifkcKjWv07f^j_Cf@T)VYVmtgLPks~o%qvcaR{hgR0i?~7pa}3Cere^s8yYO= z!$5~)(k+=>!EnIBi{Ra?j@8R-Vy=+d1sUK8q0oMpGJT@X&2bBGIc!DeFZssOfFbD@ z#5V9$nlkRoVo;8ro7#z0=bKl9ND)QtQ^>g8=JXh3cn6id-JSRfVbjbOD%1Rj#d%Fp zSrns?#vuu@3(eB7xJG+ql&hcWKz?=HrdBP^nu|*q>uZZ2GMS&D4$>5F_I#qrXih0* zGlsLpGFyfNd^9z~qL6rdSWkbBW4_cR^Kw|x0e>Hig$YPBNS@aJQ-_?78HyabAAA(k zZcYV*bIs>;A_d<=^_ov%W=A?|Ah3Ayx2Bck~ za8l;uf7EB!@;Q#7HnrHuX&BfX{ogPM{+LK@R~nkjaZtY=Q-1E5PyAt_*|i{1RhFw+ z{AH~;x*vOw2&a2-8yOiba^a$bBrY!kVW zQbC?Uc2>E7M@A^7fri6-PTDk5FqTSo!ok>5Ji?L6gv2`N|I>sR-B9`QeNlT_-VrK#o5yrsz&C!E*Ep^%ZUd z`hy>??CdY&B*pSs!L^QiUhfKkk8BaPaHDF{ z0JAKQWJ>KcIi+ULpL^YM{C?K)djOBj9lsEgZ9$>Oo0z^|n~yAdfHyu8R-ZTOmGMN= z{>lpD)>r_)!!ZI8uUFv3`_;R8H&n6wAHxZ7MSt>*e!0d-(ajPg5PbH4f0*?;Cqe2@ z?|_#5rQV$17>V$LT>A08ioT>!xp1!3kzN*YFNrw;5Qg6nzlHkS4MHTL5M*#-Aw=EF zQGDZ1@;e!b6rDl_!MU)@iOR@5&{aG|2uqdcq|f;? zIj+8LUOuN7QZ;27TIwF-&|lXDn6KCkNQHNw3hUiax06oFF?n_9HEYmMOKv1cC8MjL za%|i*P$&uz2&phF

{M?x|uOoADA0TN)CXaTdigx%>ebR<5!)q4VtXEZ+p==tx<( z_=a&megKQRPAKO|@hdRB8|vPA+Avq19{*WsARiRYqy0 z4VWHVoYaJXgXR6t7sZJ=$uyXvhEbF4?1$xc z9R0zE?^0JxKH#pj{c#ncSG0D&j|77yIO^PEqv|gwN_=1UO!NkWR&OR z;udXw=#8`!y%#?zC}i{W3l$$o*)uGemDZL>Ojl~M8@6~Yd2UUC3I^*Qx7z z0VPs1(@f0b;zbLGyX$WBrZJBjqOnvsI5~%a*C9e~{zKD+Mg`7i-&=2rKS{_PYN-~(>;a>9W%O1O%?t~C}-ZZkZou9AwQpsp_R`Ty!C=(iTCrEi!f){kjV#SX%C#H%eCDeXsBTS6TYjfUF?r;1fqa@dn z1Om1QC3~jS#3RJ}`@Rmsv?=3dc-^{n^1){rX^pA_eq1uzZ)n?NqIQ{OHwm5bDrZt$ z*<-u|J!-M7O{lzn5I{0jRO&LL%aIG%{hOw-F9zbCbk7iz=5T4y;_8@C6hVR|Pzix} z_9DUKj1GYq$%`-21!4G8{GmI_>xCK^Fd=w3&YI5(a_kPt=H?~+s`3hQ{h)gg5cTr% z2;>T)vtFr7BedRll+SXC=#ZPJ)YekMFDlHns>+P6g!mzo%VoWp>W%Xv2lz92a65F< z-LNo70gqk}D;p_C*5II%a%W(FvD(N2#_NXxC*Tihazc9qevoBJnjuBSl21!ZD^Oj}J1PbQHi-g2&wQZY(M2)@wQ(QTHW|S7wtwy) zn9^Es$ogkG%O8PF@`g76iA%+HdqZH2Wx zd)x;V70J-Y zg`;m3blCnN%FWce6HZRRkUb>9E-4+G%TK*??>b=|C0W^Z{Kn5q@VX!83*|lgn zKNAZpX#=`~VPGm?nrK7?rRW72pWbKa@z}JX)8A^Tc=PO_R_ovb0wB+DCzdggN&1wt z=P*snd;EontL~A2)L3EMrS~SL?%rN2CYOVsv67f(O3)ledE^=LiTTKBE>MP0>;WvOmlX)oq1CvUZsO9#Ej z6mzHsono$g&-&ncIvWvt)XCV<*VgMJ<9-gA`R0cCV+?@WZnH9Yg?o0i$1)I$$BU7o zWWeAZbVPfrFb+0acB0!aF@B$vnDrnv+aiFLPf`W`aQpZ(Wbt@@rlz53{rl>C2JRH= zg9ZN=B#N|+vDP?2oFKl!``pqzKmT2OyncIPXRp7u1wGi_wTi)`&*uh&wA626x!lYq zX2I#!KHIYUbZ+Hzkblp<25nve1zqjVDm}Mjx`A?4_t{?W`F3X)p39^g_D94+S2=9Q zUiBAh$qcyRCNJ!Oc@{xVNYM5bkoVX5P5!VV*DHh2FL!W%r1}3vKSIc`Gz#xPJF*?= zCR2G~`Z_JCL~&^9Ec#GbvT@WV1-cxJDAZBkN(*~Ucv5prQW^ImdCh1|l>(Vmy^X(& z{t?FgDW3lG4;5#?oD-cCJTf$d3?w2+UeX9XK6bHrIIXkd2!^yfEmafccUVGhN1Ab4 z(lmDEoLc(cNP?d}mK=dh`4B~-Mc#?{7vf5w!@nzDBVSi#Ii5;5Kl!S_5RFQE_UoS? z%FOf{vpE^Zy@a$?!qY^hkl{c*6-VmzSAKeov84$R*9DdE!Cd8Pg zSUz)z9B33dqg&Ax0$RZ!LAC=ph9+_WTDKMk%63=L}~gV%Ap% zHqNOI>OZ?3Z8BK^OqD}o{PqsaU>ij#NNx(jTG#_lOxUun7k z-+SCP#WDMJjNXKv6?{XMf_UQ#r1=7A8`}FksnLP_dqTU;h)^B>xvYE1!=Ui<-)iYG z#3o}r+|X@fGOGcjL?0J*b?C?laTej6-xXi~9G}4oG^^n3FMOwrXP-vvVm$Z0+4Oy_hAj+I8?4-}&AV{6+zN!2AXhD@BeO=0!2 z9LQnG)5pS?a{OEMP!G;vx7LQTE8@}7QEn1pJ)@bKhkSM&x^uApa5S-(&2aQZjrTBT zQ@Z2P(Cs~<_a{+_o_2>Dz1=Tk32Y=eYxPTDyt~SEcNtOMv|ti>c=)y$P4aK#zd<&r z`R*<2Fkh>5{Kd;*^+0HAU+i^&G_n|`CoJK$A^TQNxarr`p+_W$Gr9&Aj2ZBO=Sy&w z>Nh{A+hqQNBi1G~;8zHAWZrh&RR>hF4WGWK2*kG^N~oL-7p~Z^&1z021FExXe3_5~ z8GFd@U+xJUd>oqW5VxLS-ivpyfwnva=qKx456Tc_~?m(`KkL8(=XNo598ghGTJwrTpRH1#wt~L zwaURq?1gH|QhZV}a2+YK_`8l<9|>25lPhGU$5+6)Ewhh8n#Odu8;6_cm^QL8tai}( zG>GRtNC9%WQ6SPE?eUT{=ov zRm~-``c*sVIr~$Tw1YtIrsuG(A|Y@)L=XX;-%W_rcC({2X6rz@{!UGqC;N)e{++Vp z^|svW9o^@FwAXQ(f0|2ICITPb;!bwU>U=2le}Hem+M-9}I9OpGJ4xyXNYc}PahR-& zkq9LcFEGYO>OI{S~p)-Z(+)nL=uy7KnoJ?l%*v08{6v|JPZ?qppROaF*Ul>r< z)rSeUNr#3~827fk+LT2|hc1dGBkGu|44)+L4An{uP{r;bu_VQ@MquKa%|6_nF&0tO zh^HWoFoB8Gokb=RAD8>m9&G@e5u z4DzU0-mJyul3uzY&odIjHcpRe*D05=0Vu(=qEAoIr%_F?sdea35z?ESsC`}OBhw3! zCfYCCA%)u})oQH^+6UxrC-ngsDp6<=L3Igi6~WKUd-sC?u((^U?VowdQ8@KwgXJds zzwkUX=0EY>11QvBe{rZM;iPFvEtMH-5?i8i`DKYwiChymwjtyPLq`Nz_aOIamK9w* z|JRAVBS6~U5=s;KVX{ROO;0^@%8Pp`&U(j<{=sBFo$Y6X~|ktu{{BBp%}d zcEg#T^L*1S&S%N@XoA&HBdxvXdN)YJfEnD(e!dD~pcP#VT77*zm_Rka%TD!e(CYzz zr{UXeS0=A4n7=x2U2jrNUfNEu(OzQA_OxjojqEIaxd^zsPf+ML6MArWyIeT}r>DIi z49T|6T~f}YrED>5OP*u?FTb0OQzLx{0%PU{c#Hu*$?b&2AsvcPM`V8nVY4apnZINq zsOjz4)1rRrjz9CJhcN86eCw0?(nD5HYlPtcgHL`8j)arMRVei{ZspS;*SAj)ihtZv zCX8WY=^-BAah@qKzVOnre8sCS8V!|8i7WCJ)^jfoAUsLa!-HEVyk^WH&%64Nkw1l^~=6J7ObG1*7 z7Q_$JM!53WOp}5@c(Y4>(~P(#hht-KRt^Kx4zX9{9)5u#0x%lyV5IZv`Mzxbya51t zdUcqr{oUO6AO`&A-=JhvUnoDbXE5nSqRim5J>O_KHzcl(%eWmZEX3&rj1s*SK04{bIx3#scF@Wp&IwW|vR?vYPscK%g z<-rhxt$4R28mV9F3Xj`4yig$MLC9{s|5BMtA&b_CY$62w=&Cat|7T_jRiwWFLMjXw zbP~~jGWnsvCh*9Wsl_j*j=6Lb%4O?$m?+E-^$sq-;vo&4t2uP8Lx* z?b9z+uD6=-4)gmUk{OdL`Bj8c-(CF6?fpn}LfPm#ip933Li&~pRErV^1P|D28i69d z6e+0;UOgQ5L}8-oIaduu>n52o3CJ~B5e|_gu>!J4Tx08tde^Z^WFr446)lITalwtZ z5p{IXj_H>(bvT+bS}PMOBuzYGJ5)6|P;IxG7LOj?o*6!9ho8D3{-!&$J2YSq&~9&g zAdP+7N`b8)XdC}b>iPQ)*L_>_U*#Y6tu&_XPk+1jdz9 z%8Cmc&;C{iWOf!?b-#yo_it=^PjA>wce?h!gr9H^M(F|YS9&>=|T zWIlC1VV*;P9o4GwgUe4FC3!UWDw9vr4;P> zkKAz+=k3-NkG8iT0(X=wB695blo5#$+yt1ZKW zf@yO;3-^|`vGNw5O8lTE5~X>JgMbKv)lgBATkw^yHD3-9!PtUWUlwwv<;q?mz_Ls61LxYi4ZyjhSG_wHC2%#Nk9O`=O-CqC*5)LH{&XLeLa;_L*$*Nvv9gZ#3ZFA-BH&JaWz+xP#Y!mNSaNZ|7W z&DgFSk$uN2R?n_r~NW&0~xa0#&xuMeHliA-s6d(awa_ZfR4e$uLB2h z_;#%(IQ7NCj+8+uijNKgv~{tZ%2HO?h}dO0yMexnm58G(#QP`YwA4xvFiDbso4tL@ zMt`^jt7>K??8Mtv-^QYwcp3PRY{REO>4!O;ZnC2)+; zV_~$bK-*pUu_1A1?{BUX6{CE|)-L*k4PV?VI?QqBN)}{gf?`F_e4Nt70EtRWj$f$M zpZjB?qt%2G`KHiu!)BxjZsjRc(ImEzu=*R&vw;x!VEQnKt9yuaqT=wY*?MR1YiF?? z1qDS8??Y~0W71KL-X)h@7@Hzbg=Ty30sorkSlirlwqEM+Xc(Q%!Xrcr4^r?m2SUg< z;3@A3@mt{2!`V{*FH&~~z6h`{CcG*`{!Ia~*H~tExJvq6{fXeiO47>9#sv+XgnNXz z^L=;R?sA={NXXhIRrb*9gmIY*`J7<%lUKg6=8}^J46@~H)11?MmKVc_ zUv-*EE>4`1g3RZ&)6qBCZ>2cE@3FXB$%trou(E^}8J-nsi3+@o%v#NlSYK!jWS!{6 z8+BJ*OmW75h(#q~XA~dFIi=*%Z!Q%M^~1|6`?8wADR!gMX!Qp)m+a`+EiduG!ieFP z@k0?iaNe*Zf3(cFqGq&&-SxY?{Qe!mPIkcO+j-92%ofiB@P?*q1<;PrUX#$BBWV#k zDc^Yh`^2zdpB^G!4pgYP+HO~=bfSm{dG^@#NR9WK7nq2(!aXTXge`l2s=EO^-t%Z^ zO>8yUAo^w$qx9*VwB6R)-bx;FZ9Zg??wwf_PRDe;WqMtrcfB{>$1n&0KZeb1e4;x& zU%$WN#DHQsN37f_y z3Fzp(BR={4O>@e?_rBUY?p{$1!Zo!|0;0R-w^)X#qtM?UB9%^otcsura;`a>L=7&Y z7c)k&lT@8U&8os+#Yh62WL4>jiy4Ru$ec5r$%=xmTRoU`q-SbH1XWB})mYe1$cf%~ z6Wb#BwT!dsr4>s1-&MzwoEYbg!umU$O31f5;DTXzR@w3^n6P;wtjFw8d`>Y61j(^| z@@LA;IyTY_54>u73eO+|7`3;{AwimU(p}r6HPc#Jt@rWSF^MV(3;`f;%kjRUjLtXU zyk#T^qt6LE+Ay)Lh}k!|!#YQR&xq{l|EMoLm3Q;T3kJ-=reQ722)W+S%w zj)DYdg00Q)=yth1A%ZhCYp0_%PzZu0KAz(_CZ4a*?0T-BDostH%_ zpGeJ8ScQblJOiA-%Kg>YDP>flLsamsiniOw^_iXJ1p(0N1OQS1!8W_^&o=k30roL3 zFEhbDkq;Hw3Sf2n-m5MbA$cDADRg z6;BQtMq0YW==otbguT0cfzWsMi`wS5?JhEeomfy$%Gb}cS)%adwzN^CM9bhmfr_`RNfJt>bJNM*q~NzPTZ2uyZpoY^w#LZaLcYeCFN&n?Ultabl9&X~o%lj-8ZP z1t6Wt=V>lC9)}!i2Lribh;O2JaZ9RT9L(jh&ZXJ#|A)ox5#CJYMLFUBk!)ggYr z=cc_%bA!&bv&FISjd`X&O(uj;-DQ9H-%Ny<{pGHO4L3y@D0?tAn<64FM{~{%>Wi0(MYkd@Ft= zH>)#lYE%o#!2YTZc?tPc<8XJ$kC(ZP-g&;m((!xMi}e-9^_3yH41F+6Ad2@HFs+^^ z)QTAa%MKBWNp}Gsi?lW1#3H}WL6~Wn~5y72JdWp4@vmbMY0OBi5!WR;j)pk*z+A{#3Vt z;!TTNS>eIs;~H9$&*YtK?=Bt~8cF|y{iEx*Vy++eS&9;adXY9QiK4SuM)>7zb&A5_mrMlz%68V9A+NJJEILe8$F3;^6s;b47st z?b>8(^_ym?_98X83sQS@ZvRvgH0nb6iV+oCh*?b%bsFmrWUg+g+~we?6{4fkn>l*@D82g>|n3uUCbob7$WwDiF6p z(rJ<0A{r_G#E}n3$OkFQ?R|6s+3QWAYtp5qr9pgSkSfyKb0mb}6Uh1i)8DI)rS+bP zTJRIiucK211Y zFEV>a9l2z`?3=N662wcdE^w~MTopxdwOZf&hkBB(z5|kWx>X{AWO*$S$<=EIFvAOaZ-iGNSF~#kS3`Y&yo8&Itk{@WEbEw zqxmFdV;y#A@h1GitVP=igNtM+lG|t7n>NY0G4ly7vCEXNjwYs-nTw0cRZw(8i5&e& zNHZ5)6oT}QeP&dZK&-d49PP}nR1A>Pz-fD~jrhr2mq^L&{G>10Cu#qA5H%=M^Ba$( z=^fc7Qirz)d(H!%#h3hF`|;jCNf_S3(UfQWX7TrNi2;xVtv0(q3*T-@^MI#?Zx~O_ z={MlLo~Ph=q8}GIOpAt}J=C#fN#R%x{wNbT#Cr1E z)htLQ)u9BZ@MxOJ5sqT-q9+PQWLhY!DrDUV6y?8^AY9n(V}>XP(9htgKSGx>?2N0- ze%-O3%qF~a-Id!0MqadaYYel;M$$jK$_RFuxQ{S!E0mEAIy|DkvMT#mn2=BZEvs*^ zDq{(Q+(xh|)i@qLJE(=ubdXq*2|J;aoP$i)og`bJO2F7jLHdY0nfUZO-M|^GKxddZ zg&cof<#1ke3EP6X_s1hs48}#UZ5NiDM$!*6#9doQJ~HF1gZs-Chgy4PaM~!G+DbhoYt#9LePm1kxAd!g@%_T{}x2G{vD&u zV;1L&rqb=kAG_RCc~Nb$+Avg5KRP5EeXhG9tr@(sVRlZ@*I9mN1YbhpTp2#7PJLqK zo&$JvOyyV>@cl3Nn(kUj0b8Eim!6l0Mw@zhON^Ch+)gZSerYH8;P+;i;f;{M%Hs1@ z9MyEGl84Ec2bbID(FQ%?Rb#B8;-cj}?_&iJWp$)fH5C8#VFw#^CkYE1+Z;`?NLTre zsmb_@VP6g#7Z-X&goQ0uAhS1c-0N~tT{nQ#>x#9hxPhK*OZlGBSN+#-VcQ$f+&`!Q z%wB=x2RH*DJ5u&-(Mj22AKq}y(o;&)MN>%pW067kpR`(*Z6`Hs%917!JoN+Vy&q8OO>H-}BgUop%Gj45)aM+F?6g9=+^l*|K7 zgiL7;(=ZsHEzwOCL};*w&K={)e<2UqFxV*c4pwQsM`%22o272i44;hBxt)e6+#LiB z!g}2Vr93~=2;GYS+ikp;K0)~17>Wz1@#Xko>ui}|2(?o});O>c=oFniZUGpM6?^$B$w64&6D_tBy0Y z}Vt`1bhtji^K z1zPGJice+_Kzsqv%~-;fwUPG+ncbu46bXTn-a?xsfI>)UMAGfkMVsV|%ct}3D zsLQ+8ijsDq{TJ~#Pn#dq1L07S4F$#U#@H|r~lAO1En;{UAm=h(W>9tcqX5ZVH*{zxb0!*l2R?A#dO*_9hR{Ju2e-E)V|s z1KZi_B&;W1N<$S^tQ(OJg6>WR`h_9vhA}t&%Xl5L3|umzV}B1VR@}Ga<3ia;J;rwh zo3n*PBV3P}8*yV*t6e3ey3Z~7i*@ckm1UW4pMi!&KfM|}l-J$^%eAuow%S1Eb@UP2 zqZ(6%(I)3DuuOj53mk3p2gl4OwBBuL$@&x;(f5HS0tjgRJmE*INW$Kc4a|0ChjDwl zLQI(DCW<6+YJ9+lQ6xCT2a?w7=0lYzSI~3&^M1b2Ey8_R;-fO+ZN455`Qd zZ)KS4b05!13OiT1z;@HBFLRafd&*^L0*M){Ui=U~0ZHEMtkU^M{!>TH2TteR@MhT6 zdoAe>FM8*Jh(^0hNr0|DH4e0>^z( z(b1o5+LB+*!NP0A*8m#_BdKgeSrgMW**YFU5*;oi$9hK&F5Z*?02A~sfQf+^)ZTHw z1}?B?af}XdtPA9)f|Sn|>|ahxP2Ik$tk|rh44WU-wc_zU z7yX;H!1B?wQR7QDMos#)kZklbl-p{qNiG>Y`>w5+qTlCU8wpgrSO=WhqKw=}tTbep z99|f9N+e|wmVs3FGD!Rx5y{VS?br3nEDWW1zk-Tguu(>QQ81{fN&?gEO9t6)6#uB} zj=U=3!<9QQ(0sdvEZWX%3W$c1*}t3$cCrhP{<{`?q9TDoq+lyAmZbgFJaI}f3UU_n z020nW0lADZT6*}zdD4EQx&+w~%`)Wjd;~$Yeu42?NJ?cVCUuNt&x3ly7-31|4ROa8`tZWTG z&e^ALZib==4aBbWu0{#1mTLrOiazC~pZgtQqy%i9GTJ-Dhm$ano?!j_{Wr3PKO~qp zd>p4AbUuONl9Ft0>S3C*ZRr6HiztS1S~dC4_8*+}cMkmZ=zZFFT92ytG=0f92ctae z+vh9wEG{;Y-b&Kgp?Y)^>)QL$gCIMsoTINev+W$oT{v6q$(+pV9XxO44Q4~HsDy4t zJ>ZEQ?5RNR&Roy9o2X>}ZW%L)jfB%7Rb{3!T5ct^ zo0;F}@%`8A2QFjy83WoGQ6Wmf7L1FX=`JSBQCR7#j5LF@Jzv0DfTTj|!WKXI?mrvA zDZ=fD-uAqGf(AuV^BSb_zndEeUlJlU9n6F5)A+vCI0B*V7edu!S+>Vh}p zsV?YSZPv)(@rz7=%$a-uz6W@WrD`g@ zUwK*sR&$Bx;}7qW&XlSuwbR%}(8vXyrCcgf^ejY{>rB|K)|!&0KPI~$BG#*p;J0P; zp4s$3{nfxP9rt}Q>nxceY?~nmZ6@a~tDA1`DJBO95hVF@>d4Bt7Md^h3IfANSxFh= z3tL;y835FITwa&Ubwr_?-X~VbU(L2b4-{u_`wm?hAHfV7oLvL^S1*P$49uPB@!#!= zQWSv$)$asn7= z+X9Vg6RN>gXaZp9K1A72s|d!jrQr+bXhItHZg8KsCu=36SdOXPHu}7YoqOMJD!5A= zw%#?^>ZU_5pkNU3@T{gjc$Uy*72!?)S^E)DG=}2S-UA^vs7R1L*j8ff=OCC^(T)=x z&l=wDVx|Z7gPZfI{Y!MrhnGty!xOrg{0 zdD9`a=du17E7<`@7I)q;QA1Y?>B21hN;prcbR9M=NgyUZjdzHaJ12lqgZ8_~^xup< zG2b&B&gV)R0`mz86;r)-Sy1c^Y}h(z9Pc&vK`)Lr9Pt?j7Dj? zqfUK$o`6({s0txm3l+dLyw|8P*n?XJQ&df(OS&79D%`N{$qPD|?=dk^cUWr;FyNJU z!PAB6X!mqB;E!GwKd@UPIQaISDv9dlo-`zRvpcih<+fNP;c6MY&c_xzl?ibBBslpn zH^0$9K(?r(tvyjCOY`v4Yh=qQWh(^}G!GZ7bAJ2MP+B?!|6r*H>{B|sdv zIFR(YC$^gwaJ~5r@wD!#kZt7z&3DkweI{W_44-x23y}g2 zRk8!XF4_J2lGAkd%@K7e?k`2}RBNIVw5CCj;U93J)7rbx2)Ke9{IkUk450`>`a$1m zyeaFCTM;^ctaB+Ew-Z{Bu>(uNFraBB`I@S{EegqrM5Yg?!YLaiwVEg|X##UY9Mw}@ z+^5PTVgWmW{3@~`xEzmDtYn!6sgEbafUZpQkftkAetlsCr$Q}5ne5>N8JnJ|gLuol zI@U;=#III>%HTc&K`|Kr?V>c4I5a3q^;0pUA^rK6`>0)_|Hso?xJC80-`jMjbeDv5 zN_Tg6cS(Z?2t#+Lbf*Y{bayu>Al=8Mrj!~zkd%DG^0G3bT*+mQcDP4kHfWI+)51`gA zocg8Ir}cu8LB}+&%E*~oGBV-7VO^(wchSdnll8o~xcIV1^5I~|tGFXoFb%jtA-*(w z)63GU=8fUE!@c2thxOGI`7$#e2}!jr@1)l?uc;tB@w(kcWxHNF;t6~V>u9xCKqz^? z|97@g8U`S%GGz%VD888bJZj60eL3|@m<@tO^eJM#g0oBxi=0}q{dW%ll4LH`;@Oag zyL#eFmjtVUrc*vbb#(Y@=veD1glG|asO2e9?E`ztY&94`2DI-wdX2wB-y!%a9ol%C zA;iM^2B82#o?=NMnVO@A4jmK$niTGHwByGHRbCV_lju6`o}l5jKmNClxDEW7BLDF*qA;PfBLGyLAMaLa9a{E*$h)wW>1NQ zxb#B+G^vtbt96TB69?;PC3uob7>R?6%k)sTjQxElPI%)zI6}w0uwo%?NR;7?&FU2( zBYDLP>$ZHp5>+~7C4^*;xA_isXm>T+U5P?~@mxPWKGgm2`#)SrA$ASJo7+LSa0$w< zaJzB)?FRvm)B39tE~KgV3;~I|lLfoo(z$SPtnh!L>rmBp-)`&_6xmxQOy8=*qEW-j zq2%hI2ZAyc()tUM52K*sM%#NkNQnGj9bcDJ(B*QKO9qc6Ap)eOv;rSa*ifj)CQc4S z@p9oiS+6Z-vby+Gq+xaLHAj>|Xwh_O@xMn44uhxR^xbiiQt~}oTVRob)mmlRkzaR3 z3RP2>eqtA+2mCxkXxt9X(g=Z?&ljJ+?jG{@M317-Z1Ut+9upv@i+2QmJbz-i&5r$}#PM?0mS`N*D2h^kCyDg2F5QP-@9rC6 zx$EaR$QA_g*<@unIV&&I1pB3YZ_FO%HYooE8T=je3jC#J$Oz3(FUR$YGl}tZL;F1o zg@K~KNq=?Pni^6Q=1;`i9uH2HOvqC6ZUat8Kz+migv+C)SxY`qUd-}cE| z&yZP|U%G8YXF{dIN{VO_0}2Z?U;R=;2;;8JUy+>X8pSs;d+F6BKH@HK;`UP5tMec6 z-|70stw^(r-4;Wur4BRQR(S5GQI_aa!;f%oP79lJ7?kJ|G1jNi>AR9(=cc@u{9uBZ z3=y~IRmfgeOUFbou1MkbKjARdMVGpStzfD8fqQ+UK4F=;&JrY^vCHFPHxOLjleMpIYd8M10DhC(uR3Ef>7vZADEZO5>L_4-uezN zPP!p_2Xwm#_oG^`_uAz@A>gH!?&ZG~?L*8T!FH_|Oj(JFF^z%v?>AwImZME5vjrRs z^RdcN-{VB*u>G}s%=*rXC!vy8iivo?P~x@W>CWo)xl}!eMXOZTajFUOxTv+%be&ob zwvP^ll`N|sG?KTmBk-D4*G6PYeUYv6RKSKicTq5OB?-h++)T1Ndku8J#lu7$lN@7!Q$CpFGiwDItuS;3?{3?A9go!#N@g zJk-%pFs6(+o?iI&gPul7(5xjmU62ZJ66VXNu|{njyB=jXb}Rex3|$8QVVInA?vdnF z(Kh5NPf2wA@+h@#GQe= zoW_b)Jw0T%T-Lbp7trn0pH1N#n4p@+7d4zf5#eDwya|}6&7MWQ@0o8;GioEW#b*(V zyKI-e>zE11AoIszjPW=uUUh;CK|sILm*c2%LPdMa$phxM$Dq8A&l$$`}<}VLgQz^#&1?tV$2T`2p}-owzmpI3jf{fbs7J2 z4A*+R+>_W$$yPa=h-v9)te9eQLmsglA#hP-?O2 zqe%<(&Re@7<`wPQZO|P(R#BAEu3wB@vLHyJQ-oe`+)!M#>1)*sv-~0bNZC_Y#mHwU zJ4%>Nv*wcTMrF9CT;r36_0~*0EsmRi>Iu0&PwJ8i&b@ntCL|pw>=8zI#QjWsR%rK~ zo2iyCSYv_aPPtmnngVJXpU|`DRfYsEwu8Z*&cjvTQP53>80z^9tI)NBm-=nqN`U1- zi+Iiv`snY8tjX}YsPhd8WXGi}p5v@RSfDLk&>#E*^Pho(GTm%=P~|?Y^T${)ti{Yz z+{wHn*4GZV9fSa$K!FAea0VQjii%PX5ZP%hWbHJWtOpotj3Ji<%6g_g^1PQ%4q~#& ze$5x1=;v+EDk5EgXZSG&PZpyaBmb#W^_Q|JPr&2%Yg#4S(fMyflqvQXV28fkVt~-;%q8c{!D`HA zjYSdiF;r_E*z|7x)&<*8bb*)IdNCU zgDBqw$CT)FLXV-!pw0!%-KOYLq;o)Us*FJdh4 zPSLPy*dKErSz{^AK;jrBk{Uk+C%Gk3B}s>IaQDjUz|#46u$jSnCtvdsNd>-0 z373>nkXdI3O6u#QUKq^?jwo||CVXeQ%)neeKl+?#G&VnZu#=?mlUK%cI5bqj#;uyP z@u<*l&}5&B!wV`kv_jB2cbKOJ6jK5yxa-shi0!sfixZ6zLDj5-DJ)d^n_c!S6hHi6 ze6!q$1KQ>Pzvw$J@mqxDcS?pC0v8w@B-o-@q`_bKhr2|Hv!n4usDrT~^I_?kflykp z%e>no>TgQ#na96deG5@mJ3yci1EUR zU*{-dVl**+xfoXy0^CZn6L?+LBLSjq<-@Jp;N`TgukW|4oIar3AS}*7Mh6P5s5VW9 zwH&R!kk5x%_lz$957VAUsqZe=dmY+)&4V}p`OUiv6F3}9|2Nf_c}p$^6XFtRJPR*V zDsaB`4(ts7N3UcgPy|EDL& z9}&oU_x-g)Ldh=s!%NBXW@>vSdR*|YYm5RAwlN|7MNMk*Z;>;_;wb7>zbYpF7A)v# z_1F-84974>*gHchLcWDeH9VrgCtR6v2MaRW>mtph+R9XYL@?_mg&kA+l7@;ax|>O^ zj!!HHLz*i&62sdDH-l-F7K%*lpAx^+14fFluvB64Wrr1y9>ba_2*HLICTX|o6x@iM zvDI6$#jz-WUDxL@`1%!|`s%^>m5ULDy^$a~Q}p_iDORM&r8QZ&V%rwq7nIfVJakMcy~R7p=KmG(#+3MPbP^7j%x425A8ZEH?dLm2*gvY zK{%VDhVd%*b62;w+=`FD@rqmId3-H72HD5xJvw)H&yZP_|E zZZ}uCXN!DUN0WY37Wrz=adNSABI~me+TR&^5i{L6a!}^mB}$8&433D1_;qojQMU@T z{(gic+(uBL&i+SLpwxIAE(NlXh^2?-b;ly-y7hw8&gb?cRB$`FAqPs#kDG@YW zzHg}o1adHON8D7ANqfN?xWg6L2)t_jv7`{K;_=29d`~@tiq(VK*jp(#VjR1GSHJL~ zG8HN~D;L*TMtbkiA<`@y|LwNz943rR=jPG*e1eR&O&AIf8ft>=dq+_KUa!s~Su#v? z4z-s}-VwUW-wrx~%?T5^3dCl_XOd5x0u=?OsD$Q(&GQVJ8O(BM!2+mq;n~}-Jma4Y zDGE)!W%ki}gR!FW)i>;(q+H9ZG5$Qkx^Fl9xY8a`Ydh57jVR2eEg`l<8M<*Ul_PcJMY(HHxW=>`L; zG?ta7%ZI?WEx2o}f*}-7Z4=D7Qhf@QlR!cOsqC5?`ws1U zkd9B_CO{9h8I%9a`M@sF77uU|Xw!S1MJ`2NqA)uWYRl1KwIiMy7}i&Z*pLnfZY5Gq znT$V8Xs{VIeOitMIzU5PA6vh|Ce_v=y$uf!Up4BQ?wJ09HGyu?xwhNeXW)6;=5NyC zSK$rw;oRu2{X`13ym(VLRLL_zR@f^gFbS^(oh7u4Q+$OWy53Ll=b5rhcoUHx{ignW zBHWzp%+8``1kh?zZiIltj;Dv(aa>_7$CV>mr|&;t6yzNAMt1(%?(#-{zTO$*_QDJK z4q;kc`DL5ne^9K zW3S$iLw(3r;MPc}4bMUk8pCnLmjF!M=``_bcjiZ<{3x{&XjC-2bLMwU)R?fX0oABj zN6F*--Vvp7RtRz_p>0+&nsEqk*7Q@+VqDif>9+S^?_=t9QaIfZ6;f<5(VSqlDq5yB z35?!O4X_K#Y4F#IRficuo!47r=(=-Evw}MTp*lNMwbh?^2vYEw=AWp))A<$?bK${5 zqY_pXaTpmf8LhrJ8kaNp1$9Z*S!vt8hz!XvcErl|INZzPG2v|@IdYHrBYEp%-*)X`m&#U z%f@J2qx*A1EvN#w@nkiefmH8mUAI7cM63}H%~KBV4h>Jq-G+zfAcmorS-SG<-F@;9N`9!!AFugrw7}F(sa+f zsz^#Lt*q4A_z=h-TJ0sO8|b@WXnp zZxG;Kd0+>Tc(*=Gt!&+na{e{9Ri&Ak&uLDt_nmFNjel|60}%_8;(InlCPzujWBY+SOA4*+#ZrX zzCW-2@;TswV~J9;&GSBRM$Yk)vDze>Jts z$l)lKijVaS6_#XFrw#Y>ZzQ3lE99v%uw6e^L1vM0)oBeyPw&-k)2x1q;Fv_$yDw>f zin_B&AW-|<*3@x|F)^pv98EB4V__ys1Han=veephNVrgRQSz3Z4 z6%8Pz8>Zi?qY#=BVO~p}nwnU$6de8RxwTy4^ydQ^kS#1-SK=9jn79W= z2>LyteOgO?fc>ur)H+4W7HE&~@2CxT7x8uPqoIYqCP$->&ktNoAl=(>dA(}plZnkI ziSS7NN=i;X6;$l0wq0xR5|RBsVj<#(RVDC6YBJYOy(NkRZ5sX%4h$E?2ppbmXNB|1 zGtKl+;1$K+3}VU4HG-%CapV<&8kG6jO!R{HybOp8*O)4VNR_j(J3)kYp1w~cC~5>k zp(aR0My1+;G$d&=H9a9SI!+4k2f_tJlDhgR9tb#Dcg0mWVPa%HG4B~DJXxo{`&Vex%D8Q5#HGmbhSkLxySGNAIe?p)P>4945LRyaX3>Xs z;#bt;SzQB@^^$v{WI`AbR@WjS9JA@0^s}5RKjB3=ftsqwEp}5$FEpEC@jtv=Z$Iui z!4D@UwKAi3hKXpXx>yiE%C*Ex5IRVJe9_((4F%_O=nsOToM_uz(CG0GxZV2>o>|@` zV<7OYKw2923BUnn6G2)m`&o=rt4dqjAIGHg(G5dJtl!rkmP>F(fiO(o8;Ho!Y1F$i zYnL@T$NKU4;H*U5zm#z0)zIt@8OX!e ztiToVOfnB+@B_Oh9)o|8}(jea}uyrI)H00^SS4ac1xc-Ncq^5`@K&7 zaQOQ@tj8yGygE(1%0ecl0nzK>GWoA8xqo)!6(UYaa6@^Vxig%!5()DV-iN2P8}9I~ z^vej-SAiTpw|7%{{HPG{;@gT8I$Nf)Di`3cw3ol0xx~r`?{z;kU-d>%C}lJC`K>?K ztmb`X#K|xR9-80GTGKwI41kvc|EcCm(^`qiaDOu*LAdt-@WMuUPITR4cHc*E3kt{7 zUy+(#pn28j7dE7N9z_pA3a79zQxN1#x7C~*F1+8C5_*8eh3oVB%GLpBYv=R<2xd#V zI!;HF7TpfLEp{svRVMxu z#aOXIJB`Pm;PAM~N$s9BI5Mz}1ZRHk;rYVMbjRJ=X+;bhDb0>W8Z9uxyi(nC=v?2B zM#p(&W1!|_ylqVd<5C-dTtd?fsQok~_;K=KB5fXO2gM&&KW!a)DGd=>X=PDlCYM&? ze9tcXCb3|zU<~cl#1Gw_gzbxop8=^Is+!`{Lz1~ni4kh+%wf@{wu+1lqI9Y6u_~Hn zv;*sqkIdk@hwS<%e}fGyLm_!X+{!0?9^W)INn_iY@-o&ThxC5X7v+s@F|Z#*6~~?w zdIO4#3)uCvuOMwK0nM&%R}_XX!1woGh4&T(9HhTsoK$WjlF~Ufe>8S)GUK0IjLaauF6AO%J&b!B_$5-FQ2L^1)S z855bY1La}ohRqAl(E_AnmU?vaRJnZumiQL33Y8vHEE=zPI&ZJc)*nz>w8&+*i7a&1 zV=c0g`(do(tgTLgVw8t*3Nfy~C>3M&6G9^~y}MrX)T~QQK6pD~2P&n%@cL0PL_0s2 zV-qT8e2UN-ThVBul6r5b*$)38cKH6|i)0+AX|!fpjlPp5tSL3FjIR80CP;F1zkTCT zz(*TJJy z)ueBlPHRhcpFW{Y<%pn@>>BR!!t7SLt= z(OZO<3$gs7E9Co{o9+6l=NG$g{<@Plk5-LF{P}2(KKm<-^~!HRiU$bu1SfRgoLyXp zmjcB}#Xu9S3vZ24#_ zCO+&;>0Yz?3L9qzcfj^~_6;Ypjk%|Cf#h$8D3XflU?%Mkm6%w8??pp3e+oJkIH%U| z;Rxu+qPRlmumf4H-iaBUtBf{hv&30#5{~u`h*?9!42D&#WmXT&TX!m2e?Rz4t5Osk zws3Zw%oLI?2z^u>2}gxN1P-gjI{(D%kwtl=ib)OMRRX~031cDLx~i{N4@HA|8TdC+ zTrAn5zPE%sAV?SNPn$_3r=dG3p_e}qk6%331Wfv}Oi+JDIV9?Vufi`36;dVTxy8xc~1_+A$>*ZuD#1y;%5qfBJ zo0m~sLO00DZ|j=Tg_+VtIJ?gOYJSXRoSmDw=TX~rP26$2tvGSp{W=Mf#Ysuw6BL9U zPRKRm^o<(F&9~O*O=8|qwIU+?!I+N^F?{L%_D=}_Mz+LATr>njS9wDw>4NuI+R`Wt z$)OLy2uH1g=8<6LYshN?srWJ4Oio-l15y?j&@RT|UKYK`QPfkfrWS+@V*)P<2YsN_ z%BYQ|6HCU8`X?!%LN%$1eQz39#=-%ftu*ZF@=!0in-!Ics#y{mgl8rH9A}B6C#hm=BukI8C zrohY5?F16ZZ}4+z7g|pl!V(+N=f&*Y-f7Q=d`_Gu>EHXtULfk?Qu%?OVmH#ONmeB* z_Ba3;ZEGDvp*4dWg={IJ&dgPRai*4u7N&^o{>J5+$47f7Z4m`ge+C_j2TwcYl!e1; zkTE};prn_Syp1dQExj?O_j;cB!QK66r?Kb=FVkm(_TOz|qB1kv{ zb*DRo%%{kVz^ea4D39Y}58xVa9rinKMFn^*&gsw7{-?I=ER7rgOyC|H!mG@kj0Myr zfRW$1&3XVKlLfZ@20wchdl_epgdnS^i2+{$B4%I; zz3S|CAB@Ob2*q&;ZmBT(RaM|iDCd2n#+503YB1Lvx#n`CBfX17RzN2JZJ0hdZ+&p~ z-9TI)#{0*ZIqlZiATSu@Mj8&uyC41y>-*aC2FuRFGnvg4aCBp8?rY+A#}DePXPN1|;KlkUWlxQtH1c!wzqpob=ik+K435gGoBexZ)^K?&=N=(Z&X2b{S=073!*_MsPz)`kv*^DEV!Gil1m{ zB(ovoe%cen%Aay~5(1WL>1m89->ztjDmnisF!oW71xRmy>(F|^=<<}-6I)q?A^vbXF+uh8lMY?exN9QjA zVd0eQTL)HVW=^@OTtURnQN{({OFiXKMm(e0qMb79NBaqYD_XddsBu?I_-1QkWA5ON z@+U4{0&r1XSYxT+%~!7au8@n66OkXSt?si0cK}KL*!ZI(d!VUD`9lokZ(a%vz_@mL znj7sMPA2H|7*5Ea`65-@@xs__`0F!Eo}gcRyP_!qpQ*$(kOjMQpy1=@fZy5Kd0B^i zXX_sOfq5z#`Fww7i(q4Wpwai9Rx$AbRV*`hl=B)NB3(W6zZeSdOFjXlU%_IX0cru8 zVPpntF-gh9exv4-8?GAeyQx{O#yQhOe#R}UV0sUHGS5Pr{C7DCGsoOSV`L0fuFUF$ zaf$SI0K9+6_tSP=la4AWj63!-4kbQJGGxC)B>EM92nDO6T1s{sn#K&pwsODveKAqk zQ8YDMn72mDhr>1gR?+_&!TG!P*Ise-XS$PZ6E--%FdD%gTHP5OwY}E2|W#LV#idS#8t0F zX7UoybZqlp83Fo$Iq2AnJgYE!RehSNwEW`e?*N!DkKaFBUM~9!WBMXpK+ncv?Ot6D zvz88H?MrL#?T5i-lVI0ydjXGqB?YM4p**>$clYAL`ANkwuCt?tL}H8Qr1b>!D4MnZ zW*l%R3IZn>?XCZPF>Pr(x=axKb8)`UwA;8H`1*_US7_f}#+`$#daySAyale%*DyV|sDuc{G=2yUZi)vvVfRKw2+{Y1h39Aa0|qIhNB&UNlP!F z`YnGB?`Vd*Lw{|BX#6wh50t-DxhWR2XT^@&AFqBq^^Qe9nqOWh4Z5BmK1>ncF5}yw z^)f`v>AdDvvnMviNt6X-Bka{B&=Y^vwYb~S3o@CPj)PB752$>PF+gBJf$&=E^Tdv^ z0PW2Gs@AZ)WZMq`c;&py9zB); zypJoKs{g9ofj&1B65g8O{O6@tv-hC&51Gs7Lw&caj=oH5mm`zY_f-!Lyp0vVm3P(HkRdzlq-Q4hZb?eET5rS;~=!Ul_SkwtI8 zT3D&@6kW^X#8o@O-B>bMa9ZO=S0=%U$Cs!J;v#i0PWofh-G69nY+@iCv#yiAF_HFw zR(S71bXgoUamNoOMFjV!IeziLn}JW5@e4M2i7@yAMilpzw5^}#(stCV-C7MxmIx+% z^|O!gxaaHq$~j^*=~WikY)xsF}pN?CBm-O@5&chc;$QzeOW&hO$&D ziHg5&c9rUQ!Y4@LA`_MkuME>VEpO+ZIpipGwP}E1{(#N0;lSllDi#StmN?aAIH*PL*gs_VHFTIRBK4o#Cej z1KjGzUEfbMAI*iRpJb@(7vE(~+CMYEszn&JQ?v8m&gW!To@s_*1{c86x6TxPLZ-GX z(5DF{eCK6JK3P4rm-vVPT`yrY?4AUCUh+3T-g_Uyu{#ga^CiF7Hjd4O-S>HXZpp)f zpKrfh?1NZNP*- zEsVK((}f;;Ra;g}2+#+{-u+WdbN&|}4KJ+y;?>qxBRnP`vLf0Q>$I z-mN#l8ZHY4rwg}lb@8r^52FfyEm6Kyx&J!w_WHbb61AZ;zBxaM{2bb_8vwrzip@9X z|D&5V$M>r~VRT+qczlYh6Cx_Y(d*fHaN2%$SMIlWLRUErPJ_B{?#zBz?x=+#75ajd z=eN%<@^*Ux3a6tlXQ!1j1-(`@MhWSoT|DXqoUb@tnc5|a{5MV&hk=*{L^%#(PO~~g z{JH%-zoJTGfq02zDe=tj>J-!O7a!j%8gY9RF9_;s8z6kTq4g;V7I#e6K1ht`92E&# zh{L+I4mQeh4zx*sZ-V6sVZ++8Kw$k~9F9mei3_D5_LGoy(h8+f6z}IAU-a*1mMY97 zltBLX-ti8plq6}b9P+~OKkRxJQl|+l3&+J{6{MB4te+x_G9_iDH`_F_B}mj)zG29B zltu)vVpiI^#RlJ*r>&W23u*ZheYcF?P)9W5#+!ns&i~8dKrz*gKFnCqHx-h>(OO*Z zaIaKI;m-d-bQaC%foK@MldkM=X@Pasg!ru%;f=~-j2X4(sdWfGW>X6OA|nQL9`w4@ zc<>8wkZU7P32Y2gG7Jd4d3U5Y1u@}3N}Yz>1~`4BKET|NSn)iRzKK0j;6jSqC$G9! zwn6`VR3Paq;QkH8i~2TC7g$27M=Pm9^?{e2YJ`i&c+T3~q1a)h7fIP<_6k=;PG4gO z^_UaEl8lQSr&XUA4qJ}^E^IyuCDqZ&s_3pFnmsWC;Q}v`S@Agh0P#3d3(4mC3V||~ z$~~4jcwKg3nQp=3jt5K7!(L6e+&fnyzspM~(yG8Gp84VyWcU#e%+7`6>y0TJ7VlYo z&4<)oW9T6JsODZAT#SOSOl8r%swkjni>PipRlcnLyZi*76o*yU)&NZa=C9Ml+1d-D zmT!2UI#f3at$Q>yl>nn<#TEo;PN}V6xyt`|J9a$$g8SoviKTY~D0NS`y2^*}eOhXP z{(SZq`obUL=MxGD=U1HDTD$Wh((;PVX9zHL7j4Jk<)-e{PQa#c^H=^8Y5p^2_f7j{ z$c5+-XJ&RTkkhzPIqYNv=n#F7`+SJNV(Y`Y-zK?_JD=TrKcL>3D01i$`00=&EEadt zqm|tNyPnWmNblm~YDPCWZ5`+4z)4dmuh63Wfa|*XWsXUtofL1jng~&^fbumUP__DzSVGiU690qyaKXeSrnhMx67IONA%VwSyW-?WrA4toYL~QyzncaPGmSu?M@=%}( z94GuWnNw>vy`&I>Dk|#waIU;krth-QH|;JSwPR;s!~3 zDb%4KuQE}XU6Kk&l+p0Xx|Qh>CizBf`WR*4T48x<5Yi+*9A(i&S4Zx)y+@J6i`h<= z02$+DE0QTWyqVg8yPLp>dI%7i`QL1>mNm@(!qEo&s)c_aOp3u2FiDoa>~Bu&%x`}R zs|P_Yv;X&CY+Tlg*22FqUG1s-C)@) zbyiz^Myk37pC>3_tuAoW<8u5E&ej}7H##@BPbAD;Sj4wE#qgI8APQ7!Eqk^jr>018 zL|{g?Q_>3(xlrwm-|dO0UusvG?WvIah~N_lO>KfM81`*7Bz~6b`)+*$^&95uS)!l_ zQh!x9G@|d8-ATh9T&$0lL47K-WX&O2N_x(V(KVaOyDJR*Ly@ud z79r?VP~myTgvZ3N9wtVU#%cq=bNBBmQ#Wnsc>* z_u?(!TudwgV9##KYklwXeD?Vb+CQ^6uQi1!)Baxhb%4LrVo&qn11xDCU0(2;ugitn zoLP-DL|2+!4t8!^Mefye0g`j`LrLxY{4LOmTjt_lUVrdM*qT?XttqCo6L?#B9A&FY z+OPQffBDvI75rnRsqYnYck)gpUjPAqap|se$EKaFVqDPQ`q1 z8}u2{^iFp6up!F9)o?jAMp0FRQlkb@G^W_!|I~NbEhlhvjHW>Nb&ccG) ze~Mi|B{O{=xoV@W0bJYA{6G8AC5ZM?^z`1jYv~F3{{1)F*e4ChS^cynf8@1~JJC?k z>XF{eF-nM!*jckynf|XJRe1PKBrW;^8Oy)ovEz@;{eH z&!0)8vZaSxbB=~qb;wMJA#2!945{;p-ON_it(A*#1Wv9B$M_6@pm5)u_12qOm-8#*;zOLl`y}GEtuk7OSp$ za!O|9X7eU;<!O7&(+ z^g{sZbaT7brl@k+&BM>M^iPPEfM5MI)5GZC^yt^OF4CX>3fP`TZCi$D5=3D9{CMA@ z1`;5xqT`a~akq01ZJP2M3#{z0T?3{GCq;`IFlHCIeve<~_b1tfxY5LiGvXk(ty!h4 z+kLArq#|EJPtMlb7ymAJp72-4wgLBmh;82O1#i}LPn;iK@8UIcLys_DcApzuSje|`NRp>ae*V)dEUn=N*ZuXKd$QzD&gWB<7bNQF;FSvzFh0_r>dd+~~Rro+G2&#A^ zcw<}CDF5F&i{lmnU}i>NZhR=I495r)(biWnLl*E1=@;pfq&UQ{8ILoXZFPo|+U+~} zy9CvkltQk_pWQIXk>g5J0beQuRU>Cz4i}fFG*+A#RlEs`RN#}wJRpl1D^`0&eE0h> zV^7sAfQ3YoP#~B+W?s)#=Eg5LReYb|7pvMZrJI&a2LF>%U2+zcm|A?bQ?;mj1PVMj zR_F+^L9-DZ4r#sc^BvaHFHMAZr9?$ov!&!Kg>5LIe6mbArGJW}@9PsAxcDns9ED0r zLsy5G5OdF*0u{-`6ywk{Xoz^UW}}0qvaZ7++M$pt$`9;6PMGutfWik|B#7E3(9mk& z16vviaWx(QJ&bUoGyq=-a2fz2n@l?nH-JK$m5$fj-33D#PA-)JfeEy^#nMVLP$iXY z!Y-7NOL`(qRkw1DrZ=rp3=|*tXoz57f33Zirru??C5oW_LdJ)SM#C7PB$n*YY$W{w zc0S0YUqb({$Jn>5Q|r)|OwHICL@yrJm`z5i8TF-K+W6bn%)cqrz?+f?I_0Osxva~@ zAGsr9;YHO5JC38azrY*g7J>9Kv_}>gm*i#xIhczX)47X}i{7uSmg$p3#*e(bi|pdb zh)B|n70?l6cH+Gj`?Kyu0XtK%jal3Y7f`g)px~eBG;ASKMx07$Owvl#nwz-dg;ue2 z2|~Zj=Y>n*$}~Aw&7Zqz{^@7^*%>%}(zm7n1s{EFUMHEa8K%CO5%SrGYaY{UtBWfX z{(>MG_B#&hd{V{YW82nkIxB^*20R6K=N%_1BI|8VhPD1C+E6$E6Y-@4$1cDe+SGqf zy9T@;K_19pIw<`zU=C=I)9~Z2w$ipXAtoD9i}OPTg5GDLkF7pSjeZ3AegGxh4+7To z1(&jYB^nwYvNt!!rXQlW8fmCwaJd)=kl6vbJ;P;?Lt0hyBRSvZ%U?9~jr4Fqzi$L% z6y2xIYtadnL#%)Q-yFNRZ2|^Ai0TjCFytq6XwJxWXKG&ystxJDIcIPUx>Z=AxH@u? zn;^K@Tsj1MR2{BzzO-JG9%oA2ps&m_#`5yd3&{>c5Gw;|DQxm&@QOmd`Uk9^RKdIw z1)dIhjM0yMhY3ngOKwHdwa%M|^piyRmTBzpi^xUG-v!3%O?fT8Tijl?i#qT`(y|by zmQ$XTi|5Lt|71|0y!3!oquDIOf=UHN3QXVD(@E2hG5Nl~rnI_du)leC@}x9QgmLU) z!GWNC@nK9mH@=v%>BFg%%wC%0UtR>Ao?z!vREpXykoKl1z%xGU?B?V3i%*#6ZM_rT zB5VKb>V0J6BY9CKiuWe+h4-TB2QR*FNPcaK1EvML0`2dOpHvSiLx*c(ErB{vkg61^ z>D^sih#W5uaR2#5kT0gO(U>};xQJ6DyBK%fy1cCaEjwG8xYA zy7W&A5j{hSdbHp>da$G;%!DI@g=mt*og&A?*jKMG((#=c;`clew+c~>657&c^&rWX z9^&-WRw1nI@1zQXPy9p&e8TICW{J^9uxwcw7HJCw18g#syrtH9WoRP~FLo2hSFA8g zQzpFts8^h42nxS0A{2zVQ~?JqO~nx7?c6%VWATZoMZ%O!4OiJNo&#!pQuBTfD)O_n z$h1#lz#U0*?@mxh9F7%UPOW>a8a!TOS}eTVMY31uwiiiScLOtZDRs>f$pEw=94=Z1 z!=5zceFMQqIgW{>e3rWT%WmS!+Aoz?we0d2_sJcR+0HO?8&Og6eBK}FkpO@l`U&qu z&);?Q-m-HWk&L{KBOEWZ&jhI2v7SKV%G`eRCdfP>?^%ygBu2-;g6YR9bJ!EvXwS(p z?VK_MkT>Rtmg+1KW6>~ob{DwszQX9r2KOX5c_tCEotv!ua$^ zb(w67-W1NJ0csrJ0Qra72!}YvK+NGYW5bF-JOIN znG)Scj2OomGO9pT zHvURcB=qRV2pq~VhBvyAo*W@N0>PU|75~rGFqP0yOlks~nFKf3*B}}Fas~u;g=bRC z0Y}0D33SNN3S%FLK!DR*_680K74?Q)RCHMM--@3jK~?AtE;c^?`i{+ii>b3bh^D~< z=tSOB4G8q{xg|^JBdc%C7ZIPZv~Eks&-nDaXGAW*3FvM)yB2`j0`eGr3frInXK0hJ zThi(GM=9lulE`yFT_s6N3rT60N1ar)^Xj*5sOynpmmN^05YQ#wk-UFLQ@c|x`l#=G z1-29o4SB}oSie@FB*l`|VSMwONgic(In7`_iZ0fY@1_=e1VW1c^g-aRiVj&Mgyd?d zTS*mcg&Q>mN=v!-)50_+=J-=n+4E|Z5i_E=p@gkJ^7P|Q8h>;3ayjiR@T{4yyek$%{kWt^ zL=JyTW#-hr(Im1Mu)A92sk2a3#1DKLH4=^vO5qoV@(|dsMv_=%H~cfz>Wqj8FPl`0 zh{#Ophn9!6vVtn1r(JLEsK`$7y?Y=YT#0TE0zNY8+fE=s52U~^idT!eZ%>pd8q$j^ zLkd8+m@?GV%6_uEG0Fbte^ZGWFQ0@whb~@%G`B#62o2&~>jj<^<48KieewFgvWqt> zsBwQ|q(P|;t9_v4hIT7YH`f#ks!hUX-AnzfOK3>h`xvd#S8d=~sAX=l6-p};3N1>X z$)$Xkh)wKnO{s!f)Q2q5RGS?&N175n201y4{j1Z9+HVwnn@7$IQ94MXjckfp!KjL_zVp*+i2&en@^En6j$ooi5!y@=| zxKv=ka5=7)2Mi1Uk&bk9zZR4sLZ~WHtG>m}vx{adSvl@ibFaI9HK4C}Ly8cRm0)|PPq z43u*6`Wk)^-a5n;&qDH<~Oq~*acG_CnQ^~66Uc#T*;&f z$JERnVcd-hESf!QDEjTF$1I*&RE-|@N$ceH!A{KBswAjrN6l(bQwQ%y7YFGhTj2g^ zt&oeYfS(K%5nnNO?+#o`#{@?el|^dE5-d`*l5I4NhlNDG`nHkzPt)qtkX;BhVk`dX zz-b_R(TYI`r}ZoG`a%tZ7WFTG=09LPW6n*(QzU2v$7LpOXv-?mU*&U6)%gqvXnZbU z(=c%PCB?`+g>qo~iSntN_{S$f&rNpk)OF;5*O8Oe8^CP>mEHVle+Tnz0kL%*)}<@o zn?RM;zuAx%f1%!Ie!pSo3z9Qq`uH&DiGz!4_^iC#*3|(>QZzZQ^^K<)0;GfN9}6E% zHx5t2^Fq3|-Ny6QUc7bL%$p74y-)wfpQ8HiA#Q+T3we2Y5pQm8bZOrrI)$++{>dYN z4J8#^d+q#hHZX-jRFs(bg5~GYWU3AL*u9@2f z%=Tshn5}Y;61QveM|ooVIs+DREpCIetCul$8b)*{UlFZxp{EKw_;IpuRkwkT(|?}| z_6t@V{x2EWrr@dJ5(^D2J!U^tI1loV!NFv|9}(OBA6IW373CYX3)9^xUDDm15`qGP zAk82p-7PS5cXvo5f`l{--60`}Al)F13&tS1QG|N4GP?7pB*fvr6P&%%djK(b3G$i49@$ z`YhD7;4n{ELoD*R@e_^bUA21=Bc=&}b)Vg~;du7mW9~VZvC? z3|sYlFwp5H;ZX>x6berYwvZk(g6zN+76xyO6{Om{Pi*(?PnNzsZSn)Jl_4l`zPM{t zV!qhiZ15?|+Ic7x^J%8`>ruc1H)u?xyec668aMRYt3e=h(4Rx&%0D~6vz?1;(1m;b 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�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 R@VEc~002ovPDHLkV1lkVnC}1p literal 0 HcmV?d00001 diff --git a/assets/upload_button_2.png b/assets/upload_button_2.png new file mode 100644 index 0000000000000000000000000000000000000000..7cce9c3bbbb1ab385ac18a0fa67b8991ce6ef411 GIT binary patch literal 1819 zcmV+$2juvPP)001fo1^@s6G~`f|00009a7bBm000&x z000&x0ZCFM@Bjb+0drDELIAGL9O(c600d`2O+f$vv5yP25iT5Z&f!$EZ zFolGKwvfchWhikNl!=H5QIJFt7&qeWHL&Czg= zX*#}Mpjxw)7V-%g0iN<&Pwxr808kkVM z)}+d0xMxW@yIve?>r9rjk@b3(e`iKC89WN`?i-?_`v4Wav8Xha3e_Z5!sX zdh|$~>oDj#6hEE$1zaGoK1)qvg(~93>`It8i8}Isop&DCINl}@ni9b2PLd*}!p&X}k}s!@XSZ!cp%v%UA01_DrX>KON=scA101gewr13J8enbhD5pw1B1J z75e(`3R4+$1dc<%s(&XeeS&pzP91G3SbP@Hn=`#LmTumItwX*>WR`Anhw?qLbla(= z1_Aj#ZZrY3>{fS>Xd&k!U+X$pbQfl)Ku6$s1QZT=fuA?K1bdqbM;-T(diM_b(j#w@ z96fEGM3mpmCnH{12aURL$1wRSbRr>Z>=rr#$06Vk4`?AE*4OQA^kzEl(TEGJ z5v%e!0V}+;D8I22B8=-p!0PPQq$nnJDo@L-pZz5r=fx~w`qI_Tu?DTK!k|fi=2fZz5L#VI2-c%9D zYo@|BmE=zVXnp6Op7_R*K6tzZCN(ztsTqYiCv;lI z(&mQTn#%>s>1@qA^qFT2_vknmh|Sjmge8xO1%&I*t=%FJPndPkTN>^A>X5G)jVx^* z(JsEp(XfIGmSO0_lx8JM^9G@ZfI8hIVaU=dy$$VFcm9g$3YGPk>E9*Rt?s!)4_fq) z4k9nzAnq9uOuo?ZoIu>gVd~AWZkg{bdU^jZb$x8|?_l!ukd}_}1=`P(HVC+68Ky8W zP(6izAtN^i2GPG2$CKs77;F zooc#UmS5uMj8Vb57d+_u6tTdb1VsC5nZ4G2f%0g|ndm@Ie$;Zs);?YLO4ne^o-Xwp zs!ptb?%N2?vB}(HxMw;O5Rd#Kd>?da-?gA}!_fN_J0o7m(CTo(F@b7?rs+tqq;Kg< zs+Wa#0&2%8cM9jI);*(-gt5>=`~vLc%g5YCOgIA2ZV}P6Hp;sdZKhyUmT-x73~sp( ziJ0~!XkgO;T%kbqZ9f46A(nvXKe0Qg#XAO2S%?%uI|f&W#-}-GD-6}H!-6GcI#7qw zlpVWqzLVj5?7ImL*hb)u3{RJ^=96`Nf`oR!VLvQRZk{_!8L=ba`qDhh3?cg4WZ4~7@m?t3wm*JoT*TY&|pPib5o{s$#*(-EO#-39;v002ov JPDHLkV1mpyV59&5 literal 0 HcmV?d00001 From 8a2920e6a5a9e40e351d934a1aa4e72918911d01 Mon Sep 17 00:00:00 2001 From: lucasverdelho Date: Wed, 16 Oct 2024 11:39:54 +0100 Subject: [PATCH 66/66] added ignore warnings build apk --- android/app/proguard-rules.pro | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 android/app/proguard-rules.pro diff --git a/android/app/proguard-rules.pro b/android/app/proguard-rules.pro new file mode 100644 index 0000000..cdc1751 --- /dev/null +++ b/android/app/proguard-rules.pro @@ -0,0 +1,6 @@ +-dontwarn com.google.errorprone.annotations.CanIgnoreReturnValue +-dontwarn com.google.errorprone.annotations.CheckReturnValue +-dontwarn com.google.errorprone.annotations.Immutable +-dontwarn com.google.errorprone.annotations.RestrictedApi +-dontwarn javax.annotation.Nullable +-dontwarn javax.annotation.concurrent.GuardedBy \ No newline at end of file