From 93b146222ff067d35d96866baa57b5a98caad138 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Mion?= Date: Tue, 2 Apr 2019 09:56:31 +0100 Subject: [PATCH 01/19] Add screenshot tests --- build.gradle | 8 ++- sample/build.gradle | 16 ++++-- ...shouldKeepStateAfterOrientationChanged.png | Bin 0 -> 38024 bytes ....MainActivityTest_shouldRenderProperly.png | Bin 0 -> 38600 bytes ...dRenderProperlyAfterOrientationChanged.png | Bin 0 -> 37597 bytes sample/src/androidTest/AndroidManifest.xml | 8 +++ .../counterfab/sample/MainActivityTest.java | 46 ++++++++++++++++++ .../sample/runner/ScreenshotTestRunner.java | 21 ++++++++ sample/src/main/AndroidManifest.xml | 5 +- 9 files changed, 97 insertions(+), 7 deletions(-) create mode 100644 sample/screenshots/com.andremion.counterfab.sample.MainActivityTest_shouldKeepStateAfterOrientationChanged.png create mode 100644 sample/screenshots/com.andremion.counterfab.sample.MainActivityTest_shouldRenderProperly.png create mode 100644 sample/screenshots/com.andremion.counterfab.sample.MainActivityTest_shouldRenderProperlyAfterOrientationChanged.png create mode 100644 sample/src/androidTest/AndroidManifest.xml create mode 100644 sample/src/androidTest/java/com/andremion/counterfab/sample/MainActivityTest.java create mode 100644 sample/src/androidTest/java/com/andremion/counterfab/sample/runner/ScreenshotTestRunner.java diff --git a/build.gradle b/build.gradle index 10355b4..399a137 100644 --- a/build.gradle +++ b/build.gradle @@ -2,12 +2,13 @@ buildscript { repositories { - jcenter() google() + jcenter() } dependencies { classpath 'com.android.tools.build:gradle:3.3.0' classpath 'com.github.dcendents:android-maven-gradle-plugin:2.0' + classpath 'com.karumi:shot:2.2.0' } } @@ -17,11 +18,12 @@ plugins { allprojects { repositories { - jcenter() google() + jcenter() } project.ext { + applicationId = "com.andremion.counterfab.sample" compileSdkVersion = 28 minSdkVersion = 16 targetSdkVersion = 28 @@ -33,6 +35,8 @@ allprojects { junitVersion = '4.12' espressoCoreVersion = '3.1.1' + rulesVersion = '1.1.1' + screenshotTestingVersion = '0.8.0' name = 'CounterFab' description = 'A FloatingActionButton subclass that shows a counter badge on right top corner' diff --git a/sample/build.gradle b/sample/build.gradle index fdb8dee..b2d19d5 100644 --- a/sample/build.gradle +++ b/sample/build.gradle @@ -1,14 +1,15 @@ apply plugin: 'com.android.application' +apply plugin: 'shot' android { compileSdkVersion project.ext.compileSdkVersion defaultConfig { - applicationId "com.andremion.counterfab.sample" + applicationId project.ext.applicationId minSdkVersion project.ext.minSdkVersion targetSdkVersion project.ext.targetSdkVersion versionCode project.ext.versionCode versionName project.ext.versionName - testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" + testInstrumentationRunner "${project.ext.applicationId}.runner.ScreenshotTestRunner" } buildTypes { release { @@ -18,6 +19,10 @@ android { } } +shot { + appId = project.ext.applicationId +} + dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) implementation project(':counterfab') @@ -26,4 +31,9 @@ dependencies { testImplementation "junit:junit:$junitVersion" androidTestImplementation "androidx.test.espresso:espresso-core:$espressoCoreVersion" -} + androidTestImplementation "androidx.test:rules:$rulesVersion" + androidTestImplementation dependencies.create("com.facebook.testing.screenshot:core:$screenshotTestingVersion") { + exclude group: 'com.crittercism.dexmaker', module: 'dexmaker' + exclude group: 'com.crittercism.dexmaker', module: 'dexmaker-dx' + } +} \ No newline at end of file diff --git a/sample/screenshots/com.andremion.counterfab.sample.MainActivityTest_shouldKeepStateAfterOrientationChanged.png b/sample/screenshots/com.andremion.counterfab.sample.MainActivityTest_shouldKeepStateAfterOrientationChanged.png new file mode 100644 index 0000000000000000000000000000000000000000..504a784217f2d386c3195b425cc5dcc8325097d1 GIT binary patch literal 38024 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 literal 0 HcmV?d00001 diff --git a/sample/screenshots/com.andremion.counterfab.sample.MainActivityTest_shouldRenderProperly.png b/sample/screenshots/com.andremion.counterfab.sample.MainActivityTest_shouldRenderProperly.png new file mode 100644 index 0000000000000000000000000000000000000000..2e9c4544aec1cb8f4429093d6180489d2665dc89 GIT binary patch literal 38600 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 literal 0 HcmV?d00001 diff --git a/sample/screenshots/com.andremion.counterfab.sample.MainActivityTest_shouldRenderProperlyAfterOrientationChanged.png b/sample/screenshots/com.andremion.counterfab.sample.MainActivityTest_shouldRenderProperlyAfterOrientationChanged.png new file mode 100644 index 0000000000000000000000000000000000000000..2c3bbf70470ae5a34943b5961130d17f635b4106 GIT binary patch literal 37597 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%0D)f)Ap@BJaNH0t&J2GN=~)!Q|^Z-hv)9v24OK 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 C&D;n8 literal 0 HcmV?d00001 diff --git a/sample/src/androidTest/AndroidManifest.xml b/sample/src/androidTest/AndroidManifest.xml new file mode 100644 index 0000000..2ac9270 --- /dev/null +++ b/sample/src/androidTest/AndroidManifest.xml @@ -0,0 +1,8 @@ + + + + + + \ No newline at end of file diff --git a/sample/src/androidTest/java/com/andremion/counterfab/sample/MainActivityTest.java b/sample/src/androidTest/java/com/andremion/counterfab/sample/MainActivityTest.java new file mode 100644 index 0000000..9121e7e --- /dev/null +++ b/sample/src/androidTest/java/com/andremion/counterfab/sample/MainActivityTest.java @@ -0,0 +1,46 @@ +package com.andremion.counterfab.sample; + +import android.content.pm.ActivityInfo; + +import com.facebook.testing.screenshot.Screenshot; + +import org.junit.Rule; +import org.junit.Test; + +import androidx.test.platform.app.InstrumentationRegistry; +import androidx.test.rule.ActivityTestRule; + +import static androidx.test.espresso.Espresso.onView; +import static androidx.test.espresso.action.ViewActions.click; +import static androidx.test.espresso.matcher.ViewMatchers.withId; + +public class MainActivityTest { + + @Rule + public final ActivityTestRule testRule = new ActivityTestRule<>(MainActivity.class); + + @Test + public void shouldRenderProperly() { + + Screenshot.snapActivity(testRule.getActivity()).record(); + } + + @Test + public void shouldRenderProperlyAfterOrientationChanged() { + + testRule.getActivity().setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); + InstrumentationRegistry.getInstrumentation().waitForIdleSync(); + + Screenshot.snapActivity(testRule.getActivity()).record(); + } + + @Test + public void shouldKeepStateAfterOrientationChanged() { + onView(withId(R.id.fab)).perform(click(), click()); + + testRule.getActivity().setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); + InstrumentationRegistry.getInstrumentation().waitForIdleSync(); + + Screenshot.snapActivity(testRule.getActivity()).record(); + } +} \ No newline at end of file diff --git a/sample/src/androidTest/java/com/andremion/counterfab/sample/runner/ScreenshotTestRunner.java b/sample/src/androidTest/java/com/andremion/counterfab/sample/runner/ScreenshotTestRunner.java new file mode 100644 index 0000000..4314507 --- /dev/null +++ b/sample/src/androidTest/java/com/andremion/counterfab/sample/runner/ScreenshotTestRunner.java @@ -0,0 +1,21 @@ +package com.andremion.counterfab.sample.runner; + +import android.os.Bundle; + +import com.facebook.testing.screenshot.ScreenshotRunner; + +import androidx.test.runner.AndroidJUnitRunner; + +public class ScreenshotTestRunner extends AndroidJUnitRunner { + @Override + public void onCreate(Bundle arguments) { + ScreenshotRunner.onCreate(this, arguments); + super.onCreate(arguments); + } + + @Override + public void finish(int resultCode, Bundle results) { + ScreenshotRunner.onDestroy(); + super.finish(resultCode, results); + } +} \ No newline at end of file diff --git a/sample/src/main/AndroidManifest.xml b/sample/src/main/AndroidManifest.xml index 53afacb..27e94fe 100644 --- a/sample/src/main/AndroidManifest.xml +++ b/sample/src/main/AndroidManifest.xml @@ -1,6 +1,7 @@ - + Date: Wed, 3 Apr 2019 16:57:12 +0100 Subject: [PATCH 02/19] Add first setup of CircleCI --- .circleci/config.yml | 185 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 185 insertions(+) create mode 100644 .circleci/config.yml diff --git a/.circleci/config.yml b/.circleci/config.yml new file mode 100644 index 0000000..9e3fc76 --- /dev/null +++ b/.circleci/config.yml @@ -0,0 +1,185 @@ +version: 2 + +references: + + ## Cache + + cache_key: &cache_key + key: cache-{{ checksum "gradle/wrapper/gradle-wrapper.properties" }}-{{ checksum "build.gradle" }}-{{ checksum "counterfab/build.gradle" }}-{{ checksum "sample/build.gradle" }} + restore_cache: &restore_cache + restore_cache: + <<: *cache_key + save_cache: &save_cache + save_cache: + <<: *cache_key + paths: + - ~/.gradle + - ~/.m2 + + ## Workspace + + workspace: &workspace + ~/workspace + attach_debug_workspace: &attach_debug_workspace + attach_workspace: + at: *workspace + persist_debug_workspace: &persist_debug_workspace + persist_to_workspace: + root: *workspace + paths: + - sample/build/outputs/androidTest-results + - sample/build/outputs/apk + - sample/build/outputs/code-coverage + - sample/build/test-results + attach_firebase_workspace: &attach_firebase_workspace + attach_workspace: + at: *workspace + persist_firebase_workspace: &persist_firebase_workspace + persist_to_workspace: + root: *workspace + paths: + - firebase + + ## Docker image configurations + + android_config: &android_config + working_directory: *workspace + docker: + - image: circleci/android:api-28-alpha + environment: + TERM: dumb + _JAVA_OPTIONS: "-Xmx2048m -XX:+UnlockExperimentalVMOptions -XX:+UseCGroupMemoryLimitForHeap" + GRADLE_OPTS: '-Dorg.gradle.jvmargs="-Xmx2048m"' + gcloud_config: &gcloud_config + working_directory: *workspace + docker: + - image: google/cloud-sdk:latest + environment: + TERM: dumb + + # Google Cloud Service + + export_gcloud_key: &export_gcloud_key + run: + name: Export Google Cloud Service key environment variable + command: echo 'export GCLOUD_SERVICE_KEY="$GCLOUD_SERVICE_KEY"' >> $BASH_ENV + decode_gcloud_key: &decode_gcloud_key + run: + name: Decode Google Cloud credentials + command: echo $GCLOUD_SERVICE_KEY | base64 -di > ${HOME}/client-secret.json + +jobs: + + ## Build debug APK and instrumented test APK + + build_debug: + <<: *android_config + steps: + - checkout + - *restore_cache + - run: + name: Download dependencies + command: ./gradlew androidDependencies + - *save_cache + - run: + name: Gradle build (debug) + command: ./gradlew assembleDebug assembleAndroidTest + - *persist_debug_workspace + - store_artifacts: + path: sample/build/outputs/apk/ + destination: /apk/ + + ## Run unit tests + + test_unit: + <<: *android_config + steps: + - checkout + - *restore_cache + - run: + name: Download dependencies + command: ./gradlew androidDependencies + - *save_cache + - run: + name: Run unit tests + command: ./gradlew testDebugUnitTest + - *persist_debug_workspace + - store_artifacts: + path: sample/build/reports/ + destination: /sample/reports/ + - store_test_results: + path: sample/build/test-results/ + destination: /sample/test-results/ + + ## Run instrumented tests + + test_instrumented: + <<: *gcloud_config + steps: + - *attach_debug_workspace + - *export_gcloud_key + - *decode_gcloud_key + - run: + name: Set Google Cloud target project + command: gcloud config set project counterfab-b6643 + - run: + name: Authenticate with Google Cloud + command: gcloud auth activate-service-account firebase-adminsdk-9bs94@counterfab-b6643.iam.gserviceaccount.com \ + --key-file ${HOME}/client-secret.json + - run: + name: Run instrumented test on Firebase Test Lab + command: gcloud firebase test android run --no-auto-google-login \ + --type instrumentation \ + --app sample/build/outputs/apk/debug/sample-debug.apk \ + --test sample/build/outputs/apk/androidTest/debug/sample-debug-androidTest.apk \ + --device model=walleye,version=28,locale=en_US,orientation=portrait \ + --environment-variables coverage=true,coverageFile=/sdcard/coverage.ec \ + --directories-to-pull=/sdcard \ + --timeout 20m + - run: + name: Create directory to store test results + command: mkdir firebase + - run: + name: Download instrumented test results from Firebase Test Lab + command: gsutil -m cp -r -U "`gsutil ls gs://test-lab-734qaq4mq93km-wb8y9z8s6fud2 | tail -1`*" /root/workspace/firebase/ + - *persist_firebase_workspace + - store_artifacts: + path: firebase/ + destination: /firebase/ + + ## Submit screenshot tests + + report_screenshot_tests: + <<: *android_config + steps: + - checkout + - *restore_cache + - run: + name: Download dependencies + command: ./gradlew androidDependencies + - *attach_debug_workspace + - *attach_firebase_workspace + - run: + name: Move Firebase screenshot resources + command: mkdir -p sample/screenshots && \ + cp firebase/walleye-28-en_US-portrait/artifacts/sdcard/screenshots/com.andremion.counterfab.sample.test/* \ + sample/screenshots/ + - run: + name: Generate JaCoCo report + command: ./gradlew executeScreenshotTests + - store_artifacts: + path: sample/build/reports/shot/verification/ + destination: /reports/screenshots/ + +workflows: + version: 2 + workflow: + jobs: + - build_debug + - test_unit + - test_instrumented: + requires: + - build_debug + - report_screenshot_tests: + requires: + - test_instrumented \ No newline at end of file From 65023d6da27f65d1520baef12fa09c97b2e0d3bc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Mion?= Date: Wed, 3 Apr 2019 17:10:32 +0100 Subject: [PATCH 03/19] Fix commands breaklines --- .circleci/config.yml | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 9e3fc76..6240462 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -124,17 +124,19 @@ jobs: command: gcloud config set project counterfab-b6643 - run: name: Authenticate with Google Cloud - command: gcloud auth activate-service-account firebase-adminsdk-9bs94@counterfab-b6643.iam.gserviceaccount.com \ + command: >- + gcloud auth activate-service-account firebase-adminsdk-9bs94@counterfab-b6643.iam.gserviceaccount.com --key-file ${HOME}/client-secret.json - run: name: Run instrumented test on Firebase Test Lab - command: gcloud firebase test android run --no-auto-google-login \ - --type instrumentation \ - --app sample/build/outputs/apk/debug/sample-debug.apk \ - --test sample/build/outputs/apk/androidTest/debug/sample-debug-androidTest.apk \ - --device model=walleye,version=28,locale=en_US,orientation=portrait \ - --environment-variables coverage=true,coverageFile=/sdcard/coverage.ec \ - --directories-to-pull=/sdcard \ + command: >- + gcloud firebase test android run --no-auto-google-login + --type instrumentation + --app sample/build/outputs/apk/debug/sample-debug.apk + --test sample/build/outputs/apk/androidTest/debug/sample-debug-androidTest.apk + --device model=walleye,version=28,locale=en_US,orientation=portrait + --environment-variables coverage=true,coverageFile=/sdcard/coverage.ec + --directories-to-pull=/sdcard --timeout 20m - run: name: Create directory to store test results @@ -161,8 +163,9 @@ jobs: - *attach_firebase_workspace - run: name: Move Firebase screenshot resources - command: mkdir -p sample/screenshots && \ - cp firebase/walleye-28-en_US-portrait/artifacts/sdcard/screenshots/com.andremion.counterfab.sample.test/* \ + command: >- + mkdir -p sample/screenshots && + cp firebase/walleye-28-en_US-portrait/artifacts/sdcard/screenshots/com.andremion.counterfab.sample.test/* sample/screenshots/ - run: name: Generate JaCoCo report From 061750fd2d9b30ead0ec36a02b1ad8018406cbd0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Mion?= Date: Wed, 3 Apr 2019 17:13:22 +0100 Subject: [PATCH 04/19] Second try to fix commands breaklines --- .circleci/config.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 6240462..0668f1d 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -125,8 +125,8 @@ jobs: - run: name: Authenticate with Google Cloud command: >- - gcloud auth activate-service-account firebase-adminsdk-9bs94@counterfab-b6643.iam.gserviceaccount.com - --key-file ${HOME}/client-secret.json + gcloud auth activate-service-account firebase-adminsdk-9bs94@counterfab-b6643.iam.gserviceaccount.com + --key-file ${HOME}/client-secret.json - run: name: Run instrumented test on Firebase Test Lab command: >- From 97ce636c682085133b53326a4947572d2497bf81 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Mion?= Date: Wed, 3 Apr 2019 17:14:39 +0100 Subject: [PATCH 05/19] OK, now it'll work --- .circleci/config.yml | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 0668f1d..f746daf 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -130,14 +130,14 @@ jobs: - run: name: Run instrumented test on Firebase Test Lab command: >- - gcloud firebase test android run --no-auto-google-login - --type instrumentation - --app sample/build/outputs/apk/debug/sample-debug.apk - --test sample/build/outputs/apk/androidTest/debug/sample-debug-androidTest.apk - --device model=walleye,version=28,locale=en_US,orientation=portrait - --environment-variables coverage=true,coverageFile=/sdcard/coverage.ec - --directories-to-pull=/sdcard - --timeout 20m + gcloud firebase test android run --no-auto-google-login + --type instrumentation + --app sample/build/outputs/apk/debug/sample-debug.apk + --test sample/build/outputs/apk/androidTest/debug/sample-debug-androidTest.apk + --device model=walleye,version=28,locale=en_US,orientation=portrait + --environment-variables coverage=true,coverageFile=/sdcard/coverage.ec + --directories-to-pull=/sdcard + --timeout 20m - run: name: Create directory to store test results command: mkdir firebase @@ -164,9 +164,9 @@ jobs: - run: name: Move Firebase screenshot resources command: >- - mkdir -p sample/screenshots && - cp firebase/walleye-28-en_US-portrait/artifacts/sdcard/screenshots/com.andremion.counterfab.sample.test/* - sample/screenshots/ + mkdir -p sample/screenshots && + cp firebase/walleye-28-en_US-portrait/artifacts/sdcard/screenshots/com.andremion.counterfab.sample.test/* + sample/screenshots/ - run: name: Generate JaCoCo report command: ./gradlew executeScreenshotTests From 6d5b2c12b500e80bc284359356af38c2c7b3db33 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Mion?= Date: Wed, 3 Apr 2019 17:18:11 +0100 Subject: [PATCH 06/19] Fix identation --- .circleci/config.yml | 40 ++++++++++++++++++++-------------------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index f746daf..0399c98 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -153,26 +153,26 @@ jobs: report_screenshot_tests: <<: *android_config - steps: - - checkout - - *restore_cache - - run: - name: Download dependencies - command: ./gradlew androidDependencies - - *attach_debug_workspace - - *attach_firebase_workspace - - run: - name: Move Firebase screenshot resources - command: >- - mkdir -p sample/screenshots && - cp firebase/walleye-28-en_US-portrait/artifacts/sdcard/screenshots/com.andremion.counterfab.sample.test/* - sample/screenshots/ - - run: - name: Generate JaCoCo report - command: ./gradlew executeScreenshotTests - - store_artifacts: - path: sample/build/reports/shot/verification/ - destination: /reports/screenshots/ + steps: + - checkout + - *restore_cache + - run: + name: Download dependencies + command: ./gradlew androidDependencies + - *attach_debug_workspace + - *attach_firebase_workspace + - run: + name: Move Firebase screenshot resources + command: >- + mkdir -p sample/screenshots && + cp firebase/walleye-28-en_US-portrait/artifacts/sdcard/screenshots/com.andremion.counterfab.sample.test/* + sample/screenshots/ + - run: + name: Generate JaCoCo report + command: ./gradlew executeScreenshotTests + - store_artifacts: + path: sample/build/reports/shot/verification/ + destination: /reports/screenshots/ workflows: version: 2 From 32a4b47ef276d32b35f4bd1b52285feb8f89b0cc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Mion?= Date: Thu, 4 Apr 2019 10:34:39 +0100 Subject: [PATCH 07/19] Update source screenshots --- ...shouldKeepStateAfterOrientationChanged.png | Bin 38024 -> 38018 bytes ....MainActivityTest_shouldRenderProperly.png | Bin 38600 -> 38595 bytes ...dRenderProperlyAfterOrientationChanged.png | Bin 37597 -> 37593 bytes 3 files changed, 0 insertions(+), 0 deletions(-) diff --git a/sample/screenshots/com.andremion.counterfab.sample.MainActivityTest_shouldKeepStateAfterOrientationChanged.png b/sample/screenshots/com.andremion.counterfab.sample.MainActivityTest_shouldKeepStateAfterOrientationChanged.png index 504a784217f2d386c3195b425cc5dcc8325097d1..1ab04df01d8ef470ee501dd22665c43e63cd1add 100644 GIT binary patch delta 15567 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 delta 15587 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

X8_ipwH{D0~XF<9e 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

t{k>6 zCa&>X+tUZFJB+(~d$#q`A6;FN!%oHPuqe1UIt*AN&(CN&4ypK%uy_JCgFqnuSr~K; zoc;r~Re6Fb!ik>K&C*j_+hXJ+X$<#O52u(nEE;CM`2xak9Sdvb6`N|j05?%rDo+_y z%!G+JOutIkw(5zMA!0q?-mCJeeSd@n*LOblrg#b3<%4KI0WP~n$Jfl^*#f>1UV~H+ zhZ7?TiUjmw^G39HgTcLSEWR?9ev>0+wdfABRo-PJ;qLQ#%Rio14+wX9qnD#VZ+;R# z852TJ>%Ei9n0!Ti^`hZws59uW?jtG^Rfd^)Sz{>;+%EA%8V6V!#c&YYRy-;iHUNit zwp%Mw=j2MrPlMi|gG#Er0wW<023XyBk$nessH!IDX%*2>-OxeZm2)9X;avpk-^@^y7zzXM>scgIhE%t4rV~eJZ4Kc($!72Qk4j+&w!+%b!!VG(9(8~ zRzY)UDNv*Vs9G!HmuA!eIcy`pZdTR~ahEKj#$vY?adB+JLSpVi=;PmMPSmwavztq; z*!1+lq^T3IJq}QIsjY&i?#SJD`cMF-U%$jQQ_nzfvbgZ=6t8W&@j)W1ue>wce*j7^lk3VRpOPR5?iM|knO<2oArzpcCPQwo!9 z-Zv}tOfB{)O!xC9Nv;Qu=mE2P!h|jwWBx8#b%jV4YDe4f;l#00-Zr{5NmiawYGx-~ zw(!iVPWV8a=&ziZOnS1)K?T}2A6Sa+J8==l_g=O*Dm#|Vw*1s9o21uh{Y=td9vk|% zclg1qUa1y~`(&9cCr{xcqyhtJWb?>e>Gaa*@2+FJ<-c9XIq#!f4LrsDGPR57C^me# zWp91+t*m8#ekPjhd1>zv(m>{P25@G)B_`R zZc*pc$bXE-9>WRKHhIdwlA02zV-IGtZQ8i#7q{EU5GmyUhgOHAh)T9xW{N`gBK)>YudVpL*`{ zOxSBUMrdigAXH+|MEJmjj6l}rNx4hp|3v-5x(+yj+aOD__?iN*%xgZQ2hikg=f?Aw z+Y2hILQ3u)`|%yk&%ZjZSk&dBq8Kxn;Z_HkHhMP2rT<$vKX1LVLTlr%MmFxdOMD%U z?oZ&2XQk^DfkJ}pbypw$8p@rVDFyp%kIdv^_}#oVKaRXWt}U7HEkB_0tHgYM{@NS6 z&%vRJFN@oiH=h7<--SKTa7v(iyfvm7DLo^B=n`+S?!@nzGrkzc<$UETk$b^XOCb&?@y8emA0SnzHvw~%EfO#S4a z?X_EeP9JjtDe+WFnCEC{ImweGs#fp%h08W-YrI^!VG$zCOTWm(aco_$;Hu`~RF&@X zG|Fz&qwP$yAh-ma`S(kXX4y-nfk$Q(mE2JuGb+5zvy?P^S^hbeZF(;`z7nm+6lMuE zbns30d9h$L+eGtS7-POx^r^!1j$qXNX)luheBk>mij~(qKS7WW9fzX5abNFzSNt|1 zov!I)t0ib_?IXAf{QlLtN%!xj_i3~gQkFnIvX^@#MAJQ1@=CAg)Tc^A{MV0%T{sW@ zbV)rxQDREkJV!y@ws-#JVjkn#bncwh|K^h{kOkkyAJd9bmQ0u!&V~J-2lNY{g=4{tYh462wA3pBp!A9+BH`OVS&Thv(Bc&< z>~^<(=%H7g;1Q!`J$4Wjl}^o8qn|#JR@=_%zJdl@_z&!BIJh# zCqwcpWZg3MQ4YRx$y__@%WxS1A@mY`V;XJzD7(uk;L<8A@_W+BRXA`)yY3mD(hOb*{n` zS;HGf#5XJO?Zb@*dj##zH-Fv7IDiXH*cNn+dVOn~WY^nr-cbE-3w#-*+$i*I?>Y3y zt@pD&P;q$wk73Cxc8({HS$p#44OLjIZvS`v!^EG3Ii9YYa$9uNvv6Qy%z@*d`j~Hd zn1~4wXiq-cZm(l?mesQ1P5Gxa<9&AU{#RHTDOikT=O*RO8U9bkOMmQqqu8Ek@sBOK z_t8lFT@lWFLe$D1P9x2*5WGc;En*GLn~%YnpZ>EG6*%>~G2^y|)))^!&d^RycI|GM zRr)_)Ks(1-jdvxdY+=rJCx@Ulh~a1;vS29N^q+6Lu#>EBB~;Q}eGi>OCWcE$)c5~W z3{c=yf7gbHNXpmu(9z6GE8m2#U+n%z)mVv^{)}Ukwd|hbNA^RQ`oyb$nt1sMp1{y5I_M5b~V21af{#|}6qQLi+>HyeH zLiUgOXi-cupZ{Y-m7Ke{;HEw-7cVPnY1Z9r8=U@6e5uo`jTp-vmlxJffsu7Wf90LS zF=we*)VtHatMjH;ngfUWPnmpSnzSuQE_dGRpLnf9Sqkq?Bo( z#E&`tqp{u+THN2Z_WX5ej>i6uK774Rq6zVDSqDTgy(JKB3SWu($k*2}ypPw@8g`V0 zfkmI){^xs_34!r^j&%#0yi)i1W54YB97z+!)^>eUbrSo##;2b`i2E8NRPv>ZEPBI z-;ErYKg$Gj-AyZKV;qDV)4&2>tlX$Yi1^{5$Oa%Fy%kOBwqsyJeBO$-bmN;+=-q$3 zgZlRl?&{tOE@MO=jk_7cV*cUy}08eJ4oXI4C6#k7Z+uck;!Z zk#d%VmKy1i4aUzw#{X6myVn-V?Nl`pS7LUX>JEoUjv`B>+|~ZG%fNpj1^4%?V0AW3 z1zwKHvw^q?DBY(heD7N*B|mD+u(jLkAj}~i{dZp<41W~rzZzbXCnsf=?og|mcqg;; z%}yX}xGxg*KVoZ=^br~UKh&4o4aOfxyFR4@y{gnSN}waBL1YtOg#05ETZ_@Og}TbK z8J6=8tGTF`Cf3dS2+*d*^IiS(9d}rc>hlvtcef&lXmk1o^eGD7H%?p1JD2FJ57PFR zqy7fw5ZsOL&t7aLT(S6Waj`^5t~b&|#c#FhYWAO;xQT*WGSu+?|8y-xpm?ts846-D zQm>fBu5G({*+|8#wPcL@VC6`zUy{4X(r zRJH>Rs!_vSs-^#Yup5~GMz(O-uuRiD{dfKM-+g?g15cVZq?D1hVe1IdO_`23ufmyv z^*GK;$MK2RN!@&3sc$qV7O$AUa=SrAdndz~g|kF`+>?-7KFj4Qg;@`pGwWIG#}cuD zSp4$`pQ;r3%LNZ(`C+sumY%FoI zF-Gh(Q)PfT_VW8G0l&JU0-P+pQhi6&=jqKX<&0buY0JJxec%P(Lkx!9^2Ks$!RK;vJQ`cYl&9bX2 zCFnc(X)>T#pO#v`k})===XWh@eovDhqbGaTgv)$u=kg9aW9H|;}6Yt-T5j=@BO>>W`v;M43(E@FN!wEe-Lw6f%~h z1z}sMs0`Ta(sl;-BFDqPWJk^9fn8&E=c)I;{)(~bzQ}&~3n#0!d3E*2#W(T@sdW9S zQ@)+D#dNXQGA-=i`RjMS=TlmQZP2@MLQl8TjDoz#n3M##^Y75@@y)z;t+?W4?e&Wb zwwu?q*2oA2x0mCERv1=hI~!E3GdT!b?v|5Z_y+Zk+-X? zvr~yFxhRs+G}No~(NI@r4`lRMsQ=C{pWK^NVz0VK5XS2DbBSA?3~3`Yk)et_s3mRk z22V|ZPe3VN8?9hTHUEWE=ce8v^-J@XlPEQ6n*9Gt4+l&9Ty@bYRD||>)3o9?gnPJ-r(!y z1W_mNCfdvOJ5sXAS0aDcU0?i$fGD%c`!tPH= z5mZ&R5$H2rfr_9xX1`hkeGSlg!$F+(j6?b|bS!ThsKR`CPQ?K6&EPI@6Kaoaje04w zIgGumhl8`Ykw{v;eMFKJWX8x4beRK7REK}FlhT=*;Lnted7hI@y1T){&5Q<;kczli zQ!vQfrb>t0->THy^AAp9&Uo#E}%GvL6+ zaj7L;I!pB4SPfxBFe*mg=+f0!=;3luRIK9PYsTA;X9QyQc=Sq_MRJQ;vbBUKy;%;a z1bBwIN64_T+s@UnkPLLX>(D*IAEHKSB-wG8)tBJR>enR^l=;1aaRE8*Mx42cPgynq zsGgzJcoX#;iT=rgeqWLHS_)uX)|c<>@J5rOpjxZid8rh6A=8KY6Fp!2vf^HB{ReDE z-HjQWly^XAE? z&$)h(6jR>g=ge!s$i%f|4WkL^%aa5HgMIy#_s|@r>}L`L{`{k(I(svWg*mHwwmRdq zA}cC!t}08))2>jIY~8=xX*eXLVt9gv9~JSt#*k-ZP2tC6m>1TZ>8R0=+`58+H}Am z6^!v%si_?o;+*HM(BHo`Z~97RASuGv{btX%eaAzKh2q+ZnNTrv@(UN=6LfVzd1|3r zQ=2R`FEKJ6jd%moWJxgXO7DzZt%%@5S*e(`jkna6yQCf+tF5)_!+Q+d!Zcw9 z8IeS;`Lm$TDdm^YiLjXpodDIOh{i65Ls9nzoW7`IT|3otDRF|WR)=!Gh z=j)W_nEqi@ZGHVn0kg1!-(nM^qsQtEVufFI$OYmQbxM8KO?nctG6F)c8ftzYOz%>$IZ~#4BGhN=`59%e633zdUOfH24O;gs zW(pcdOzboh2eH*g9Ud$sTwL0!+Xl=#VyhR`4DTD48sbRTy!DFlIJU(jGX=dxDKC7K zrax2RohRiA^67rjv&)HU_?p~K`%p8{ufOaGLo!IqZ&;9#)2fPG==g;captO&^urgk z+fsL)yGS|*|Kj*Pr|erDpF#_9?21xiQAldt^XcKZ&Zq4N=!nplI`EN(a}m#i=ezA# zZe$Ox?%V#Ly#5`JbX2(Yi+$_V8mN3@RcG2zV@py#vNbOkk2Fe(6zIH&&KIKUJ-&OY z(VQmfc@b1V=Hfg~&e|=xz-PyE`G*V~hXFhK6h$Kyb65QPTOvfB<>pYxU zPRK)f4begF7C)aXa=ym>F98feq|$z;{oOq(DtTHJN4;MjnUvA?K0JkdpxoY#^Xabf zY7fi6)8T88iR5IBWjcm<5n7g~y&|AIO($3GNiDY|I|sEgaOa_ReV-iin6Bl!#@_j2 z(#2$L?AQDT1gT-iubv#5Vbcv}<|7P3 zOjt!(@VF0oKXayF3bt8N(045V`{=it@A$XYAy%JLF=$fyMV6*xs3Fv|wMbh=i7*x5 z(H;4amdX0krpKG|K#DW4vF}IcZHn7e^Rt(CrDy`%P{%0wMD$dcAm*azvl(=Obt|gS z=&H?r=V{yOODXh4kvci`n#vdWH%Eo_{s!3ez3Mnd_}b}qk{Z>=PYjKFs zjF-@Aut&e|@oL+DIZ#aPeO8Gw-n)-lqKicysG8oP;$XAEtpE7v7BgG8M(ZH&;MsVH z_Gdq)IMpvb$QWCdB|4*TVe-SUA|i670s4&yTq5(A_^YpO>?S9MH6tWHS8JrD943;9 z?i*5;Vd}0#`^S8yOrN!%(%}<7DCtx~y@*EuK2wY4>MbE%r!P7E;}-CW zozlO$1IL)||A(_+XJ>@0^_)&>w1!IvvCTejTN7&oD}kRV$lMCMn>a`*RD2+mn4=9DpUh@Zbado~XgwYg+^g#H z*v<`OAsa+IHK;cGLKA%LDuO~z>bD0p&47$SouT;lmq@tapAJ0Fu@Csn6of?jyvtzI zuCMTJ5*1A)rKtV(D<=$33cFF+c)rZ;>Adsk=W7KX?fw3jd2I>hVr+=c%b>TrBo8+~$z+;9bh!d}szd>KZSR}N~|U&f%%<^w@r z9`G%=gwlSxK1zWgLn9oprE?JaID0pOwNh0=LZSsEh805dDa^k9p#AD{xnV6@$g9yY zj5eszYUoF6mi??v*It+DT;3@TfMk!3J;gTWXKX6C)7=Y8Mf{r&ZOkKgM-5He6EidUBDKNvjb&3LRzcsid~yn`L76%dTPk0Wm*@Kz^U^wKmVrfXvisa z{rWA(3@QU#Nbv}5dw-2rrEoGrBJ+nu!zyn_7JQUbP7b@{jlA(a(G}sgulc=a(_qV& z@Ys;G9CGZ(Ps^?Pmj+PmLWOq4&SDm>M_UqIgWR@Z&xKS*X0}MhcoPk}zfs(C?g}lw z6UVk|%1dL8%ys-{AUFiudydv4C8S@iO|QjY>F@PRm%ov?ANjUO@@G`>fcur2?WI~$ zrv|zA?`t^(WKk6`%?bJsE!|Mh5A$zzAzB04p4gAn_|>fS7>_bHPA6Fr{nz21-Ys^F zu3v_G(zxw~J%q}aw?~;aGa3Fi{cdT>E{Rx8m}4k|3t0Yq0Q_dhi6ftR_hjp|>(OtQBr+xsTyV?^u3!$k zRgS!ODXMNM?!u_0P1|p~eEj&)_vaN@@SDPz=RB~{$E6}Wu7~0mMiFdKt^W*y4At^m z?|ofcpPX>Kbx~kQ!UN%oY&^(OwcOR)>CfQ9Hxc_+WLv}d3JpIT z-KWd7?;fwrn+50dxAwc7_%8m`fg|X?O-OA0PYwSH8O1o7LROdBM)EChAEy7)nH_9E z=BN+Ag$-9cii<1%FE;MIXYFr(1@Lnn-Z1v`FdGL{A>aN}6(nRiOk}N~0!7;V!ryRq zjO!;#~!dC zJvy12tS9EFdoQ98-hp@;zI_|?IQ!7ex%JGHeN%-2xxUdWKSkM+^L~u>zv||eNW)o0 zd@iV6VzPV21V9Syj_c~U8b|brghj;N5WL@!debIgDxswPT-zG0q3T#xme8tYa1U3$ zr093{>BhaB3)OS6X7<`lTGz%_ATCM&$uXn!C)|q0f{=;l{5G=`tvGSI=>QAlUD%H~ zp$*f|@*u+WNvxA<$@YS%)>sHQrM2eg%2W>zgsjln4d`@bSuJ%W<9w*YK}^Y;w^ZMF ze%r^G8B09Z(5-OpCOIJ;WkeSC*ACP}-G6CVeX{hVxgonl7>CL%&9A^P!tJEOko{X` zlZ*P|scHYR$eSlP6f91eSK(AL1sVn)e8^1{^lbiWS!E6wdG}dub59vOlHDn2rLU)c z@I2SeX>BIC?cO@ks9 zg}uIfyF+~U`o0(O>vNc3;-@LR zz7vJ0(n{aaoap>KuU}bWwSxYPbVBb z>_Vt(c(EM0LMy}Eb8%rDQl2i5??3+O~ zVjvtFXUSuqRBl2f^OqZCc&#!(nKMs)V4WK)XmP#S!o|mojd~x*q zZ7Uxa!NgdL3^W3{LlJtK_nl}KphR2hohzqJ{;CVMT&tQ!v|fj z-SX*BCMkUI(m8H7q({M&&>L(=M(WvoT3jQi;|%$9cYaA1mR%RlJZ3k0zrED*Xop0? zDIY1SM>x>o{ZA2@P2Pus%|Gbn5yz zC)A6AWiqytih~zjs1uf6T%}TM6u>su)EkscPTv}6gnYh(rLX7b%Uxt&j6S0PH)ua{ z^b`vRX$*#H?mNF94@wVeBiySUx>`#eyNa$kov2-`KorM{-B;Sv>S_CX9{bcXrSvUovf5Kb*w$*p0g3&tP)l6>My8So=G8W zF~$=D8&0wf3EG-AVz zI4|0g?)l{}>O`vuvhFb@ZFGUE1?Yu`R=;xk!$D_OwNl0@!7X%Sk~_TmZ#h!8>OJaK z^owJYYy#)JaS(%EGKWOwBfF6YB|l9xsMTmyHWd?7=K=TH#jS#MfhATrajEiECL~H) zZ@XF#7AN;@Q%tpO2buKHp7NRdVN6D@ME}?BkO`gKiENE&rf__NW&2@|xrsJy@|@3fd(G;}ibt*>lBRy>aLNKA=cna71^BBR zt08FXfQ=4Qwzao^btM91@Uvv>9E5OctzE4K?0>#J3MB(E6TOV%iybgJ=h&ILO*J}0Tio0Lhad;VfM8>jGS%b zl%Z|g4vkLwr8&Z~R_=DNGzSd|ks@|K#4q${Q<8G&p%Pmy=$qn6MOQ`(cy%{B(QJArOeOb{d)P$*hk-j~zF49g<2U@RgMLdXC zHCJZyC3rS*P<`NA-LdmIa3Qy{YcYH1Zn+V(6Ej)J5VhGiVS%CsnvN3zLZT1TL$>Co z-lw@sftu|_9}eTx9+;uoMHv-Tp~if+7c22y&EyCJr0Bs6ua;vDv0Cc_EB`EU%Ts_C z0nDHWqp0Qiv|NgaoTNuE?ag&_tH6d#sV~iSkJ#}pK}%Cxg2eK&R9JBBb#d91qC?QT z6EUzNMQJ;#4rM-c`ovlLmgvBv^D0BGiVH}_gZx7C7wIkYk&ig&`=2TITjqp^4ybUy zy>kLnLrg@tO9I?_P(7O+wN;Nc4W2i1h`XZl0rC!_3R#^R^2=ZwLgzAItmhr@5KyTq)3vD1`aUbQapzzfHN-7EwK%aM>sPMZ*4UlgsxZEJ_&XwN+fb5hefNfqiL3FPCat9A zX-@24&zsj zWi{%Mo2Bvz=)>;viBS8uoce*9r!MVIN z&Z~SAA8>$qch1ITs%NEKq=9n5V$|c2iw(z#MR?#F-$nIYUpFSBr@mXz@9?+Bb0ISb zB;%elmI624junxcn!>X&2_S%M!fOXY zma9dLcG(mWUVSP&N?i+p_LFD(&=6wRqZT+lh>k)Ow^nam%UcAK2*~_ zgdFk@(YotuRapg==V-rdn7!LZ7~@*hzYd+3(2zYzkU;5+(Gs6X_x}~^sPIj%U=0myhN6~TNie9`_Jr= z!q0DdFT5LRleezHTUGmdU~T3G?~e$owVcX_fx`_ik6B(dHaTOh;eJ&_YuYbq^~-S2 z`p&SRis*y*N4{lKRqs`mo98*eN4b40G@zpQ3d$~n)qM5(_nCVyxwg_rpP)yJ$G|6^ zv{zOVo_fi!MVYLzZe96gXLtndXl$|>Jjr@CxevV}HSIo-3ZSF0_F1FCaW!SueEFwn z`d1s9%1rgajOUit%@8**tk?e_=&kNUC-XvJ)5Z03c@<#x?k=%`*U9SD>yo(s$f^tc zYJ4Vj{?n|GT$YRX;L;g>(`tmqkFNeiaPdf>guv@{E>r1BzkXf&&OHLAvLb722Njyl zqh80_83x|dG7@tiv`@qdnR~NKnY;gUNZXXQw37Ry zNg02%EyBiFg<;J%9G@X zv6cD!;{H~}E={u~z+`&}1RKD8GD=ojgpy<{2C`-9*Lnz6UPt#G+wEMp6` za}09Xy>6w&8^|$<)(?N>E&#gb@a5TGgva0z%Y%CiqL^F7OsUbW{>phKI(*=Z_lO@p zp_bfG3k{ro>j2PtO$U7P$^KKGN-2ttCNv;4T35bjcSyKtE=elJhR{c+l588aMNI%p z;kSA8b_PO$9S>gXR)6Vxc7<9DwC1TU=1x}|n9Ri&Aea9*d>#N8oIYpT2IQl2vww8^ z;jJq#XQ-D0NMd_>el$LpDEJ0V%w#hl|fJ>ru$n52ZcpLt1z6@%Y7S;0RY z*SLZf*bD&T5631o!NR6`0n9aZE$+E;!0M!+ED@52u>$?fls|UcI*T0D=)Ka+k1t-t zv>p#(Mbuf5mf$fIFYn&w7}b7od)D=jc^SUGzU)I;$KKv+;(*Ci5&~Ufr0Io%v<)P4 zqol`3`qnqr1yJr<9YC`r+^Lc_InsuUmoMq_0THXp+~{Wq#cP*pTyELND1Qf1@(;4J zEa0-vx9&dYZU3F%C!>cNA$jl80qFy_B`Wl-2y?TQ)F1zfkD`eNy+WXOTadlW)XGsW5^b9LZa@GThrxG_6u|O@32Yjmmk0&a# zl!U3-oLD&?36nJ#A2{DFaBM3FZ1}2$XIZ41B*xobX+mEo{rf6Ea)o~?i%H9B6Y{9* zCb=khD%nsPwwFjAGT^W^`{Dg)K>DkP!2$(qkM{SQJGw`=RK$nkjL>^IH9xs$%q=Y~ zQOh57)Gm}5YsENJjReeO_-R~5+WnaKZj-gJsMz@|vU7nh07h#`_2O40`o3nkPv>1p zQ?c8t$FG}S#9e$kTc@;gG^BR;F{NWFmbn@Gg5DMV_v&Pv=@D8msj$+9PT3emGE0D< zzEupW{1XLxtNmzJpdCLv^q}Y6B?r(vLluh^ZQ8)<4>{_8ZBJ2bJD|NB3c1y+0Kear zY2C1zP~6+PHutj)2#GgxSX4pAeL~6;^f6lWA_D5or{3$vF)8?C#SR-I{_+;qem9G| zT3uq#Q$BNsc;XlfK!|U001322Q#DD62sjO>sU=GQAn|2+emk8Mud!5>bKJ{CnKg3M zP}LzQCw#{v%OW}uh>~_BQBBAo}p109@B+nP^N(V z`}fdo?X|a@eT9mkH_c_Hf}t#3fvkW^qf|+fyku%JfqqFz5?{HAy6_mdXsq&9*kv9re~;muO_wEY>I_+tn3>(N2wj9 z7agyx{dGUBFSLNwsn5;M&TecF{6~YQTHy>Yx*s%DDF1pUl0mBh-6CbBRYV@>!}qI~ zzZ^DL3}iuUjo>s(@xiZ8r+Fj-Rjttd&&V0XOJ0K*JRiA3hg0juXqrQkbwxpW|7{2G z71BVGHl=SXWB)@Rea;1oDkQeJ7NnhXFv@D|9yL#E9)Gg;$Qf35THhU$Hj~`E@+$W6 zy+(4Z&?1&W!WP|q+Xsd;H&L64FBuKlP5=#TA>kRPIJ!e?B3kh~e5VP%#;)!5kR^}+ zcc^>;cuv%9Vz4VOjLs6H=u{DUw@3o$GwXJKWzlaH<2Qb0F???n%~WFPZnPmReaM?Z zo7vc=f+ALudAk&E6Vzws+HZ@bU&taC)h*8w!`|uFRDJ1%w&+;SiTjR(k%62x(XsKazta{Q>MUC@|B$wBn5^vvp9>ZhzmQS z{&%L4;*Z34$=y8%4`ceo?YCBJ)RwYUYX6GnvxJ4Syt_;^q1(B8_f?{Gg#h;s`1@ zH2@qxQjCAWZPW~W{_h;Nxcd?&?D1!s{3laE5(GSGUal7dUEo@;G;s?dUdPV|^Q4>ltLL{4hEb3mJd z|BZ)WM}MvRz43=e;fFmU!Lf|D@Ps$^z0vI>|7q10OJV&ff&O57jqUBOE}RHq@&&-?k=1y$|LTkm+;pDLQcV;O!a zDsHz;?>NT@b=V2DjlU2f@cbX%h--`x2gHn6@3aq%lEF~(0t{z=OMy=sF(|fFSuTVH zTg_b|X*TtQY^<0E|BI???tDJNse4olMi%r z4P6&ENmrevG+&b9D81kD@$TPPr=ze5ijR)=FrH^67jh?@TN+K+XxO0YMzd;K*M<^y z1CtG6>Aa6F@mY#$xkDMNNj^Vjsk_%rFCu_VN7$vNit2yy>m9t(;B6gapUaV-ixiFm zqvPnm8y!?o2N4#}aWc_dh#0}vnsC*5-!lpeB?>nb%h*!FX=()Ds$$2tj4-#ea^}UH$<}4pi4k+12o#%F z;`|!(e=|H3etdl2UGtBobyu#Wv{Y^+mc|t}k{+uE+KJ7i4NOV-ds_Ufl&n6Tg&q2n1Z16+Q-O>V2XsY#GR?K*TXM*VsTTD{Ru@N^sDl?OfsF$Q z@N?9127221s)9uBTR-C#CxguKhRkp>@HYHf^z55;U2{O25Io;q1W?&q>%+T~qK5Wg z=g-^8eRBlfMxc^=dpBzQV~oA04wOg8pu0uvVk_Vzy^aZOhSsd`)GftTtfXNfWW~28MNPwEz$#4ml1L9?8C}(dUaM1rG*wLr};v1M4>6ulKyqD?T-z9ZATP?3DoL4r-MOE2Q&?oqDIYDm{3JAWH0tJ<5eWja}j0xoNmefim8zRNHa*C5(^-SgZe!Q64yX z`g1zwbsp{1>;0^=N;Q>A(GK1cZH}qxpZ@%&1A$0w=1bgrMD>lkPDJRtanPp}DimVW zo&L)-F!$8A2)e|Ba-WT#nZQM20J@OQBVjZz*(gMTW)*P5gS63ZTpfG$gVCQfwlX|G9Rv`Jh&i;k z`Q^avp2s)bNe|uu(v*L^O>oHM3n*~6E9=?cDJPb>8y{QB0!`_YMup220JXg-9k30x zk&_jF;UakLr)=}YL|Ls_Fw!z3!y(PB;+9OY@llaa;0Kwr~7gI-ZAep%c#B@dkU&sJiG!oh=j<-33+9 zXOJ*;|J7R%RcVflI;gE+D~=;OYj;-O+V@tmQ#EG+^d&i~r9emGQVqY3U+=>KwKg21l!q8&_V)0nmEYr^|KOe!-$@Di42YPq6}=MegTq} zi=}`h#^LS_Mv33U{y0_Q3fPv^dpADD?27p+e zYazuF**ELphq*t5Z##lk_=G2W*rvsbDot#ftLz9gCIG5nA<9r@Sth~>c%Gr_#Ine$ zyRN)V8WZ9>BM(LO3J#%KJyGMIyqXB=PD&Hh0$_7f71Hhe^fX(Dtn0p0<%`B2wgq*I z#Qq}L;z!`{{b%8-vZua$iI+6fU-Q%4S#Fxr7^RsAj}1tLYwDvSkix8yP$JMX&iqMADkj&NyC&E@kMp%95rGV^b`1P&e35uA7y)xW6F@eq{eKpB>b za<)-|k*yf1;K~1(j5U>g*ZsHbR&>&rEz%C3d zaNHNy;`N3eF%x|Ojc_YZ5Mc)+wM&FfVD+w|ex9~N7!{Pvnm&tQ2@l$dw;y~ER0l5M zdcvcEvK}M9oBFOn&YHxv$b&**dNJXTI#p{FiGQ)qg}Dzc4&l=Vs!~7C6_!wR0SkND z4CvB}#V)j&B&#*Mn?+?^^F(N4wT zj>7KWOHV#~_oA@2I>24^AThS54M2iy+H$;{u8Pr*K?$w6fZ^_p{{;<81{)W(L{&s_ zO`LEmQ!`L$48UFTo7-oGz5TKj)RR%V_1|Ef;CJK+CZ>))Nj z-8tON%KxEZwwpw|Nwk|pyGiuF=)vzo$}XhrLdq_r>_Q4a!vE$br!i)wORG5O+v43P;D%=ZLK9MVG#c#R2)U$t;l}Rz?#B3Tp6_Da zzY@HG!u2l&*SpuVOG9?4*e)IY7h<5hkhTkHyO6dEX}gfN%Tz%Y>~24NSx?x#zX?FKr z)bI2B56|`PPv_eEJ~MMq&zw17%8F7rPf4EMyLS&qM*5@by?YON?%l%*eEbOg50mjW z`a$45nUA9CUi15lSgB<02-NX~U1M_dVBST#$m=IT%DFOZPrtpEu%;@^{I(f&``>?} z61fPwPvXxdFd3+xPKZAIXj6Fq!EUP&n{PA!>GJ63Bkabx=GH+2mzo=&Ywg(mMcA;P zrN``{Z`<-HILW)6B^`|#{S#xBeDP-ySV_I|XK^n}s{Q_-l~`0D#-GJ!iu+i97LNrV z;Qm?s=kt*4&*C-wG5S-`Karj1PJb4GWB)&(KaBW)nnzW|_rFiu#!Lwtd1&Em@9wAE8z{lZA6LPg&zj0^})S+JL-my$Rv)x;m&(DoG-c-=F1mO ztccQtOQw1(gJ)AGZoi!Q_!^cW&xT}&(~Npw1t}--l#3ame%BiMA_z-T&N?$%CB-j- zJB9efZuZ|#;n_>#uxT;RAW5bZ-0Hlna{%_&qu3>9%ZcEzJBKDhYia1|E2SdT)spNWpIHm&eNEnVhe9unYswzH#-xIR{(XfUPmk zYL-WirM&KJah9I#0q#vDU=Ed1bRY4({<_YN_4dm0u+&(50RDX$H2i7;3&xQLVjXrn z3HH0$ORRO0p^o@0_K}A?X4arRi3QAk!qetjqR_dnA_e!Op3uyu~Wv5nQC9iZ?~~ z0_He0d%(0crwE^WqS9?x0hJ9A!>yp{)C2eQwit9M@kQ&{{xP(_~ zC3Rp2admY9>kC&RmsHmt^;Y%@MaNdX!KC0ZZ%@%y&2opOVz72iq=o=+Mr&lLsMBe^ zb;!9o&!Oym^h84eY4a-NQJmGnPQbkRb`YOa#%dA(3w0|c{6W5#l2h^G*7Z3K4*J`I ziT486{Bsmx*^0KrO_V?%09{O^#VTKlTdbK)~-Fzh>J!LKU=lZ{o<^ zItWKy^IyBAdmG0)w7OE@RFTh3#ra>nB)Q}S#|HpQcM+8>CJtlAI%xQ@o$jZy?8sU<{(JX8v!A?m>T3EiX_jCt|i9LqxH{PJ8EV6!y9NGbM4E zM#-SsTmCNwTO3sb48pFylXBdgxi1D#ZVoJ&0yk<1v+LFq%8QYlx^sK~L)ArC2P#hF8U zTi3IJ6sY?$wVaQidffEn)h&Zst<+Yl4TPXetb3cCym1-n?T|PUcEHH`bSct|yF!KN z@gsvAyK7k^e#5yDcfI-Z?xC}h@Q)c+yA1PyimU*uG}!f}!*(HPYA&Y$*q% zaM&&=v0&U(ryVXq$keOX6q+7dV_!Foyq4S)NVMj5+YVdA0sa@ib($_ZB(CR%9qqSI zZ32xNxFEH`!#Z>wZKD*S{%*Me*AQMLNmwceMUn#97<5WnSwuHx&#=WG4^$(c0VxT~S#7w`&8Evwa^J@!q* zQWP8mhmRi;Iu6CVYl9MZ1^ln{MmJpfjU7SU1@fLu1v13IYD#myXs-Y!UpIqIOSHFttFfu*G0L! z7fz`*^$e_uP_4vU&)~CZDMxLRQu-k4cu8wbYGQajq$a`>9#u6%G`T;yhJ8Gz3ge2{ zY8h1+o_{WFW;kebZ&s-5!!o;@Q;~2mJ$+YIaKv_iM{#*WfJZ%_Bl*d-;%{T>A9lGa zz>#W}Ry)sP7~+>=Gs%a_sSMdq)GWd0t^=QC0dAs7!#DL}VVZOu;pUne1lFZ#t~yJW znnv5$1+YxHa-Slt`MvQ1%}XXBOoi@B*S@_eKeL(t76T504O3Vr6Qi^kH?8|mdhl%2 zpONdY5ep2T2UPCT>Jd5AQ56y?&$(r;trZ&SbLlBWDZKfD$tkC0XE653QN|aiq|W$D z4(uhQF~J>T|JiU$zxlRluJszZ&-6d;KBI_3gxHp2Zule*cO&PCJw~pBP8t)z*MnmY zS3&bapELXi2*{m39WDBntQ&Vr-JHl$&&>*4=pj$ajpUtNXRa4AqE~Z%!%-E8kmH56C5%A$BE(Mk%ShYeg1uqwrkuplSMr;|Sa-{yEdC>0+r{ac* z-|spWCIy&XH1`b{#0@aA-8&Ji=fZ>F)mdoNq_;<>KNrx|F*u{~2Zu0f~7%7^*+7lS$`pqvuqX*(m zXEnedj=;_D_DTJ(iT-=&k+AG}f%wkB={gjWPd`g;2L0jTnKS@ip3ii&94Wc(F=8CCxUch_47nadgS5_U^R<*l`h zI-Wi~NZ)-2G1$;Yms1YSWv?d*XBci4xYKbDK9)gS{>yTAfccYf(AbI)Yc9<#uqQ?O zl$ZDjoE(~8Pc#(4((5C4N(~P_D`wGe{ zpSt<&Qw)9V4GfLYQE`@4z*{^mPLju-giyxXY-@B}QB^}xw>ycAh>HTUutR2zbCVOyA0!Gv^Qbv zmXFJC)<*3iPJjCQIzEp3QX^@p8pAFIm?MXWS`>$8%Z{FJLjvmE4JiU#bVkyophwy` zp)9a>Re(f3jJf;}xP%_Nf6qK~k{gE9dp8b5X$=@1a``}Bx<{%-n(%sV3|vz+Yr8yJ z=w-UskQaznp}f@8j#|X-W4EJYN=a|J?(>25cqZ&8)uC@2r)g~ZKCESya?C>yU!*uB z*nj*oy|=R)m{VbJ#{{AtpC^u51v)h?v=OfOB&%-;-35AG1uJM@si@7zq>T6_^t%aU zr(Xc@>~Gn#X~~L0I>tz}|+-x@_zazwHa6Dfh<6E>cJEW%n_V!`n~8Fx?M$BJ%dr zM@8oO8}Qe(>V@6f74yLde&qe2r-whE-vFx>N2Mk@k#ps$C;GYPdn7Ly2{&JrwFny8_ro)38J*x&!>eITWCm3DBAO_u_*S|@zHQv z3JE=vrE3jxNHLWoe%4o~w%@2YgvZZ^S~`oNa_eofTTyIZ$>oODyxsaz7~t z`HiL;S@va4lvb!oml}R%vA1)7Wv4R{l%!|?)c69dpSIO|fDu_daLKhyl!E^WPfzIT z8-}D!g-!^kvz>XtYS3blFtX5@ktJd`nbc?$x=v`pq{WT(hzw}Pd>7hX*niueMmp`e zect0>{^>^2`mLUx5bWDu_$YT`Y1S>LW{|7piNmVQ)|*ygUSot*&C| zeg#qMWf>&%OYv>nygfbGfvw&&R+_&<%?}qT*xNTQ3f61rj__Dl3vVnv={M(x^cBOr zhwMoD9gzZHfcEn#@e9hLr~otVW$l^b!SmW{K)ZT@cE13lTK7Dakcjg_K+k z@~6pryr#a=Iy#5x*AP>V@dP`s07sU3TTW(HKF6=P{GZHr_y)?t+%g0$dJ^_iK|AD# z>!?F3RMfM{{*0Fu*8G~52xP103Q>e zdx(qWY5R6(#MdUhsNHSND?BDm?}JzTk32ruUyZB_2`PfECKp-+471wuT@^6yy{4ON zu{b2KACs?8`5yb8#rl*(Xgc%NnV3eIyVq!nT=P zJbAZTK&&sUE0xopqNc*&09CyJhdxQ=`@euxut35dUb2)^mr#}TWfdN)8+x>Dh5RM zs)4Z=_!Fk+RxZcqh^HAn^Wq%=(` zuf2qgje=D%yRHLLtXY$SOkq%0U ziF3hr(l_ka!bdURMg`0oRLDZ^BTjH(8)v?mvwR`}8`?E#gRMVr7012E9eWU2zcusl z5gAvpDX8`9?s0*Z8`RzMAl3g(mR(79X@&LK_Xj|z(+}pulS9hHyx8h2u8ySn&ixVh z=t?EmJ$tM}?%x^sRe5gnlX!r0U3$L3InA&_SceY{*ZkU#SX#^gSXF_h8`H|WLzYs! zXFR1u(FQ0W*{f(gv_z^S7)#5bSMxk~6|3>PcDX&WvT>;RFxHHH9q?RVuX-}lG5QPg!?0lI(uJl~19Rr%s_ELD@{b7*iZrP^%enO) zkr@jc8Us6Xi%aF|M~tRU?MKm~7%SjUOTwKls5P{-Dbu8-a?#b}m^Qs$r=>{(&b}Yd zoB@8LjsJMIz4i#vL7LmlIcD^g$eY4xD8RH;INQXo{afgw=d0Yb50rb$KJ`Gk3SJwp z#`9mV$ed;kCeaF0<1n~OR|`_J^;ENe(%XD!6gPQTzeyU3^W@;Ng_HZHZMO0{lfPEf zUGxZG=x1K0C>UVUyq)u0ijIukP#7^xM#3P18d!OAfj%06*r%)=FLbtGT)aA{pvS)y z%2=*RQ*4%0NLvuDT<1qO_v-id%$g-uT z$|5FYrnw3@-VE=+BZDKuSa5WwHA|He%ckFt>lz&5fJ+p4BVtGIhc=?d^Y{*3)i8vI z3@$f!uLo#Qu!)^8SK;OyBM@~Tz)(BwY}?S=v^Bwu?}Mo8ihW$aFoogIx=YBGkn2L% z%Do)UvfgyV^t0`1*!tyr!bbnc!f4kU=`Xc;lFiG?WPhfP?&6OhWx@D=pxYO+Q38$n zj-W(ex-OggT3|kWJ>{hN#q+_5wrP#V=~P|;*EV;W=)UeYU)<@P=bHic=_6#$D}^h# z0RI%j0Dprh2e56DD>MB{Wz)-Te+N2)fW>{*)^yCKIZ5v_y=9VQbfneXW+2uK*^EX= zp=+*uOdU~h`dwNv1|~4)gKqnlz@4XUL~TD(<16eb)ohq)^S!BmljYuxfam<|Zd!&` zkfs^ixL)cf)ZgzF#ABX7H~(-`qa4z1nAno@D3^|O6+LA}g?;H@iMwwxby9YD7W`4a zaRJB<0LvtA!Qt$IH!0ysglqm?_r*L)@2i_|GnX<{$=40xb6@DBE(A zacxLbo!8zfr2n@d>W_@C&lEW2IRnB>Rpj+!U#1F{) zXJ3*7rW#6fG_OBkraKvxgZ ztu*eBv5-5Vz`&WnbFFafXHXV%U9Tq5xuMr?yk8E@K=Cb8-hbZ3$2HSfi3i0|kO92( zc{|C($`WxcUd!Lieszc{pID~QU)c4SC7;b$;*b(<@bc_7ff-FnhVBd6elr^Ec(rJq# zIv2m`=m;gsoST)q7?D5hs+yPfE+{+%z0>f|VP5Pq#kD(2bp zd+5Ql=5h$9zyDSPjT&jiu16_9pCOTjyNALu$(_4~s8wz6l`P4U?@n8pf9GJFlg)ug z7YamJ+0Rs?9e`SsIv$TgQxF5w6|vK=<>ljaVf?jO>Rt;31@?#19JRSGzf%r}N+vag z{p;k62h&j6E1?WQbmmjXq1+H^V$F+nHh|IC?!}yeNlK547gimIBre-2<<-V;Bd3m5 zP9=X#iV~y>?`W>&a*q$)hr57Zsd@B~c+G_dG*6~uV^;*YL;1ZS&nw@Jjtshv&b~i_ za(!s$6Fc827S+*A-C=}U%~KP*)-^SQU2@mV zklx+-r2nB*#l|f{7_SBzKrA-9D+q9b_CHZpsVgl z&waRqw`CdtYInZ%AH1zSUjcoHQzS0Tmpv$~xBN@p)s@ldG2++r#S&cqZDFFl%OPJ@ zE4aGUKEnTO)DT)r+c8spx)#io4%QL|)d>4%mOzps%2wcMwnmz!YK(W5YG*dK;_#54 zD|u%=19TAeYnJHGr{@_PrXaxvxj)TRH(AP%Rv7SfS?)YHHQilRCD0GHG0Yfe-A#h= zcUJ^x=_57`T8~E_rTO-#E0Af8mw{)|a}-9D+8Y3#eby51D*8!dz8iM6+uhd&Fek(r zx`U@YL3o}ucYqH$x<%*7uE<7jY^ZzpS;b`?-)|zP*)(Vhk_QZ8Uwo03z_Q)!qVOGk zP8OG{l{vR?D}i&}@3;hq0tg;p-zz)y-H$QlBYRWBo5E;*dKty*S1S}Cebe;c%mLTu zrKL~3Qdu^2qteCUTv+Qd=9QbXKU=ukL(;X5#k0Q7d+yy2PHR4%LVSE!Kb;BZryrr}GQQ z*P5x5Ps@>~RWwcOhot<{T-(AwN<%E`FoZ648Fa*1Aj|5E^`hev@aEdiNgN;yLrHBEqPtB4{Iaw0tT=i5ccLC21sRc(sCVxL>K^3wxdrz!G=^=JuL7 zIA{^;?t|oq_VxdLyQ|WtTAqgZ!}P4;%0+CbjMYoJ0SR86NM4Qg!UWxlzKZnsNd)> zJ`wTIxMCxn+Yn`A*fkM=FivaRZYO5h`o`F`0%lD9%Q|V<`b?&@q0oO8_}cuO6ncwS znZl2nKzUqwrop@EfIhx>g1a4M0XW$C`^MywDQXT9_|(sPDe)aVby?s~bS17M#kO<3;3_DBl4os|YHzgz%k9E_h1h09TR-C{sstri`rf_4wb z43mJ>4}ge)by;)1DUY_+Q$zb^ey~SNQ_XN%U0Ru{TlZNFLPMnV-bUZ*W z+FO{_U}*<+&{m26d6970&2m9gDk*^%z_L@RV#Jl#KEj?tVsfa*^vJrmk*-|Lf7i>s zr(8|X*Fi7K!WYib>;Qmbv0b~TmEPO_CeN>_NzhM4t(WW>u=NXZk;l2nXVF?U-0F=^ zrU>#o7j*rZTGh|W(jVo{qowl7rMAwdRj<@mj%e>@{JqZy)mf&}4R;Cr=9`9H+?jJT z%BlKiggz->XaxyVKX+`A_oSP=>0ci$T`5k&AjLUGH$uWw>G>eO9@?^OcLf~%*cjJco1PO{*`#fH++`W3w z&C0Rf5EW~f-=wLf@tM?L)qAU9s!kFvoHsa?{S9dlIH~b(yi`ZQH3i-ZSLFmY6wA_C zM+*%_DjCS>FEbbvJ2GSwQxjs=q5e+a1&XY%=H}1TUcYeo9Q=ihRF@o)X;y{I z=z$JPdw1;f{~c$|OnYu9CM?UMtVdObEKR^?1U4zyXG?1lvrWv6n3Z{iKQ#e8`8(Z8 zsk+wK#8;=SsHcmF{Y+|X)>}5tFo9Pmz1>4wG#s{p5PI=<`c-ISZAukK23VXM;Y2+& z@S)ey?PF7)PX1wU&jtdC|L-Lyb)OJiC+O5fLiT&HksiBR8dbixswLnw7la_+yNZiM z^x$paFtgq`!R0MFf8fBq_xdp6O!uq~{?uODi)5vdLz<#;SCTVn{ff{sZ^>f-?vTsj zcoF|+o4yCkj^zG5e{E3Wzwl_fzL7DH_e7J5A&o$% zgpN9XNpJk51)KM;m@)$ieaqVtbh9vve$h4zqp5@*0(t9-Ob(w~7AZ!_ALA>&tq{Zg zJ48(X$udu~Xh@-is(&g@Y>X{loq3PXvOv=p^bK#c#Q*OUao_{a9{cGhyY9M4;Z||m zuN6{pBkHcoZO zR7BX6Yvs4JPyAQz1ew$mq#VPxnmA0qiE`BkCWXd*EG3)9eFf*)*#0l9FrRdxME$&r ziSFcmu8G%}g&8SsT)E+`*tPnWlKEcg>z{=-{_1hy16S!L$&l9EaJ5>AH{bIOA|il% zp?S8gQYO<`%as2<_jTmqNDM?3yT1M{OmUT_90?U!m(46V?b^56sp8v6N zA39^33(lV>D9INgNtP{~Kd$v`G92w@6mMnwD>Y@25i7ksOotfSCIya1>M$Vh_g0s~ zsSTUI*hF}SWVx-v!P(PAk0XNc)N_B5kSg)0O$;wJk5`W=s=fJRfPoL3?QGH#yqqJP z^{k%xeF}tZy`6AAWbfy^c5u_Tx(N9@0RB{@C~-z;mybnh66d4unc>G9i;*b&(KFpN zX?iJVCyTpzK9T!8Z#AgF@jbbE*3W9$c@}9Us7A7iNDh&g?aBuj|2QAmsm7_BZK9wW z-Xn5vR0r1GN*zo3@$bC(PVA#b`{Y$Fn>;z<|K@nh3#?-#Eq|pPX-b5Pb1QtQA-(e$ zCkrt}I5sC#BMY9O)7?4qc(|a**goL zxL4^(rqg$Q4tJ$d%J%*SleyagUkDJ4~p&&F*)o(UklyUbFaDC!z~1a!KlD zzFU8rw|eF#!wB=@&((vgxA1X5WoY)|`FLj=?}8c9}YruTR`9yOI_Bx+Wz^G!QUl!SGOJLCTy`4^!eSqBbm6~uY5 zMg*}kolisxNae6^t0=ss2>(A|I3^Uv9?#l@ESgyX@BGxAETgBFt(4UXO~SO@V(D;P zI%^)_{ne9=tmnI*lheL2T0M1BOCfWtBu)?f@o$rIUE+|Nk~NlFMp^C$`r*faE+n*j zsPE-Tv;~zJ-|zkO@7h8od3?3cQ=sa+vwA-P;T^*EbF;xt$yc30W$Fakng0VAt)LR- z?M>noMxO%H+inY>zmkzzlPP<`>fqnBd&s)C&06u zqZBX-vhd^t%J%A~cn*`*oc6kk)wbT@3T!c@=E=r|1s;6&O;3FnvEl`f?BubzdlYSH z5(?`2P&Lb_(x|9@^7|+0yWoEe(MsJt$kXSw)>ISa9?i1)XxQ~+nCJCB%u+PY3`rw{ zYl*Xx;U-Tf1?c|wKao=(UxD{ar&NGk{yO>Y(&)SmgD9p1j1xTLdC0jakcLe#SnDi6 zl0Lj?fOkiMci)3Zpj*HJr0MGc$_|+KiDg0Cpx3*mQF;TB$xQaw3%$nkrjc+V(Y1bT z*DbTr&-7HuPUNo^T@}7%Wy62Y)SV5n+f#T?{WnHJ)MR1^-Ykh+c$YJ2Bz(2-{cCZr zDftU9Zu)g9lfQ~w4-dW$M=)6OQ%DhJNb?IUgY-7oR3=0KR)DEG2iWp zUPr`x{SN-8>2vV$6AQL%a;~b(?O(Rmp}1aLKBl8#SrCVRbX#hMt_Nuqb_S(3p0P|E z{AFrjn_1#}BpkcKs48{qAuI^jTO&_ZA*U9cJNAE^SB+@=#OF6B`u#d$?Lm>==G_x3 zPm7FXc7SRBP%m~&ZY&)$$EuGpc)FLloh)T7c>F`^i3MXmtXJwIRcEjie*p^;LGCfs zMN9~(i8UhriS_WSW`7Eou7hhz_CvD1-|hn5)L4CU#vkeHGycMV+R-r?huowN=TXh4 z#P<7^$jdfSr;wGFZt^bx{zujj>$Wa_B8m62#tj1&gm+v#n0IzIku@pajQ1Cd@;$PW zipt)Hjo)Wf>PI-E2;m@5`{EOBKTVy&3k~rT?-H86xcFZnbci}uXklgtFco&-# z>*xpD8u9%GI@H@IFT_Cq3&+yuOQIy)+Pl)~?;k`4CsHWW#&_rXdp<+7{lj$M*)DB% zbiV*T4N$8!YD~?47@?ZkGC`HMUGejD*pw@s_|3nIS6{Z;(>4$XPx8Kp6Hu?vYw!M| zcKleE+G(-TjrvA&+~C z>0~-;b2{LkhYxa*d=`DW>mT28szWG2<)R-Y+3#w|T)c7Z!<#W{Fj5%gUFY~uF72sm z=W5qkTJfw5ns#W~P7I2fS?dMzcXY5e7u)^;yzd%r67Gkfr(tU~7~hjc%ZEcY{e)3A zuGm@`4j7G|tay8P{?Cy=)!(3w-SoH9suM&$Qqwrm*2^CL?q|cs%iha-)d0A9;WSHH zS!chV@ntCCf+5nfTp9P!@b2q)zo!CnCmdNcimMckbtRoQQq;}E7EY+>uCK&TJSb18 zSEQR&ZB&zbg7B4k(N5DN5*noj#9&;ht@3`8 znjm5K$+?5qB}SyWk7+{?%2aeTKbo2-Pw)=uM%ODrD>0-iRk8H2aI4 z@}PIda=#6|esBax8{(bedA7&M%RTuWQObPDFmn5fZsTrqbV?uE@*ICIc$u~4}?d4Fu3zWBDkd#Qv0C=jAxt6j1wUB_u-LW z6`QI*_RB{JpSLOvGDKhhSjFa1m6zKkN-0;}Q}!ab+ohPAg&=G`aI5n_^PC9$(9Oj$ zN&hCMoKYh?Poj!+BtcC>^W6=3d7$Z}4Z{uvlYp-7$G*F}gs}>Xz@d1pP#Py zESz6MS0_svgOm4~u|E4F3y^GIqk#T{y?h4@;PoJK=Hk1#2~?Yub_wt9vdX>JSTX*d z>Tp1$29y(^WesxS9k%C?rCdK}(zG=Q$tI>O=%a{zT8;A?tv+x9xW1llp9)z4%iY$E zw?4D1stU2X4nFcU2quCe%ePWS#?;)*3*S;*e`SZtv(0*Zf{lrpGmUGr;A(2#5gMJd zBXc9IVQ$lSaLD*dIgh@i#LiPwxwbA}aomx-U?+?HX%ow1o~KC)Hw@pEqyD7KBiT|z zag1`)CyUMMsygK_sd<4ZafAeAj>`L31@ukejbKN-2a#e@f`7EqfMC%Vix-@hHRFho z>5k6}f8k>1+8=I0gI^YoI!p?eCshdf7Kou4)k(ojj*TWM6Ps$XmmXPDgP<{6tZoQT z(K&O`lQEm;XV5y%0EouC53!2Acpk(s7ZbnQF4Xnl>SP2Yr&US_t1a%YAlJGg))R|ZF5U=$&Q`k)om+GcDELFt9&CvQ!%N%uDPd1WMsDcR^Im%Bp8bA~1SOQ=R$ za{91OH(MIrOka<^x=9#HnXl?ybDscgF_J{|LA>J@1nCAA9i@t@a}W1(@=E`DsHP4+ zhy*yTe98c&ajFni+)%B5oS&Pjf33LFVEf8BjyZ}+1)MpXh^w{#xz#$3d1u@smp5xi z*n-Jr*{&$h9%{q}8}RlI%RX;_3A;ok<-zGZprko`0+P;XZrz(5z}*V-WvYgH)ft=< z=jq}zmeHR&UT3E)a_E)i7s)ut6or>x1yjX-9j7Nx18|52&g4?zwG{6NvR%KCs<3iU z+lWM6gXsJh4qSwVTyH|Lf2`fXt&A^yVd!?67}s(@X>)r)MyNzqei_bZdH$2wTn;w3| z-lXD@Ln%-0z&8ytFlml&(lH`76lHI3-_$YWO+23tFE7k<=8K_V7hz$V8ML)hz2&E4 z^jR6@gzt_m#GeD}t;;5X*kt?>e!r1S+S!x?S!_}vw z$7Z?vNMcE!${e{rR*e%5I31NWxR&wef3_SD5iS2WD(pO;;f>no)F~1cD9UfnP!pK+ zWIQJ05Vij*ePN-Sv?_nA66FsqZ~R%ui@E*HVCr1}s$k&uEnrH`ZQ zL^*!T+?nyG5*<3hfP>ZW06#4nfLjKMp;2k}ai{viuejJ`8k0y|1E&Pq#))6Qzvf3qsV0X|r_Ft6M$-O|xdF8jRvaRv&(DJBOQv|%cCa7v?G z*i=X~Om<0notav)9Wx4dIwr|R;trTD1F28CQukLSyHu{>h)s%Cz5LE)*X<-sntq)Z z1dS+j3Dl+hN_EXR{|5+1sqVpji1Aygf%tH5*E^Z-c#nq^@W-?k&?83YWEZYVW3{y^ zvQ1v708Nbr!O$eXYdhMohM&42O!Q}K>L?WTsAp8CR2aZc?{dX zYQh9G@(~{E%ZTVokzGR8&d-!;`6WI-ow#EX4gxLb%aB)3{w*x9|Fz zN{=W{S8cf8o9xqF-oot!|NK>*!TYKpcU7Y`gGQdTY@@D#9=QmTwS@}bcE^>>Y5=rO zuGMbs=kx6du>O>nfrcAq*JM?lp2w8C#9Q7)kPOXE+wZB;`6cQCE|qICN+Vx;#uOn( zkKm_2ou$eK!2^2Wy^o%0D}?^g*zg0Pm?HYt%y$@(3BU-sjz?t)CaXPl1=8^}5C>mL zxYkLN8Ubj>!`gi@6qGR6b9r&l?}y+h;%I{b`z4*|NBAG28Q;$Je9`r1taqP5(})}j zsz5{GZ@^+Z!#|$gpe0}uz2=^T)DxFm#(Tsl+iIo}hCc{qY_&*x@rr%+dzyE2cIe0v z74@V4?BLnK&v>%yg`vd9b_Ffk{ew}M`;Z6JfNso8nE_n`i3PnW3CTGYU3>7}OwCF@Wm_q<*4$VHV=PHT8o7#h z-fRc33JV*>5VJ>dC(76YUwXgKl|86cak)tSb+gArea+;)suHATNrl&14zFsyDXD_j z)^CqYe@(_gE;C)9P5!W+Q!cch58?ITIj>n#Qu)sI;a=2r%Z?akb}?aZPIL0U z3O}njG9fe%w?I-@%MBJe#^Cp-;}M3hr)#M&*7GFqGB(O`0_im%D_$kK8*i_@V+?v2 zJZ=vLZg+L0JI5jCPgz&KEg@Rsw4mNA!s{=W9;%R(qi!vYIFqNp+d-&2(B^Am?uIPK@alvo5E+Eax6a;4TdA2VW?(7R6ppO(0#nis@kC}Lt z%5P4ig{pdc=vsc%ou$|Ng|rZIo+MNxHrs_va4MY4|5T--$x}sUkfPGO->Rjj4!IiY zN0KIno4SOXoP_U>;`3r$Gw@aGR>fclTB7Tk7>o@&{d>V8Ie3hPft`|u4!)eumM0-$#A z#MeIMQO%|a%f`2(rMpCTtat8n{2L8YjBf_LlN6YRl@B5liE9BaLn4h*`xD1_Tr@zw zh07JeL~k75vZ)Kj9jCXUH&q4%{wvcS-OAK#YzrRuL#v`gobb`W(9j4K+sDTkw_7z} z>52e5ivnr_6D?GZ)b9v|{W`ni@02cPv2*$8d_V&ZR`R>FTsC0P8BZOUu%C3`3Z@<) z{o4bmCzNkDE=i-$%>4}Me@e$y)}2&S+FRe7UovakjAh9tuy^pj$N)X-_Fqz~^g)nX zy+UWBrd8bMKTV>sdNd8ksyDj~OI=xMMEgIMj+YG~w0dEAIf3FB1Dg?)6Atii3UzZH z_j`NPch0~@U=Rx7h&o*FjRKELQNmD&vihY73_O9%M56$m!2}jHZ|_ErC2vb|k6B|r z_?S51_f3!RGVLlcC4uA5>E2tfSd7~Aq2LPeN=FE%|Fs*r*GdrIPG$%}#3L-06h}y< zai`l_7+rCGzNF`}e?2N$E|GP5XFSLK23Bv0K!kl1ixN2bMgh2W9!_GHDl01^d2jML zUoovX1W!mC{Z594@kry`lGi$p;Q6d+K=W){U0t2^&RAA5uWLTa$M>++bEKl)8d7Rs z+FEAM$jHdyv9Aql+)n4)E6m~WyF5y*FDtnC>6=+8FV{ z;*PShQ?8$%+5_(=b33MMRv5yBFEY@#=&{J00x1G6jR6E7xwv%KhuBB$z(G;H>p{za zUUJVJ_@t8K#SIe^6JpshhlUID#dl)1^NW7Tu!mL8nKN!T=!D_TSh!?6Sgb^1L+OGy zA&4qOum}-DN`>^|IyWpc(1P^nQK+S+y9ii%qhf*V1qf{I8pQl*L@C@82%FVP^qMtZkm5DB_P ziXhRA*dT<^K_Cc$sPr0ofB+E!L9pl^|cicP1Ip@zA{9%j`vesO4z4LjW zGP9T~Y&cLgSJWIl`P_8#_3g~fn^vl|jMwz_ZdHwtR7{TlI3d+HrD1wJJ}Fv@niaHl zpc>aHdB``KA`ZUYcDldhpt#=BTygs*Ugg_R0G?%7_^VMRwo}09b6%b`j2wFmRkLdE z@p|Pe9>WN@*ZlsPum)!GyBxZQRJ*F)iZ&n%C@bT)?!?{rk?QN{$J6*euwk&NJ|5h8 ziuBXZg};a->;utvAOV-x+uclPrC_kp=BXNxp>Lv|Kve03XQ%>wZ?i;0e?#yb4 zkB7KqS0CkcLm6Vw`wU($mw2BKC9aZgSXL|Wn&L1oWgY|*GP7dI~vW|>|{q_v*y6Paj zi!aagqy8{#D|&dk%yP7>pM6*URNpmDFE+NfprIxq>$rsRPw+NlLt3PnT*yiY*53l(j5b$7)#_|&aj;?3tlN2+{qV1*--~6*4~pSKEBsr-LTy|u>z$M zJ-&a}0cet^YRu-cn9}+Dde52}&I&fp`Tdp5zJqoS6qDlqCLzZ#v9IILO{HcIYKb9a z2_5bCMrla-MHjW5rpBrLo88sNJu9#PCC`o7ISn$=m#&V!vNa=$8YscmuK*SbP~xPt080s63k7 zE60y}CG$_q%>%l>>axLRA@yknniGx1nnru^q`xKXI|(g*2Z6eTk3Z5Ut9o^D9%4+T zV@jHy-J3=d_Nn63JxdC}pl&LPiQLPHdUUTWqT1od-_1$$BINeK9x|-ED~CZ9_{%O{ zP+`BAgQaQ2VxveDDuf^R+U+ECt_XUgcx5BAwSDn@5VZ|sq%RJCM7XNafAc{$jQAv_ z|Bz6z-l0u{>i69i@L1D4yWL%aK^NeU%zY^d<9V1=2k%dR*gk#w$OrUgQGSZ+ZsHvl z@ot$2Olc&KUr5U)Lw6~N`!gIS>KWC#WS$$rbZs^+mP1Duk%)*h->y#Fe)hKPbqiL@ zD|e$Lt$!3Em&JF&;*{4RITT-TH+f{lImejKC`s0r5-B@NIMN=km3#X%BnE!+=YR*= z*+8GQ+)cau^suUXPp_h*U#T@e#LtN5&~vf%WSJk7y)d|-+HcTvx= zsf%7NmvDvCt+c2LdKjKLqD}b+2bU@91o)`G;zVGj zOmo_k5ZK!UtvHHGNHQ!~M0Oy$F3GLfPo23=0!Vhc?`dXTXX&VP%Bmci9z&09&$_N( z)^Hd9L1%(^(cdb9TKQ$~KE)OFQI;Lq$3CjJ#~?BNaHk>)D%ol+fnn$@)G`;e*MkfR zm!G){=>9r~tw0PTh`pu{li1NKc`(T{fojGj>!8ayqYT*V+K-P-!-qpi&MOaJG=-u? z2O~i%OUc95R*`g3&ntf48qZ-K)B>hYc}mWJE-4VZk$K%E5|i@%#h$GghJKaN%=)H) z>7;sNkicv%$$V(8R`ctKBUUdmV3^nUk(Xr3#&A%3lJ}UW-i2cpiuOGlQlPI`SPmnt zE?S(ON;yh(Rs1OWM%(R2$|h1+92YY6M4{j$ST(_tJYuH3CcFvlNt30Z*FU{L@z_o5 z2{AJr4k(kr4uXm4TDh0BhaDq5Tmh=&rdQOjgj+FsBbn9Z`fG1AON!msSd%)Wj?#JU zoVBK;xIY#`s-?|HO- zO__mzDRamRF5yA-zwZhq#-%PujvD+5aEgRyge|+|QhW@YCci-tve^pRK^+BwM3v2v z?5@%k?HuO&q;q4uxW<1VS`*XEZ?egAAy(ws`u!?%8zEU@LXJv@8jn7f=nCqNqa;fp?sUL&bzvbd|`NZ`{)bvUAXE~P6Yw|bgX~5f-dwR z2P8aRhuC1r%qH=G<;`%wE|g6r5XP+0Kp-UgFeh~8ORUf|r0Y$}a!UMs*-$~dck(zF z6?fcoML2q8bd|RE<+7gG*BEdn8M!R7^hxI^e~ooIEE1k1F|VnALtDAZm2GKj?{-J> zq;^kBQv527t}s=uvN|s%Jy_(@@bU25UU7VYoZr;s3rl5HkG6aTX?P+LR1)lf-f~CL zN}nU?g-v$s=FAd{9)}-}X0+BVT4?*KrC$5ZXef{TE+yaaR<+g6SICImfRZ|u8> z#2f=?D^GnL=F+~HkJ$PB)?>*&>W2Pef@M!2M6Uj!-PXH#EH_Z~rP`TCTIE^wQbpjOk} z2-Px$d4no^N@WeFx0*7HPFdh5TUC+EyPmZ}-pWY%g|#ZrtH#+6N{9awFlXm>XJ&A@ zCfDc7%46L>%Sf$1v2nKAZTM1h#hHMnlFpc7ZIe(7qkOfB0^&FL7bNH&k8c;7E^*4(5v0wwLi0qu`+cL+fm z+2u#!#F-Ch7yqi6_jf?gCbjFWk3ERVRw?^Pc#_DgUrvsVVmWPPhcCOv{bqz?r zWC;FWw^$M2MaCNb!)g*Qw$@&oGyeBdUz)%vx5iv5?URgCOCm9_ri|)RfIaGBo)^(w zuHe=sME_g|(EuV+yI97?Kn*M9d0;1yVjoT4`WLrqG_a}IvO({VZ(jKYNKyyvoSkcu zy0<9OPZsj$9-%x1|H`S#*6P2qzl49RKJH`sUp_=$_#DFCjA(v)R{O!b{ggMmNIi z$#K}~mB!@MGZ9@sYd@yBC>+!eyF@1a1@~zkbxi7)ju}j|z$ClCGmWgqkcST}ro#}b z(#abT%^9L}T=ZEmGqkcqt=-3V)=hqYLA#9Vdz*ndv|PHfk^H8(I9pLD*&{pR{Q;71 zR#(xFQ+X*NefA!8IS!6~WdrW&Jp{9q{z%oZh2cm^s8P;YQRBh{;?-1p_lzpmaVebe z@v?csa8kG)?uYCsT1z<;;q?15a1~0O*GBbY$=7YoOZX&`A|wu?@NcSDDw9)|MuknL zrT{N&d!dr2ptYI)tIbC*6utS%)SCEHT2{<7t%*O1_NKG*uRMtf+(#QHMB}EY1+Gd) z%5~lW@bjkoZHtlPBjVU=(~=Cl8PSVW%`j{hK}S_yUdNN=1Ek9>XGSCEAu*DEYc2Ax zVYQ!ANaR^+Vs3o;Lei+}WV;kD}puQe2>Ds5-)cIvxC6$i&I7Il>} zOx#Al>bxxKDr#UpHeg<#sTf=BifwLZ?n&in&^dE9RUZm;HUlm;`H?y7wJ= zJ;8m9Yh`fcezT0QU(%@yr8dfvFy^?9bnpr*zI?iOM;AM1uNkSp%8ay1R~ZqwTWZUh zuS_!=%A$JrBdxB-m(2Y=HGj~+sY=r+X0Zk`U-p4JkI8kN$Li}HVeH~FM=jJMCh&VW z)BSx*4N;Hj?Xlz^Q}gYy;p-kTiXZo}&3^y=mjRnR3*~^AjW=Df^X+EDXQO$JadE1e04zwT<-X)al zgU2*iv&v(rq=QXOA&K05e#edn^0|LXa2rK0*iEzOe&)=4Q*)*y$9`}j!|F$7fXXoA z%ADeeBgXl0O6V2mfVqcBf_a*$zeu3I?q&^lwk6y7;TV8Ey_A?=)3tFmjab^~THR8> zOCK2=5#uwHG#;$k>dK93eQCb7N_$!0*N1uTdbubPIBa(bJgD8JlMlN}DSK8rU0uTD zRa%t%+S@U=WdAWqFg0~V`8=_*${z)zJOT|XZ8&;rGa?ZK1;){-5it zKe?&xx9BLEk|+^g_|rI!YyN#}ADIs?n|w$%<-U8-VoVeZUx>%ZgBR82yb_e>R^0gt zPx~H}_GOuH-6f_tWx?N|^n$P>_xEGY$1KN?_7H?CdoVNBn>%~c{^0k&3SRi2&--GK z;=#{d#|cp$3*3^VpWoO6CGbb)PlmIU3~F{m5%(*={M3E1X}k2|wPdbhr!$yJ=DxOM z(UaP58<^lD;JwitwTbt7?w6`>9VfnlPsRW1BTfs&=P6Bk({6(WUHJYV-SWRryFkj| z{5e{A58boM{5H-zK=#Sfa-HU$n_^7;GI2`mLtZu8UEZ0Zd#A*7*luEtv;W`kO`A=` z$9_tP{Rg~0eIO)~`}@0dJlsh+qIZvLbY8R^13!0k9poD5cbETjZ@G%LWNKo$e%w@U zn#*Tt%WU0B#p0GTxj8uvncTDG09AbMce`C5f81;&pm!rXW_4g`sab{89ugL|wpm+N zR(8g#>s=ABic+m@olAX7I!#t^lYg5>9t4wmGku=~BT6YaJ3AY( zvw5YkwVU2Cx{MapDPXRt%+Jrey$z4HB}_m}9-HooR8k~4hdEaQ z9@G5xv6KTq>k9_lgv##RPSY1>gQimg;+R7rK0mJ7*t@+fVsFw&9Ou}LDVpqrv9D3Y z_#=@>DQFx8_{x}Fm-ZfnaW+YK7xq>=r#io8bud;G9I0>z0I=0=G`qy<&iCUF4hTAj zjf6D!e6sTCN4nnJEA-(*e(mOLjlPKKx2Cxy`(pRru}(Cv0+%3W=*L73c;{iZu7cy- z)ZZsTN8Uqgjs$n#g~1}GUN(cdcD6LIw|gOHS+a@Y&nP61jWU#`4* zeIl`@RwH1vT6=l<1$ygUw>9@-1u16&3Em03f3jYu3L#|g*Ml{-7g!>xx>@;4Pq$tC5O5Cd%Nv&E_F$CDhwp^AHA`=OmF`LAE{OcYVfSP$ z@;^_*7kIuF$BGwK~KE){l?q_c|aOEqrI%hbx18`q#Ip z2C(e#iG(W5l#%r2)e&v3Hr>R6Js5Wz-GQx8aW*+~iG9A_P9p0tRvz9UZ0poXV<7ke zdYS2kxRo@{oOvv9=OR~zGy~^oR^yc|ET%M@y~L&D`6XRu>_l)gZ{kEX?@_1*oCx%b zOZ5N{blqVL6LG&Dxj=&Y)`STDB#@FT@F-^=Y)$A!TUf1C89A0&(oue2g(NriLW zLTj9da{=7RLOZVgLS9V)Rql%8pUaX)=+b8Mur6G6q)#f++GQFJ(g;}jXNjme+zJJ_ z_BC6*FjnugJT1V-lkTuqNThCGnWxnNJ*M>N5td13aVygToL>SWo)=oJEcLAYK|TIn zeM+jpG@{QUzGV89*-L(_0&4gr3WbV|qsOd`*v0}&oCG66DsZQ!HmGRqP~gN_>A0=M zqUl#Ysryx`1A7Xn0AjIux44c^q#rjbvG*(Oojvp>ymq%eq9@#Maa0#1Tq`y9p#yHs z4n7#`GH{Bbc70|K9>(zb-~K2sqPYK*e@j!9yw&^VeG)9cQhSL5T4Q(baMh{!NJRw7 zUP5}~o9Uh{c10(fhG)~n4mmi3Lr$ewS;&LxhMk=+>7Ko^esiLKShYKfL@7=F<{MDnodQ=GKa{i zc-9bJiHeSk#l!HRiP1i(gXqatuhAXMt@QH7LKUsx4gq4CvR5kn4H=6LYCG%p{dk%p zFe>kyUHT?#?m->n*q;8kU!ZtD{cESUA$uhfkzjoS17B#g6Wryn2Ea7(!BE8~sgr?D z!JQYT#vTYPtW@$|#@(Mz!*99qA4?M7fU#z6S9mh)tUJ+K1INo6wz>^iR%ogtqEVQ} z&;u=QC8&HP)baJ?Mmgt*YO`V=-;(z`Bog|3l|fVERNRqEE1(*v5ZV|ic0KaVlD>b zNBFmo&4Z}+R$K`XHc};4v0Yq!g^|L1Myx!hXS#NXH(*NQG`8{W^=AB5Gg!&)XLnw3 z6+XY^3tu5})wX+kwsXKThfU|yW<^YAu=HX1cRW$zxTSHB2+R7&})F?93g{4(11vzQ+ z_~~*x=p2BK@Th?74UbNa;Bg%}_aT>X=~S}{ehVHK)2eV;DrUJ;AC@dWU$K#txh$wT zgG+iFq1+^7u6V5+nFV^k8}Kai(aiEVX8C3fCQms#YN2u|EN(4KPnvirqhf%*l2%n* zJX%OJyFU^}t{Dv{ets0r&OvE=*ZB;%XZp=nC*89#c}iF@{;LX9*DThx)TD)j{MM;x z^PCX+hSyP=vreQ@;ooQmY>GkOhD0ko^rBM$@~|>=Yo&%B6M&^BXf1L{Mm#!w4KhLL ztAh^z%dS%V2l)ppLHyi3*L4@z@M-+&ppRSEyGwd#=2wB(j$-Yj{w4Tdk5u@ymV<`; z%9Xl5SYkCdj@l@dj2?pl=Ak#FF2lnYddHlvZflsTZ<}1kF9Le+n|reEA$*54O(r6_ znQfX^_xlx|)V_*N#WI{k?E1Lg|Cx<|Hw2-_M-xrPfOq2<_v-OOu&)H*Ca*-I=bM3@ zxDdBD;$=Aa8!P!uouyC&QhdrCN_u-X&?$PcQ4f#m-D`9q7ewfV)Ds)8dp;vM+>LqH#ccOD* zMo@A1g|Gh(I>?|8hFD*0sRxg``H0B(LFQOI7HUuyH&Qq9dFGXlrd)ZUtdzmkA1_-Z{OYygHp9CLCQbF+>sRbxb%j@a`&t$OX5xJa(~@zuM=RqU z?zIdd6sZNdeHyp(oqbkEXT_!1rSEcpe^~4}Y{rxJI|Lc8&9;Fg%9s&O_h{8?6lnfq z!MHp8{|r2KVZ6mK|MIjBP0Q%$(7IUZ0?_`}4Z9w)&(pXFX$420SC)qp&hobo9d)2w z=4*7i+Dc@W)r$NMI^vn&v8R9m95DB5A=ueLlqVi$tlLM=n8Q9lmvIT>Nj6zV9{ruQ z(=I0~mG#4WxY%*ic!5Q1e$@2ieqSAgbH4WbiOi=nBvy}=<;uqJIfd(o9@}|!oCXHG z3yenh9NjG(bY0A${Pxq($-@gYul0p6yrYMcn$2Z`#w#EbK1j`10aPZvFcXuxuNI$w z;Mnxv(bKBvPo|V6i6qg2L9IQS1Sk&im!GaoFqf0W*i=64`RzQXAP#Cxz)C2{PIqYL zQB;LQ^TfNSHVEx+c7l$lxZYWIGFZ)27g)gSFa*eIRetroN`Koas9^i55&Ax-@`-B& zRt_X@yJ{wyz#ar!X^6%q15nkFZ*`r5ofCj{2cKoHQ)uLs^h5+;`n?A&#D-$vo;1m@ z;cEqece^mOOeVM$XVO)%PXZb?=3&6J$F?_K89n#G`{`~R0go4!Xl;-X`A}hx%AAg$ zFDKWMNRE~xNWb%mX9RLWuDbK&b@EAo`X0{;YMV(ANBsF+{zKN8$>^uMg?HU>4Y{HV zZ#40BuAF$H@B`=s=e_ruu9ZU0PXx(EU;u%V_2QDA%0zKupOwJ`tc=S6p&PF<%Z1el z>LvcW?Io(Js%G;a$7{h$SKcLQb*aTyG!=dqG&<$VZm4$%YE`ENHStGKSoT0x>}BaK zGW?}l4l6{wvXrqG1fzPp@$T=L?hh*0hmk&hQhbBerMdRLx6Y2;-8HL`B6?A*0O%C4 zZn3-v|6v*yRXTj~aV8O<-ABggTjY!8-IFalupIV6np9NL_~U`ON=*rs(!Zxu_ht#= zK@DI|y>x!)1XVA3NZ(pNy1iD!AWC8~q8;=YG z5ZwFm^i{qD%<)#!sj>nSK$=QtarwCUW5b}qg$y;Hb8x*xD@z$?4}dD-m1wxlMQu%T zbP&2*5}tW3%MNP84$+pW2hyy2?Q!pbJ+LJ+8<$?eM;p2Fp>{DTU|IV|Fc1k`;{M~V z+^e|?3Tnz#nrWvee~gRWAtC2{pL>p=AdV+wT(Sb|_pMNXFR3z}~gZ7nsE zGRwdwhTQg6X1;y#?3GbF!3G@|H|0i?f$6`wrN9i-0feX-cm=%-gak%B&&9#E_94i6 zQ@GoKLVD}YO_*r;4^y-TeuoH1I6UM)r|ff#`%gEs)hk6tIp zc~>A0-a4Oubs(r+k5)?f6RFjuzSBb2BhLdJQ`SyJot;j6J&lSrzsZh#R1 z#nl;7%~Ag`TYy{TS0Kj@GThE@WlvM0GcO2gQ=Y2+01g23lz|Qan|rS51itw7w5>j* zU^9!e0^^iQy*}HOcWjSP@xciIH+sC%>vem*Cq?}b4HCtY6U)!-#)TAa!o@FS5pYLr zKt`|qmzs?%;mISme}yZr@9;&UMq&j{>awr=lMLZSr`Ei^uO6JsKb?T4Ui76MZlfji z3gbTi1dT;W#5wpHp0xPMGUju9F7ilH9Rlp8=o3DS3A!+$MY4Nza3~yp!6LubQ#g+3 zs&0~BBI;ex9LSji!{$NV5>nj<-$4NqGAc%2A5|x)83VRqw0x|6FS;(OnT)~8Uj~*| z{G;bWj)zR9R2)4#^b%yH+I1P1B~1pjdT+n9wvnfSYQJlmxhm)1MOjV-_qWW&C~K$C zA4f*9>EEF@K0etHS`^(+DhA85_v%4~YjE0?Ej=U+X?>yf>yi6cbmN8M;#`^Lx^M+E z-=Ty`@x@3Phel@ck>}nOaiL(8JBg=}al*+j4B!V0X?30HL`cx_30Mw@OnR?H=;4%( zTjU|dn{1%fs{Zw4Ke_9K&v(Q59*Z6j*PO#VFi~}B2Qjyubc4K&Ex}ch&Ask;b82|a zFQ9bG+X9ghyD>yR6HjFKc^Spa8E4##VMOkJJMLbsoFXr!S1@kgd`;Py z01(88bogFMav7rfK=)FH$n4PHhMP;&ytU=c!xqp03b4#nfba=G*L4+gQQZC@_;}qI zHxDS}dK?jZ4K}`8ZbmEBH?+sD7BAK966iTBirCrw&wj8n1GpS=Udwsh{6+ zQ$kn*(M$nz!`6*ZmewR|fkhTV?Rq?s)TcQ*vcLbo8^dzUQ|Q(>aFuTBbxs1KNOCz! z)(#jZLH+DGt(Ox(nn|wOOM{c0mg1FAnn1SYBq^`PxOrEaB;U-6Mp0;uprOo$2AcW4*K*UDw8hNvLn^UxF`LLo0&a4;du31?zmfkTmRQRIHOe)n;fro zmb*de6Hd0?#5l<<)&6~OaBz47__LdTfyQ*?d=s!%ZMm0Q_w&ERR_3~j|D`_l_5neY z`A>TN+jF=*huf=idl8KRaQ-if54Ry@8&b9*WgAkqAq7C{f5-leZGhbd*lmFQzX0qy zXMPX|_6P7a6y{EHUPL`M)IOTSeP+YtKJNCEbJ=ykc-?;SKVS~9=pCPcck+)cj|3|vQ5&qiRw042b^%55^T@GHYM1m1lyEgn-XkOg6($r y-%JTc{ffE!vYt(U-Cl0n%WZqP{eLYty**vTSAtM^?pNA(T)JRkTyXy8{r?5u^~EOu diff --git a/sample/screenshots/com.andremion.counterfab.sample.MainActivityTest_shouldRenderProperlyAfterOrientationChanged.png b/sample/screenshots/com.andremion.counterfab.sample.MainActivityTest_shouldRenderProperlyAfterOrientationChanged.png index 2c3bbf70470ae5a34943b5961130d17f635b4106..787d595fa66d6f159e3a2822fc51d1c107f565e7 100644 GIT binary patch literal 37593 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%0D)f)Ap@BJaNH0t&J2GN=~)!Q|^Z-hv)9v24OK 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 C&D;n8 From 7716bf170ec4eef218c9504928361d87ae58f928 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Mion?= Date: Thu, 4 Apr 2019 10:36:08 +0100 Subject: [PATCH 08/19] Fix Move Firebase screenshot resources step command --- .circleci/config.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 0399c98..4b6d07a 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -165,7 +165,7 @@ jobs: name: Move Firebase screenshot resources command: >- mkdir -p sample/screenshots && - cp firebase/walleye-28-en_US-portrait/artifacts/sdcard/screenshots/com.andremion.counterfab.sample.test/* + cp -r firebase/walleye-28-en_US-portrait/artifacts/sdcard/screenshots/com.andremion.counterfab.sample.test/* sample/screenshots/ - run: name: Generate JaCoCo report From b6733354e8adc0623f6ba10ea978b5659b29d973 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Mion?= Date: Thu, 4 Apr 2019 10:49:18 +0100 Subject: [PATCH 09/19] - Use environment variables to optimize build time - Set Shot library to only verifying screenshots, not run instrumentation tests --- build.gradle | 4 ++++ sample/build.gradle | 8 ++++++++ 2 files changed, 12 insertions(+) diff --git a/build.gradle b/build.gradle index 399a137..a730287 100644 --- a/build.gradle +++ b/build.gradle @@ -57,6 +57,10 @@ allprojects { developerId = 'andremion' developerName = 'André Mion' developerEmail = 'andremion@gmail.com' + + ciBuild = System.getenv("CI") == "true" + // allows for -DpreDex=false to be set + preDexEnabled = System.getProperty("preDex", "true") == "true" } } diff --git a/sample/build.gradle b/sample/build.gradle index b2d19d5..91a0495 100644 --- a/sample/build.gradle +++ b/sample/build.gradle @@ -11,6 +11,13 @@ android { versionName project.ext.versionName testInstrumentationRunner "${project.ext.applicationId}.runner.ScreenshotTestRunner" } + aaptOptions { + cruncherEnabled !project.ext.ciBuild + } + dexOptions { + // Skip pre-dexing when running on CI or when disabled via -DpreDex=false. + preDexLibraries !project.ext.ciBuild && project.ext.preDexEnabled + } buildTypes { release { minifyEnabled false @@ -21,6 +28,7 @@ android { shot { appId = project.ext.applicationId + runInstrumentation = false } dependencies { From cc38b9c9c928e3151a5e575b6d58107b35778a1b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Mion?= Date: Thu, 4 Apr 2019 11:01:36 +0100 Subject: [PATCH 10/19] Remove unused unit tests setup in CI --- .circleci/config.yml | 24 ------------------------ 1 file changed, 24 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 4b6d07a..ac0ace6 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -30,7 +30,6 @@ references: - sample/build/outputs/androidTest-results - sample/build/outputs/apk - sample/build/outputs/code-coverage - - sample/build/test-results attach_firebase_workspace: &attach_firebase_workspace attach_workspace: at: *workspace @@ -89,28 +88,6 @@ jobs: path: sample/build/outputs/apk/ destination: /apk/ - ## Run unit tests - - test_unit: - <<: *android_config - steps: - - checkout - - *restore_cache - - run: - name: Download dependencies - command: ./gradlew androidDependencies - - *save_cache - - run: - name: Run unit tests - command: ./gradlew testDebugUnitTest - - *persist_debug_workspace - - store_artifacts: - path: sample/build/reports/ - destination: /sample/reports/ - - store_test_results: - path: sample/build/test-results/ - destination: /sample/test-results/ - ## Run instrumented tests test_instrumented: @@ -179,7 +156,6 @@ workflows: workflow: jobs: - build_debug - - test_unit - test_instrumented: requires: - build_debug From 6ed48a905095a4f6b487fb28d8f2bb0ca778f4b3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Mion?= Date: Thu, 4 Apr 2019 15:05:43 +0100 Subject: [PATCH 11/19] Add CircleCI badge --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index ff2a799..4730a8d 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,7 @@ [![License Apache 2.0](https://img.shields.io/badge/License-Apache%202.0-blue.svg?style=true)](http://www.apache.org/licenses/LICENSE-2.0) ![minSdkVersion 16](https://img.shields.io/badge/minSdkVersion-16-red.svg?style=true) ![compileSdkVersion 24](https://img.shields.io/badge/compileSdkVersion-24-yellow.svg?style=true) +[![CircleCI](https://circleci.com/gh/andremion/CounterFab.svg?style=svg)](https://circleci.com/gh/andremion/CounterFab) [![Download](https://api.bintray.com/packages/andremion/github/CounterFab/images/download.svg)](https://bintray.com/andremion/github/CounterFab/_latestVersion) [![Android Arsenal CounterFab](https://img.shields.io/badge/Android%20Arsenal-CounterFab-green.svg?style=true)](https://android-arsenal.com/details/1/5052) From 71629ef3cb189a437912d650ac205e993df15cb3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Mion?= Date: Thu, 4 Apr 2019 15:06:32 +0100 Subject: [PATCH 12/19] Adjusts some paths of CI artifacts --- .circleci/config.yml | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index ac0ace6..0140a9a 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -86,7 +86,7 @@ jobs: - *persist_debug_workspace - store_artifacts: path: sample/build/outputs/apk/ - destination: /apk/ + destination: apk ## Run instrumented tests @@ -101,9 +101,7 @@ jobs: command: gcloud config set project counterfab-b6643 - run: name: Authenticate with Google Cloud - command: >- - gcloud auth activate-service-account firebase-adminsdk-9bs94@counterfab-b6643.iam.gserviceaccount.com - --key-file ${HOME}/client-secret.json + command: gcloud auth activate-service-account --key-file ${HOME}/client-secret.json - run: name: Run instrumented test on Firebase Test Lab command: >- @@ -124,7 +122,7 @@ jobs: - *persist_firebase_workspace - store_artifacts: path: firebase/ - destination: /firebase/ + destination: instrumentation ## Submit screenshot tests @@ -145,11 +143,11 @@ jobs: cp -r firebase/walleye-28-en_US-portrait/artifacts/sdcard/screenshots/com.andremion.counterfab.sample.test/* sample/screenshots/ - run: - name: Generate JaCoCo report + name: Generate Screenshot test report command: ./gradlew executeScreenshotTests - store_artifacts: path: sample/build/reports/shot/verification/ - destination: /reports/screenshots/ + destination: reports workflows: version: 2 From ac8580ee1ac6029d4146a6b1ac23be41dc33b768 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Mion?= Date: Thu, 4 Apr 2019 15:26:08 +0100 Subject: [PATCH 13/19] Store test results of instrumentation tests --- .circleci/config.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.circleci/config.yml b/.circleci/config.yml index 0140a9a..0126f4c 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -123,6 +123,8 @@ jobs: - store_artifacts: path: firebase/ destination: instrumentation + - store_test_results: + path: firebase/ ## Submit screenshot tests From 3d0d19bf5153fbca6bad043355ba94dd03a1c6d4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Mion?= Date: Sun, 7 Apr 2019 21:15:19 +0100 Subject: [PATCH 14/19] Refactoring/convert main source and tests to Kotlin (#32) * Reuse super state instead of instantiate a new one during the saving instance * Initial project setup to Kotlin * Convert main source to kotlin * Convert tests to Kotlin and add more cases for size mini * Fix calculation of circle bounds to consider size changed programmatically * Update tests and screenshots * Update dependencies and properties to publish into Bintray --- build.gradle | 30 +- configuration/properties.gradle | 39 +++ counterfab/build.gradle | 25 +- .../com/andremion/counterfab/CounterFab.java | 321 ------------------ .../com/andremion/counterfab/CounterFab.kt | 273 +++++++++++++++ sample/build.gradle | 37 +- ...shouldKeepStateAfterOrientationChanged.png | Bin 38018 -> 37989 bytes ...ivityTest_shouldRenderSizeMiniProperly.png | Bin 0 -> 37117 bytes ..._shouldRenderSizeMiniWithCountProperly.png | Bin 0 -> 37372 bytes .../counterfab/sample/MainActivityTest.java | 46 --- .../counterfab/sample/MainActivityTest.kt | 60 ++++ .../sample/helpers/ScreenshotTestRunner.kt | 17 + .../sample/helpers/SetFabSizeAction.kt | 25 ++ .../sample/runner/ScreenshotTestRunner.java | 21 -- 14 files changed, 457 insertions(+), 437 deletions(-) create mode 100644 configuration/properties.gradle delete mode 100644 counterfab/src/main/java/com/andremion/counterfab/CounterFab.java create mode 100644 counterfab/src/main/java/com/andremion/counterfab/CounterFab.kt create mode 100644 sample/screenshots/com.andremion.counterfab.sample.MainActivityTest_shouldRenderSizeMiniProperly.png create mode 100644 sample/screenshots/com.andremion.counterfab.sample.MainActivityTest_shouldRenderSizeMiniWithCountProperly.png delete mode 100644 sample/src/androidTest/java/com/andremion/counterfab/sample/MainActivityTest.java create mode 100644 sample/src/androidTest/java/com/andremion/counterfab/sample/MainActivityTest.kt create mode 100644 sample/src/androidTest/java/com/andremion/counterfab/sample/helpers/ScreenshotTestRunner.kt create mode 100644 sample/src/androidTest/java/com/andremion/counterfab/sample/helpers/SetFabSizeAction.kt delete mode 100644 sample/src/androidTest/java/com/andremion/counterfab/sample/runner/ScreenshotTestRunner.java diff --git a/build.gradle b/build.gradle index a730287..6192a30 100644 --- a/build.gradle +++ b/build.gradle @@ -1,14 +1,14 @@ -// Top-level build file where you can add configuration options common to all sub-projects/modules. - buildscript { repositories { google() jcenter() } dependencies { - classpath 'com.android.tools.build:gradle:3.3.0' - classpath 'com.github.dcendents:android-maven-gradle-plugin:2.0' + apply from: 'configuration/properties.gradle' + classpath 'com.android.tools.build:gradle:3.3.2' + classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:${compiling.kotlinVersion}" classpath 'com.karumi:shot:2.2.0' + classpath 'com.github.dcendents:android-maven-gradle-plugin:2.1' } } @@ -23,20 +23,8 @@ allprojects { } project.ext { - applicationId = "com.andremion.counterfab.sample" - compileSdkVersion = 28 - minSdkVersion = 16 - targetSdkVersion = 28 - - versionCode = 7 - versionName = "1.2.1" - - materialVersion = '1.0.0' - - junitVersion = '4.12' - espressoCoreVersion = '3.1.1' - rulesVersion = '1.1.1' - screenshotTestingVersion = '0.8.0' + versionCode = 8 + versionName = '1.2.2-alpha1' name = 'CounterFab' description = 'A FloatingActionButton subclass that shows a counter badge on right top corner' @@ -44,7 +32,7 @@ allprojects { licenseName = 'The Apache Software License, Version 2.0' licenseUrl = 'http://www.apache.org/licenses/LICENSE-2.0.txt' - allLicenses = ["Apache-2.0"] + allLicenses = ['Apache-2.0'] bintrayRepo = 'github' group = 'com.github.andremion' @@ -57,10 +45,6 @@ allprojects { developerId = 'andremion' developerName = 'André Mion' developerEmail = 'andremion@gmail.com' - - ciBuild = System.getenv("CI") == "true" - // allows for -DpreDex=false to be set - preDexEnabled = System.getProperty("preDex", "true") == "true" } } diff --git a/configuration/properties.gradle b/configuration/properties.gradle new file mode 100644 index 0000000..cc5ce17 --- /dev/null +++ b/configuration/properties.gradle @@ -0,0 +1,39 @@ +project.ext { + + compiling = [ + javaVersion : JavaVersion.VERSION_1_8, + kotlinVersion: '1.3.21' + ] + + android = [ + compileSdkVersion: 28, + minSdkVersion : 16, + targetSdkVersion : 28 + ] + + application = [ + id: 'com.andremion.counterfab.sample' + ] + + aux = [ + appCompatVersion: '1.0.2', + ktxCoreVersion : '1.0.1' + ] + + ui = [ + materialVersion: '1.0.0' + ] + + testing = [ + junitVersion : '4.12', + espressoCoreVersion : '3.1.1', + rulesVersion : '1.1.1', + screenshotTestingVersion: '0.8.0' + ] + + building = [ + runningOnCI : System.getenv('CI') == 'true', + // allows for -DpreDex=false to be set + preDexEnabled: System.getProperty('preDex', 'true') == 'true' + ] +} \ No newline at end of file diff --git a/counterfab/build.gradle b/counterfab/build.gradle index c871c76..fc47f17 100644 --- a/counterfab/build.gradle +++ b/counterfab/build.gradle @@ -1,15 +1,19 @@ apply plugin: 'com.android.library' +apply plugin: 'kotlin-android' +apply plugin: 'kotlin-android-extensions' apply plugin: 'com.github.dcendents.android-maven' apply plugin: 'com.jfrog.bintray' +def deps = rootProject.extensions.ext + android { - compileSdkVersion project.ext.compileSdkVersion + compileSdkVersion deps.android.compileSdkVersion defaultConfig { - minSdkVersion project.ext.minSdkVersion - targetSdkVersion project.ext.targetSdkVersion - versionCode project.ext.versionCode - versionName project.ext.versionName - testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" + minSdkVersion deps.android.minSdkVersion + targetSdkVersion deps.android.targetSdkVersion + versionCode deps.versionCode + versionName deps.versionName + testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" } buildTypes { release { @@ -21,11 +25,14 @@ android { dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) - implementation "com.google.android.material:material:$materialVersion" + implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$compiling.kotlinVersion" + implementation "com.google.android.material:material:$ui.materialVersion" + implementation "androidx.appcompat:appcompat:$aux.appCompatVersion" + implementation "androidx.core:core-ktx:$aux.ktxCoreVersion" - testImplementation "junit:junit:$junitVersion" + testImplementation "junit:junit:$testing.junitVersion" - androidTestImplementation "androidx.test.espresso:espresso-core:$espressoCoreVersion" + androidTestImplementation "androidx.test.espresso:espresso-core:$testing.espressoCoreVersion" } //apply from: 'https://raw.githubusercontent.com/andremion/JCenter/master/deploy.gradle' diff --git a/counterfab/src/main/java/com/andremion/counterfab/CounterFab.java b/counterfab/src/main/java/com/andremion/counterfab/CounterFab.java deleted file mode 100644 index d5b5c43..0000000 --- a/counterfab/src/main/java/com/andremion/counterfab/CounterFab.java +++ /dev/null @@ -1,321 +0,0 @@ -/* - * Copyright (c) 2017. André Mion - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.andremion.counterfab; - -import android.animation.ObjectAnimator; -import android.content.Context; -import android.content.res.ColorStateList; -import android.content.res.TypedArray; -import android.graphics.Canvas; -import android.graphics.Color; -import android.graphics.Paint; -import android.graphics.Paint.Style; -import android.graphics.Rect; -import android.graphics.Typeface; -import android.graphics.drawable.ColorDrawable; -import android.graphics.drawable.Drawable; -import android.os.Bundle; -import android.os.Parcelable; -import android.util.AttributeSet; -import android.util.Property; -import android.view.animation.Interpolator; -import android.view.animation.OvershootInterpolator; - -import com.google.android.material.floatingactionbutton.FloatingActionButton; -import com.google.android.material.stateful.ExtendableSavedState; - -import androidx.annotation.IntRange; -import androidx.annotation.Nullable; -import androidx.core.view.ViewCompat; - -import static com.google.android.material.R.attr; - -/** - * A {@link FloatingActionButton} subclass that shows a counter badge on right top corner. - */ -public class CounterFab extends FloatingActionButton { - - private static final String STATE_KEY = CounterFab.class.getName() + ".STATE"; - private static final String COUNT_STATE = "COUNT"; - - private final Property ANIMATION_PROPERTY = - new Property(Float.class, "animation") { - - @Override - public void set(CounterFab object, Float value) { - mAnimationFactor = value; - postInvalidateOnAnimation(); - } - - @Override - public Float get(CounterFab object) { - return 0f; - } - }; - - private static final int NORMAL_MAX_COUNT = 99; - private static final String NORMAL_MAX_COUNT_TEXT = "99+"; - - private static final int MINI_MAX_COUNT = 9; - private static final String MINI_MAX_COUNT_TEXT = "9+"; - - private static final int TEXT_SIZE_DP = 11; - private static final int TEXT_PADDING_DP = 2; - private static final int MASK_COLOR = Color.parseColor("#33000000"); // Translucent black as mask color - private static final Interpolator ANIMATION_INTERPOLATOR = new OvershootInterpolator(); - - private final Rect mContentBounds; - private final Paint mTextPaint; - private final float mTextSize; - private final Paint mCirclePaint; - private final Rect mCircleBounds; - private final Paint mMaskPaint; - private final int mAnimationDuration; - private float mAnimationFactor; - - private int mCount; - private String mText; - private final float mTextHeight; - private ObjectAnimator mAnimator; - - private int badgePosition = RIGHT_TOP_POSITION; - private static final int RIGHT_TOP_POSITION = 0; - private static final int LEFT_BOTTOM_POSITION = 1; - private static final int LEFT_TOP_POSITION = 2; - private static final int RIGHT_BOTTOM_POSITION = 3; - - public CounterFab(Context context) { - this(context, null); - } - - public CounterFab(Context context, AttributeSet attrs) { - this(context, attrs, attr.floatingActionButtonStyle); - } - - public CounterFab(Context context, @Nullable AttributeSet attrs, int defStyleAttr) { - super(context, attrs, defStyleAttr); - - float density = getResources().getDisplayMetrics().density; - mTextSize = TEXT_SIZE_DP * density; - float textPadding = TEXT_PADDING_DP * density; - - mAnimationDuration = getResources().getInteger(android.R.integer.config_shortAnimTime); - mAnimationFactor = 1; - - mTextPaint = new Paint(Paint.ANTI_ALIAS_FLAG); - mTextPaint.setStyle(Style.FILL_AND_STROKE); - mTextPaint.setTextSize(mTextSize); - mTextPaint.setTextAlign(Paint.Align.CENTER); - mTextPaint.setTypeface(Typeface.SANS_SERIF); - - mCirclePaint = new Paint(Paint.ANTI_ALIAS_FLAG); - mCirclePaint.setStyle(Paint.Style.FILL); - - int defaultBadgeColor = getDefaultBadgeColor(); - - setupFromStyledAttributes(context, attrs, defaultBadgeColor); - - mMaskPaint = new Paint(Paint.ANTI_ALIAS_FLAG); - mMaskPaint.setStyle(Paint.Style.FILL); - mMaskPaint.setColor(MASK_COLOR); - - Rect textBounds = new Rect(); - mTextPaint.getTextBounds(NORMAL_MAX_COUNT_TEXT, 0, NORMAL_MAX_COUNT_TEXT.length(), textBounds); - mTextHeight = textBounds.height(); - - float textWidth = mTextPaint.measureText(NORMAL_MAX_COUNT_TEXT); - float circleRadius = Math.max(textWidth, mTextHeight) / 2f + textPadding; - int circleEnd = (int) (circleRadius * 2); - if (isSizeMini()) { - int circleStart = (int) (circleRadius / 2); - mCircleBounds = new Rect(circleStart, circleStart, circleEnd, circleEnd); - } else { - int circleStart = 0; - mCircleBounds = new Rect(circleStart, circleStart, (int) (circleRadius * 2), (int) (circleRadius * 2)); - } - mContentBounds = new Rect(); - - onCountChanged(); - } - - private int getDefaultBadgeColor() { - int defaultBadgeColor = mCirclePaint.getColor(); - ColorStateList colorStateList = getBackgroundTintList(); - if (colorStateList != null) { - defaultBadgeColor = colorStateList.getDefaultColor(); - } else { - Drawable background = getBackground(); - if (background instanceof ColorDrawable) { - ColorDrawable colorDrawable = (ColorDrawable) background; - defaultBadgeColor = colorDrawable.getColor(); - } - } - return defaultBadgeColor; - } - - private void setupFromStyledAttributes(Context context, @Nullable AttributeSet attrs, int defaultBadgeColor) { - TypedArray styledAttributes = context.getTheme() - .obtainStyledAttributes(attrs, R.styleable.CounterFab, 0, 0); - mTextPaint.setColor(styledAttributes.getColor(R.styleable.CounterFab_badgeTextColor, Color.WHITE)); - mCirclePaint.setColor(styledAttributes.getColor(R.styleable.CounterFab_badgeBackgroundColor, defaultBadgeColor)); - badgePosition = styledAttributes.getInt(R.styleable.CounterFab_badgePosition, RIGHT_TOP_POSITION); - styledAttributes.recycle(); - } - - private boolean isSizeMini() { - return getSize() == SIZE_MINI; - } - - /** - * @return The current count value - */ - public int getCount() { - return mCount; - } - - /** - * Set the count to show on badge - * - * @param count The count value starting from 0 - */ - public void setCount(@IntRange(from = 0) int count) { - if (count == mCount) return; - mCount = count > 0 ? count : 0; - onCountChanged(); - if (ViewCompat.isLaidOut(this)) { - startAnimation(); - } - } - - /** - * Increase the current count value by 1 - */ - public void increase() { - setCount(mCount + 1); - } - - /** - * Decrease the current count value by 1 - */ - public void decrease() { - setCount(mCount > 0 ? mCount - 1 : 0); - } - - private void onCountChanged() { - if (isSizeMini()) { - if (mCount > MINI_MAX_COUNT) { - mText = String.valueOf(MINI_MAX_COUNT_TEXT); - } else { - mText = String.valueOf(mCount); - } - } else { - if (mCount > NORMAL_MAX_COUNT) { - mText = String.valueOf(NORMAL_MAX_COUNT_TEXT); - } else { - mText = String.valueOf(mCount); - } - } - } - - private void startAnimation() { - float start = 0f; - float end = 1f; - if (mCount == 0) { - start = 1f; - end = 0f; - } - if (isAnimating()) { - mAnimator.cancel(); - } - mAnimator = ObjectAnimator.ofObject(this, ANIMATION_PROPERTY, null, start, end); - mAnimator.setInterpolator(ANIMATION_INTERPOLATOR); - mAnimator.setDuration(mAnimationDuration); - mAnimator.start(); - } - - private boolean isAnimating() { - return mAnimator != null && mAnimator.isRunning(); - } - - @Override - protected void onDraw(Canvas canvas) { - super.onDraw(canvas); - if (mCount > 0 || isAnimating()) { - if (getContentRect(mContentBounds)) { - int newLeft; - int newTop; - switch (badgePosition) { - case LEFT_BOTTOM_POSITION: - newLeft = mContentBounds.left; - newTop = mContentBounds.bottom - mCircleBounds.height(); - break; - case LEFT_TOP_POSITION: - newLeft = mContentBounds.left; - newTop = mContentBounds.top; - break; - case RIGHT_BOTTOM_POSITION: - newLeft = mContentBounds.left + mContentBounds.width() - mCircleBounds.width(); - newTop = mContentBounds.bottom - mCircleBounds.height(); - break; - case RIGHT_TOP_POSITION: - default: - newLeft = mContentBounds.left + mContentBounds.width() - mCircleBounds.width(); - newTop = mContentBounds.top; - } - mCircleBounds.offsetTo(newLeft, newTop); - } - float cx = mCircleBounds.centerX(); - float cy = mCircleBounds.centerY(); - float radius = mCircleBounds.width() / 2f * mAnimationFactor; - // Solid circle - canvas.drawCircle(cx, cy, radius, mCirclePaint); - // Mask circle - canvas.drawCircle(cx, cy, radius, mMaskPaint); - // Count text - mTextPaint.setTextSize(mTextSize * mAnimationFactor); - canvas.drawText(mText, cx, cy + mTextHeight / 2f, mTextPaint); - } - } - - @Override - public Parcelable onSaveInstanceState() { - Parcelable superState = super.onSaveInstanceState(); - ExtendableSavedState state = new ExtendableSavedState(superState); - - Bundle bundle = new Bundle(); - bundle.putInt(COUNT_STATE, mCount); - state.extendableStates.put(STATE_KEY, bundle); - - return state; - } - - @Override - public void onRestoreInstanceState(Parcelable state) { - if (!(state instanceof ExtendableSavedState)) { - super.onRestoreInstanceState(state); - return; - } - - ExtendableSavedState extendableState = (ExtendableSavedState) state; - super.onRestoreInstanceState(extendableState.getSuperState()); - - Bundle bundle = extendableState.extendableStates.get(STATE_KEY); - setCount(bundle.getInt(COUNT_STATE)); - requestLayout(); - } - -} diff --git a/counterfab/src/main/java/com/andremion/counterfab/CounterFab.kt b/counterfab/src/main/java/com/andremion/counterfab/CounterFab.kt new file mode 100644 index 0000000..0668a39 --- /dev/null +++ b/counterfab/src/main/java/com/andremion/counterfab/CounterFab.kt @@ -0,0 +1,273 @@ +/* + * Copyright (c) 2017. André Mion + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.andremion.counterfab + +import android.animation.ObjectAnimator +import android.content.Context +import android.graphics.Canvas +import android.graphics.Color +import android.graphics.Paint +import android.graphics.Paint.Style +import android.graphics.Rect +import android.graphics.Typeface +import android.graphics.drawable.ColorDrawable +import android.os.Parcelable +import android.util.AttributeSet +import android.util.Property +import android.view.animation.OvershootInterpolator +import androidx.annotation.IntRange +import androidx.core.os.bundleOf +import androidx.core.view.ViewCompat +import com.google.android.material.floatingactionbutton.FloatingActionButton +import com.google.android.material.stateful.ExtendableSavedState + +private val STATE_KEY = CounterFab::class.java.name + ".STATE" +private const val COUNT_STATE = "COUNT" + +private const val NORMAL_MAX_COUNT = 99 +private const val NORMAL_MAX_COUNT_TEXT = "99+" + +private const val MINI_MAX_COUNT = 9 +private const val MINI_MAX_COUNT_TEXT = "9+" + +private const val TEXT_SIZE_DP = 11 +private const val TEXT_PADDING_DP = 2 +private val MASK_COLOR = Color.parseColor("#33000000") // Translucent black as mask color +private val ANIMATION_INTERPOLATOR = OvershootInterpolator() +private const val RIGHT_TOP_POSITION = 0 +private const val LEFT_BOTTOM_POSITION = 1 +private const val LEFT_TOP_POSITION = 2 +private const val RIGHT_BOTTOM_POSITION = 3 + +/** + * A [FloatingActionButton] subclass that shows a counter badge on right top corner. + */ +class CounterFab @JvmOverloads constructor( + context: Context, + attrs: AttributeSet? = null, + defStyleAttr: Int = R.attr.floatingActionButtonStyle +) : FloatingActionButton(context, attrs, defStyleAttr) { + + private val animationProperty = object : Property(Float::class.java, "animation") { + + override fun set(counterFab: CounterFab, value: Float) { + animationFactor = value + postInvalidateOnAnimation() + } + + override fun get(counterFab: CounterFab): Float { + return 0f + } + } + + private val textSize = TEXT_SIZE_DP * resources.displayMetrics.density + private val textPadding = TEXT_PADDING_DP * resources.displayMetrics.density + + private val circlePaint = Paint(Paint.ANTI_ALIAS_FLAG).apply { + style = Paint.Style.FILL + } + private val maskPaint = Paint(Paint.ANTI_ALIAS_FLAG).apply { + style = Paint.Style.FILL + color = MASK_COLOR + } + private val textPaint = Paint(Paint.ANTI_ALIAS_FLAG).apply { + style = Style.FILL_AND_STROKE + textSize = this@CounterFab.textSize + textAlign = Paint.Align.CENTER + typeface = Typeface.SANS_SERIF + } + private val textBounds: Rect = run { + val maxCountText = NORMAL_MAX_COUNT_TEXT + val textBounds = Rect() + textPaint.getTextBounds(maxCountText, 0, maxCountText.length, textBounds) + textBounds + } + private val circleBounds = Rect() + private val contentBounds = Rect() + + private val animationDuration = resources.getInteger(android.R.integer.config_shortAnimTime) + private var animationFactor = 1f + private var animator = ObjectAnimator() + private val isAnimating: Boolean + get() = animator.isRunning + private val isSizeMini: Boolean + get() = size == SIZE_MINI + private val badgePosition: Int + private var countText: String = "" + + /** + * The count value to show on badge starting from 0 + */ + var count: Int = 0 + set(@IntRange(from = 0) value) { + if (value == field) return + field = if (value > 0) value else 0 + + updateCountText() + if (ViewCompat.isLaidOut(this)) { + startAnimation() + } + } + + init { + val styledAttributes = context.theme.obtainStyledAttributes( + attrs, R.styleable.CounterFab, 0, 0 + ) + textPaint.color = styledAttributes.getColor(R.styleable.CounterFab_badgeTextColor, Color.WHITE) + circlePaint.color = styledAttributes.getColor(R.styleable.CounterFab_badgeBackgroundColor, getDefaultBadgeColor()) + badgePosition = styledAttributes.getInt(R.styleable.CounterFab_badgePosition, RIGHT_TOP_POSITION) + styledAttributes.recycle() + + updateCountText() + } + + private fun updateCountText() { + countText = if (isSizeMini) when { + count > MINI_MAX_COUNT -> MINI_MAX_COUNT_TEXT + else -> count.toString() + } + else when { + count > NORMAL_MAX_COUNT -> NORMAL_MAX_COUNT_TEXT + else -> count.toString() + } + } + + private fun getDefaultBadgeColor(): Int = run { + val colorStateList = backgroundTintList + if (colorStateList != null) { + colorStateList.defaultColor + } else { + val background = background + if (background is ColorDrawable) { + background.color + } else { + circlePaint.color + } + } + } + + /** + * Increase the current count value by 1 + */ + fun increase() { + count += 1 + } + + /** + * Decrease the current count value by 1 + */ + fun decrease() { + count = if (count > 0) count - 1 else 0 + } + + private fun startAnimation() { + var start = 0f + var end = 1f + if (count == 0) { + start = 1f + end = 0f + } + + if (isAnimating) animator.cancel() + + animator = ObjectAnimator.ofObject( + this, animationProperty, null, start, end + ).apply { + interpolator = ANIMATION_INTERPOLATOR + duration = animationDuration.toLong() + start() + } + } + + override fun onMeasure(widthMeasureSpec: Int, heightMeasureSpec: Int) { + super.onMeasure(widthMeasureSpec, heightMeasureSpec) + calculateCircleBounds() + } + + private fun calculateCircleBounds() { + val circleRadius = Math.max(textBounds.width(), textBounds.height()) / 2f + textPadding + val circleEnd = (circleRadius * 2).toInt() + if (isSizeMini) { + val circleStart = (circleRadius / 2).toInt() + circleBounds.set(circleStart, circleStart, circleEnd, circleEnd) + } else { + val circleStart = 0 + circleBounds.set(circleStart, circleStart, (circleRadius * 2).toInt(), (circleRadius * 2).toInt()) + } + } + + override fun onDraw(canvas: Canvas) { + super.onDraw(canvas) + if (count > 0 || isAnimating) { + if (getContentRect(contentBounds)) { + val newLeft: Int + val newTop: Int + when (badgePosition) { + LEFT_BOTTOM_POSITION -> { + newLeft = contentBounds.left + newTop = contentBounds.bottom - circleBounds.height() + } + LEFT_TOP_POSITION -> { + newLeft = contentBounds.left + newTop = contentBounds.top + } + RIGHT_BOTTOM_POSITION -> { + newLeft = contentBounds.left + contentBounds.width() - circleBounds.width() + newTop = contentBounds.bottom - circleBounds.height() + } + RIGHT_TOP_POSITION -> { + newLeft = contentBounds.left + contentBounds.width() - circleBounds.width() + newTop = contentBounds.top + } + else -> { + newLeft = contentBounds.left + contentBounds.width() - circleBounds.width() + newTop = contentBounds.top + } + } + circleBounds.offsetTo(newLeft, newTop) + } + val cx = circleBounds.centerX().toFloat() + val cy = circleBounds.centerY().toFloat() + val radius = circleBounds.width() / 2f * animationFactor + // Solid circle + canvas.drawCircle(cx, cy, radius, circlePaint) + // Mask circle + canvas.drawCircle(cx, cy, radius, maskPaint) + // Count text + textPaint.textSize = textSize * animationFactor + canvas.drawText(countText, cx, cy + textBounds.height() / 2f, textPaint) + } + } + + override fun onSaveInstanceState(): Parcelable? { + val superState = super.onSaveInstanceState() + if (superState is ExtendableSavedState) { + superState.extendableStates.put(STATE_KEY, bundleOf(COUNT_STATE to count)) + } + return superState + } + + override fun onRestoreInstanceState(state: Parcelable?) { + super.onRestoreInstanceState(state) + if (state !is ExtendableSavedState) return + + val bundle = state.extendableStates.get(STATE_KEY) + count = bundle?.getInt(COUNT_STATE) ?: 0 + + requestLayout() + } +} \ No newline at end of file diff --git a/sample/build.gradle b/sample/build.gradle index 91a0495..6557d6c 100644 --- a/sample/build.gradle +++ b/sample/build.gradle @@ -1,22 +1,23 @@ apply plugin: 'com.android.application' +apply plugin: 'kotlin-android' +apply plugin: 'kotlin-android-extensions' apply plugin: 'shot' +def deps = rootProject.extensions.ext + android { - compileSdkVersion project.ext.compileSdkVersion + compileSdkVersion deps.android.compileSdkVersion defaultConfig { - applicationId project.ext.applicationId - minSdkVersion project.ext.minSdkVersion - targetSdkVersion project.ext.targetSdkVersion - versionCode project.ext.versionCode - versionName project.ext.versionName - testInstrumentationRunner "${project.ext.applicationId}.runner.ScreenshotTestRunner" - } - aaptOptions { - cruncherEnabled !project.ext.ciBuild + applicationId deps.application.id + minSdkVersion deps.android.minSdkVersion + targetSdkVersion deps.android.targetSdkVersion + versionCode deps.versionCode + versionName deps.versionName + testInstrumentationRunner "${deps.application.id}.helpers.ScreenshotTestRunner" } dexOptions { // Skip pre-dexing when running on CI or when disabled via -DpreDex=false. - preDexLibraries !project.ext.ciBuild && project.ext.preDexEnabled + preDexLibraries !deps.building.runningOnCI && deps.building.preDexEnabled } buildTypes { release { @@ -27,20 +28,22 @@ android { } shot { - appId = project.ext.applicationId + appId = deps.application.id runInstrumentation = false } dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) implementation project(':counterfab') - implementation "com.google.android.material:material:$materialVersion" + implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$compiling.kotlinVersion" + implementation "com.google.android.material:material:$ui.materialVersion" + implementation "androidx.appcompat:appcompat:$aux.appCompatVersion" - testImplementation "junit:junit:$junitVersion" + testImplementation "junit:junit:$testing.junitVersion" - androidTestImplementation "androidx.test.espresso:espresso-core:$espressoCoreVersion" - androidTestImplementation "androidx.test:rules:$rulesVersion" - androidTestImplementation dependencies.create("com.facebook.testing.screenshot:core:$screenshotTestingVersion") { + androidTestImplementation "androidx.test.espresso:espresso-core:$testing.espressoCoreVersion" + androidTestImplementation "androidx.test:rules:$testing.rulesVersion" + androidTestImplementation dependencies.create("com.facebook.testing.screenshot:core:$testing.screenshotTestingVersion") { exclude group: 'com.crittercism.dexmaker', module: 'dexmaker' exclude group: 'com.crittercism.dexmaker', module: 'dexmaker-dx' } diff --git a/sample/screenshots/com.andremion.counterfab.sample.MainActivityTest_shouldKeepStateAfterOrientationChanged.png b/sample/screenshots/com.andremion.counterfab.sample.MainActivityTest_shouldKeepStateAfterOrientationChanged.png index 1ab04df01d8ef470ee501dd22665c43e63cd1add..b4e8c4cd74671370c8a4852efe569ecf2faafe0a 100644 GIT binary patch literal 37989 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 R`06(s8JM0eK7H}#{{bM~%*p@& literal 38018 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 YSDlJLv-#o0G$?hhYwBp^s6BZ0AD^`08~^|S literal 0 HcmV?d00001 diff --git a/sample/src/androidTest/java/com/andremion/counterfab/sample/MainActivityTest.java b/sample/src/androidTest/java/com/andremion/counterfab/sample/MainActivityTest.java deleted file mode 100644 index 9121e7e..0000000 --- a/sample/src/androidTest/java/com/andremion/counterfab/sample/MainActivityTest.java +++ /dev/null @@ -1,46 +0,0 @@ -package com.andremion.counterfab.sample; - -import android.content.pm.ActivityInfo; - -import com.facebook.testing.screenshot.Screenshot; - -import org.junit.Rule; -import org.junit.Test; - -import androidx.test.platform.app.InstrumentationRegistry; -import androidx.test.rule.ActivityTestRule; - -import static androidx.test.espresso.Espresso.onView; -import static androidx.test.espresso.action.ViewActions.click; -import static androidx.test.espresso.matcher.ViewMatchers.withId; - -public class MainActivityTest { - - @Rule - public final ActivityTestRule testRule = new ActivityTestRule<>(MainActivity.class); - - @Test - public void shouldRenderProperly() { - - Screenshot.snapActivity(testRule.getActivity()).record(); - } - - @Test - public void shouldRenderProperlyAfterOrientationChanged() { - - testRule.getActivity().setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); - InstrumentationRegistry.getInstrumentation().waitForIdleSync(); - - Screenshot.snapActivity(testRule.getActivity()).record(); - } - - @Test - public void shouldKeepStateAfterOrientationChanged() { - onView(withId(R.id.fab)).perform(click(), click()); - - testRule.getActivity().setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); - InstrumentationRegistry.getInstrumentation().waitForIdleSync(); - - Screenshot.snapActivity(testRule.getActivity()).record(); - } -} \ No newline at end of file diff --git a/sample/src/androidTest/java/com/andremion/counterfab/sample/MainActivityTest.kt b/sample/src/androidTest/java/com/andremion/counterfab/sample/MainActivityTest.kt new file mode 100644 index 0000000..25426a4 --- /dev/null +++ b/sample/src/androidTest/java/com/andremion/counterfab/sample/MainActivityTest.kt @@ -0,0 +1,60 @@ +package com.andremion.counterfab.sample + +import android.content.pm.ActivityInfo +import androidx.test.espresso.Espresso.onView +import androidx.test.espresso.action.ViewActions.click +import androidx.test.espresso.matcher.ViewMatchers.withId +import androidx.test.platform.app.InstrumentationRegistry +import androidx.test.rule.ActivityTestRule +import com.andremion.counterfab.sample.helpers.setFabSize +import com.facebook.testing.screenshot.Screenshot +import com.google.android.material.floatingactionbutton.FloatingActionButton +import org.junit.Rule +import org.junit.Test + +class MainActivityTest { + + @get:Rule + val testRule = ActivityTestRule(MainActivity::class.java) + + @Test + fun shouldRenderProperly() { + + Screenshot.snapActivity(testRule.activity).record() + } + + @Test + fun shouldRenderProperlyAfterOrientationChanged() { + + testRule.activity.requestedOrientation = ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE + InstrumentationRegistry.getInstrumentation().waitForIdleSync() + + Screenshot.snapActivity(testRule.activity).record() + } + + @Test + fun shouldKeepStateAfterOrientationChanged() { + onView(withId(R.id.fab)).perform(click(), click()) + + testRule.activity.requestedOrientation = ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE + InstrumentationRegistry.getInstrumentation().waitForIdleSync() + + Screenshot.snapActivity(testRule.activity).record() + } + + @Test + fun shouldRenderSizeMiniProperly() { + onView(withId(R.id.fab)).perform(setFabSize(FloatingActionButton.SIZE_MINI)) + + Screenshot.snapActivity(testRule.activity).record() + } + + @Test + fun shouldRenderSizeMiniWithCountProperly() { + onView(withId(R.id.fab)).perform( + setFabSize(FloatingActionButton.SIZE_MINI), click(), click() + ) + + Screenshot.snapActivity(testRule.activity).record() + } +} \ No newline at end of file diff --git a/sample/src/androidTest/java/com/andremion/counterfab/sample/helpers/ScreenshotTestRunner.kt b/sample/src/androidTest/java/com/andremion/counterfab/sample/helpers/ScreenshotTestRunner.kt new file mode 100644 index 0000000..f0d1953 --- /dev/null +++ b/sample/src/androidTest/java/com/andremion/counterfab/sample/helpers/ScreenshotTestRunner.kt @@ -0,0 +1,17 @@ +package com.andremion.counterfab.sample.helpers + +import android.os.Bundle +import androidx.test.runner.AndroidJUnitRunner +import com.facebook.testing.screenshot.ScreenshotRunner + +class ScreenshotTestRunner : AndroidJUnitRunner() { + override fun onCreate(arguments: Bundle) { + ScreenshotRunner.onCreate(this, arguments) + super.onCreate(arguments) + } + + override fun finish(resultCode: Int, results: Bundle) { + ScreenshotRunner.onDestroy() + super.finish(resultCode, results) + } +} \ No newline at end of file diff --git a/sample/src/androidTest/java/com/andremion/counterfab/sample/helpers/SetFabSizeAction.kt b/sample/src/androidTest/java/com/andremion/counterfab/sample/helpers/SetFabSizeAction.kt new file mode 100644 index 0000000..7c86e0c --- /dev/null +++ b/sample/src/androidTest/java/com/andremion/counterfab/sample/helpers/SetFabSizeAction.kt @@ -0,0 +1,25 @@ +package com.andremion.counterfab.sample.helpers + +import android.view.View +import androidx.test.espresso.UiController +import androidx.test.espresso.ViewAction +import androidx.test.espresso.matcher.ViewMatchers +import com.google.android.material.floatingactionbutton.FloatingActionButton +import com.google.android.material.floatingactionbutton.FloatingActionButton.Size +import org.hamcrest.Matcher + +fun setFabSize(@Size fabSize: Int) = SetFabSizeAction(fabSize) + +class SetFabSizeAction(@Size private val fabSize: Int) : ViewAction { + + override fun getConstraints(): Matcher { + return ViewMatchers.isAssignableFrom(FloatingActionButton::class.java) + } + + override fun perform(uiController: UiController, view: View) { + val floatingActionButton = view as FloatingActionButton + floatingActionButton.size = fabSize + } + + override fun getDescription() = "set fab size to" +} \ No newline at end of file diff --git a/sample/src/androidTest/java/com/andremion/counterfab/sample/runner/ScreenshotTestRunner.java b/sample/src/androidTest/java/com/andremion/counterfab/sample/runner/ScreenshotTestRunner.java deleted file mode 100644 index 4314507..0000000 --- a/sample/src/androidTest/java/com/andremion/counterfab/sample/runner/ScreenshotTestRunner.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.andremion.counterfab.sample.runner; - -import android.os.Bundle; - -import com.facebook.testing.screenshot.ScreenshotRunner; - -import androidx.test.runner.AndroidJUnitRunner; - -public class ScreenshotTestRunner extends AndroidJUnitRunner { - @Override - public void onCreate(Bundle arguments) { - ScreenshotRunner.onCreate(this, arguments); - super.onCreate(arguments); - } - - @Override - public void finish(int resultCode, Bundle results) { - ScreenshotRunner.onDestroy(); - super.finish(resultCode, results); - } -} \ No newline at end of file From 8cee56bd6c84c27734d0d13aabfecacceffd7be9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Mion?= Date: Thu, 26 Sep 2019 11:56:48 +0100 Subject: [PATCH 15/19] Apply badge color mask only for default color (#35) * Reuse super state instead of instantiate a new one during the saving instance * Apply badge color mask only if there is no badge color defined * Remove lint warnings * Update screenshots for tests --- .../com/andremion/counterfab/CounterFab.kt | 16 +++++++--------- ...shouldKeepStateAfterOrientationChanged.png | Bin 37989 -> 37978 bytes ..._shouldRenderSizeMiniWithCountProperly.png | Bin 37372 -> 37376 bytes 3 files changed, 7 insertions(+), 9 deletions(-) diff --git a/counterfab/src/main/java/com/andremion/counterfab/CounterFab.kt b/counterfab/src/main/java/com/andremion/counterfab/CounterFab.kt index 0668a39..e6e33e1 100644 --- a/counterfab/src/main/java/com/andremion/counterfab/CounterFab.kt +++ b/counterfab/src/main/java/com/andremion/counterfab/CounterFab.kt @@ -30,10 +30,12 @@ import android.util.AttributeSet import android.util.Property import android.view.animation.OvershootInterpolator import androidx.annotation.IntRange +import androidx.core.graphics.ColorUtils import androidx.core.os.bundleOf import androidx.core.view.ViewCompat import com.google.android.material.floatingactionbutton.FloatingActionButton import com.google.android.material.stateful.ExtendableSavedState +import kotlin.math.max private val STATE_KEY = CounterFab::class.java.name + ".STATE" private const val COUNT_STATE = "COUNT" @@ -78,11 +80,7 @@ class CounterFab @JvmOverloads constructor( private val textPadding = TEXT_PADDING_DP * resources.displayMetrics.density private val circlePaint = Paint(Paint.ANTI_ALIAS_FLAG).apply { - style = Paint.Style.FILL - } - private val maskPaint = Paint(Paint.ANTI_ALIAS_FLAG).apply { - style = Paint.Style.FILL - color = MASK_COLOR + style = Style.FILL } private val textPaint = Paint(Paint.ANTI_ALIAS_FLAG).apply { style = Style.FILL_AND_STROKE @@ -158,7 +156,9 @@ class CounterFab @JvmOverloads constructor( circlePaint.color } } - } + }.applyColorMask() + + private fun Int.applyColorMask() = ColorUtils.compositeColors(MASK_COLOR, this) /** * Increase the current count value by 1 @@ -199,7 +199,7 @@ class CounterFab @JvmOverloads constructor( } private fun calculateCircleBounds() { - val circleRadius = Math.max(textBounds.width(), textBounds.height()) / 2f + textPadding + val circleRadius = max(textBounds.width(), textBounds.height()) / 2f + textPadding val circleEnd = (circleRadius * 2).toInt() if (isSizeMini) { val circleStart = (circleRadius / 2).toInt() @@ -245,8 +245,6 @@ class CounterFab @JvmOverloads constructor( val radius = circleBounds.width() / 2f * animationFactor // Solid circle canvas.drawCircle(cx, cy, radius, circlePaint) - // Mask circle - canvas.drawCircle(cx, cy, radius, maskPaint) // Count text textPaint.textSize = textSize * animationFactor canvas.drawText(countText, cx, cy + textBounds.height() / 2f, textPaint) diff --git a/sample/screenshots/com.andremion.counterfab.sample.MainActivityTest_shouldKeepStateAfterOrientationChanged.png b/sample/screenshots/com.andremion.counterfab.sample.MainActivityTest_shouldKeepStateAfterOrientationChanged.png index b4e8c4cd74671370c8a4852efe569ecf2faafe0a..fe4714f931c47f45dd2b8841c7dabf1dbe971063 100644 GIT binary patch delta 16578 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 P^TLg5CRZyjJ3szk8Bgd? delta 16587 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⁣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 YSDlJLv-#o0G$?hhYwBp^s6BZ0AD^`08~^|S From 432011fa178092d1be5fb5dbf7900ef4fec64b25 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Mion?= Date: Thu, 26 Sep 2019 12:05:08 +0100 Subject: [PATCH 16/19] Bump to version 1.2.2 --- build.gradle | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/build.gradle b/build.gradle index 6192a30..07e4368 100644 --- a/build.gradle +++ b/build.gradle @@ -23,8 +23,8 @@ allprojects { } project.ext { - versionCode = 8 - versionName = '1.2.2-alpha1' + versionCode = 9 + versionName = '1.2.2' name = 'CounterFab' description = 'A FloatingActionButton subclass that shows a counter badge on right top corner' From 3104fbd4ed540b71db087a75635135c97057a351 Mon Sep 17 00:00:00 2001 From: StevenMichael3213 <31765462+StevenMichael3213@users.noreply.github.com> Date: Wed, 18 Mar 2020 05:43:50 +1100 Subject: [PATCH 17/19] Make CounterFab class be open --- .../src/main/java/com/andremion/counterfab/CounterFab.kt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/counterfab/src/main/java/com/andremion/counterfab/CounterFab.kt b/counterfab/src/main/java/com/andremion/counterfab/CounterFab.kt index e6e33e1..d0aae2e 100644 --- a/counterfab/src/main/java/com/andremion/counterfab/CounterFab.kt +++ b/counterfab/src/main/java/com/andremion/counterfab/CounterFab.kt @@ -58,7 +58,7 @@ private const val RIGHT_BOTTOM_POSITION = 3 /** * A [FloatingActionButton] subclass that shows a counter badge on right top corner. */ -class CounterFab @JvmOverloads constructor( +open class CounterFab @JvmOverloads constructor( context: Context, attrs: AttributeSet? = null, defStyleAttr: Int = R.attr.floatingActionButtonStyle @@ -268,4 +268,4 @@ class CounterFab @JvmOverloads constructor( requestLayout() } -} \ No newline at end of file +} From 09f29b7043212697088a8707ec808c641a4576eb Mon Sep 17 00:00:00 2001 From: Roman Vasilyev Date: Fri, 15 May 2020 05:14:42 -0700 Subject: [PATCH 18/19] ability to get more info on mini badge --- .../src/main/java/com/andremion/counterfab/CounterFab.kt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/counterfab/src/main/java/com/andremion/counterfab/CounterFab.kt b/counterfab/src/main/java/com/andremion/counterfab/CounterFab.kt index d0aae2e..cbdde6d 100644 --- a/counterfab/src/main/java/com/andremion/counterfab/CounterFab.kt +++ b/counterfab/src/main/java/com/andremion/counterfab/CounterFab.kt @@ -103,10 +103,11 @@ open class CounterFab @JvmOverloads constructor( private val isAnimating: Boolean get() = animator.isRunning private val isSizeMini: Boolean - get() = size == SIZE_MINI + get() = !forceLargeBadge || size == SIZE_MINI private val badgePosition: Int private var countText: String = "" + var forceLargeBadge = false /** * The count value to show on badge starting from 0 */ From c8afd5b72e41e4cd0b748bf9072ddedbb9fbc95a Mon Sep 17 00:00:00 2001 From: Roman Vasilyev Date: Fri, 15 May 2020 05:20:15 -0700 Subject: [PATCH 19/19] reverse logic --- counterfab/src/main/java/com/andremion/counterfab/CounterFab.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/counterfab/src/main/java/com/andremion/counterfab/CounterFab.kt b/counterfab/src/main/java/com/andremion/counterfab/CounterFab.kt index cbdde6d..57ac570 100644 --- a/counterfab/src/main/java/com/andremion/counterfab/CounterFab.kt +++ b/counterfab/src/main/java/com/andremion/counterfab/CounterFab.kt @@ -103,7 +103,7 @@ open class CounterFab @JvmOverloads constructor( private val isAnimating: Boolean get() = animator.isRunning private val isSizeMini: Boolean - get() = !forceLargeBadge || size == SIZE_MINI + get() = !forceLargeBadge && size == SIZE_MINI private val badgePosition: Int private var countText: String = ""