From 4f3ea56d6784361d183aba36d5fba120b26d82c5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?B=C4=83rbu=C8=9B-Dic=C4=83=20Sami?= <70215066+WarriorsSami@users.noreply.github.com> Date: Tue, 24 Sep 2024 12:01:56 +0300 Subject: [PATCH 1/2] Test merging strategy (#39) --- .github/workflows/anubis-eval-ci.yaml | 61 + .github/workflows/anubis-eval-pr-verify.yaml | 44 + .github/workflows/dapr-config-ci.yaml | 25 + .github/workflows/enki-problems-ci.yaml | 48 + .../workflows/enki-problems-pr-verify.yaml | 31 + .github/workflows/eval-lb-ci.yaml | 25 + .github/workflows/hermes-tests-ci.yaml | 53 + .github/workflows/hermes-tests-pr-verify.yaml | 39 + .github/workflows/odin-gateway-ci.yaml | 26 + .github/workflows/quetzalcoatl-auth-ci.yaml | 48 + .../quetzalcoatl-auth-pr-verify.yaml | 31 + .github/workflows/release-please.yaml | 22 + .../workflows/step-deploy-to-docker-hub.yaml | 54 + .github/workflows/step-deploy-to-ghcr.yaml | 50 + .gitignore | 7 +- .release-please-manifest.json | 9 + Makefile | 14 + README.md | 174 +- anubis-eval/.config/nextest.toml | 14 + anubis-eval/.dockerignore | 12 + anubis-eval/.env.judge0.template | 358 ++ anubis-eval/.env.template | 25 + anubis-eval/.gitignore | 5 + anubis-eval/CHANGELOG.md | 32 + anubis-eval/Cargo.lock | 3460 +++++++++++++++++ anubis-eval/Cargo.toml | 41 + anubis-eval/Dockerfile | 21 + anubis-eval/README.md | 6 + anubis-eval/diesel.toml | 5 + anubis-eval/eval-lb/CHANGELOG.md | 8 + anubis-eval/eval-lb/Dockerfile | 4 + anubis-eval/eval-lb/nginx.conf | 13 + anubis-eval/log4rs.yaml | 25 + anubis-eval/migrations/.gitkeep | 0 .../down.sql | 6 + .../up.sql | 36 + .../down.sql | 3 + .../up.sql | 23 + .../down.sql | 6 + .../2023-10-03-213608_update_test_case/up.sql | 6 + .../down.sql | 17 + .../up.sql | 12 + .../down.sql | 10 + .../up.sql | 8 + .../down.sql | 19 + .../up.sql | 18 + .../down.sql | 2 + .../up.sql | 2 + .../down.sql | 3 + .../up.sql | 3 + .../down.sql | 2 + .../up.sql | 2 + .../down.sql | 3 + .../up.sql | 3 + .../down.sql | 2 + .../up.sql | 2 + .../down.sql | 2 + .../up.sql | 2 + .../down.sql | 4 + .../up.sql | 13 + .../down.sql | 2 + .../2024-02-24-222641_add_tests_table/up.sql | 10 + .../down.sql | 6 + .../up.sql | 6 + anubis-eval/src/api/catchers.rs | 29 + .../src/api/create_submission_endpoint.rs | 374 ++ .../src/api/evaluate_submission_job.rs | 143 + .../src/api/get_highest_score_submissions.rs | 197 + .../src/api/get_submission_endpoint.rs | 288 ++ .../src/api/get_submissions_endpoint.rs | 158 + anubis-eval/src/api/health_check_endpoint.rs | 33 + anubis-eval/src/api/middleware/auth.rs | 109 + anubis-eval/src/api/middleware/cors.rs | 52 + anubis-eval/src/api/middleware/mod.rs | 2 + anubis-eval/src/api/mod.rs | 9 + ...em_eval_metadata_upserted_event_handler.rs | 52 + anubis-eval/src/application/dapr_client.rs | 350 ++ anubis-eval/src/application/mod.rs | 1 + anubis-eval/src/config/di.rs | 55 + anubis-eval/src/config/logger.rs | 90 + anubis-eval/src/config/mod.rs | 2 + .../src/contracts/create_submission_dtos.rs | 20 + anubis-eval/src/contracts/dapr_dtos.rs | 107 + anubis-eval/src/contracts/fps_dtos.rs | 143 + .../get_highest_score_submissions_dtos.rs | 55 + .../src/contracts/get_submission_dtos.rs | 96 + .../src/contracts/get_submissions_dtos.rs | 87 + anubis-eval/src/contracts/mod.rs | 7 + .../problem_eval_metadata_upserted_dtos.rs | 48 + anubis-eval/src/domain/application_error.rs | 237 ++ anubis-eval/src/domain/mod.rs | 4 + anubis-eval/src/domain/problem.rs | 90 + anubis-eval/src/domain/submission.rs | 600 +++ anubis-eval/src/domain/test.rs | 63 + anubis-eval/src/infrastructure/db.rs | 23 + anubis-eval/src/infrastructure/mod.rs | 7 + anubis-eval/src/infrastructure/pagination.rs | 72 + .../src/infrastructure/problem_model.rs | 78 + .../src/infrastructure/problem_repository.rs | 89 + anubis-eval/src/infrastructure/raw_queries.rs | 48 + .../src/infrastructure/submission_model.rs | 134 + .../infrastructure/submission_repository.rs | 486 +++ anubis-eval/src/main.rs | 77 + anubis-eval/src/schema.rs | 63 + anubis-eval/src/tests/mod.rs | 181 + anubis-eval/src/tests/problem.rs | 69 + anubis-eval/src/tests/submission.rs | 93 + anubis-eval/src/tests/user.rs | 55 + .../tests-setup/cache-stub/.dockerignore | 0 anubis-eval/tests-setup/cache-stub/.gitgnore | 25 + anubis-eval/tests-setup/cache-stub/Dockerfile | 26 + anubis-eval/tests-setup/cache-stub/go.mod | 37 + anubis-eval/tests-setup/cache-stub/go.sum | 95 + anubis-eval/tests-setup/cache-stub/main.go | 83 + .../cache-stub/requests/get_item.http | 1 + .../cache-stub/requests/healthy.http | 1 + .../cache-stub/requests/set_item.http | 13 + anubis-eval/tests-setup/docker-compose.yaml | 69 + .../tests-setup/fixtures/problems.yaml | 17 + .../tests-setup/fixtures/submissions.yaml | 59 + .../tests-setup/fixtures/test_cases.yaml | 103 + anubis-eval/tests-setup/fixtures/tests.yaml | 20 + anubis-eval/tests-setup/fixtures/users.yaml | 17 + assets/Anubis-Architecture.png | Bin 0 -> 258150 bytes assets/Asgard-Endpoints.png | Bin 0 -> 29795 bytes assets/Pantheon-Architecture.png | Bin 1564048 -> 1731050 bytes assets/Submission-Flow-Diagram.png | Bin 0 -> 31741 bytes dapr/CHANGELOG.md | 15 + dapr/Dockerfile | 10 + ...m_eval_metadata_upserted_subscription.yaml | 11 + dapr/components/pubsub.yaml | 33 + dapr/components/secrets-file.yaml | 13 + dapr/components/statestore.yaml | 14 + dapr/config/config.yaml | 9 + docker-compose.override.yaml | 12 + docker-compose.prod.yaml | 499 +++ docker-compose.yaml | 708 ++++ enki-problems/.dockerignore | 14 + enki-problems/.env.template | 10 + enki-problems/.gitattributes | 1 + enki-problems/.gitignore | 272 ++ enki-problems/.prettierrc | 5 + enki-problems/CHANGELOG.md | 22 + enki-problems/Dockerfile | 40 + enki-problems/EnkiProblems.sln | 102 + enki-problems/Makefile | 2 + enki-problems/NuGet.Config | 5 + enki-problems/common.props | 19 + enki-problems/global.json | 7 + .../DaprMetadata.cs | 6 + .../EnkiProblems.Application.Contracts.csproj | 36 + .../EnkiProblemsApplicationContractsModule.cs | 28 + .../EnkiProblemsDtoExtensions.cs | 25 + ...nkiProblemsPermissionDefinitionProvider.cs | 20 + .../Permissions/EnkiProblemsPermissions.cs | 9 + .../Problems/CreateProblemDto.cs | 56 + .../Problems/CreateTestDto.cs | 14 + .../ProblemEvalMetadataUpsertedEvent.cs | 24 + .../Problems/Events/TestDeletedEvent.cs | 9 + .../Problems/Events/TestUpsertedEvent.cs | 13 + .../Problems/GetProblemByIdDto.cs | 10 + .../Problems/IProblemAppService.cs | 31 + .../Problems/ProblemDto.cs | 35 + .../Problems/ProblemEvalMetadataDto.cs | 24 + .../Problems/ProblemListFilterDto.cs | 15 + .../Problems/ProblemWithTestsDto.cs | 38 + .../Problems/TestDto.cs | 12 + .../Problems/Tests/DownloadTestStreamDto.cs | 11 + .../Problems/Tests/Grpc/hermes.proto | 87 + .../Problems/Tests/ITestService.cs | 14 + .../Problems/Tests/UploadTestStreamDto.cs | 8 + .../Problems/UpdateProblemDto.cs | 48 + .../Problems/UpdateTestDto.cs | 12 + .../EnkiProblems.Application.csproj | 27 + .../EnkiProblemsAppService.cs | 14 + ...nkiProblemsApplicationAutoMapperProfile.cs | 13 + .../EnkiProblemsApplicationModule.cs | 31 + .../Problems/ProblemAppService.cs | 676 ++++ .../Problems/ProblemToProblemDtoProfile.cs | 16 + .../ProblemToProblemEvalMetadataDtoProfile.cs | 19 + ...ProblemEvalMetadataUpsertedEventProfile.cs | 20 + .../ProblemToProblemWithTestsDtoProfile.cs | 17 + .../Problems/Tests/HermesTestsGrpcService.cs | 145 + .../Problems/Tests/TestToTestDtoProfile.cs | 20 + .../Properties/AssemblyInfo.cs | 3 + .../EnkiProblems.Domain.Shared.csproj | 33 + .../EnkiProblemsDomainErrorCodes.cs | 48 + .../EnkiProblemsDomainSharedModule.cs | 58 + .../EnkiProblemsGlobalFeatureConfigurator.cs | 21 + ...EnkiProblemsModuleExtensionConfigurator.cs | 70 + .../Helpers/FormFileExtension.cs | 14 + .../Localization/EnkiProblems/ar.json | 8 + .../Localization/EnkiProblems/cs.json | 8 + .../Localization/EnkiProblems/de.json | 8 + .../Localization/EnkiProblems/en-GB.json | 8 + .../Localization/EnkiProblems/en.json | 27 + .../Localization/EnkiProblems/es.json | 8 + .../Localization/EnkiProblems/fi.json | 8 + .../Localization/EnkiProblems/fr.json | 8 + .../Localization/EnkiProblems/hi.json | 8 + .../Localization/EnkiProblems/hr.json | 8 + .../Localization/EnkiProblems/hu.json | 8 + .../Localization/EnkiProblems/is.json | 8 + .../Localization/EnkiProblems/it.json | 8 + .../Localization/EnkiProblems/nl.json | 8 + .../Localization/EnkiProblems/pl-PL.json | 8 + .../Localization/EnkiProblems/pt-BR.json | 8 + .../Localization/EnkiProblems/ro-RO.json | 8 + .../Localization/EnkiProblems/ru.json | 8 + .../Localization/EnkiProblems/sk.json | 8 + .../Localization/EnkiProblems/sl.json | 8 + .../Localization/EnkiProblems/tr.json | 8 + .../Localization/EnkiProblems/vi.json | 8 + .../Localization/EnkiProblems/zh-Hans.json | 8 + .../Localization/EnkiProblems/zh-Hant.json | 8 + .../Localization/EnkiProblemsResource.cs | 6 + .../MultiTenancy/MultiTenancyConsts.cs | 10 + .../Problems/DifficultyEnum.cs | 9 + .../Problems/IoTypeEnum.cs | 7 + .../Data/EnkiProblemsDbMigrationService.cs | 110 + .../Data/IEnkiProblemsDbSchemaMigrator.cs | 8 + .../Data/NullEnkiProblemsDbSchemaMigrator.cs | 15 + .../EnkiProblems.Domain.csproj | 28 + .../EnkiProblems.Domain/EnkiProblemsConsts.cs | 70 + .../EnkiProblemsDomainModule.cs | 68 + .../src/EnkiProblems.Domain/Labels/Label.cs | 9 + .../OpenIddictDataSeedContributor.cs | 490 +++ .../src/EnkiProblems.Domain/Problems/Limit.cs | 109 + .../EnkiProblems.Domain/Problems/Origin.cs | 53 + .../EnkiProblems.Domain/Problems/Problem.cs | 326 ++ .../Problems/ProblemLabel.cs | 26 + .../Problems/ProblemManager.cs | 197 + .../src/EnkiProblems.Domain/Problems/Test.cs | 67 + .../Properties/AssemblyInfo.cs | 4 + .../EnkiProblemsSettingDefinitionProvider.cs | 12 + .../Settings/EnkiProblemsSettings.cs | 9 + .../Controllers/HomeController.cs | 12 + .../EnkiProblems.HttpApi.Host.csproj | 42 + .../EnkiProblemsHttpApiHostModule.cs | 302 ++ .../src/EnkiProblems.HttpApi.Host/Program.cs | 54 + .../Properties/launchSettings.json | 27 + .../appsettings.Development.json | 2 + .../appsettings.json | 12 + .../appsettings.secrets.json | 2 + .../src/EnkiProblems.HttpApi.Host/web.config | 18 + .../Controllers/EnkiProblemsController.cs | 14 + .../ProblemSubscriberController.cs | 108 + .../EnkiProblems.HttpApi.csproj | 26 + .../EnkiProblemsHttpApiModule.cs | 37 + .../EnkiProblems.MongoDB.csproj | 23 + .../MongoDb/EnkiProblemsMongoDbContext.cs | 26 + .../MongoDb/EnkiProblemsMongoDbModule.cs | 40 + .../MongoDbEnkiProblemsDbSchemaMigrator.cs | 48 + .../Properties/AssemblyInfo.cs | 3 + .../EnkiProblems.Application.Tests.csproj | 21 + .../EnkiProblemsApplicationCollection.cs | 7 + .../EnkiProblemsApplicationTestBase.cs | 4 + .../EnkiProblemsApplicationTestModule.cs | 6 + .../Problems/ProblemAppServiceTests.cs | 1122 ++++++ .../EnkiProblems.Domain.Tests.csproj | 20 + .../EnkiProblemsDomainCollection.cs | 7 + .../EnkiProblemsDomainTestBase.cs | 4 + .../EnkiProblemsDomainTestModule.cs | 7 + .../Problems/ProblemManagerTests.cs | 344 ++ .../EnkiProblems.MongoDB.Tests.csproj | 22 + .../MongoDb/EnkiProblemsMongoCollection.cs | 6 + ...nkiProblemsMongoDbCollectionFixtureBase.cs | 6 + .../MongoDb/EnkiProblemsMongoDbFixture.cs | 16 + .../MongoDb/EnkiProblemsMongoDbTestBase.cs | 4 + .../MongoDb/EnkiProblemsMongoDbTestModule.cs | 20 + .../EnkiProblems.TestBase.csproj | 31 + .../EnkiProblemsTestBase.cs | 66 + .../EnkiProblemsTestBaseModule.cs | 47 + .../EnkiProblemsTestConsts.cs | 6 + .../EnkiProblemsTestData.cs | 115 + .../EnkiProblemsTestDataSeedContributor.cs | 72 + .../Security/FakeCurrentPrincipalAccessor.cs | 29 + hermes-tests/.dockerignore | 13 + hermes-tests/.env.template | 1 + hermes-tests/.gitignore | 9 +- hermes-tests/CHANGELOG.md | 9 + hermes-tests/Dockerfile | 33 + hermes-tests/Makefile | 3 + hermes-tests/bin/client.dart | 37 +- hermes-tests/bin/hermes_tests.dart | 18 + .../lib/api/client/hermes_grpc_client.dart | 10 + hermes-tests/lib/api/core/hermes.pb.dart | 248 ++ hermes-tests/lib/api/core/hermes.pbgrpc.dart | 56 + hermes-tests/lib/api/core/hermes.pbjson.dart | 44 + .../lib/api/server/hermes_grpc_server.dart | 70 + .../delete/delete_test_use_case.dart | 68 + .../get_download_link_for_test_use_case.dart | 73 + .../upload/decode_test_use_case.dart | 1 - hermes-tests/lib/di/config/config.dart | 6 + hermes-tests/lib/di/injection.config.dart | 8 +- hermes-tests/lib/di/injection.dart | 14 + hermes-tests/lib/di/injection_module.dart | 2 +- .../lib/domain/core/file_manager.dart | 24 + .../lib/domain/entities/test_metadata.dart | 16 + .../entities/test_metadata.freezed.dart | 847 ++++ .../domain/exceptions/storage_failures.dart | 4 + .../exceptions/storage_failures.freezed.dart | 189 + .../domain/interfaces/i_test_repository.dart | 4 + .../repositories/test_repository.dart | 98 +- hermes-tests/protos/hermes.proto | 26 +- hermes-tests/pubspec.lock | 230 +- hermes-tests/pubspec.yaml | 6 +- .../temp/test/archived/sum/1-invalid.tar.gz | Bin 0 -> 185 bytes .../temp/test/archived/sum/1-oversize.zip | Bin 0 -> 470 bytes .../temp/test/archived/sum/1-valid.zip | Bin 0 -> 320 bytes hermes-tests/temp/test/archived/sum/1.zip | Bin 0 -> 320 bytes hermes-tests/temp/test/archived/sum/4.zip | Bin 0 -> 185 bytes .../temp/test/unarchived/sum/2/input.txt | 1 + .../temp/test/unarchived/sum/2/output.txt | 1 + .../temp/test/unarchived/sum/6/input.txt | 1 + .../hermes_grpc_server_integration_test.dart | 64 +- .../download_test_use_case_unit_test.dart | 10 +- .../encode_test_use_case_unit_test.dart | 12 +- .../fragment_test_use_case_unit_test.dart | 10 +- .../decode_test_use_case_unit_test.dart | 10 +- .../defragment_test_use_case_unit_test.dart | 18 +- .../upload_test_use_case_unit_test.dart | 10 +- odin-gateway/CHANGELOG.md | 23 + odin-gateway/Dockerfile | 12 + odin-gateway/envoy.yaml | 472 +++ odin-gateway/https/https.config | 18 + quetzalcoatl-auth/.dockerignore | 4 +- quetzalcoatl-auth/.env.template | 18 + quetzalcoatl-auth/.gitignore | 3 +- quetzalcoatl-auth/Api/Api.csproj | 1 + .../Api/Features/Auth/Login/Endpoint.cs | 13 +- .../Api/Features/Auth/Login/Models.cs | 4 +- .../Api/Features/Auth/Login/Summary.cs | 2 - .../Features/Auth/RefreshToken/Endpoint.cs | 99 +- .../Api/Features/Auth/RefreshToken/Mappers.cs | 28 - .../Api/Features/Auth/RefreshToken/Models.cs | 3 +- .../Api/Features/Auth/Register/Endpoint.cs | 11 +- .../Api/Features/Auth/Register/Summary.cs | 4 +- .../Api/Features/Auth/Register/Validators.cs | 37 +- .../Core/ApplicationUserExtensions.cs | 35 + .../Api/Features/Core/LinqExtensions.cs | 14 + .../Api/Features/Images/ImagesGroup.cs | 2 +- .../Api/Features/Users/Core/UserDto.cs | 3 +- .../Api/Features/Users/Delete/Endpoint.cs | 6 +- .../Api/Features/Users/Get/Endpoint.cs | 6 +- .../Api/Features/Users/Get/Mappers.cs | 11 +- .../Api/Features/Users/Get/Models.cs | 3 +- .../Api/Features/Users/GetAll/Endpoint.cs | 37 +- .../Api/Features/Users/GetAll/Mappers.cs | 11 +- .../Api/Features/Users/GetAll/Models.cs | 16 +- .../Api/Features/Users/GetAll/Summary.cs | 9 +- .../Api/Features/Users/Roles/Add/Endpoint.cs | 88 + .../Api/Features/Users/Roles/Add/Models.cs | 9 + .../Api/Features/Users/Roles/Add/Summary.cs | 32 + .../Features/Users/Roles/Remove/Endpoint.cs | 88 + .../Api/Features/Users/Roles/Remove/Models.cs | 9 + .../Features/Users/Roles/Remove/Summary.cs | 32 + .../Api/Features/Users/Update/Endpoint.cs | 13 +- .../Api/Features/Users/Update/Mappers.cs | 11 +- .../Api/Features/Users/Update/Models.cs | 3 +- .../Api/Features/Users/Update/Summary.cs | 3 +- .../Api/Features/Users/Update/Validators.cs | 23 +- quetzalcoatl-auth/Api/Usings.cs | 35 +- .../Features/Users/CreateUser/Handler.cs | 4 +- quetzalcoatl-auth/Application/Usings.cs | 10 +- .../Bootstrapper/Bootstrapper.csproj | 1 + .../Extensions/ServiceCollectionExtensions.cs | 6 +- .../Extensions/WebApplicationExtensions.cs | 8 +- quetzalcoatl-auth/Bootstrapper/Program.cs | 81 +- quetzalcoatl-auth/Bootstrapper/Usings.cs | 31 +- .../Bootstrapper/appsettings.json | 3 +- quetzalcoatl-auth/CHANGELOG.md | 29 + quetzalcoatl-auth/Dockerfile | 10 - .../Domain/Consts/ApplicationUserConsts.cs | 18 + .../Domain/Consts/SystemConsts.cs | 6 + .../Domain/Entities/ApplicationRole.cs | 7 + .../Domain/Entities/RefreshToken.cs | 4 +- quetzalcoatl-auth/Domain/Usings.cs | 4 +- .../Infrastructure/ApplicationDbContext.cs | 11 + .../Infrastructure/Infrastructure.csproj | 2 +- ...230315154826_AddGuidAsPKForIdentityUser.cs | 232 +- ...319104138_AddProfileImageToIdentityUser.cs | 13 +- ...09173144_AddRefreshTokenEntity.Designer.cs | 358 ++ .../20230509173144_AddRefreshTokenEntity.cs | 49 + ...20230525105824_UpdateRefreshTokenEntity.cs | 19 +- ...dundantFieldsFromRefreshTokens.Designer.cs | 360 ++ ..._RemoveRedundantFieldsFromRefreshTokens.cs | 55 + .../ApplicationDbContextModelSnapshot.cs | 9 +- .../Triggers/DeleteStaleRefreshTokens.cs | 4 +- quetzalcoatl-auth/Infrastructure/Usings.cs | 8 +- .../Api/Features/Auth/LoginEndpointTests.cs | 2 +- .../Features/Auth/RegisterEndpointTests.cs | 24 +- .../Features/Images/GetImageEndpointTests.cs | 39 - .../Api/Features/Users/DeleteEndpointTests.cs | 9 +- .../Api/Features/Users/GetAllEndpointTests.cs | 9 +- .../Api/Features/Users/GetEndpointTests.cs | 6 +- .../Api/Features/Users/UpdateEndpointTests.cs | 16 +- .../Tests.Integration/Core/ApiWebFactory.cs | 8 +- quetzalcoatl-auth/Tests.Integration/Usings.cs | 50 +- quetzalcoatl-auth/global.json | 7 + release-please-config.json | 38 + seeder/.dockerignore | 34 + seeder/.gitignore | 1 + seeder/Dockerfile | 66 + seeder/fixtures.go | 71 + seeder/fixtures.yaml | 30 + seeder/go.mod | 8 + seeder/go.sum | 6 + seeder/main.go | 26 + seeder/pantheonix_client.go | 274 ++ seeder/seeder.go | 86 + 411 files changed, 23817 insertions(+), 730 deletions(-) create mode 100644 .github/workflows/anubis-eval-ci.yaml create mode 100644 .github/workflows/anubis-eval-pr-verify.yaml create mode 100644 .github/workflows/dapr-config-ci.yaml create mode 100644 .github/workflows/enki-problems-ci.yaml create mode 100644 .github/workflows/enki-problems-pr-verify.yaml create mode 100644 .github/workflows/eval-lb-ci.yaml create mode 100644 .github/workflows/hermes-tests-ci.yaml create mode 100644 .github/workflows/hermes-tests-pr-verify.yaml create mode 100644 .github/workflows/odin-gateway-ci.yaml create mode 100644 .github/workflows/quetzalcoatl-auth-ci.yaml create mode 100644 .github/workflows/quetzalcoatl-auth-pr-verify.yaml create mode 100644 .github/workflows/release-please.yaml create mode 100644 .github/workflows/step-deploy-to-docker-hub.yaml create mode 100644 .github/workflows/step-deploy-to-ghcr.yaml create mode 100644 .release-please-manifest.json create mode 100644 Makefile create mode 100644 anubis-eval/.config/nextest.toml create mode 100644 anubis-eval/.dockerignore create mode 100644 anubis-eval/.env.judge0.template create mode 100644 anubis-eval/.env.template create mode 100644 anubis-eval/.gitignore create mode 100644 anubis-eval/CHANGELOG.md create mode 100644 anubis-eval/Cargo.lock create mode 100644 anubis-eval/Cargo.toml create mode 100644 anubis-eval/Dockerfile create mode 100644 anubis-eval/README.md create mode 100644 anubis-eval/diesel.toml create mode 100644 anubis-eval/eval-lb/CHANGELOG.md create mode 100644 anubis-eval/eval-lb/Dockerfile create mode 100644 anubis-eval/eval-lb/nginx.conf create mode 100644 anubis-eval/log4rs.yaml create mode 100644 anubis-eval/migrations/.gitkeep create mode 100644 anubis-eval/migrations/00000000000000_diesel_initial_setup/down.sql create mode 100644 anubis-eval/migrations/00000000000000_diesel_initial_setup/up.sql create mode 100644 anubis-eval/migrations/2023-09-20-180041_create_submissions/down.sql create mode 100644 anubis-eval/migrations/2023-09-20-180041_create_submissions/up.sql create mode 100644 anubis-eval/migrations/2023-10-03-213608_update_test_case/down.sql create mode 100644 anubis-eval/migrations/2023-10-03-213608_update_test_case/up.sql create mode 100644 anubis-eval/migrations/2023-10-03-221655_convert_pk_to_uuid/down.sql create mode 100644 anubis-eval/migrations/2023-10-03-221655_convert_pk_to_uuid/up.sql create mode 100644 anubis-eval/migrations/2023-10-04-113726_convert_remained_ids_to_uuid/down.sql create mode 100644 anubis-eval/migrations/2023-10-04-113726_convert_remained_ids_to_uuid/up.sql create mode 100644 anubis-eval/migrations/2023-10-04-114912_convert_ids_to_text/down.sql create mode 100644 anubis-eval/migrations/2023-10-04-114912_convert_ids_to_text/up.sql create mode 100644 anubis-eval/migrations/2023-10-04-120245_add_test_id_to_testcase/down.sql create mode 100644 anubis-eval/migrations/2023-10-04-120245_add_test_id_to_testcase/up.sql create mode 100644 anubis-eval/migrations/2023-10-04-121530_convert_numerics_to_reals/down.sql create mode 100644 anubis-eval/migrations/2023-10-04-121530_convert_numerics_to_reals/up.sql create mode 100644 anubis-eval/migrations/2023-10-18-174317_add_expected_score_field_for_test_cases/down.sql create mode 100644 anubis-eval/migrations/2023-10-18-174317_add_expected_score_field_for_test_cases/up.sql create mode 100644 anubis-eval/migrations/2023-10-24-073527_add_avg_time_and_avg_memory_for_submissions/down.sql create mode 100644 anubis-eval/migrations/2023-10-24-073527_add_avg_time_and_avg_memory_for_submissions/up.sql create mode 100644 anubis-eval/migrations/2023-10-24-105305_remove_score_field_from_testcases/down.sql create mode 100644 anubis-eval/migrations/2023-10-24-105305_remove_score_field_from_testcases/up.sql create mode 100644 anubis-eval/migrations/2023-10-24-180438_add_compile_output_field_for_testcases/down.sql create mode 100644 anubis-eval/migrations/2023-10-24-180438_add_compile_output_field_for_testcases/up.sql create mode 100644 anubis-eval/migrations/2023-11-05-151123_add_problems_table/down.sql create mode 100644 anubis-eval/migrations/2023-11-05-151123_add_problems_table/up.sql create mode 100644 anubis-eval/migrations/2024-02-24-222641_add_tests_table/down.sql create mode 100644 anubis-eval/migrations/2024-02-24-222641_add_tests_table/up.sql create mode 100644 anubis-eval/migrations/2024-02-28-152845_add_composite_pk_to_tests_table/down.sql create mode 100644 anubis-eval/migrations/2024-02-28-152845_add_composite_pk_to_tests_table/up.sql create mode 100644 anubis-eval/src/api/catchers.rs create mode 100644 anubis-eval/src/api/create_submission_endpoint.rs create mode 100644 anubis-eval/src/api/evaluate_submission_job.rs create mode 100644 anubis-eval/src/api/get_highest_score_submissions.rs create mode 100644 anubis-eval/src/api/get_submission_endpoint.rs create mode 100644 anubis-eval/src/api/get_submissions_endpoint.rs create mode 100644 anubis-eval/src/api/health_check_endpoint.rs create mode 100644 anubis-eval/src/api/middleware/auth.rs create mode 100644 anubis-eval/src/api/middleware/cors.rs create mode 100644 anubis-eval/src/api/middleware/mod.rs create mode 100644 anubis-eval/src/api/mod.rs create mode 100644 anubis-eval/src/api/problem_eval_metadata_upserted_event_handler.rs create mode 100644 anubis-eval/src/application/dapr_client.rs create mode 100644 anubis-eval/src/application/mod.rs create mode 100644 anubis-eval/src/config/di.rs create mode 100644 anubis-eval/src/config/logger.rs create mode 100644 anubis-eval/src/config/mod.rs create mode 100644 anubis-eval/src/contracts/create_submission_dtos.rs create mode 100644 anubis-eval/src/contracts/dapr_dtos.rs create mode 100644 anubis-eval/src/contracts/fps_dtos.rs create mode 100644 anubis-eval/src/contracts/get_highest_score_submissions_dtos.rs create mode 100644 anubis-eval/src/contracts/get_submission_dtos.rs create mode 100644 anubis-eval/src/contracts/get_submissions_dtos.rs create mode 100644 anubis-eval/src/contracts/mod.rs create mode 100644 anubis-eval/src/contracts/problem_eval_metadata_upserted_dtos.rs create mode 100644 anubis-eval/src/domain/application_error.rs create mode 100644 anubis-eval/src/domain/mod.rs create mode 100644 anubis-eval/src/domain/problem.rs create mode 100644 anubis-eval/src/domain/submission.rs create mode 100644 anubis-eval/src/domain/test.rs create mode 100644 anubis-eval/src/infrastructure/db.rs create mode 100644 anubis-eval/src/infrastructure/mod.rs create mode 100644 anubis-eval/src/infrastructure/pagination.rs create mode 100644 anubis-eval/src/infrastructure/problem_model.rs create mode 100644 anubis-eval/src/infrastructure/problem_repository.rs create mode 100644 anubis-eval/src/infrastructure/raw_queries.rs create mode 100644 anubis-eval/src/infrastructure/submission_model.rs create mode 100644 anubis-eval/src/infrastructure/submission_repository.rs create mode 100644 anubis-eval/src/main.rs create mode 100644 anubis-eval/src/schema.rs create mode 100644 anubis-eval/src/tests/mod.rs create mode 100644 anubis-eval/src/tests/problem.rs create mode 100644 anubis-eval/src/tests/submission.rs create mode 100644 anubis-eval/src/tests/user.rs create mode 100644 anubis-eval/tests-setup/cache-stub/.dockerignore create mode 100644 anubis-eval/tests-setup/cache-stub/.gitgnore create mode 100644 anubis-eval/tests-setup/cache-stub/Dockerfile create mode 100644 anubis-eval/tests-setup/cache-stub/go.mod create mode 100644 anubis-eval/tests-setup/cache-stub/go.sum create mode 100644 anubis-eval/tests-setup/cache-stub/main.go create mode 100644 anubis-eval/tests-setup/cache-stub/requests/get_item.http create mode 100644 anubis-eval/tests-setup/cache-stub/requests/healthy.http create mode 100644 anubis-eval/tests-setup/cache-stub/requests/set_item.http create mode 100644 anubis-eval/tests-setup/docker-compose.yaml create mode 100644 anubis-eval/tests-setup/fixtures/problems.yaml create mode 100644 anubis-eval/tests-setup/fixtures/submissions.yaml create mode 100644 anubis-eval/tests-setup/fixtures/test_cases.yaml create mode 100644 anubis-eval/tests-setup/fixtures/tests.yaml create mode 100644 anubis-eval/tests-setup/fixtures/users.yaml create mode 100644 assets/Anubis-Architecture.png create mode 100644 assets/Asgard-Endpoints.png create mode 100644 assets/Submission-Flow-Diagram.png create mode 100644 dapr/CHANGELOG.md create mode 100644 dapr/Dockerfile create mode 100644 dapr/components/problem_eval_metadata_upserted_subscription.yaml create mode 100644 dapr/components/pubsub.yaml create mode 100644 dapr/components/secrets-file.yaml create mode 100644 dapr/components/statestore.yaml create mode 100644 dapr/config/config.yaml create mode 100644 docker-compose.override.yaml create mode 100644 docker-compose.prod.yaml create mode 100644 docker-compose.yaml create mode 100644 enki-problems/.dockerignore create mode 100644 enki-problems/.env.template create mode 100644 enki-problems/.gitattributes create mode 100644 enki-problems/.gitignore create mode 100644 enki-problems/.prettierrc create mode 100644 enki-problems/CHANGELOG.md create mode 100644 enki-problems/Dockerfile create mode 100644 enki-problems/EnkiProblems.sln create mode 100644 enki-problems/Makefile create mode 100644 enki-problems/NuGet.Config create mode 100644 enki-problems/common.props create mode 100644 enki-problems/global.json create mode 100644 enki-problems/src/EnkiProblems.Application.Contracts/DaprMetadata.cs create mode 100644 enki-problems/src/EnkiProblems.Application.Contracts/EnkiProblems.Application.Contracts.csproj create mode 100644 enki-problems/src/EnkiProblems.Application.Contracts/EnkiProblemsApplicationContractsModule.cs create mode 100644 enki-problems/src/EnkiProblems.Application.Contracts/EnkiProblemsDtoExtensions.cs create mode 100644 enki-problems/src/EnkiProblems.Application.Contracts/Permissions/EnkiProblemsPermissionDefinitionProvider.cs create mode 100644 enki-problems/src/EnkiProblems.Application.Contracts/Permissions/EnkiProblemsPermissions.cs create mode 100644 enki-problems/src/EnkiProblems.Application.Contracts/Problems/CreateProblemDto.cs create mode 100644 enki-problems/src/EnkiProblems.Application.Contracts/Problems/CreateTestDto.cs create mode 100644 enki-problems/src/EnkiProblems.Application.Contracts/Problems/Events/ProblemEvalMetadataUpsertedEvent.cs create mode 100644 enki-problems/src/EnkiProblems.Application.Contracts/Problems/Events/TestDeletedEvent.cs create mode 100644 enki-problems/src/EnkiProblems.Application.Contracts/Problems/Events/TestUpsertedEvent.cs create mode 100644 enki-problems/src/EnkiProblems.Application.Contracts/Problems/GetProblemByIdDto.cs create mode 100644 enki-problems/src/EnkiProblems.Application.Contracts/Problems/IProblemAppService.cs create mode 100644 enki-problems/src/EnkiProblems.Application.Contracts/Problems/ProblemDto.cs create mode 100644 enki-problems/src/EnkiProblems.Application.Contracts/Problems/ProblemEvalMetadataDto.cs create mode 100644 enki-problems/src/EnkiProblems.Application.Contracts/Problems/ProblemListFilterDto.cs create mode 100644 enki-problems/src/EnkiProblems.Application.Contracts/Problems/ProblemWithTestsDto.cs create mode 100644 enki-problems/src/EnkiProblems.Application.Contracts/Problems/TestDto.cs create mode 100644 enki-problems/src/EnkiProblems.Application.Contracts/Problems/Tests/DownloadTestStreamDto.cs create mode 100644 enki-problems/src/EnkiProblems.Application.Contracts/Problems/Tests/Grpc/hermes.proto create mode 100644 enki-problems/src/EnkiProblems.Application.Contracts/Problems/Tests/ITestService.cs create mode 100644 enki-problems/src/EnkiProblems.Application.Contracts/Problems/Tests/UploadTestStreamDto.cs create mode 100644 enki-problems/src/EnkiProblems.Application.Contracts/Problems/UpdateProblemDto.cs create mode 100644 enki-problems/src/EnkiProblems.Application.Contracts/Problems/UpdateTestDto.cs create mode 100644 enki-problems/src/EnkiProblems.Application/EnkiProblems.Application.csproj create mode 100644 enki-problems/src/EnkiProblems.Application/EnkiProblemsAppService.cs create mode 100644 enki-problems/src/EnkiProblems.Application/EnkiProblemsApplicationAutoMapperProfile.cs create mode 100644 enki-problems/src/EnkiProblems.Application/EnkiProblemsApplicationModule.cs create mode 100644 enki-problems/src/EnkiProblems.Application/Problems/ProblemAppService.cs create mode 100644 enki-problems/src/EnkiProblems.Application/Problems/ProblemToProblemDtoProfile.cs create mode 100644 enki-problems/src/EnkiProblems.Application/Problems/ProblemToProblemEvalMetadataDtoProfile.cs create mode 100644 enki-problems/src/EnkiProblems.Application/Problems/ProblemToProblemEvalMetadataUpsertedEventProfile.cs create mode 100644 enki-problems/src/EnkiProblems.Application/Problems/ProblemToProblemWithTestsDtoProfile.cs create mode 100644 enki-problems/src/EnkiProblems.Application/Problems/Tests/HermesTestsGrpcService.cs create mode 100644 enki-problems/src/EnkiProblems.Application/Problems/Tests/TestToTestDtoProfile.cs create mode 100644 enki-problems/src/EnkiProblems.Application/Properties/AssemblyInfo.cs create mode 100644 enki-problems/src/EnkiProblems.Domain.Shared/EnkiProblems.Domain.Shared.csproj create mode 100644 enki-problems/src/EnkiProblems.Domain.Shared/EnkiProblemsDomainErrorCodes.cs create mode 100644 enki-problems/src/EnkiProblems.Domain.Shared/EnkiProblemsDomainSharedModule.cs create mode 100644 enki-problems/src/EnkiProblems.Domain.Shared/EnkiProblemsGlobalFeatureConfigurator.cs create mode 100644 enki-problems/src/EnkiProblems.Domain.Shared/EnkiProblemsModuleExtensionConfigurator.cs create mode 100644 enki-problems/src/EnkiProblems.Domain.Shared/Helpers/FormFileExtension.cs create mode 100644 enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/ar.json create mode 100644 enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/cs.json create mode 100644 enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/de.json create mode 100644 enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/en-GB.json create mode 100644 enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/en.json create mode 100644 enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/es.json create mode 100644 enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/fi.json create mode 100644 enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/fr.json create mode 100644 enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/hi.json create mode 100644 enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/hr.json create mode 100644 enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/hu.json create mode 100644 enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/is.json create mode 100644 enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/it.json create mode 100644 enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/nl.json create mode 100644 enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/pl-PL.json create mode 100644 enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/pt-BR.json create mode 100644 enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/ro-RO.json create mode 100644 enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/ru.json create mode 100644 enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/sk.json create mode 100644 enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/sl.json create mode 100644 enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/tr.json create mode 100644 enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/vi.json create mode 100644 enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/zh-Hans.json create mode 100644 enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/zh-Hant.json create mode 100644 enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblemsResource.cs create mode 100644 enki-problems/src/EnkiProblems.Domain.Shared/MultiTenancy/MultiTenancyConsts.cs create mode 100644 enki-problems/src/EnkiProblems.Domain.Shared/Problems/DifficultyEnum.cs create mode 100644 enki-problems/src/EnkiProblems.Domain.Shared/Problems/IoTypeEnum.cs create mode 100644 enki-problems/src/EnkiProblems.Domain/Data/EnkiProblemsDbMigrationService.cs create mode 100644 enki-problems/src/EnkiProblems.Domain/Data/IEnkiProblemsDbSchemaMigrator.cs create mode 100644 enki-problems/src/EnkiProblems.Domain/Data/NullEnkiProblemsDbSchemaMigrator.cs create mode 100644 enki-problems/src/EnkiProblems.Domain/EnkiProblems.Domain.csproj create mode 100644 enki-problems/src/EnkiProblems.Domain/EnkiProblemsConsts.cs create mode 100644 enki-problems/src/EnkiProblems.Domain/EnkiProblemsDomainModule.cs create mode 100644 enki-problems/src/EnkiProblems.Domain/Labels/Label.cs create mode 100644 enki-problems/src/EnkiProblems.Domain/OpenIddict/OpenIddictDataSeedContributor.cs create mode 100644 enki-problems/src/EnkiProblems.Domain/Problems/Limit.cs create mode 100644 enki-problems/src/EnkiProblems.Domain/Problems/Origin.cs create mode 100644 enki-problems/src/EnkiProblems.Domain/Problems/Problem.cs create mode 100644 enki-problems/src/EnkiProblems.Domain/Problems/ProblemLabel.cs create mode 100644 enki-problems/src/EnkiProblems.Domain/Problems/ProblemManager.cs create mode 100644 enki-problems/src/EnkiProblems.Domain/Problems/Test.cs create mode 100644 enki-problems/src/EnkiProblems.Domain/Properties/AssemblyInfo.cs create mode 100644 enki-problems/src/EnkiProblems.Domain/Settings/EnkiProblemsSettingDefinitionProvider.cs create mode 100644 enki-problems/src/EnkiProblems.Domain/Settings/EnkiProblemsSettings.cs create mode 100644 enki-problems/src/EnkiProblems.HttpApi.Host/Controllers/HomeController.cs create mode 100644 enki-problems/src/EnkiProblems.HttpApi.Host/EnkiProblems.HttpApi.Host.csproj create mode 100644 enki-problems/src/EnkiProblems.HttpApi.Host/EnkiProblemsHttpApiHostModule.cs create mode 100644 enki-problems/src/EnkiProblems.HttpApi.Host/Program.cs create mode 100644 enki-problems/src/EnkiProblems.HttpApi.Host/Properties/launchSettings.json create mode 100644 enki-problems/src/EnkiProblems.HttpApi.Host/appsettings.Development.json create mode 100644 enki-problems/src/EnkiProblems.HttpApi.Host/appsettings.json create mode 100644 enki-problems/src/EnkiProblems.HttpApi.Host/appsettings.secrets.json create mode 100644 enki-problems/src/EnkiProblems.HttpApi.Host/web.config create mode 100644 enki-problems/src/EnkiProblems.HttpApi/Controllers/EnkiProblemsController.cs create mode 100644 enki-problems/src/EnkiProblems.HttpApi/Controllers/ProblemSubscriberController.cs create mode 100644 enki-problems/src/EnkiProblems.HttpApi/EnkiProblems.HttpApi.csproj create mode 100644 enki-problems/src/EnkiProblems.HttpApi/EnkiProblemsHttpApiModule.cs create mode 100644 enki-problems/src/EnkiProblems.MongoDB/EnkiProblems.MongoDB.csproj create mode 100644 enki-problems/src/EnkiProblems.MongoDB/MongoDb/EnkiProblemsMongoDbContext.cs create mode 100644 enki-problems/src/EnkiProblems.MongoDB/MongoDb/EnkiProblemsMongoDbModule.cs create mode 100644 enki-problems/src/EnkiProblems.MongoDB/MongoDb/MongoDbEnkiProblemsDbSchemaMigrator.cs create mode 100644 enki-problems/src/EnkiProblems.MongoDB/Properties/AssemblyInfo.cs create mode 100644 enki-problems/test/EnkiProblems.Application.Tests/EnkiProblems.Application.Tests.csproj create mode 100644 enki-problems/test/EnkiProblems.Application.Tests/EnkiProblemsApplicationCollection.cs create mode 100644 enki-problems/test/EnkiProblems.Application.Tests/EnkiProblemsApplicationTestBase.cs create mode 100644 enki-problems/test/EnkiProblems.Application.Tests/EnkiProblemsApplicationTestModule.cs create mode 100644 enki-problems/test/EnkiProblems.Application.Tests/Problems/ProblemAppServiceTests.cs create mode 100644 enki-problems/test/EnkiProblems.Domain.Tests/EnkiProblems.Domain.Tests.csproj create mode 100644 enki-problems/test/EnkiProblems.Domain.Tests/EnkiProblemsDomainCollection.cs create mode 100644 enki-problems/test/EnkiProblems.Domain.Tests/EnkiProblemsDomainTestBase.cs create mode 100644 enki-problems/test/EnkiProblems.Domain.Tests/EnkiProblemsDomainTestModule.cs create mode 100644 enki-problems/test/EnkiProblems.Domain.Tests/Problems/ProblemManagerTests.cs create mode 100644 enki-problems/test/EnkiProblems.MongoDB.Tests/EnkiProblems.MongoDB.Tests.csproj create mode 100644 enki-problems/test/EnkiProblems.MongoDB.Tests/MongoDb/EnkiProblemsMongoCollection.cs create mode 100644 enki-problems/test/EnkiProblems.MongoDB.Tests/MongoDb/EnkiProblemsMongoDbCollectionFixtureBase.cs create mode 100644 enki-problems/test/EnkiProblems.MongoDB.Tests/MongoDb/EnkiProblemsMongoDbFixture.cs create mode 100644 enki-problems/test/EnkiProblems.MongoDB.Tests/MongoDb/EnkiProblemsMongoDbTestBase.cs create mode 100644 enki-problems/test/EnkiProblems.MongoDB.Tests/MongoDb/EnkiProblemsMongoDbTestModule.cs create mode 100644 enki-problems/test/EnkiProblems.TestBase/EnkiProblems.TestBase.csproj create mode 100644 enki-problems/test/EnkiProblems.TestBase/EnkiProblemsTestBase.cs create mode 100644 enki-problems/test/EnkiProblems.TestBase/EnkiProblemsTestBaseModule.cs create mode 100644 enki-problems/test/EnkiProblems.TestBase/EnkiProblemsTestConsts.cs create mode 100644 enki-problems/test/EnkiProblems.TestBase/EnkiProblemsTestData.cs create mode 100644 enki-problems/test/EnkiProblems.TestBase/EnkiProblemsTestDataSeedContributor.cs create mode 100644 enki-problems/test/EnkiProblems.TestBase/Security/FakeCurrentPrincipalAccessor.cs create mode 100644 hermes-tests/.dockerignore create mode 100644 hermes-tests/.env.template create mode 100644 hermes-tests/Dockerfile create mode 100644 hermes-tests/lib/application/use_cases/delete/delete_test_use_case.dart create mode 100644 hermes-tests/lib/application/use_cases/get_download_link/get_download_link_for_test_use_case.dart create mode 100644 hermes-tests/temp/test/archived/sum/1-invalid.tar.gz create mode 100644 hermes-tests/temp/test/archived/sum/1-oversize.zip create mode 100644 hermes-tests/temp/test/archived/sum/1-valid.zip create mode 100644 hermes-tests/temp/test/archived/sum/1.zip create mode 100644 hermes-tests/temp/test/archived/sum/4.zip create mode 100644 hermes-tests/temp/test/unarchived/sum/2/input.txt create mode 100644 hermes-tests/temp/test/unarchived/sum/2/output.txt create mode 100644 hermes-tests/temp/test/unarchived/sum/6/input.txt create mode 100644 odin-gateway/CHANGELOG.md create mode 100644 odin-gateway/Dockerfile create mode 100644 odin-gateway/envoy.yaml create mode 100644 odin-gateway/https/https.config create mode 100644 quetzalcoatl-auth/.env.template create mode 100644 quetzalcoatl-auth/Api/Features/Core/LinqExtensions.cs create mode 100644 quetzalcoatl-auth/Api/Features/Users/Roles/Add/Endpoint.cs create mode 100644 quetzalcoatl-auth/Api/Features/Users/Roles/Add/Models.cs create mode 100644 quetzalcoatl-auth/Api/Features/Users/Roles/Add/Summary.cs create mode 100644 quetzalcoatl-auth/Api/Features/Users/Roles/Remove/Endpoint.cs create mode 100644 quetzalcoatl-auth/Api/Features/Users/Roles/Remove/Models.cs create mode 100644 quetzalcoatl-auth/Api/Features/Users/Roles/Remove/Summary.cs create mode 100644 quetzalcoatl-auth/CHANGELOG.md create mode 100644 quetzalcoatl-auth/Domain/Consts/ApplicationUserConsts.cs create mode 100644 quetzalcoatl-auth/Domain/Consts/SystemConsts.cs create mode 100644 quetzalcoatl-auth/Domain/Entities/ApplicationRole.cs create mode 100644 quetzalcoatl-auth/Infrastructure/Migrations/20230509173144_AddRefreshTokenEntity.Designer.cs create mode 100644 quetzalcoatl-auth/Infrastructure/Migrations/20230509173144_AddRefreshTokenEntity.cs create mode 100644 quetzalcoatl-auth/Infrastructure/Migrations/20231201120945_RemoveRedundantFieldsFromRefreshTokens.Designer.cs create mode 100644 quetzalcoatl-auth/Infrastructure/Migrations/20231201120945_RemoveRedundantFieldsFromRefreshTokens.cs create mode 100644 quetzalcoatl-auth/global.json create mode 100644 release-please-config.json create mode 100644 seeder/.dockerignore create mode 100644 seeder/.gitignore create mode 100644 seeder/Dockerfile create mode 100644 seeder/fixtures.go create mode 100644 seeder/fixtures.yaml create mode 100644 seeder/go.mod create mode 100644 seeder/go.sum create mode 100644 seeder/main.go create mode 100644 seeder/pantheonix_client.go create mode 100644 seeder/seeder.go diff --git a/.github/workflows/anubis-eval-ci.yaml b/.github/workflows/anubis-eval-ci.yaml new file mode 100644 index 0000000..e6ffb4c --- /dev/null +++ b/.github/workflows/anubis-eval-ci.yaml @@ -0,0 +1,61 @@ +name: Anubis - Build Docker image and publish to GHCR and Docker Hub + +on: + push: + tags: + - "anubis/**" + +jobs: + build: + name: Build and Test Anubis Eval Microservice + runs-on: ubuntu-latest + defaults: + run: + working-directory: anubis-eval + + steps: + - uses: actions/checkout@v4 + + - name: Run docker-compose + uses: hoverkraft-tech/compose-action@v2.0.1 + with: + compose-file: "./anubis-eval/tests-setup/docker-compose.yaml" + up-flags: "--build -d" + + - name: Setup rust + uses: hecrj/setup-rust-action@v2 + with: + rust-version: '1.72.0' + + - name: Install cargo-nextest + uses: baptiste0928/cargo-install@v3 + with: + crate: cargo-nextest + version: '0.9.64' + locked: true + + - name: Build + run: cargo build --release + + - name: Test + run: cargo nextest run --all-features --profile ci + + deploy-to-ghcr: + needs: build + uses: ./.github/workflows/step-deploy-to-ghcr.yaml + with: + image_name: anubis-eval + build_context: anubis-eval + secrets: + TOKEN: ${{ secrets.TOKEN }} + + deploy-to-docker-hub: + needs: build + uses: ./.github/workflows/step-deploy-to-docker-hub.yaml + with: + namespace: pantheonix + repository: anubis + build_context: anubis-eval + secrets: + DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }} + DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }} diff --git a/.github/workflows/anubis-eval-pr-verify.yaml b/.github/workflows/anubis-eval-pr-verify.yaml new file mode 100644 index 0000000..db3679b --- /dev/null +++ b/.github/workflows/anubis-eval-pr-verify.yaml @@ -0,0 +1,44 @@ +name: Anubis - PR Verify + +on: + pull_request: + branches: + - anubis + paths: + - "anubis-eval/**" + - ".github/workflows/anubis-eval-pr-verify.yaml" + +jobs: + build: + name: Build and Test Anubis Eval Microservice + runs-on: ubuntu-latest + defaults: + run: + working-directory: anubis-eval + + steps: + - uses: actions/checkout@v4 + + - name: Run docker-compose + uses: hoverkraft-tech/compose-action@v2.0.1 + with: + compose-file: "./anubis-eval/tests-setup/docker-compose.yaml" + up-flags: "--build -d" + + - name: Setup rust + uses: hecrj/setup-rust-action@v2 + with: + rust-version: '1.72.0' + + - name: Install cargo-nextest + uses: baptiste0928/cargo-install@v3 + with: + crate: cargo-nextest + version: '0.9.64' + locked: true + + - name: Build + run: cargo build --release + + - name: Test + run: cargo nextest run --all-features --profile ci diff --git a/.github/workflows/dapr-config-ci.yaml b/.github/workflows/dapr-config-ci.yaml new file mode 100644 index 0000000..547cdb0 --- /dev/null +++ b/.github/workflows/dapr-config-ci.yaml @@ -0,0 +1,25 @@ +name: Dapr - Build Docker image and publish to GHCR and Docker Hub + +on: + push: + tags: + - "dapr/**" + +jobs: + deploy-to-ghcr: + uses: ./.github/workflows/step-deploy-to-ghcr.yaml + with: + image_name: asgard-dapr-config + build_context: dapr + secrets: + TOKEN: ${{ secrets.TOKEN }} + + deploy-to-docker-hub: + uses: ./.github/workflows/step-deploy-to-docker-hub.yaml + with: + namespace: pantheonix + repository: asgard-dapr + build_context: dapr + secrets: + DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }} + DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }} diff --git a/.github/workflows/enki-problems-ci.yaml b/.github/workflows/enki-problems-ci.yaml new file mode 100644 index 0000000..9cf9e9c --- /dev/null +++ b/.github/workflows/enki-problems-ci.yaml @@ -0,0 +1,48 @@ +name: Enki - Build Docker image and publish to GHCR and Docker Hub + +on: + push: + tags: + - "enki/**" + +jobs: + build: + name: Build and Test Enki Problems Microservice + runs-on: ubuntu-latest + defaults: + run: + working-directory: enki-problems + + steps: + - uses: actions/checkout@v4 + - name: Setup dotnet + uses: actions/setup-dotnet@v4 + with: + dotnet-version: '7.0.x' + - name: Build + run: | + dotnet restore "src/EnkiProblems.HttpApi.Host/EnkiProblems.HttpApi.Host.csproj" + dotnet restore "test/EnkiProblems.Application.Tests/EnkiProblems.Application.Tests.csproj" + dotnet build --no-restore + - name: Test + run: dotnet test -e DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=false + + deploy-to-ghcr: + needs: build + uses: ./.github/workflows/step-deploy-to-ghcr.yaml + with: + image_name: enki-problems + build_context: enki-problems + secrets: + TOKEN: ${{ secrets.TOKEN }} + + deploy-to-docker-hub: + needs: build + uses: ./.github/workflows/step-deploy-to-docker-hub.yaml + with: + namespace: pantheonix + repository: enki + build_context: enki-problems + secrets: + DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }} + DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }} diff --git a/.github/workflows/enki-problems-pr-verify.yaml b/.github/workflows/enki-problems-pr-verify.yaml new file mode 100644 index 0000000..a937795 --- /dev/null +++ b/.github/workflows/enki-problems-pr-verify.yaml @@ -0,0 +1,31 @@ +name: Enki - PR Verify + +on: + pull_request: + branches: + - enki + paths: + - "enki-problems/**" + - ".github/workflows/enki-problems-pr-verify.yaml" + +jobs: + build: + name: Build and Test Enki Problems Microservice + runs-on: ubuntu-latest + defaults: + run: + working-directory: enki-problems + + steps: + - uses: actions/checkout@v4 + - name: Setup dotnet + uses: actions/setup-dotnet@v4 + with: + dotnet-version: '7.0.x' + - name: Build + run: | + dotnet restore "src/EnkiProblems.HttpApi.Host/EnkiProblems.HttpApi.Host.csproj" + dotnet restore "test/EnkiProblems.Application.Tests/EnkiProblems.Application.Tests.csproj" + dotnet build --no-restore + - name: Test + run: dotnet test -e DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=false \ No newline at end of file diff --git a/.github/workflows/eval-lb-ci.yaml b/.github/workflows/eval-lb-ci.yaml new file mode 100644 index 0000000..616e8fb --- /dev/null +++ b/.github/workflows/eval-lb-ci.yaml @@ -0,0 +1,25 @@ +name: Eval Nginx Load Balancer - Build Docker image and publish to GHCR and Docker Hub + +on: + push: + tags: + - "eval-lb/**" + +jobs: + deploy-to-ghcr: + uses: ./.github/workflows/step-deploy-to-ghcr.yaml + with: + image_name: asgard-eval-lb + build_context: anubis-eval/eval-lb + secrets: + TOKEN: ${{ secrets.TOKEN }} + + deploy-to-docker-hub: + uses: ./.github/workflows/step-deploy-to-docker-hub.yaml + with: + namespace: pantheonix + repository: eval-lb + build_context: anubis-eval/eval-lb + secrets: + DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }} + DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }} diff --git a/.github/workflows/hermes-tests-ci.yaml b/.github/workflows/hermes-tests-ci.yaml new file mode 100644 index 0000000..ca840e3 --- /dev/null +++ b/.github/workflows/hermes-tests-ci.yaml @@ -0,0 +1,53 @@ +name: Hermes - Build Docker image and publish to GHCR and Docker Hub + +on: + push: + tags: + - "hermes/**" + +jobs: + build: + name: Build and Test Hermes Tests Microservice + runs-on: ubuntu-latest + defaults: + run: + working-directory: hermes-tests + + steps: + - uses: actions/checkout@v4 + + - name: Setup dart + uses: dart-lang/setup-dart@v1 + with: + sdk: 2.19.2 + + - name: Create logs/test.log file + run: | + mkdir -p logs + touch logs/test.log + + - name: Get dependencies + run: dart pub get + + - name: Test + run: dart test + + deploy-to-ghcr: + needs: build + uses: ./.github/workflows/step-deploy-to-ghcr.yaml + with: + image_name: hermes-tests + build_context: hermes-tests + secrets: + TOKEN: ${{ secrets.TOKEN }} + + deploy-to-docker-hub: + needs: build + uses: ./.github/workflows/step-deploy-to-docker-hub.yaml + with: + namespace: pantheonix + repository: hermes + build_context: hermes-tests + secrets: + DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }} + DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }} diff --git a/.github/workflows/hermes-tests-pr-verify.yaml b/.github/workflows/hermes-tests-pr-verify.yaml new file mode 100644 index 0000000..91fa691 --- /dev/null +++ b/.github/workflows/hermes-tests-pr-verify.yaml @@ -0,0 +1,39 @@ +name: Hermes - PR Verify + +on: + pull_request: + branches: + - hermes + paths: + - "hermes-tests/**" + - ".github/workflows/hermes-tests-pr-verify.yaml" + +env: + HERMES_CONFIG: ${{ secrets.HERMES_CONFIG }} + +jobs: + build: + name: Build and Test Hermes Tests Microservice + runs-on: ubuntu-latest + defaults: + run: + working-directory: hermes-tests + + steps: + - uses: actions/checkout@v4 + + - name: Setup dart + uses: dart-lang/setup-dart@v1 + with: + sdk: 2.19.2 + + - name: Create logs/test.log file + run: | + mkdir -p logs + touch logs/test.log + + - name: Get dependencies + run: dart pub get + + - name: Test + run: dart test \ No newline at end of file diff --git a/.github/workflows/odin-gateway-ci.yaml b/.github/workflows/odin-gateway-ci.yaml new file mode 100644 index 0000000..f3e98fb --- /dev/null +++ b/.github/workflows/odin-gateway-ci.yaml @@ -0,0 +1,26 @@ +name: Odin - Build Docker image and publish to GHCR and Docker Hub + +on: + push: + tags: + - "odin/**" + +jobs: + deploy-to-ghcr: + uses: ./.github/workflows/step-deploy-to-ghcr.yaml + with: + image_name: odin-api-gateway + build_context: odin-gateway + secrets: + TOKEN: ${{ secrets.TOKEN }} + + deploy-to-docker-hub: + uses: ./.github/workflows/step-deploy-to-docker-hub.yaml + with: + namespace: pantheonix + repository: odin + build_context: odin-gateway + secrets: + DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }} + DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }} + diff --git a/.github/workflows/quetzalcoatl-auth-ci.yaml b/.github/workflows/quetzalcoatl-auth-ci.yaml new file mode 100644 index 0000000..52d4179 --- /dev/null +++ b/.github/workflows/quetzalcoatl-auth-ci.yaml @@ -0,0 +1,48 @@ +name: Quetzalcoatl - Build Docker image and publish to GHCR and Docker Hub + +on: + push: + tags: + - "quetzalcoatl/**" + +jobs: + build: + name: Build and Test Quetzalcoatl Auth Microservice + runs-on: ubuntu-latest + defaults: + run: + working-directory: quetzalcoatl-auth + + steps: + - uses: actions/checkout@v4 + - name: Setup dotnet + uses: actions/setup-dotnet@v4 + with: + dotnet-version: '7.0.x' + - name: Build + run: | + dotnet restore "Bootstrapper/Bootstrapper.csproj" + dotnet restore "Tests.Integration/Tests.Integration.csproj" + dotnet build --no-restore +# - name: Test +# run: dotnet test -e ASPNETCORE_ENVIRONMENT=Testing "Tests.Integration/Tests.Integration.csproj" + + deploy-to-ghcr: + needs: build + uses: ./.github/workflows/step-deploy-to-ghcr.yaml + with: + image_name: quetzalcoatl-auth + build_context: quetzalcoatl-auth + secrets: + TOKEN: ${{ secrets.TOKEN }} + + deploy-to-docker-hub: + needs: build + uses: ./.github/workflows/step-deploy-to-docker-hub.yaml + with: + namespace: pantheonix + repository: quetzalcoatl + build_context: quetzalcoatl-auth + secrets: + DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }} + DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }} diff --git a/.github/workflows/quetzalcoatl-auth-pr-verify.yaml b/.github/workflows/quetzalcoatl-auth-pr-verify.yaml new file mode 100644 index 0000000..063cf91 --- /dev/null +++ b/.github/workflows/quetzalcoatl-auth-pr-verify.yaml @@ -0,0 +1,31 @@ +name: Quetzalcoatl - PR Verify + +on: + pull_request: + branches: + - quetzalcoatl + paths: + - "quetzalcoatl-auth/**" + - ".github/workflows/quetzalcoatl-auth-pr-verify.yaml" + +jobs: + build: + name: Build and Test Quetzalcoatl Auth Microservice + runs-on: ubuntu-latest + defaults: + run: + working-directory: quetzalcoatl-auth + + steps: + - uses: actions/checkout@v4 + - name: Setup dotnet + uses: actions/setup-dotnet@v4 + with: + dotnet-version: '7.0.x' + - name: Build + run: | + dotnet restore "Bootstrapper/Bootstrapper.csproj" + dotnet restore "Tests.Integration/Tests.Integration.csproj" + dotnet build --no-restore +# - name: Test +# run: dotnet test -e ASPNETCORE_ENVIRONMENT=Testing "Tests.Integration/Tests.Integration.csproj" \ No newline at end of file diff --git a/.github/workflows/release-please.yaml b/.github/workflows/release-please.yaml new file mode 100644 index 0000000..f3727b8 --- /dev/null +++ b/.github/workflows/release-please.yaml @@ -0,0 +1,22 @@ +name: Release Please + +on: + push: + branches: + - develop + +permissions: + contents: read + pull-requests: write + +jobs: + release-please: + runs-on: ubuntu-latest + steps: + - uses: googleapis/release-please-action@v4 + with: + token: ${{ secrets.TOKEN }} + target-branch: 'develop' + config-file: release-please-config.json + manifest-file: .release-please-manifest.json + include-component-in-tag: 'true' diff --git a/.github/workflows/step-deploy-to-docker-hub.yaml b/.github/workflows/step-deploy-to-docker-hub.yaml new file mode 100644 index 0000000..3eaa4d0 --- /dev/null +++ b/.github/workflows/step-deploy-to-docker-hub.yaml @@ -0,0 +1,54 @@ +name: "Step - Push Docker image to Docker Hub Registry" + +on: + workflow_call: + inputs: + namespace: + type: string + required: true + repository: + type: string + required: true + build_context: + type: string + required: true + secrets: + DOCKER_USERNAME: + required: true + DOCKER_PASSWORD: + required: true + +jobs: + deploy: + name: "Deploy to Docker Hub" + runs-on: ubuntu-latest + + permissions: + contents: read + packages: write + + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Log in to Docker Hub + uses: docker/login-action@v3 + with: + username: ${{ secrets.DOCKER_USERNAME }} + password: ${{ secrets.DOCKER_PASSWORD }} + + - name: Extract metadata (tags, labels) for Docker + id: meta + uses: docker/metadata-action@v5 + with: + images: ${{ inputs.namespace }}/${{ inputs.repository }} + tags: | + type=semver,pattern={{version}} + + - name: Build and push Docker image + uses: docker/build-push-action@v6 + with: + context: ${{ inputs.build_context }} + push: true + tags: ${{ steps.meta.outputs.tags }} + labels: ${{ steps.meta.outputs.labels }} diff --git a/.github/workflows/step-deploy-to-ghcr.yaml b/.github/workflows/step-deploy-to-ghcr.yaml new file mode 100644 index 0000000..dcd8044 --- /dev/null +++ b/.github/workflows/step-deploy-to-ghcr.yaml @@ -0,0 +1,50 @@ +name: "Step - Push Docker image to GitHub Container Registry (GHCR)" + +on: + workflow_call: + inputs: + image_name: + type: string + required: true + build_context: + type: string + required: true + secrets: + TOKEN: + required: true + +jobs: + deploy: + name: "Deploy to GHCR" + runs-on: ubuntu-latest + + permissions: + contents: read + packages: write + + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Log in to the Container registry + uses: docker/login-action@v3 + with: + registry: ghcr.io + username: ${{ github.actor }} + password: ${{ secrets.TOKEN }} + + - name: Extract metadata (tags, labels) for Docker + id: meta + uses: docker/metadata-action@v5 + with: + images: ghcr.io/${{ github.repository_owner }}/${{ inputs.image_name }} + tags: | + type=semver,pattern={{version}} + + - name: Build and push Docker image + uses: docker/build-push-action@v6 + with: + context: ${{ inputs.build_context }} + push: true + tags: ${{ steps.meta.outputs.tags }} + labels: ${{ steps.meta.outputs.labels }} diff --git a/.gitignore b/.gitignore index 8b13789..6afcff4 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,6 @@ - +.vscode +.idea +dapr/components/secrets.json +envs/ +odin-gateway/https/*.pem +odin-gateway/https/*.crt \ No newline at end of file diff --git a/.release-please-manifest.json b/.release-please-manifest.json new file mode 100644 index 0000000..c1b1856 --- /dev/null +++ b/.release-please-manifest.json @@ -0,0 +1,9 @@ +{ + "dapr": "2.1.0", + "anubis-eval/eval-lb": "1.0.0", + "enki-problems": "1.0.0", + "quetzalcoatl-auth": "1.0.0", + "hermes-tests": "1.0.0", + "odin-gateway": "1.0.0", + "anubis-eval": "0.1.0" +} \ No newline at end of file diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..859b327 --- /dev/null +++ b/Makefile @@ -0,0 +1,14 @@ +qdrun: + cd quetzalcoatl-auth && dapr run --app-id quetzalcoatl-auth --app-port 5210 --dapr-http-port 35000 --components-path ../dapr/components --config ../dapr/config/config.yaml -- dotnet run --project Bootstrapper/Bootstrapper.csproj + +edrun: + cd enki-problems && dapr run --app-id enki-problems --app-port 5211 --dapr-http-port 35001 --dapr-grpc-port 50001 --components-path ../dapr/components --config ../dapr/config/config.yaml -- dotnet run --project src/EnkiProblems.HttpApi.Host/EnkiProblems.HttpApi.Host.csproj + +hdrun: + cd hermes-tests && export $$(cat .env | xargs) && echo $$HERMES_CONFIG && dapr run --app-id hermes-tests --app-port 5212 --dapr-grpc-port 50002 --config ../dapr/config/config.yaml -- dart run bin/hermes_tests.dart + +adrun: + cd anubis-eval && dapr run --app-id anubis-eval --app-port 5213 --app-protocol http --dapr-http-port 35003 --components-path ../dapr/components --config ../dapr/config/config.yaml -- cargo run + +tdrun: + cd thor-submissions && dapr run --app-id thor-submissions --app-port 5214 --app-protocol http --dapr-http-port 35004 --components-path ../dapr/components --config ../dapr/config/config.yaml -- go run main.go \ No newline at end of file diff --git a/README.md b/README.md index dc693df..2f3609f 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,173 @@ # Asgard -Pantheonix backend based on Microservices Architecture -![](assets/Pantheon-Architecture.png) -Pantheonix Solution Architecture \ No newline at end of file +The **Pantheonix** backend is called **Asgard**, as the realm of gods from the northern mythology, and it consists in a cluster of microservices each performing a well-defined set of actions related to the domain context of such a programming educational platform: + +- **Quetzalcoatl**, as the feathered serpent Maya god of wisdom, is the identity microservice responsible to challenge each user's identity claim and authorize access to restricted resources +- **Enki**, as the sumerian god of wisdom and handcrafting, is the problems microservice responsible to manage the access to the competitive programming problems archive +- **Hermes**, as the greek god of travel, is the tests microservice responsible to allow swift access to each problem tests archive +- **Anubis**, as the egyptian god which guides the souls to the underwold, is the submissions microservice responsible to guide the users submissions to their final judgement +- **Odin**, as the almighty northern god of Asgard, is the API Gateway microservice responsible to guard the access to the rest of backend services + +## Self-hosting steps: +Check the ucv branch's [README](https://github.com/Pantheonix/Asgard/tree/ucv?tab=readme-ov-file#self-hosting-pantheonix-steps) for more details. + +## Technologies + +**Pantheonix**: + +- Judge0 CE Evaluator +- Docker +- Dapr Runtime (Service Invocation, State Store) +- Redis (Cache) +- Zipkin (Telemetry) +- Firebase (Cloud Storage) +- Digitalocean (Droplet, Firewall, Domain) +- Github Actions + +**Quetzalcoatl**: + +- .NET 7 +- FastEndpoints +- Identity Framework +- Entity Framework Core +- SQL Server +- JWT Access Tokens and Refresh Tokens + +**Enki**: + +- .NET 7 +- ABP Framework +- MongoDB + +**Hermes**: + +- Dart 2.19 +- gRPC + +**Anubis**: + +- Rust 1.71 +- Rocket +- Diesel ORM +- PostgreSQL + +**Odin**: + +- Envoy + +## Functionalities + +![Asgard Endpoints](assets/Asgard-Endpoints.png) + +### Asgard MVP 1.0 + +**Quetzalcoatl**: + +- [x] basic CRUD operations against user entities +- [x] support for users to upload custom profile pictures +- [x] login/register based on credentials (email, password) +- [x] auth based on JWT access tokens exported as HttpOnly cookies +- [x] access tokens renewal using refresh tokens + +**Enki**: + +- [x] basic CRUD operations against problem entities (excepting delete) with pagination, filtering and sorting add-ons +- [x] basic CRUD operations against test entities which are delegated via a gRPC API to Hermes +- [x] ability to publish a problem as a proposer to become visible for ordinary users +- [x] ability to provide evaluation metadata for a specific problem to Anubis while judging a submission + +**Hermes**: + +- [x] basic CRUD operations against test archives +- [x] while uploaded, tests are received as chunks of bytearrays composing a zip archive of input/output text files, defragmented locally on the server, unarchived and uploaded onward to Firebase Cloud Storage +- [x] test input/output files can be directly downloaded from Firebase through URLs provided by a dedicated Hermes endpoint + +**Anubis**: + +- [x] create and read operations for submissions with pagination, filtering and sorting add-ons +- [x] pending submissions are constantly retrieved from database, evaluated and updated against the db via a cron job +- [x] support for C, C++, C#, Java, Python, JavaScript, Haskell, Lua, OCaml, Go, Rust + +**Odin**: + +- [x] HTTP rerouting +- [x] use Envoy Lua filters to deny access from outside to internal endpoints and copy tokens from cookies to authorization header + +### Asgard MVP 1.1 + +***Quetzalcoatl***: + +- [ ] add admin dashboard endpoints (set user roles) +- [ ] add forgot email password using reset tokens from Identity Framework +- [ ] add confirm email support +- [ ] add OAuth2.0 support for Gmail and Github + +***Enki***: + +- [ ] add problem labels +- [ ] search problems by name +- [ ] delete problem +- [ ] add bundle of tests at once using a wrapping zip archive (add a metafile with tests scores) + +***Hermes***: + +- [ ] delete problem tests +- [ ] add bundle of tests at once using a wrapping zip archive + +***Anubis***: + +- [ ] add standalone submissions +- [ ] add statistics (submissions per language per problem, current submission time/memory performance among the other submissions with the same language) + +## Architectures + +![Pantheonix Solution Architecture](assets/Pantheon-Architecture.png) + +From a macro-point of view, Asgard encompasses a few cloud design patterns which rule the overall system behavior and those are the Mesh Service, the API Gateway and the Sidecar patterns: + +1. **Mesh Service:** + + - **Definition:** A mesh service, often associated with service mesh architecture, is a microservice that is part of a larger network of services (containerized in our case). Service mesh is designed to manage communication between microservices, handling tasks such as service discovery, load balancing, and security. + + - **Key Features:** + - **Service Discovery:** Automatically locates and registers services within the mesh. + - **Load Balancing:** Distributes incoming traffic across multiple instances of a service to ensure optimal performance. + - **Fault Tolerance:** Manages communication resilience by handling failures and retries. + - **Security:** Provides features like encryption and authentication to secure communication between services. + +2. **API Gateway:** + + - **Definition:** An API Gateway is a server that acts as an entry point for a set of microservices. It is responsible for handling requests, performing authentication, and routing them to the appropriate service. + + - **Key Features:** + - **Request Routing:** Directs incoming requests to the appropriate microservice based on predefined rules. + - **Authentication and Authorization:** Ensures that only authorized users or systems can access certain APIs. + - **Rate Limiting:** Controls the rate of incoming requests to prevent abuse and ensure fair usage. + - **Logging and Monitoring:** Provides tools for tracking and analyzing API usage for diagnostics and analytics. + +3. **Sidecar:** + + - **Definition:** In the context of microservices, a sidecar is a separate, containerized process or service that runs alongside the main application. It provides additional functionalities without altering the main service's code. + + - **Key Features:** + - **Service Mesh Integration:** Acts as a proxy to manage communication between microservices in a service mesh. + - **Code Decoupling:** Enables the addition of functionalities (e.g., logging, security, or monitoring) without modifying the core application. + - **Dynamic Configuration:** Allows for real-time updates and changes without restarting the main application. + - **Isolation:** Provides a level of isolation for specific concerns, improving maintainability and scalability. + +In modern distributed systems, such as Pantheonix's Asgard backend, these concepts work together to enhance scalability, maintainability, and manageability of microservices-based architectures. + +And now, a few words about the **Domain-Driven Design** architecture which is used at the microservice level: +Domain-Driven Design (DDD) is a software development approach that focuses on understanding and modeling the problem domain as a central aspect of the software design process. Key features of DDD include: + +1. **Bounded Contexts:** Defining explicit boundaries within which a particular model is applicable. This helps avoid confusion and conflicts in understanding terms or concepts that might have different meanings in different parts of the system. + +2. **Aggregates:** Grouping related entities and value objects into aggregates, with one entity designated as the aggregate root. Aggregates ensure consistency and encapsulation of business rules. + +3. **Entities and Value Objects:** Distinguishing between entities (objects with a distinct identity) and value objects (objects without an identity, defined only by their attributes). This helps in modeling the domain more accurately. + +4. **Repositories:** Providing a mechanism to access and persist aggregates. Repositories abstract away the details of data storage and retrieval. + +5. **Domain Events:** Capturing and representing significant changes or occurrences within the domain. Domain events help in maintaining consistency and can trigger further actions in the system. + +6. **Services:** Encapsulating domain logic that doesn't naturally fit into entities or value objects. Services help in keeping the domain layer clean and focused on core business logic. diff --git a/anubis-eval/.config/nextest.toml b/anubis-eval/.config/nextest.toml new file mode 100644 index 0000000..90ace23 --- /dev/null +++ b/anubis-eval/.config/nextest.toml @@ -0,0 +1,14 @@ +[test-groups] +serial-integration = { max-threads = 1 } + +[[profile.default.overrides]] +filter = 'package(anubis-eval)' +platform = 'cfg(unix)' +test-group = 'serial-integration' + +[profile.ci] +# Print out output for failing tests as soon as they fail, and also at the end +# of the run (for easy scrollability). +failure-output = "immediate-final" +# Do not cancel the test run on the first failure. +fail-fast = false \ No newline at end of file diff --git a/anubis-eval/.dockerignore b/anubis-eval/.dockerignore new file mode 100644 index 0000000..ad5e997 --- /dev/null +++ b/anubis-eval/.dockerignore @@ -0,0 +1,12 @@ +.dockerignore +Dockerfile +README.md +.vscode/ +.idea/ +target/ +logs/ +tests/ +.env* +.gitignore +eval-lb/ +tests-setup/ \ No newline at end of file diff --git a/anubis-eval/.env.judge0.template b/anubis-eval/.env.judge0.template new file mode 100644 index 0000000..1808029 --- /dev/null +++ b/anubis-eval/.env.judge0.template @@ -0,0 +1,358 @@ +################################################################################ +# Judge0 Configuration File +################################################################################ +# Judge0 is a highly configurable which allows you to use it for many +# different use-cases. Please, before deploying Judge0 take a look at this +# configuration file that is divided in several logical sections that will help +# you understand what can you do with Judge0. +# +# This default configuration file is designed to work out of the box for you and +# you can start with it when deploying Judge0 on your server. +# +# If you have any questions please don't hasitate to send an email or open an +# issue on the GitHub page of the project. + + +################################################################################ +# Judge0 Server Configuration +################################################################################ +# Enable or disable Judge0 Telemetry. +# Read more about it here: https://github.com/judge0/judge0/blob/master/TELEMETRY.md +# Default: true +JUDGE0_TELEMETRY_ENABLE= + +# Automatically restart Judge0 server if it fails to start. +# Default: 10 +RESTART_MAX_TRIES= + +# Maintenance mode is a mode in which clients cannot +# create or delete submissions while maintenance is enabled. +# Default: false +MAINTENANCE_MODE= + +# Set custom maintenance message that will be returned to clients +# who try to create or delete submisions. +# Default: Judge0 is currently in maintenance. +MAINTENANCE_MESSAGE= + +# If enabled user can _request to synchronically wait for +# submission result on submission create. +# Default: true, i.e. user can _request to wait for the result +ENABLE_WAIT_RESULT= + +# If enabled user is allowed to set custom compiler options. +# Default: true +ENABLE_COMPILER_OPTIONS= + +# List language names, separated by space, for which setting compiler options is allowed. +# Note that ENABLE_COMPILER_OPTIONS has higher priority, so this option will be +# ignored if setting compiler options is disabled with ENABLE_COMPILER_OPTIONS. +# For example, ALLOWED_LANGUAGES_FOR_COMPILER_OPTIONS="C C++ Java" would only +# allow setting compiler options for languages C, C++ and Java. +# Default: empty - for every compiled language setting compiler options is allowed. +ALLOWED_LANGUAGES_FOR_COMPILER_OPTIONS= + +# If enabled user is allowed to set custom command line arguments. +# Default: true +ENABLE_COMMAND_LINE_ARGUMENTS= + +# If enabled autorized users can delete a submission. +# Default: false +ENABLE_SUBMISSION_DELETE= + +# If enabled user can GET and POST batched submissions. +# Default: true +ENABLE_BATCHED_SUBMISSIONS= + +# Maximum number of submissions that can be created or get in a batch. +# Default: 20 +MAX_SUBMISSION_BATCH_SIZE= + +# If enabled user can use callbacks. +# Default: true +ENABLE_CALLBACKS= + +# Maximum number of callback tries before giving up. +# Default: 3 +CALLBACKS_MAX_TRIES= + +# Timeout callback call after this many seconds. +# Default: 5 +CALLBACKS_TIMEOUT= + +# If enabled user can preset additional files in the sandbox. +# Default: true +ENABLE_ADDITIONAL_FILES= + +# Duration (in seconds) of submission cache. Decimal numbers are allowed. +# Set to 0 to turn of submission caching. Note that this does not apply to +# batched submissions. +# Default: 1 +SUBMISSION_CACHE_DURATION= + +# If true the documentation page will be used as a homepage, otherwise, the +# homepage will be empty. You can always access the documentation page via /docs. +# Default: false +USE_DOCS_AS_HOMEPAGE= + + +################################################################################ +# Judge0 Workers Configuration +################################################################################ +# Specify polling frequency in seconds. Decimal numbers are allowed. +# Default: 0.1 +INTERVAL= + +# Specify how many parallel workers to run. +# Default: 2*nproc (https://linux.die.net/man/1/nproc) +COUNT= + +# Specify maximum queue size. Represents maximum number of submissions that +# can wait in the queue at once. If _request for new submission comes and the +# queue if full then submission will be rejected. +# Default: 100 +MAX_QUEUE_SIZE= + + +################################################################################ +# Judge0 Server Access Configuration +################################################################################ +# Allow only specified origins. +# If left blank, then all origins will be allowed (denoted with '*'). +# Example: +# ALLOW_ORIGIN="www.judge0.com judge0.com www.example.com blog.example.com" +ALLOW_ORIGIN= + +# Disallow only specified origins. +# If left blank, then no origin will be disallowed. +# Example: +# DISALLOW_ORIGIN="www.judge0.com judge0.com www.example.com blog.example.com" +DISALLOW_ORIGIN= + +# Allow only specified IP addresses. +# If left blank, then all IP addresses will be allowed. +# Example: +# ALLOW_IP="192.168.10.10 96.239.226.228 208.23.207.242" +ALLOW_IP= + +# Disallow only specified IP addresses. +# If left blank, then no IP addresses will be disallowed. +# Example: +# DISALLOW_IP="192.168.10.10 96.239.226.228 208.23.207.242" +DISALLOW_IP= + + +################################################################################ +# Judge0 Authentication Configuration +################################################################################ +# You can protect your API with (AUTHN_HEADER, AUTHN_TOKEN) pair. +# Each _request then needs to have this pair either in headers or +# query parameters. For example let AUTHN_HEADER=X-Judge0-Token and +# AUTHN_TOKEN=mySecretToken. Then user should authenticate by sending this +# in headers or query parameters in each _request, e.g.: +# https://api.judge0.com/system_info?X-Judge0-Token=mySecretToken + +# Specify authentication header name. +# Default: X-Auth-Token +AUTHN_HEADER= + +# Specify valid authentication tokens. +# Default: empty - authentication is disabled +AUTHN_TOKEN= + + +################################################################################ +# Judge0 Authorization Configuration +################################################################################ +# Protected API calls can be issued with (AUTHZ_HEADER, AUTHZ_TOKEN) pair. +# To see exactly which API calls are protected with authorization tokens +# please read the docs at https://api.judge0.com. +# API authorization ensures that only specified users call protected API calls. +# For example let AUTHZ_HEADER=X-Judge0-User and AUTHZ_TOKEN=mySecretToken. +# Then user should authorize be sending this in headers or query parameters in +# each _request, e.g.: https://api.judge0.com/system_info?X-Judge0-User=mySecretToken +# Note that if you enabled authentication, then user should also send valid +# authentication token. + +# Specify authorization header name. +# Default: X-Auth-User +AUTHZ_HEADER= + +# Specify valid authorization tokens. +# Default: empty - authorization is disabled, protected API calls cannot be issued +AUTHZ_TOKEN=demo_token + + +################################################################################ +# Redis Configuration +################################################################################ +# Specify Redis host +# Default: localhost +REDIS_HOST=redis + +# Specify Redis port. +# Default: 6379 +REDIS_PORT= + +# Specify Redis password. Cannot be blank. +# Default: NO DEFAULT! MUST BE SET! +REDIS_PASSWORD=pass + + +################################################################################ +# PostgreSQL Configuration +################################################################################ +# Specify Postgres host. +# Default: localhost +POSTGRES_HOST=db + +# Specify Postgres port. +# Default: 5432 +POSTGRES_PORT= + +# Name of the database to use. Used only in production. +# Default: postgres +POSTGRES_DB=judge0 + +# User who can access this database. Used only in production. +# Default: postgres +POSTGRES_USER=judge0 + +# Password of the user. Cannot be blank. Used only in production. +# Default: NO DEFAULT, YOU MUST SET YOUR PASSWORD +POSTGRES_PASSWORD=YourPasswordHere1234 + + +################################################################################ +# Submission Configuration +################################################################################ +# Judge0 uses isolate as an sandboxing environment. +# Almost all of the options you see here can be mapped to one of the options +# that isolate provides. For more information about these options please +# check for the isolate documentation here: +# https://raw.githubusercontent.com/ioi/isolate/master/isolate.1.txt + +# Default runtime limit for every program (in seconds). Decimal numbers are allowed. +# Time in which the OS assigns the processor to different tasks is not counted. +# Default: 5 +CPU_TIME_LIMIT= + +# Maximum custom CPU_TIME_LIMIT. +# Default: 15 +MAX_CPU_TIME_LIMIT= + +# When a time limit is exceeded, wait for extra time (in seconds), before +# killing the program. This has the advantage that the real execution time +# is reported, even though it slightly exceeds the limit. +# Default: 1 +CPU_EXTRA_TIME= + +# Maximum custom CPU_EXTRA_TIME. +# Default: 5 +MAX_CPU_EXTRA_TIME= + +# Limit wall-clock time in seconds. Decimal numbers are allowed. +# This clock measures the time from the start of the program to its exit, +# so it does not stop when the program has lost the CPU or when it is waiting +# for an external event. We recommend to use CPU_TIME_LIMIT as the main limit, +# but set WALL_TIME_LIMIT to a much higher value as a precaution against +# sleeping programs. +# Default: 10 +WALL_TIME_LIMIT= + +# Maximum custom WALL_TIME_LIMIT. +# Default: 20 +MAX_WALL_TIME_LIMIT= + +# Limit address space of the program in kilobytes. +# Default: 128000 +MEMORY_LIMIT= + +# Maximum custom MEMORY_LIMIT. +# Default: 512000 +MAX_MEMORY_LIMIT= + +# Limit process stack in kilobytes. +# Default: 64000 +STACK_LIMIT= + +# Maximum custom STACK_LIMIT. +# Default: 128000 +MAX_STACK_LIMIT= + +# Maximum number of processes and/or threads program can create. +# Default: 60 +MAX_PROCESSES_AND_OR_THREADS= + +# Maximum custom MAX_PROCESSES_AND_OR_THREADS. +# Default: 120 +MAX_MAX_PROCESSES_AND_OR_THREADS= + +# If true then CPU_TIME_LIMIT will be used as per process and thread. +# Default: false, i.e. CPU_TIME_LIMIT is set as a total limit for all processes and threads. +ENABLE_PER_PROCESS_AND_THREAD_TIME_LIMIT= + +# If false, user won't be able to set ENABLE_PER_PROCESS_AND_THREAD_TIME_LIMIT. +# Default: true +ALLOW_ENABLE_PER_PROCESS_AND_THREAD_TIME_LIMIT= + +# If true then MEMORY_LIMIT will be used as per process and thread. +# Default: false, i.e. MEMORY_LIMIT is set as a total limit for all processes and threads. +ENABLE_PER_PROCESS_AND_THREAD_MEMORY_LIMIT= + +# If false, user won't be able to set ENABLE_PER_PROCESS_AND_THREAD_MEMORY_LIMIT. +# Default: true +ALLOW_ENABLE_PER_PROCESS_AND_THREAD_MEMORY_LIMIT= + +# Limit size of files created (or modified) by the program in kilobytes. +# Default: 1024 +MAX_FILE_SIZE= + +# Maximum custom MAX_FILE_SIZE. +# Default: 4096 +MAX_MAX_FILE_SIZE= + +# Run each program this many times and take average of time and memory. +# Default: 1 +NUMBER_OF_RUNS= + +# Maximum custom NUMBER_OF_RUNS. +# Default: 20 +MAX_NUMBER_OF_RUNS= + +# Redirect stderr to stdout. +# Default: false +REDIRECT_STDERR_TO_STDOUT= + +# Maximum total size (in kilobytes) of extracted files from additional files archive. +# Default: 10240, i.e. maximum of 10MB in total can be extracted. +MAX_EXTRACT_SIZE= + +# If false, user won't be able to set ENABLE_NETWORK. +# Default: true, i.e. allow user to permit or deny network calls from the submission. +ALLOW_ENABLE_NETWORK= + +# If true submission will by default be able to do network calls. +# Default: false, i.e. programs cannot do network calls. +ENABLE_NETWORK= + + +################################################################################ +# Rails Configuration +################################################################################ +# Specify Rails environment: production or development +# Default: production +RAILS_ENV= + +# Specify maximum number of concurrent Rails threads. +# Default: nproc (https://linux.die.net/man/1/nproc) +RAILS_MAX_THREADS= + +# Specify how many processes will be created for handing requests. Each process +# will aditionally create RAILS_MAX_THREADS threads. +# Default: 2 +RAILS_SERVER_PROCESSES= + +# Secret key base for production, if not set it will be randomly generated +# Default: randomly generated +SECRET_KEY_BASE= diff --git a/anubis-eval/.env.template b/anubis-eval/.env.template new file mode 100644 index 0000000..40fee56 --- /dev/null +++ b/anubis-eval/.env.template @@ -0,0 +1,25 @@ +ROCKET_ADDRESS=0.0.0.0 +ROCKET_PORT=5213 +ROCKET_DATABASES={anubis-submissions={url="postgres://postgres:2002@127.0.0.1:5433/anubis-submissions"}} +#ROCKET_DATABASES={anubis-submissions={url="postgres://postgres:2002@anubis-psql-db:5432/anubis-submissions"}} + +CONFIG_JWT_SECRET_KEY=z7F+ut_aphaxeja0&ba*p9spew!4fe0rAFRO5HestitIKOv5nistlz3b=+edu1aP +CONFIG_DAPR_HTTP_PORT=8080 +CONFIG_DAPR_EVAL_METADATA_ENDPOINT=http://dapr-app-id:enki-problems@127.0.0.1:3503/api/enki/problem/{problem_id}/eval-metadata +CONFIG_DAPR_JUDGE_SUBMISSION_BATCH_ENDPOINT=http://127.0.0.1:2358/submissions/batch +CONFIG_DAPR_JUDGE_SUBMISSION_ENDPOINT=http://127.0.0.1:2358/submissions +CONFIG_DAPR_GET_SUBMISSION_BATCH_ENDPOINT=http://127.0.0.1:2358/submissions/batch?tokens={tokens} +CONFIG_DAPR_GET_SUBMISSION_ENDPOINT=http://127.0.0.1:2358/submissions/{token} +CONFIG_DAPR_STATE_STORE_POST_ENDPOINT=http://127.0.0.1:8080/v1.0/state/statestore +CONFIG_DAPR_STATE_STORE_GET_ENDPOINT=http://127.0.0.1:8080/v1.0/state/statestore/{key} +CONFIG_EVAL_CRON_SCHEDULE='*/1 * * * * *' +CONFIG_DEFAULT_NO_SUBMISSIONS_PER_PAGE=10 +CONFIG_EVAL_BATCH_SIZE=4 +CONFIG_ALLOWED_ORIGINS="https://localhost:10000;http://localhost:10000;https://pantheonix.live;https://pantheonix-midgard.web.app;https://pantheonix-midgard.firebaseapp.com" + +DATABASE_URL=postgres://postgres:2002@127.0.0.1:5433/anubis-submissions +#DATABASE_URL=postgres://postgres:2002@anubis-psql-db:5432/anubis-submissions + +POSTGRES_USER=postgres +POSTGRES_PASSWORD=2002 +POSTGRES_DB=anubis-submissions \ No newline at end of file diff --git a/anubis-eval/.gitignore b/anubis-eval/.gitignore new file mode 100644 index 0000000..3def583 --- /dev/null +++ b/anubis-eval/.gitignore @@ -0,0 +1,5 @@ +target/ +.vscode/ +.idea/ +logs/ +.env diff --git a/anubis-eval/CHANGELOG.md b/anubis-eval/CHANGELOG.md new file mode 100644 index 0000000..4e84904 --- /dev/null +++ b/anubis-eval/CHANGELOG.md @@ -0,0 +1,32 @@ +# Changelog + +## 0.1.0 (2024-09-21) + + +### Features + +* **anubis-judge0:** add nginx lb between anubis and judge0 replicas ([13fbc85](https://github.com/Pantheonix/Asgard/commit/13fbc85d6ea9a4c436484668d040932d560d7265)) +* **anubis:** add create/get test case dapr client methods ([35702ea](https://github.com/Pantheonix/Asgard/commit/35702ea227af61eb5a90e61bea5e2bf0a480e111)) +* **anubis:** add endpoint for retrieving the highest score submissions per user (and problem if specified) ([251ff99](https://github.com/Pantheonix/Asgard/commit/251ff99bcc461c143114a37a04a0dac5891bb258)) +* **cors:** enable cors policy for anubis, enki and quetzalcoatl ([6652dbc](https://github.com/Pantheonix/Asgard/commit/6652dbcdbfaceeb94c36369423fecb7b2682d9d5)) +* **enki+anubis:** add pubsub support for eval metadata retrieval to improve performance ([35391c9](https://github.com/Pantheonix/Asgard/commit/35391c968ef2e91a89a86f20288890b866756bd7)) + + +### Bug Fixes + +* **anubis:** add cors preflight catcher ([80f5651](https://github.com/Pantheonix/Asgard/commit/80f5651f9ef37327db4edfc0f2c6d9d0a5337729)) +* **anubis:** configure CORS policy for Rocket ([f25b830](https://github.com/Pantheonix/Asgard/commit/f25b83054e91ee37a52e16075e5c4e4bb0d85f98)) +* **anubis:** fix compilation error in application error mapping ([54fa5ff](https://github.com/Pantheonix/Asgard/commit/54fa5ff4165f07ebfbe4f0ed1c2b5618697f69a7)) +* **anubis:** remove unused import ([5984d6c](https://github.com/Pantheonix/Asgard/commit/5984d6cde4e9a4d2a32073b325c5d330d270f6ba)) +* **anubis:** split submission batch into chunks ([8bc3f87](https://github.com/Pantheonix/Asgard/commit/8bc3f87e1440a456360a62fe606f9474869f2a49)) +* **anubis:** update tests PK as the composition between id and problem_id ([87c7b5b](https://github.com/Pantheonix/Asgard/commit/87c7b5bd6c7ec9653071daabe9088b7f9e6cac8b)) +* **submission source code:** show submission source code iff problem has been solved previously by user ([7b60949](https://github.com/Pantheonix/Asgard/commit/7b609495c69f89db2ad79e22b5c139b2790594f1)) + + +### Performance Improvements + +* **anubis:** add is_published field to submissions dtos ([a30c434](https://github.com/Pantheonix/Asgard/commit/a30c4348ae0505b34c1f69c16b45becee7a73937)) +* **anubis:** add ocaml and lua support ([a8a79eb](https://github.com/Pantheonix/Asgard/commit/a8a79ebd32b973e936fc3f8890ff2d81a51f9ad2)) +* **anubis:** add problem name to get all submissions endpoint response ([096f6b7](https://github.com/Pantheonix/Asgard/commit/096f6b70551eaafaa40d1e5d5b0713f926e110f0)) +* **anubis:** add problem name to get submission by id endpoint response ([94fa6c6](https://github.com/Pantheonix/Asgard/commit/94fa6c619b183165de65c715b25a1f76dd03c707)) +* **anubis:** improve http errors format using json ([d47cba0](https://github.com/Pantheonix/Asgard/commit/d47cba0b128c0e2ae8be36be16b9f47bea7cd046)) diff --git a/anubis-eval/Cargo.lock b/anubis-eval/Cargo.lock new file mode 100644 index 0000000..0bf9dd4 --- /dev/null +++ b/anubis-eval/Cargo.lock @@ -0,0 +1,3460 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 3 + +[[package]] +name = "addr2line" +version = "0.21.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb" +dependencies = [ + "gimli", +] + +[[package]] +name = "adler" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" + +[[package]] +name = "aho-corasick" +version = "1.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0" +dependencies = [ + "memchr", +] + +[[package]] +name = "android-tzdata" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0" + +[[package]] +name = "android_system_properties" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" +dependencies = [ + "libc", +] + +[[package]] +name = "anstyle" +version = "1.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8901269c6307e8d93993578286ac0edf7f195079ffff5ebdeea6a59ffb7e36bc" + +[[package]] +name = "anubis-eval" +version = "0.1.0" +dependencies = [ + "anyhow", + "async-scoped", + "async_once", + "cder", + "chrono", + "cloudevents-sdk", + "ctor", + "diesel 2.1.3", + "diesel_migrations", + "dotenvy", + "envy", + "futures", + "jsonwebtoken", + "lazy_static", + "log4rs", + "mockall", + "r2d2", + "r2d2-diesel", + "reqwest", + "rocket", + "rocket-validation", + "rocket_dyn_templates", + "rocket_sync_db_pools", + "serde", + "serde_json", + "thiserror", + "tokio", + "tokio-cron-scheduler", + "url", + "uuid", + "validator", +] + +[[package]] +name = "anyhow" +version = "1.0.80" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5ad32ce52e4161730f7098c077cd2ed6229b5804ccf99e5366be1ab72a98b4e1" + +[[package]] +name = "arc-swap" +version = "1.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bddcadddf5e9015d310179a59bb28c4d4b9920ad0f11e8e14dbadf654890c9a6" + +[[package]] +name = "async-scoped" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4042078ea593edffc452eef14e99fdb2b120caa4ad9618bcdeabc4a023b98740" +dependencies = [ + "futures", + "pin-project", + "tokio", +] + +[[package]] +name = "async-stream" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cd56dd203fef61ac097dd65721a419ddccb106b2d2b70ba60a6b529f03961a51" +dependencies = [ + "async-stream-impl", + "futures-core", + "pin-project-lite", +] + +[[package]] +name = "async-stream-impl" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.67", +] + +[[package]] +name = "async-trait" +version = "0.1.77" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c980ee35e870bd1a4d2c8294d4c04d0499e67bca1e4b5cefcc693c2fa00caea9" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.67", +] + +[[package]] +name = "async_once" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2ce4f10ea3abcd6617873bae9f91d1c5332b4a778bd9ce34d0cd517474c1de82" + +[[package]] +name = "atomic" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c59bdb34bc650a32731b31bd8f0829cc15d24a708ee31559e0bb34f2bc320cba" + +[[package]] +name = "atomic" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8d818003e740b63afc82337e3160717f4f63078720a810b7b903e70a5d1d2994" +dependencies = [ + "bytemuck", +] + +[[package]] +name = "autocfg" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" + +[[package]] +name = "backtrace" +version = "0.3.69" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837" +dependencies = [ + "addr2line", + "cc", + "cfg-if", + "libc", + "miniz_oxide", + "object", + "rustc-demangle", +] + +[[package]] +name = "base64" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3441f0f7b02788e948e47f457ca01f1d7e6d92c693bc132c22b087d3141c03ff" + +[[package]] +name = "base64" +version = "0.21.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" + +[[package]] +name = "bigdecimal" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c06619be423ea5bb86c95f087d5707942791a08a85530df0db2209a3ecfb8bc9" +dependencies = [ + "autocfg", + "libm", + "num-bigint", + "num-integer", + "num-traits", +] + +[[package]] +name = "binascii" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "383d29d513d8764dcdc42ea295d979eb99c3c9f00607b3692cf68a431f7dca72" + +[[package]] +name = "bitflags" +version = "1.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" + +[[package]] +name = "bitflags" +version = "2.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07" + +[[package]] +name = "block-buffer" +version = "0.10.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" +dependencies = [ + "generic-array", +] + +[[package]] +name = "bstr" +version = "1.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c79ad7fb2dd38f3dabd76b09c6a5a20c038fc0213ef1e9afd30eb777f120f019" +dependencies = [ + "memchr", + "serde", +] + +[[package]] +name = "bumpalo" +version = "3.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec" + +[[package]] +name = "bytemuck" +version = "1.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "374d28ec25809ee0e23827c2ab573d729e293f281dfe393500e7ad618baa61c6" + +[[package]] +name = "byteorder" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" + +[[package]] +name = "bytes" +version = "1.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "514de17de45fdb8dc022b1a7975556c53c86f9f0aa5f534b98977b171857c2c9" + +[[package]] +name = "cc" +version = "1.0.83" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0" +dependencies = [ + "libc", +] + +[[package]] +name = "cder" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d30fa19274b4780f8aa61b9ae6a4d98eaf39eb84619d6366f108e7aea71d5114" +dependencies = [ + "anyhow", + "once_cell", + "regex", + "serde", + "serde_yaml 0.9.25", +] + +[[package]] +name = "cfg-if" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" + +[[package]] +name = "chrono" +version = "0.4.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f2c685bad3eb3d45a01354cedb7d5faa66194d1d58ba6e267a8de788f79db38" +dependencies = [ + "android-tzdata", + "iana-time-zone", + "js-sys", + "num-traits", + "serde", + "wasm-bindgen", + "windows-targets 0.48.5", +] + +[[package]] +name = "chrono-tz" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1369bc6b9e9a7dfdae2055f6ec151fe9c554a9d23d357c0237cee2e25eaabb7" +dependencies = [ + "chrono", + "chrono-tz-build", + "phf", +] + +[[package]] +name = "chrono-tz-build" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2f5ebdc942f57ed96d560a6d1a459bae5851102a25d5bf89dc04ae453e31ecf" +dependencies = [ + "parse-zoneinfo", + "phf", + "phf_codegen", +] + +[[package]] +name = "cloudevents-sdk" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "801713078518ab05d7c78508c14cf55173a14a1a6659421d3352c2576a6167bf" +dependencies = [ + "base64 0.12.3", + "bitflags 1.3.2", + "chrono", + "delegate-attr", + "hostname", + "serde", + "serde_json", + "snafu", + "url", + "uuid", + "web-sys", +] + +[[package]] +name = "cookie" +version = "0.18.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3cd91cf61412820176e137621345ee43b3f4423e589e7ae4e50d601d93e35ef8" +dependencies = [ + "percent-encoding", + "time", + "version_check", +] + +[[package]] +name = "core-foundation" +version = "0.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146" +dependencies = [ + "core-foundation-sys", + "libc", +] + +[[package]] +name = "core-foundation-sys" +version = "0.8.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa" + +[[package]] +name = "cpufeatures" +version = "0.2.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3fbc60abd742b35f2492f808e1abbb83d45f72db402e14c55057edc9c7b1e9e4" +dependencies = [ + "libc", +] + +[[package]] +name = "cron" +version = "0.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1ff76b51e4c068c52bfd2866e1567bee7c567ae8f24ada09fd4307019e25eab7" +dependencies = [ + "chrono", + "nom", + "once_cell", +] + +[[package]] +name = "crossbeam-channel" +version = "0.5.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a33c2bf77f2df06183c3aa30d1e96c0695a313d4f9c453cc3762a6db39f99200" +dependencies = [ + "cfg-if", + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-utils" +version = "0.8.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345" + +[[package]] +name = "crypto-common" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" +dependencies = [ + "generic-array", + "typenum", +] + +[[package]] +name = "ctor" +version = "0.2.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "edb49164822f3ee45b17acd4a208cfc1251410cf0cad9a833234c9890774dd9f" +dependencies = [ + "quote", + "syn 2.0.67", +] + +[[package]] +name = "delegate-attr" +version = "0.2.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee7e7ea0dba407429d816e8e38dda1a467cd74737722f2ccc8eae60429a1a3ab" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "deranged" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0f32d04922c60427da6f9fef14d042d9edddef64cb9d4ce0d64d0685fbeb1fd3" +dependencies = [ + "powerfmt", +] + +[[package]] +name = "derivative" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "destructure_traitobject" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c877555693c14d2f84191cfd3ad8582790fc52b5e2274b40b59cf5f5cea25c7" + +[[package]] +name = "deunicode" +version = "0.4.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "71dbf1bf89c23e9cd1baf5e654f622872655f195b36588dc9dc38f7eda30758c" +dependencies = [ + "deunicode 1.4.1", +] + +[[package]] +name = "deunicode" +version = "1.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6a1abaf4d861455be59f64fd2b55606cb151fce304ede7165f410243ce96bde6" + +[[package]] +name = "devise" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d6eacefd3f541c66fc61433d65e54e0e46e0a029a819a7dbbc7a7b489e8a85f8" +dependencies = [ + "devise_codegen", + "devise_core", +] + +[[package]] +name = "devise_codegen" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c8cf4b8dd484ede80fd5c547592c46c3745a617c8af278e2b72bea86b2dfed6" +dependencies = [ + "devise_core", + "quote", +] + +[[package]] +name = "devise_core" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "35b50dba0afdca80b187392b24f2499a88c336d5a8493e4b4ccfb608708be56a" +dependencies = [ + "bitflags 2.4.1", + "proc-macro2", + "proc-macro2-diagnostics", + "quote", + "syn 2.0.67", +] + +[[package]] +name = "diesel" +version = "1.4.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b28135ecf6b7d446b43e27e225622a038cc4e2930a1022f51cdb97ada19b8e4d" +dependencies = [ + "byteorder", + "diesel_derives 1.4.1", +] + +[[package]] +name = "diesel" +version = "2.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2268a214a6f118fce1838edba3d1561cf0e78d8de785475957a580a7f8c69d33" +dependencies = [ + "bigdecimal", + "bitflags 2.4.1", + "byteorder", + "chrono", + "diesel_derives 2.1.2", + "itoa", + "num-bigint", + "num-integer", + "num-traits", + "pq-sys", + "r2d2", + "uuid", +] + +[[package]] +name = "diesel_derives" +version = "1.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "45f5098f628d02a7a0f68ddba586fb61e80edec3bdc1be3b921f4ceec60858d3" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "diesel_derives" +version = "2.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef8337737574f55a468005a83499da720f20c65586241ffea339db9ecdfd2b44" +dependencies = [ + "diesel_table_macro_syntax", + "proc-macro2", + "quote", + "syn 2.0.67", +] + +[[package]] +name = "diesel_migrations" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6036b3f0120c5961381b570ee20a02432d7e2d27ea60de9578799cf9156914ac" +dependencies = [ + "diesel 2.1.3", + "migrations_internals", + "migrations_macros", +] + +[[package]] +name = "diesel_table_macro_syntax" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fc5557efc453706fed5e4fa85006fe9817c224c3f480a34c7e5959fd700921c5" +dependencies = [ + "syn 2.0.67", +] + +[[package]] +name = "digest" +version = "0.10.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" +dependencies = [ + "block-buffer", + "crypto-common", +] + +[[package]] +name = "doc-comment" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fea41bba32d969b513997752735605054bc0dfa92b4c56bf1189f2e174be7a10" + +[[package]] +name = "dotenvy" +version = "0.15.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1aaf95b3e5c8f23aa320147307562d361db0ae0d51242340f558153b4eb2439b" + +[[package]] +name = "downcast" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1435fa1053d8b2fbbe9be7e97eca7f33d37b28409959813daefc1446a14247f1" + +[[package]] +name = "either" +version = "1.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3dca9240753cf90908d7e4aac30f630662b02aebaa1b58a3cadabdb23385b58b" + +[[package]] +name = "encoding_rs" +version = "0.8.33" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "envy" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f47e0157f2cb54f5ae1bd371b30a2ae4311e1c028f575cd4e81de7353215965" +dependencies = [ + "serde", +] + +[[package]] +name = "equivalent" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" + +[[package]] +name = "errno" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac3e13f66a2f95e32a39eaa81f6b95d42878ca0e1db0c7543723dfe12557e860" +dependencies = [ + "libc", + "windows-sys 0.48.0", +] + +[[package]] +name = "fastrand" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5" + +[[package]] +name = "figment" +version = "0.10.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a014ac935975a70ad13a3bff2463b1c1b083b35ae4cb6309cfc59476aa7a181f" +dependencies = [ + "atomic 0.6.0", + "pear", + "serde", + "toml 0.8.2", + "uncased", + "version_check", +] + +[[package]] +name = "filetime" +version = "0.2.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d4029edd3e734da6fe05b6cd7bd2960760a616bd2ddd0d59a0124746d6272af0" +dependencies = [ + "cfg-if", + "libc", + "redox_syscall 0.3.5", + "windows-sys 0.48.0", +] + +[[package]] +name = "fnv" +version = "1.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" + +[[package]] +name = "foreign-types" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" +dependencies = [ + "foreign-types-shared", +] + +[[package]] +name = "foreign-types-shared" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" + +[[package]] +name = "form_urlencoded" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a62bc1cf6f830c2ec14a513a9fb124d0a213a629668a4186f329db21fe045652" +dependencies = [ + "percent-encoding", +] + +[[package]] +name = "fragile" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c2141d6d6c8512188a7891b4b01590a45f6dac67afb4f255c4124dbb86d4eaa" + +[[package]] +name = "fsevent-sys" +version = "4.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "76ee7a02da4d231650c7cea31349b889be2f45ddb3ef3032d2ec8185f6313fd2" +dependencies = [ + "libc", +] + +[[package]] +name = "futures" +version = "0.3.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "23342abe12aba583913b2e62f22225ff9c950774065e4bfb61a19cd9770fec40" +dependencies = [ + "futures-channel", + "futures-core", + "futures-executor", + "futures-io", + "futures-sink", + "futures-task", + "futures-util", +] + +[[package]] +name = "futures-channel" +version = "0.3.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "955518d47e09b25bbebc7a18df10b81f0c766eaf4c4f1cccef2fca5f2a4fb5f2" +dependencies = [ + "futures-core", + "futures-sink", +] + +[[package]] +name = "futures-core" +version = "0.3.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4bca583b7e26f571124fe5b7561d49cb2868d79116cfa0eefce955557c6fee8c" + +[[package]] +name = "futures-executor" +version = "0.3.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ccecee823288125bd88b4d7f565c9e58e41858e47ab72e8ea2d64e93624386e0" +dependencies = [ + "futures-core", + "futures-task", + "futures-util", +] + +[[package]] +name = "futures-io" +version = "0.3.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4fff74096e71ed47f8e023204cfd0aa1289cd54ae5430a9523be060cdb849964" + +[[package]] +name = "futures-macro" +version = "0.3.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.67", +] + +[[package]] +name = "futures-sink" +version = "0.3.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f43be4fe21a13b9781a69afa4985b0f6ee0e1afab2c6f454a8cf30e2b2237b6e" + +[[package]] +name = "futures-task" +version = "0.3.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "76d3d132be6c0e6aa1534069c705a74a5997a356c0dc2f86a47765e5617c5b65" + +[[package]] +name = "futures-util" +version = "0.3.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26b01e40b772d54cf6c6d721c1d1abd0647a0106a12ecaa1c186273392a69533" +dependencies = [ + "futures-channel", + "futures-core", + "futures-io", + "futures-macro", + "futures-sink", + "futures-task", + "memchr", + "pin-project-lite", + "pin-utils", + "slab", +] + +[[package]] +name = "generator" +version = "0.7.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5cc16584ff22b460a382b7feec54b23d2908d858152e5739a120b949293bd74e" +dependencies = [ + "cc", + "libc", + "log", + "rustversion", + "windows", +] + +[[package]] +name = "generic-array" +version = "0.14.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" +dependencies = [ + "typenum", + "version_check", +] + +[[package]] +name = "getrandom" +version = "0.2.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427" +dependencies = [ + "cfg-if", + "libc", + "wasi", +] + +[[package]] +name = "gimli" +version = "0.28.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6fb8d784f27acf97159b40fc4db5ecd8aa23b9ad5ef69cdd136d3bc80665f0c0" + +[[package]] +name = "glob" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" + +[[package]] +name = "globset" +version = "0.4.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "759c97c1e17c55525b57192c06a267cda0ac5210b222d6b82189a2338fa1c13d" +dependencies = [ + "aho-corasick", + "bstr", + "fnv", + "log", + "regex", +] + +[[package]] +name = "globwalk" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93e3af942408868f6934a7b85134a3230832b9977cf66125df2f9edcfce4ddcc" +dependencies = [ + "bitflags 1.3.2", + "ignore", + "walkdir", +] + +[[package]] +name = "h2" +version = "0.3.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb2c4422095b67ee78da96fbb51a4cc413b3b25883c7717ff7ca1ab31022c9c9" +dependencies = [ + "bytes", + "fnv", + "futures-core", + "futures-sink", + "futures-util", + "http", + "indexmap 2.0.2", + "slab", + "tokio", + "tokio-util", + "tracing", +] + +[[package]] +name = "hashbrown" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" + +[[package]] +name = "hashbrown" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f93e7192158dbcda357bdec5fb5788eebf8bbac027f3f33e719d29135ae84156" + +[[package]] +name = "hermit-abi" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d77f7ec81a6d05a3abb01ab6eb7590f6083d08449fe5a1c8b1e620283546ccb7" + +[[package]] +name = "hostname" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c731c3e10504cc8ed35cfe2f1db4c9274c3d35fa486e3b31df46f068ef3e867" +dependencies = [ + "libc", + "match_cfg", + "winapi", +] + +[[package]] +name = "http" +version = "0.2.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd6effc99afb63425aff9b05836f029929e345a6148a14b7ecd5ab67af944482" +dependencies = [ + "bytes", + "fnv", + "itoa", +] + +[[package]] +name = "http-body" +version = "0.4.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1" +dependencies = [ + "bytes", + "http", + "pin-project-lite", +] + +[[package]] +name = "httparse" +version = "1.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904" + +[[package]] +name = "httpdate" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" + +[[package]] +name = "humansize" +version = "2.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6cb51c9a029ddc91b07a787f1d86b53ccfa49b0e86688c946ebe8d3555685dd7" +dependencies = [ + "libm", +] + +[[package]] +name = "humantime" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4" + +[[package]] +name = "hyper" +version = "0.14.27" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ffb1cfd654a8219eaef89881fdb3bb3b1cdc5fa75ded05d6933b2b382e395468" +dependencies = [ + "bytes", + "futures-channel", + "futures-core", + "futures-util", + "h2", + "http", + "http-body", + "httparse", + "httpdate", + "itoa", + "pin-project-lite", + "socket2 0.4.9", + "tokio", + "tower-service", + "tracing", + "want", +] + +[[package]] +name = "hyper-tls" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905" +dependencies = [ + "bytes", + "hyper", + "native-tls", + "tokio", + "tokio-native-tls", +] + +[[package]] +name = "iana-time-zone" +version = "0.1.58" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8326b86b6cff230b97d0d312a6c40a60726df3332e721f72a1b035f451663b20" +dependencies = [ + "android_system_properties", + "core-foundation-sys", + "iana-time-zone-haiku", + "js-sys", + "wasm-bindgen", + "windows-core", +] + +[[package]] +name = "iana-time-zone-haiku" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" +dependencies = [ + "cc", +] + +[[package]] +name = "idna" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7d20d6b07bfbc108882d88ed8e37d39636dcc260e15e30c45e6ba089610b917c" +dependencies = [ + "unicode-bidi", + "unicode-normalization", +] + +[[package]] +name = "if_chain" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb56e1aa765b4b4f3aadfab769793b7087bb03a4ea4920644a6d238e2df5b9ed" + +[[package]] +name = "ignore" +version = "0.4.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dbe7873dab538a9a44ad79ede1faf5f30d49f9a5c883ddbab48bce81b64b7492" +dependencies = [ + "globset", + "lazy_static", + "log", + "memchr", + "regex", + "same-file", + "thread_local", + "walkdir", + "winapi-util", +] + +[[package]] +name = "indexmap" +version = "1.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" +dependencies = [ + "autocfg", + "hashbrown 0.12.3", +] + +[[package]] +name = "indexmap" +version = "2.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8adf3ddd720272c6ea8bf59463c04e0f93d0bbf7c5439b691bca2987e0270897" +dependencies = [ + "equivalent", + "hashbrown 0.14.2", + "serde", +] + +[[package]] +name = "inlinable_string" +version = "0.1.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8fae54786f62fb2918dcfae3d568594e50eb9b5c25bf04371af6fe7516452fb" + +[[package]] +name = "inotify" +version = "0.9.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8069d3ec154eb856955c1c0fbffefbf5f3c40a104ec912d4797314c1801abff" +dependencies = [ + "bitflags 1.3.2", + "inotify-sys", + "libc", +] + +[[package]] +name = "inotify-sys" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e05c02b5e89bff3b946cedeca278abc628fe811e604f027c45a8aa3cf793d0eb" +dependencies = [ + "libc", +] + +[[package]] +name = "ipnet" +version = "2.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "28b29a3cd74f0f4598934efe3aeba42bae0eb4680554128851ebbecb02af14e6" + +[[package]] +name = "is-terminal" +version = "0.4.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb0889898416213fab133e1d33a0e5858a48177452750691bde3666d0fdbaf8b" +dependencies = [ + "hermit-abi", + "rustix", + "windows-sys 0.48.0", +] + +[[package]] +name = "itoa" +version = "1.0.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38" + +[[package]] +name = "js-sys" +version = "0.3.64" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c5f195fe497f702db0f318b07fdd68edb16955aed830df8363d837542f8f935a" +dependencies = [ + "wasm-bindgen", +] + +[[package]] +name = "jsonwebtoken" +version = "9.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "155c4d7e39ad04c172c5e3a99c434ea3b4a7ba7960b38ecd562b270b097cce09" +dependencies = [ + "base64 0.21.7", + "pem", + "ring", + "serde", + "serde_json", + "simple_asn1", +] + +[[package]] +name = "kqueue" +version = "1.0.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7447f1ca1b7b563588a205fe93dea8df60fd981423a768bc1c0ded35ed147d0c" +dependencies = [ + "kqueue-sys", + "libc", +] + +[[package]] +name = "kqueue-sys" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed9625ffda8729b85e45cf04090035ac368927b8cebc34898e7c120f52e4838b" +dependencies = [ + "bitflags 1.3.2", + "libc", +] + +[[package]] +name = "lazy_static" +version = "1.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" + +[[package]] +name = "libc" +version = "0.2.155" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "97b3888a4aecf77e811145cadf6eef5901f4782c53886191b2f693f24761847c" + +[[package]] +name = "libm" +version = "0.2.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058" + +[[package]] +name = "linked-hash-map" +version = "0.5.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f" + +[[package]] +name = "linux-raw-sys" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da2479e8c062e40bf0066ffa0bc823de0a9368974af99c9f6df941d2c231e03f" + +[[package]] +name = "lock_api" +version = "0.4.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45" +dependencies = [ + "autocfg", + "scopeguard", +] + +[[package]] +name = "log" +version = "0.4.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f" +dependencies = [ + "serde", +] + +[[package]] +name = "log-mdc" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a94d21414c1f4a51209ad204c1776a3d0765002c76c6abcb602a6f09f1e881c7" + +[[package]] +name = "log4rs" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d36ca1786d9e79b8193a68d480a0907b612f109537115c6ff655a3a1967533fd" +dependencies = [ + "anyhow", + "arc-swap", + "chrono", + "derivative", + "fnv", + "humantime", + "libc", + "log", + "log-mdc", + "parking_lot", + "serde", + "serde-value", + "serde_json", + "serde_yaml 0.8.26", + "thiserror", + "thread-id", + "typemap-ors", + "winapi", +] + +[[package]] +name = "loom" +version = "0.5.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff50ecb28bb86013e935fb6683ab1f6d3a20016f123c76fd4c27470076ac30f5" +dependencies = [ + "cfg-if", + "generator", + "scoped-tls", + "serde", + "serde_json", + "tracing", + "tracing-subscriber", +] + +[[package]] +name = "match_cfg" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ffbee8634e0d45d258acb448e7eaab3fce7a0a467395d4d9f228e3c1f01fb2e4" + +[[package]] +name = "matchers" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558" +dependencies = [ + "regex-automata 0.1.10", +] + +[[package]] +name = "memchr" +version = "2.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" + +[[package]] +name = "migrations_internals" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0f23f71580015254b020e856feac3df5878c2c7a8812297edd6c0a485ac9dada" +dependencies = [ + "serde", + "toml 0.7.8", +] + +[[package]] +name = "migrations_macros" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cce3325ac70e67bbab5bd837a31cae01f1a6db64e0e744a33cb03a543469ef08" +dependencies = [ + "migrations_internals", + "proc-macro2", + "quote", +] + +[[package]] +name = "mime" +version = "0.3.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" + +[[package]] +name = "minimal-lexical" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" + +[[package]] +name = "miniz_oxide" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7" +dependencies = [ + "adler", +] + +[[package]] +name = "mio" +version = "0.8.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c" +dependencies = [ + "libc", + "log", + "wasi", + "windows-sys 0.48.0", +] + +[[package]] +name = "mockall" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "43766c2b5203b10de348ffe19f7e54564b64f3d6018ff7648d1e2d6d3a0f0a48" +dependencies = [ + "cfg-if", + "downcast", + "fragile", + "lazy_static", + "mockall_derive", + "predicates", + "predicates-tree", +] + +[[package]] +name = "mockall_derive" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "af7cbce79ec385a1d4f54baa90a76401eb15d9cab93685f62e7e9f942aa00ae2" +dependencies = [ + "cfg-if", + "proc-macro2", + "quote", + "syn 2.0.67", +] + +[[package]] +name = "multer" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "01acbdc23469fd8fe07ab135923371d5f5a422fbf9c522158677c8eb15bc51c2" +dependencies = [ + "bytes", + "encoding_rs", + "futures-util", + "http", + "httparse", + "log", + "memchr", + "mime", + "spin", + "tokio", + "tokio-util", + "version_check", +] + +[[package]] +name = "native-tls" +version = "0.2.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "07226173c32f2926027b63cce4bcd8076c3552846cbe7925f3aaffeac0a3b92e" +dependencies = [ + "lazy_static", + "libc", + "log", + "openssl", + "openssl-probe", + "openssl-sys", + "schannel", + "security-framework", + "security-framework-sys", + "tempfile", +] + +[[package]] +name = "nom" +version = "7.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a" +dependencies = [ + "memchr", + "minimal-lexical", +] + +[[package]] +name = "normpath" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec60c60a693226186f5d6edf073232bfb6464ed97eb22cf3b01c1e8198fd97f5" +dependencies = [ + "windows-sys 0.48.0", +] + +[[package]] +name = "notify" +version = "6.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6205bd8bb1e454ad2e27422015fb5e4f2bcc7e08fa8f27058670d208324a4d2d" +dependencies = [ + "bitflags 2.4.1", + "crossbeam-channel", + "filetime", + "fsevent-sys", + "inotify", + "kqueue", + "libc", + "log", + "mio", + "walkdir", + "windows-sys 0.48.0", +] + +[[package]] +name = "nu-ansi-term" +version = "0.46.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84" +dependencies = [ + "overload", + "winapi", +] + +[[package]] +name = "num-bigint" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "608e7659b5c3d7cba262d894801b9ec9d00de989e8a82bd4bef91d08da45cdc0" +dependencies = [ + "autocfg", + "num-integer", + "num-traits", +] + +[[package]] +name = "num-derive" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "876a53fff98e03a936a674b29568b0e605f06b29372c2489ff4de23f1949743d" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "num-integer" +version = "0.1.45" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9" +dependencies = [ + "autocfg", + "num-traits", +] + +[[package]] +name = "num-traits" +version = "0.2.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "39e3200413f237f41ab11ad6d161bc7239c84dcb631773ccd7de3dfe4b5c267c" +dependencies = [ + "autocfg", +] + +[[package]] +name = "num_cpus" +version = "1.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" +dependencies = [ + "hermit-abi", + "libc", +] + +[[package]] +name = "object" +version = "0.32.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9cf5f9dd3933bd50a9e1f149ec995f39ae2c496d31fd772c1fd45ebc27e902b0" +dependencies = [ + "memchr", +] + +[[package]] +name = "once_cell" +version = "1.19.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" + +[[package]] +name = "openssl" +version = "0.10.57" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bac25ee399abb46215765b1cb35bc0212377e58a061560d8b29b024fd0430e7c" +dependencies = [ + "bitflags 2.4.1", + "cfg-if", + "foreign-types", + "libc", + "once_cell", + "openssl-macros", + "openssl-sys", +] + +[[package]] +name = "openssl-macros" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.67", +] + +[[package]] +name = "openssl-probe" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" + +[[package]] +name = "openssl-sys" +version = "0.9.93" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "db4d56a4c0478783083cfafcc42493dd4a981d41669da64b4572a2a089b51b1d" +dependencies = [ + "cc", + "libc", + "pkg-config", + "vcpkg", +] + +[[package]] +name = "ordered-float" +version = "2.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "68f19d67e5a2795c94e73e0bb1cc1a7edeb2e28efd39e2e1c9b7a40c1108b11c" +dependencies = [ + "num-traits", +] + +[[package]] +name = "overload" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" + +[[package]] +name = "parking_lot" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f" +dependencies = [ + "lock_api", + "parking_lot_core", +] + +[[package]] +name = "parking_lot_core" +version = "0.9.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e" +dependencies = [ + "cfg-if", + "libc", + "redox_syscall 0.4.1", + "smallvec", + "windows-targets 0.48.5", +] + +[[package]] +name = "parse-zoneinfo" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c705f256449c60da65e11ff6626e0c16a0a0b96aaa348de61376b249bc340f41" +dependencies = [ + "regex", +] + +[[package]] +name = "pear" +version = "0.2.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "61a386cd715229d399604b50d1361683fe687066f42d56f54be995bc6868f71c" +dependencies = [ + "inlinable_string", + "pear_codegen", + "yansi", +] + +[[package]] +name = "pear_codegen" +version = "0.2.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da9f0f13dac8069c139e8300a6510e3f4143ecf5259c60b116a9b271b4ca0d54" +dependencies = [ + "proc-macro2", + "proc-macro2-diagnostics", + "quote", + "syn 2.0.67", +] + +[[package]] +name = "pem" +version = "3.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3163d2912b7c3b52d651a055f2c7eec9ba5cd22d26ef75b8dd3a59980b185923" +dependencies = [ + "base64 0.21.7", + "serde", +] + +[[package]] +name = "percent-encoding" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94" + +[[package]] +name = "pest" +version = "2.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c022f1e7b65d6a24c0dbbd5fb344c66881bc01f3e5ae74a1c8100f2f985d98a4" +dependencies = [ + "memchr", + "thiserror", + "ucd-trie", +] + +[[package]] +name = "pest_derive" +version = "2.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "35513f630d46400a977c4cb58f78e1bfbe01434316e60c37d27b9ad6139c66d8" +dependencies = [ + "pest", + "pest_generator", +] + +[[package]] +name = "pest_generator" +version = "2.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc9fc1b9e7057baba189b5c626e2d6f40681ae5b6eb064dc7c7834101ec8123a" +dependencies = [ + "pest", + "pest_meta", + "proc-macro2", + "quote", + "syn 2.0.67", +] + +[[package]] +name = "pest_meta" +version = "2.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1df74e9e7ec4053ceb980e7c0c8bd3594e977fde1af91daba9c928e8e8c6708d" +dependencies = [ + "once_cell", + "pest", + "sha2", +] + +[[package]] +name = "phf" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ade2d8b8f33c7333b51bcf0428d37e217e9f32192ae4772156f65063b8ce03dc" +dependencies = [ + "phf_shared", +] + +[[package]] +name = "phf_codegen" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e8d39688d359e6b34654d328e262234662d16cc0f60ec8dcbe5e718709342a5a" +dependencies = [ + "phf_generator", + "phf_shared", +] + +[[package]] +name = "phf_generator" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "48e4cc64c2ad9ebe670cb8fd69dd50ae301650392e81c05f9bfcb2d5bdbc24b0" +dependencies = [ + "phf_shared", + "rand", +] + +[[package]] +name = "phf_shared" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "90fcb95eef784c2ac79119d1dd819e162b5da872ce6f3c3abe1e8ca1c082f72b" +dependencies = [ + "siphasher", +] + +[[package]] +name = "pin-project" +version = "1.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0302c4a0442c456bd56f841aee5c3bfd17967563f6fadc9ceb9f9c23cf3807e0" +dependencies = [ + "pin-project-internal", +] + +[[package]] +name = "pin-project-internal" +version = "1.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "266c042b60c9c76b8d53061e52b2e0d1116abc57cefc8c5cd671619a56ac3690" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.67", +] + +[[package]] +name = "pin-project-lite" +version = "0.2.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58" + +[[package]] +name = "pin-utils" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" + +[[package]] +name = "pkg-config" +version = "0.3.27" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964" + +[[package]] +name = "powerfmt" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" + +[[package]] +name = "ppv-lite86" +version = "0.2.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" + +[[package]] +name = "pq-sys" +version = "0.4.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "31c0052426df997c0cbd30789eb44ca097e3541717a7b8fa36b1c464ee7edebd" +dependencies = [ + "vcpkg", +] + +[[package]] +name = "predicates" +version = "3.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "68b87bfd4605926cdfefc1c3b5f8fe560e3feca9d5552cf68c466d3d8236c7e8" +dependencies = [ + "anstyle", + "predicates-core", +] + +[[package]] +name = "predicates-core" +version = "1.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b794032607612e7abeb4db69adb4e33590fa6cf1149e95fd7cb00e634b92f174" + +[[package]] +name = "predicates-tree" +version = "1.0.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "368ba315fb8c5052ab692e68a0eefec6ec57b23a36959c14496f0b0df2c0cecf" +dependencies = [ + "predicates-core", + "termtree", +] + +[[package]] +name = "proc-macro-error" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" +dependencies = [ + "proc-macro-error-attr", + "proc-macro2", + "quote", + "syn 1.0.109", + "version_check", +] + +[[package]] +name = "proc-macro-error-attr" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" +dependencies = [ + "proc-macro2", + "quote", + "version_check", +] + +[[package]] +name = "proc-macro2" +version = "1.0.86" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "proc-macro2-diagnostics" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "af066a9c399a26e020ada66a034357a868728e72cd426f3adcd35f80d88d88c8" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.67", + "version_check", + "yansi", +] + +[[package]] +name = "quote" +version = "1.0.36" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7" +dependencies = [ + "proc-macro2", +] + +[[package]] +name = "r2d2" +version = "0.8.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "51de85fb3fb6524929c8a2eb85e6b6d363de4e8c48f9e2c2eac4944abc181c93" +dependencies = [ + "log", + "parking_lot", + "scheduled-thread-pool", +] + +[[package]] +name = "r2d2-diesel" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eb9c29bad92da76d02bc2c020452ebc3a3fe6fa74cfab91e711c43116e4fb1a3" +dependencies = [ + "diesel 1.4.8", + "r2d2", +] + +[[package]] +name = "rand" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" +dependencies = [ + "libc", + "rand_chacha", + "rand_core", +] + +[[package]] +name = "rand_chacha" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" +dependencies = [ + "ppv-lite86", + "rand_core", +] + +[[package]] +name = "rand_core" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" +dependencies = [ + "getrandom", +] + +[[package]] +name = "redox_syscall" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29" +dependencies = [ + "bitflags 1.3.2", +] + +[[package]] +name = "redox_syscall" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa" +dependencies = [ + "bitflags 1.3.2", +] + +[[package]] +name = "ref-cast" +version = "1.0.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "acde58d073e9c79da00f2b5b84eed919c8326832648a5b109b3fce1bb1175280" +dependencies = [ + "ref-cast-impl", +] + +[[package]] +name = "ref-cast-impl" +version = "1.0.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f7473c2cfcf90008193dd0e3e16599455cb601a9fce322b5bb55de799664925" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.67", +] + +[[package]] +name = "regex" +version = "1.10.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b91213439dad192326a0d7c6ee3955910425f441d7038e0d6933b0aec5c4517f" +dependencies = [ + "aho-corasick", + "memchr", + "regex-automata 0.4.7", + "regex-syntax 0.8.4", +] + +[[package]] +name = "regex-automata" +version = "0.1.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132" +dependencies = [ + "regex-syntax 0.6.29", +] + +[[package]] +name = "regex-automata" +version = "0.4.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38caf58cc5ef2fed281f89292ef23f6365465ed9a41b7a7754eb4e26496c92df" +dependencies = [ + "aho-corasick", + "memchr", + "regex-syntax 0.8.4", +] + +[[package]] +name = "regex-syntax" +version = "0.6.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" + +[[package]] +name = "regex-syntax" +version = "0.8.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a66a03ae7c801facd77a29370b4faec201768915ac14a721ba36f20bc9c209b" + +[[package]] +name = "reqwest" +version = "0.11.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "046cd98826c46c2ac8ddecae268eb5c2e58628688a5fc7a2643704a73faba95b" +dependencies = [ + "base64 0.21.7", + "bytes", + "encoding_rs", + "futures-core", + "futures-util", + "h2", + "http", + "http-body", + "hyper", + "hyper-tls", + "ipnet", + "js-sys", + "log", + "mime", + "native-tls", + "once_cell", + "percent-encoding", + "pin-project-lite", + "serde", + "serde_json", + "serde_urlencoded", + "system-configuration", + "tokio", + "tokio-native-tls", + "tower-service", + "url", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", + "winreg", +] + +[[package]] +name = "ring" +version = "0.17.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fb0205304757e5d899b9c2e448b867ffd03ae7f988002e47cd24954391394d0b" +dependencies = [ + "cc", + "getrandom", + "libc", + "spin", + "untrusted", + "windows-sys 0.48.0", +] + +[[package]] +name = "rocket" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9e7bb57ccb26670d73b6a47396c83139447b9e7878cab627fdfe9ea8da489150" +dependencies = [ + "async-stream", + "async-trait", + "atomic 0.5.3", + "binascii", + "bytes", + "either", + "figment", + "futures", + "indexmap 2.0.2", + "log", + "memchr", + "multer", + "num_cpus", + "parking_lot", + "pin-project-lite", + "rand", + "ref-cast", + "rocket_codegen", + "rocket_http", + "serde", + "serde_json", + "state", + "tempfile", + "time", + "tokio", + "tokio-stream", + "tokio-util", + "ubyte", + "version_check", + "yansi", +] + +[[package]] +name = "rocket-validation" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b0bd0f76c16ddcc84567f362bdf9c0075968e096288da9a42bf1da9a3e42e47" +dependencies = [ + "rocket", + "validator", +] + +[[package]] +name = "rocket_codegen" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a2238066abf75f21be6cd7dc1a09d5414a671f4246e384e49fe3f8a4936bd04c" +dependencies = [ + "devise", + "glob", + "indexmap 2.0.2", + "proc-macro2", + "quote", + "rocket_http", + "syn 2.0.67", + "unicode-xid", + "version_check", +] + +[[package]] +name = "rocket_dyn_templates" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "04bfc006e547e4f72b760ab861f5943b688aed8a82c4977b5500c98f5d17dbfa" +dependencies = [ + "normpath", + "notify", + "rocket", + "tera", + "walkdir", +] + +[[package]] +name = "rocket_http" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "37a1663694d059fe5f943ea5481363e48050acedd241d46deb2e27f71110389e" +dependencies = [ + "cookie", + "either", + "futures", + "http", + "hyper", + "indexmap 2.0.2", + "log", + "memchr", + "pear", + "percent-encoding", + "pin-project-lite", + "ref-cast", + "serde", + "smallvec", + "stable-pattern", + "state", + "time", + "tokio", + "uncased", +] + +[[package]] +name = "rocket_sync_db_pools" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d83f32721ed79509adac4328e97f817a8f55a47c4b64799f6fd6cc3adb6e42ff" +dependencies = [ + "diesel 2.1.3", + "r2d2", + "rocket", + "rocket_sync_db_pools_codegen", + "serde", + "tokio", + "version_check", +] + +[[package]] +name = "rocket_sync_db_pools_codegen" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5cc890925dc79370c28eb15c9957677093fdb7e8c44966d189f38cedb995ee68" +dependencies = [ + "devise", + "quote", +] + +[[package]] +name = "rustc-demangle" +version = "0.1.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76" + +[[package]] +name = "rustix" +version = "0.38.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "67ce50cb2e16c2903e30d1cbccfd8387a74b9d4c938b6a4c5ec6cc7556f7a8a0" +dependencies = [ + "bitflags 2.4.1", + "errno", + "libc", + "linux-raw-sys", + "windows-sys 0.48.0", +] + +[[package]] +name = "rustversion" +version = "1.0.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7ffc183a10b4478d04cbbbfc96d0873219d962dd5accaff2ffbd4ceb7df837f4" + +[[package]] +name = "ryu" +version = "1.0.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741" + +[[package]] +name = "same-file" +version = "1.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" +dependencies = [ + "winapi-util", +] + +[[package]] +name = "schannel" +version = "0.1.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0c3733bf4cf7ea0880754e19cb5a462007c4a8c1914bff372ccc95b464f1df88" +dependencies = [ + "windows-sys 0.48.0", +] + +[[package]] +name = "scheduled-thread-pool" +version = "0.2.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3cbc66816425a074528352f5789333ecff06ca41b36b0b0efdfbb29edc391a19" +dependencies = [ + "parking_lot", +] + +[[package]] +name = "scoped-tls" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294" + +[[package]] +name = "scopeguard" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" + +[[package]] +name = "security-framework" +version = "2.9.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "05b64fb303737d99b81884b2c63433e9ae28abebe5eb5045dcdd175dc2ecf4de" +dependencies = [ + "bitflags 1.3.2", + "core-foundation", + "core-foundation-sys", + "libc", + "security-framework-sys", +] + +[[package]] +name = "security-framework-sys" +version = "2.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e932934257d3b408ed8f30db49d85ea163bfe74961f017f405b025af298f0c7a" +dependencies = [ + "core-foundation-sys", + "libc", +] + +[[package]] +name = "serde" +version = "1.0.189" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e422a44e74ad4001bdc8eede9a4570ab52f71190e9c076d14369f38b9200537" +dependencies = [ + "serde_derive", +] + +[[package]] +name = "serde-value" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f3a1a3341211875ef120e117ea7fd5228530ae7e7036a779fdc9117be6b3282c" +dependencies = [ + "ordered-float", + "serde", +] + +[[package]] +name = "serde_derive" +version = "1.0.189" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e48d1f918009ce3145511378cf68d613e3b3d9137d67272562080d68a2b32d5" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.67", +] + +[[package]] +name = "serde_json" +version = "1.0.107" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6b420ce6e3d8bd882e9b243c6eed35dbc9a6110c9769e74b584e0d68d1f20c65" +dependencies = [ + "itoa", + "ryu", + "serde", +] + +[[package]] +name = "serde_spanned" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "96426c9936fd7a0124915f9185ea1d20aa9445cc9821142f0a73bc9207a2e186" +dependencies = [ + "serde", +] + +[[package]] +name = "serde_urlencoded" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd" +dependencies = [ + "form_urlencoded", + "itoa", + "ryu", + "serde", +] + +[[package]] +name = "serde_yaml" +version = "0.8.26" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "578a7433b776b56a35785ed5ce9a7e777ac0598aac5a6dd1b4b18a307c7fc71b" +dependencies = [ + "indexmap 1.9.3", + "ryu", + "serde", + "yaml-rust", +] + +[[package]] +name = "serde_yaml" +version = "0.9.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1a49e178e4452f45cb61d0cd8cebc1b0fafd3e41929e996cef79aa3aca91f574" +dependencies = [ + "indexmap 2.0.2", + "itoa", + "ryu", + "serde", + "unsafe-libyaml", +] + +[[package]] +name = "sha2" +version = "0.10.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8" +dependencies = [ + "cfg-if", + "cpufeatures", + "digest", +] + +[[package]] +name = "sharded-slab" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6" +dependencies = [ + "lazy_static", +] + +[[package]] +name = "signal-hook-registry" +version = "1.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d8229b473baa5980ac72ef434c4415e70c4b5e71b423043adb4ba059f89c99a1" +dependencies = [ + "libc", +] + +[[package]] +name = "simple_asn1" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "adc4e5204eb1910f40f9cfa375f6f05b68c3abac4b6fd879c8ff5e7ae8a0a085" +dependencies = [ + "num-bigint", + "num-traits", + "thiserror", + "time", +] + +[[package]] +name = "siphasher" +version = "0.3.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38b58827f4464d87d377d175e90bf58eb00fd8716ff0a62f80356b5e61555d0d" + +[[package]] +name = "slab" +version = "0.4.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" +dependencies = [ + "autocfg", +] + +[[package]] +name = "slug" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b3bc762e6a4b6c6fcaade73e77f9ebc6991b676f88bb2358bddb56560f073373" +dependencies = [ + "deunicode 0.4.5", +] + +[[package]] +name = "smallvec" +version = "1.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" + +[[package]] +name = "snafu" +version = "0.6.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eab12d3c261b2308b0d80c26fffb58d17eba81a4be97890101f416b478c79ca7" +dependencies = [ + "doc-comment", + "snafu-derive", +] + +[[package]] +name = "snafu-derive" +version = "0.6.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1508efa03c362e23817f96cde18abed596a25219a8b2c66e8db33c03543d315b" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "socket2" +version = "0.4.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "64a4a911eed85daf18834cfaa86a79b7d266ff93ff5ba14005426219480ed662" +dependencies = [ + "libc", + "winapi", +] + +[[package]] +name = "socket2" +version = "0.5.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce305eb0b4296696835b71df73eb912e0f1ffd2556a501fcede6e0c50349191c" +dependencies = [ + "libc", + "windows-sys 0.52.0", +] + +[[package]] +name = "spin" +version = "0.9.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67" + +[[package]] +name = "stable-pattern" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4564168c00635f88eaed410d5efa8131afa8d8699a612c80c455a0ba05c21045" +dependencies = [ + "memchr", +] + +[[package]] +name = "state" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b8c4a4445d81357df8b1a650d0d0d6fbbbfe99d064aa5e02f3e4022061476d8" +dependencies = [ + "loom", +] + +[[package]] +name = "syn" +version = "1.0.109" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "syn" +version = "2.0.67" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff8655ed1d86f3af4ee3fd3263786bc14245ad17c4c7e85ba7187fb3ae028c90" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "system-configuration" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7" +dependencies = [ + "bitflags 1.3.2", + "core-foundation", + "system-configuration-sys", +] + +[[package]] +name = "system-configuration-sys" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a75fb188eb626b924683e3b95e3a48e63551fcfb51949de2f06a9d91dbee93c9" +dependencies = [ + "core-foundation-sys", + "libc", +] + +[[package]] +name = "tempfile" +version = "3.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb94d2f3cc536af71caac6b6fcebf65860b347e7ce0cc9ebe8f70d3e521054ef" +dependencies = [ + "cfg-if", + "fastrand", + "redox_syscall 0.3.5", + "rustix", + "windows-sys 0.48.0", +] + +[[package]] +name = "tera" +version = "1.19.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "970dff17c11e884a4a09bc76e3a17ef71e01bb13447a11e85226e254fe6d10b8" +dependencies = [ + "chrono", + "chrono-tz", + "globwalk", + "humansize", + "lazy_static", + "percent-encoding", + "pest", + "pest_derive", + "rand", + "regex", + "serde", + "serde_json", + "slug", + "unic-segment", +] + +[[package]] +name = "termtree" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3369f5ac52d5eb6ab48c6b4ffdc8efbcad6b89c765749064ba298f2c68a16a76" + +[[package]] +name = "thiserror" +version = "1.0.61" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c546c80d6be4bc6a00c0f01730c08df82eaa7a7a61f11d656526506112cc1709" +dependencies = [ + "thiserror-impl", +] + +[[package]] +name = "thiserror-impl" +version = "1.0.61" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "46c3384250002a6d5af4d114f2845d37b57521033f30d5c3f46c4d70e1197533" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.67", +] + +[[package]] +name = "thread-id" +version = "4.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0ec81c46e9eb50deaa257be2f148adf052d1fb7701cfd55ccfab2525280b70b" +dependencies = [ + "libc", + "winapi", +] + +[[package]] +name = "thread_local" +version = "1.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3fdd6f064ccff2d6567adcb3873ca630700f00b5ad3f060c25b5dcfd9a4ce152" +dependencies = [ + "cfg-if", + "once_cell", +] + +[[package]] +name = "time" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c4a34ab300f2dee6e562c10a046fc05e358b29f9bf92277f30c3c8d82275f6f5" +dependencies = [ + "deranged", + "itoa", + "powerfmt", + "serde", + "time-core", + "time-macros", +] + +[[package]] +name = "time-core" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3" + +[[package]] +name = "time-macros" +version = "0.2.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ad70d68dba9e1f8aceda7aa6711965dfec1cac869f311a51bd08b3a2ccbce20" +dependencies = [ + "time-core", +] + +[[package]] +name = "tinyvec" +version = "1.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50" +dependencies = [ + "tinyvec_macros", +] + +[[package]] +name = "tinyvec_macros" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" + +[[package]] +name = "tokio" +version = "1.38.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba4f4a02a7a80d6f274636f0aa95c7e383b912d41fe721a31f29e29698585a4a" +dependencies = [ + "backtrace", + "bytes", + "libc", + "mio", + "num_cpus", + "parking_lot", + "pin-project-lite", + "signal-hook-registry", + "socket2 0.5.7", + "tokio-macros", + "windows-sys 0.48.0", +] + +[[package]] +name = "tokio-cron-scheduler" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d1215c91d6f74868e18a65bda99853e012cfb2a0e42f3438382e318277da76a0" +dependencies = [ + "chrono", + "cron", + "num-derive", + "num-traits", + "tokio", + "tracing", + "uuid", +] + +[[package]] +name = "tokio-macros" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5f5ae998a069d4b5aba8ee9dad856af7d520c3699e6159b185c2acd48155d39a" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.67", +] + +[[package]] +name = "tokio-native-tls" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2" +dependencies = [ + "native-tls", + "tokio", +] + +[[package]] +name = "tokio-stream" +version = "0.1.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "267ac89e0bec6e691e5813911606935d77c476ff49024f98abcea3e7b15e37af" +dependencies = [ + "futures-core", + "pin-project-lite", + "tokio", +] + +[[package]] +name = "tokio-util" +version = "0.7.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9cf6b47b3771c49ac75ad09a6162f53ad4b8088b76ac60e8ec1455b31a189fe1" +dependencies = [ + "bytes", + "futures-core", + "futures-sink", + "pin-project-lite", + "tokio", +] + +[[package]] +name = "toml" +version = "0.7.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dd79e69d3b627db300ff956027cc6c3798cef26d22526befdfcd12feeb6d2257" +dependencies = [ + "serde", + "serde_spanned", + "toml_datetime", + "toml_edit 0.19.15", +] + +[[package]] +name = "toml" +version = "0.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "185d8ab0dfbb35cf1399a6344d8484209c088f75f8f68230da55d48d95d43e3d" +dependencies = [ + "serde", + "serde_spanned", + "toml_datetime", + "toml_edit 0.20.2", +] + +[[package]] +name = "toml_datetime" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7cda73e2f1397b1262d6dfdcef8aafae14d1de7748d66822d3bfeeb6d03e5e4b" +dependencies = [ + "serde", +] + +[[package]] +name = "toml_edit" +version = "0.19.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421" +dependencies = [ + "indexmap 2.0.2", + "serde", + "serde_spanned", + "toml_datetime", + "winnow", +] + +[[package]] +name = "toml_edit" +version = "0.20.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "396e4d48bbb2b7554c944bde63101b5ae446cff6ec4a24227428f15eb72ef338" +dependencies = [ + "indexmap 2.0.2", + "serde", + "serde_spanned", + "toml_datetime", + "winnow", +] + +[[package]] +name = "tower-service" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52" + +[[package]] +name = "tracing" +version = "0.1.40" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" +dependencies = [ + "pin-project-lite", + "tracing-attributes", + "tracing-core", +] + +[[package]] +name = "tracing-attributes" +version = "0.1.27" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.67", +] + +[[package]] +name = "tracing-core" +version = "0.1.32" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" +dependencies = [ + "once_cell", + "valuable", +] + +[[package]] +name = "tracing-log" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "78ddad33d2d10b1ed7eb9d1f518a5674713876e97e5bb9b7345a7984fbb4f922" +dependencies = [ + "lazy_static", + "log", + "tracing-core", +] + +[[package]] +name = "tracing-subscriber" +version = "0.3.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "30a651bc37f915e81f087d86e62a18eec5f79550c7faff886f7090b4ea757c77" +dependencies = [ + "matchers", + "nu-ansi-term", + "once_cell", + "regex", + "sharded-slab", + "smallvec", + "thread_local", + "tracing", + "tracing-core", + "tracing-log", +] + +[[package]] +name = "try-lock" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3528ecfd12c466c6f163363caf2d02a71161dd5e1cc6ae7b34207ea2d42d81ed" + +[[package]] +name = "typemap-ors" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a68c24b707f02dd18f1e4ccceb9d49f2058c2fb86384ef9972592904d7a28867" +dependencies = [ + "unsafe-any-ors", +] + +[[package]] +name = "typenum" +version = "1.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" + +[[package]] +name = "ubyte" +version = "0.10.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f720def6ce1ee2fc44d40ac9ed6d3a59c361c80a75a7aa8e75bb9baed31cf2ea" +dependencies = [ + "serde", +] + +[[package]] +name = "ucd-trie" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed646292ffc8188ef8ea4d1e0e0150fb15a5c2e12ad9b8fc191ae7a8a7f3c4b9" + +[[package]] +name = "uncased" +version = "0.9.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b9bc53168a4be7402ab86c3aad243a84dd7381d09be0eddc81280c1da95ca68" +dependencies = [ + "serde", + "version_check", +] + +[[package]] +name = "unic-char-property" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a8c57a407d9b6fa02b4795eb81c5b6652060a15a7903ea981f3d723e6c0be221" +dependencies = [ + "unic-char-range", +] + +[[package]] +name = "unic-char-range" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0398022d5f700414f6b899e10b8348231abf9173fa93144cbc1a43b9793c1fbc" + +[[package]] +name = "unic-common" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "80d7ff825a6a654ee85a63e80f92f054f904f21e7d12da4e22f9834a4aaa35bc" + +[[package]] +name = "unic-segment" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e4ed5d26be57f84f176157270c112ef57b86debac9cd21daaabbe56db0f88f23" +dependencies = [ + "unic-ucd-segment", +] + +[[package]] +name = "unic-ucd-segment" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2079c122a62205b421f499da10f3ee0f7697f012f55b675e002483c73ea34700" +dependencies = [ + "unic-char-property", + "unic-char-range", + "unic-ucd-version", +] + +[[package]] +name = "unic-ucd-version" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "96bd2f2237fe450fcd0a1d2f5f4e91711124f7857ba2e964247776ebeeb7b0c4" +dependencies = [ + "unic-common", +] + +[[package]] +name = "unicode-bidi" +version = "0.3.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460" + +[[package]] +name = "unicode-ident" +version = "1.0.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" + +[[package]] +name = "unicode-normalization" +version = "0.1.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921" +dependencies = [ + "tinyvec", +] + +[[package]] +name = "unicode-xid" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c" + +[[package]] +name = "unsafe-any-ors" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e0a303d30665362d9680d7d91d78b23f5f899504d4f08b3c4cf08d055d87c0ad" +dependencies = [ + "destructure_traitobject", +] + +[[package]] +name = "unsafe-libyaml" +version = "0.2.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "673aac59facbab8a9007c7f6108d11f63b603f7cabff99fabf650fea5c32b861" + +[[package]] +name = "untrusted" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" + +[[package]] +name = "url" +version = "2.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "143b538f18257fac9cad154828a57c6bf5157e1aa604d4816b5995bf6de87ae5" +dependencies = [ + "form_urlencoded", + "idna", + "percent-encoding", + "serde", +] + +[[package]] +name = "uuid" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "88ad59a7560b41a70d191093a945f0b87bc1deeda46fb237479708a1d6b6cdfc" +dependencies = [ + "getrandom", + "serde", +] + +[[package]] +name = "validator" +version = "0.16.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b92f40481c04ff1f4f61f304d61793c7b56ff76ac1469f1beb199b1445b253bd" +dependencies = [ + "idna", + "lazy_static", + "regex", + "serde", + "serde_derive", + "serde_json", + "url", + "validator_derive", +] + +[[package]] +name = "validator_derive" +version = "0.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc44ca3088bb3ba384d9aecf40c6a23a676ce23e09bdaca2073d99c207f864af" +dependencies = [ + "if_chain", + "lazy_static", + "proc-macro-error", + "proc-macro2", + "quote", + "regex", + "syn 1.0.109", + "validator_types", +] + +[[package]] +name = "validator_types" +version = "0.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "111abfe30072511849c5910134e8baf8dc05de4c0e5903d681cbd5c9c4d611e3" +dependencies = [ + "proc-macro2", + "syn 1.0.109", +] + +[[package]] +name = "valuable" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d" + +[[package]] +name = "vcpkg" +version = "0.2.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" + +[[package]] +name = "version_check" +version = "0.9.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" + +[[package]] +name = "walkdir" +version = "2.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d71d857dc86794ca4c280d616f7da00d2dbfd8cd788846559a6813e6aa4b54ee" +dependencies = [ + "same-file", + "winapi-util", +] + +[[package]] +name = "want" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e" +dependencies = [ + "try-lock", +] + +[[package]] +name = "wasi" +version = "0.11.0+wasi-snapshot-preview1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" + +[[package]] +name = "wasm-bindgen" +version = "0.2.87" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7706a72ab36d8cb1f80ffbf0e071533974a60d0a308d01a5d0375bf60499a342" +dependencies = [ + "cfg-if", + "wasm-bindgen-macro", +] + +[[package]] +name = "wasm-bindgen-backend" +version = "0.2.87" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5ef2b6d3c510e9625e5fe6f509ab07d66a760f0885d858736483c32ed7809abd" +dependencies = [ + "bumpalo", + "log", + "once_cell", + "proc-macro2", + "quote", + "syn 2.0.67", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-futures" +version = "0.4.37" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c02dbc21516f9f1f04f187958890d7e6026df8d16540b7ad9492bc34a67cea03" +dependencies = [ + "cfg-if", + "js-sys", + "wasm-bindgen", + "web-sys", +] + +[[package]] +name = "wasm-bindgen-macro" +version = "0.2.87" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dee495e55982a3bd48105a7b947fd2a9b4a8ae3010041b9e0faab3f9cd028f1d" +dependencies = [ + "quote", + "wasm-bindgen-macro-support", +] + +[[package]] +name = "wasm-bindgen-macro-support" +version = "0.2.87" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.67", + "wasm-bindgen-backend", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-shared" +version = "0.2.87" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ca6ad05a4870b2bf5fe995117d3728437bd27d7cd5f06f13c17443ef369775a1" + +[[package]] +name = "web-sys" +version = "0.3.64" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b85cbef8c220a6abc02aefd892dfc0fc23afb1c6a426316ec33253a3877249b" +dependencies = [ + "js-sys", + "wasm-bindgen", +] + +[[package]] +name = "winapi" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" +dependencies = [ + "winapi-i686-pc-windows-gnu", + "winapi-x86_64-pc-windows-gnu", +] + +[[package]] +name = "winapi-i686-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" + +[[package]] +name = "winapi-util" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f29e6f9198ba0d26b4c9f07dbe6f9ed633e1f3d5b8b414090084349e46a52596" +dependencies = [ + "winapi", +] + +[[package]] +name = "winapi-x86_64-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" + +[[package]] +name = "windows" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e686886bc078bc1b0b600cac0147aadb815089b6e4da64016cbd754b6342700f" +dependencies = [ + "windows-targets 0.48.5", +] + +[[package]] +name = "windows-core" +version = "0.51.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1f8cf84f35d2db49a46868f947758c7a1138116f7fac3bc844f43ade1292e64" +dependencies = [ + "windows-targets 0.48.5", +] + +[[package]] +name = "windows-sys" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" +dependencies = [ + "windows-targets 0.48.5", +] + +[[package]] +name = "windows-sys" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" +dependencies = [ + "windows-targets 0.52.5", +] + +[[package]] +name = "windows-targets" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" +dependencies = [ + "windows_aarch64_gnullvm 0.48.5", + "windows_aarch64_msvc 0.48.5", + "windows_i686_gnu 0.48.5", + "windows_i686_msvc 0.48.5", + "windows_x86_64_gnu 0.48.5", + "windows_x86_64_gnullvm 0.48.5", + "windows_x86_64_msvc 0.48.5", +] + +[[package]] +name = "windows-targets" +version = "0.52.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb" +dependencies = [ + "windows_aarch64_gnullvm 0.52.5", + "windows_aarch64_msvc 0.52.5", + "windows_i686_gnu 0.52.5", + "windows_i686_gnullvm", + "windows_i686_msvc 0.52.5", + "windows_x86_64_gnu 0.52.5", + "windows_x86_64_gnullvm 0.52.5", + "windows_x86_64_msvc 0.52.5", +] + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.52.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.52.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6" + +[[package]] +name = "windows_i686_gnu" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" + +[[package]] +name = "windows_i686_gnu" +version = "0.52.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670" + +[[package]] +name = "windows_i686_gnullvm" +version = "0.52.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9" + +[[package]] +name = "windows_i686_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" + +[[package]] +name = "windows_i686_msvc" +version = "0.52.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.52.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.52.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.52.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0" + +[[package]] +name = "winnow" +version = "0.5.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a3b801d0e0a6726477cc207f60162da452f3a95adb368399bef20a946e06f65c" +dependencies = [ + "memchr", +] + +[[package]] +name = "winreg" +version = "0.50.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1" +dependencies = [ + "cfg-if", + "windows-sys 0.48.0", +] + +[[package]] +name = "yaml-rust" +version = "0.4.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "56c1936c4cc7a1c9ab21a1ebb602eb942ba868cbd44a99cb7cdc5892335e1c85" +dependencies = [ + "linked-hash-map", +] + +[[package]] +name = "yansi" +version = "1.0.0-rc.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1367295b8f788d371ce2dbc842c7b709c73ee1364d30351dd300ec2203b12377" +dependencies = [ + "is-terminal", +] diff --git a/anubis-eval/Cargo.toml b/anubis-eval/Cargo.toml new file mode 100644 index 0000000..2ad3408 --- /dev/null +++ b/anubis-eval/Cargo.toml @@ -0,0 +1,41 @@ +[package] +name = "anubis-eval" +version = "0.1.0" +edition = "2021" + +# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html + +[dependencies] +url = "2.2.2" +tokio-cron-scheduler = "0.10.0" +tokio = { version = "1.11.0", features = ["full"] } +thiserror = "1.0.49" +diesel = { version = "2.1.1", features = ["postgres", "chrono", "r2d2", "uuid", "numeric"] } +diesel_migrations = "2.1.0" +r2d2 = "0.8.9" +r2d2-diesel = "1.0.0" +serde = { version = "1.0.188", features = ["derive"] } +serde_json = "1.0.105" +uuid = { version = "1.4.1", features = ["serde", "v4"] } +rocket = { version = "0.5.0", features = ["json"] } +rocket-validation = "0.2.0" +validator = "0.16.1" +rocket_dyn_templates = { version = "0.1.0", features = ["tera"] } +rocket_sync_db_pools = { version = "0.1.0", features = ["diesel_postgres_pool"] } +lazy_static = "1.4.0" +log4rs = "1.2.0" +jsonwebtoken = "9.0.0" +dotenvy = "0.15.7" +envy = "0.4.2" +chrono = { version = "0.4.30", features = ["serde"] } +reqwest = { version = "0.11.22", features = ["json"] } +futures = "0.3.28" +cloudevents-sdk = "0.7.0" +anyhow = "1.0.80" +async-scoped = { version = "0.9.0", features = ["use-tokio"] } + +[dev-dependencies] +cder = "0.2.1" +mockall = "0.12.1" +ctor = "0.2.8" +async_once = "0.2.6" diff --git a/anubis-eval/Dockerfile b/anubis-eval/Dockerfile new file mode 100644 index 0000000..c86b677 --- /dev/null +++ b/anubis-eval/Dockerfile @@ -0,0 +1,21 @@ +FROM lukemathwalker/cargo-chef:0.1.67-rust-slim-buster AS chef +WORKDIR /app + +FROM chef AS planner +COPY . . +RUN cargo chef prepare --recipe-path recipe.json + +FROM chef as builder +LABEL stage=builder +ENV CARGO_TERM_COLOR always +RUN apt-get update && apt-get install -y libpq-dev libsqlite3-dev libmariadbclient-dev-compat pkg-config libssl1.1 libssl-dev && apt-get clean && rm -rf /var/lib/apt/lists/* +COPY --from=planner /app/recipe.json recipe.json +RUN cargo chef cook --release --recipe-path recipe.json +COPY . . +RUN cargo build --release --bin anubis-eval + +FROM debian:buster-slim AS runtime +WORKDIR /app +RUN apt-get update && apt-get install -y libpq-dev libsqlite3-dev libmariadbclient-dev-compat pkg-config libssl1.1 libssl-dev && apt-get clean && rm -rf /var/lib/apt/lists/* +COPY --from=builder /app/target/release/anubis-eval /usr/local/bin +ENTRYPOINT ["/usr/local/bin/anubis-eval"] \ No newline at end of file diff --git a/anubis-eval/README.md b/anubis-eval/README.md new file mode 100644 index 0000000..80cb19d --- /dev/null +++ b/anubis-eval/README.md @@ -0,0 +1,6 @@ +# Anubis +Anubis is a Rust based microservice responsible for evaluating any received submissions in a sandboxed environment. + +![](../assets/Anubis-Architecture.png) + +Anubis Service Architecture \ No newline at end of file diff --git a/anubis-eval/diesel.toml b/anubis-eval/diesel.toml new file mode 100644 index 0000000..92267c8 --- /dev/null +++ b/anubis-eval/diesel.toml @@ -0,0 +1,5 @@ +# For documentation on how to configure this file, +# see diesel.rs/guides/configuring-diesel-cli + +[print_schema] +file = "src/schema.rs" diff --git a/anubis-eval/eval-lb/CHANGELOG.md b/anubis-eval/eval-lb/CHANGELOG.md new file mode 100644 index 0000000..4ce0824 --- /dev/null +++ b/anubis-eval/eval-lb/CHANGELOG.md @@ -0,0 +1,8 @@ +# Changelog + +## 1.0.0 (2024-09-21) + + +### Features + +* **anubis-judge0:** add nginx lb between anubis and judge0 replicas ([13fbc85](https://github.com/Pantheonix/Asgard/commit/13fbc85d6ea9a4c436484668d040932d560d7265)) diff --git a/anubis-eval/eval-lb/Dockerfile b/anubis-eval/eval-lb/Dockerfile new file mode 100644 index 0000000..759c9ad --- /dev/null +++ b/anubis-eval/eval-lb/Dockerfile @@ -0,0 +1,4 @@ +FROM nginx:1.24-alpine + +COPY ./nginx.conf /etc/nginx/nginx.conf + diff --git a/anubis-eval/eval-lb/nginx.conf b/anubis-eval/eval-lb/nginx.conf new file mode 100644 index 0000000..f6c6b74 --- /dev/null +++ b/anubis-eval/eval-lb/nginx.conf @@ -0,0 +1,13 @@ +user nginx; +events { + worker_connections 1000; +} +http { + client_max_body_size 20M; + server { + listen 4000; + location / { + proxy_pass http://server:2358; + } + } +} \ No newline at end of file diff --git a/anubis-eval/log4rs.yaml b/anubis-eval/log4rs.yaml new file mode 100644 index 0000000..1ed69ba --- /dev/null +++ b/anubis-eval/log4rs.yaml @@ -0,0 +1,25 @@ +refresh_rate: 30 seconds +appenders: + file_appender: + kind: file + path: "logs/anubis.logs" + encoder: + pattern: "{d(%Y-%m-%d %H:%M:%S%.3f)} {h({l})} {M} - {m}{n}" + console_appender: + kind: console + encoder: + pattern: "{d(%Y-%m-%d %H:%M:%S%.3f)} {h({l})} {M} - {m}{n}" + +root: + level: info + appenders: + - file_appender + - console_appender + +loggers: + anubis: + level: info + appenders: + - file_appender + - console_appender + additive: false \ No newline at end of file diff --git a/anubis-eval/migrations/.gitkeep b/anubis-eval/migrations/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/anubis-eval/migrations/00000000000000_diesel_initial_setup/down.sql b/anubis-eval/migrations/00000000000000_diesel_initial_setup/down.sql new file mode 100644 index 0000000..a9f5260 --- /dev/null +++ b/anubis-eval/migrations/00000000000000_diesel_initial_setup/down.sql @@ -0,0 +1,6 @@ +-- This file was automatically created by Diesel to setup helper functions +-- and other internal bookkeeping. This file is safe to edit, any future +-- changes will be added to existing projects as new migrations. + +DROP FUNCTION IF EXISTS diesel_manage_updated_at(_tbl regclass); +DROP FUNCTION IF EXISTS diesel_set_updated_at(); diff --git a/anubis-eval/migrations/00000000000000_diesel_initial_setup/up.sql b/anubis-eval/migrations/00000000000000_diesel_initial_setup/up.sql new file mode 100644 index 0000000..d68895b --- /dev/null +++ b/anubis-eval/migrations/00000000000000_diesel_initial_setup/up.sql @@ -0,0 +1,36 @@ +-- This file was automatically created by Diesel to setup helper functions +-- and other internal bookkeeping. This file is safe to edit, any future +-- changes will be added to existing projects as new migrations. + + + + +-- Sets up a trigger for the given table to automatically set a column called +-- `updated_at` whenever the row is modified (unless `updated_at` was included +-- in the modified columns) +-- +-- # Example +-- +-- ```sql +-- CREATE TABLE users (id SERIAL PRIMARY KEY, updated_at TIMESTAMP NOT NULL DEFAULT NOW()); +-- +-- SELECT diesel_manage_updated_at('users'); +-- ``` +CREATE OR REPLACE FUNCTION diesel_manage_updated_at(_tbl regclass) RETURNS VOID AS $$ +BEGIN + EXECUTE format('CREATE TRIGGER set_updated_at BEFORE UPDATE ON %s + FOR EACH ROW EXECUTE PROCEDURE diesel_set_updated_at()', _tbl); +END; +$$ LANGUAGE plpgsql; + +CREATE OR REPLACE FUNCTION diesel_set_updated_at() RETURNS trigger AS $$ +BEGIN + IF ( + NEW IS DISTINCT FROM OLD AND + NEW.updated_at IS NOT DISTINCT FROM OLD.updated_at + ) THEN + NEW.updated_at := current_timestamp; + END IF; + RETURN NEW; +END; +$$ LANGUAGE plpgsql; diff --git a/anubis-eval/migrations/2023-09-20-180041_create_submissions/down.sql b/anubis-eval/migrations/2023-09-20-180041_create_submissions/down.sql new file mode 100644 index 0000000..f1117ce --- /dev/null +++ b/anubis-eval/migrations/2023-09-20-180041_create_submissions/down.sql @@ -0,0 +1,3 @@ +-- This file should undo anything in `up.sql` +DROP TABLE submissions; +DROP TABLE submissions_testcases; \ No newline at end of file diff --git a/anubis-eval/migrations/2023-09-20-180041_create_submissions/up.sql b/anubis-eval/migrations/2023-09-20-180041_create_submissions/up.sql new file mode 100644 index 0000000..88ba25a --- /dev/null +++ b/anubis-eval/migrations/2023-09-20-180041_create_submissions/up.sql @@ -0,0 +1,23 @@ +-- Your SQL goes here +CREATE TABLE submissions ( + id SERIAL PRIMARY KEY, + user_id INTEGER NOT NULL, + problem_id INTEGER NOT NULL, + language VARCHAR(255) NOT NULL, + source_code TEXT NOT NULL, + status VARCHAR(255) NOT NULL, + score INTEGER NOT NULL, + created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP +); + +CREATE TABLE submissions_testcases ( + token SERIAL PRIMARY KEY, + submission_id INTEGER NOT NULL, + status VARCHAR(255) NOT NULL, + time DECIMAL NOT NULL, + memory DECIMAL NOT NULL, + score INTEGER NOT NULL, + answer TEXT NOT NULL, + eval_message TEXT NULL, + compile_output TEXT NULL +); \ No newline at end of file diff --git a/anubis-eval/migrations/2023-10-03-213608_update_test_case/down.sql b/anubis-eval/migrations/2023-10-03-213608_update_test_case/down.sql new file mode 100644 index 0000000..bf95797 --- /dev/null +++ b/anubis-eval/migrations/2023-10-03-213608_update_test_case/down.sql @@ -0,0 +1,6 @@ +-- This file should undo anything in `up.sql` +ALTER TABLE submissions_testcases DROP COLUMN stdout; +ALTER TABLE submissions_testcases DROP COLUMN stderr; + +ALTER TABLE submissions_testcases ADD COLUMN compile_output TEXT; +ALTER TABLE submissions_testcases ADD COLUMN answer TEXT; \ No newline at end of file diff --git a/anubis-eval/migrations/2023-10-03-213608_update_test_case/up.sql b/anubis-eval/migrations/2023-10-03-213608_update_test_case/up.sql new file mode 100644 index 0000000..e056530 --- /dev/null +++ b/anubis-eval/migrations/2023-10-03-213608_update_test_case/up.sql @@ -0,0 +1,6 @@ +-- Your SQL goes here +ALTER TABLE submissions_testcases DROP COLUMN compile_output; +ALTER TABLE submissions_testcases DROP COLUMN answer; + +ALTER TABLE submissions_testcases ADD COLUMN stdout TEXT; +ALTER TABLE submissions_testcases ADD COLUMN stderr TEXT; \ No newline at end of file diff --git a/anubis-eval/migrations/2023-10-03-221655_convert_pk_to_uuid/down.sql b/anubis-eval/migrations/2023-10-03-221655_convert_pk_to_uuid/down.sql new file mode 100644 index 0000000..9e20af9 --- /dev/null +++ b/anubis-eval/migrations/2023-10-03-221655_convert_pk_to_uuid/down.sql @@ -0,0 +1,17 @@ +-- This file should undo anything in `up.sql` +ALTER TABLE submissions ADD COLUMN new_id SERIAL; +UPDATE submissions SET new_id = (('x' || md5(id::text))::bit(32)::bigint); +ALTER TABLE submissions DROP COLUMN id; +ALTER TABLE submissions RENAME COLUMN new_id TO id; +ALTER TABLE submissions ADD PRIMARY KEY (id); + +ALTER TABLE submissions_testcases ADD COLUMN new_token SERIAL; +UPDATE submissions_testcases SET new_token = (('x' || md5(token::text))::bit(32)::bigint); +ALTER TABLE submissions_testcases DROP COLUMN token; +ALTER TABLE submissions_testcases RENAME COLUMN new_token TO token; +ALTER TABLE submissions_testcases ADD PRIMARY KEY (token); + +ALTER TABLE submissions_testcases ADD COLUMN new_submission_id SERIAL; +UPDATE submissions_testcases SET new_submission_id = (('x' || md5(submission_id::text))::bit(32)::bigint); +ALTER TABLE submissions_testcases DROP COLUMN submission_id; +ALTER TABLE submissions_testcases RENAME COLUMN new_submission_id TO submission_id; diff --git a/anubis-eval/migrations/2023-10-03-221655_convert_pk_to_uuid/up.sql b/anubis-eval/migrations/2023-10-03-221655_convert_pk_to_uuid/up.sql new file mode 100644 index 0000000..ac97b3d --- /dev/null +++ b/anubis-eval/migrations/2023-10-03-221655_convert_pk_to_uuid/up.sql @@ -0,0 +1,12 @@ +-- Your SQL goes here +ALTER TABLE submissions ALTER COLUMN id DROP DEFAULT; +ALTER TABLE submissions ALTER COLUMN id TYPE text; +ALTER TABLE submissions ALTER COLUMN id TYPE uuid USING id::uuid; + +ALTER TABLE submissions_testcases ALTER COLUMN token DROP DEFAULT; +ALTER TABLE submissions_testcases ALTER COLUMN token TYPE text; +ALTER TABLE submissions_testcases ALTER COLUMN token TYPE uuid USING token::uuid; + +ALTER TABLE submissions_testcases ALTER COLUMN submission_id DROP DEFAULT; +ALTER TABLE submissions_testcases ALTER COLUMN submission_id TYPE text; +ALTER TABLE submissions_testcases ALTER COLUMN submission_id TYPE uuid USING submission_id::uuid; \ No newline at end of file diff --git a/anubis-eval/migrations/2023-10-04-113726_convert_remained_ids_to_uuid/down.sql b/anubis-eval/migrations/2023-10-04-113726_convert_remained_ids_to_uuid/down.sql new file mode 100644 index 0000000..8d7a546 --- /dev/null +++ b/anubis-eval/migrations/2023-10-04-113726_convert_remained_ids_to_uuid/down.sql @@ -0,0 +1,10 @@ +-- This file should undo anything in `up.sql` +ALTER TABLE submissions ADD COLUMN new_user_id SERIAL; +UPDATE submissions SET new_user_id = (('x' || md5(user_id::text))::bit(32)::bigint); +ALTER TABLE submissions DROP COLUMN user_id; +ALTER TABLE submissions RENAME COLUMN new_user_id TO user_id; + +ALTER TABLE submissions ADD COLUMN new_problem_id SERIAL; +UPDATE submissions SET new_problem_id = (('x' || md5(problem_id::text))::bit(32)::bigint); +ALTER TABLE submissions DROP COLUMN problem_id; +ALTER TABLE submissions RENAME COLUMN new_problem_id TO problem_id; diff --git a/anubis-eval/migrations/2023-10-04-113726_convert_remained_ids_to_uuid/up.sql b/anubis-eval/migrations/2023-10-04-113726_convert_remained_ids_to_uuid/up.sql new file mode 100644 index 0000000..ed612a8 --- /dev/null +++ b/anubis-eval/migrations/2023-10-04-113726_convert_remained_ids_to_uuid/up.sql @@ -0,0 +1,8 @@ +-- Your SQL goes here +ALTER TABLE submissions ALTER COLUMN user_id DROP DEFAULT; +ALTER TABLE submissions ALTER COLUMN user_id TYPE text; +ALTER TABLE submissions ALTER COLUMN user_id TYPE uuid USING user_id::uuid; + +ALTER TABLE submissions ALTER COLUMN problem_id DROP DEFAULT; +ALTER TABLE submissions ALTER COLUMN problem_id TYPE text; +ALTER TABLE submissions ALTER COLUMN problem_id TYPE uuid USING problem_id::uuid; diff --git a/anubis-eval/migrations/2023-10-04-114912_convert_ids_to_text/down.sql b/anubis-eval/migrations/2023-10-04-114912_convert_ids_to_text/down.sql new file mode 100644 index 0000000..2f0acd7 --- /dev/null +++ b/anubis-eval/migrations/2023-10-04-114912_convert_ids_to_text/down.sql @@ -0,0 +1,19 @@ +-- This file should undo anything in `up.sql` +ALTER TABLE submissions_testcases DROP CONSTRAINT submissions_testcases_submission_id_fkey; + +-- submissions +ALTER TABLE submissions ALTER COLUMN id DROP DEFAULT; +ALTER TABLE submissions ALTER COLUMN id TYPE uuid USING id::uuid; + +ALTER TABLE submissions ALTER COLUMN user_id DROP DEFAULT; +ALTER TABLE submissions ALTER COLUMN user_id TYPE uuid USING user_id::uuid; + +ALTER TABLE submissions ALTER COLUMN problem_id DROP DEFAULT; +ALTER TABLE submissions ALTER COLUMN problem_id TYPE uuid USING problem_id::uuid; + +-- testcases +ALTER TABLE submissions_testcases ALTER COLUMN token DROP DEFAULT; +ALTER TABLE submissions_testcases ALTER COLUMN token TYPE uuid USING token::uuid; + +ALTER TABLE submissions_testcases ALTER COLUMN submission_id DROP DEFAULT; +ALTER TABLE submissions_testcases ALTER COLUMN submission_id TYPE uuid USING submission_id::uuid; \ No newline at end of file diff --git a/anubis-eval/migrations/2023-10-04-114912_convert_ids_to_text/up.sql b/anubis-eval/migrations/2023-10-04-114912_convert_ids_to_text/up.sql new file mode 100644 index 0000000..84a4338 --- /dev/null +++ b/anubis-eval/migrations/2023-10-04-114912_convert_ids_to_text/up.sql @@ -0,0 +1,18 @@ +-- Your SQL goes here +-- submission +ALTER TABLE submissions ALTER COLUMN id DROP DEFAULT; +ALTER TABLE submissions ALTER COLUMN id TYPE text; + +ALTER TABLE submissions ALTER COLUMN user_id DROP DEFAULT; +ALTER TABLE submissions ALTER COLUMN user_id TYPE text; + +ALTER TABLE submissions ALTER COLUMN problem_id DROP DEFAULT; +ALTER TABLE submissions ALTER COLUMN problem_id TYPE text; + +-- testcase +ALTER TABLE submissions_testcases ALTER COLUMN token DROP DEFAULT; +ALTER TABLE submissions_testcases ALTER COLUMN token TYPE text; + +ALTER TABLE submissions_testcases ALTER COLUMN submission_id DROP DEFAULT; +ALTER TABLE submissions_testcases ALTER COLUMN submission_id TYPE text; +ALTER TABLE submissions_testcases ADD FOREIGN KEY (submission_id) REFERENCES submissions(id); \ No newline at end of file diff --git a/anubis-eval/migrations/2023-10-04-120245_add_test_id_to_testcase/down.sql b/anubis-eval/migrations/2023-10-04-120245_add_test_id_to_testcase/down.sql new file mode 100644 index 0000000..ea7e000 --- /dev/null +++ b/anubis-eval/migrations/2023-10-04-120245_add_test_id_to_testcase/down.sql @@ -0,0 +1,2 @@ +-- This file should undo anything in `up.sql` +ALTER TABLE submissions_testcases DROP COLUMN testcase_id; \ No newline at end of file diff --git a/anubis-eval/migrations/2023-10-04-120245_add_test_id_to_testcase/up.sql b/anubis-eval/migrations/2023-10-04-120245_add_test_id_to_testcase/up.sql new file mode 100644 index 0000000..5a621ba --- /dev/null +++ b/anubis-eval/migrations/2023-10-04-120245_add_test_id_to_testcase/up.sql @@ -0,0 +1,2 @@ +-- Your SQL goes here +ALTER TABLE submissions_testcases ADD COLUMN testcase_id INTEGER NOT NULL DEFAULT 0; \ No newline at end of file diff --git a/anubis-eval/migrations/2023-10-04-121530_convert_numerics_to_reals/down.sql b/anubis-eval/migrations/2023-10-04-121530_convert_numerics_to_reals/down.sql new file mode 100644 index 0000000..0e0acc3 --- /dev/null +++ b/anubis-eval/migrations/2023-10-04-121530_convert_numerics_to_reals/down.sql @@ -0,0 +1,3 @@ +-- This file should undo anything in `up.sql` +ALTER TABLE submissions_testcases ALTER COLUMN time TYPE decimal; +ALTER TABLE submissions_testcases ALTER COLUMN memory TYPE decimal; diff --git a/anubis-eval/migrations/2023-10-04-121530_convert_numerics_to_reals/up.sql b/anubis-eval/migrations/2023-10-04-121530_convert_numerics_to_reals/up.sql new file mode 100644 index 0000000..e2400a6 --- /dev/null +++ b/anubis-eval/migrations/2023-10-04-121530_convert_numerics_to_reals/up.sql @@ -0,0 +1,3 @@ +-- Your SQL goes here +ALTER TABLE submissions_testcases ALTER COLUMN time TYPE real; +ALTER TABLE submissions_testcases ALTER COLUMN memory TYPE real; \ No newline at end of file diff --git a/anubis-eval/migrations/2023-10-18-174317_add_expected_score_field_for_test_cases/down.sql b/anubis-eval/migrations/2023-10-18-174317_add_expected_score_field_for_test_cases/down.sql new file mode 100644 index 0000000..3c62a23 --- /dev/null +++ b/anubis-eval/migrations/2023-10-18-174317_add_expected_score_field_for_test_cases/down.sql @@ -0,0 +1,2 @@ +-- This file should undo anything in `up.sql` +ALTER TABLE submissions_testcases DROP COLUMN expected_score; \ No newline at end of file diff --git a/anubis-eval/migrations/2023-10-18-174317_add_expected_score_field_for_test_cases/up.sql b/anubis-eval/migrations/2023-10-18-174317_add_expected_score_field_for_test_cases/up.sql new file mode 100644 index 0000000..a09fae4 --- /dev/null +++ b/anubis-eval/migrations/2023-10-18-174317_add_expected_score_field_for_test_cases/up.sql @@ -0,0 +1,2 @@ +-- Your SQL goes here +ALTER TABLE submissions_testcases ADD COLUMN expected_score INTEGER NOT NULL DEFAULT 0; \ No newline at end of file diff --git a/anubis-eval/migrations/2023-10-24-073527_add_avg_time_and_avg_memory_for_submissions/down.sql b/anubis-eval/migrations/2023-10-24-073527_add_avg_time_and_avg_memory_for_submissions/down.sql new file mode 100644 index 0000000..7a74e7c --- /dev/null +++ b/anubis-eval/migrations/2023-10-24-073527_add_avg_time_and_avg_memory_for_submissions/down.sql @@ -0,0 +1,3 @@ +-- This file should undo anything in `up.sql` +ALTER TABLE submissions DROP COLUMN avg_time; +ALTER TABLE submissions DROP COLUMN avg_memory; \ No newline at end of file diff --git a/anubis-eval/migrations/2023-10-24-073527_add_avg_time_and_avg_memory_for_submissions/up.sql b/anubis-eval/migrations/2023-10-24-073527_add_avg_time_and_avg_memory_for_submissions/up.sql new file mode 100644 index 0000000..0a57504 --- /dev/null +++ b/anubis-eval/migrations/2023-10-24-073527_add_avg_time_and_avg_memory_for_submissions/up.sql @@ -0,0 +1,3 @@ +-- Your SQL goes here +ALTER TABLE submissions ADD COLUMN avg_time real DEFAULT 0.0; +ALTER TABLE submissions ADD COLUMN avg_memory real DEFAULT 0.0; \ No newline at end of file diff --git a/anubis-eval/migrations/2023-10-24-105305_remove_score_field_from_testcases/down.sql b/anubis-eval/migrations/2023-10-24-105305_remove_score_field_from_testcases/down.sql new file mode 100644 index 0000000..013dee9 --- /dev/null +++ b/anubis-eval/migrations/2023-10-24-105305_remove_score_field_from_testcases/down.sql @@ -0,0 +1,2 @@ +-- This file should undo anything in `up.sql` +ALTER TABLE submissions_testcases ADD COLUMN score integer NOT NULL DEFAULT 0; \ No newline at end of file diff --git a/anubis-eval/migrations/2023-10-24-105305_remove_score_field_from_testcases/up.sql b/anubis-eval/migrations/2023-10-24-105305_remove_score_field_from_testcases/up.sql new file mode 100644 index 0000000..31b3e4c --- /dev/null +++ b/anubis-eval/migrations/2023-10-24-105305_remove_score_field_from_testcases/up.sql @@ -0,0 +1,2 @@ +-- Your SQL goes here +ALTER TABLE submissions_testcases DROP COLUMN score; \ No newline at end of file diff --git a/anubis-eval/migrations/2023-10-24-180438_add_compile_output_field_for_testcases/down.sql b/anubis-eval/migrations/2023-10-24-180438_add_compile_output_field_for_testcases/down.sql new file mode 100644 index 0000000..008deac --- /dev/null +++ b/anubis-eval/migrations/2023-10-24-180438_add_compile_output_field_for_testcases/down.sql @@ -0,0 +1,2 @@ +-- This file should undo anything in `up.sql` +ALTER TABLE submissions_testcases DROP COLUMN compile_output; \ No newline at end of file diff --git a/anubis-eval/migrations/2023-10-24-180438_add_compile_output_field_for_testcases/up.sql b/anubis-eval/migrations/2023-10-24-180438_add_compile_output_field_for_testcases/up.sql new file mode 100644 index 0000000..6186d37 --- /dev/null +++ b/anubis-eval/migrations/2023-10-24-180438_add_compile_output_field_for_testcases/up.sql @@ -0,0 +1,2 @@ +-- Your SQL goes here +ALTER TABLE submissions_testcases ADD COLUMN compile_output text; \ No newline at end of file diff --git a/anubis-eval/migrations/2023-11-05-151123_add_problems_table/down.sql b/anubis-eval/migrations/2023-11-05-151123_add_problems_table/down.sql new file mode 100644 index 0000000..e182399 --- /dev/null +++ b/anubis-eval/migrations/2023-11-05-151123_add_problems_table/down.sql @@ -0,0 +1,4 @@ +-- This file should undo anything in `up.sql` +ALTER TABLE submissions DROP CONSTRAINT fk_submissions_problems; + +DROP TABLE problems; \ No newline at end of file diff --git a/anubis-eval/migrations/2023-11-05-151123_add_problems_table/up.sql b/anubis-eval/migrations/2023-11-05-151123_add_problems_table/up.sql new file mode 100644 index 0000000..b5e5ccc --- /dev/null +++ b/anubis-eval/migrations/2023-11-05-151123_add_problems_table/up.sql @@ -0,0 +1,13 @@ +-- Your SQL goes here +CREATE TABLE problems ( + id TEXT PRIMARY KEY, + name TEXT NOT NULL, + proposer_id TEXT NOT NULL, + is_published BOOLEAN NOT NULL, + time REAL DEFAULT 0.0, + stack_memory REAL DEFAULT 0.0, + total_memory REAL DEFAULT 0.0 +); + +ALTER TABLE submissions ADD CONSTRAINT fk_submissions_problems + FOREIGN KEY (problem_id) REFERENCES problems (id); \ No newline at end of file diff --git a/anubis-eval/migrations/2024-02-24-222641_add_tests_table/down.sql b/anubis-eval/migrations/2024-02-24-222641_add_tests_table/down.sql new file mode 100644 index 0000000..5df3a93 --- /dev/null +++ b/anubis-eval/migrations/2024-02-24-222641_add_tests_table/down.sql @@ -0,0 +1,2 @@ +-- This file should undo anything in `up.sql` +DROP TABLE tests; diff --git a/anubis-eval/migrations/2024-02-24-222641_add_tests_table/up.sql b/anubis-eval/migrations/2024-02-24-222641_add_tests_table/up.sql new file mode 100644 index 0000000..bde7c10 --- /dev/null +++ b/anubis-eval/migrations/2024-02-24-222641_add_tests_table/up.sql @@ -0,0 +1,10 @@ +-- Your SQL goes here +CREATE TABLE tests ( + id INTEGER PRIMARY KEY, + problem_id TEXT NOT NULL, + score INTEGER NOT NULL, + input_url TEXT NOT NULL, + output_url TEXT NOT NULL +); + +ALTER TABLE tests ADD CONSTRAINT problem_id_fk FOREIGN KEY (problem_id) REFERENCES problems(id); \ No newline at end of file diff --git a/anubis-eval/migrations/2024-02-28-152845_add_composite_pk_to_tests_table/down.sql b/anubis-eval/migrations/2024-02-28-152845_add_composite_pk_to_tests_table/down.sql new file mode 100644 index 0000000..441dcb2 --- /dev/null +++ b/anubis-eval/migrations/2024-02-28-152845_add_composite_pk_to_tests_table/down.sql @@ -0,0 +1,6 @@ +-- This file should undo anything in `up.sql` +ALTER TABLE tests +DROP CONSTRAINT tests_pkey; + +ALTER TABLE tests +ADD PRIMARY KEY (id); \ No newline at end of file diff --git a/anubis-eval/migrations/2024-02-28-152845_add_composite_pk_to_tests_table/up.sql b/anubis-eval/migrations/2024-02-28-152845_add_composite_pk_to_tests_table/up.sql new file mode 100644 index 0000000..58ac107 --- /dev/null +++ b/anubis-eval/migrations/2024-02-28-152845_add_composite_pk_to_tests_table/up.sql @@ -0,0 +1,6 @@ +-- Your SQL goes here +ALTER TABLE tests +DROP CONSTRAINT tests_pkey; + +ALTER TABLE tests +ADD PRIMARY KEY (id, problem_id); diff --git a/anubis-eval/src/api/catchers.rs b/anubis-eval/src/api/catchers.rs new file mode 100644 index 0000000..c5c8801 --- /dev/null +++ b/anubis-eval/src/api/catchers.rs @@ -0,0 +1,29 @@ +use rocket::serde::json::{json, Value}; +use rocket::{catch, error, options}; + +#[catch(401)] +pub fn unauthorized_catcher(req: &rocket::Request) -> Value { + error!("Unauthorized request: {:?}", req); + json!({ + "error": "Access token has expired or is invalid" + }) +} + +#[catch(404)] +pub fn not_found_catcher(req: &rocket::Request) -> Value { + error!("Not found: {:?}", req); + json!({ + "error": "Resource not found" + }) +} + +#[catch(500)] +pub fn internal_error_catcher(req: &rocket::Request) -> Value { + error!("Internal error: {:?}", req); + json!({ + "error": "Internal server error" + }) +} + +#[options("/<_..>")] +pub fn cors_preflight() {} diff --git a/anubis-eval/src/api/create_submission_endpoint.rs b/anubis-eval/src/api/create_submission_endpoint.rs new file mode 100644 index 0000000..5498b9f --- /dev/null +++ b/anubis-eval/src/api/create_submission_endpoint.rs @@ -0,0 +1,374 @@ +use std::str::FromStr; + +use rocket::futures::future::join_all; +use rocket::serde::json::Json; +use rocket::serde::{Deserialize, Serialize}; +use rocket::{debug, error, info, post, Responder}; +use rocket_validation::{Validate, Validated}; +use uuid::Uuid; + +use crate::api::middleware::auth::JwtContext; +use crate::application::dapr_client::DaprClient; +use crate::config::di::CONFIG; +use crate::contracts::create_submission_dtos::CreateSubmissionResponseDto; +use crate::contracts::dapr_dtos::{CreateSubmissionBatchDto, CreateSubmissionTestCaseDto}; +use crate::domain::application_error::ApplicationError; +use crate::domain::submission::{Language, Submission, TestCase, TestCaseStatus}; +use crate::infrastructure::db::Db; + +#[derive(Debug, Serialize, Deserialize, Validate)] +#[serde(crate = "rocket::serde")] +pub struct CreateSubmissionRequest { + problem_id: Uuid, + language: String, + #[validate(length(min = 1, max = 10000))] + source_code: String, +} + +#[derive(Responder)] +#[response(status = 201, content_type = "json")] +pub struct CreateSubmissionResponse { + dto: CreateSubmissionResponseDto, +} + +#[post("/submissions", format = "json", data = "")] +pub async fn create_submission( + submission: Validated>, + user_ctx: JwtContext, + dapr_client: DaprClient, + db: Db, +) -> Result { + info!("Create Submission Request: {:?}", submission); + + let submission = submission.into_inner(); + let user_id = Uuid::from_str(user_ctx.claims.sub.as_str()).map_err(|_| { + ApplicationError::AuthError("Failed to parse user id from token".to_string()) + })?; + let language: Language = submission.language.clone().into(); + let problem_id = submission.problem_id; + + // DB - Get Eval Metadata for Problem + let eval_metadata = dapr_client + .get_eval_metadata_for_problem(&problem_id) + .await?; + + info!("Eval Metadata retrieved: {:?}", eval_metadata); + + // Check if the submission is allowed to be sent for the problem + debug!( + "is_published: {}, proposer_id: {}, user_id: {}", + eval_metadata.is_published, eval_metadata.proposer_id, user_id + ); + + if !eval_metadata.is_published && eval_metadata.proposer_id != user_id { + error!("Cannot submit for unpublished problem"); + return Err(ApplicationError::CannotSubmitForUnpublishedProblemError); + } + + // FIREBASE - Get Problem Test Contents + let mut test_cases = join_all(eval_metadata.tests.iter().map(|test| async { + let (input, output) = dapr_client + .get_input_and_output_for_test( + test.test_id, + eval_metadata.problem_id, + (test.input_url.clone(), test.output_url.clone()), + ) + .await?; + + Ok(CreateSubmissionTestCaseDto { + testcase_id: test.test_id, + source_code: submission.source_code.to_string(), + language: language.clone().into(), + stdin: input, + time: eval_metadata.time, + memory_limit: eval_metadata.total_memory * 1000_f32, + stack_limit: eval_metadata.stack_memory * 1000_f32, + expected_output: output, + }) + })) + .await + .into_iter() + .collect::, ApplicationError>>()?; + + test_cases.sort_by(|a, b| a.testcase_id.cmp(&b.testcase_id)); + + let submission_batch = CreateSubmissionBatchDto { + submissions: test_cases, + }; + + info!("Creating Submission Batch"); + + // JUDGE0 - Create Submission Batch + let submission_tokens = join_all( + submission_batch + .submissions + .chunks(CONFIG.eval_batch_size as usize) + .map(|submission_batch| async { + dapr_client + .create_submission_batch(&CreateSubmissionBatchDto { + submissions: submission_batch.to_vec(), + }) + .await + }), + ) + .await + .into_iter() + .collect::, ApplicationError>>()? + .into_iter() + .flatten() + .collect::>(); + + info!( + "Submission Tokens received from Judge0 Evaluator: {:?}", + submission_tokens + ); + + // POSTGRES - Create Submission and mark it as pending alongside its test cases + let submission_id = Uuid::new_v4(); + let test_cases = submission_tokens + .iter() + .zip(eval_metadata.tests.iter()) + .map(|(token_dto, test_dto)| { + TestCase::new( + Uuid::from_str(&token_dto.token).unwrap(), + submission_id, + test_dto.test_id as i32, + TestCaseStatus::Pending, + 0_f32, + 0_f32, + test_dto.score as i32, + None, + None, + None, + None, + ) + }) + .collect::>(); + + let submission = Submission::new_in_pending( + submission_id, + user_id, + submission.problem_id, + language, + submission.source_code.clone(), + test_cases, + ); + + info!("Saving Submission to database: {:?}", submission.id()); + + db.run(move |conn| match submission.insert(conn) { + Ok(_) => { + info!("Submission saved to database"); + Ok(CreateSubmissionResponse { + dto: CreateSubmissionResponseDto { + id: submission.id().to_string(), + }, + }) + } + Err(e) => { + error!("Error saving submission to database: {:?}", e); + Err(e) + } + }) + .await +} + +#[cfg(test)] +mod tests { + use std::str::FromStr; + + use rocket::http::{Header, Status}; + use uuid::Uuid; + + use crate::api::create_submission_endpoint::CreateSubmissionRequest; + use crate::api::middleware::auth::tests::encode_jwt; + use crate::config::di::DB_CONN; + use crate::contracts::create_submission_dtos::CreateSubmissionResponseDto; + use crate::domain::submission::Submission; + use crate::tests::common::{Result, ROCKET_CLIENT}; + use crate::tests::problem::tests::PROBLEMS; + use crate::tests::user::tests::{User, UserProfile}; + + #[tokio::test] + async fn unauthenticated_user_cannot_create_submission() -> Result<()> { + // Arrange + let client = ROCKET_CLIENT.get().await.clone(); + let problem = PROBLEMS.get("SumAB")?; + let submission_req = CreateSubmissionRequest { + problem_id: Uuid::from_str(problem.id.as_str()).unwrap(), + language: "Rust".to_string(), + source_code: "fn main() { let mut s = String::new(); std::io::stdin().read_line(&mut s).unwrap(); let v: Vec = s.trim().split_whitespace().map(|x| x.parse().unwrap()).collect(); println!(\"{}\", v[0] + v[1]); }".to_string(), + }; + + // Act + let response = client + .post("/api/submissions") + .header(Header::new("Content-Type", "application/json")) + .body(serde_json::to_string(&submission_req)?) + .dispatch() + .await; + + // Assert + assert_eq!( + response.status(), + Status::Unauthorized, + "Unauthenticated user cannot create submission" + ); + + Ok(()) + } + + #[tokio::test] + async fn authenticated_user_can_create_submission_for_unpublished_problem_if_proposer( + ) -> Result<()> { + // Arrange + let client = ROCKET_CLIENT.get().await.clone(); + let problem = PROBLEMS.get("DiffAB")?; + let token = encode_jwt(User::get(UserProfile::Admin))?; + + let submission_req = CreateSubmissionRequest { + problem_id: Uuid::from_str(problem.id.as_str()).unwrap(), + language: "Rust".to_string(), + source_code: "fn main() { let mut s = String::new(); std::io::stdin().read_line(&mut s).unwrap(); let v: Vec = s.trim().split_whitespace().map(|x| x.parse().unwrap()).collect(); println!(\"{}\", v[0] - v[1]); }".to_string(), + }; + + // Act + let response = client + .post("/api/submissions") + .header(Header::new("Content-Type", "application/json")) + .header(Header::new("Authorization", format!("Bearer {}", token))) + .body(serde_json::to_string(&submission_req)?) + .dispatch() + .await; + + // Assert + assert_eq!( + response.status(), + Status::Created, + "Authenticated user can create submission for unpublished problem if proposer" + ); + + let body: CreateSubmissionResponseDto = + serde_json::from_str(&response.into_string().await.unwrap())?; + let conn = DB_CONN.clone(); + let mut conn = conn.lock().await; + + let (submission, _) = Submission::find_by_id(&body.id, &mut conn)?; + + // clear the submission after evaluation + Submission::delete_by_id(&body.id, &mut conn)?; + + assert_eq!(submission.id(), Uuid::from_str(&body.id)?); + + Ok(()) + } + + #[tokio::test] + async fn authenticated_user_cannot_create_submission_for_unpublished_problem() -> Result<()> { + // Arrange + let client = ROCKET_CLIENT.get().await.clone(); + let problem = PROBLEMS.get("DiffAB")?; + let token = encode_jwt(User::get(UserProfile::Proposer))?; + + let submission_req = CreateSubmissionRequest { + problem_id: Uuid::from_str(problem.id.as_str()).unwrap(), + language: "Rust".to_string(), + source_code: "fn main() { let mut s = String::new(); std::io::stdin().read_line(&mut s).unwrap(); let v: Vec = s.trim().split_whitespace().map(|x| x.parse().unwrap()).collect(); println!(\"{}\", v[0] - v[1]); }".to_string(), + }; + + // Act + let response = client + .post("/api/submissions") + .header(Header::new("Content-Type", "application/json")) + .header(Header::new("Authorization", format!("Bearer {}", token))) + .body(serde_json::to_string(&submission_req)?) + .dispatch() + .await; + + // Assert + assert_eq!( + response.status(), + Status::Forbidden, + "Authenticated user cannot create submission for unpublished problem" + ); + + Ok(()) + } + + #[tokio::test] + async fn authenticated_user_can_create_submission() -> Result<()> { + // Arrange + let client = ROCKET_CLIENT.get().await.clone(); + let problem = PROBLEMS.get("SumAB")?; + let token = encode_jwt(User::get(UserProfile::Ordinary))?; + + let submission_req = CreateSubmissionRequest { + problem_id: Uuid::from_str(problem.id.as_str()).unwrap(), + language: "Rust".to_string(), + source_code: "fn main() { let mut s = String::new(); std::io::stdin().read_line(&mut s).unwrap(); let v: Vec = s.trim().split_whitespace().map(|x| x.parse().unwrap()).collect(); println!(\"{}\", v[0] + v[1]); }".to_string(), + }; + + // Act + let response = client + .post("/api/submissions") + .header(Header::new("Content-Type", "application/json")) + .header(Header::new("Authorization", format!("Bearer {}", token))) + .body(serde_json::to_string(&submission_req)?) + .dispatch() + .await; + + // Assert + assert_eq!( + response.status(), + Status::Created, + "Authenticated user can create submission and it is accepted" + ); + + let body: CreateSubmissionResponseDto = + serde_json::from_str(&response.into_string().await.unwrap())?; + let conn = DB_CONN.clone(); + let mut conn = conn.lock().await; + + let (submission, _) = Submission::find_by_id(&body.id, &mut conn)?; + + // clear the submission after evaluation + Submission::delete_by_id(&body.id, &mut conn)?; + + assert_eq!(submission.id(), Uuid::from_str(&body.id)?); + + // let submission_id = Arc::new(Mutex::new(body.id.clone())); + // let conn = DB_CONN.clone(); + // + // let eval_task = async move { + // let mut conn = conn.lock().await; + // let submission_id = submission_id.lock().await.clone(); + // let mut ticker = tokio::time::interval(Duration::from_millis(100)); + // + // loop { + // ticker.tick().await; + // let (submission, _) = Submission::find_by_id(&submission_id, &mut conn).unwrap(); + // if submission.status() != SubmissionStatus::Evaluating { + // return Ok::(submission); + // } + // } + // }; + // let eval_handle = tokio::spawn(eval_task); + // + // // clear the submission after evaluation + // let conn = DB_CONN.clone(); + // let mut conn = conn.lock().await; + // let submission_id = body.id; + // Submission::delete_by_id(&submission_id, &mut conn)?; + // + // match timeout(Duration::from_secs(5), eval_handle).await { + // Ok(Ok(Ok(submission))) => { + // assert_eq!(submission.status(), SubmissionStatus::Accepted); + // } + // _ => { + // panic!("TIMEOUT: Submission did not complete evaluation in time"); + // } + // } + + Ok(()) + } +} diff --git a/anubis-eval/src/api/evaluate_submission_job.rs b/anubis-eval/src/api/evaluate_submission_job.rs new file mode 100644 index 0000000..4ccb3f4 --- /dev/null +++ b/anubis-eval/src/api/evaluate_submission_job.rs @@ -0,0 +1,143 @@ +use crate::application::dapr_client::DaprClient; +use crate::config::di::Atomic; +use crate::contracts::dapr_dtos::TestCaseTokenDto; +use crate::domain::application_error::ApplicationError; +use crate::domain::submission::{Submission, SubmissionStatus, TestCase, TestCaseStatus}; +use diesel::PgConnection; +use futures::future::join_all; +use rocket::error; +use rocket::log::private::{debug, info}; +use std::ops::DerefMut; +use std::str::FromStr; +use uuid::Uuid; + +pub async fn evaluate_pending_submissions( + dapr_client: Atomic, + db: Atomic, +) -> Result<(), ApplicationError> { + info!("Evaluating pending submissions..."); + + // DB - get all pending submissions + let pending_submissions_ids = { + let db = db.clone(); + let mut db = db.lock().await; + + let pending_submissions_ids = + Submission::find_by_status(SubmissionStatus::Evaluating, db.deref_mut())?; + debug!("Pending submissions: {:?}", pending_submissions_ids); + + pending_submissions_ids + }; + + // DB - for each submission, get the pending/running test cases + join_all(pending_submissions_ids.iter().map(|submission_id| async { + evaluate_submission(submission_id, dapr_client.clone(), db.clone()).await + })) + .await + .into_iter() + .filter(|result| result.is_err()) + .for_each(|e| error!("Failed to evaluate submission: {:?}", e)); + + Ok(()) +} + +async fn evaluate_submission( + submission_id: &String, + dapr_client: Atomic, + db: Atomic, +) -> Result<(), ApplicationError> { + info!("Evaluating submission: {}", submission_id); + + let mut db = db.lock().await; + let dapr_client = dapr_client.lock().await; + + let pending_test_cases_tokens = TestCase::find_by_status_and_submission_id( + TestCaseStatus::Pending, + submission_id, + db.deref_mut(), + )?; + let running_test_cases_tokens = TestCase::find_by_status_and_submission_id( + TestCaseStatus::Running, + submission_id, + db.deref_mut(), + )?; + + let pending_test_cases_tokens = pending_test_cases_tokens + .into_iter() + .chain(running_test_cases_tokens.into_iter()) + .map(|token| TestCaseTokenDto { token }) + .collect::>(); + debug!( + "Pending test cases for submission {:?}: {:?}", + submission_id, pending_test_cases_tokens + ); + + if pending_test_cases_tokens.is_empty() { + // decide if submission is accepted or rejected + let testcases = TestCase::find_by_submission_id(submission_id, db.deref_mut())?; + + let submission_status = if testcases + .iter() + .all(|testcase| testcase.status() == TestCaseStatus::Accepted) + { + SubmissionStatus::Accepted + } else { + SubmissionStatus::Rejected + }; + + let submission_score = testcases + .iter() + .map(|testcase| match testcase.status() { + TestCaseStatus::Accepted => testcase.expected_score(), + _ => 0, + }) + .sum::(); + + let submission_avg_time = testcases + .iter() + .map(|testcase| testcase.time()) + .sum::() + / testcases.len() as f32; + + let submission_avg_memory = testcases + .iter() + .map(|testcase| testcase.memory()) + .sum::() + / testcases.len() as f32; + + let (submission_avg_time, submission_avg_memory) = match submission_status { + SubmissionStatus::Accepted => (Some(submission_avg_time), Some(submission_avg_memory)), + _ => (None, None), + }; + + let submission = Submission::new_with_metadata( + Uuid::from_str(submission_id).unwrap(), + submission_status, + submission_score, + submission_avg_time, + submission_avg_memory, + ); + + // DB - update submission + submission.update_evaluation_metadata(db.deref_mut())?; + } else { + // JUDGE0 - get test case results + let test_cases_results = dapr_client + .get_submission_batch(&pending_test_cases_tokens) + .await?; + debug!( + "Test case results for submission {:?}: {:?}", + submission_id, test_cases_results + ); + + // DB - construct submission and test cases from DTOs and update them + let test_cases = test_cases_results + .submissions + .into_iter() + .map(|submission_testcase| submission_testcase.into()) + .collect::>(); + TestCase::update_testcases(test_cases, db.deref_mut())?; + } + + Ok(()) +} diff --git a/anubis-eval/src/api/get_highest_score_submissions.rs b/anubis-eval/src/api/get_highest_score_submissions.rs new file mode 100644 index 0000000..b68fa59 --- /dev/null +++ b/anubis-eval/src/api/get_highest_score_submissions.rs @@ -0,0 +1,197 @@ +use crate::api::middleware::auth::JwtContext; +use crate::contracts::get_highest_score_submissions_dtos::GetHighestScoreSubmissionsDto; +use crate::domain::application_error::ApplicationError; +use crate::domain::submission::Submission; +use crate::infrastructure::db::Db; +use rocket::{error, get, info, Responder}; +use std::str::FromStr; +use uuid::Uuid; + +#[derive(Responder)] +#[response(status = 200, content_type = "json")] +pub struct GetSubmissionsResponse { + dto: GetHighestScoreSubmissionsDto, +} + +#[get("/submissions/user/?")] +pub async fn get_highest_score_submissions( + user_id: String, + problem_id: Option, + user_ctx: JwtContext, + db: Db, +) -> Result { + let current_user_id = Uuid::from_str(user_ctx.claims.sub.as_str()).map_err(|_| { + ApplicationError::AuthError("Failed to parse user id from token".to_string()) + })?; + + // Filter out submissions which should not be visible to the user + db.run(move |conn| { + match Submission::find_highest_score_submissions_by_user_id( + ¤t_user_id, + &user_id, + &problem_id, + conn, + ) { + Ok(submissions) => { + info!("Submissions retrieved: {:?}", submissions); + Ok(GetSubmissionsResponse { + dto: submissions.into(), + }) + } + Err(e) => { + error!("Failed to get submissions: {:?}", e); + Err(e) + } + } + }) + .await +} + +#[cfg(test)] +mod tests { + use crate::api::middleware::auth::tests::encode_jwt; + use crate::contracts::get_highest_score_submissions_dtos::GetHighestScoreSubmissionsDto; + use crate::tests::common::{Result, ROCKET_CLIENT}; + use crate::tests::problem::tests::PROBLEMS; + use crate::tests::user::tests::{User, UserProfile}; + use rocket::http::{Header, Status}; + + #[tokio::test] + async fn unauthenticated_user_cannot_get_submissions() -> Result<()> { + // Arrange + let client = ROCKET_CLIENT.get().await.clone(); + let user_profile = User::get(UserProfile::Ordinary); + + // Act + let response = client + .get(format!("/api/submissions/user/{}", user_profile.id)) + .dispatch() + .await; + + // Assert + assert_eq!( + response.status(), + Status::Unauthorized, + "Unauthenticated user cannot get highest score submissions" + ); + + Ok(()) + } + + #[tokio::test] + async fn authenticated_user_can_get_own_submissions() -> Result<()> { + // Arrange + let client = ROCKET_CLIENT.get().await.clone(); + let user_profile = User::get(UserProfile::Ordinary); + let token = encode_jwt(user_profile.clone())?; + + // Act + let response = client + .get(format!("/api/submissions/user/{}", user_profile.id)) + .header(Header::new("Authorization", format!("Bearer {}", token))) + .dispatch() + .await; + + // Assert + assert_eq!( + response.status(), + Status::Ok, + "Authenticated user can get own highest score submissions" + ); + + let body: GetHighestScoreSubmissionsDto = + serde_json::from_str(&response.into_string().await.unwrap())?; + assert_eq!(body.submissions.len(), 2); + + Ok(()) + } + + #[tokio::test] + async fn authenticated_user_can_get_submissions_for_specific_problem() -> Result<()> { + // Arrange + let client = ROCKET_CLIENT.get().await.clone(); + let user_profile = User::get(UserProfile::Ordinary); + let problem = PROBLEMS.get("SumAB")?; + let token = encode_jwt(user_profile.clone())?; + + // Act + let response = client + .get(format!( + "/api/submissions/user/{}?problem_id={}", + user_profile.id, problem.id + )) + .header(Header::new("Authorization", format!("Bearer {}", token))) + .dispatch() + .await; + + // Assert + assert_eq!( + response.status(), + Status::Ok, + "Authenticated user can get highest score submissions for specific problem" + ); + + let body: GetHighestScoreSubmissionsDto = + serde_json::from_str(&response.into_string().await.unwrap())?; + assert_eq!(body.submissions.len(), 1); + + Ok(()) + } + + #[tokio::test] + async fn authenticated_user_can_get_submissions_as_proposer() -> Result<()> { + // Arrange + let client = ROCKET_CLIENT.get().await.clone(); + let user_profile = User::get(UserProfile::Ordinary); + let token = encode_jwt(User::get(UserProfile::Admin))?; + + // Act + let response = client + .get(format!("/api/submissions/user/{}", user_profile.id)) + .header(Header::new("Authorization", format!("Bearer {}", token))) + .dispatch() + .await; + + // Assert + assert_eq!( + response.status(), + Status::Ok, + "Authenticated user can get highest score submissions as proposer" + ); + + let body: GetHighestScoreSubmissionsDto = + serde_json::from_str(&response.into_string().await.unwrap())?; + assert_eq!(body.submissions.len(), 2); + + Ok(()) + } + + #[tokio::test] + async fn authenticated_user_can_get_submissions_only_for_published_problems_if_not_proposer( + ) -> Result<()> { + // Arrange + let client = ROCKET_CLIENT.get().await.clone(); + let user_profile = User::get(UserProfile::Ordinary); + let token = encode_jwt(User::get(UserProfile::Proposer))?; + + // Act + let response = client + .get(format!("/api/submissions/user/{}", user_profile.id)) + .header(Header::new("Authorization", format!("Bearer {}", token))) + .dispatch() + .await; + + // Assert + assert_eq!( + response.status(), + Status::Ok, + "Authenticated user can get highest score submissions only for published problems if not proposer" + ); + + let body: GetHighestScoreSubmissionsDto = + serde_json::from_str(&response.into_string().await.unwrap())?; + assert_eq!(body.submissions.len(), 1); + + Ok(()) + } +} diff --git a/anubis-eval/src/api/get_submission_endpoint.rs b/anubis-eval/src/api/get_submission_endpoint.rs new file mode 100644 index 0000000..585e429 --- /dev/null +++ b/anubis-eval/src/api/get_submission_endpoint.rs @@ -0,0 +1,288 @@ +use crate::api::middleware::auth::JwtContext; +use crate::application::dapr_client::DaprClient; +use crate::contracts::get_submission_dtos::GetSubmissionWithTestCasesDto; +use crate::domain::application_error::ApplicationError; +use crate::domain::submission::Submission; +use crate::infrastructure::db::Db; +use rocket::{error, get, info, Responder}; +use std::str::FromStr; +use tokio::runtime::Handle; +use uuid::Uuid; + +#[derive(Responder)] +#[response(status = 200, content_type = "json")] +pub struct GetSubmissionResponse { + dto: GetSubmissionWithTestCasesDto, +} + +#[get("/submissions/")] +pub async fn get_submission( + submission_id: String, + user_ctx: JwtContext, + dapr_client: DaprClient, + db: Db, +) -> Result { + let user_id = Uuid::from_str(user_ctx.claims.sub.as_str()).map_err(|_| { + ApplicationError::AuthError("Failed to parse user id from token".to_string()) + })?; + + info!("Get Submission Request: {:?}", submission_id); + + db.run(move |conn| { + match Submission::find_by_id(&submission_id, conn) { + Ok((submission, problem)) => { + // Check if the user is allowed to view the submission + let handle = Handle::current(); + let _ = handle.enter(); + + let eval_metadata = futures::executor::block_on( + dapr_client.get_eval_metadata_for_problem(&submission.problem_id()), + )?; + + info!("Eval Metadata retrieved: {:?}", eval_metadata); + + if !eval_metadata.is_published + && eval_metadata.proposer_id != user_id + && submission.user_id() != user_id + { + error!("Cannot view submission for unpublished problem"); + return Err(ApplicationError::CannotViewSubmissionsForUnpublishedProblemError); + } + + // Remove the source code from the submission if the user is not allowed to view it + let submission = match submission.user_is_allowed_to_view_source_code( + &user_id, + &eval_metadata.proposer_id, + conn, + ) { + false => { + info!("User is not allowed to view source code for submission"); + submission.without_source_code() + } + true => { + info!("User is allowed to view source code for submission"); + submission + } + }; + + info!("Submission retrieved: {:?}", submission); + Ok(GetSubmissionResponse { + dto: (submission, problem).into(), + }) + } + Err(e) => { + error!("Error retrieving submission: {:?}", e); + Err(e) + } + } + }) + .await +} + +#[cfg(test)] +mod tests { + use crate::api::middleware::auth::tests::encode_jwt; + use crate::contracts::get_submission_dtos::GetSubmissionWithTestCasesDto; + use crate::tests::common::{Result, ROCKET_CLIENT}; + use crate::tests::submission::tests::SUBMISSIONS; + use crate::tests::user::tests::{User, UserProfile}; + use rocket::http::{Header, Status}; + use uuid::Uuid; + + #[tokio::test] + async fn unauthenticated_user_cannot_get_submission() -> Result<()> { + // Arrange + let client = ROCKET_CLIENT.get().await.clone(); + let submission = SUBMISSIONS.get("Ordinary_SumAB_Submission1")?; + + // Act + let response = client + .get(format!("/api/submissions/{}", submission.id)) + .dispatch() + .await; + + // Assert + assert_eq!( + response.status(), + Status::Unauthorized, + "Unauthenticated user cannot get submission" + ); + + Ok(()) + } + + #[tokio::test] + async fn authenticated_user_can_get_own_submission() -> Result<()> { + // Arrange + let client = ROCKET_CLIENT.get().await.clone(); + let token = encode_jwt(User::get(UserProfile::Ordinary))?; + let submission = SUBMISSIONS.get("Ordinary_SumAB_Submission1")?; + + // Act + let response = client + .get(format!("/api/submissions/{}", submission.id)) + .header(Header::new("Authorization", format!("Bearer {}", token))) + .dispatch() + .await; + + // Assert + assert_eq!( + response.status(), + Status::Ok, + "Authenticated user can get own submission" + ); + + let body: GetSubmissionWithTestCasesDto = + serde_json::from_str(&response.into_string().await.unwrap())?; + assert_eq!(body.submission.id, submission.id); + assert_eq!( + body.submission.source_code, + Some(submission.source_code.clone()) + ); + + Ok(()) + } + + #[tokio::test] + async fn authenticated_user_can_get_other_user_submission_without_source_code_for_still_unsolved_problem( + ) -> Result<()> { + // Arrange + let client = ROCKET_CLIENT.get().await.clone(); + let token = encode_jwt(User::get(UserProfile::Admin))?; + let submission = SUBMISSIONS.get("Ordinary_SumAB_Submission1")?; + + // Act + let response = client + .get(format!("/api/submissions/{}", submission.id)) + .header(Header::new("Authorization", format!("Bearer {}", token))) + .dispatch() + .await; + + // Assert + assert_eq!( + response.status(), + Status::Ok, + "Authenticated user can get other user's submission without source code for still unsolved problem" + ); + + let body: GetSubmissionWithTestCasesDto = + serde_json::from_str(&response.into_string().await.unwrap())?; + assert_eq!(body.submission.id, submission.id); + assert_eq!(body.submission.source_code, None); + + Ok(()) + } + + #[tokio::test] + async fn authenticated_user_can_get_other_user_submission_with_source_code_for_already_solved_problem( + ) -> Result<()> { + // Arrange + let client = ROCKET_CLIENT.get().await.clone(); + let token = encode_jwt(User::get(UserProfile::Proposer))?; + let submission = SUBMISSIONS.get("Ordinary_SumAB_Submission1")?; + + // Act + let response = client + .get(format!("/api/submissions/{}", submission.id)) + .header(Header::new("Authorization", format!("Bearer {}", token))) + .dispatch() + .await; + + // Assert + assert_eq!( + response.status(), + Status::Ok, + "Authenticated user can get other user's submission with source code for already solved problem" + ); + + let body: GetSubmissionWithTestCasesDto = + serde_json::from_str(&response.into_string().await.unwrap())?; + assert_eq!(body.submission.id, submission.id); + assert_eq!( + body.submission.source_code, + Some(submission.source_code.clone()) + ); + + Ok(()) + } + + #[tokio::test] + async fn authenticated_user_can_get_own_submission_for_prior_published_problem() -> Result<()> { + // Arrange + let client = ROCKET_CLIENT.get().await.clone(); + let token = encode_jwt(User::get(UserProfile::Ordinary))?; + let submission = SUBMISSIONS.get("Ordinary_DiffAB_Submission5")?; + + // Act + let response = client + .get(format!("/api/submissions/{}", submission.id)) + .header(Header::new("Authorization", format!("Bearer {}", token))) + .dispatch() + .await; + + // Assert + assert_eq!( + response.status(), + Status::Ok, + "Authenticated user can get own submission for prior published problem" + ); + + let body: GetSubmissionWithTestCasesDto = + serde_json::from_str(&response.into_string().await.unwrap())?; + assert_eq!(body.submission.id, submission.id); + assert_eq!( + body.submission.source_code, + Some(submission.source_code.clone()) + ); + + Ok(()) + } + + #[tokio::test] + async fn authenticated_user_cannot_get_non_existent_submission() -> Result<()> { + // Arrange + let client = ROCKET_CLIENT.get().await.clone(); + let token = encode_jwt(User::get(UserProfile::Ordinary))?; + + // Act + let response = client + .get(format!("/api/submissions/{}", Uuid::new_v4().to_string())) + .header(Header::new("Authorization", format!("Bearer {}", token))) + .dispatch() + .await; + + // Assert + assert_eq!( + response.status(), + Status::NotFound, + "Authenticated user cannot get non-existent submission" + ); + + Ok(()) + } + + #[tokio::test] + async fn authenticated_user_cannot_get_other_user_submission_for_unpublished_problem( + ) -> Result<()> { + // Arrange + let client = ROCKET_CLIENT.get().await.clone(); + let token = encode_jwt(User::get(UserProfile::Proposer))?; + let submission = SUBMISSIONS.get("Admin_DiffAB_Submission4")?; + + // Act + let response = client + .get(format!("/api/submissions/{}", submission.id)) + .header(Header::new("Authorization", format!("Bearer {}", token))) + .dispatch() + .await; + + // Assert + assert_eq!( + response.status(), + Status::Forbidden, + "Authenticated user cannot get other user's submission for unpublished problem" + ); + + Ok(()) + } +} diff --git a/anubis-eval/src/api/get_submissions_endpoint.rs b/anubis-eval/src/api/get_submissions_endpoint.rs new file mode 100644 index 0000000..7e76af9 --- /dev/null +++ b/anubis-eval/src/api/get_submissions_endpoint.rs @@ -0,0 +1,158 @@ +use crate::api::middleware::auth::JwtContext; +use crate::contracts::fps_dtos::FpsSubmissionDto; +use crate::contracts::get_submissions_dtos::GetSubmissionsDto; +use crate::domain::application_error::ApplicationError; +use crate::domain::submission::Submission; +use crate::infrastructure::db::Db; +use rocket::{error, get, info, Responder}; +use std::str::FromStr; +use uuid::Uuid; + +#[derive(Responder)] +#[response(status = 200, content_type = "json")] +pub struct GetSubmissionsResponse { + dto: GetSubmissionsDto, +} + +#[get("/submissions?")] +pub async fn get_submissions( + fps_dto: FpsSubmissionDto, + user_ctx: JwtContext, + db: Db, +) -> Result { + let user_id = Uuid::from_str(user_ctx.claims.sub.as_str()).map_err(|_| { + ApplicationError::AuthError("Failed to parse user id from token".to_string()) + })?; + + info!("Get Submissions Request: {:?}", fps_dto); + + // Filter out submissions which should not be visible to the user + db.run( + move |conn| match Submission::find_all(fps_dto, &user_id, conn) { + Ok(submissions) => { + info!("Submissions retrieved: {:?}", submissions); + Ok(GetSubmissionsResponse { + dto: submissions.into(), + }) + } + Err(e) => { + error!("Failed to get submissions: {:?}", e); + Err(e) + } + }, + ) + .await +} + +#[cfg(test)] +mod tests { + use crate::api::middleware::auth::tests::encode_jwt; + use crate::contracts::get_submissions_dtos::GetSubmissionsDto; + use crate::tests::common::{Result, ROCKET_CLIENT}; + use crate::tests::user::tests::{User, UserProfile}; + use rocket::http::{Header, Status}; + + #[tokio::test] + async fn unauthenticated_user_cannot_get_submissions() -> Result<()> { + // Arrange + let client = ROCKET_CLIENT.get().await.clone(); + + // Act + let response = client.get("/api/submissions").dispatch().await; + + // Assert + assert_eq!( + response.status(), + Status::Unauthorized, + "Unauthenticated user cannot get submissions" + ); + + Ok(()) + } + + #[tokio::test] + async fn authenticated_user_can_get_submissions_including_own_for_prior_published_problem( + ) -> Result<()> { + // Arrange + let client = ROCKET_CLIENT.get().await.clone(); + let token = encode_jwt(User::get(UserProfile::Ordinary))?; + + // Act + let response = client + .get("/api/submissions") + .header(Header::new("Authorization", format!("Bearer {}", token))) + .dispatch() + .await; + + // Assert + assert_eq!( + response.status(), + Status::Ok, + "Authenticated user can get submissions including own for prior published problem" + ); + + let body: GetSubmissionsDto = serde_json::from_str(&response.into_string().await.unwrap())?; + assert_eq!(body.items, 4); + assert_eq!(body.total_pages, 1); + assert_eq!(body.submissions.len(), 4); + + Ok(()) + } + + #[tokio::test] + async fn authenticated_user_can_get_submissions_including_those_for_own_unpublished_problem( + ) -> Result<()> { + // Arrange + let client = ROCKET_CLIENT.get().await.clone(); + let token = encode_jwt(User::get(UserProfile::Admin))?; + + // Act + let response = client + .get("/api/submissions") + .header(Header::new("Authorization", format!("Bearer {}", token))) + .dispatch() + .await; + + // Assert + assert_eq!( + response.status(), + Status::Ok, + "Authenticated user can get submissions including those for own unpublished problem" + ); + + let body: GetSubmissionsDto = serde_json::from_str(&response.into_string().await.unwrap())?; + assert_eq!(body.items, 5); + assert_eq!(body.total_pages, 1); + assert_eq!(body.submissions.len(), 5); + + Ok(()) + } + + #[tokio::test] + async fn authenticated_user_can_get_submissions() -> Result<()> { + // Arrange + let client = ROCKET_CLIENT.get().await.clone(); + let token = encode_jwt(User::get(UserProfile::Proposer))?; + + // Act + let response = client + .get("/api/submissions") + .header(Header::new("Authorization", format!("Bearer {}", token))) + .dispatch() + .await; + + // Assert + assert_eq!( + response.status(), + Status::Ok, + "Authenticated user can get submissions" + ); + + let body: GetSubmissionsDto = serde_json::from_str(&response.into_string().await.unwrap())?; + assert_eq!(body.items, 3); + assert_eq!(body.total_pages, 1); + assert_eq!(body.submissions.len(), 3); + + Ok(()) + } +} diff --git a/anubis-eval/src/api/health_check_endpoint.rs b/anubis-eval/src/api/health_check_endpoint.rs new file mode 100644 index 0000000..13b50e1 --- /dev/null +++ b/anubis-eval/src/api/health_check_endpoint.rs @@ -0,0 +1,33 @@ +use crate::infrastructure::db::Db; +use diesel::RunQueryDsl; +use rocket::get; + +#[get("/health_check")] +pub async fn health_check(db: Db) -> &'static str { + db.run( + move |conn| match diesel::sql_query("SELECT 1").execute(conn) { + Ok(_) => "Healthy!", + Err(_) => "Unhealthy!", + }, + ) + .await +} + +#[cfg(test)] +mod tests { + use crate::tests::common::Result; + use crate::tests::common::ROCKET_CLIENT; + use rocket::http::Status; + + #[tokio::test] + async fn test_health_check() -> Result<()> { + let client = ROCKET_CLIENT.get().await.clone(); + + let response = client.get("/api/health_check").dispatch().await; + + assert_eq!(response.status(), Status::Ok); + assert_eq!(response.into_string().await.unwrap(), "Healthy!"); + + Ok(()) + } +} diff --git a/anubis-eval/src/api/middleware/auth.rs b/anubis-eval/src/api/middleware/auth.rs new file mode 100644 index 0000000..fe3ba12 --- /dev/null +++ b/anubis-eval/src/api/middleware/auth.rs @@ -0,0 +1,109 @@ +use crate::config::di::CONFIG; +use crate::domain::application_error::ApplicationError; +use jsonwebtoken::errors::{Error, ErrorKind}; +use jsonwebtoken::{decode, Algorithm, DecodingKey, Validation}; +use rocket::http::Status; +use rocket::request::{FromRequest, Outcome}; +use rocket::serde::{Deserialize, Serialize}; +use rocket::Request; + +#[derive(Debug)] +pub struct JwtContext { + pub claims: Claims, +} + +#[derive(Debug, Deserialize, Serialize)] +pub struct Claims { + pub sub: String, + exp: usize, +} + +#[rocket::async_trait] +impl<'r> FromRequest<'r> for JwtContext { + type Error = ApplicationError; + + async fn from_request(req: &'r Request<'_>) -> Outcome { + fn is_valid(key: &str) -> Result { + Ok(decode_jwt(String::from(key))?) + } + + match req.headers().get_one("authorization") { + None => { + let response = String::from("Error validating JWT token - No token provided"); + Outcome::Error((Status::Unauthorized, ApplicationError::AuthError(response))) + } + Some(key) => match is_valid(key) { + Ok(claims) => Outcome::Success(JwtContext { claims }), + Err(err) => match &err.kind() { + ErrorKind::ExpiredSignature => { + let response = String::from("Error validating JWT token - Expired Token"); + Outcome::Error(( + Status::Unauthorized, + ApplicationError::AuthError(response), + )) + } + ErrorKind::InvalidToken => { + let response = String::from("Error validating JWT token - Invalid Token"); + Outcome::Error(( + Status::Unauthorized, + ApplicationError::AuthError(response), + )) + } + _ => { + let response = format!("Error validating JWT token - {}", err); + Outcome::Error(( + Status::Unauthorized, + ApplicationError::AuthError(response), + )) + } + }, + }, + } + } +} + +fn decode_jwt(token: String) -> Result { + let secret = CONFIG.clone().jwt_secret_key; + let token = token.trim_start_matches("Bearer").trim(); + + match decode::( + token, + &DecodingKey::from_secret(secret.as_bytes()), + &Validation::new(Algorithm::HS256), + ) { + Ok(token) => Ok(token.claims), + Err(err) => Err(err.kind().to_owned()), + } +} + +#[cfg(test)] +pub mod tests { + use crate::config::di::CONFIG; + use crate::tests::user::tests::User; + use rocket::serde::{Deserialize, Serialize}; + + #[derive(Debug, Deserialize, Serialize)] + pub struct Claims { + sub: String, + email: String, + role: Vec, + exp: usize, + } + + pub fn encode_jwt(user: User) -> Result> { + let secret = CONFIG.clone().jwt_secret_key; + let claims = Claims { + sub: user.id.to_string(), + email: user.email, + role: user.role.iter().map(|r| r.to_string()).collect(), + exp: (chrono::Utc::now() + chrono::Duration::hours(1)).timestamp() as usize, + }; + + jsonwebtoken::encode( + &jsonwebtoken::Header::default(), + &claims, + &jsonwebtoken::EncodingKey::from_secret(secret.as_ref()), + ) + .map_err(|e| e.into()) + } +} diff --git a/anubis-eval/src/api/middleware/cors.rs b/anubis-eval/src/api/middleware/cors.rs new file mode 100644 index 0000000..e585be5 --- /dev/null +++ b/anubis-eval/src/api/middleware/cors.rs @@ -0,0 +1,52 @@ +use crate::config::di::CONFIG; +use rocket::fairing::Fairing; +use rocket::http::{Method, Status}; + +pub struct Cors; + +#[rocket::async_trait] +impl Fairing for Cors { + fn info(&self) -> rocket::fairing::Info { + rocket::fairing::Info { + name: "Add CORS headers to responses", + kind: rocket::fairing::Kind::Response, + } + } + + async fn on_response<'r>( + &self, + request: &'r rocket::Request<'_>, + response: &mut rocket::Response<'r>, + ) { + let allowed_origins = CONFIG + .allowed_origins + .split(';') + .map(String::from) + .collect::>(); + + if request.method() == Method::Options { + response.set_status(Status::NoContent); + response.set_header(rocket::http::Header::new( + "Access-Control-Allow-Methods", + "POST, GET, OPTIONS", + )); + response.set_header(rocket::http::Header::new( + "Access-Control-Allow-Headers", + "Access-Control-Allow-Headers, \ + Origin,Accept, X-Requested-With, \ + Content-Type, \ + Access-Control-Request-Method, \ + Access-Control-Request-Headers", + )); + response.remove_header("Content-Type"); + } + response.set_header(rocket::http::Header::new( + "Access-Control-Allow-Origin", + allowed_origins.join(","), + )); + response.set_header(rocket::http::Header::new( + "Access-Control-Allow-Credentials", + "true", + )); + } +} diff --git a/anubis-eval/src/api/middleware/mod.rs b/anubis-eval/src/api/middleware/mod.rs new file mode 100644 index 0000000..7b50296 --- /dev/null +++ b/anubis-eval/src/api/middleware/mod.rs @@ -0,0 +1,2 @@ +pub mod auth; +pub mod cors; diff --git a/anubis-eval/src/api/mod.rs b/anubis-eval/src/api/mod.rs new file mode 100644 index 0000000..445ea4c --- /dev/null +++ b/anubis-eval/src/api/mod.rs @@ -0,0 +1,9 @@ +pub mod catchers; +pub mod create_submission_endpoint; +pub mod evaluate_submission_job; +pub mod get_highest_score_submissions; +pub mod get_submission_endpoint; +pub mod get_submissions_endpoint; +pub mod health_check_endpoint; +pub mod middleware; +pub mod problem_eval_metadata_upserted_event_handler; diff --git a/anubis-eval/src/api/problem_eval_metadata_upserted_event_handler.rs b/anubis-eval/src/api/problem_eval_metadata_upserted_event_handler.rs new file mode 100644 index 0000000..0c07e73 --- /dev/null +++ b/anubis-eval/src/api/problem_eval_metadata_upserted_event_handler.rs @@ -0,0 +1,52 @@ +use crate::contracts::problem_eval_metadata_upserted_dtos::EvalMetadataForProblemDto; +use crate::domain::application_error::ApplicationError; +use crate::domain::problem::Problem; +use crate::infrastructure::db::Db; +use cloudevents::Event; +use rocket::serde::json::Json; +use rocket::{info, post}; + +#[post( + "/problem-eval-metadata-upserted", + format = "application/cloudevents+json", + data = "" +)] +pub async fn handle_problem_eval_metadata_upserted_event( + event: Json, + db: Db, +) -> Result<(), ApplicationError> { + let event = event.into_inner(); + + let eval_metadata: EvalMetadataForProblemDto = match event.data() { + Some(cloudevents::Data::Json(data)) => { + serde_json::from_value(data.clone()).map_err(|e| ApplicationError::JsonParseError { + value: event.to_string(), + source: e, + }) + } + _ => Err(ApplicationError::CloudEventParseError { + value: event.to_string(), + source: anyhow::anyhow!("No data found in problem eval metadata upserted event"), + }), + }?; + + info!( + "Problem Eval Metadata upserted event received: {:?}", + eval_metadata + ); + + let problem: Problem = eval_metadata.clone().into(); + + db.run(move |conn| match problem.upsert(conn) { + Ok(_) => { + info!( + "Persisting problem eval metadata for problem: {:?}", + problem.id() + ); + + Ok(()) + } + Err(e) => Err(e), + }) + .await +} diff --git a/anubis-eval/src/application/dapr_client.rs b/anubis-eval/src/application/dapr_client.rs new file mode 100644 index 0000000..2c0dbd6 --- /dev/null +++ b/anubis-eval/src/application/dapr_client.rs @@ -0,0 +1,350 @@ +use crate::config::di::{Atomic, CONFIG}; +use crate::contracts::dapr_dtos::{ + CreateSubmissionBatchDto, CreateSubmissionTestCaseDto, EvaluatedSubmissionBatchDto, + EvaluatedSubmissionTestCaseDto, StateStoreSetItemDto, TestCaseTokenDto, +}; +use crate::contracts::problem_eval_metadata_upserted_dtos::EvalMetadataForProblemDto; +use crate::domain::application_error::ApplicationError; +use crate::domain::problem::Problem; +use diesel::PgConnection; +use rocket::request::{FromRequest, Outcome}; +use rocket::{debug, error, info, warn}; +use serde_json::Value; +use std::ops::DerefMut; +use uuid::Uuid; + +#[derive(Clone)] +pub struct DaprClient { + pub http_client: reqwest::Client, + pub db_conn: Atomic, +} + +impl DaprClient { + pub async fn get_eval_metadata_for_problem( + &self, + problem_id: &Uuid, + ) -> Result { + let problem_id = problem_id.to_string(); + + let url = CONFIG + .dapr_eval_metadata_endpoint + .to_owned() + .replace("{problem_id}", problem_id.as_str()); + + info!("Get Eval Metadata for Problem {} from db", problem_id); + + let eval_metadata = { + let mut db = self.db_conn.lock().await; + Problem::find_by_id(&problem_id, db.deref_mut()) + }; + + match eval_metadata { + Ok(eval_metadata) => { + info!("Eval Metadata for Problem {} found in db", problem_id); + Ok(eval_metadata.into()) + } + Err(ApplicationError::ProblemFindError { .. }) + | Err(ApplicationError::ProblemNotFoundError { .. }) => { + warn!( + "Eval Metadata for Problem {} not found in db. Fetching from Enki", + problem_id + ); + let response = self + .http_client + .get(&url) + .send() + .await + .map_err(|e| ApplicationError::EvalMetadataError { + problem_id: problem_id.clone(), + source: e, + })? + .json::() + .await + .map_err(|e| ApplicationError::EvalMetadataError { + problem_id: problem_id.clone(), + source: e, + })?; + + let mut db = self.db_conn.lock().await; + let problem = Problem::from(response.clone()); + problem.upsert(db.deref_mut())?; + + Ok(response) + } + Err(e) => Err(e), + } + } + + pub async fn get_input_and_output_for_test( + &self, + test_id: usize, + problem_id: Uuid, + (input_url, output_url): (String, String), + ) -> Result<(String, String), ApplicationError> { + let input_key = format!("{}-{}-input", problem_id, test_id); + + info!("Get Input for Test {} from state store", test_id); + + let state_store_response = self.get_item_from_state_store(input_key.as_str()).await?; + let input = match state_store_response { + Some(input) => { + info!("Input for Test {} found in state store", test_id); + + serde_json::from_value::(input).map_err(|_| { + ApplicationError::StateStoreGetError { + key: input_key.clone(), + } + })? + } + None => { + let input = self + .http_client + .get(input_url.clone()) + .send() + .await + .map_err(|e| ApplicationError::TestInputOutputError { + problem_id: problem_id.to_string(), + test_id: test_id.to_string(), + source: e, + })? + .text() + .await + .map_err(|e| ApplicationError::TestInputOutputError { + problem_id: problem_id.to_string(), + test_id: test_id.to_string(), + source: e, + })?; + + let state_store_set_item = StateStoreSetItemDto { + key: input_key, + value: Value::String(input.clone()), + }; + self.set_items_in_state_store(vec![state_store_set_item]) + .await?; + + input + } + }; + + let output_key = format!("{}-{}-output", problem_id, test_id); + + info!("Get Output for Test {} from state store", test_id); + + let state_store_response = self.get_item_from_state_store(output_key.as_str()).await?; + let output = match state_store_response { + Some(output) => { + info!("Output for Test {} found in state store", test_id); + + serde_json::from_value::(output).map_err(|_| { + ApplicationError::StateStoreGetError { + key: output_key.clone(), + } + })? + } + None => { + let output = self + .http_client + .get(output_url.clone()) + .send() + .await + .map_err(|e| ApplicationError::TestInputOutputError { + problem_id: problem_id.to_string(), + test_id: test_id.to_string(), + source: e, + })? + .text() + .await + .map_err(|e| ApplicationError::TestInputOutputError { + problem_id: problem_id.to_string(), + test_id: test_id.to_string(), + source: e, + })?; + + let state_store_set_item = StateStoreSetItemDto { + key: output_key, + value: Value::String(output.clone()), + }; + self.set_items_in_state_store(vec![state_store_set_item]) + .await?; + + output + } + }; + + Ok((input, output)) + } + + pub async fn create_submission_batch( + &self, + submission_batch: &CreateSubmissionBatchDto, + ) -> Result, ApplicationError> { + let url = CONFIG.dapr_judge_submission_batch_endpoint.to_owned(); + + let response = self + .http_client + .post(&url) + .json(&submission_batch) + .send() + .await + .map_err(|e| ApplicationError::SubmissionEvaluationError { source: e })? + .json::>() + .await + .map_err(|e| ApplicationError::SubmissionEvaluationError { source: e })?; + + Ok(response) + } + + pub async fn create_submission_test_case( + &self, + submission: &CreateSubmissionTestCaseDto, + ) -> Result { + let url = CONFIG.dapr_judge_submission_endpoint.to_owned(); + + let response = self + .http_client + .post(&url) + .json(&submission) + .send() + .await + .map_err(|e| ApplicationError::SubmissionEvaluationError { source: e })?; + + debug!("Create Submission Test Case Response: {:?}", response); + + let response = response + .json::() + .await + .map_err(|e| ApplicationError::SubmissionEvaluationError { source: e })?; + + Ok(response) + } + + pub async fn get_submission_batch( + &self, + submission_tokens: &[TestCaseTokenDto], + ) -> Result { + let url = CONFIG.dapr_get_submission_batch_endpoint.to_owned(); + let tokens = submission_tokens + .iter() + .map(|token_dto| token_dto.token.clone()) + .collect::>() + .join(","); + + let url = url.replace("{tokens}", tokens.as_str()); + + let response = self + .http_client + .get(&url) + .send() + .await + .map_err(|e| ApplicationError::SubmissionEvaluationError { source: e })? + .json::() + .await + .map_err(|e| ApplicationError::SubmissionEvaluationError { source: e })?; + + Ok(response) + } + + async fn get_submission_test_case( + &self, + token: &TestCaseTokenDto, + ) -> Result { + let url = CONFIG.dapr_get_submission_endpoint.to_owned(); + let url = url.replace("{token}", token.token.as_str()); + + let response = self + .http_client + .get(&url) + .send() + .await + .map_err(|e| ApplicationError::SubmissionEvaluationError { source: e })? + .json::() + .await + .map_err(|e| ApplicationError::SubmissionEvaluationError { source: e })?; + + Ok(response) + } + + pub(crate) async fn get_item_from_state_store( + &self, + key: &str, + ) -> Result, ApplicationError> { + let url = CONFIG.dapr_state_store_get_endpoint.to_owned(); + let url = url.replace("{key}", key); + + let response = self.http_client.get(&url).send().await.map_err(|e| { + error!("Error getting item from state store: {:?}", e); + + ApplicationError::StateStoreGetError { + key: key.to_string(), + } + })?; + + let response = match response.status() { + reqwest::StatusCode::OK => { + let response = response.json::().await.map_err(|_| { + ApplicationError::StateStoreGetError { + key: key.to_string(), + } + })?; + Some(response) + } + _ => None, + }; + + debug!("State store response: {:?}", response); + + Ok(response) + } + + pub(crate) async fn set_items_in_state_store( + &self, + items: Vec, + ) -> Result<(), ApplicationError> { + let url = CONFIG.dapr_state_store_post_endpoint.to_owned(); + + debug!("State store request: {:?}", items); + + let response = self + .http_client + .post(&url) + .json(&items) + .send() + .await + .map_err(|_| ApplicationError::StateStoreSetError { + key: items + .iter() + .map(|item| item.key.clone()) + .collect::>() + .join(","), + })?; + + let status = response.status(); + debug!("State store response status: {:?}", status); + + Ok(()) + } +} + +#[rocket::async_trait] +impl<'r> FromRequest<'r> for DaprClient { + type Error = ApplicationError; + + async fn from_request(req: &'r rocket::Request<'_>) -> Outcome { + let http_client = req.rocket().state::(); + let db_conn = req.rocket().state::>(); + + match (http_client, db_conn) { + (Some(http_client), Some(db_conn)) => Outcome::Success(DaprClient { + http_client: http_client.clone(), + db_conn: db_conn.clone(), + }), + _ => { + let response = String::from("Error initializing http client and/or db connection"); + Outcome::Error(( + rocket::http::Status::InternalServerError, + ApplicationError::Unknown(response), + )) + } + } + } +} diff --git a/anubis-eval/src/application/mod.rs b/anubis-eval/src/application/mod.rs new file mode 100644 index 0000000..4db917d --- /dev/null +++ b/anubis-eval/src/application/mod.rs @@ -0,0 +1 @@ +pub mod dapr_client; diff --git a/anubis-eval/src/config/di.rs b/anubis-eval/src/config/di.rs new file mode 100644 index 0000000..e347c7b --- /dev/null +++ b/anubis-eval/src/config/di.rs @@ -0,0 +1,55 @@ +use crate::application::dapr_client::DaprClient; +use diesel::Connection; +use diesel::PgConnection; +use lazy_static::lazy_static; +use serde::Deserialize; +use std::sync::Arc; +use tokio::sync::Mutex; + +#[derive(Deserialize, Debug, Clone)] +pub struct Config { + pub jwt_secret_key: String, + pub dapr_http_port: u16, + pub dapr_eval_metadata_endpoint: String, + pub dapr_judge_submission_batch_endpoint: String, + pub dapr_judge_submission_endpoint: String, + pub dapr_get_submission_batch_endpoint: String, + pub dapr_get_submission_endpoint: String, + pub dapr_state_store_get_endpoint: String, + pub dapr_state_store_post_endpoint: String, + pub eval_cron_schedule: String, + pub default_no_submissions_per_page: u16, + pub eval_batch_size: u16, + pub allowed_origins: String, +} + +pub type Atomic = Arc>; + +lazy_static! { + pub static ref CONFIG: Config = { + dotenvy::dotenv().ok(); + + envy::prefixed("CONFIG_") + .from_env::() + .expect("Failed to load configuration") + }; + pub static ref HTTP_CLIENT: reqwest::Client = reqwest::Client::builder() + .timeout(std::time::Duration::from_secs(10)) + .danger_accept_invalid_certs(true) + .build() + .expect("Failed to create http client"); + pub static ref DAPR_CLIENT: Atomic = { + Atomic::new(Mutex::new(DaprClient { + http_client: reqwest::Client::new(), + db_conn: DB_CONN.clone(), + })) + }; + pub static ref DB_CONN: Atomic = { + dotenvy::dotenv().ok(); + + let database_url = std::env::var("DATABASE_URL").expect("DATABASE_URL must be set"); + Arc::new(Mutex::new( + PgConnection::establish(&database_url).expect("Failed to create pool"), + )) + }; +} diff --git a/anubis-eval/src/config/logger.rs b/anubis-eval/src/config/logger.rs new file mode 100644 index 0000000..5af6af1 --- /dev/null +++ b/anubis-eval/src/config/logger.rs @@ -0,0 +1,90 @@ +use log4rs::append::console::ConsoleAppender; +use log4rs::append::file::FileAppender; +use log4rs::config::{Appender, Logger, Root}; +use log4rs::encode::pattern::PatternEncoder; +use rocket::log::private::LevelFilter; + +pub fn init_logger() { + if !cfg!(test) { + match log4rs::init_file("log4rs.yaml", Default::default()) { + Ok(_) => { + println!("Logger initialized using log4rs.yaml"); + } + Err(err) => { + println!( + "Failed to initialize logger, using default configuration due to error: {:?}", + err + ); + println!("Logger initialized using default configuration"); + + let file_appender = FileAppender::builder() + .encoder(Box::new(PatternEncoder::new( + "{d(%Y-%m-%d %H:%M:%S%.3f)} {h({l})} {M} - {m}{n}", + ))) + .build("logs/anubis.logs") + .unwrap(); + + let console_appender = ConsoleAppender::builder() + .encoder(Box::new(PatternEncoder::new( + "{d(%Y-%m-%d %H:%M:%S%.3f)} {h({l})} {M} - {m}{n}", + ))) + .build(); + + let log_config = log4rs::config::Config::builder() + .appender(Appender::builder().build("file_appender", Box::new(file_appender))) + .appender( + Appender::builder().build("console_appender", Box::new(console_appender)), + ) + .logger( + Logger::builder() + .appender("file_appender") + .appender("console_appender") + .additive(false) + .build("anubis", LevelFilter::Info), + ) + .build( + Root::builder() + .appender("file_appender") + .appender("console_appender") + .build(LevelFilter::Info), + ) + .unwrap(); + + log4rs::init_config(log_config).unwrap(); + } + } + } +} + +#[cfg(test)] +pub mod tests { + use log4rs::append::console::ConsoleAppender; + use log4rs::config::{Appender, Logger, Root}; + use log4rs::encode::pattern::PatternEncoder; + use rocket::log::private::LevelFilter; + + pub(crate) fn init_logger() { + let console_appender = ConsoleAppender::builder() + .encoder(Box::new(PatternEncoder::new( + "{d(%Y-%m-%d %H:%M:%S%.3f)} {h({l})} {M} - {m}{n}", + ))) + .build(); + + let log_config = log4rs::config::Config::builder() + .appender(Appender::builder().build("console_appender", Box::new(console_appender))) + .logger( + Logger::builder() + .appender("console_appender") + .additive(false) + .build("anubis", LevelFilter::Info), + ) + .build( + Root::builder() + .appender("console_appender") + .build(LevelFilter::Info), + ) + .unwrap(); + + log4rs::init_config(log_config).unwrap(); + } +} diff --git a/anubis-eval/src/config/mod.rs b/anubis-eval/src/config/mod.rs new file mode 100644 index 0000000..fb5ad9a --- /dev/null +++ b/anubis-eval/src/config/mod.rs @@ -0,0 +1,2 @@ +pub mod di; +pub mod logger; diff --git a/anubis-eval/src/contracts/create_submission_dtos.rs b/anubis-eval/src/contracts/create_submission_dtos.rs new file mode 100644 index 0000000..5036448 --- /dev/null +++ b/anubis-eval/src/contracts/create_submission_dtos.rs @@ -0,0 +1,20 @@ +use rocket::serde::{Deserialize, Serialize}; + +#[derive(Serialize, Deserialize)] +#[serde(crate = "rocket::serde")] +pub struct CreateSubmissionResponseDto { + pub(crate) id: String, +} + +#[rocket::async_trait] +impl<'r> rocket::response::Responder<'r, 'static> for CreateSubmissionResponseDto { + fn respond_to(self, _: &'r rocket::Request<'_>) -> rocket::response::Result<'static> { + let json = + serde_json::to_string(&self).unwrap_or("Failed to serialize response".to_string()); + + rocket::Response::build() + .header(rocket::http::ContentType::JSON) + .sized_body(json.len(), std::io::Cursor::new(json)) + .ok() + } +} diff --git a/anubis-eval/src/contracts/dapr_dtos.rs b/anubis-eval/src/contracts/dapr_dtos.rs new file mode 100644 index 0000000..a0520b6 --- /dev/null +++ b/anubis-eval/src/contracts/dapr_dtos.rs @@ -0,0 +1,107 @@ +use crate::domain::submission::{TestCase, TestCaseStatus}; +use serde::{Deserialize, Serialize}; +use std::str::FromStr; +use uuid::Uuid; + +#[derive(Debug, Clone, Serialize, Deserialize)] +#[serde(rename_all = "camelCase")] +pub struct StateStoreSetItemDto { + pub key: String, + pub value: serde_json::Value, +} + +#[derive(Debug, Clone, Serialize, Deserialize)] +pub struct TestDto { + #[serde(alias = "id", alias = "Id")] + pub test_id: usize, + #[serde(alias = "inputDownloadUrl", alias = "InputDownloadUrl")] + pub input_url: String, + #[serde(alias = "outputDownloadUrl", alias = "OutputDownloadUrl")] + pub output_url: String, + #[serde(alias = "score", alias = "Score")] + pub score: usize, +} + +#[derive(Debug, Clone, Serialize, Deserialize)] +pub struct CreateSubmissionBatchDto { + pub submissions: Vec, +} + +#[derive(Debug, Clone, Serialize, Deserialize)] +pub struct CreateSubmissionTestCaseDto { + #[serde(skip_serializing)] + pub testcase_id: usize, + pub source_code: String, + #[serde(rename = "language_id")] + pub language: usize, + pub stdin: String, + pub time: f32, + pub memory_limit: f32, + pub stack_limit: f32, + pub expected_output: String, +} + +#[derive(Debug, Clone, Serialize, Deserialize)] +pub struct TestCaseTokenDto { + pub token: String, +} + +#[derive(Debug, Clone, Serialize, Deserialize)] +pub struct EvaluatedSubmissionBatchDto { + pub submissions: Vec, +} + +#[derive(Debug, Clone, Serialize, Deserialize)] +pub struct EvaluatedSubmissionTestCaseDto { + pub token: String, + #[serde(default)] + pub message: Option, + #[serde(default)] + pub compile_output: Option, + pub status: StatusDto, + #[serde(default)] + pub time: Option, + #[serde(default)] + pub memory: Option, + #[serde(default)] + pub stdout: Option, + #[serde(default)] + pub stderr: Option, +} + +#[derive(Debug, Clone, Serialize, Deserialize)] +pub struct StatusDto { + pub id: usize, + pub description: String, +} + +impl From for TestCase { + fn from(value: EvaluatedSubmissionTestCaseDto) -> Self { + let status: TestCaseStatus = value.status.into(); + let compile_output = match status { + TestCaseStatus::CompilationError => value.compile_output, + _ => None, + }; + let time = match value.time { + Some(time) => time.parse::().unwrap(), + None => 0.0, + }; + + TestCase::new_for_update( + Uuid::from_str(&value.token).unwrap(), + value.message, + compile_output, + status, + time, + value.memory.unwrap_or(0.0), + value.stdout, + value.stderr, + ) + } +} + +impl From for TestCaseStatus { + fn from(value: StatusDto) -> Self { + value.id.into() + } +} diff --git a/anubis-eval/src/contracts/fps_dtos.rs b/anubis-eval/src/contracts/fps_dtos.rs new file mode 100644 index 0000000..aee9947 --- /dev/null +++ b/anubis-eval/src/contracts/fps_dtos.rs @@ -0,0 +1,143 @@ +use crate::domain::submission::{Language, SubmissionStatus}; +use chrono::Utc; +use rocket::form::{Errors, FromFormField}; +use rocket::FromForm; +use uuid::Uuid; + +// FSP stands for Filter, Sort, Paginate +#[derive(Debug, PartialEq, FromForm)] +pub struct FpsSubmissionDto { + pub user_id: Option, + pub problem_id: Option, + pub language: Option, + pub status: Option, + pub lt_score: Option, + pub gt_score: Option, + pub lt_avg_time: Option, + pub gt_avg_time: Option, + pub lt_avg_memory: Option, + pub gt_avg_memory: Option, + pub start_date: Option, + pub end_date: Option, + pub sort_by: Option, + pub page: Option, + pub per_page: Option, +} + +#[derive(Debug, Clone, PartialEq, Eq, Hash)] +pub struct DateTime { + pub date_time: chrono::DateTime, +} + +impl<'v> FromFormField<'v> for DateTime { + fn from_value(field: rocket::form::ValueField<'v>) -> rocket::form::Result<'v, Self> { + let date_time = + chrono::DateTime::::from_timestamp(field.value.parse::().unwrap_or(0), 0) + .unwrap(); + + Ok(DateTime { + date_time: date_time.into(), + }) + } +} + +#[derive(Debug, Clone, PartialEq, Eq, Hash)] +pub struct Uuids { + pub uuids: Vec, +} + +impl<'v> FromFormField<'v> for Uuids { + fn from_value(field: rocket::form::ValueField<'v>) -> rocket::form::Result<'v, Self> { + let uuids = field + .value + .split(',') + .map(|s| Uuid::parse_str(s).unwrap_or(Uuid::nil())) + .collect(); + + Ok(Uuids { uuids }) + } +} + +#[derive(Debug, Clone, PartialEq, Eq, Hash)] +pub struct SubmissionStatuses { + pub statuses: Vec, +} + +impl<'v> FromFormField<'v> for SubmissionStatuses { + fn from_value(field: rocket::form::ValueField<'v>) -> rocket::form::Result<'v, Self> { + let statuses = field + .value + .split(',') + .map(|s| match s { + "evaluating" => SubmissionStatus::Evaluating, + "accepted" => SubmissionStatus::Accepted, + "rejected" => SubmissionStatus::Rejected, + "internal_error" => SubmissionStatus::InternalError, + _ => SubmissionStatus::Unknown, + }) + .collect(); + + Ok(SubmissionStatuses { statuses }) + } +} + +#[derive(Debug, Clone, PartialEq, Eq, Hash)] +pub struct Languages { + pub languages: Vec, +} + +impl<'v> FromFormField<'v> for Languages { + fn from_value(field: rocket::form::ValueField<'v>) -> rocket::form::Result<'v, Self> { + let languages = field + .value + .split(',') + .map(|s| match s { + "c" => Language::C, + "cpp" => Language::Cpp, + "java" => Language::Java, + "lua" => Language::Lua, + "py" => Language::Python, + "rs" => Language::Rust, + "go" => Language::Go, + "cs" => Language::CSharp, + "ml" => Language::OCaml, + "js" => Language::Javascript, + "kt" => Language::Kotlin, + "hs" => Language::Haskell, + _ => Language::Unknown, + }) + .collect(); + + Ok(Languages { languages }) + } +} + +#[derive(Debug, PartialEq)] +pub enum SortDiscriminant { + ScoreAsc, + ScoreDesc, + CreatedAtAsc, + CreatedAtDesc, + AvgTimeAsc, + AvgTimeDesc, + AvgMemoryAsc, + AvgMemoryDesc, +} + +impl<'v> FromFormField<'v> for SortDiscriminant { + fn from_value(field: rocket::form::ValueField<'v>) -> rocket::form::Result<'v, Self> { + match field.value { + "score_asc" => Ok(SortDiscriminant::ScoreAsc), + "score_desc" => Ok(SortDiscriminant::ScoreDesc), + "created_at_asc" => Ok(SortDiscriminant::CreatedAtAsc), + "created_at_desc" => Ok(SortDiscriminant::CreatedAtDesc), + "avg_time_asc" => Ok(SortDiscriminant::AvgTimeAsc), + "avg_time_desc" => Ok(SortDiscriminant::AvgTimeDesc), + "avg_memory_asc" => Ok(SortDiscriminant::AvgMemoryAsc), + "avg_memory_desc" => Ok(SortDiscriminant::AvgMemoryDesc), + _ => Err(Errors::from(rocket::form::Error::validation( + "Invalid sort discriminant", + ))), + } + } +} diff --git a/anubis-eval/src/contracts/get_highest_score_submissions_dtos.rs b/anubis-eval/src/contracts/get_highest_score_submissions_dtos.rs new file mode 100644 index 0000000..b6dca4d --- /dev/null +++ b/anubis-eval/src/contracts/get_highest_score_submissions_dtos.rs @@ -0,0 +1,55 @@ +use crate::domain::problem::Problem; +use crate::domain::submission::Submission; +use rocket::serde::{Deserialize, Serialize}; + +#[derive(Serialize, Deserialize)] +#[serde(crate = "rocket::serde")] +pub struct GetHighestScoreSubmissionsDto { + pub submissions: Vec, +} + +#[rocket::async_trait] +impl<'r> rocket::response::Responder<'r, 'static> for GetHighestScoreSubmissionsDto { + fn respond_to(self, _: &'r rocket::Request<'_>) -> rocket::response::Result<'static> { + let json = + serde_json::to_string(&self).unwrap_or("Failed to serialize response".to_string()); + + rocket::Response::build() + .header(rocket::http::ContentType::JSON) + .sized_body(json.len(), std::io::Cursor::new(json)) + .ok() + } +} + +impl From> for GetHighestScoreSubmissionsDto { + fn from(submissions: Vec<(Submission, Problem)>) -> Self { + Self { + submissions: submissions + .into_iter() + .map(|submission| submission.into()) + .collect::>(), + } + } +} + +#[derive(Serialize, Deserialize)] +#[serde(crate = "rocket::serde")] +pub struct GetHighestScoreSubmissionDto { + pub id: String, + pub problem_id: String, + pub problem_name: String, + pub is_published: bool, + pub score: usize, +} + +impl From<(Submission, Problem)> for GetHighestScoreSubmissionDto { + fn from((submission, problem): (Submission, Problem)) -> Self { + Self { + id: submission.id().to_string(), + problem_id: submission.problem_id().to_string(), + problem_name: problem.name().to_string(), + is_published: problem.is_published(), + score: submission.score() as usize, + } + } +} diff --git a/anubis-eval/src/contracts/get_submission_dtos.rs b/anubis-eval/src/contracts/get_submission_dtos.rs new file mode 100644 index 0000000..691d25a --- /dev/null +++ b/anubis-eval/src/contracts/get_submission_dtos.rs @@ -0,0 +1,96 @@ +use crate::domain::problem::Problem; +use crate::domain::submission::Submission; +use chrono::{DateTime, Utc}; +use rocket::serde::{Deserialize, Serialize}; + +#[derive(Serialize, Deserialize)] +#[serde(crate = "rocket::serde")] +pub struct GetSubmissionWithTestCasesDto { + #[serde(flatten)] + pub submission: GetSubmissionDto, + pub test_cases: Vec, +} + +#[rocket::async_trait] +impl<'r> rocket::response::Responder<'r, 'static> for GetSubmissionWithTestCasesDto { + fn respond_to(self, _: &'r rocket::Request<'_>) -> rocket::response::Result<'static> { + let json = + serde_json::to_string(&self).unwrap_or("Failed to serialize response".to_string()); + + rocket::Response::build() + .header(rocket::http::ContentType::JSON) + .sized_body(json.len(), std::io::Cursor::new(json)) + .ok() + } +} + +impl From<(Submission, Problem)> for GetSubmissionWithTestCasesDto { + fn from((submission, problem): (Submission, Problem)) -> Self { + Self { + submission: GetSubmissionDto { + id: submission.id().to_string(), + problem_id: submission.problem_id().to_string(), + problem_name: problem.name().to_string(), + is_published: problem.is_published(), + user_id: submission.user_id().to_string(), + language: submission.language().to_string(), + source_code: match submission.source_code().to_string().is_empty() { + true => None, + false => Some(submission.source_code().to_string()), + }, + status: submission.status().to_string(), + score: submission.score() as usize, + created_at: DateTime::::from(submission.created_at()), + avg_time: submission.avg_time().unwrap_or(0.0), + avg_memory: submission.avg_memory().unwrap_or(0.0), + }, + test_cases: submission + .test_cases() + .into_iter() + .map(|test_case| GetSubmissionTestCaseDto { + id: test_case.testcase_id() as usize, + status: test_case.status().to_string(), + time: test_case.time(), + memory: test_case.memory(), + expected_score: test_case.expected_score() as usize, + eval_message: test_case.eval_message().unwrap_or("".to_string()), + compile_output: test_case.compile_output().unwrap_or("".to_string()), + stdout: test_case.stdout().unwrap_or("".to_string()), + stderr: test_case.stderr().unwrap_or("".to_string()), + }) + .collect(), + } + } +} + +#[derive(Serialize, Deserialize)] +#[serde(crate = "rocket::serde")] +pub struct GetSubmissionDto { + pub id: String, + pub problem_id: String, + pub problem_name: String, + pub is_published: bool, + pub user_id: String, + pub language: String, + pub source_code: Option, + pub status: String, + pub score: usize, + #[serde(with = "chrono::serde::ts_seconds")] + pub created_at: DateTime, + pub avg_time: f32, + pub avg_memory: f32, +} + +#[derive(Serialize, Deserialize)] +#[serde(crate = "rocket::serde")] +pub struct GetSubmissionTestCaseDto { + pub id: usize, + pub status: String, + pub time: f32, + pub memory: f32, + pub expected_score: usize, + pub eval_message: String, + pub compile_output: String, + pub stdout: String, + pub stderr: String, +} diff --git a/anubis-eval/src/contracts/get_submissions_dtos.rs b/anubis-eval/src/contracts/get_submissions_dtos.rs new file mode 100644 index 0000000..8258c67 --- /dev/null +++ b/anubis-eval/src/contracts/get_submissions_dtos.rs @@ -0,0 +1,87 @@ +use crate::domain::problem::Problem; +use crate::domain::submission::Submission; +use chrono::{DateTime, Utc}; +use rocket::serde::{Deserialize, Serialize}; + +#[derive(Serialize, Deserialize)] +#[serde(crate = "rocket::serde")] +pub struct GetSubmissionsDto { + pub submissions: Vec, + pub items: usize, + pub total_pages: usize, +} + +#[rocket::async_trait] +impl<'r> rocket::response::Responder<'r, 'static> for GetSubmissionsDto { + fn respond_to(self, _: &'r rocket::Request<'_>) -> rocket::response::Result<'static> { + let json = + serde_json::to_string(&self).unwrap_or("Failed to serialize response".to_string()); + + rocket::Response::build() + .header(rocket::http::ContentType::JSON) + .sized_body(json.len(), std::io::Cursor::new(json)) + .ok() + } +} + +impl From<(Vec<(Submission, Problem)>, usize, usize)> for GetSubmissionsDto { + fn from((submissions, items, total_pages): (Vec<(Submission, Problem)>, usize, usize)) -> Self { + Self { + submissions: submissions + .into_iter() + .map(|submission| submission.into()) + .collect::>(), + items, + total_pages, + } + } +} + +impl From> for GetSubmissionsDto { + fn from(submissions: Vec<(Submission, Problem)>) -> Self { + Self { + submissions: submissions + .clone() + .into_iter() + .map(|submission| submission.into()) + .collect(), + items: submissions.len(), + total_pages: 1, + } + } +} + +#[derive(Serialize, Deserialize)] +#[serde(crate = "rocket::serde")] +pub struct GetSubmissionDto { + id: String, + problem_id: String, + problem_name: String, + is_published: bool, + user_id: String, + language: String, + status: String, + score: usize, + #[serde(with = "chrono::serde::ts_seconds")] + created_at: DateTime, + avg_time: f32, + avg_memory: f32, +} + +impl From<(Submission, Problem)> for GetSubmissionDto { + fn from((submission, problem): (Submission, Problem)) -> Self { + Self { + id: submission.id().to_string(), + problem_id: submission.problem_id().to_string(), + problem_name: problem.name().to_string(), + is_published: problem.is_published(), + user_id: submission.user_id().to_string(), + language: submission.language().to_string(), + status: submission.status().to_string(), + score: submission.score() as usize, + created_at: DateTime::::from(submission.created_at()), + avg_time: submission.avg_time().unwrap_or(0.0), + avg_memory: submission.avg_memory().unwrap_or(0.0), + } + } +} diff --git a/anubis-eval/src/contracts/mod.rs b/anubis-eval/src/contracts/mod.rs new file mode 100644 index 0000000..c71654b --- /dev/null +++ b/anubis-eval/src/contracts/mod.rs @@ -0,0 +1,7 @@ +pub mod create_submission_dtos; +pub mod dapr_dtos; +pub mod fps_dtos; +pub mod get_highest_score_submissions_dtos; +pub mod get_submission_dtos; +pub mod get_submissions_dtos; +pub mod problem_eval_metadata_upserted_dtos; diff --git a/anubis-eval/src/contracts/problem_eval_metadata_upserted_dtos.rs b/anubis-eval/src/contracts/problem_eval_metadata_upserted_dtos.rs new file mode 100644 index 0000000..84fdf40 --- /dev/null +++ b/anubis-eval/src/contracts/problem_eval_metadata_upserted_dtos.rs @@ -0,0 +1,48 @@ +use crate::contracts::dapr_dtos::TestDto; +use crate::domain::problem::Problem; +use rocket::serde::{Deserialize, Serialize}; +use uuid::Uuid; + +#[derive(Debug, Clone, Serialize, Deserialize)] +pub struct EvalMetadataForProblemDto { + #[serde(alias = "id", alias = "Id")] + pub problem_id: Uuid, + #[serde(alias = "name", alias = "Name")] + pub name: String, + #[serde(alias = "proposerId", alias = "ProposerId")] + pub proposer_id: Uuid, + #[serde(alias = "isPublished", alias = "IsPublished")] + pub is_published: bool, + #[serde(alias = "time", alias = "Time")] + pub time: f32, + #[serde(alias = "stackMemory", alias = "StackMemory")] + pub stack_memory: f32, + #[serde(alias = "totalMemory", alias = "TotalMemory")] + pub total_memory: f32, + #[serde(alias = "tests", alias = "Tests")] + pub tests: Vec, +} + +impl From for EvalMetadataForProblemDto { + fn from(problem: Problem) -> Self { + Self { + problem_id: *problem.id(), + name: problem.name().to_string(), + proposer_id: *problem.proposer_id(), + is_published: problem.is_published(), + time: problem.time().unwrap_or(0.0), + stack_memory: problem.stack_memory().unwrap_or(0.0), + total_memory: problem.total_memory().unwrap_or(0.0), + tests: problem + .tests() + .into_iter() + .map(|test| TestDto { + test_id: test.id() as usize, + input_url: test.input_url().to_string(), + output_url: test.output_url().to_string(), + score: test.score() as usize, + }) + .collect(), + } + } +} diff --git a/anubis-eval/src/domain/application_error.rs b/anubis-eval/src/domain/application_error.rs new file mode 100644 index 0000000..8585865 --- /dev/null +++ b/anubis-eval/src/domain/application_error.rs @@ -0,0 +1,237 @@ +use rocket::response::Responder; +use rocket::serde::json::{json, Value}; +use rocket::{error, Request}; +use thiserror::Error; + +#[derive(Error, Debug)] +pub enum ApplicationError { + #[error("Error saving submission {submission_id:?} to database")] + SubmissionSaveError { + submission_id: String, + #[source] + source: diesel::result::Error, + }, + #[error("Error finding submissions")] + SubmissionFindError { + #[source] + source: diesel::result::Error, + }, + #[error("Error finding submission {submission_id:?}")] + SubmissionNotFoundError { submission_id: String }, + #[error("Error saving testcase {testcase_id:?} for submission {submission_id:?} to database")] + TestCaseSaveError { + testcase_id: String, + submission_id: String, + #[source] + source: diesel::result::Error, + }, + #[error("Error finding testcases")] + TestCaseFindError { + #[source] + source: diesel::result::Error, + }, + #[error("Error saving problem eval metadata")] + ProblemSaveError { + problem_id: String, + #[source] + source: diesel::result::Error, + }, + #[error("Error finding problems")] + ProblemFindError { + #[source] + source: diesel::result::Error, + }, + #[error("Error finding problem {problem_id:?}")] + ProblemNotFoundError { problem_id: String }, + #[error("Error saving test {test_id:?} for problem {problem_id:?} to database")] + TestSaveError { + test_id: String, + problem_id: String, + #[source] + source: diesel::result::Error, + }, + #[error("Submission evaluation service failed")] + SubmissionEvaluationError { + #[from] + source: reqwest::Error, + }, + #[error("Error retrieving eval metadata for problem {problem_id:?}")] + EvalMetadataError { + problem_id: String, + #[source] + source: reqwest::Error, + }, + #[error("Error retrieving input and output for test {test_id:?} of problem {problem_id:?}")] + TestInputOutputError { + problem_id: String, + test_id: String, + #[source] + source: reqwest::Error, + }, + #[error("Error getting item from state store for key {key:?}")] + StateStoreGetError { key: String }, + #[error("Error setting item in state store for key {key:?}")] + StateStoreSetError { key: String }, + #[error("Error authenticating user")] + AuthError(String), + #[error( + "Sending submissions for unpublished problems is not allowed unless you are the proposer" + )] + CannotSubmitForUnpublishedProblemError, + #[error( + "Viewing submissions for unpublished problems is not allowed unless you are the proposer" + )] + CannotViewSubmissionsForUnpublishedProblemError, + #[error("Failed to parse json: {value:?}")] + JsonParseError { + value: String, + #[source] + source: serde_json::Error, + }, + #[error("Failed to parse cloud event: {value:?}")] + CloudEventParseError { + value: String, + #[source] + source: anyhow::Error, + }, + #[error("Unknown error")] + Unknown(String), +} + +impl<'r, 'o: 'r> Responder<'r, 'o> for ApplicationError { + fn respond_to(self, request: &'r Request<'_>) -> rocket::response::Result<'o> { + error!("Application Error: {:?}", self); + let error_json = json!({"error": self.to_string()}); + + match self { + ApplicationError::SubmissionSaveError { .. } => { + rocket::response::status::Custom::( + rocket::http::Status::InternalServerError, + error_json, + ) + .respond_to(request) + } + ApplicationError::SubmissionNotFoundError { .. } => { + rocket::response::status::Custom::( + rocket::http::Status::NotFound, + error_json, + ) + .respond_to(request) + } + ApplicationError::SubmissionFindError { .. } => { + rocket::response::status::Custom::( + rocket::http::Status::InternalServerError, + error_json, + ) + .respond_to(request) + } + ApplicationError::TestCaseSaveError { .. } => { + rocket::response::status::Custom::( + rocket::http::Status::InternalServerError, + error_json, + ) + .respond_to(request) + } + ApplicationError::TestCaseFindError { .. } => { + rocket::response::status::Custom::( + rocket::http::Status::InternalServerError, + error_json, + ) + .respond_to(request) + } + ApplicationError::ProblemNotFoundError { .. } => { + rocket::response::status::Custom::( + rocket::http::Status::NotFound, + error_json, + ) + .respond_to(request) + } + ApplicationError::ProblemFindError { .. } => rocket::response::status::Custom::( + rocket::http::Status::InternalServerError, + error_json, + ) + .respond_to(request), + ApplicationError::ProblemSaveError { .. } => rocket::response::status::Custom::( + rocket::http::Status::InternalServerError, + error_json, + ) + .respond_to(request), + ApplicationError::TestSaveError { .. } => rocket::response::status::Custom::( + rocket::http::Status::InternalServerError, + error_json, + ) + .respond_to(request), + ApplicationError::SubmissionEvaluationError { .. } => { + rocket::response::status::Custom::( + rocket::http::Status::InternalServerError, + error_json, + ) + .respond_to(request) + } + ApplicationError::EvalMetadataError { .. } => { + rocket::response::status::Custom::( + rocket::http::Status::InternalServerError, + error_json, + ) + .respond_to(request) + } + ApplicationError::TestInputOutputError { .. } => { + rocket::response::status::Custom::( + rocket::http::Status::InternalServerError, + error_json, + ) + .respond_to(request) + } + ApplicationError::StateStoreGetError { .. } => { + rocket::response::status::Custom::( + rocket::http::Status::InternalServerError, + error_json, + ) + .respond_to(request) + } + ApplicationError::StateStoreSetError { .. } => { + rocket::response::status::Custom::( + rocket::http::Status::InternalServerError, + error_json, + ) + .respond_to(request) + } + ApplicationError::AuthError(_) => rocket::response::status::Custom::( + rocket::http::Status::Unauthorized, + error_json, + ) + .respond_to(request), + ApplicationError::CannotSubmitForUnpublishedProblemError => { + rocket::response::status::Custom::( + rocket::http::Status::Forbidden, + error_json, + ) + .respond_to(request) + } + ApplicationError::CannotViewSubmissionsForUnpublishedProblemError => { + rocket::response::status::Custom::( + rocket::http::Status::Forbidden, + error_json, + ) + .respond_to(request) + } + ApplicationError::JsonParseError { .. } => rocket::response::status::Custom::( + rocket::http::Status::InternalServerError, + error_json, + ) + .respond_to(request), + ApplicationError::CloudEventParseError { .. } => { + rocket::response::status::Custom::( + rocket::http::Status::InternalServerError, + error_json, + ) + .respond_to(request) + } + ApplicationError::Unknown(_) => rocket::response::status::Custom::( + rocket::http::Status::InternalServerError, + error_json, + ) + .respond_to(request), + } + } +} diff --git a/anubis-eval/src/domain/mod.rs b/anubis-eval/src/domain/mod.rs new file mode 100644 index 0000000..5f5ac5f --- /dev/null +++ b/anubis-eval/src/domain/mod.rs @@ -0,0 +1,4 @@ +pub mod application_error; +pub mod problem; +pub mod submission; +pub mod test; diff --git a/anubis-eval/src/domain/problem.rs b/anubis-eval/src/domain/problem.rs new file mode 100644 index 0000000..7c77e73 --- /dev/null +++ b/anubis-eval/src/domain/problem.rs @@ -0,0 +1,90 @@ +use crate::contracts::problem_eval_metadata_upserted_dtos::EvalMetadataForProblemDto; +use crate::domain::test::Test; +use uuid::Uuid; + +#[derive(Debug, Clone)] +pub struct Problem { + id: Uuid, + name: String, + proposer_id: Uuid, + is_published: bool, + time: Option, + stack_memory: Option, + total_memory: Option, + tests: Vec, +} + +impl Problem { + pub fn new( + id: Uuid, + name: String, + proposer_id: Uuid, + is_published: bool, + time: Option, + stack_memory: Option, + total_memory: Option, + tests: Vec, + ) -> Self { + Self { + id, + name, + proposer_id, + is_published, + time, + stack_memory, + total_memory, + tests, + } + } + + pub fn id(&self) -> &Uuid { + &self.id + } + + pub fn name(&self) -> &String { + &self.name + } + + pub fn proposer_id(&self) -> &Uuid { + &self.proposer_id + } + + pub fn is_published(&self) -> bool { + self.is_published + } + + pub fn time(&self) -> Option { + self.time + } + + pub fn stack_memory(&self) -> Option { + self.stack_memory + } + + pub fn total_memory(&self) -> Option { + self.total_memory + } + + pub fn tests(&self) -> &Vec { + &self.tests + } +} + +impl From for Problem { + fn from(dto: EvalMetadataForProblemDto) -> Self { + Self { + id: dto.problem_id, + name: dto.name, + proposer_id: dto.proposer_id, + is_published: dto.is_published, + time: Option::from(dto.time), + stack_memory: Option::from(dto.stack_memory), + total_memory: Option::from(dto.total_memory), + tests: dto + .tests + .into_iter() + .map(|test| (test, dto.problem_id.to_string()).into()) + .collect(), + } + } +} diff --git a/anubis-eval/src/domain/submission.rs b/anubis-eval/src/domain/submission.rs new file mode 100644 index 0000000..0e2cfe4 --- /dev/null +++ b/anubis-eval/src/domain/submission.rs @@ -0,0 +1,600 @@ +use diesel::PgConnection; +use std::fmt; +use std::time::SystemTime; +use uuid::Uuid; + +#[derive(Debug, Clone)] +pub struct Submission { + id: Uuid, + user_id: Uuid, + problem_id: Uuid, + language: Language, + source_code: String, + status: SubmissionStatus, + score: i32, + created_at: SystemTime, + avg_time: Option, + avg_memory: Option, + test_cases: Vec, +} + +impl Submission { + pub fn new( + id: Uuid, + user_id: Uuid, + problem_id: Uuid, + language: Language, + source_code: String, + status: SubmissionStatus, + score: i32, + created_at: SystemTime, + avg_time: Option, + avg_memory: Option, + test_cases: Vec, + ) -> Self { + Self { + id, + user_id, + problem_id, + language, + source_code, + status, + score, + created_at, + avg_time, + avg_memory, + test_cases, + } + } + + pub fn new_without_test_cases( + id: Uuid, + user_id: Uuid, + problem_id: Uuid, + language: Language, + source_code: String, + status: SubmissionStatus, + score: i32, + created_at: SystemTime, + avg_time: Option, + avg_memory: Option, + ) -> Self { + Self { + id, + user_id, + problem_id, + language, + source_code, + status, + score, + created_at, + avg_time, + avg_memory, + test_cases: vec![], + } + } + + pub fn new_in_pending( + id: Uuid, + user_id: Uuid, + problem_id: Uuid, + language: Language, + source_code: String, + test_cases: Vec, + ) -> Self { + Self { + id, + user_id, + problem_id, + language, + source_code, + status: SubmissionStatus::Evaluating, + score: 0, + created_at: SystemTime::now(), + avg_time: None, + avg_memory: None, + test_cases, + } + } + + pub fn new_with_metadata( + id: Uuid, + status: SubmissionStatus, + score: i32, + avg_time: Option, + avg_memory: Option, + ) -> Self { + Self { + id, + user_id: Uuid::nil(), + problem_id: Uuid::nil(), + language: Language::Unknown, + source_code: "".to_string(), + status, + score, + created_at: SystemTime::now(), + avg_time, + avg_memory, + test_cases: vec![], + } + } + + pub fn without_source_code(&self) -> Submission { + Submission { + id: self.id, + user_id: self.user_id, + problem_id: self.problem_id, + language: self.language.clone(), + source_code: "".to_string(), + status: self.status.clone(), + score: self.score, + created_at: self.created_at, + avg_time: self.avg_time, + avg_memory: self.avg_memory, + test_cases: self.test_cases.clone(), + } + } + + pub fn user_is_allowed_to_view_source_code( + &self, + user_id: &Uuid, + proposer_id: &Uuid, + conn: &mut PgConnection, + ) -> bool { + // user has solved the problem or is submission owner or is problem proposer + let user_has_solved_problem = Submission::is_problem_solved_by_user( + &user_id.to_string(), + &self.problem_id.to_string(), + conn, + ); + + user_has_solved_problem || self.user_id == *user_id || user_id == proposer_id + } + + pub fn id(&self) -> Uuid { + self.id + } + + pub fn user_id(&self) -> Uuid { + self.user_id + } + + pub fn problem_id(&self) -> Uuid { + self.problem_id + } + + pub fn language(&self) -> Language { + self.language.clone() + } + + pub fn source_code(&self) -> &String { + &self.source_code + } + + pub fn status(&self) -> SubmissionStatus { + self.status.clone() + } + + pub fn set_status(&mut self, status: SubmissionStatus) { + self.status = status; + } + + pub fn score(&self) -> i32 { + self.score + } + + pub fn set_score(&mut self, score: i32) { + self.score = score; + } + + pub fn created_at(&self) -> SystemTime { + self.created_at + } + + pub fn avg_time(&self) -> Option { + self.avg_time + } + + pub fn set_avg_time(&mut self, avg_time: Option) { + self.avg_time = avg_time; + } + + pub fn avg_memory(&self) -> Option { + self.avg_memory + } + + pub fn set_avg_memory(&mut self, avg_memory: Option) { + self.avg_memory = avg_memory; + } + + pub fn test_cases(&self) -> Vec { + self.test_cases.clone() + } + + pub fn set_test_cases(&mut self, test_cases: Vec) { + self.test_cases = test_cases; + } +} + +#[derive(Debug, Clone)] +pub struct TestCase { + token: Uuid, + submission_id: Uuid, + testcase_id: i32, + status: TestCaseStatus, + time: f32, + memory: f32, + expected_score: i32, + eval_message: Option, + compile_output: Option, + stdout: Option, + stderr: Option, +} + +impl TestCase { + pub fn new( + token: Uuid, + submission_id: Uuid, + testcase_id: i32, + status: TestCaseStatus, + time: f32, + memory: f32, + expected_score: i32, + eval_message: Option, + compile_output: Option, + stdout: Option, + stderr: Option, + ) -> Self { + Self { + token, + submission_id, + testcase_id, + status, + time, + memory, + expected_score, + eval_message, + compile_output, + stdout, + stderr, + } + } + + pub fn new_for_update( + token: Uuid, + eval_message: Option, + compile_output: Option, + status: TestCaseStatus, + time: f32, + memory: f32, + stdout: Option, + stderr: Option, + ) -> Self { + Self { + token, + submission_id: Uuid::nil(), + testcase_id: 0, + status, + time, + memory, + expected_score: 0, + eval_message, + compile_output, + stdout, + stderr, + } + } + + pub fn token(&self) -> Uuid { + self.token + } + + pub fn submission_id(&self) -> Uuid { + self.submission_id + } + + pub fn testcase_id(&self) -> i32 { + self.testcase_id + } + + pub fn status(&self) -> TestCaseStatus { + self.status.clone() + } + + pub fn time(&self) -> f32 { + self.time + } + + pub fn memory(&self) -> f32 { + self.memory + } + + pub fn expected_score(&self) -> i32 { + self.expected_score + } + + pub fn eval_message(&self) -> Option { + self.eval_message.clone() + } + + pub fn compile_output(&self) -> Option { + self.compile_output.clone() + } + + pub fn stdout(&self) -> Option { + self.stdout.clone() + } + + pub fn stderr(&self) -> Option { + self.stderr.clone() + } +} + +#[derive(Debug, Clone, PartialEq, Eq, Hash)] +pub enum SubmissionStatus { + Evaluating, + Accepted, + Rejected, + InternalError, + Unknown, +} + +impl From for SubmissionStatus { + fn from(value: String) -> Self { + match value.as_str() { + "Evaluating" => SubmissionStatus::Evaluating, + "Accepted" => SubmissionStatus::Accepted, + "Rejected" => SubmissionStatus::Rejected, + "Internal Error" => SubmissionStatus::InternalError, + _ => SubmissionStatus::Unknown, + } + } +} + +impl From for String { + fn from(value: SubmissionStatus) -> Self { + match value { + SubmissionStatus::Evaluating => "Evaluating".to_string(), + SubmissionStatus::Accepted => "Accepted".to_string(), + SubmissionStatus::Rejected => "Rejected".to_string(), + SubmissionStatus::InternalError => "Internal Error".to_string(), + SubmissionStatus::Unknown => "Unknown".to_string(), + } + } +} + +impl fmt::Display for SubmissionStatus { + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { + match self { + SubmissionStatus::Evaluating => write!(f, "Evaluating"), + SubmissionStatus::Accepted => write!(f, "Accepted"), + SubmissionStatus::Rejected => write!(f, "Rejected"), + SubmissionStatus::InternalError => write!(f, "Internal Error"), + SubmissionStatus::Unknown => write!(f, "Unknown"), + } + } +} + +#[derive(Debug, Clone, PartialEq, Eq, Hash)] +pub enum Language { + C, + Cpp, + Java, + Lua, + Python, + Rust, + Go, + CSharp, + OCaml, + Javascript, + Kotlin, + Haskell, + Unknown, +} + +impl From for Language { + fn from(value: usize) -> Self { + match value { + 49 => Language::C, + 54 => Language::Cpp, + 62 => Language::Java, + 64 => Language::Lua, + 71 => Language::Python, + 73 => Language::Rust, + 60 => Language::Go, + 51 => Language::CSharp, + 65 => Language::OCaml, + 63 => Language::Javascript, + 78 => Language::Kotlin, + 61 => Language::Haskell, + _ => Language::Unknown, + } + } +} + +impl From for usize { + fn from(value: Language) -> Self { + match value { + Language::C => 49, + Language::Cpp => 54, + Language::Java => 62, + Language::Lua => 64, + Language::Python => 71, + Language::Rust => 73, + Language::Go => 60, + Language::CSharp => 51, + Language::OCaml => 65, + Language::Javascript => 63, + Language::Kotlin => 78, + Language::Haskell => 61, + Language::Unknown => 0, + } + } +} + +impl From for Language { + fn from(value: String) -> Self { + match value.as_str() { + "C" => Language::C, + "C++" => Language::Cpp, + "Java" => Language::Java, + "Lua" => Language::Lua, + "Python" => Language::Python, + "Rust" => Language::Rust, + "Go" => Language::Go, + "C#" => Language::CSharp, + "OCaml" => Language::OCaml, + "Javascript" => Language::Javascript, + "Kotlin" => Language::Kotlin, + "Haskell" => Language::Haskell, + _ => Language::Unknown, + } + } +} + +impl From for String { + fn from(value: Language) -> Self { + match value { + Language::C => "C".to_string(), + Language::Cpp => "C++".to_string(), + Language::Java => "Java".to_string(), + Language::Lua => "Lua".to_string(), + Language::Python => "Python".to_string(), + Language::Rust => "Rust".to_string(), + Language::Go => "Go".to_string(), + Language::CSharp => "C#".to_string(), + Language::OCaml => "OCaml".to_string(), + Language::Javascript => "Javascript".to_string(), + Language::Kotlin => "Kotlin".to_string(), + Language::Haskell => "Haskell".to_string(), + Language::Unknown => "Unknown".to_string(), + } + } +} + +impl fmt::Display for Language { + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { + match self { + Language::C => write!(f, "C"), + Language::Cpp => write!(f, "C++"), + Language::Java => write!(f, "Java"), + Language::Lua => write!(f, "Lua"), + Language::Python => write!(f, "Python"), + Language::Rust => write!(f, "Rust"), + Language::Go => write!(f, "Go"), + Language::CSharp => write!(f, "C#"), + Language::OCaml => write!(f, "OCaml"), + Language::Javascript => write!(f, "Javascript"), + Language::Kotlin => write!(f, "Kotlin"), + Language::Haskell => write!(f, "Haskell"), + Language::Unknown => write!(f, "Unknown"), + } + } +} + +#[derive(Debug, Clone, PartialEq, Eq, Hash)] +pub enum TestCaseStatus { + Pending, + Running, + Accepted, + WrongAnswer, + SIGSEGV, + SIGXFSZ, + SIGFPE, + SIGABRT, + NZEC, + InternalError, + ExecFormatError, + RuntimeError, + CompilationError, + TimeLimitExceeded, + Unknown, +} + +impl From for TestCaseStatus { + fn from(value: usize) -> Self { + match value { + 1 => TestCaseStatus::Pending, + 2 => TestCaseStatus::Running, + 3 => TestCaseStatus::Accepted, + 4 => TestCaseStatus::WrongAnswer, + 5 => TestCaseStatus::TimeLimitExceeded, + 6 => TestCaseStatus::CompilationError, + 7 => TestCaseStatus::SIGSEGV, + 8 => TestCaseStatus::SIGXFSZ, + 9 => TestCaseStatus::SIGFPE, + 10 => TestCaseStatus::SIGABRT, + 11 => TestCaseStatus::NZEC, + 12 => TestCaseStatus::RuntimeError, + 13 => TestCaseStatus::InternalError, + 14 => TestCaseStatus::ExecFormatError, + _ => TestCaseStatus::Unknown, + } + } +} + +impl From for TestCaseStatus { + fn from(value: String) -> Self { + match value.as_str() { + "Pending" => TestCaseStatus::Pending, + "Running" => TestCaseStatus::Running, + "Accepted" => TestCaseStatus::Accepted, + "Wrong Answer" => TestCaseStatus::WrongAnswer, + "SIGSEGV" => TestCaseStatus::SIGSEGV, + "SIGXFSZ" => TestCaseStatus::SIGXFSZ, + "SIGFPE" => TestCaseStatus::SIGFPE, + "SIGABRT" => TestCaseStatus::SIGABRT, + "NZEC" => TestCaseStatus::NZEC, + "Internal Error" => TestCaseStatus::InternalError, + "Exec Format Error" => TestCaseStatus::ExecFormatError, + "Runtime Error" => TestCaseStatus::RuntimeError, + "Compilation Error" => TestCaseStatus::CompilationError, + "Time Limit Exceeded" => TestCaseStatus::TimeLimitExceeded, + _ => TestCaseStatus::Unknown, + } + } +} + +impl From for String { + fn from(value: TestCaseStatus) -> Self { + match value { + TestCaseStatus::Pending => "Pending".to_string(), + TestCaseStatus::Running => "Running".to_string(), + TestCaseStatus::Accepted => "Accepted".to_string(), + TestCaseStatus::WrongAnswer => "Wrong Answer".to_string(), + TestCaseStatus::SIGSEGV => "SIGSEGV".to_string(), + TestCaseStatus::SIGXFSZ => "SIGXFSZ".to_string(), + TestCaseStatus::SIGFPE => "SIGFPE".to_string(), + TestCaseStatus::SIGABRT => "SIGABRT".to_string(), + TestCaseStatus::NZEC => "NZEC".to_string(), + TestCaseStatus::InternalError => "Internal Error".to_string(), + TestCaseStatus::ExecFormatError => "Exec Format Error".to_string(), + TestCaseStatus::RuntimeError => "Runtime Error".to_string(), + TestCaseStatus::CompilationError => "Compilation Error".to_string(), + TestCaseStatus::TimeLimitExceeded => "Time Limit Exceeded".to_string(), + TestCaseStatus::Unknown => "Unknown".to_string(), + } + } +} + +impl fmt::Display for TestCaseStatus { + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { + match self { + TestCaseStatus::Pending => write!(f, "Pending"), + TestCaseStatus::Running => write!(f, "Running"), + TestCaseStatus::Accepted => write!(f, "Accepted"), + TestCaseStatus::WrongAnswer => write!(f, "Wrong Answer"), + TestCaseStatus::SIGSEGV => write!(f, "SIGSEGV"), + TestCaseStatus::SIGXFSZ => write!(f, "SIGXFSZ"), + TestCaseStatus::SIGFPE => write!(f, "SIGFPE"), + TestCaseStatus::SIGABRT => write!(f, "SIGABRT"), + TestCaseStatus::NZEC => write!(f, "NZEC"), + TestCaseStatus::InternalError => write!(f, "Internal Error"), + TestCaseStatus::ExecFormatError => write!(f, "Exec Format Error"), + TestCaseStatus::RuntimeError => write!(f, "Runtime Error"), + TestCaseStatus::CompilationError => write!(f, "Compilation Error"), + TestCaseStatus::TimeLimitExceeded => write!(f, "Time Limit Exceeded"), + TestCaseStatus::Unknown => write!(f, "Unknown"), + } + } +} diff --git a/anubis-eval/src/domain/test.rs b/anubis-eval/src/domain/test.rs new file mode 100644 index 0000000..8843322 --- /dev/null +++ b/anubis-eval/src/domain/test.rs @@ -0,0 +1,63 @@ +use crate::contracts::dapr_dtos::TestDto; +use uuid::Uuid; + +#[derive(Debug, Clone)] +pub struct Test { + id: i32, + problem_id: Uuid, + score: i32, + input_url: String, + output_url: String, +} + +impl Test { + pub fn new( + id: i32, + problem_id: Uuid, + score: i32, + input_url: String, + output_url: String, + ) -> Self { + Self { + id, + score, + problem_id, + input_url, + output_url, + } + } + + pub fn id(&self) -> i32 { + self.id + } + + pub fn problem_id(&self) -> &Uuid { + &self.problem_id + } + + pub fn score(&self) -> i32 { + self.score + } + + pub fn input_url(&self) -> &String { + &self.input_url + } + + pub fn output_url(&self) -> &String { + &self.output_url + } +} + +impl From<(TestDto, String)> for Test { + fn from(value: (TestDto, String)) -> Self { + let (value, problem_id) = value; + + Self { + id: value.test_id as i32, + problem_id: Uuid::parse_str(&problem_id).unwrap(), + score: value.score as i32, + input_url: value.input_url, + output_url: value.output_url, + } + } +} diff --git a/anubis-eval/src/infrastructure/db.rs b/anubis-eval/src/infrastructure/db.rs new file mode 100644 index 0000000..72c6498 --- /dev/null +++ b/anubis-eval/src/infrastructure/db.rs @@ -0,0 +1,23 @@ +use diesel::PgConnection; +use rocket::{Build, Rocket}; +use rocket_sync_db_pools::database; + +#[database("anubis-submissions")] +pub struct Db(PgConnection); + +pub async fn run_migrations(rocket: Rocket) -> Rocket { + use diesel_migrations::{embed_migrations, EmbeddedMigrations, MigrationHarness}; + + const MIGRATIONS: EmbeddedMigrations = embed_migrations!("migrations"); + + Db::get_one(&rocket) + .await + .expect("database connection missing") + .run(|conn| { + conn.run_pending_migrations(MIGRATIONS) + .expect("diesel migrations missing"); + }) + .await; + + rocket +} diff --git a/anubis-eval/src/infrastructure/mod.rs b/anubis-eval/src/infrastructure/mod.rs new file mode 100644 index 0000000..7c00c2a --- /dev/null +++ b/anubis-eval/src/infrastructure/mod.rs @@ -0,0 +1,7 @@ +pub mod db; +pub(in crate::infrastructure) mod pagination; +pub(in crate::infrastructure) mod problem_model; +pub mod problem_repository; +pub(in crate::infrastructure) mod raw_queries; +pub(in crate::infrastructure) mod submission_model; +pub mod submission_repository; diff --git a/anubis-eval/src/infrastructure/pagination.rs b/anubis-eval/src/infrastructure/pagination.rs new file mode 100644 index 0000000..b1730e5 --- /dev/null +++ b/anubis-eval/src/infrastructure/pagination.rs @@ -0,0 +1,72 @@ +use crate::config::di::CONFIG; +use diesel::pg::Pg; +use diesel::prelude::*; +use diesel::query_builder::*; +use diesel::query_dsl::methods::LoadQuery; +use diesel::sql_types::BigInt; + +pub trait Paginate: Sized { + fn paginate(self, page: i64) -> Paginated; +} + +impl Paginate for T { + fn paginate(self, page: i64) -> Paginated { + Paginated { + query: self, + per_page: CONFIG.default_no_submissions_per_page as i64, + page, + offset: (page - 1) * CONFIG.default_no_submissions_per_page as i64, + } + } +} + +#[derive(Debug, Clone, Copy, QueryId)] +pub struct Paginated { + query: T, + page: i64, + per_page: i64, + offset: i64, +} + +impl Paginated { + pub fn per_page(self, per_page: i64) -> Self { + Paginated { + per_page, + offset: (self.page - 1) * per_page, + ..self + } + } + + pub fn load_and_count_pages<'a, U>(self, conn: &mut PgConnection) -> QueryResult<(Vec, i64)> + where + Self: LoadQuery<'a, PgConnection, (U, i64)>, + { + let per_page = self.per_page; + let results = self.load::<(U, i64)>(conn)?; + let total = results.get(0).map(|x| x.1).unwrap_or(0); + let records = results.into_iter().map(|x| x.0).collect(); + let total_pages = (total as f64 / per_page as f64).ceil() as i64; + Ok((records, total_pages)) + } +} + +impl Query for Paginated { + type SqlType = (T::SqlType, BigInt); +} + +impl RunQueryDsl for Paginated {} + +impl QueryFragment for Paginated +where + T: QueryFragment, +{ + fn walk_ast<'b>(&'b self, mut out: AstPass<'_, 'b, Pg>) -> QueryResult<()> { + out.push_sql("SELECT *, COUNT(*) OVER () FROM ("); + self.query.walk_ast(out.reborrow())?; + out.push_sql(") t LIMIT "); + out.push_bind_param::(&self.per_page)?; + out.push_sql(" OFFSET "); + out.push_bind_param::(&self.offset)?; + Ok(()) + } +} diff --git a/anubis-eval/src/infrastructure/problem_model.rs b/anubis-eval/src/infrastructure/problem_model.rs new file mode 100644 index 0000000..6de058e --- /dev/null +++ b/anubis-eval/src/infrastructure/problem_model.rs @@ -0,0 +1,78 @@ +use crate::domain::problem::Problem; +use crate::domain::test::Test; +use crate::schema::{problems, tests}; +use diesel::{AsChangeset, Associations, Identifiable, Insertable, Queryable, Selectable}; +use uuid::Uuid; + +#[derive(Debug, Clone, PartialEq, Queryable, Insertable, Identifiable, AsChangeset, Selectable)] +#[diesel(table_name = problems)] +#[diesel(check_for_backend(diesel::pg::Pg))] +pub(in crate::infrastructure) struct ProblemModel { + pub(in crate::infrastructure) id: String, + pub(in crate::infrastructure) name: String, + pub(in crate::infrastructure) proposer_id: String, + pub(in crate::infrastructure) is_published: bool, + pub(in crate::infrastructure) time: Option, + pub(in crate::infrastructure) stack_memory: Option, + pub(in crate::infrastructure) total_memory: Option, +} + +impl From for ProblemModel { + fn from(problem: Problem) -> Self { + Self { + id: problem.id().to_string(), + name: problem.name().to_string(), + proposer_id: problem.proposer_id().to_string(), + is_published: problem.is_published(), + time: problem.time(), + stack_memory: problem.stack_memory(), + total_memory: problem.total_memory(), + } + } +} + +#[derive( + Debug, + Clone, + PartialEq, + Queryable, + Insertable, + Identifiable, + AsChangeset, + Selectable, + Associations, +)] +#[diesel(belongs_to(ProblemModel, foreign_key = problem_id))] +#[diesel(table_name = tests)] +#[diesel(check_for_backend(diesel::pg::Pg))] +pub(in crate::infrastructure) struct TestModel { + pub(in crate::infrastructure) id: i32, + pub(in crate::infrastructure) problem_id: String, + pub(in crate::infrastructure) score: i32, + pub(in crate::infrastructure) input_url: String, + pub(in crate::infrastructure) output_url: String, +} + +impl From for TestModel { + fn from(test: Test) -> Self { + Self { + id: test.id(), + problem_id: test.problem_id().to_string(), + score: test.score(), + input_url: test.input_url().to_string(), + output_url: test.output_url().to_string(), + } + } +} + +impl From for Test { + fn from(test: TestModel) -> Self { + Test::new( + test.id, + Uuid::parse_str(&test.problem_id).unwrap(), + test.score, + test.input_url, + test.output_url, + ) + } +} diff --git a/anubis-eval/src/infrastructure/problem_repository.rs b/anubis-eval/src/infrastructure/problem_repository.rs new file mode 100644 index 0000000..687ad26 --- /dev/null +++ b/anubis-eval/src/infrastructure/problem_repository.rs @@ -0,0 +1,89 @@ +use crate::domain::application_error::ApplicationError; +use crate::domain::problem::Problem; +use crate::domain::test::Test; +use crate::infrastructure::problem_model::{ProblemModel, TestModel}; +use crate::schema::problems; +use crate::schema::problems::dsl::problems as all_problems; +use crate::schema::tests; +use crate::schema::tests::dsl::tests as all_tests; +use diesel::{PgConnection, QueryDsl, RunQueryDsl, SelectableHelper}; +use uuid::Uuid; + +impl Problem { + pub fn upsert(&self, conn: &mut PgConnection) -> Result<(), ApplicationError> { + let model: ProblemModel = self.clone().into(); + + diesel::insert_into(all_problems) + .values(&model) + .on_conflict(problems::id) + .do_update() + .set(&model) + .execute(conn) + .map_err(|e| ApplicationError::ProblemSaveError { + problem_id: self.id().to_string(), + source: e, + })?; + + self.tests() + .iter() + .map(|test| test.upsert(conn)) + .collect::, ApplicationError>>()?; + + Ok(()) + } + + pub fn find_by_id( + problem_id: &String, + conn: &mut PgConnection, + ) -> Result { + all_problems + .find(problem_id) + .inner_join(all_tests) + .select((ProblemModel::as_select(), TestModel::as_select())) + .load::<(ProblemModel, TestModel)>(conn) + .map_err(|source| ApplicationError::ProblemFindError { source }) + .map(|problem_and_tests| match problem_and_tests.is_empty() { + true => Err(ApplicationError::ProblemNotFoundError { + problem_id: problem_id.to_string(), + }), + false => { + let problem = problem_and_tests.first().unwrap().0.clone(); + let tests = problem_and_tests + .into_iter() + .map(|(_, test)| test.into()) + .collect::>(); + + Ok(Problem::new( + Uuid::parse_str(&problem.id).unwrap(), + problem.name, + Uuid::parse_str(&problem.proposer_id).unwrap(), + problem.is_published, + problem.time, + problem.stack_memory, + problem.total_memory, + tests, + )) + } + })? + } +} + +impl Test { + pub fn upsert(&self, conn: &mut PgConnection) -> Result<(), ApplicationError> { + let model: TestModel = self.clone().into(); + + diesel::insert_into(all_tests) + .values(&model) + .on_conflict((tests::id, tests::problem_id)) + .do_update() + .set(&model) + .execute(conn) + .map_err(|e| ApplicationError::TestSaveError { + problem_id: self.problem_id().to_string(), + test_id: self.id().to_string(), + source: e, + })?; + + Ok(()) + } +} diff --git a/anubis-eval/src/infrastructure/raw_queries.rs b/anubis-eval/src/infrastructure/raw_queries.rs new file mode 100644 index 0000000..2ff1d75 --- /dev/null +++ b/anubis-eval/src/infrastructure/raw_queries.rs @@ -0,0 +1,48 @@ +pub static GET_HIGHEST_SCORE_SUBMISSIONS_PER_USER: &str = r" +SELECT s.* +FROM submissions s +WHERE ( + s.user_id = $1 + OR s.problem_id IN ( + SELECT p.id + FROM problems p + WHERE p.is_published = TRUE + OR p.proposer_id = $1 + ) +) + AND s.user_id = $2 + AND s.score = ( + SELECT MAX(score) + FROM submissions + WHERE user_id = s.user_id AND problem_id = s.problem_id +) + AND s.created_at = ( + SELECT MIN(created_at) + FROM submissions + WHERE user_id = s.user_id AND problem_id = s.problem_id AND score = s.score +)"; + +pub static GET_HIGHEST_SCORE_SUBMISSIONS_PER_USER_AND_PROBLEM: &str = r" +SELECT s.* +FROM submissions s +WHERE ( + s.user_id = $1 + OR s.problem_id IN ( + SELECT p.id + FROM problems p + WHERE p.is_published = TRUE + OR p.proposer_id = $1 + ) +) + AND s.user_id = $2 + AND s.problem_id = $3 + AND s.score = ( + SELECT MAX(score) + FROM submissions + WHERE user_id = s.user_id AND problem_id = s.problem_id +) + AND s.created_at = ( + SELECT MIN(created_at) + FROM submissions + WHERE user_id = s.user_id AND problem_id = s.problem_id AND score = s.score +)"; diff --git a/anubis-eval/src/infrastructure/submission_model.rs b/anubis-eval/src/infrastructure/submission_model.rs new file mode 100644 index 0000000..79a3194 --- /dev/null +++ b/anubis-eval/src/infrastructure/submission_model.rs @@ -0,0 +1,134 @@ +use crate::domain::submission::{Submission, TestCase}; +use crate::schema::submissions; +use crate::schema::submissions_testcases; +use diesel::{ + AsChangeset, Associations, Identifiable, Insertable, Queryable, QueryableByName, Selectable, +}; +use std::time::SystemTime; +use uuid::Uuid; + +#[derive( + Debug, + Clone, + PartialEq, + Queryable, + Insertable, + Identifiable, + AsChangeset, + Selectable, + QueryableByName, +)] +#[diesel(belongs_to(ProblemModel, foreign_key = problem_id))] +#[diesel(table_name = submissions)] +#[diesel(check_for_backend(diesel::pg::Pg))] +pub(in crate::infrastructure) struct SubmissionModel { + pub(in crate::infrastructure) id: String, + pub(in crate::infrastructure) user_id: String, + pub(in crate::infrastructure) problem_id: String, + pub(in crate::infrastructure) language: String, + pub(in crate::infrastructure) source_code: String, + pub(in crate::infrastructure) status: String, + pub(in crate::infrastructure) score: i32, + pub(in crate::infrastructure) created_at: SystemTime, + pub(in crate::infrastructure) avg_time: Option, + pub(in crate::infrastructure) avg_memory: Option, +} + +impl From for SubmissionModel { + fn from(submission: Submission) -> Self { + Self { + id: submission.id().to_string(), + user_id: submission.user_id().to_string(), + problem_id: submission.problem_id().to_string(), + language: submission.language().to_string(), + source_code: submission.source_code().to_string(), + status: submission.status().to_string(), + score: submission.score(), + created_at: submission.created_at(), + avg_time: submission.avg_time(), + avg_memory: submission.avg_memory(), + } + } +} + +impl From for Submission { + fn from(submission: SubmissionModel) -> Self { + Submission::new_without_test_cases( + Uuid::parse_str(&submission.id).unwrap(), + Uuid::parse_str(&submission.user_id).unwrap(), + Uuid::parse_str(&submission.problem_id).unwrap(), + submission.language.into(), + submission.source_code, + submission.status.into(), + submission.score, + submission.created_at, + submission.avg_time, + submission.avg_memory, + ) + } +} + +#[derive( + Debug, + Clone, + PartialEq, + Queryable, + Insertable, + Identifiable, + AsChangeset, + Selectable, + Associations, +)] +#[diesel(belongs_to(SubmissionModel, foreign_key = submission_id))] +#[diesel(table_name = submissions_testcases)] +#[diesel(primary_key(token))] +#[diesel(check_for_backend(diesel::pg::Pg))] +pub(in crate::infrastructure) struct TestCaseModel { + pub(in crate::infrastructure) token: String, + pub(in crate::infrastructure) submission_id: String, + pub(in crate::infrastructure) status: String, + pub(in crate::infrastructure) time: f32, + pub(in crate::infrastructure) memory: f32, + pub(in crate::infrastructure) eval_message: Option, + pub(in crate::infrastructure) stdout: Option, + pub(in crate::infrastructure) stderr: Option, + pub(in crate::infrastructure) testcase_id: i32, + pub(in crate::infrastructure) expected_score: i32, + pub(in crate::infrastructure) compile_output: Option, +} + +impl From for TestCaseModel { + fn from(testcase: TestCase) -> Self { + Self { + token: testcase.token().to_string(), + submission_id: testcase.submission_id().to_string(), + testcase_id: testcase.testcase_id(), + status: testcase.status().to_string(), + time: testcase.time(), + memory: testcase.memory(), + expected_score: testcase.expected_score(), + eval_message: testcase.eval_message(), + compile_output: testcase.compile_output(), + stdout: testcase.stdout(), + stderr: testcase.stderr(), + } + } +} + +impl From for TestCase { + fn from(testcase: TestCaseModel) -> Self { + TestCase::new( + Uuid::parse_str(&testcase.token).unwrap(), + Uuid::parse_str(&testcase.submission_id).unwrap(), + testcase.testcase_id, + testcase.status.into(), + testcase.time, + testcase.memory, + testcase.expected_score, + testcase.eval_message, + testcase.compile_output, + testcase.stdout, + testcase.stderr, + ) + } +} diff --git a/anubis-eval/src/infrastructure/submission_repository.rs b/anubis-eval/src/infrastructure/submission_repository.rs new file mode 100644 index 0000000..1521c2f --- /dev/null +++ b/anubis-eval/src/infrastructure/submission_repository.rs @@ -0,0 +1,486 @@ +use crate::contracts::fps_dtos::{ + FpsSubmissionDto, Languages, SortDiscriminant, SubmissionStatuses, Uuids, +}; +use crate::domain::application_error::ApplicationError; +use crate::domain::problem::Problem; +use crate::domain::submission::{Submission, SubmissionStatus, TestCase, TestCaseStatus}; +use crate::infrastructure::pagination::Paginate; +use crate::infrastructure::raw_queries; +use crate::infrastructure::submission_model::{SubmissionModel, TestCaseModel}; +use crate::schema::problems::dsl::problems as all_problems; +use crate::schema::submissions::dsl::submissions as all_submissions; +use crate::schema::submissions_testcases::dsl::submissions_testcases as all_testcases; +use diesel::sql_types::Text; +use diesel::{sql_query, BoolExpressionMethods, ExpressionMethods, SelectableHelper}; +use diesel::{PgConnection, QueryDsl, RunQueryDsl}; +use rocket::error; +use std::time::SystemTime; +use uuid::Uuid; + +type SubmissionsPaginated = (Vec<(Submission, Problem)>, usize, usize); + +impl Submission { + pub fn insert(&self, conn: &mut PgConnection) -> Result<(), ApplicationError> { + // check if submission fails to insert + let submission: SubmissionModel = self.clone().into(); + + diesel::insert_into(all_submissions) + .values(submission) + .execute(conn) + .map_err(|source| ApplicationError::SubmissionSaveError { + submission_id: self.id().to_string(), + source, + })?; + + // check if any of the test cases fail to insert + self.test_cases() + .iter() + .map(|testcase| testcase.insert(conn)) + .collect::, _>>()?; + + Ok(()) + } + + pub fn upsert(&self, conn: &mut PgConnection) -> Result<(), ApplicationError> { + // check if submission fails to insert + let submission: SubmissionModel = self.clone().into(); + + diesel::insert_into(all_submissions) + .values(&submission) + .on_conflict(crate::schema::submissions::dsl::id) + .do_update() + .set(&submission) + .execute(conn) + .map_err(|source| ApplicationError::SubmissionSaveError { + submission_id: self.id().to_string(), + source, + })?; + + // check if any of the test cases fail to insert + self.test_cases() + .iter() + .map(|testcase| testcase.upsert(conn)) + .collect::, _>>()?; + + Ok(()) + } + + pub fn delete_by_id(id: &String, conn: &mut PgConnection) -> Result<(), ApplicationError> { + // delete submission and its test cases + TestCase::delete_by_submission_id(id, conn)?; + + diesel::delete(all_submissions.find(id.to_string())) + .execute(conn) + .map_err(|source| ApplicationError::SubmissionSaveError { + submission_id: id.to_string(), + source, + })?; + + Ok(()) + } + + pub fn find_by_id( + id: &String, + conn: &mut PgConnection, + ) -> Result<(Submission, Problem), ApplicationError> { + all_submissions + .find(id.to_string()) + .inner_join(all_testcases) + .select((SubmissionModel::as_select(), TestCaseModel::as_select())) + .load::<(SubmissionModel, TestCaseModel)>(conn) + .map_err(|source| ApplicationError::SubmissionFindError { source }) + .map( + |submission_and_testcases| match submission_and_testcases.is_empty() { + true => Err(ApplicationError::SubmissionNotFoundError { + submission_id: id.to_string(), + }), + false => { + let submission = submission_and_testcases.first().unwrap().0.clone(); + let problem = Problem::find_by_id(&submission.problem_id, conn)?; + + let mut testcases = submission_and_testcases + .into_iter() + .map(|(_, testcase)| testcase.into()) + .collect::>(); + + testcases.sort_by_key(|a| a.testcase_id()); + + Ok(( + Submission::new( + Uuid::parse_str(&submission.id).unwrap(), + Uuid::parse_str(&submission.user_id).unwrap(), + Uuid::parse_str(&submission.problem_id).unwrap(), + submission.language.into(), + submission.source_code, + submission.status.into(), + submission.score, + submission.created_at, + submission.avg_time, + submission.avg_memory, + testcases, + ), + problem, + )) + } + }, + )? + } + + pub fn find_by_status( + status: SubmissionStatus, + conn: &mut PgConnection, + ) -> Result, ApplicationError> { + all_submissions + .filter(crate::schema::submissions::dsl::status.eq(status.to_string())) + .select(crate::schema::submissions::dsl::id) + .load::(conn) + .map_err(|source| ApplicationError::SubmissionFindError { source }) + } + + pub fn find_highest_score_submissions_by_user_id( + current_user_id: &Uuid, + user_id: &String, + problem_id: &Option, + conn: &mut PgConnection, + ) -> Result, ApplicationError> { + // filter out submissions which should not be visible for current user, + // i.e. keep only submissions for which the problem is published or + // the user is the submitter or the user is the proposer + + // if problem_id is provided, return the submission with the highest score for that problem + // else return a vector of submissions with the highest score for each problem + + let query_results = match problem_id { + Some(problem_id) => { + sql_query(raw_queries::GET_HIGHEST_SCORE_SUBMISSIONS_PER_USER_AND_PROBLEM) + .bind::(current_user_id.to_string()) + .bind::(user_id.to_string()) + .bind::(problem_id.to_string()) + .load::(conn) + } + None => sql_query(raw_queries::GET_HIGHEST_SCORE_SUBMISSIONS_PER_USER) + .bind::(current_user_id.to_string()) + .bind::(user_id.to_string()) + .load::(conn), + }; + + query_results + .map_err(|source| ApplicationError::SubmissionFindError { source }) + .map(|submissions| { + submissions + .into_iter() + .map(|submission| { + let problem = Problem::find_by_id(&submission.problem_id, conn)?; + + Ok((submission.into(), problem)) + }) + .collect::, _>>() + })? + } + + pub fn find_all( + fps_dto: FpsSubmissionDto, + user_id: &Uuid, + conn: &mut PgConnection, + ) -> Result { + use crate::contracts::fps_dtos; + use crate::schema::{problems, submissions}; + + let mut query = all_submissions + .select(SubmissionModel::as_select()) + .into_boxed(); + + // filter out submissions which should not be visible for current user, + // i.e. keep only submissions for which the problem is published or + // the user is the submitter or the user is the proposer + query = query.filter( + submissions::dsl::problem_id + .eq_any( + all_problems.select(problems::dsl::id).filter( + problems::dsl::is_published + .eq(true) + .or(problems::dsl::proposer_id.eq(user_id.to_string())), + ), + ) + .or(submissions::dsl::user_id.eq(user_id.to_string())), + ); + + if let Some(Uuids { uuids: user_ids }) = fps_dto.user_id { + let user_ids = user_ids + .into_iter() + .map(|user_id| user_id.to_string()) + .collect::>(); + query = query.filter(submissions::dsl::user_id.eq_any(user_ids)); + } + + if let Some(Uuids { uuids: problem_ids }) = fps_dto.problem_id { + let problem_ids = problem_ids + .into_iter() + .map(|problem_id| problem_id.to_string()) + .collect::>(); + query = query.filter(submissions::dsl::problem_id.eq_any(problem_ids)); + } + + if let Some(Languages { languages }) = fps_dto.language { + let languages = languages + .into_iter() + .map(|language| language.to_string()) + .collect::>(); + query = query.filter(submissions::dsl::language.eq_any(languages)); + } + + if let Some(SubmissionStatuses { statuses }) = fps_dto.status { + let statuses = statuses + .into_iter() + .map(|status| status.to_string()) + .collect::>(); + query = query.filter(submissions::dsl::status.eq_any(statuses)); + } + + if let Some(lt_score) = fps_dto.lt_score { + query = query.filter(submissions::dsl::score.lt(lt_score as i32)); + } + + if let Some(gt_score) = fps_dto.gt_score { + query = query.filter(submissions::dsl::score.gt(gt_score as i32)); + } + + if let Some(lt_avg_time) = fps_dto.lt_avg_time { + query = query.filter(submissions::dsl::avg_time.lt(lt_avg_time)); + } + + if let Some(gt_avg_time) = fps_dto.gt_avg_time { + query = query.filter(submissions::dsl::avg_time.gt(gt_avg_time)); + } + + if let Some(lt_avg_memory) = fps_dto.lt_avg_memory { + query = query.filter(submissions::dsl::avg_memory.lt(lt_avg_memory)); + } + + if let Some(gt_avg_memory) = fps_dto.gt_avg_memory { + query = query.filter(submissions::dsl::avg_memory.gt(gt_avg_memory)); + } + + if let Some(fps_dtos::DateTime { + date_time: start_date, + }) = fps_dto.start_date + { + let start_date = SystemTime::from(start_date); + query = query.filter(submissions::dsl::created_at.gt(start_date)); + } + + if let Some(fps_dtos::DateTime { + date_time: end_date, + }) = fps_dto.end_date + { + let end_date = SystemTime::from(end_date); + query = query.filter(submissions::dsl::created_at.lt(end_date)); + } + + if let Some(sort_by) = fps_dto.sort_by { + query = match sort_by { + SortDiscriminant::ScoreAsc => query.order(submissions::dsl::score.asc()), + SortDiscriminant::ScoreDesc => query.order(submissions::dsl::score.desc()), + SortDiscriminant::CreatedAtAsc => query.order(submissions::dsl::created_at.asc()), + SortDiscriminant::CreatedAtDesc => query.order(submissions::dsl::created_at.desc()), + SortDiscriminant::AvgTimeAsc => query.order(submissions::dsl::avg_time.asc()), + SortDiscriminant::AvgTimeDesc => query.order(submissions::dsl::avg_time.desc()), + SortDiscriminant::AvgMemoryAsc => query.order(submissions::dsl::avg_memory.asc()), + SortDiscriminant::AvgMemoryDesc => query.order(submissions::dsl::avg_memory.desc()), + }; + } + + let mut query = query.paginate(fps_dto.page.unwrap_or(1)); + + if let Some(per_page) = fps_dto.per_page { + query = query.per_page(per_page); + } + + query + .load_and_count_pages::(conn) + .map_err(|source| ApplicationError::SubmissionFindError { source }) + .map(|(submissions, total_pages)| { + let submissions = submissions + .into_iter() + .map(|submission| { + let problem = Problem::find_by_id(&submission.problem_id, conn)?; + + Ok((submission.into(), problem)) + }) + .collect::, ApplicationError>>()?; + let items = submissions.len(); + Ok((submissions, items, total_pages as usize)) + })? + } + + pub fn update_evaluation_metadata( + &self, + conn: &mut PgConnection, + ) -> Result<(), ApplicationError> { + use crate::schema::submissions::{avg_memory, avg_time, score, status}; + + let submission: SubmissionModel = self.clone().into(); + + diesel::update(all_submissions.find(submission.id.to_string())) + .set(( + status.eq(submission.status), + score.eq(submission.score), + avg_time.eq(submission.avg_time), + avg_memory.eq(submission.avg_memory), + )) + .execute(conn) + .map_err(|source| ApplicationError::SubmissionSaveError { + submission_id: submission.id.to_string(), + source, + })?; + + Ok(()) + } + + pub fn is_problem_solved_by_user( + user_id: &String, + problem_id: &String, + conn: &mut PgConnection, + ) -> bool { + use crate::schema::submissions::dsl::{ + problem_id as problem_id_column, status as status_column, user_id as user_id_column, + }; + + all_submissions + .filter(user_id_column.eq(user_id.to_string())) + .filter(problem_id_column.eq(problem_id.to_string())) + .filter(status_column.eq(SubmissionStatus::Accepted.to_string())) + .select(problem_id_column) + .distinct() + .first::(conn) + .map_or_else( + |error| { + error!("Error checking if problem is solved by user: {:?}", error); + false + }, + |_| true, + ) + } +} + +impl TestCase { + fn insert(&self, conn: &mut PgConnection) -> Result<(), ApplicationError> { + let testcase: TestCaseModel = self.clone().into(); + + diesel::insert_into(all_testcases) + .values(testcase.clone()) + .execute(conn) + .map_err(|source| ApplicationError::TestCaseSaveError { + testcase_id: testcase.testcase_id.to_string(), + submission_id: testcase.submission_id.clone(), + source, + })?; + + Ok(()) + } + + fn upsert(&self, conn: &mut PgConnection) -> Result<(), ApplicationError> { + let testcase: TestCaseModel = self.clone().into(); + + diesel::insert_into(all_testcases) + .values(testcase.clone()) + .on_conflict(crate::schema::submissions_testcases::dsl::token) + .do_update() + .set(&testcase) + .execute(conn) + .map_err(|source| ApplicationError::TestCaseSaveError { + testcase_id: testcase.testcase_id.to_string(), + submission_id: testcase.submission_id.clone(), + source, + })?; + + Ok(()) + } + + pub fn find_by_submission_id( + submission_id: &String, + conn: &mut PgConnection, + ) -> Result, ApplicationError> { + all_testcases + .filter(crate::schema::submissions_testcases::dsl::submission_id.eq(submission_id)) + .select(crate::schema::submissions_testcases::all_columns) + .load::(conn) + .map_err(|source| ApplicationError::TestCaseFindError { source }) + .map(|testcases| { + testcases + .into_iter() + .map(|testcase| testcase.into()) + .collect::>() + }) + } + + pub fn find_by_status_and_submission_id( + status: TestCaseStatus, + submission_id: &String, + conn: &mut PgConnection, + ) -> Result, ApplicationError> { + all_testcases + .filter(crate::schema::submissions_testcases::dsl::status.eq(status.to_string())) + .filter(crate::schema::submissions_testcases::dsl::submission_id.eq(submission_id)) + .select(crate::schema::submissions_testcases::dsl::token) + .load::(conn) + .map_err(|source| ApplicationError::TestCaseFindError { source }) + } + + fn update(&self, conn: &mut PgConnection) -> Result<(), ApplicationError> { + use crate::schema::submissions_testcases::{ + compile_output, eval_message, memory, status, stderr, stdout, time, + }; + + let testcase: TestCaseModel = self.clone().into(); + + diesel::update(all_testcases.find(testcase.token.to_string())) + .set(( + eval_message.eq(testcase.eval_message), + compile_output.eq(testcase.compile_output), + status.eq(testcase.status), + time.eq(testcase.time), + memory.eq(testcase.memory), + stdout.eq(testcase.stdout), + stderr.eq(testcase.stderr), + )) + .execute(conn) + .map_err(|source| ApplicationError::TestCaseSaveError { + testcase_id: testcase.testcase_id.to_string(), + submission_id: testcase.submission_id.to_string(), + source, + })?; + + Ok(()) + } + + pub fn update_testcases( + testcases: Vec, + conn: &mut PgConnection, + ) -> Result<(), ApplicationError> { + testcases + .iter() + .map(|testcase| testcase.update(conn)) + .collect::, _>>()?; + + Ok(()) + } + + pub fn delete_by_submission_id( + submission_id: &String, + conn: &mut PgConnection, + ) -> Result<(), ApplicationError> { + diesel::delete( + all_testcases + .filter(crate::schema::submissions_testcases::dsl::submission_id.eq(submission_id)), + ) + .execute(conn) + .map_err(|source| ApplicationError::TestCaseSaveError { + testcase_id: "".to_string(), + submission_id: submission_id.clone(), + source, + })?; + + Ok(()) + } +} diff --git a/anubis-eval/src/main.rs b/anubis-eval/src/main.rs new file mode 100644 index 0000000..052bb6e --- /dev/null +++ b/anubis-eval/src/main.rs @@ -0,0 +1,77 @@ +use crate::api::middleware::cors::Cors; +use crate::config::di::{CONFIG, DAPR_CLIENT, DB_CONN, HTTP_CLIENT}; +use crate::config::logger::init_logger; +use crate::infrastructure::db::{run_migrations, Db}; +use rocket::fairing::AdHoc; +use rocket::log::private::info; +use rocket::{catchers, error, launch, routes}; +use tokio_cron_scheduler::{Job, JobScheduler}; + +mod api; +mod application; +mod config; +mod contracts; +mod domain; +mod infrastructure; +mod schema; +mod tests; + +#[launch] +async fn rocket() -> _ { + init_logger(); + info!("Starting rocket..."); + + let config = CONFIG.clone(); + let scheduler = JobScheduler::new() + .await + .expect("Failed to create scheduler"); + scheduler + .add( + Job::new_async(config.eval_cron_schedule.as_str(), |_, _| { + Box::pin(async { + let response = api::evaluate_submission_job::evaluate_pending_submissions( + DAPR_CLIENT.clone(), + DB_CONN.clone(), + ) + .await; + + match response { + Ok(_) => info!("Successfully evaluated pending submissions"), + Err(e) => error!("Failed to evaluate pending submissions: {:?}", e), + } + }) + }) + .expect("Failed to add evaluation job"), + ) + .await + .unwrap(); + scheduler.start().await.unwrap(); + + rocket::build() + .manage(HTTP_CLIENT.clone()) + .manage(DB_CONN.clone()) + .attach(Db::fairing()) + .attach(AdHoc::on_ignite("Diesel Migrations", run_migrations)) + .attach(Cors) + .mount("/", routes![api::catchers::cors_preflight]) + .mount( + "/api", + routes![ + api::health_check_endpoint::health_check, + api::create_submission_endpoint::create_submission, + api::get_submission_endpoint::get_submission, + api::get_submissions_endpoint::get_submissions, + api::get_highest_score_submissions::get_highest_score_submissions, + api::problem_eval_metadata_upserted_event_handler::handle_problem_eval_metadata_upserted_event, + ], + ) + .register( + "/api", + catchers![ + rocket_validation::validation_catcher, + api::catchers::unauthorized_catcher, + api::catchers::not_found_catcher, + api::catchers::internal_error_catcher, + ], + ) +} diff --git a/anubis-eval/src/schema.rs b/anubis-eval/src/schema.rs new file mode 100644 index 0000000..5c62f80 --- /dev/null +++ b/anubis-eval/src/schema.rs @@ -0,0 +1,63 @@ +// @generated automatically by Diesel CLI. + +diesel::table! { + problems (id) { + id -> Text, + name -> Text, + proposer_id -> Text, + is_published -> Bool, + time -> Nullable, + stack_memory -> Nullable, + total_memory -> Nullable, + } +} + +diesel::table! { + submissions (id) { + id -> Text, + user_id -> Text, + problem_id -> Text, + #[max_length = 255] + language -> Varchar, + source_code -> Text, + #[max_length = 255] + status -> Varchar, + score -> Int4, + created_at -> Timestamp, + avg_time -> Nullable, + avg_memory -> Nullable, + } +} + +diesel::table! { + submissions_testcases (token) { + token -> Text, + submission_id -> Text, + #[max_length = 255] + status -> Varchar, + time -> Float4, + memory -> Float4, + eval_message -> Nullable, + stdout -> Nullable, + stderr -> Nullable, + testcase_id -> Int4, + expected_score -> Int4, + compile_output -> Nullable, + } +} + +diesel::table! { + tests (id, problem_id) { + id -> Int4, + problem_id -> Text, + score -> Int4, + input_url -> Text, + output_url -> Text, + } +} + +diesel::joinable!(submissions -> problems (problem_id)); +diesel::joinable!(submissions_testcases -> submissions (submission_id)); +diesel::joinable!(tests -> problems (problem_id)); + +diesel::allow_tables_to_appear_in_same_query!(problems, submissions, submissions_testcases, tests,); diff --git a/anubis-eval/src/tests/mod.rs b/anubis-eval/src/tests/mod.rs new file mode 100644 index 0000000..3cf5d23 --- /dev/null +++ b/anubis-eval/src/tests/mod.rs @@ -0,0 +1,181 @@ +pub mod problem; +pub mod submission; +pub mod user; + +#[cfg(test)] +pub mod common { + use std::ops::DerefMut; + use std::sync::Arc; + + use crate::application::dapr_client::DaprClient; + use async_once::AsyncOnce; + use diesel::PgConnection; + use lazy_static::lazy_static; + use rocket::info; + use rocket::local::asynchronous::Client; + use serde_json::Value; + + use crate::config::di::{Atomic, DAPR_CLIENT, DB_CONN}; + use crate::config::logger::tests::init_logger; + use crate::contracts::dapr_dtos::StateStoreSetItemDto; + use crate::domain::problem::Problem; + use crate::domain::submission::Submission; + use crate::rocket; + use crate::tests::problem::tests::{PROBLEMS, TESTS}; + use crate::tests::submission::tests::{SUBMISSIONS, TEST_CASES}; + + pub type DefaultError = Box; + pub type DefaultAtomicError = Box; + pub type Result = std::result::Result; + + lazy_static! { + pub static ref ROCKET_CLIENT: AsyncOnce> = AsyncOnce::new(async { + let client = setup_rocket().await.expect("Failed to setup rocket client"); + Arc::new(client) + }); + } + + #[ctor::ctor] + fn setup() { + dotenvy::from_filename(".env.template").expect("Failed to load env vars"); + init_logger(); + } + + async fn setup_rocket() -> Result { + let client = Client::tracked(rocket().await).await?; + seed().await?; + + Ok(client) + } + + async fn seed() -> Result<()> { + let conn = DB_CONN.clone(); + seed_problems(conn.clone()).await?; + seed_submissions(conn.clone()).await?; + + let dapr_client = DAPR_CLIENT.clone(); + seed_tests_cache(dapr_client.clone()).await?; + + Ok(()) + } + + async fn seed_problems(conn: Atomic) -> Result<()> { + let mut db = conn.lock().await; + + let raw_test1 = TESTS.get("SumAB_Test1")?.to_owned(); + let raw_test2 = TESTS.get("SumAB_Test2")?.to_owned(); + + let raw_problem = PROBLEMS.get("SumAB")?.to_owned(); + let problem: Problem = (raw_problem, vec![raw_test1, raw_test2]).into(); + + problem.upsert(db.deref_mut())?; + + let raw_test1 = TESTS.get("DiffAB_Test1")?.to_owned(); + + let raw_problem = PROBLEMS.get("DiffAB")?.to_owned(); + let problem: Problem = (raw_problem, vec![raw_test1]).into(); + + problem.upsert(db.deref_mut())?; + + Ok(()) + } + + async fn seed_submissions(conn: Atomic) -> Result<()> { + let mut db = conn.lock().await; + + let raw_testcase1 = TEST_CASES.get("Submission1_TestCase1")?.to_owned(); + let raw_testcase2 = TEST_CASES.get("Submission1_TestCase2")?.to_owned(); + + let raw_submission = SUBMISSIONS.get("Ordinary_SumAB_Submission1")?.to_owned(); + let submission: Submission = (raw_submission, vec![raw_testcase1, raw_testcase2]).into(); + + submission.upsert(db.deref_mut())?; + + let raw_testcase1 = TEST_CASES.get("Submission2_TestCase1")?.to_owned(); + let raw_testcase2 = TEST_CASES.get("Submission2_TestCase2")?.to_owned(); + + let raw_submission = SUBMISSIONS.get("Proposer_SumAB_Submission2")?.to_owned(); + let submission: Submission = (raw_submission, vec![raw_testcase1, raw_testcase2]).into(); + + submission.upsert(db.deref_mut())?; + + let raw_testcase1 = TEST_CASES.get("Submission3_TestCase1")?.to_owned(); + let raw_testcase2 = TEST_CASES.get("Submission3_TestCase2")?.to_owned(); + + let raw_submission = SUBMISSIONS.get("Admin_SumAB_Submission3")?.to_owned(); + let submission: Submission = (raw_submission, vec![raw_testcase1, raw_testcase2]).into(); + + submission.upsert(db.deref_mut())?; + + let raw_testcase1 = TEST_CASES.get("Submission4_TestCase1")?.to_owned(); + + let raw_submission = SUBMISSIONS.get("Admin_DiffAB_Submission4")?.to_owned(); + let submission: Submission = (raw_submission, vec![raw_testcase1]).into(); + + submission.upsert(db.deref_mut())?; + + let raw_testcase1 = TEST_CASES.get("Submission5_TestCase1")?.to_owned(); + + let raw_submission = SUBMISSIONS.get("Ordinary_DiffAB_Submission5")?.to_owned(); + let submission: Submission = (raw_submission, vec![raw_testcase1]).into(); + + submission.upsert(db.deref_mut())?; + + Ok(()) + } + + async fn seed_tests_cache(dapr_client: Atomic) -> Result<()> { + let dapr_client = dapr_client.lock().await; + + let problem1_id = PROBLEMS.get("SumAB")?.id.clone(); + dapr_client + .save_test_for_problem(1, problem1_id.clone(), ("1 2".to_string(), "3".to_string())) + .await?; + dapr_client + .save_test_for_problem(2, problem1_id.clone(), ("3 4".to_string(), "7".to_string())) + .await?; + + let problem2_id = PROBLEMS.get("DiffAB")?.id.clone(); + dapr_client + .save_test_for_problem( + 1, + problem2_id.clone(), + ("1 2".to_string(), "-1".to_string()), + ) + .await?; + + Ok(()) + } + + impl DaprClient { + async fn save_test_for_problem( + &self, + test_id: usize, + problem_id: String, + (input, output): (String, String), + ) -> Result<()> { + let input_key = format!("{}-{}-input", problem_id, test_id); + info!("Saving test input: {}", input_key); + let input_item = StateStoreSetItemDto { + key: input_key.clone(), + value: Value::String(input.clone()), + }; + + let output_key = format!("{}-{}-output", problem_id, test_id); + let output_item = StateStoreSetItemDto { + key: output_key, + value: Value::String(output.clone()), + }; + + self.set_items_in_state_store(vec![input_item, output_item]) + .await?; + + let val = self + .get_item_from_state_store(input_key.clone().as_str()) + .await?; + info!("Value: {:?}", val); + + Ok(()) + } + } +} diff --git a/anubis-eval/src/tests/problem.rs b/anubis-eval/src/tests/problem.rs new file mode 100644 index 0000000..f89e7b5 --- /dev/null +++ b/anubis-eval/src/tests/problem.rs @@ -0,0 +1,69 @@ +#[cfg(test)] +pub mod tests { + use crate::domain; + use cder::{Dict, StructLoader}; + use lazy_static::lazy_static; + use serde::Deserialize; + + #[derive(Debug, Clone, Deserialize)] + pub struct Problem { + pub id: String, + pub name: String, + pub proposer_id: String, + pub is_published: bool, + pub time: f32, + pub stack_memory: f32, + pub total_memory: f32, + } + + impl From<(Problem, Vec)> for domain::problem::Problem { + fn from((problem, tests): (Problem, Vec)) -> Self { + domain::problem::Problem::new( + problem.id.parse().unwrap(), + problem.name, + problem.proposer_id.parse().unwrap(), + problem.is_published, + Some(problem.time), + Some(problem.stack_memory), + Some(problem.total_memory), + tests.into_iter().map(|test| test.into()).collect(), + ) + } + } + + #[derive(Debug, Clone, Deserialize)] + pub struct Test { + pub id: i32, + pub problem_id: String, + pub score: i32, + pub input_url: String, + pub output_url: String, + } + + impl From for domain::test::Test { + fn from(test: Test) -> Self { + domain::test::Test::new( + test.id, + test.problem_id.parse().unwrap(), + test.score, + test.input_url, + test.output_url, + ) + } + } + + lazy_static! { + pub static ref PROBLEMS: StructLoader = { + let mut loader = StructLoader::::new("problems.yaml", "tests-setup/fixtures"); + loader.load(&Dict::::new()).unwrap(); + + loader + }; + pub static ref TESTS: StructLoader = { + let mut loader = StructLoader::::new("tests.yaml", "tests-setup/fixtures"); + loader.load(&Dict::::new()).unwrap(); + + loader + }; + } +} diff --git a/anubis-eval/src/tests/submission.rs b/anubis-eval/src/tests/submission.rs new file mode 100644 index 0000000..c3647fa --- /dev/null +++ b/anubis-eval/src/tests/submission.rs @@ -0,0 +1,93 @@ +#[cfg(test)] +pub mod tests { + use crate::domain; + use cder::{Dict, StructLoader}; + use lazy_static::lazy_static; + use serde::Deserialize; + use std::time::SystemTime; + + #[derive(Debug, Clone, Deserialize)] + pub struct Submission { + pub id: String, + pub user_id: String, + pub problem_id: String, + pub language: String, + pub source_code: String, + pub status: String, + pub score: i32, + pub created_at: String, + pub avg_time: f32, + pub avg_memory: f32, + } + + impl From<(Submission, Vec)> for domain::submission::Submission { + fn from((submission, test_cases): (Submission, Vec)) -> Self { + domain::submission::Submission::new( + submission.id.parse().unwrap(), + submission.user_id.parse().unwrap(), + submission.problem_id.parse().unwrap(), + submission.language.into(), + submission.source_code, + submission.status.into(), + submission.score, + SystemTime::now(), + Some(submission.avg_time), + Some(submission.avg_memory), + test_cases + .into_iter() + .map(|test_case| test_case.into()) + .collect(), + ) + } + } + + #[derive(Debug, Clone, Deserialize)] + pub struct TestCase { + pub token: String, + pub submission_id: String, + pub status: String, + pub time: f32, + pub memory: f32, + pub eval_message: String, + pub stdout: String, + pub stderr: String, + pub testcase_id: i32, + pub expected_score: i32, + pub compile_output: String, + } + + impl From for domain::submission::TestCase { + fn from(test_case: TestCase) -> Self { + domain::submission::TestCase::new( + test_case.token.parse().unwrap(), + test_case.submission_id.parse().unwrap(), + test_case.testcase_id, + test_case.status.into(), + test_case.time, + test_case.memory, + test_case.expected_score, + Some(test_case.eval_message), + Some(test_case.compile_output), + Some(test_case.stdout), + Some(test_case.stderr), + ) + } + } + + lazy_static! { + pub static ref SUBMISSIONS: StructLoader = { + let mut loader = + StructLoader::::new("submissions.yaml", "tests-setup/fixtures"); + loader.load(&Dict::::new()).unwrap(); + + loader + }; + pub static ref TEST_CASES: StructLoader = { + let mut loader = + StructLoader::::new("test_cases.yaml", "tests-setup/fixtures"); + loader.load(&Dict::::new()).unwrap(); + + loader + }; + } +} diff --git a/anubis-eval/src/tests/user.rs b/anubis-eval/src/tests/user.rs new file mode 100644 index 0000000..449c20f --- /dev/null +++ b/anubis-eval/src/tests/user.rs @@ -0,0 +1,55 @@ +#[cfg(test)] +pub mod tests { + use cder::{Dict, StructLoader}; + use lazy_static::lazy_static; + use serde::Deserialize; + use std::fmt; + use uuid::Uuid; + + #[derive(Debug, Clone, Deserialize)] + pub struct User { + pub id: Uuid, + pub email: String, + pub role: Vec, + } + + pub enum UserProfile { + Admin, + Proposer, + Ordinary, + } + + impl User { + pub fn get(user_profile: UserProfile) -> User { + match user_profile { + UserProfile::Admin => USERS.get("Admin").unwrap().to_owned(), + UserProfile::Proposer => USERS.get("Proposer").unwrap().to_owned(), + UserProfile::Ordinary => USERS.get("Ordinary").unwrap().to_owned(), + } + } + } + + #[derive(Debug, Clone, Deserialize)] + pub enum Role { + Admin, + Proposer, + } + + impl fmt::Display for Role { + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { + match self { + Role::Admin => write!(f, "Admin"), + Role::Proposer => write!(f, "Proposer"), + } + } + } + + lazy_static! { + static ref USERS: StructLoader = { + let mut loader = StructLoader::::new("users.yaml", "tests-setup/fixtures"); + loader.load(&Dict::::new()).unwrap(); + + loader + }; + } +} diff --git a/anubis-eval/tests-setup/cache-stub/.dockerignore b/anubis-eval/tests-setup/cache-stub/.dockerignore new file mode 100644 index 0000000..e69de29 diff --git a/anubis-eval/tests-setup/cache-stub/.gitgnore b/anubis-eval/tests-setup/cache-stub/.gitgnore new file mode 100644 index 0000000..64ae7f3 --- /dev/null +++ b/anubis-eval/tests-setup/cache-stub/.gitgnore @@ -0,0 +1,25 @@ +# If you prefer the allow list template instead of the deny list, see community template: +# https://github.com/github/gitignore/blob/main/community/Golang/Go.AllowList.gitignore +# +# Binaries for programs and plugins +*.exe +*.exe~ +*.dll +*.so +*.dylib + +# Test binary, built with `go test -c` +*.test + +# Output of the go coverage tool, specifically when used with LiteIDE +*.out + +# Dependency directories (remove the comment below to include it) +# vendor/ + +# Go workspace file +go.work +go.work.sum + +# env file +.env \ No newline at end of file diff --git a/anubis-eval/tests-setup/cache-stub/Dockerfile b/anubis-eval/tests-setup/cache-stub/Dockerfile new file mode 100644 index 0000000..df48461 --- /dev/null +++ b/anubis-eval/tests-setup/cache-stub/Dockerfile @@ -0,0 +1,26 @@ +# specify the base image to be used for the application, alpine or ubuntu +FROM golang:1.22.4-alpine AS build + +# create a working directory inside the image +WORKDIR /app + +# copy Go modules and dependencies to image +COPY go.mod ./ +COPY go.sum ./ + +# download Go modules and dependencies +RUN go mod download + +# copy directory files i.e all files ending with .go +COPY *.go ./ + +# compile application +RUN go build -o /cache-stub + +FROM scratch + +WORKDIR / + +COPY --from=build /cache-stub /cache-stub + +ENTRYPOINT ["/cache-stub"] \ No newline at end of file diff --git a/anubis-eval/tests-setup/cache-stub/go.mod b/anubis-eval/tests-setup/cache-stub/go.mod new file mode 100644 index 0000000..8f49fc5 --- /dev/null +++ b/anubis-eval/tests-setup/cache-stub/go.mod @@ -0,0 +1,37 @@ +module cache-stub + +go 1.22.4 + +require github.com/gin-gonic/gin v1.10.0 + +require ( + github.com/bytedance/sonic v1.11.6 // indirect + github.com/bytedance/sonic/loader v0.1.1 // indirect + github.com/cespare/xxhash/v2 v2.2.0 // indirect + github.com/cloudwego/base64x v0.1.4 // indirect + github.com/cloudwego/iasm v0.2.0 // indirect + github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f // indirect + github.com/gabriel-vasile/mimetype v1.4.3 // indirect + github.com/gin-contrib/sse v0.1.0 // indirect + github.com/go-playground/locales v0.14.1 // indirect + github.com/go-playground/universal-translator v0.18.1 // indirect + github.com/go-playground/validator/v10 v10.20.0 // indirect + github.com/goccy/go-json v0.10.2 // indirect + github.com/json-iterator/go v1.1.12 // indirect + github.com/klauspost/cpuid/v2 v2.2.7 // indirect + github.com/leodido/go-urn v1.4.0 // indirect + github.com/mattn/go-isatty v0.0.20 // indirect + github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect + github.com/modern-go/reflect2 v1.0.2 // indirect + github.com/pelletier/go-toml/v2 v2.2.2 // indirect + github.com/redis/go-redis/v9 v9.5.3 // indirect + github.com/twitchyliquid64/golang-asm v0.15.1 // indirect + github.com/ugorji/go/codec v1.2.12 // indirect + golang.org/x/arch v0.8.0 // indirect + golang.org/x/crypto v0.23.0 // indirect + golang.org/x/net v0.25.0 // indirect + golang.org/x/sys v0.20.0 // indirect + golang.org/x/text v0.15.0 // indirect + google.golang.org/protobuf v1.34.1 // indirect + gopkg.in/yaml.v3 v3.0.1 // indirect +) diff --git a/anubis-eval/tests-setup/cache-stub/go.sum b/anubis-eval/tests-setup/cache-stub/go.sum new file mode 100644 index 0000000..b12dfca --- /dev/null +++ b/anubis-eval/tests-setup/cache-stub/go.sum @@ -0,0 +1,95 @@ +github.com/bytedance/sonic v1.11.6 h1:oUp34TzMlL+OY1OUWxHqsdkgC/Zfc85zGqw9siXjrc0= +github.com/bytedance/sonic v1.11.6/go.mod h1:LysEHSvpvDySVdC2f87zGWf6CIKJcAvqab1ZaiQtds4= +github.com/bytedance/sonic/loader v0.1.1 h1:c+e5Pt1k/cy5wMveRDyk2X4B9hF4g7an8N3zCYjJFNM= +github.com/bytedance/sonic/loader v0.1.1/go.mod h1:ncP89zfokxS5LZrJxl5z0UJcsk4M4yY2JpfqGeCtNLU= +github.com/cespare/xxhash/v2 v2.2.0 h1:DC2CZ1Ep5Y4k3ZQ899DldepgrayRUGE6BBZ/cd9Cj44= +github.com/cespare/xxhash/v2 v2.2.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= +github.com/cloudwego/base64x v0.1.4 h1:jwCgWpFanWmN8xoIUHa2rtzmkd5J2plF/dnLS6Xd/0Y= +github.com/cloudwego/base64x v0.1.4/go.mod h1:0zlkT4Wn5C6NdauXdJRhSKRlJvmclQ1hhJgA0rcu/8w= +github.com/cloudwego/iasm v0.2.0 h1:1KNIy1I1H9hNNFEEH3DVnI4UujN+1zjpuk6gwHLTssg= +github.com/cloudwego/iasm v0.2.0/go.mod h1:8rXZaNYT2n95jn+zTI1sDr+IgcD2GVs0nlbbQPiEFhY= +github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= +github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f h1:lO4WD4F/rVNCu3HqELle0jiPLLBs70cWOduZpkS1E78= +github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f/go.mod h1:cuUVRXasLTGF7a8hSLbxyZXjz+1KgoB3wDUb6vlszIc= +github.com/gabriel-vasile/mimetype v1.4.3 h1:in2uUcidCuFcDKtdcBxlR0rJ1+fsokWf+uqxgUFjbI0= +github.com/gabriel-vasile/mimetype v1.4.3/go.mod h1:d8uq/6HKRL6CGdk+aubisF/M5GcPfT7nKyLpA0lbSSk= +github.com/gin-contrib/sse v0.1.0 h1:Y/yl/+YNO8GZSjAhjMsSuLt29uWRFHdHYUb5lYOV9qE= +github.com/gin-contrib/sse v0.1.0/go.mod h1:RHrZQHXnP2xjPF+u1gW/2HnVO7nvIa9PG3Gm+fLHvGI= +github.com/gin-gonic/gin v1.10.0 h1:nTuyha1TYqgedzytsKYqna+DfLos46nTv2ygFy86HFU= +github.com/gin-gonic/gin v1.10.0/go.mod h1:4PMNQiOhvDRa013RKVbsiNwoyezlm2rm0uX/T7kzp5Y= +github.com/go-playground/assert/v2 v2.2.0 h1:JvknZsQTYeFEAhQwI4qEt9cyV5ONwRHC+lYKSsYSR8s= +github.com/go-playground/assert/v2 v2.2.0/go.mod h1:VDjEfimB/XKnb+ZQfWdccd7VUvScMdVu0Titje2rxJ4= +github.com/go-playground/locales v0.14.1 h1:EWaQ/wswjilfKLTECiXz7Rh+3BjFhfDFKv/oXslEjJA= +github.com/go-playground/locales v0.14.1/go.mod h1:hxrqLVvrK65+Rwrd5Fc6F2O76J/NuW9t0sjnWqG1slY= +github.com/go-playground/universal-translator v0.18.1 h1:Bcnm0ZwsGyWbCzImXv+pAJnYK9S473LQFuzCbDbfSFY= +github.com/go-playground/universal-translator v0.18.1/go.mod h1:xekY+UJKNuX9WP91TpwSH2VMlDf28Uj24BCp08ZFTUY= +github.com/go-playground/validator/v10 v10.20.0 h1:K9ISHbSaI0lyB2eWMPJo+kOS/FBExVwjEviJTixqxL8= +github.com/go-playground/validator/v10 v10.20.0/go.mod h1:dbuPbCMFw/DrkbEynArYaCwl3amGuJotoKCe95atGMM= +github.com/goccy/go-json v0.10.2 h1:CrxCmQqYDkv1z7lO7Wbh2HN93uovUHgrECaO5ZrCXAU= +github.com/goccy/go-json v0.10.2/go.mod h1:6MelG93GURQebXPDq3khkgXZkazVtN9CRI+MGFi0w8I= +github.com/google/go-cmp v0.5.5 h1:Khx7svrCpmxxtHBq5j2mp/xVjsi8hQMfNLvJFAlrGgU= +github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= +github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM= +github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo= +github.com/klauspost/cpuid/v2 v2.0.9/go.mod h1:FInQzS24/EEf25PyTYn52gqo7WaD8xa0213Md/qVLRg= +github.com/klauspost/cpuid/v2 v2.2.7 h1:ZWSB3igEs+d0qvnxR/ZBzXVmxkgt8DdzP6m9pfuVLDM= +github.com/klauspost/cpuid/v2 v2.2.7/go.mod h1:Lcz8mBdAVJIBVzewtcLocK12l3Y+JytZYpaMropDUws= +github.com/knz/go-libedit v1.10.1/go.mod h1:MZTVkCWyz0oBc7JOWP3wNAzd002ZbM/5hgShxwh4x8M= +github.com/leodido/go-urn v1.4.0 h1:WT9HwE9SGECu3lg4d/dIA+jxlljEa1/ffXKmRjqdmIQ= +github.com/leodido/go-urn v1.4.0/go.mod h1:bvxc+MVxLKB4z00jd1z+Dvzr47oO32F/QSNjSBOlFxI= +github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY= +github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= +github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= +github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg= +github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= +github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M= +github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= +github.com/pelletier/go-toml/v2 v2.2.2 h1:aYUidT7k73Pcl9nb2gScu7NSrKCSHIDE89b3+6Wq+LM= +github.com/pelletier/go-toml/v2 v2.2.2/go.mod h1:1t835xjRzz80PqgE6HHgN2JOsmgYu/h4qDAS4n929Rs= +github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= +github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= +github.com/redis/go-redis/v9 v9.5.3 h1:fOAp1/uJG+ZtcITgZOfYFmTKPE7n4Vclj1wZFgRciUU= +github.com/redis/go-redis/v9 v9.5.3/go.mod h1:hdY0cQFCN4fnSYT6TkisLufl/4W5UIXyv0b/CLO2V2M= +github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= +github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= +github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= +github.com/stretchr/objx v0.5.2/go.mod h1:FRsXN1f5AsAjCGJKqEizvkpNtU+EGNCLh3NxZ/8L+MA= +github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= +github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= +github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= +github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= +github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= +github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= +github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= +github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= +github.com/twitchyliquid64/golang-asm v0.15.1 h1:SU5vSMR7hnwNxj24w34ZyCi/FmDZTkS4MhqMhdFk5YI= +github.com/twitchyliquid64/golang-asm v0.15.1/go.mod h1:a1lVb/DtPvCB8fslRZhAngC2+aY1QWCk3Cedj/Gdt08= +github.com/ugorji/go/codec v1.2.12 h1:9LC83zGrHhuUA9l16C9AHXAqEV/2wBQ4nkvumAE65EE= +github.com/ugorji/go/codec v1.2.12/go.mod h1:UNopzCgEMSXjBc6AOMqYvWC1ktqTAfzJZUZgYf6w6lg= +golang.org/x/arch v0.0.0-20210923205945-b76863e36670/go.mod h1:5om86z9Hs0C8fWVUuoMHwpExlXzs5Tkyp9hOrfG7pp8= +golang.org/x/arch v0.8.0 h1:3wRIsP3pM4yUptoR96otTUOXI367OS0+c9eeRi9doIc= +golang.org/x/arch v0.8.0/go.mod h1:FEVrYAQjsQXMVJ1nsMoVVXPZg6p2JE2mx8psSWTDQys= +golang.org/x/crypto v0.23.0 h1:dIJU/v2J8Mdglj/8rJ6UUOM3Zc9zLZxVZwwxMooUSAI= +golang.org/x/crypto v0.23.0/go.mod h1:CKFgDieR+mRhux2Lsu27y0fO304Db0wZe70UKqHu0v8= +golang.org/x/net v0.25.0 h1:d/OCCoBEUq33pjydKrGQhw7IlUPI2Oylr+8qLx49kac= +golang.org/x/net v0.25.0/go.mod h1:JkAGAh7GEvH74S6FOH42FLoXpXbE/aqXSrIQjXgsiwM= +golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.20.0 h1:Od9JTbYCk261bKm4M/mw7AklTlFYIa0bIp9BgSm1S8Y= +golang.org/x/sys v0.20.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/text v0.15.0 h1:h1V/4gjBv8v9cjcR6+AR5+/cIYK5N/WAgiv4xlsEtAk= +golang.org/x/text v0.15.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= +golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543 h1:E7g+9GITq07hpfrRu66IVDexMakfv52eLZ2CXBWiKr4= +golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +google.golang.org/protobuf v1.34.1 h1:9ddQBjfCyZPOHPUiPxpYESBLc+T8P3E+Vo4IbKZgFWg= +google.golang.org/protobuf v1.34.1/go.mod h1:c6P6GXX6sHbq/GpV6MGZEdwhWPcYBgnhAHhKbcUYpos= +gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM= +gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= +gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +nullprogram.com/x/optparse v1.0.0/go.mod h1:KdyPE+Igbe0jQUrVfMqDMeJQIJZEuyV7pjYmp6pbG50= +rsc.io/pdf v0.1.1/go.mod h1:n8OzWcQ6Sp37PL01nO98y4iUCRdTGarVfzxY20ICaU4= diff --git a/anubis-eval/tests-setup/cache-stub/main.go b/anubis-eval/tests-setup/cache-stub/main.go new file mode 100644 index 0000000..ab52c96 --- /dev/null +++ b/anubis-eval/tests-setup/cache-stub/main.go @@ -0,0 +1,83 @@ +package main + +import ( + "github.com/gin-gonic/gin" + "github.com/redis/go-redis/v9" + "os" +) + +type State struct { + Key string `json:"key"` + Value string `json:"value"` +} + +func main() { + // read the redis dsn from the environment variable REDIS_DSN + redisDSN := os.Getenv("REDIS_DSN") + + if redisDSN == "" { + redisDSN = "redis://localhost:6379" + } + + // create a new redis client + opt, err := redis.ParseURL(redisDSN) + if err != nil { + panic(err) + } + + client := redis.NewClient(opt) + + r := gin.Default() + r.GET("/healthy", func(ctx *gin.Context) { + // check if the redis server is up + _, err := client.Ping(ctx).Result() + if err != nil { + ctx.JSON(500, gin.H{ + "status": "unhealthy", + "error": err.Error(), + }) + } else { + ctx.JSON(200, gin.H{ + "status": "healthy", + }) + } + }) + + r.GET("/v1.0/state/statestore/:key", func(ctx *gin.Context) { + key := ctx.Param("key") + val, err := client.Get(ctx, key).Result() + if err != nil { + ctx.JSON(404, gin.H{ + "error": err.Error(), + }) + } else { + ctx.JSON(200, val) + } + }) + + r.POST("/v1.0/state/statestore", func(ctx *gin.Context) { + var state []State + if err := ctx.BindJSON(&state); err != nil { + ctx.JSON(400, gin.H{ + "error": err.Error(), + }) + return + } + + for _, s := range state { + if err := client.Set(ctx, s.Key, s.Value, 0).Err(); err != nil { + ctx.JSON(500, gin.H{ + "error": err.Error(), + }) + } + } + + ctx.JSON(200, gin.H{ + "status": "success", + }) + }) + + if err := r.Run(); err != nil { + return + } +} diff --git a/anubis-eval/tests-setup/cache-stub/requests/get_item.http b/anubis-eval/tests-setup/cache-stub/requests/get_item.http new file mode 100644 index 0000000..d4d55d7 --- /dev/null +++ b/anubis-eval/tests-setup/cache-stub/requests/get_item.http @@ -0,0 +1 @@ +GET http://127.0.0.1:8080/v1.0/state/statestore/e8d818c3-cb9b-4164-a1f8-ba0967008086-2-input \ No newline at end of file diff --git a/anubis-eval/tests-setup/cache-stub/requests/healthy.http b/anubis-eval/tests-setup/cache-stub/requests/healthy.http new file mode 100644 index 0000000..4dcf69f --- /dev/null +++ b/anubis-eval/tests-setup/cache-stub/requests/healthy.http @@ -0,0 +1 @@ +GET http://127.0.0.1:8080/healthy \ No newline at end of file diff --git a/anubis-eval/tests-setup/cache-stub/requests/set_item.http b/anubis-eval/tests-setup/cache-stub/requests/set_item.http new file mode 100644 index 0000000..1578b8c --- /dev/null +++ b/anubis-eval/tests-setup/cache-stub/requests/set_item.http @@ -0,0 +1,13 @@ +POST http://127.0.0.1:8080/v1.0/state/statestore +Content-Type: application/json + +[ + { + "key": "hello", + "value": "there" + }, + { + "key": "foo", + "value": "bar" + } +] \ No newline at end of file diff --git a/anubis-eval/tests-setup/docker-compose.yaml b/anubis-eval/tests-setup/docker-compose.yaml new file mode 100644 index 0000000..50710ba --- /dev/null +++ b/anubis-eval/tests-setup/docker-compose.yaml @@ -0,0 +1,69 @@ +version: "3.8" + +services: + anubis-psql-db: + image: postgres:14.1 + command: postgres -c 'max_connections=250' + restart: unless-stopped + ports: + - "5433:5432" + env_file: + - ../.env.template + + server: + image: judge0/judge0:1.13.0 + volumes: + - ../.env.judge0.template:/judge0.conf:ro + ports: + - "2358:2358" + privileged: true + restart: unless-stopped + depends_on: + workers: + condition: service_started + redis: + condition: service_started + db: + condition: service_started + + workers: + image: judge0/judge0:1.13.0 + command: [ "./scripts/workers" ] + volumes: + - ../.env.judge0.template:/judge0.conf:ro + privileged: true + restart: unless-stopped + + db: + image: postgres:13.0 + env_file: ../.env.judge0.template + restart: unless-stopped + + redis: + image: redis:6.0 + command: + [ + "bash", + "-c", + 'docker-entrypoint.sh --appendonly yes --requirepass "$$REDIS_PASSWORD"', + ] + ports: + - "6379:6379" + env_file: ../.env.judge0.template + restart: unless-stopped + + cache-stub: + build: + context: ./cache-stub + dockerfile: Dockerfile + ports: + - "8080:8080" + environment: + - REDIS_DSN=redis://default:pass@redis:6379 + restart: unless-stopped + + rabbitmq: + image: rabbitmq:3-management-alpine + ports: + - "5672:5672" + restart: unless-stopped diff --git a/anubis-eval/tests-setup/fixtures/problems.yaml b/anubis-eval/tests-setup/fixtures/problems.yaml new file mode 100644 index 0000000..e5035ab --- /dev/null +++ b/anubis-eval/tests-setup/fixtures/problems.yaml @@ -0,0 +1,17 @@ +SumAB: + id: e8d818c3-cb9b-4164-a1f8-ba0967008086 + name: SumAB + proposer_id: dabdfa1f-0e29-4c74-81e4-39e91b126dff + is_published: true + time: 0.2 + stack_memory: 8 + total_memory: 64 + +DiffAB: + id: 855efecc-0953-479f-b9fd-a64e78a8c1e6 + name: DiffAB + proposer_id: db4c3d60-229f-4d49-84f9-ee560f9160d5 + is_published: false + time: 0.2 + stack_memory: 8 + total_memory: 64 \ No newline at end of file diff --git a/anubis-eval/tests-setup/fixtures/submissions.yaml b/anubis-eval/tests-setup/fixtures/submissions.yaml new file mode 100644 index 0000000..4aa5298 --- /dev/null +++ b/anubis-eval/tests-setup/fixtures/submissions.yaml @@ -0,0 +1,59 @@ +Ordinary_SumAB_Submission1: + id: a0acb0f8-b3ce-4784-86a3-149fd53d1fac + user_id: f0833576-d077-4c08-89b5-9fc47dfcb7d2 + problem_id: e8d818c3-cb9b-4164-a1f8-ba0967008086 + language: "Rust" + source_code: "fn main() { println!(\"Hello, world!\"); }" + status: "Accepted" + score: 100 + created_at: "2021-01-01T00:00:00Z" + avg_time: 0.1 + avg_memory: 32 + +Proposer_SumAB_Submission2: + id: 1b1b1b1b-1b1b-1b1b-1b1b-1b1b1b1b1b1b + user_id: dabdfa1f-0e29-4c74-81e4-39e91b126dff + problem_id: e8d818c3-cb9b-4164-a1f8-ba0967008086 + language: "Rust" + source_code: "fn main() { println!(\"Hello, world!\"); }" + status: "Accepted" + score: 100 + created_at: "2021-01-01T00:00:00Z" + avg_time: 0.2 + avg_memory: 64 + +Admin_SumAB_Submission3: + id: 2b2b2b2b-2b2b-2b2b-2b2b-2b2b2b2b2b2b + user_id: db4c3d60-229f-4d49-84f9-ee560f9160d5 + problem_id: e8d818c3-cb9b-4164-a1f8-ba0967008086 + language: "OCaml" + source_code: "print_endline \"Hello, world!\"" + status: "Rejected" + score: 50 + created_at: "2021-01-01T00:00:00Z" + avg_time: 0.2 + avg_memory: 32 + +Admin_DiffAB_Submission4: + id: 3c3c3c3c-3c3c-3c3c-3c3c-3c3c3c3c3c3c + user_id: db4c3d60-229f-4d49-84f9-ee560f9160d5 + problem_id: 855efecc-0953-479f-b9fd-a64e78a8c1e6 + language: "Python" + source_code: "print(\"Hello, world!\")" + status: "Accepted" + score: 100 + created_at: "2021-01-01T00:00:00Z" + avg_time: 0.2 + avg_memory: 64 + +Ordinary_DiffAB_Submission5: + id: 4d4d4d4d-4d4d-4d4d-4d4d-4d4d4d4d4d4d + user_id: f0833576-d077-4c08-89b5-9fc47dfcb7d2 + problem_id: 855efecc-0953-479f-b9fd-a64e78a8c1e6 + language: "Python" + source_code: "print(\"Hello, world!\")" + status: "Rejected" + score: 0 + created_at: "2021-01-01T00:00:00Z" + avg_time: 0.2 + avg_memory: 32 \ No newline at end of file diff --git a/anubis-eval/tests-setup/fixtures/test_cases.yaml b/anubis-eval/tests-setup/fixtures/test_cases.yaml new file mode 100644 index 0000000..e9bf0b2 --- /dev/null +++ b/anubis-eval/tests-setup/fixtures/test_cases.yaml @@ -0,0 +1,103 @@ +Submission1_TestCase1: + token: a478f90d-b4d2-49d5-b85f-9b28afbfcfb7 + submission_id: a0acb0f8-b3ce-4784-86a3-149fd53d1fac + status: "Accepted" + time: 0.1 + memory: 32 + eval_message: "Accepted" + stdout: "" + stderr: "" + testcase_id: 1 + expected_score: 50 + compile_output: "" + +Submission1_TestCase2: + token: 65f28cfd-02b0-4f52-85ee-b93bb7c095a6 + submission_id: a0acb0f8-b3ce-4784-86a3-149fd53d1fac + status: "Accepted" + time: 0.1 + memory: 32 + eval_message: "Accepted" + stdout: "" + stderr: "" + testcase_id: 2 + expected_score: 50 + compile_output: "" + +Submission2_TestCase1: + token: bd5b08b1-3cb0-40da-8b32-e9ad30e565bb + submission_id: 1b1b1b1b-1b1b-1b1b-1b1b-1b1b1b1b1b1b + status: "Accepted" + time: 0.2 + memory: 64 + eval_message: "Accepted" + stdout: "" + stderr: "" + testcase_id: 1 + expected_score: 50 + compile_output: "" + +Submission2_TestCase2: + token: 60ba7e13-f775-46b3-bf4d-c9b1354831a8 + submission_id: 1b1b1b1b-1b1b-1b1b-1b1b-1b1b1b1b1b1b + status: "Accepted" + time: 0.2 + memory: 64 + eval_message: "Accepted" + stdout: "" + stderr: "" + testcase_id: 2 + expected_score: 50 + compile_output: "" + +Submission3_TestCase1: + token: ddc53d46-1915-4836-83ec-852bec5e9f5e + submission_id: 2b2b2b2b-2b2b-2b2b-2b2b-2b2b2b2b2b2b + status: "Rejected" + time: 0.2 + memory: 32 + eval_message: "Wrong Answer" + stdout: "" + stderr: "" + testcase_id: 1 + expected_score: 50 + compile_output: "" + +Submission3_TestCase2: + token: 1b1b1b1b-1b1b-1b1b-1b1b-1b1b1b1b1b1b + submission_id: 2b2b2b2b-2b2b-2b2b-2b2b-2b2b2b2b2b2b + status: "Accepted" + time: 0.2 + memory: 32 + eval_message: "Accepted" + stdout: "" + stderr: "" + testcase_id: 2 + expected_score: 50 + compile_output: "" + +Submission4_TestCase1: + token: 38af049a-208e-4892-9d54-28e6138644b6 + submission_id: 3c3c3c3c-3c3c-3c3c-3c3c-3c3c3c3c3c3c + status: "Accepted" + time: 0.2 + memory: 64 + eval_message: "Accepted" + stdout: "" + stderr: "" + testcase_id: 1 + expected_score: 100 + compile_output: "" + +Submission5_TestCase1: + token: ed62ccad-6437-4806-aa87-3127cda27826 + submission_id: 4d4d4d4d-4d4d-4d4d-4d4d-4d4d4d4d4d4d + status: "Runtime Error" + time: 0.2 + memory: 32 + eval_message: "Runtime Error" + stdout: "" + stderr: "Traceback (most recent call last):\n File \"main.py\", line 1, in \n print(\"Hello, world!\")\nNameError: name 'print' is not defined\n" + testcase_id: 1 + expected_score: 0 + compile_output: "" \ No newline at end of file diff --git a/anubis-eval/tests-setup/fixtures/tests.yaml b/anubis-eval/tests-setup/fixtures/tests.yaml new file mode 100644 index 0000000..fa1c45c --- /dev/null +++ b/anubis-eval/tests-setup/fixtures/tests.yaml @@ -0,0 +1,20 @@ +SumAB_Test1: + id: 1 + problem_id: e8d818c3-cb9b-4164-a1f8-ba0967008086 + score: 50 + input_url: "https://example.com/SumAB/input1.txt" + output_url: "https://example.com/SumAB/output1.txt" + +SumAB_Test2: + id: 2 + problem_id: e8d818c3-cb9b-4164-a1f8-ba0967008086 + score: 50 + input_url: "https://example.com/SumAB/input2.txt" + output_url: "https://example.com/SumAB/output2.txt" + +DiffAB_Test1: + id: 1 + problem_id: 855efecc-0953-479f-b9fd-a64e78a8c1e6 + score: 100 + input_url: "https://example.com/DiffAB/input1.txt" + output_url: "https://example.com/DiffAB/output1.txt" \ No newline at end of file diff --git a/anubis-eval/tests-setup/fixtures/users.yaml b/anubis-eval/tests-setup/fixtures/users.yaml new file mode 100644 index 0000000..dcc2d8d --- /dev/null +++ b/anubis-eval/tests-setup/fixtures/users.yaml @@ -0,0 +1,17 @@ +Ordinary: + id: f0833576-d077-4c08-89b5-9fc47dfcb7d2 + email: "user@gmail.com" + role: + +Proposer: + id: dabdfa1f-0e29-4c74-81e4-39e91b126dff + email: "proposer@gmail.com" + role: + - !Proposer + +Admin: + id: db4c3d60-229f-4d49-84f9-ee560f9160d5 + email: "admin@gmail.com" + role: + - !Admin + - !Proposer diff --git a/assets/Anubis-Architecture.png b/assets/Anubis-Architecture.png new file mode 100644 index 0000000000000000000000000000000000000000..bfabdc6b2bbfa8bf3281429994bc37bb25fd53cb GIT binary patch literal 258150 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

Gw8x6s|)RntA972J0;=K6}G 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∾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

%2Eoo{BR{Fqjv(J$ZP+O{Q0{F4|NGhSjW{* zu0^K)lo|b@)|lz|{wW#f=o8dD0CPT7IuL#1csJSa?FIOf|Fj)}gRguS^-}@=CPxJ~ zT9lv-K%L!0Sy~8+77I~oY7OJXRw!9SB*h%nVZ@40aG?9MYw>TQoZ@oHBYVy|+-Y+u z(`V}_R4+WhVkb-tMr927Mo0UnJxtR4rR`3GH$E!+KDycz(bBO6RCgE~JWVJ;=3%`Ce>VZHE`aw&V?Ub>mnM?v4sPDTI*e zUzp__QTd7bVt;(iqWDKJm=d>u1p-ukpbLNBe`3yS=wD#^f5W>tsoqPAKkx1tEtD$D zA4X2(xz=Z_=;-JU)(a^E*-d0H6skPK?*iMKWkZCN3J;1cFf@G9OYhTB^#4`>ah z;wW$I2Ncdqokk}0C)qK6y6XTbM(^_EvAMJZ)VIMqb63N%gSkJl7y;~kXih8tMc zQ$A%wzJF6v3$K8fp8cU3Cp9{~eCFVzqip>m7l%IJ0fG{eT<_B`hXP}RqaANDKM=Ir zajnG_Z0NQ&T1G3awPx!Ke>}WZSOXR{wNUOrypjQxkkWnizeoZg{1yPgI&U1%(4>m{ z@n>e_zb@^OmO^iJ#joSvUM#2= z%%+-Vy7=o)c2#Ztb`U#@r~=FjPeT$e5J2P+we6GoWr9ROY#ZccEY=qe0B{>|s=scF z=*Fa<45WH5517ublm2;MU?%_1?+b9(rBKjkeYF9;!B6ea1<2V&N{1z??s$K^&*mzT zBHIoM)9x}v@Z977c)xK#U4G8bsay5f;Y>9^9H4}jn*)F;Xv7Oi69W~-LdOf-?si#M zQ4RxW`D$>}-zMmlJ-@MMNtZ78KK6^hJhFaeK7Fg|KU7;!22bep#}4*o%aGFF%s@Szz#5uanz z#x9V`$*wXX*3={{$&q_pi?OpaUju0NanW6;=l?LF*X+cDu_xZa(p_x~AU5D~dX0Pt-^K)v539wdXF`O!J*w~as$4TWFxkQOf8);DO>;!mS&qfm)97l5@t)QJxhhAlntlnF{MMFDd z$WUL;T40)VpIvFCmeI>u%$E?!+nj}hlqqMNc4Db`Dz!RI|Dgba6vF?-1CRY+W2vz} zU-KnMyM^9*ijjOz|Go0q7}K)ud2|cmgAkJ+pd#qSQnr3+-> zBmhBpQEdB@e!)8|AO==6|F4d13YbN%??A7aK5YAQ44@d3E{^IC?M&vjG^m^lhspGY zr+2y-sO&5H0jA2Rju#jCWPr+L6_5CSc%6=WpNdok3G!3U+HpMtChbaq>dOhjS#Td2 zCwB$z&yiZ+oq3{2(7WjgNy2-r?<<8dtvG0~CXYBjYpa2Je^d1wcaEmx-z5mP&~aCj zD1w)wkZOR$WhL8sl;^PY8Q@V&58Vd46yFPFey4vG7x8cwWO=^5JexFL;KJwRYRJB) zxx)=flF_g_vvTBkij)EDK*%&}Qy26AA>;7-=M~9^&_FiF433_&A zX^E)a)IHk+q1cfQ|MBe)s>TD|74Fr$e>#m<_`lKx4FpJ3^yM4vc;hKgaB&ukQA0J` zAD-t%Mi?qz2L7s=v&r5bD6WZav9SQ~B{MZp?2^Go5>7~)@cLrhpPBIu|@ zi9eb(HeEl)c74dsfs3z7CO+Z87T&KcJ@(9H`0ti7y-kV(-8r)2bKz;;6C9@t4Kh;} z^|plD$L$@B@2VIyA21kGQPfKRgy?-ytDj}0akO5VW1)p>c6-F0Ab1Nxu|-ECyulBH z6XeJAtL?;K0=6vNAY@DUva41W{?av+)=AoayQPHN=%lJ?W=Gf;S%RmVni`_U0*%>U z|L`4ZA!tG&inWH1r`P&{`Fy(8$sj#fIhMgzJ3Qd|67=4Tc*{{iDu2yb?pqYZj;fz+ zjuZERdkF0k^>291v0L*wW?HH+TA_~>5NK`s4n+>38_%Q}AUBY~7H%;jvH$&_1m*Rw z1f>WG`XM3SXM9I`51ejtv;IeR8Z8Zoeb?sdR5rlp{&Q(}QI+8oOG-3A>4d4o(`q8_ z4R{;Osxb9ci(^T~p`sjLK7_^fbe;cE`RFqmTO%pQM~uhD=qCmAnQNp!OO8lOik$b3 zo={h&#|*|WFBwr8%(SZsX^b!YDAnS}x=K?It4@2OjxzMvUuqQ*iflmD53$U1WV6wg zleC53dUE`ZkSBif?IbtP*Empxtx`WyLiO7tOe__jfrW#YIot8)=$%X+eHHveb2$A@8_0B=wvgV`}L;BESDqWBTEeQgaLM|_ElU)k_ z&cJzZ#fl&Gs4#T!pR5=a`C!WFqH@^m@5cXaCr|mFwm#wKBeao8`3;D z>g%8ZIy*w{;7a!`Ew*)=vm)Ezaw=O2Hm!ggRFB@->1s4JC`LFoHR>P}r z3bLR*v$Gdsa^0eon&5jb%BlqJbz3yF(D+T%gg+tK(o3I#3W@lUAyrt6vLG%(1WyxV z*ZcJ=@ZhB0c4=P}V;U_Q8!ZKkaUj@^vimM_i-H+XTrzlk`sxH~+pw95hpL={iJIk|@IX8SB1G4Pxak&lV0-&aw z0yzL!l~Y`JA5sn^g4lYmDgF1(F+B0R=0qkL2_2S14&Xi4-<~wBA$>xkdo6abT5{u{ zV%ZifLurje>f8tA^?%zWzANOT-nLLR#+uMwMyqlIo{H}B+-h=xTP@b~kRCy`L=_B1 zM4pu7;A}iW8nrS)o`=`{0{+vy+lX^?d)+ZSK(=%SzjOy@z|`;@uo)F_nu)420i6c~ zo|XvlTl6iy0^0LGPbf}!{7BbJOfsL;TOr4SZ+fSQTC>?mYT2Y>srL45ITuB@mJ9B8 zR}J7BAEOYuEiO4kr%tuORi~iAwMK)iKqPV=#xtI8atDLgt><@d z>YI*koZ|Glw6})o*P>*c#zyAdn}}^&WQD+k$_#&g>C*K7mHL4CBL2ML<}QTokd0DP zBjzMqzPbWT#2EffWM-L_So*lFlKno)Q0~>ekuR77?{>wzU(l^KfVS#>3qCV%6Yoj) z$WsDT+mQ#QAx5d&#FZaqfs%9e@)FGVAAyk9;(Mktk|ZBB z0+$r|K+Q|`5z++D_4L!TNSE$t;rYgKc-2OqV(Ygsj9Br+2a^+#zf{tmI_mRb@v}@t z{dxJ{{~TEWV-dt%UW389Fg0K95qGRbi z_u1`WPK5fdR`%yW)<_w{gl`JCJ0ZxL&w&7t2JCXHNhe57;Cl3S z$X?W!u!&IvlRu0W?)zPG{=A45rp@k~^KoXMvuK3${mH9Tr*~mOX8?GeUxe!WX8T?V z1}S8{gT%35IDk`%SB_MU@V>vt?U0Zg7zvu0t~6nN4h{XC2_doByej0G%t_;;9Fk_K3RcV&wFW=BZq?9Q@vD^(}YZH;~F81Wy_8s=Y0&uH? zWy;FFqXzKK#;u8|w8&cII8r%lu}b{}T4yb0LuQj}@Vh3GBBv>aGKr(dxjEM&d@Bt- z=Zqc}mLiheCII}ryP3?J{04PNlMm;8gNIeN_U&WLDGF|*jsH)e7WW$d_&EyA=@+oa z9v!{Grgq_fv;bSpbJ&?+{>`0h*pw80S;k3K27eM6?w|P(Z_3mM;bjnJOLa6Y2?EU~ zdn!U=K)jHw{pL9IQNhCvA(1YHFNEB#$lg4z69*WdqpsF{KL9LDaL1o`wili#LYS(4 zj$++{a9Ky%WhpKCUwbyZ=CIMWIx&|8GNbM78yDy}-?Aqk)2gaNj8hpb=SPgY!IcIR5uUB#8c6)@R z!`qmv@9K?e-s1Mc0Uh1&QIC(bjdv-Ne454uF_H1fQEk2E6)oBI@2yhy3*pgCoz}8{ zc$Ju_#RCJt>}4vri8NN5o0JX*7P=5uKD#KOx6D&Gt}maiuuGa6sSK-*<@#f3JoZDP> zjv6Zf3+5u*jj1`W&+SR{;xoWBk;jV5s@Fa0O41uG3JD`~09#+1tAxPX7!(Ca)cyP! ziom9gK;4o}!z!B%i+Gr$@jsopgC0#FL0$-N{vZ3pg~fzNHfF)5UpfHY z-6Fe46mS_w%N}i(B8{4@?~bITh~WJ>NN%VD0E(~?8Nbgfor`@Ssd0+7I7TVG^SU1r zf1AeJi}t)f0XFr7?f`5A*E<#o=GQ3ZM+8G?ZDG=o(3700$%31JwlRrL!U_(=Z6@&( ziZy!s88@~BOodUg(~#ZUcT+!v!TRHeq_b1Mv@10zLoHTZ_=TJik@=kSEPCFUD`<@32G;Rsf)ZTQQV4u;(&$7sG$iW?{enNX~RM6`BWVZYyF z4DHQbZxh{-S+?Za3L(MjCpM9aPwJ^u>&6m$ib5oSZYgCTWgANi0I#qpmV;uX4d+`x zE=jxD>nmFAtpg{`pJX$DzNl3~iUj<3-$;PTwQtpC1uLfW8zzT3*Jn0DmjU;!6A-HV?f3NVD*o;8 z7G%By-R2h#C1M?L6W3>pL?YKtyTPmhW&R?m?GKJUt_2iOmn8Y_*N+Ti84J>w#VY6w z$+ri91;HpSMLwG(`r|ew5Rd-c-j7m%H#@O_zah_eEExZoi&1NP`-r63=6pa|t&rL6 z)xsD3T?Yjay)~b#2Zk`|8?CK!0m3G}y(;Ivq;qET;u2#(>SVs2&9D7;C@4bX&)97uiJ(ULrm;)mT&oR zS>04Gx}-Wm;b9y77Y}$BLf0UyrmMlU_qQUFj23d7;UcG6e+uL+@t4Lk#WVmTZDu1* z)MfxFI7GCWxz&!B)#Yn;cOC4^`a8cT5M)kc6LVedIQ4*Fw^kGP(y3i2YQLx{Yid*2 ztl!1F;*4bTgI_f0bHTgh<@fLYn&bit+SclBDReB{u#^eLDXTU3cLB^q39vC^s>J;Y z!#;J1aj@o-dNNPwhsDp6a>d#WbQ2q`QAx!7*=l{kc4-1heAbK+d+@rO@W^}ecu-J~ z?~E`|I|_cV$Y)rSEJATi4i(0f&bvAM`-Nl7uZj~y`wfH}VBIJbOYBrVQwq^WG> zgRkdA-1giPdcbU?xSXD(N|lJhvBp^_)*GAXg5gfiN+tWAX0+KUX6e~aqWlzYLyA3F zqKM*ytm2uK)%%&C4^Ehw8SFW~(ST&t(&A&+W+Otxp7zHnx-wFgxK!^hrs4-6#7y%e8 zy7{3mCnVO@8!x61GIjt1q!T?hqnSJbHw-t5!<*BQz_0NXJP@iPdA0cXlsUK~Vu20Y z-Kf=Iazrp_@njYIcPm?|cA7t_gUZj~+{3lnt;=yGnU4Uw8QMFb8={dB)2x5NMaNHs zs7~?;gGM(OMuiq)>6DeqK3+cl&0OB13h?x#iw@uA#LA@Y0Jt2vj zlLNRKcu-V7SO)Bbldz$)bC4G=qCmSA=-VYlbO3Sqr1hTI%E$G z4Wq6I)>5@%zYK|JBZVOrNbag$K&Wyo;0?{AzPM#(O#nTS-k*&ngeRp164`wpnjy>0 zTY5~hF3*|CYET zmRgi!&Lj}p-9=+tUTI6CUV0ZV1VsEV*_27+=4B6K?Bp5}$^`3e z;4HpD5sIS?dMitvVreAo+EZb5I6U5H$PYFKsG}2egn!#zsw;uyF?V|5A{ET{-2>6M zWL>!_R}6mV;-OEuN)oJnG&k&vE?&IP@>o6v9{pJ0pmwew&b1N?sw6n>KpbBvd3QwcMV`1nS`>b@$teH!fa+ z0h!|qH!iK->y<=jZlnS)Qo%&n6 zUMakIbuONzXl7^Urt{skljSo08OG%KI**&wvFw zaSN;H%F#Xo^JW;h4;1cd{=Co@nVp_7VbQ}DH)7gXtqm-lt|+r*bRF{%?StjAl8(1~ zavD_|p=-#uH0rhav%uQoSYvTY{Smxhr1-1J5r53A={+>%#r`;$Ojqdg;JBUzqv&@s z-;J(yv;~zkJ<6v=KNt^gt`$vkdR&n4Vo{oDYVY~bumVX;(bzk^{$4Q~NGo*LNZ`KxY^*W(6$Cy~C-{cN|KGk^*iRBx_GZ2WX% ztV^|2;pda~_1M);lP&2k^{XjhI*#!*?!OE0&-kG9HV24Xt1pHdi4BNfBWu$`Vp*}5 zlsF;X|&$~y5ogC&)4jU9}738OEi46;e$W!QuCu zU5*=+eClE|=d9(5oZF87(b%d$N7jkO2sqC@Av{{Bd1!9x^FrpbUPwD#rU=7~spl zRAu({I(^XLblep*^II;RVhY=&eGtiC~6agmDn61vaKYN@2Py%_Eb|4iH{{X_#s_QHjO zR11!pgs`LjyYQrT#CKkJv*v>|L-q#<9tWLHL_C`s^-@y08B4@*=;k2<@Ne882YBP&prjpav|Oay(#O0V72v0 z)NM^!x)HE#Fle&_Kbjp$1^g($6$~Wbc5^`^HYh}$zun3(n{j?!_Vh+pvYOTsdf+t< zcJtF(nT1x?O@BfKbf|zJs6MC%>aToty~KX>xFIj+9p>aju?sHl-O+g0v4_oCZjN=| z6;8h9K?@Z2SqS{ydbNj|?C}bM7JI^-UvP2tNB|p*d{$4YZW|5_$rlL^20m(}DE)>x zY`v%3oyX|!^e0OlMU%`117jFa$8d#<@|iyXaJ)7A_lpL*w`F)iK@Yl;j0i9B9_SimAAa<+_i6YRd6 ztSn@I_1hS(VhMDe5JZrH*wk>JfZ#FFm*bnhtEMyM9$2j==!kh+L1IEe#Ltqi z?FC$V?Y@&oU{au3&!=13+fVQo;@V6DV!(Fs*SLi$(nl?3NrL=oi**7Kq&R^mNI>+G zLSD9asH>22!w>W-J^?d$y&p~cAXAVmbojgtyKK;{O_TeqcNO=Ha@cg@%RZCG29vWcUpxE%0+Gi|h+ zy*xV2nY3^M+H`*`VBY*upSvD?u1xi}f2@i%eL;NQtU~}W5A)6@pALIZ%_@cz^9&kJ zBPJsr_06BKtRnjBSxq&Hp(lz*fl8Ffhi2=Q_`F^p3HPhk$AUj`>@(78#RVHgxpphL zJrVcB6i03xkGHh_`DqWOOqX4$1)KNi+7Gl56zlD3+0!jSvKih8)G7!ybS%ijgt6|R+$&)v# z>pbQCQJJ`~R`cS$NGYlwTz}JFB;$aG-}&AgYrRd9m*d&ii?#;u3PD>Sqf~RkA|9-h${iQ4QRR;8d}w$ZnhYLwN+8tp|( zKqgCptiTMq{gy23lXsP-%=bN;rIWvKXHoJrDuujbg$#n!9jE7O?O40dISTDq6+GQu z!R+u@vT$6K<4FR(BiA^B=~;m6auQp>rok(XmN$HmfD% zx(Y(YYDH24zTFsL`k0KAl*nXMy%$^?JDx!u4ftkN`u4JMPfb;MvJddZ+WH9gH7wRu z;M8&rsm?P8RH*lW&`YD!oNjx^m&LrHcMg9YKi%%pt+uSqCyy$bdlES{HHgLc2xqof z7exZ)vF2f=e!;}s=QXnTz#lp^^4T9cD$QtQtUvk790uPL5<~{!+K-%<2GG3Wi^+6a zC29EIm4!(Xl7+G^76>bz_Jy6Dkf!8L1E@5aYhd1?RIMrqSQ)tev@mI2um;D9&6UqJ zTKx-_Apj6(A2V&;p}DLd{8A9mi7z|Cf}DNp5w zM`#B>2*CwCp9Obb7nab-*w=7wnUK@-fm2AY!u_@83gGAo+Pt79RvK$C3`+ci^EYP#+2WV2&dZmkUiXPH zn3N%}29mdd_klUxx`%+Q1iwWVIg97LgL=$R$}aLD1e7eN{U;LrbeP>@sG@dpEn}`2 zfK$8TISZ!<*hA%Cgo0^rkq>5bakbbjDeMVLr5rCNbltS5+q`I?+s4z-+U330a@2|W zyWQ5o-87iKv44Y<0})NGwFi-7Gr`}58xBGY}-=6dpYIZImVBD!1 zlZR;)Vv*DVCU3F3b2@u{O3D%d2*UdH-yjGQFvstH@)d}P0@NJ=T#TQ8oyr2kY)TGW z-7fJAx*z{G9sjPK!)Hab0NV5@W%lG6IO&l4KnFd3gh9OwOSJeUmp$-P=qL?n`Gye$@3&m$bE<`-mq~sbFy3k2bxk4 zEnx@V9k<^XJ)UARe=HqS9(%T}WlYt`AvB);jN4brvotv{Z~EO-ZI{R$y)BIb8q4H` zo}qd!v4~q9C!fHj_#ksV$X_5$u3=KV0w&evYy5kc3(){gbopd!Y@NsF6xcxZIPwUL z`hd&hHyO+Ye+!?~t_9DH70-t2!2>pbpI;(~yHSL&KWhzp!pE*mG&d2AMLlJ!Uc`Ud zfdd`j>hv#6UUIPjn&Oat`Jn0ipj{6taLPl|_O*7J=g35qQpo_eE?m(S zy<)G&V^8#l_glCcexryQyNPre>tLWAja|`{6sw`A!kE@>clJt;A0elQ9n-u!%t(1t z*$Y`by)HD>4!zLAzzAg>^WXqly}m{4-qqlp-NowY<$4|Kmy9vxY7>c3tJr}n1Jr1} z4*whv?t>X2{L&J^!dmu3XbYQl?*Jm*UkEN6DBk|ldyUOLS{^;8v$4SgzdVJC+PL)A zPz(gDsO9ws9n6S<36gBBgiE_xz^mso<>qMzitCwx@t5hhmwU|8(xA;oOK7@yrYH#o zJ>%#o{7&x}zfwz~u?*7y#?}gZrfaUkN&Ub_=hCeWg$>2>VyYo9)uykQ)>k@_;h540 zlzCkUNsG3oXDX&pC-YG?BR245O3T>|Xjo%7L46WT+c#}7I2_do^wd;EZ+gHm12C_m z*sg(geL7Fn1|D5x4_fs;NBrveHBY6ju-Wkqmy9ge(2NglxuT(Zq7UV4-8cBGVycGxD4)x53oCKilk|3h34>1KLxgFHutE_f zENHeu1rylFGBCP8oUHP@&)EiV@$-l^?$LZ@KpRTt&ff()bN14H0&bM7cIlkFjjuce z+zwz9e_hDP&f&Cf}tg@l53WiepRZwsPy zsnYSM`!iAyDpjw4WB_D>-A40`e7MI$7gLKC-U{p-!*RR=V|Jt+m}?2!40-zR3m;Jw zzODr6FzJp{_f1Ztv42uGq8+ZcToCs4<~vYeHa?BXO--eLSx9)g!_6mcuAiPn@rg#h zzukdpmCFPd7)&VEt060MMR&Wzu%;^X(l8zM544_)XN<%XLM>$#aWS}_1Z2;ll&0uGwHjQUMt+_AWjDfyBmaBiC*-I#bcNhP^!&(g)N;@0lFJQN z2yk_0&1s0yY5#HJ(ir-T8wJK{niKWa_-mZ_uf$!gkKZqa@wo5)ds@j+5H6jyB!lho zyVhuai!$RiqI@r@9CXkVYvli*S;Ut?hFfUn#WUKZk|I~=t0Y4|W0ONGMFw-U5~R=d zGM+;m681cfpGvfY98Bz3f5&*Y>4jv{6XF(d@znM~RIU5?xiFF6W|qemD&_yV^WGu93ISP6PSI7d8&~LPQ zQs=?SDb8~iF_$JX{+XffcW2bc2>i&d8y(s47C`4`mU(m)qoeI8S0_ao_6=<~8@Zpn z7&DG2pVSqhz%NhSV)AwR?_j!g0F{M+6VXm2Os-x9-dKx>#pKtvr_J65?cSObEe?PL zpB{q}RnY5jdqL*+yzN^!6XejT;PRBRj}=E{;oIs5WuJ`Wl;`9+W4pBa=_mr6U3@`z z(wV@N#XZ~Y6_c%s3Ik+bW@|EMIkt4tecYpjQ|8VcW46SdKo)gvxsXMO852V!a_eCr zM32{QvPLIKcnklx?*ImTS-D8&;ZmNr&=4qX*{<${wVacAplGX?a&aFtSSiG5nOEY- zPvMn;SbG|NO}TuPBO8G|FLj}Y zek+U1?F8RJlX>Eyoj9t6N33aJ1R-FDC$Uq=P~&xD3IO=e&cO%K0^VLRIehhK4i6UL z*E+f0#q)4$ZYZ7Sp)Y!pm2v12w|$1XmvM)?(uW0kLB{HtWcvJ=zXzUw00MW<7(WR> ztIuLoE(R|t!Wd6CXVv58`zvj109;S2bri3 zGj=MDqT=G4tHTD174j2iMELlD&vXxfJA@7`U^lgNXJOj|b89g7c=8djaBGR17A(Vs zMj;*?h%GyiSiHlCEp%BEr*)F?E(jCGYYS3QYO{erBuw!_|Fc}cYNu};BgYen+g-YG zPK=XAwK0YH{lCmQtd;7uz#R}0Js*UV;bRMo;?o~zcpLglRXduH}Od~G}FZ6U{3Ed9npuV=!F z?DRicfSRxZEh^6Jg%xm>@sM2oNqM*DW28sqw5W(dUX7#DbrG|kVH^0z>x0lULp1Xo zXu@@m@uCLS*)4OGjL#O^77NG?&H_UH{GcH5VZ)J*J6xmqT#k*{1~d*xUNTy~ zxyvj$C!x&txBP#cy=7EfZPO(jJi$qDmjrhj4c@`sAq3YB9^45UoZ#;6uEB!`Yb?0C zyTcsr=hZduH}kFe%j(7HzRp!uyLRoW+WvK3-EuvWcAtUrX4%FJ@xFmY4WH)B&rqCA z^T<44tWwfp-v+@Za(2x*)FTzzCqCY+vTeOGKG9z3AtjweH$*U`*sz7cx-+G|DnKds zMcul0;PGgTMU9wat3veD(2cUb=1@K7OH%Z*4z--IENVG|fGE($sQj!`1Z8<09D^;A z9QEUMEnysVpO;xsR~UhC(%YXLfz#XjmoqnPBw63ZCY=?+22$J^r}2`_lP3qU#KScg+G`w{LNz z_l|g?Oc+XaTQLCrr zmqpukktmmTwQfY0>r<-KGV1l){TbxC*ku(RNw9^)a9WVNLVB0`sz>Qk)w`s)k5uM4 zAzN=N8gn;MA@2tyLJ6Rf@lj}%u%$k|^qHv8esnSKAGb$*A&#+H??{WLwaWTXF=vta zHNPJy>u24ITQ1nkGT9@b?C85xpeOP)B1vOUsWeZ|USpb$dKJe%0yAL@c9Z`M8PRcU z@NmD~mM>m95yQ&0a}I$uX)feIj9`2P&WU|%vlpi1DLOSMJ0LHq(o~GQ;29bs$h;S( zqb+FA+T!+D-+pm;e zR3mY6PV?$)C4<{LYk6gyk^?Ll6DaMw*zT!fJU*5ggxez%+eP>s`%SMJi||Y&OW@X( zePw)6pViVVF^}$)tJ|=4r|umVY2da3nPGmJcCvu^FG{mj{tx$rHo8{Vwj-Yz0omM*_{2)k~|Q z_W7OfLUE=p^m%LKV-+0e!t$pSxk!JSbym zV|cKzAyam+>P@m@>w!YSOm9?wE-kh^ME82#wUnFdJPRI<+mB&CxGrG~NQ&p^Nv!Ua zZyI`wUH9AUQ>3=qa&VgNb058niV_~ZMuxQY9^=lb#K|UCY!V$0A$wRM;6o)NUV#Y* z-d4k?`{0aeBB*``Rd)j;w(jw#kw`@)6TdFcZCetCw-PSruJ4(SkC8=D-8*#Md|y_&Ur;} zd>M9wnxn+EX)v79Ra0TI{?G-2z6QvyQ#1I26v!4OG&O0HLC<2T!7Jdt4DU}XKN)D1 zs%yLK`19Ywr*USvONpZvq!@ox}S{zt@g#KU!}87LMOG!h++l~eRw=~ z1#YTUL6+rh2mv`-t3n= zn7zzseFsKUVGm{2;|aJV9m%#N7D>i!uN8}IBWT|&rq5MUvvDQUYxRg20H*MqvfC^) zdXQE;yTQ=YNEoFBz3T#lKS}ZINljErp`a47QC!yS6w+$SYTu}N)dO!d=FuM5&-%nc z+0tWk$^TR7wCN|{JYEf+i0CL2&8h4%C&XzhX5T!wSBjc6)2Wz@ez$MDULlBoOyE4- zPU|BttaR!@#nvxE6hWEK9IV|bHI{K)+Tx?I<13e+KWtDdZN@5~?R%(x@Ts+PDoIsC* zxvCF{mvWE`ruoQf=MBf)w>G&kjD7)IP}c~cO98+=ri3&hBH_J$in)>$N}>_sU%v3W zIopJ1!F?>K%6KBB`z*1&zu?S%V5)%W>6#jE)0NI7ujmvhc}(Oj_*;5Amb5-ri^_dC zYRg`zbM~GWoP019Q?|+ckD1W?S2LLe%mnNe68=uWVj7_k(Sn-jDrojctc}yDK0+=n zt9KsD!}U}9ryNRccqFuYr>?(Gi;AD5z|$A|MT^qjIc0y_pIZm5ap{tgQZP&pDfq1n z|I%QSsU9R{zlNgj5ofD=r|_Yjbq=UJ{vk`EMYIwUo%(7ISV^I=Cf#ExXDcV@bx)9U zv0rJj<5{PPm3a7M0O*j{WGhbecTA=smgs~qDbp((fh z`SEown$gg!m(y1ZMv(rcBOQFFSU8{g1`$}F<0~GECYl*!8A&#W_HMXfeOqsCwJXW! zM5jjf!Xb;@Xj15dciTfz5*<5D+-!`{4^$V~qywSrZf?+6$lKnJq&7Z2pUt>)BE+|_%)y2#+K_o?sGa<+l(|?| zij~SKUaIF99;=&qg_YCTs40s-hgNeCAIzAw2;&7zQxE?8S7Gg!<36{104R%0sKZK5 zy7!exJK#^o>Wu(?4-6b|^1&cETHHZ)(3%Hxmlzvu>w@**EhQ*i487R`BC}HKL}no z*Q*)dW2P3)WeOeXTp^j{{d(;MC!wvfnv*jx?(Z-D;~PLPf95JlNrnMuD0$=V1#@&l zMGmNzW5jhi22Uugj-OUBat0#IXY!@!QB@EjpFt&|QqLv}id*O=9B5<=uk1^ITmI&X&)wK!QKtF@n7=>0GgP*E zSW+XJwy!}%H%D^JRCE$e?pW_p%FMi*724pqd~S02dO9*R~2FsexPc;0w9?SGipkko3gX;U_dUIgZa;m>N z2U8yBk4%25ce)B;d!g*YT9Z2Pl?Vr8OMH5Vy*vA^pACCO zH54IL=sIqGZqR;k%thDGy{wjkU^+98=YvoGm+U{-z&R*pW|k`h)t~N<_>l)pZsL3` zHmbnLT^qFv>Xof#7u>FH(NAf2BLerKs0<+--}#}nva@G}%0R_oyU3md82W?yb+VXd zu*cKonkD%eiaT9%kd>F`wp@Mipat9&IXSVYKxuu)9jotYDa49RhRuPCSmQjl7nFe) z3fj`4{8AW@9f83ybIo?dd19Ts*KZg7N7nPFhJzVA123i{Q?GKoTl&Z;2USZbQ5GqGg_r@!M^In z&RL1iYf=kXF+J=-@v}t_%ogsCYZC=L7liCMazxXz!0cL*cPlB-zWV!DM4BmRofvUL zWlEtg6|U=3K1Yntr%iH6#}%~+V#tkQ}p@cr^7Y`CTFiHW9YIsLliV7D^1C)=*^X#? z>U}kM6$ZweVg3E)Ro(!t9k)bf5*6sS9L0id9~bDv`^zJ_j^(k?SSUfkP%>r+?oVG# zE?~VsbL)1N?m?;1?Z~tZD@%rK@sgm!ZTZ+-omz%^+M=avp&X~LV z7mO5RR;2#K#KF{#n>%Zl&EtSfdUNP^||O2!evt;34&g{OBpO48VBG&o|;9$_g#SY_cdX|1mp|5uFB}Fj0^T6;x4Ho_mJD2#;Dvb6#PAjl?tm<6Y-TE^JSvXGQ7M#12^TXCyTxr?@a?kSR{4=(|sZqK6OZEqKRsE01q2Mz$JMn~dp ze|rH}=&b)0TvfvXX}&^bulMpB%u-jf==xDa&;7%$coVHb>oHBc*;7lE6|~3iAG-*H zr65CUag6GpE>Z|)3#gEH3YQZFTKxtFgqNkX?M^cHHb+9@`a|XJtI;9UsOUW@8pUy| zgXQ1MCT9ZfT8tep?gilOs)|jHjLoQrdp&y;e|?(%5j1eZ`pe^I;n~lUsj;pQG@zSL zmr4IvYjZd;j`w$z_@*sn<5M7rkbukS4u!4*KmubK`%+ZH&2A-cp!{xU${i?jM8M)s zd0k%=33cy@auwIQbRBQ8cHP73g97S4sY5VFu97zUEkX$Sa9W>&{?Ug2gvE^UfLC`X z*!FifiHS^{a$~yi)|37ASb@&;v0Hp9TxN)OMh%I}13aRG>@JDPS|z+y3aE31IZdcR zc6Iygs+Xx&tYX>APvrh!oLZ0q#;Q-@w`;~_zl{H9xS-MWRu_EYun)LfiW+3M_oXAP zMv_#w*{r!g87YYL5j0`K)yO|mgv-JgqsV!Jr!9q|5T_F(S$*;hgu;$5kx@c7U;7Q zMGwZxC72MxK7LX{yBHHha6H!^%3AAB2%zWc9DQfNN6F-`w&e~4-n^2~Om%_Fw1_at z-l%elV#!p#?QOktqjVMVs62UUw9A=1+2m66K#-Q2JjXO!?synaRf3+xiyb>WPm>RK z_jPJE_kWqoYU}#y3#uk%*E4XBYXCMrZT`Kx9=Yq*@&zRm(!>Qs%Na}N)El3nV2cpC zMUjx=1gwcwPhTtJy#98)%fWMhXW(}TD`nO{XsGrO(;%bAJQ*!hP{3ZuBu=b2W@YZe9~!i$0NEr@Y_B}()!6DG4uWdO$mI&21R)DUH`I~;}HpP zwX@9rE4YytCQQNyz|FBxFz5W$`eGle5;(aA0=g>p;OyJ1F&~U){x0R`u5WvNH72i7 zOw~eMtLKi1f+wgl^d$v-F44NgD-th5ZT#=*v(#oQ@I&zCX;b;$mQ<4@oAasREutb9 z)`^!A;RLP}6r1H5)8sfq~W=%cM1&{lm|5PaphXz z;bRcLa%()QA0R^-)x#776)M3wQH#@-mZVUtm~0QkoczW0@%M+1WziulS1DD>Ritp> z;u6y|eor`68Z39^#N&8LnCjsvHVPdy88QqGK)3*g=-9WVh+wce&ax9ysja%9n&JtD5{qx9jp95=*nMsK<-$Cu_&;=#WitY;-vn3=6#I>L_m)QSaj` z;ODiyB)+?9&5L&(Ogx#_CKd}VlE>&0jbWW5$38tRw#j=9{nCVqG!NMm`O)R(T4|uc zhD}@8JX-NA?LR)o8pq+iV+`b={Yz_cZsud3E)R-MDveQ(v)t;V842r|-OQov>w*9< zZm-~1X@W(C+yqv_hT!M}W7(ZNWTM39q+B=|qTrALxAVT3KFYLh=4&joI;trck&2R@ za6+ThCno?wUaviZ^P`h~%KBUE$?@-Tp$x#5xZqtQ@dD9gSUx^;6CQDXADR>P`9(O_ zvyDzlm3PF=wlMP%#P6ckbtGT&5hUriOuT(i%|o6(oD1K-CNu7TP(*}0T#diih+)!qCmFl8}w~W%%~GG0MYq?wbb;(k>4L7Nt92C5y~zTigAW(dM+(-`zDv zj|4J`)z!5xA}vlo8t8xt_dysZbvi#hZqKqxf|GctMBvp%;+E1&Q#I1Qs*QIqD4Q?j zIx%VTvEZzjN2Z_@x`1m8sBFIte?86PHo3p3N%GADI#VTOqbwsGbn84nM!1!WW&vIH zrUx#-7pbBJJ8d2b{Q2gLhiSDuYma;!bZUs?@fyuU0tFal9v!g&wlq5o^cA53JfAD%>xn=b6gf;gzRW#!RTO)>Ukc%U;h7Uz}?yC}52!Fj59swmsZ-n?GA*Zs8idIWww$oH`;#ft+ z$@gltRIVF?=MWPJJ0#oC@OQTd;r&ReSjXx5NllF$9E5g0Q1DzUQTdMXZh{6x%&#hp zdCP7D5cS(OOTUww?ES;h+^<)UVhUJEL9gKHtgYthmm*dZ-=`b%hp+o{}BryE)hkXnx(s#!5>t3m) zg~{2u->cKMkipjxs#c)qe24Q#gZ(OojMoe5RwBm-&&tS@(G)bzhmeQUZ)c&h0{+=c z&DfC**Z@S|x33AKE_{x26CEWEtnYs3fq{&f%U0d^J+xqbQqa2Xp<~XfN0?P?oLpa@ zml}0kiJmL_CkKGkQ1?k;2MLv&qlV*%Lb7eKdI&f%j^67h+ckbB0I>^I6G5YNU^#0J zP;%6?dpHxog4CTZn)roe;mtXj%$Ef8KOtJ2fuOzOfpZ)H7X=<8GGuDLL}+W^rr7Tv zy~Ef3xVkpZ`6E0W+>XV8^)MsE)3i)-mj{i19lh1rP}eNJF2dt(jw2ZO$+)QRPg7`v zV(VvwSO#rm-KCZnsxkba>fB0flfkV!N<8|eSeS5cyUJ;s`GD76+*k-7Z6~q{(Nmwt zSa|7SQ~oL z5&R>hi>*S9l0lqH5DBtl-#|BQ$Y-@O-Pb#u#Etk z7g{Moz@w^sd~jEX&u1UsXap<}mdR8xx4xR55m|4#ZsL!6LG?cbVWV$rm7FwJ7S! zYV05aRKU>g%mx+R?pR?g;>G-=Yd#cZ2vf-t&0~v3dhsQF9f+cq(Fnsc$p+v>8*ZtO z;S2C@AqgRugXO$Jj}!%Z^)N4J@%{S#bcWZoWp9gGlO7BC2XhFy+)&CynT8EeCMppA zphmNx+)`nD`}S>?hURsNWPD;`EVb^g9)rDfT2nDGbIV~-wOKttEm28{tC5F4AWkBg z{QWbl$zc<*6RLb3M8;a=EyT8Y0jz3RY<%OM(2^&bTylK`Ea>y0H4^tUcgo-k?^vf{ z7bbMe$Q<6|t%*wy5{{Zu)_~D8R}38Wohkt;(*&^qxgd*#@#&dPMTG-GD^sxKBSIOo z75UK_=O|?<{g+X(C?ScJRouu29AG&4rSz)cIe+U|t~wKbtxW-Yu99h_gAxK%kvcs4 zp2AO)y)Z5{HEi0b*C4A3E1yO0`;b=~!CE9^?+lW7q_xNfw9JShjP!n>0jZ8m zW{PN^5X+i_3tk$E@LxQ$yXW~p)>Hav3!@ZpzXKV)3$1wIPqlTH=K_HiwX(dtxd?&W(gxrQa7@MGbUz9C6_sLZhN*ZVx#_n5g|nOcQP zGSAr;w|{+dwT#J_{1Gdh=)s@5J-nBUW;$<9YiB2XBlkUHBCp`E0XlK(Yl(*NA0bcv zdfJnC1axzAw^h$42#w7)z$y*O3mH7Wbx{@73U#dghpW{kKeHd9p%P>3`mrn;gn@vZ z!S5M{-~E)kbU4sZIO9t5u!gANSP}e!7mSB{LHGa%lrHO$Paumg4B#l7;THR6x>B<;;W9$C zldVIfKN)OX!~4QQ?g4jYr?cTmk-m1%EY*AZ1Mnx{7J6!&%R|slR(MXMUAanukF+@F8J}phJ2-l2r1-Nh{@`G@4_(Jo#kVdvSw$fVA?9iDb^7^x~+kj;3?u zW1zeY7I8Ycf+>S6HvZhPiSaVV%l+Bzd~u9o;^+RqqhTNoHv;!XY)8SuLv+RYyU4cJ zD$T`>(GR0JYXF{JE4MVks!eMse;`>RL+>(=e0W1_b3 zp1X#-^j?>|q(D{Az+$#pwzOk7LaNL`a`Tb;7AtHA%Wc?#Pe}0aJofrH$T;*ra7lV| zboP5;j~?tUN%M#8@!HBR7g4w)%XpmszWX49-2)rs2n)|Up9FA?5vh$~AFRFpw)7A* zHzTl)e+z!4#QwZVb>gnT!C1$QXZDlDS-oP@HZklNBj)tcfAsudW^JP_ZVeR<&CKX` zX8F!U4qEd?N|+M3+2AIVnf#UbcAJNx4kCH3`O?I8#kj?ZYUAIO9Or8;N)+j*%YE)+ z?7i()h){glT%hNCs#2b^)}MN9v`6J0eF#537S?!WQY$R;74F!?y|<~Nxh8z_0~cb! zRZA%6#C9IYTCaKxe)q5_C#P0BEgVQWCEu#xNP;_zBZ6o|sk(l0E9hQ4whAx?p@}Jf zV_)F9U0=CH$&~$(u|L)GEBGCJZIlS%*9XC+Y4j|tpR_=BmrqD&2&HsKJ(yIwVB572 zK$v9l&m1Z$nOWJ`4^8~5iOpOXiXi@Oyi`67bzA$_5)n=L7cntU&sty$B!K(ZC+DV+ z0k>WgNcv~KOoyS(lDpBKMo};Bl^KmHV@`#w9>9sF5^_3|9tpT29|xRQx%J5#s~?4B zh8J%~H#8UysbAb3a!(eitL2>;Us|Y+I%FW<-Qf$^2u75iVe%D!K9c<@5E4`zB|iJu zj|x>JOV*8#5o@P}<=mBU0_K1WP@2uCNoK#fXsboqjSrz=Tk7Bm>)2Zd=a(28-Qd0 zIQTb62JFMzRY`sIS{3nd*_pz8$&1nV_~>m^ul|k$yp9YcUv9G-HT=MKbJ7jQa{BfV zht=m5X58x*k8f!%jVwekEkNh!c<6~%95gpYI!MXy_@&x4b}Dmno=me;;Ke&dh%P)f zRrY$p9XX+Vp(lBh4z1uGJ>z>7m0Pw(!}QJeAyVzW0sRAor2XmHq3ZlL%cAsm>ib0w zfB;WAGnztv5m@{c07zH!};X%LQBKyVDiO9II z)*%-2nMG`j3L7x6lH;=jnSOZFL|?Yrxm%GombntB!i7!X0^i)Pj~mt>EyV9(pXqyF z?4I+(q}ok|45VDXWB(vPh|O%z98{=5HC1q777-RAvMNfa_nAVm!K%;B^0XdjOm-=q zk59T~YPK<%BK$oY4$vJg?#jjxg@8aSGpJw9Ibw5y`^-bWpmlb<>Mqa1-i(;3j1XG?)am6by2J>&YpZ{AgV5;JE5Sqi zoa`g>k0Rt~6G#{`gM@t^PQJ9i6N%I_yp4|C8n3SUCYMP|LH+D?DGq1nag3bG=M2|y z#NS)}JdKLaiz2>$7ZPouDtIs>A9HfEF$sQpsi+SC1dAFDV6315{l|T;4?D)h%d>L5fBP; zs?L7bCBfRiT+?3HD6Rf@ytvE?qK^vnXuCIqHP!N`+9i@K9LJV4+Aj{GW;*k} zQfJG(E&aqVA_kzRLRxHvd*&Acgy}$;9L=QQ0qXiT;=lnMPR0=Y#H?y~U>_C8&y}$k z0?ds^d9|{oAB^Z&Qo#GVGo=-2)L=as`?aWmO?I~6>YsoV%5L#1K^QV%Uz?|>g(_eq z!)yDT8h@!%>LZqTs+>*oqfB3_#9BGX)c9BO>qerYl!AeQq1O(z=Q-v-yMUEV8An!Q zKwYRGS(!`HOzb?ildW1R2{d>?g_){e;lTXNtLBa)e_O=@dvS622Cph26auXGR4=|~DI4`pkC-c7OI#c;%D)Qf{>#{cv}Zdn|R{Buki6X_wIvrjz>j))}D^~oXnd<`Nd%e zz@U({%gQAI!V2G-ph?AD!#*{)LLEI$VemG9hVMY2B58)TNGpCD$j%>imcWC6mFKg zYX}BWO%}w1BFfm@GH7f}5@0Ld)|8^LO;3`7@0|VHyn;bd;v^(_i+h$|h5`SR2$;n{ zU#R^HLHZsk@qe_B%-29ju&WyQ+j{wqt2|Vs8vbZJ-;ayY6uYY+(KzgYr1(q<5d0YP zQ1TN1x%T?SxaNBqNq9oRa`M11x*ukd@AP@M_Js)(>ckZDigCXjWZUkB?alHhy;;bF zc>Sql2%{8xULMno6aLpL$_W9!jH*)bwnxPaJB#Zo1{Af_rqmk_t$jHeOfyX{2aB2d z^R*^pw#H);Z0k9Os6#EOXI|c`vN-_P{y*w?_)v4poxi8Vz}D&9pH{b{%Tj-vJ|G4; z^%WynAma_d#n1(eHMernhEi>S--=%wx?X`^nq=^t_Hj% ztc0Kenk!F$T!@+alUtRfL93F1HyZL=j8h-wWwng*L!;{lQeEqDmq+E+(quBP$u1sy z9guao+f~@FbJLtI%m>*zfx0sQx0pSMmlwl4RGE7|XqL7WPpBndpFIiD53ft{R=ffh zyv`&#k9~PbenS^$d_j{9?`=ovESD=K=U}QUlmDqSQFaF)F=VQ~SQm5uOdtsF=~n<5 zgSzmna^57LL@SJ+?Se%d)G?N=@p*yw0x~0SG7pTF`VCvbi9g;-lpoHe>Z+qoJ$Qdj z%Y&b@&D0^LmrTxly2NF!!$S1-JkPQ}7D&PLGt_hE%vgk<{TJ zi;7%gB7QEjjlNpM-bkn@eJPp-BU44V^-tsl`{OyE(nSfcJwG~zH4Qn%s!+zjCckj{ zFX7;5*YROtBuAnRaBDBbKwMc_TKs1*P=CQVW7yd==M*H4Bm?MT>)m9^LN#s#XutT_ zBK*Q52dTtW&+1{yCzxSl08K$Ic{}sE%kuVv1}NHgk_+W2>i^x&&bh8T*gh zFMOymg)m{QKSekqLa5H;+RMG9zMb&_A$I3eff$uRSp{wEdTs#24Gpn4@dAzk;n)J4 z9PAXT&u>dkI8&UoMGWjL7|XWlq{Al@?Nn9tCcT zJT#+}g%iS6negV>+0j_<(ile+3vEg5sO3n2NXhxF_!jUNoM|r8*F`VssNFLmV3mEp zl5uW)UrytFJ-ej+O_vzsVx!VU;MdvAwtoGwk&KrzTn9jD3VW7F2{L`5aSk7{uMI%qNr=c6v5?j(XS4hatpudA&2do#W8IpNZf(8>Miu-)a7 zz{5QoJW3dKHso+_$I>zc*nkTv)_Nz1vTbyChSPXT{uY1i**viGz&%*g8b#~gH1glPF?;pAY70VwAh zSY`+Us|fM1O`!ZPPhWNx>$OzAw7TON{8Xys;0(Mz5^y=aUN%>17qkoy|1DThuKVu3 zm*#yYu$f8I(BNfHK`!q#wfjfKtLVP^SK|t$9=lN6G{f+3dD0YI%;*#G6&;uN7>eZ% zbd&d|62E`I72^YHySA#>NL6(u;*afTLEEUgZZ|&wr?G0Iv7% zSk*djt`D|k448TIa}C_bKyqsF%Ti(_XMstDgxMI29+-|OYHkTUeaV=X^`U~8{Ff_r z2V|J}WECTuFZT&sUo2|turG4Qz&d!boOuoAHdpM*T)l@_A&4m` zQvZJ3=IBv?tUkqK_VXVxpVJPw>Vw8*AjgR01e!iEI`M_VgNl ziagpeG^8eNR-q0*ZhO>hawKwU<_QhD12XUL6Nq{TI$MGKu4f$`gNVI;h}knXR>~A| zE~>F7_KOd$=JU00uF?dM+CA?vR}TCE?p=TWr_q{$z$1qUrO-!hrS}HG4H(U}Uq9%F zKV;fF-Ct?|JZnNHS#_&vAG)Re7hhjKzRGWQVolK>5Dv`w9C)bFcOs=8@88H-&Xo2T zM8=8ctk#$sNzRma+1yeblXa#p#gwh;TL-qaH{fwOrSnjXh(vuY${>SHOUu%(d?ky= zf;ASVAM&6GvT?b#Hs|tyzpBuTkTw}ysc5hnH>>6>x4iIMN7VC|5bGL;!oGB>%J)+9 zv|6Lls?gPZGuxoql_LZd>7c}q$RPC3t#45}SaDgx%a?00(epX5vv)cbd;m(sI6(i6 zb_ee0EXTy}4 zKhD$ObG_cv-fbWL36Mad3%NVp`%(_vCMg(oc!*Of zPcSgSz;Jkhw@c83Rq?iJu|R&kKTk$e$UEI7qnhOFHIa|@e0_*)oQw3PudOcmH^hJSX$_&W6qJpXwj5h~p_XDruOftvdJO&5Z2tcf8xdg0^ zeAYJ0^p=RNF5gd44&gDQgUDx&mV*LvYWnYP^9HiL}>!%t6t zIjQCZC{KQ6{!tBbPME$(ltl55~ zh>#ZI24X?9)a?8JF&6y0LGJ}jw1ayE@x=?wzd|VJ1g`SI~3TVv4b-mw}txZUrzwm)BtAwm3|25hB+esh4)9n z(?xz3bK831H?TfcWw}5W51=PtL}$5ys`MYJJAqn{AzT=^>5-He7-)Y*!JnkY8yCi^ zT1+i|4)xMcVxEtTzycTyRmx$YP~l}Uhrf=B3RG!d-XD0Dmec!2Bo>rocQ@zQXuaUy zI<)u=8#>lxpIl#rpb5+HvN0{xR8&RY`&=eFzYyH^~5yzlkB;gK+odz{<1eakF!x*$QibKI&44 z$OTb+^xTsGD)5<)gQ$>i&K|c8P=J}Bk`n?#>&Rn4WqKWK-B;Dllm;@)9ka-eMVhJw zhCCSifNyzKT?2%hLvg+y)M$_Ay;ea#Q)9!Rc_G2PYV>hEfGC&EsvPOblgwAN8Nqiml~FfuBjZ5+<-U@vxJxAlCG$dW;h6A$I_7gE>p3H ziC#dh{VpK_O!?8xe6Z@GvwzstSc&WIUNk4?*;Fv6%DJ6q022?NTN>yP4)pp=y_q&NKV1GXO#QqGXpA#LXhm8Dyq<-UN|JN*+$3nt&p2U zJ|4VVv-TxH)BSKUtr3k=p={}&4hx~h}@eb?4T$@_#fC?z`D23jS z14xdgc8UK_b~gLt#2EE3pEQ?%ubDg$nDR#TL6qhAnaYH>VptsTrp7smmh>|(YSGV< zI3mfJ5}iAoF7#gxhR0jniTne_G6!soY`?a*_%OdzMD%s5$KK;W|5USm+GiGT{PtA< z8IS(QVT(LDH8pNvcXN(R`v5*?E>R%Hp0Cg`f3K#B`xn6~bQawjih+pQJ)SY|C$ z+=&I-M|D6R05RB{n$3GLUTJz?ka29L|4^@7cIs3`IAKW8`rPe#C~C0DlQw2X6uGnt z6Bjp*-0}n%ch&-rh(Qte_bLjWn0T01@S3Kjbp&A?!B zB@DIan-bj_Uo%xo;uE*(iH%305V{EWvbRY%AuGKtQJ5EX>At|mGGfgp;+IBa0)Ex$ z5|MC1+hoh6xnptaY@kOouL&sapwNmve)B5Vz&odwmkfZ}i~ksN9eH;`%ZGGZ|JB{6 zUzPHeUY#fck9@sw(%TR0zjbGS0eGX+rOK~g83_B}DyNC>ewsL#uLX2;P>&YgP+(#G zwR?akX8gmtY{4mCA*VeZJvdMV3n|Pcxg4=OyTtJfK*pQwfz1idM8&r8jy>(c*hWM;VdXj>HX%Jw>)Kj6CSw(9teHoQ)$PL@g$trxUN14#2-Rm6vusLPzrBSxN z8KbgyVb|z%V^zns}scguTx!a^hn-{n}~W@(pRZ>NnuULa^$81vg00-#x-WlouPc>xzF zS%5;ua=~MPr$xjvDmE4s?|PWWUJ!7G=9=$c=H^%lIza~07F(ZD8D`*D4tj*fD|H=t zW|Jx2gJ4?`6-1iY^OV#6t#EL9(X;Gw^}rd=Bn2Ut*Wv=GQ`GRU!%T0O81QdC{TND1EdR^6Nyr-xdFfHm2@mujpJD_u(LTUFAnc6FSL7h zgjh(e!v7z!#xJ#-`wZv)6dD%l@Lj*3;N~~mX&N_1=T|vn6B9VcW#@~bLo_o|AMq

zGT!{P1tpSd>RR=>C8tLYqlYrv;0AgKZnuKZj$kL>7Pa4i5m zh3FgQ#|*Tfh}g~6_P$)e&#!^HAw=C3(89{RfCIWH;Q#*L7~y}nuiYGY&4@P|7B$d2 z*VUSm#LpHWS9UO=T*T70r`dlKF93>jIU(J&f4(~1%UA#Z`-pKrc+E%+3@A2zD$;xe z_VfSYhX9r|5vlR777k>fg+uD>bnTy9Z~z7HGfThf07m^PClmo?|Y7g|K*|8RCU^Fg3-wv3aM zPTF5j+hrRQ|1{3)BN!vA(rP1`Ip2#k=)>R!0L2y{Qy%|#($~bpn2c3)mHts4J4pUJ z|JRC%-!Bhk`&xVtfN;k$m#yo9mxr?bUmm)O^%LKQ17n+6FTvyUKW&nwKC<7rn34_C zLYYE#a7>k6em%u7UMpMydS6!$v-F`r5e?d9{w*oui=xZq1(mjW@IhX@dOjKO#Q#j( zUus7GdCivvfh8lMK@;>gE;p9(|M@VO3AS$5VPnSHy7L-ZKxGIVYUt8;xQ|AwyV-)d zr$UN=pqwpt;A^Gs(lbqojH?b8@Db`11QYuvX~3GGU4R=-_WH&5j~iC@i33C%Q!57z zST7VL=W{r%Zmwj$`yrnzGQd!F_MO-Q`UxELEz`o!S-#5ch`=ao?MPAzoAh6X=}u1% z=88FpxcG9PE~Vq%r%6rqdeFgo|?is`SA^@(1Y>A89jrs zHl1X;vwOwV^ftEupce-D8f2>Q8TaZ<{bOyQX2y-35dP|8`GFu*5IBdqKA_(0}>$ z-{FV^#&bnTaQ%UIyMeuu4$|A=gSUKu*Q+qE<368PLH!_|_h1)4k7NejIC>2T_7+b! zC!|yW&josXQPTZ~p;Q7`M?X`(?yK!`Gnxk1Eg;x=jf|SiN0LHI_(Fu?kl$Qkaecc>xYG400*G6v#^xTF>OK+Pa=4O$lij&;0KlWh`(3rmT>vbT< z(kl^rlP<$BF)`u#{qyqxA(Tlu91I~W=N|eoNl&I8*Y?x8u8#M&Z-PLDMD==q-c<7Z z(x~HqarPEaS#90^upo*cAs`{$B_R!xBK6SSN~d&6qavLT-6=>20ul<+ozf*B-QE4I z#}nvz&wIan|6?%ZjH7GswPw%XoNI1k_o|<%BLU#={@lU3BXNt74GhzPq6Qm~D3rz!g;qJp#>`lQxXp!ZxW zn;{skw~GJ*Let6j7*>KVueaN18Q4>NVh+|CAClfHy1c*z*qjgZZV^)41pwbc%W;4+ z8JX!oB@2i{w*f|!`+#>ho_)z`%ID&-byG|86J9TYE<)bhpsn}jlY~@yHJnH5C(~Y; zF3FE`FFO$}sy`5!E9d!uBGRmfDebD-6$aYk;vHnq2(i{~v_tNfm#^EhBqgLpR%V-Z zt&Qp3Rd8~^JfN<<{f6!|zqVAlyP2*B_rEcDB(+_R5CUJ2U-TfH`tc%`w%VCpJ6rqC zPdN}mmd|BdgZO@9RQJB62Rci6U^Xm%?Z*mc$W7iMKlVR5_NNiG0q>1AXGg~0l68+L zrW_3+z#_UJ%-?K^D!6S4LdRMc5oPxE;X+Y3A|h~KCij*Z?Ons%wg#8L4OuA!|7Al% z^2_)-Wd7}1PteC{((41#GWBAkhq48SA^{nq#ikpNMLbR^e+a2zvBjZ32!3wq)i@W+ z+~?K7o}^K6`^ppL324GCZt5rGpZN4d;w87{gU~163W*+^^Vu#SgDV00TdZ7gK_~?l zx_qXjt{1~%LZRUwZ7j46{rFt=(yHQl7G>kSOWsN9*F~9eFP0&{3&eg?7DQkrfYNcp z?2h|ENfL_A#9LF)gm~i#+LQqI=a#k7@Wn0Xt&h!m#onUxk?m=4?-f2vf~)vJ0T0%@ zrN0%(5`i)SAwb9dSsmsDpU{sBg89S3%&&##gU(55@8dk6W6gp_LcdveC>Rb;w{Z8f~}mabX(_9(P5l(vGDM#yWYzlDYemX;}46NU%t1yQ(_BNja?- z4G9e-mY3jXcUXq85dLFh)0YV56)SWnO+Rb>>aP%&4l~s;_;FqXjqd-$1tO_|n__&J z`G>~&oYw;w*{r?wJ(4=V!|3X1*o4C8N#g;c3V*>1Am`UL?xr3GU z5CU=~N)I{wpNMPI2TQGH*SwPb$R~n*dnOYRnUZW~pg4Fd6Yiq3&XO4_$W`baVql1^kmR0Q~w52Ai zGZ__jiwj4=o>azAnVrw0A}|=A_@@;%RDtVAW8oxx-SGDQ2yu6wi@JeyERXa7hDkDo`3GXg)1URGGy)g;16)sV zcRJfKkS;03HL7ADOdg2RB&e#xd8Sz=GN;L*2Ow6a6U%!qqMjs#>FL4a^PQ|=`ya?d zDirwL>MYuH;mpQ4&7i9}>j!=xAMtrzJPwh=k?n~W#)l_esvdcll5chOO1P*Imx=x@ zd$MM^H%fNFSTWX7s$grA=LPFqc2KqbXt$b0iEBpv79M|81_;Ne z_mcAYzNkJVgN^TuQ)?=h*WQ52*~5KC{;baqYn;@~j`g`^`J!UYn@Tyh%MG^_;2&P3 z*_q&4O*Vk0?Pl>oFQXk->w*-1E#QODMyX4TOaZV0UrP2yK3Doda7u;HvFOvEqeEWb zmSSKODT;saP&Ff?rbbcX>4iG2o7f^V9P&ij3(#cwCa1S zqt(u*MiZtC2NV9^{O>4)2B)?69;{{?*L?#Qrj2xSWC8PBx@C2$(DL6gRn|1??BDG` zVKusKmN4=mXvaf|)r!{MuO$9XR{NTS07=bDjH$beK`scZclzZyu{>fllF&XEiButB z6`L2 zlIHK3u;98FHZbBk8`5~iKIjITd(lCIuy??NPBnc{2%?W=3?ibDZRj((c{#cazAqIw z=(3V54W>xgcchtaE1`}C6OttiIdgD`r|6)Y>K={E{jajLoyOCFM({QF zMAA(t?o!K$s420XZH&K`3<`ihREqKpzxS+;d7&>NnWTzD3!vxJ0RReOaoWgBOBp&w-JOji7C zDBu)Fd~2&|%8nE?{Gl~xRDCoakAj5-Ns80L`$<(fXgdJZ#~192UOTUiO2+T3nOE+9 z!w!0@DxJ=VPs2*jp~5@QVa%LCURSRr?8YB_TkhnEDu`6oi#(qMOq`vpmP@D80EO*I zwW|(iI&&rC5#4KZ4uG3-NPPZL;CgWjAvzfI5GDj?X$itNv8a;{hNlLg zbW?dWPgjlG0}xR~*UWFQribCe!f!pXB&c3_uVg=H>L*OtRgS77-FZig)od9lSWe7C z-w}kmHH1~LaZE#P=Qm*FV(B1Jzq_fheQ1C-M&u09-clc4B-X}`5Fg00<33GI=h67hgQ^0FG&N3TVRCsS;fNcU!e(59+) z4OPk5z=M$0;n!C6QN~VuAU!3u{~1vxVvwM(PZHluRbipGR8O~iE?qHnW_8*ZP7Cbl zyZrRx$Ui&BnA2d&OAZ>~f9XSX6<%+4(%G@r=&=25X3)`JI=G0kaTXdO=-L+ef%*Nq26(~-KKY|T8(+lyNs`4@l z@m%yLJ&ELf+LhB`3^r+4nwH9PL`e%5v?MY+%>_X=IV4iNK|y`rNA^{eX5VxtaJ^L& z-Qm>Et+8@6up6uW`(UQRFE%Ct+3b(Lt{bBk@mFirfWXoQfnwkvAAWeG@LnpA`cC?rk z7q@Tk_}5<&rS_{c7Q`YBY#?VUl%A89UAYm!3QtWBKn{AmyOISfI3$4XsH~ON{6AU_ zZ-JIW%9Fw80DQ1)uUUl$FxSF}yTnsW5iwB;G8T-@sl;N-Ub5;dJaUZ(KXHbH9HCsy zW|m4huDB2)Uw2JST5SonJ+yk_Qg|H&aB>~F^L*U78FprP78aqk=`uZmulJC#FVR-I zyvTr|KG>X%9gQdJj+Ku;`lkFdL?QewL>U&5pjfG^j>DFRfo|sh(IAedP@zzIp|8ewI+XJjF;G_rMUJK?ygL$` zTbk{+;t5q!LY82xbe~)n6Q!Qp{mlJoD{t?aac^6GFZfXKRCCf)GMS9*!*jvIo|}Am z85a|^4w$ai{ZF#;{O?G{hI*5JJ(_ac`g(-c?-m)lpY8ogO-Lc@jsKt!GTBB|%1-SG zr$?ztWK!uF@5tIg!hBa!{8{{Z%jY8(-wT5H8&o0X%L@IbbFITpvffZJC2u-2_89{M zUK$}tCQscVm06cif@}d`#I^qefB}BZoXMGglW1*o2t&d!H6xoXuh;C|C z^s_HDSy>27I~lZOsE(B+^msznPe%9lz~;qAJgGvA*})zq{`#4f(CsLZkw~P!HO}=O zqcx_QzXnOZzllq)^DHN;I0<{pfe${4eOzA_k{LpxHNgWXi7x{uYXQLm7s#14KQ+8{ zd_msbC`fu^_sOu~^XJQ~wwRJQbgxy*YWmo9UJxMq`P4O!jg2qrZIJgIg%mOKeg96X zqJlXW$X!&~#YV|~zlW30ba41$>@^M8T3{4=0!GPAOj5W%e{O7doH2H=uf3rp-sG;b z4egj;ct-*@bQ*ArD#TO2K4Lix#-=#=U)f{;WpDNR?4O&jM)8RD&KR3f!+Z+=kQbJ} zGSArsXbFs0}~EIEDQe2faNOqyDy1T+2z{c}Qf2-h$-vWPw>F zk5o+e>uxO-Q7FU8fPwKg}z0!BDC|pfx)~a~x!MI18 z#D&f@eST9eMeu2;bbPVy@(&4pnpt;0X7%^1X1hyWuP)h4GPQSlw>uBkwhwojE3KY= zv>QRMJUW^_&XB+e-ssoh=gO-zl!$!X|JZ-C#(z&TncSt)<)oCsjPqF6WUJB3CrY$04cSt2!RoxeTLg71kqKO>P01`;a;xKi@Z#7HLD-M4UI{ zpHv^nFh6%Q=sqr%>{8hnC&K#TEV}dh*3Q{vRp3b$@nmE7$@1H~abL_ioO)B<>F-&l zdM@{Wgfow3#LBJR>5Q3!4Ycm7K!1LAoF=;^pw8-!hdkf$&MaALA`aT3X{WbAYsOAt zh)5{}|HluSTwRpt9@CGn`VsV^ti}V&7Ao@n%QU1vby_?_@TavA{?*!q%J%zLj@s|u zuOZn>t=x7yLL=ca&oJybq!71VZ(vsEbEhqwt_cBiAAU5Iyu;&mW3uxK$4*}J${ClS z_VbTHjijc9lp3FN-|vXjx>z4*ktufTVTex75bc-HskywASY63Ijb^dtw?lZ*5~9-Z zqbvHM`eXgd)3LlsH=B#1iMXkX3QQu3$K~Q<`pu;9@9o-|8?qvi-hYa9Ntls`F4eF&hco3Oo#%hSiWT~Dr-m6_fY`0Ze_-t?l`>{jAdHtL1)(f}3 zmgZ_gE$JPt+AE<-7tth>=?84l_gCbLK)ZWxXDo~35dL~HF9A6irQIFWgSwiZT81Y8 z|GC6i^vt?e^sp;FLpulxp?J4e4W(2N#EppIczQb;f?Zr|xA9oFrw;Cz^2%>@3i7a4 zZNrtrGUI<@i0=3*p7H&UdWP|t)uge-W}$ZK^mKN6_N|Shqv**Y zk&WI4KEwACY`f3^!!`-kwjrSGYgZuC7krkdJj(Bu4Q1ywmK6`}iXVC@qmv_%pd6VM zv8w@Pv|ruD9x94riiDc1Q3oqQ#X5|;SEto3y3W@=6L8JcM|vqkilK~JGlPK(67dWg z+%a}nK<-$oyaW#}Mk!@J>oNL691y< zHANo@@W_@d=~;a(VIMYlFL?rm?rb%y}qLRWh=###3St4nTGEK<6_G&yn zXX4$ZwpW~v=Hlj~%h{XS>7=f(*_h3_atDQ+ z)Jn0Mh?Glj4k;z~QLN3sL3z+X8S?o%{d7774%!2Fx~puzAgGxA{ePMj8PYrke5~+S z8wBYFnF(m!;>?jbS$$HJH~vRDrPO+cm`}RuPJE(ki>JCvnW(>1Jcl=wo9Q~`dlS)i zwcqHw>+wDDSO&#uUb{g37@o)$1^#gS*pvKcH zZ0esJ3Cd*?;nAI)_v84mT}nN?1-cX8MuJNHpvCed20~W6`2Kf|jX82VGQH0$OUw+o zAr$&Kqv9m#9+TEXpE;n>6ejqn7L)YQ{Rg$~Zy)DKbX4C$^wZtVQ#meo=eggLs5bDp zqMU^)q-?%n90bC@I%vX}x-~8V+KFoB^YdxZc2b#+dG2Nl{AUH|lK9Vjo}j*liU}6~ zkk}W8MX}PrSzkx7eGvQ=<({bcFRo?uW6@m$cQbjNl@Xgdsi+ESOvmt_;SY*WFLpPy zkS_F=lkoedrI9+Swnt6zN3h5wm{NsA3BKUbr?fhEBzV{w+|WvL>5LPg9V3DNK>VzD zZu|5DI%|$p5ZnjNTsC8TGAbfn^Dn!|o8CB>BJ3DKqMW*A~ zW;R!S!vwqhIzXx7M*&YG_;VubUjo*qpa8frT%3qOqe4@5YG^Y zIns>Z9Vw*WbanJb$UEinbO1{LM}+c76OD!C4v3z!L4f~&jQ8)r+eQN3+WlPqi`kZG zsj0O5OU@917(}WNfmzZ_UF!cDc@wGhA0MBj*VjG4n|Q|tf<6hXr<~OWpE zpk~!P8{)>0a275r^R3X+F=%r^X6LCll-jdWbKoIW2*==PivnzSLF`l^oSqhzOCaoH zzcq?M)g89fqt}+?VyapyR;g&2AXHNP3==pmLe+m*(ngGr>_IIEzGLhGwIZ};n1Z*n zF<|iq4q?FM&nF}O385oynP+bd^r#D9^YsFDjfqAV~&71dP;6gei-3!u)&khN5^|W_GgOxk&&|d z&-_w)bL{DWde)A$^Jd0c7KFRlB6qQ76b{Lh3S`02r2jO-PwU2k876Jd=J~3J^IiKH zk#GESYDw4`U{uE>3?PQRAPD(4s$)X12r=PtO_oek=Sc2(|M;OxxwqTTjstjkJo+jG zw&FH;#&7b82Vbgc+4}lG&@^FdyRiG)7bY-%@yVwQV6L#g&E_KYW(ClETpwnFG5IdV zudm~N46(mBv_whZ$0b>8dzHidT(>a`Y1DQd59ES@z}y%@Qi<8ljzkw7R&-M!6jwDf zbx(YJeaSsmm4VJOmzZ?;RE3ckELY!pd3cIl4SlKakP}L)`h$YwP*kfzZ?fh>BASoK zJn9lzD~wQ&IwbpjN%05RKByu8IK&H4$wuAAnrW7f{Xi}k61&ebh~J}Ml@H|(#CYgo$8ry zx6Tb38k*p(VGikj6!S@BY+k39_$@Wk+#H&6BA!5JI5^YirMJxwRzr+A@-l6Q@{SLN z86EJs;Br)%S}$nisk25-2%EjZdie1dSYqh_ai$Nq6jlc49?l95;l~slwcJjJ+Mm0#bwD@;5_$#EK_!;9&OD{ z2wd2BoT+m2^5mKvpPoHDAs_7jzU421YKaA!+Jj<0IyBihZoz_RyFPt@S11@6Xkmc&Nke~E zXx$@(spI2xhk>c>y^$DE1Ndk%8TuqJynT!vsnQM@i+fHCVfz2w+5w#5gII7wFX(5# zd@B5u#pL34(ieA8kByDFOv#iFiI14HKf^{D>GlnO;I?0&2QDNifd9+fL1M-Gks?9X zcT%{VsXN7kFZm+@LY?p2u7 zN)shA9vHoEj*_g*Xl*~LjWypb}tJg2qLE6b_-W(8mvqx=|~lrOrHAg|L5 zZt%16V1SD$kBzFr3}$2&nCTi$^k)!z18I~4u04ZpprB&0)RbJfBT4`@v?#vEA^|~@ zKZ+d*Vf=Nge82jQfC_E~m|05);o5Z!t3?m)qD2D@^J)tgXi1(58WTEL&9GNBk`Pr;v zlwjD3Nx!Z`Sd8iOD(JJlfzEl5BVi(?Kr;V}bn8k{h4@Dw8nn(FXptDo#^T)6EECSz z!TOeFN0lWVgHl1lulTN;x==mfjfvOmpi(y0EJ#QIzbmQEp+#QS*vFH*J4bsaHcob8 zRbL#x6}UQb9BQl$8w{kAMDXRto=$a;IL+;MEF^$Cx0JefVdtRx=Q(18q)qzV&lQOG z%{6cZbuNfH%h!XT^&n;l=a&+b`20z5Qy|y@y*C?D`R*ws(x$+`4U^4GpQ0(1mlej7 zzTbEP@(Omx4)8J>7`GAssZA9K8IOaqO)tMMkCiZW#2%}6yLFUwvq&bOfq`$}^D%z1 zI?7Aq=Pp|c+|LbM%Y{odbtV{}ew79y#2f(&D#!tx7XgFw-UD0tUr<+Y%3lG(D#{;A zS7=lO2R`Su+Hdz3M2b`o>#V&ORitSrU zB?k;MRn*I{%%9%RXGtf~*4ADRefOMN zH2~LmzqJYdp7pEUduM(B!BuWsCO5btZTpz1rTl2|IA9u73=K zYuGj@OqIbIheUZS=j%^z1o_|6?8i3*3ox8|pERwi&>H>@CL2HSmYa zk;C1@kcbd?aOs&leKfs(i)|&Dnkr<9qG>1Mj}-a_(sCjYrJ6Ydd?Kn4mf0o+=wE*k z?oEu;M$LScGH77PP0fGr+u0U~Y>8EoTK|r*h2VDpuc(P<#y`He6fZ;7D|vX0N!vVv zcb)ce`eFt3Ou6Pm){#DCed7!_=7rrkp2#+yIZt{WuV;#}|f9wXSZ0RtNNqbVSh^7^g( zn6Moa$JYm5Jz{oJ&$7b2uUTkvdWX|Gu$6o$aMD18&1*_j`$Td#%Pxx2@7X}r|vncqxW zYryT}udM@a%m>`;9MqEdlfJ$;DXzCV0ra65we@)OEtI+jsnqN5J;MIOUl1PK4K=uY z&%i#rW%|un=?sWx@dSL5{+35Td}$yscn^L4xhEhur1U`fv~h=lnJSJUocM*MPe4eC zMtOs4or31_W`8^5Hm-xRgO3z{uljoNF?Pwpv zZ*(SW+zG4@1rcGR=#%R`!19q6JUCl>b7;H-L;RVrjHy z!5B25(Ccl3ssLDV+X4cf8N)t?`wOqbf#9LN!E6ryzb_I7(vxNrbuEcNYIVurVt7mM z-M0=B@rL>ay}sVVIt*H4fd_+={~@NBq_5rsM%X-4mjc_=6v{N_%H>gl? zZ(Wma6jsVJK!}U~7x7U5(elifk1=3-W%Hw<*Hl0ehOzZk24GXtKV$){!2d`Eo~hMu zsB=x!w5LFPAEQX#fBJu41d>FS*A2fIZXiA0ZxPftyM*Pd88N}Tn2@hY_YqbGYPs`> z?O((v116u2dN5P-qP>{tnhJO@%f$jO3fRPL`@1ZF6&$)!;F;xF?KOWErbvhd zg4svgKk9E%LZArEf!K|s#Rd@%)e6;JJa*e@+EN7tIjyG%=e`EvGPhLP&NXcA?CuJu z3%`Bjx^F5$QvPKapw9Jg5Dg~EEooKqqE;uMJIxCxThq0zS&+z&*3$xfZigtjAnAH1 z8GWBkPOcZPiZ#S~sVA9MAwxu)m|*j{*8Tv<9XJpJ-1K#TwI+h=Op${aJfN8py_P+| z0$0j9X?%XMW;}!6X#WP2+hvzBfzvV&oFl_(^2^KpWenr)gtuV=r*{z12>l&ZVtuRnCLErLQKg^#D^c=oPTf|f(?e0wB| z^%S4O@;5lqAe?47!3&=d0BysmH0iQl-hf*mR_p6V~4HsxAjCR zcV*xlvyW1Lv8eX)b$)*SX9&fz7F}K~k|yxv7wrj!oDAf}OcX zo|$4H4GA1Cws#k#KA8_mcFPpLzIB&gz{<)hPiAMfS;bej!fI0a%=6-uj_1C@p+pz8 zbX;0WBH7d14qH=1-HBYSRnA+=#u07w?KdzrI1E})9Oas%@dFycH>rl~DO37o=abE} zcekJ%lp0DrcJp=p@1#_!7vfnx10wwV{GcAJf>;DnF+BgxuLJS=%OxoQQ}$=hC&Y&t z&JY6_`J_o?t|eq=NKI#^v{&Hngl;SN2hnyrU6>KHbacx*qdVhUPsU4wxHCL^OxaMS$V1H!*v8Sg;64_$%i%J;= z8Ckz^TR0g#0d1b0NzDF0+LN2gxr(9?-`cB7-U5=ncIo8D*!GKE3c}zEYL6njCzCg&H8CID9K;UG`uw(D|v^>QKFjVkPxgg9L(3+9|UbtR19z<0acyd zrGe{k1Q>6jyTD#C?h{rqQiT|_rk2wD)CGwf@FjiB4fEq=FYchCs*GV$hy}|h9smTK zj>hS9-;6^MLjV{HrNl#WMQI@4U7*#}XkFqn+t@b18d9Jb*6_EZuUYPmYws-+MOyf2B?7MBT%3(1&Df?QVL z<@ZuKE%6NtvOT*RNym71*)Yhm_q2BxyYp*I%&5D8ux@WuOwTsFy(_ujmLxLnj{-^L zWDF(d&ttU}Nw{-2z>jWELS4!@64LLlj0K^H7lA&Z=$G(`*Ctn>Y!sUhF{JT0-)W`C zf-u=bC|IQz_tuJP^Ol0rB6b4yp#nzQbV}JiQLT|uDP&7q627uQIE>0DMraEi(Lqt7 zM(vo{S;anzv(q4{J!biF=en-|<`Xr6Q6GjHfTCOBU)Du}6n<)IYSlf?cCICt0W*S8 zar0rhbOO5IxqS2)REl%I`(1$9GBw0N06XHAVuw_TG3D9(QmU7#$zU5*Jcr_ADG`~b z677C5$pi>>h(D?sjiLk-T@LjaUmqmFn8E?pvpbY8mVVT~iDNgz zEHP})FpQ>(XXkZVmw(r4_#Mha`EHalzwJCY6=+Ky)Slc_WH1gdunr?YAIeT886_Vt zmMI>lsv$z&I-eB(*?x&W^d=%&)8)mPidkjw12%d%s*42sXqF&TmTnzZr}^r{a?6Rl zgL^yc>43wHBO_`?aFbsgrHr^BeDn0$l^>y=ikRL1cRBPofw#LIY?$tE_{gXxu7uh1 zcm{;z^XIr27(iSUmOiyD)_z8a=)$54qKb{Wi}i{Wd_ zT!fgzVpRSEofNYqz7&LN(*ro$&Q!TS^zg4z2_pzjKYg=bFOOmmCGzS?`57&drXa;h znzp-8L!Zse&1Ir}LPtSShJV6JHD7>-fkaL~ng6teVZPvg`=@)kq=|b^{m@j58Yo|6 zf)A3cCOz1Dn8#+;2c$9hV^*q)BBa;?N$aRc8LKDeO)LFnI>Rt{v~Rl0QO4`^|W z-0s>~2#8`o#Dw&``7;G@kQQRK%_`6Wj$5JVIloG|Oo@Ni{df@7go;~{Jk11o0U_Q0 zKK}M@M#%b}5T!OzX`A^tR$THcMB^jy9Gc$|tv{uJ!2DnxvxJIDM!0{m^mhwh4s_0< zb0ESsGs`y1)V}cVd;<-ZBjV}h{7Zu39|$s_k+)@FX#rKM)89)db?*UEwA{J>PnZZs zTd=~L5hQD)Q0g=CYZ4K`KtnzG3_Q&L`yyDTdjB8kEdynpoe9qCS<47mDyi@{f*$S- zLk3yIyyO2RLAi$w!h^!QFTnQHr9wBZDO5)a&KQhA`yY@BNS0tePYZ@6P{|zrk}W)j z6=xdLL|7>Q?~7n41nsW~4A{Q9g!e)Z148ozIV_dT_{&y;4ZvDi4T5j5Mg9YR`G12t zesCj9ef0{X+}y;G8O4E8Gxe65%2&7F0|Y?9pho)zL@0p0m%qx#0s@H)|8&A|ojAfU zn&i6BNR#d5F?)8* z(AeE=d&52(CZD+Q*SYCm89ET?-+(G_1j3-Y#Y~!F!y^F>GiNR}_dO#Bd#;>vQ#XszTgVMfvE%ra|{FD--|75rg1AMjxzO~Nu z$AF-M+yfOl_IzcyTqupwbcINNwddNK129PL zzR?B+rd9rI|EVC{#BlAd8s#QlSpiaJCFAd;(%VNC6s(U&P3zb31ThIh30qT2mq`0* zW}6xCTeXxH*|M{2*N^QF|K2;A5KPOTWdEm@w^ESmzpMA(+1@z{v)d)!w7T<>M589o zDs*M3E5o+>;J$6k?^Mu*q5Q!Z0DAu?u45w&PY_1fTEdTLA>d-%H%gd0^EfMuMZ1k# z_gZ%R3E(6XDt9Ccs_4uxgZNUVuEhfEwis(0{bd-n0rhN1ke+JvJ*s zj%%q=he3(@$^otvR5BT}OO1a&9cCX$RpFsB1EzyMroGt#Wj9L+UgF4Tn~oiQ1!kT| zr{@=>2d1Q=us{9*i-gM5shSLI1I9cTUo6eZn$i4E-Tn_qHr(3)>!T>A46B@+1rZk^ zu@zrXOR?I37i>NK|7QISqyk=t`wx#uO7KPeG>7`K6mR8El%{(C<5FDo(vI_Q$)LOk zaIO#*9MB#9JLV6Aj$$nE+cU=ajPdyRzav2r?gLe3Lb>UjWj-Exq@VGtpOrU0Vz?wRYhB0pm*ir(jdw!+y1Obmd>>N1iG(P%fszUUbTl z9wGDz*oR8)Uz{tfLk5qc?%$}UfU$kx<>#A8T_;FNy50&{uUY&@Y2+pPFMEiCiRf$b zf7=7mEB`TeOLOHXL3z=4f)VtATW-81d~Hg`@)imp6YoF{~8FGAjAzO~jjuyjmn@OXo$7%>r4>DItQWE#3;uX!O<3z)M{K(H5~&@U1idEP3y z7}oiK!uvWH@n%BeJDG-XH%x1sS3zPs!`}2G!F{bo1IUfWFY^6&wy3ot3US|djkH_NLZZ%rQ$ZN8SIxS z&tHD#(G9q-);;6MWKtc>{p*%-Jd7Zy#Z>K zNoCl=095_&+Xf-#cl@+0P~!QXvEcou$EdsU$Bumf0#4rUxem%|I*7Dp>$XF-ve$G2 z=dI)rf;`7wbXCfL00TK=S@;5{iChcLqf$GmCbNhv5aV5I9jG3Q-djmRQ z8x7sHn`wHjH8_I#Qu!@-V--@P7oL|}HgjQGcsz~*g;SMgwu0p~eQXfS^H0wFh11n< zaV8NP8ykr(cq{5FhHAxH9L%=Q7hbIMx*|s|F}^8Et^GhkV&sK!qSZK&@G9o21c4fT z?ajW~z>n?R)NcmM;A;}ML|0emgima38Wp>AKEq)xGAIZZY2*@qsjv)$cd^gsjP?Bb zif&KsN5{eRP_N96^|<4W(A2N@3VSD(&~guyOHZzJNNkC`I&V8ZGJ2^qXf{cNTc{mW z>{7Z_Q_rkcIM>U2l<~Fb#Tqr~Elr>{86I7Rwsa3+ z^G|Sze@%#vV6+#j-q~qB>8#b?JzuDFT&gja&K@b-8b4@|!!6SMu9G{Psw-dNM7ym= zT*=KlS5$@m$Z-alkk?*dSis`IGqWsp^b#$=k=)7V%^wWXjj%<&X3#yXS9G1624gWE z3RA4_pHeuOsz=^%1OXJa-M!$Nv9vcv&1C9N(hP!pmq$KxfH~M%hOKEkY#)}X+#^Rh z#pz=&Fs z)oB`iJ@q2l_v*E%p0$pM)4eI)=Gc;RyJgec1I%g>yse1ucN{g6&QHkkoi|Mm>}UHQ zX(%%LKfR2;C;(SP36U={rmEzwqBSF5Q)Grx8wJi+I=QQTvS*VSo}5HoIt5hJkBPRI5YpeVn)8=Ee%9;IX$F&HFfH{snzm>S-+$_?f? zO>pK0$<-9%mh*V+?LQ~vw^$Z{Nd;F$Vy%gC6y2HW>tlF(B_-Lm#yflZ~LhNbJv3@a=cpN zR_+ewL{D&C$W97c4eL|6DN;%Ws%Ux2KVY_Vd@+DvNid?sD#1$aD;G~-iV zKXRNcihKW(mITfEdFa3rbGq%)r5^OXnjg+_rLN~bG0y|*snfJeE|qVk&+HAmlQ5h~ z_!_cYI&Jp%c{uzswbb%hlLe8X#|&E9E^flx3^uonh7 zm?_TG6|*gKxzbPFLJ*quIM2B&5lzmMl#~>$ToU!>5f+Zru$8L*te?uBLX`@a_US=| zME;<5f7|yW;xRaMXD)Y@DwomhEO)3|YakD|<0dA)FTk=ZU6 zn#)5qw}A8qTumN7ZQk_IC1tv*WV8^-mQGuKiMBC>F{#N_Z=ym#3)dWkfEfrn5lk$b z>)X7zusc$5#mfuo#&inP6k2QawyJi=kIZJ^M{AD64+QXr*6fsv%#P}Oj8r3uFg z9P>Ov#J#REr<{2!EV8C3s3Nnqb9+_9%u@)*Y&I4d_whK1kBBdcm5}2=;cLmZ!Qh8p9rw)xz@%Pzr@aFJ{4HMcsAv=@O882 zLVTIs2E}UH?cQO{(2FKYl=X2O$X7m=mkkUC z4|^0KNeag3Z10_IDdj0*Qi0OUdr;W{1&1^NJ*y*a{q|9kv44Jrn@*k7VbWmh7NA_Ws2kRIx+O53Wjl6PmxN+ zFqrmb+KaO6qlaK3eT!UoaQCMF9ML;z!HVoUDMZzP3cvat-Wt zs&pj7_NXTw`sD+4edhM_qvczT(R^6(v++$gOJhIOcdAXr@fhE8BH{~VdefpwX*RD^ zN0HstNb^=uI0pxH$hS4g=tZMtOpgJW!0is(PgvaBD0$)=saq__${8f3+r(llOv@}4(XnnH z30IKKeKfd=pl#Gx4C?)8v?6_Ovy8{N`MpST()|*m7gaQY+{4r(X$3y`K!TFYP4MPR z#T$$H4PHCUi6f$x3_1$ih4HQTBZX?gb6yJ<)Y_kU?CGdA_#YaFHWs|gw_Q9pDoEi) z+N+(uhl5KuQodG)LCE8Xc2)CI4+C*PWJw0k7g;CTJJtkKI-x=v^5s1!<&;`(g@vOe zq4FNlX&8F8yLKhA5!gk)hi^ZIb~lf9BsYIbaqInW;4v}pA(5(t2xT0T*VT>cg9DYV*u|pG-Sois&r`>b2m*Y|^7VQu z$s`pCxjpffe2*Ftu2It+rj#=PRcexK8t*>@llCfjVI*93l@F&+!N8^KR_PU-Y2{=Qdd(X=?MF)#iuywdh@3v>LFjtwkuU#># z718w#Rw%u2S16$EaGwyqurwT$`Wc6cJ<}lM`WXufWnkTNfdYj4ljQ_XeSJN*=Q+3M z<%tQbR$bCgGJuVXq*DEvzI}Ko)(3`l*~|zJ7Cfl1(_n!l zfC}T>Vt3;5bgdvLcD?~cL0Y|1*8?!dOu5}y+hBFMBl_XX-FYPQ!S{ODI%W>@Z5Wht zDTF%iJ8y?PM)Q7#t1Z@oz|o!HyOff7s@-)9V}>W^@jY4zMxHKHeZX`!%%o@%5GR?^ zz8HR#SYe(iT$p-j;eA!*Y<{x|Dvduzi~q>#an|N#s^CUz^VOt0W}7y?M0U&eRPxa6 z&ic6=+k?|?+D?mj%8)xa?F^7u>N3p7JS9fJ1g~bgHkU~D??2$tusn`K2sF$@q?Cg=OC z0?np;^OK^F<~<^x)_CF1!cv5{LK#(vyvCHF776bQPq6%EsuEP>E8U5rU+taHh<= zZn$21vbPU9JTR-z!pPIsyzJ*t8O}DW z>UdEqkx>2F?)_0U^|RaWk1ADB*L3^83D7FeXdOH^^n@I))md#sg=0LqkB8@9HgTxi zH0VOBQD9mCUHlLh))5>fB@jhA_Jk);O?Yq1JeS2^9*Rz4p~?3Q4A5s(k%@lkX0t-; z$?ZV+3^A;1c?*H=%4x4l;Go|3YM?M0Zl+>Sj-1$&$k=VSFw0h@|5dASHsNaW?_nT$9z1C!ENK7q<}vg zR@AGU7;mE!7qrk}E`v%s9*aK0<>?wT2aQX%Vb6W$=X@5lppx78E&b_`y6Okbw@baL znVMzht1b{IWj%Ptx36x_+Fu-yj5?we;>G>YhyqzbJ&SaVN2}uU$V|!1ZMF$1idF$0 z^nZLzSOeWa%8PyLW2G#Xn9O=v^D*3g}iIN z1~i!HgQl2!xfCn~S`~%*O!3O#GTW|SHJ?4Gqtf#(5Bz_Oy>(DrQQGyJ5C{^21`Y1+ z?hcK+1Ph+VH8_Oe!5jAgjk~)A_uv-X-QDiV%)H;sJ9Y0@x6U6_by3~TVLxZ@y`JA% zTS>SFfLZ>gLMHXreig|poYwEwm3gy^`$dS~S8|k+HXl?aBMzqXF zHx!2|)hBecxrC`xeFGl1%y|$CbgQ9MJ560Ou!LKGK6tCi(Ujky#VbPg{bJyv7bt^+ zHZNkoeAEU#`C_bk2baaX34-yL@k#Pk8kNUmHDhX9sbQD@B$E&-L!j1J0&+?$Jg0U9 z$fRNtr2wf`p=JD4U!#Cd?FY*z@v0A{B{Rwfd(m zLc7wTc|nBjWwV@?J^#~WWYK1Vsk4_R6b&h%7>jGApts%p0Cijz-@VPcB^er#HHeSa(GNk-{A&;+L?IlD*?Fa()@djJwYRQGhTp zmC!Y#n26P!VjaOPG9+05r|dMNNf7?%8oT!-W^f~49s>!bnQgjLQ>SH(g|hnUW8ZyT zI*65tQqA=KPLTO>^GxRGxe)TaazvZpF=_MmWBVix%t#AQK?(=jMMI%looY;;I zEh#X4`$HfmJQ0}gpBx^_?nQ$1w%2zTEe(rr^xe~2?YHm~#&E-s488pXD2t0c?K1fT zHY~>ILrtDr8-*};S;L8&Bkze~P382|1s@TNf(@&`SXT!#kYO`dv_ z$ZQytn5e~La89tN#&t1L4q#ksz+70MQJeswQAIi29nbj($Ahl=L!moV<_$W+`3c!u ziC5ZmUv;>h9H8Q8aoJ1}p6_;uITg|I0b--K!l-LXVAGQjIPV)+wyHEagKKP; z@X72vt`9?nyzf5)y=mDW{rTyp3}gb?bgop{;@!WwSG@dzC&or`d7EnPro5K*IXz$5 zV!fSKRjyv6;}5@Z1yfl76^mvyk)q7Jzdi~BfUv*~au{jT6q#}WC(PC=H=r~BrJ)@r zfDQ)20s;aNnC}`Jp~-wMbO0Kc(;ZfVju+gmvpLxt@o{>VEN^qZ+I&PcSsVcJB#!?y z#@}LAQf^=kkYDh4-LghbvN)&*{@RM9+ku%_LeXgo&j%`aVxn~leK zE6WQZ5?m1uZq{@?~8>i0l{gDUeL>5;jw)*Gv|s#Rda7 z8^7I4Y+mm==_28r&80|Fq|u{P-MnTG;uM(8cRG)Oa+EUFb=%oGm0vF@L%2{QZ}Up_ zt`5SPQlKDuLBF2Nk%(fWkqefcwI%wB9TWF$vDL$G(A;v;qM-*Om4P|!0dYdvjGd}1 zg`c-6Es6Ob7C@jxz3ziYjScp-CkexrT|ohbg1i7NxWwJe_@gc$hi;cJZqs<<-ksz< zx;qxCMnQ}|mD?z}*rw>6cYa$@I(bhGwtaSyHv2M2X`wH9b5Bt&ty(u32cTBz=g*WU zLyb=6YQORxej_$`9Z6{;WC(Z@9dmxF!pTLYUAx;IP;<$oEmj?si)DA-9LA>wHJKh^ z$I)vLq+*XDXywU|Rf>|e z04#5;BpV9_zZlo48M$v?Bw@^;iKHvlNR;q%0q~NOA=icE_kQ!2JcZQLziilxTLMEg z!2flwtQeZL_s=sy8chnJv^rH32CW{s6j2CB1J^oLrlI)t0y!GRn%Ygyg%FI1oeV)w zb@LylV<8;(e@Qs15L297g;dP}xW@h2@^aZONlGw9tb}Rg@X6J|i|WWwB6E4S+WqBT z={B7Sx=`L3m(7BDDB4|HxE7lmbZP;>7k-_^INCx6$RH9`{?OsHu&^-v#M2hHvuwU# znawEE-lV@on~t>Vy}a!D0H^D*Uae-pEP%>RHBiJ#WiVU)l#U|OZu4p!^nu{|o_501 z`AY@Fmn1d-rRPAIz;mNEA+c?{ITF;ZBk5Iy4MVj@n#|}J8K&o$5JI5Z;xOx@an1mc zYJ7{P4{gMi2OX^8AE(sfaf?^l>KDEwM%WAt#)$iw`Ady{h=C}n-Vd~_6q4T;DotDy za!T5K7@#)ZDq5~lYuM|F1Ceq|#c`Yq7K$>jgFEK-WD>bJd*2`Waq7AjpIhWTP>P!k ze&5<%XbQcDR+yG<4kQz@OTU*`VO4Y3Sr)Ic)|NI~l?i2|B{gXx15N=sNgYhqZ+vbp z+R9`Hrlwl*b*Z_eQQ8=GtIf&DC%$^sU^Y2gM&1|dvSbdG2t(OfNougA25nUCWN*Rn z&&eI8BKhP4ZabsRn!A{FMoL45H4;Y!ZMpe|u6!S_(#)l%)Zw2=)5#k-q>rxo2^H9&tMLYmgV+;)Hxk(o8JnfhZTMl}6!Dl!gSQ z2D$lazoo_C(t(m>wt{m(jApnMJBjBO-kdEk@KFAkj6SA4ao#*sM}hXY_dAEMx3NQ2 zNOsaGJ(i|sCO{ugn>(5pgUZtnPe|5=I^=2NT&|QW^ng1l{l4S=$Ww!>$ZJ$Pq66?x80J;$=>+_1D;4;^}K0Ip(>RYrGVs&{6|g^v%da$2lSPE#t~@fv5Wp- zEU0&@XoSD=p>N~1TNe2mkF%` z#F-pmnQN(LIBIvd^75R|rulrkfqFHdd>3F7OQoO=Ds7O#M`!1EJy!oEVH$TyX)Lz+ zy%EY9ilasqEugd+DT9Vi!e)@1ua{R6T|f~5jyz|;duVbwP@jp6yTzz9V$=eVTsDbq zvfRnP1Qv9lRJVSLJh1u{Gt^{s=V-B>j!QK|aj+LO6A{PsaDPy)p*w(q0jAUf&|3{p z+97iY2iZuK#aLOD(WVz+hLLt3ALWKwH?|8U>+Z^99%|{n*HBXI?9bLB9{B+BjKRSw@qIY*fVCqgk>U`n*+d zwlh~bnO&*yFfXXzYvECGzcdvOdJb%dn1(%GoH*4wkbM+2^m#_y#O!js4gqy1+3}f; zCK0hqy$>)|>_2#({>aU0Jz+hae`gi}jfr5wiw%kS)**7p?}f2p!K|`1B%dmIKCrrd zWkoMq>vm;6tlMZ{_8jv2F3*uyCON(tmDp(T5i7=WGPTNO^QRH-p*GXnM2^0b%QvSP z`MoosZ9>URA>OBMTq0Upv_ILV!)De|%74T9bz6+mVc2SS2#+x#jz7%u5&eO6hcT1q zc)l$8UcxD5iuP=1`s1#!c~Q|Gu><>WRTMTm+V``S?r)$9=@{J44H578uj$@GLZ_N$ zf7@GJO2lzY7|70CTCWhmoo{PaDOQ!`4I4(TJhzlKe4+yze^N>)fuDzZKCfdXj1lC^ zmLA=m1^igarp=k+MNu8J?fcQ#AIts`yL34~M{ZVPXp&-ccnFVo;Q)Cjl?P~+VFY{X zWzta!dAfYbg4VPU-`?J?t(VVMdOdNa@!hO6nxh*g=5km7C72E$(K9^$M&s^x`|+}t zMJ_0zc#i--2DQt>RbmviiY`>h zc)nh!4VTl~k4~5BoVSGMs7M9 zt=PI!w%8_(m=kj153EhuW2wrD=k6bXc^t_2`==_3qS&FA(eJyOFPEs8&Pn!>&M`D8 z8W{~888S|0(JM0(wkMB207Z`>JA!t{_hZspP~IdNvZjN`Z$MH%5HM&ZsqkokEEhvL zJPz6(O3K>JC{WB>6%alzyL1)M!50W2ll(!0PKF`UOKb6m!)iu86d?xb92s2<_#Jd+ zHfnTYNRLTVfWLi=dkPy^o^pgtHU%hA8WqYasA}$uCH&Bwg2k!~n8m6Q*z``)fyhnJ zSScBx$jNC|A`)lMAT;C~{J z(QdHDvD6SSX)@cz&Y0H6d)<0lNkHtHP9}pCk|uM!$LCPa{bd?!AQ9Og6@rIxo;Fpe zR?KF(ooMPDau^+s8AAfuT01x>=6a&+lA;I}Fl1Aqa1zg;P9}o1lIrl1A#4(04WPwT zo3=e1^T#)mCi4QDWUY-WKvM&}Bhz3d2QmrrXB?6CKYJ@u*8e^TVnk!ofmgNeKgV2H~o08u@34x zPwJ1gCj&KXtT}y(iAJR=G3;Gky8_>&Iy~Lz7G0t+W5~$-v(xa@a?NxclS+ zph!eoggX-d02rc4fPVuA;KNaYA0OKG2KGSlP~cs(QXj}9M>7PAeV9^T9Bso9kOxRY z-GG%|LH!LdYU+#XSNRO)jc5ks`OS9cJ=G*AdL#L{c$FSh zFSQ@PQTjd>!;B1U$^GBuXlRFmXPGx-wHLm|p*}mT9@_r{*VmtqVfo72e8kJ(zA}Vr)WH zWQnfB_x=8Uu9Jvj>s!#(eh6Ize?a=(=4S++B?*8703^ArwH1Z`ON0J10KxR)4*5ZX zfFJbn{|CA-0Sv+0C8b|f|AGHjO2ho4TUpts(Z~C5k0}5stjz#eBJcy75nldZ9Lih3 z4-9-T>E-Zo_+HpcaZv~0F(nc3drsHwdJzq=tpw-_E)D|Rf3pd5L9f`s)?KV^o>>58 z5PHJd`}{wY0XiZN1nR#1FpMrf%o{6G0y{yipajCC&&9RF-S~iy&xhaPn}2!!AMhSMSaJz?7sJ?uML*Ac|2^^&x_Kd&=O1dOzYK_ZT`aR}b~ zMT>V8f0Av*yZrurufEy*eFO!Wc-@GBFq11D`;Z#DZw5_X{^zT$z!GeoAo9irZH*p! zGCF;o!2~i7t`48eDcS!kwdb#U9Cs~0Jmk~FpO$O1=T5&~1hRiSe1Cp~$zZZQb#!<` z8DT5-%P(3a8{pu^!-1TS|CJN<8@LzY=svP31(YN4#jd9U9b>qnoBso(06DedBxyxZp@_Z(z8ps%;CB9hy(9Ps07ai_ zah|+F(gKeb^7}W`-r+n*PFXg9C-Bz*CBiq%@BaGe_%IEPuMl3ZGQ70Fu7*aVDe(-= zzHNg+N7mx$qU}Jmzk(BsCF|xydyU{{^@S$Q|IONZ8Z5$B@#qV=h9D~V)wewGFp6bA zVjjmJ2frftPp>PN+{Gx7wxkA44H5(v);+(AiJgrVzdCHcXSRI??D0R9O+j0J6U4cq zXL_`2TWc`X?{=*A#BD};CU*D+y%XAqw7bZ8cyIxyl1wrirJmlVYv96n5vb17}!R4a_uK8S)ML< zMH!fYrso~XwB^_5wSMKw0l#QvU?YUl)(a)%5hgme1Xnja6_Qh`+JW2X{FtZQ>oC;FU`RuRZqNi}*(KV^a{)#Rp7F!Mc98Y`sc9fKM zb^QX_tp?ML2ixrq_w=k=c%H74-pSp~=Qr|bAsg9T4{DjcAG-j9@n=9MVrfh;8tBYPU`RnjsrN+vN7?W@Wk+ za864Dme}dmjEs!ai;FJ6WqNjfq#MVik6%^>NzXf)sD>gUBXl14u58Tal%MXp3R8a1 zX{PXJb)jtoiBXlVSF=eu^8~>C89k1)nwgeDt&%Cvzitl#o&WC| z7?=U9Ml#E!XiPrRs|0MwWu#hupHWG8wtOjD^`6i^KrpgMdDjwZcvqJ(PS%j96VVF9 z3_F<;sA6_q#{*>t!`Z*D{`mdV)&89f46K6GX->~+>jliQ(2EUzyX%$o5AI_G`8(|8 zjLctxi}G$;%&2ZMjT{?h69EB1>k)=%#{w69p&yy;FG9-)%_}ZtGyf18ZYf1%&#RG` z$O1Xzp9~X0<-j)#8-2M#%C~F#b(HV31{@(PyS7ynpwaUk979`c!#;RP1tt>m3Lz5o zSUp|qDhkj61ZlvGY*J%2i{kru7W|0|kKMdm%g{S;so7N=8mUL7Z#i2Q0rZ*H_a^iA zJpnsi-(P2ZCp>WhavESk%W~WrOyag90<6*Idl=!@LV~g>KW|7+-LV1|wY=;%riyt+ zRAxTa!GL1gO_87@`&qKtU`AdU5N1A_wlm-ykW9jOq>@d6l^%u14*}+w?a%+6LYV@* z%K8gfFYqeXC2%0Tm;Cl3boS+YR0;*SpKMw0ewJux1+Y;{i>=(x3a`?QeG9 zHPnem7dIr=+aoF3dV%~u2mFE~MevjR#(nCDwJc1CSpNzqKmhT(T!$wt8CqKzlME$T z+HR7ZVt`#h;rz9pQ>jSPcf&3a;T-0J89knn2ZS@3BiqPp1#Y9$$ycxCAVSWyW$ngb zqHx^@^g6F48IrBurrw{)i#L&L?_Z78+*h}592Sm_8JJ)GrsDDTjey&kqK|@c3q|T~ zGe)v`h?^e`z=t2&@G zgF?Yxna0Zye(fyNr@`kO>v08E*DFY)p)m-i?0B^QK?iB`k%v~*%sJQ-u%yf_c62F8gL zRP)73%KijtD$@LkKSeV`f6{b86N|@i(8`Hb8Emau+6{l{TXz4ZrLtx7$h}o}DZ7gx zgHHR^*@baVf40eL3G1Qhy6LMVoagJxGPq`|r^6rKD(W9p3McqUp*zcegxFUugh_E_ znn_6u`1^M7A)Y{^#MRt(^>N$#CDNmix48U$D%ID7rqQ6og-){X;N0ma>nD+OCzt#cb%*5~8to@|QJkd(E_Ou^~Cs?+Z>L3>QCni5SRbW?IhMIK|(dUfNL#QMkC zEij0B{_E#iXB2#cj_8c!BS-83pE@dNVOiOB1o!f1z}E=C1kcF0EZ>0WhB&|n%?iXM zXfor3O2poCOh8d0B$8`qf`B;Q+F6640+k%?27A&>uX9Ae-Mm$h6G_Ieo910uZ}1YN8qO1Z&w{;QDs(pTn^d~oTka-Ohf_JDihB*>_qTOx zRt}h3Myn);8ZLw6>UVt>*c#q}7qT^Dz4c`#Z4sAV>%sl|dd|nPCmpfdxNMHjJ9D?h zgvN}RDcCRUy;RLctG=82=mQd%0#d2kYua)^wUBZa8aXOpv~G-FG# zN|ff;YJnUHM-^pMy=fYxZHAvl&L2n*xAno?^7 zFo(U_a>L?9?!yWV(ugih%(NvVle64D7(c8UpeZPH`eKULy-3^{^bK^)yGG82d9*FB+%n8Fx z_`eXU>lW1_hS0NVP_MsF{L>$rpV{%XtIo=1j%vjY{9tm;pWsQf_?h{2V)$F2@%^L_4yD${ zUIss9t_0y%wUS>VgP2Uk`HIUO255gpQg+ml(r$K1CwpsQJK~g%2q*Vx7sv ziL(`7Y#2LtwZ-#H!OI)e=ZDJM11casN->Cv4g2E;^m(nQX(Tmbd)Q_DI zQ_FnU{uV_am$T$md;Srp1n>}w`NVG07r7N9O$55Cq3&v?6*)^}h&gULwTN=lh(w`XHGFv{{)G>RVw3{i&1 zEjZ6hKvKc`_w}2`)BSfKIi-z$VWI)V{Pg}IrS{=4;+Aj16%K^eI2mq!Q7cc{Pn2eT zOJ6rL6Vtn5Q5DJ1mF$<>M>RI4)o1M|vZya6f?u+#S|AU-k@;0EFuo)m?k{{%N7Bef zYhz&zp5d=zY-n_~6dSmPfe+|dhJRFvI2(zxn<5}~KU;f$-gY@9C-BtI{^0|*{WYaU z{{A}NtDm+z0!;BLn*8To2zw%+Zx!SZ7@#~@!xA{mCsDi3na#pY3YOH;9 zAFCLza>$;kVgGvsQ;b4XPD@Q1ukdJRm5uoeOKQt^f!;q(=NTxfk4bculTGcXL`WfHW-hEqDf|qFOUO^a|AE!aa<&m2wxZbg5xZIz_SZ#c z3gRb9%Rn_v(rGzs{s(^xG}w-FEferO?!qU6(hz74Y43aTN}}*7rNT7|GSLdiD*89f zSNdJ!Gcg=bZb^Zhp3LE&%GLR)!NIKQ))+l1)&tB=P&6g9KE*fE*jm}U9*kR|t$SbR zDEfDU1(wP_$G@+<)UYH@*yu9Z6GHwU79a=YmDY2~TU>y`S+-Ky=xQpbnBq2JzP9iQ znBmP;K#XRbXHu^nQ=3=R>n>7UA|Y9V>~oEVTz7a1>CsIwb#I~QJHrz$MtP&<>b33^ zNM$*xbhjBNCYeX)^WGx1gQH~0(iUPVgM+f>V;K>B8!Czk$~4`;;YmZ7N&@306fpV} zGxD!w0jvvH>7xSZXbubqb*2|vqMl>u!Zo0JZ`|!>Qp&T4!#efvl8NkmET824WBjp{%X#P>fjmd%(hgc4YJJJlp_S>|6N@Tu{7Y>E5enCE_ahY;*C^K9)+{FF1bt2?LdDRe z#~IVMM`ybF@b+Zi3}>eGUEaf_t|Va#p>-sW<8%w1MlVX7$hMFn+m>)|)P-QJOizW^ zNPd_T$3#x3f)AIq zlpM5Z=dm2Q@bHDmbBh%#cSafhPHrICS1_zS-G%Leu!?vHn|UW&jd?w}J~OYX1mc@! zk8&gAQ2t%1-oWXj91i1F=MIr_J2wzy>L75{O95w)!jIxGf#8Mzvgv(!yr>&7UMsDo zD11_5euarPT_NaoL$0o+QCv{>Ss~g{^5CW=r@pP^^CtzZ+Y&!L-38*|e&8P0@t@B1UMlo7O%rSAWz$qtRxdg$M({Ae*0 z$PqE7Rupai60?~7PA1x|{OTB861BU|SY#r#BRn1>>Z(IGHHt7yoGsE;cMeqeQ?~oF{mlB*_`%?x-2sXK*{pMH z$lCO7XzuQe*zZ~Ka1V<}c{6VbonLPdN1`?eU-c3};jjHm{5$%^WhZ$S=;ZyFzxwFM zq$+$0bZqKA<8`p^qsV#y;Sf>cCl`MfW$q@4J@q4+Wrg^pIff<0P1!%v?GH~N2WC6- zht7g3#P}gLkx4RBnZbKJNh!fRR0h1rIiu0!ULf*eSELCJCTJT_f@;xHmN_4^dT)(= z;4WsTRQ0gLzje=i`8C7#NVSNaTdB5U9dt8DF*17#dKnGkP-Wh%wF|rRFv7}WJY>LF zQV`FfnH)Ov{A!_m6CMXC=fj+k37-e&r{`rD|2?w|BqygQ zx=6cQwc_(o*+=9VotW5Xk?Eb6#tiK4)W*#wOb=torRgjpFG~vwRskSJ)7$rckNPkA z4a}aE0;zR`u76af>kxyx02w9FO<)wj!??ni{%|hoL`w-x{Ne=7Fd$c38YH<4<#bz? z#$}J}4^86c1@+|@H?dt&F})VhoFGlM|8NMJ{zHi_+o<1qNd!?GJDM2SoA7GI$C+?` zq|W|VnL5ac;1|-bUp<|#`Zd79F(Ab430DyN3T~BK?oYO7jBeZrXX(-R9pB*eF8j*G zIvB$!de}_HZYT*F*l-_(fm_ZGi~l^GH1ph5wA0d%zgoQyvr}F*n^WxK*_dN@KM3RI zmdFpS-XKm)Q_%d1z4P(}vz&3C;Gy(~A}2~fqtOob6`^a#nY`Dv4;&hPT~Ksx<6U?v zPXZT4u{#&&Q9?qcq?40wyE#J;#pqe6F!t z?)T^|ag+ovKX6WqGPN{~3X=CZKM~GW93IdCU$@XW1J?f(u126x;3v9>z#+=k? zyW7z&Zv2xIU!g!NyXK%yarolQ7tco%SQsA^p2t^Aw-14Xew4puoV_=NQGr7&8th<= zK@W%iV;}UIpRyM9WvcPGYu4ZF7p|Wb&cH38*VjGrYZnQIQCcD6`Y5+1H60|&2rOsX7i-!WFeTg)c(On z4E0bh0 z<-H2pC~*JOG*vi$O8MBGrhi6!>MACz&}mWjW|GR3n z8&2gepBImz_Pe;am^Vw*=K=OGy!!#lJ_VRU)eH=lv#X^#e#a^a4IDS0EN5?~zXq?Xq(XAn(+V{V#WfrS zbL}a4q7!T&lhbkr+|19;;*AE#jl?r{4E30B;eBxl*}wguo+p!0Q-iUv%mf-fZNoBhM1 zo6Nra37DvYphj&?M%@9pe7%BiBHm$A*?MjxftSm9i79=)RP7CGt@O_haPW_NuYNSS zY@Iz2@Az3zbE&qInu5VXVLk@kVX@C$;dbUM_WdGEjmO4Yir{z9!dau^;l}Xhea#Ht zlg9TKjn}^p=B(NUv4$b;Q_Ue6?w2}bYauWy6Nac(*r>Z>W;y)(kSm)CY|}HEESdnzA(7uho9&6xW$K` zu~e)!817$p$Xy$v&DoFLftfGp%Q00M%zs|(lyG`77mGZ)z&-WKPz~gG2qy@by;jbl z?k^%h^q}Pt4RIsUl!DfUh%6LJcsU`cw+08IiXSqHVIaTj!=?uzm%RF7>={bGkiDlf zw~a^vL%de3CpJ~Q7RBG)YRMi>(H(?1sxpL(TW5gtutD1s=_(pE+Nb0BzQmhQK|2g3 z?`mi;k8QYLHh;EEjvF`tdb*w2Fts2*`vJs*PGCoTIP64nLsugIF3L7b*MKvi>VbkX zn*l`_g#<%il*GncKMl8=eWK!u{|r8Z93vxw**vSzWM;hNRTdT}Y{{!yB4NLRz+9_t zZMvp4=^*|1#$vG+ z_MCu;&oF+RHa6#`zD-Kh%w5I%{g?e0u~;lD91-?^jP(`1$77+(7Hz;lgsdvr}oolS?*%<8xaac*de@WNs{J#DPBb`8U`cyAu6fT(v%eU_3x7QYj zWswUN6kXf#ptSxRXcchr;yBEODwthU$B|<`rk3PbO3RN<$pNWlfXq!8^kZGDOP1!fX{=`U|APqqJKw6(jhHZI8eKp zM{Mg;VcfKbT6A%6)be6}Y>X8|W0kb{ci0{{02MtSzw?%rPbC30~%A2_Ri%BMzoZ1@3pY?ixfPGVoKYad&kG! zjVaF+#iz)8qO@*tW&tQk#1#GBa;j`MY+hr=BgRtGihm7WI|om-d_F^D~^w!^zleTm9Rim6wSx%|Z4#xpz}` zG*_A#-j}=y40_pVbT)n*SA5p?6Y}mR{^Yyg)tFW{*_HCFZpw6#C(;}`lSlUJ3t4ia zc;Y`EHyKPbE!2RPGL$P4+!z$243>EBp*itR+kw=E>M^b`uA6BJJ_q7J#cUrP18c<( zqf5j8wN}jj=UQ>_-)lwx-?1193EhTGAHQ1jj(>s6aC=L{2$~4R7)R>Ad_nGnA=7cW zC69hZoe*rKF2eS4L`(lhs)XK6tmG_k_t+OAbL-sll`9AnX2=p2>^08g)+%vDjP7Yz4Hew&vca=Yysrw9X5Y_1kj7?(`!Min+aq{PYOq_N zpoHBJD`EC0h0*WUMYa;AC1vyXp<3*@-{qq@hTaLkr@+_oGbGZEho5{OVm1Gzl8~jY z6~p_gG5{iJ$}>a~12086fbpIhx)|oyZab)qTVkWe_~glphvhE89v1rX ztxlcf@YLzFt-FlL+S*;YX0^4xL}zT>+th(|hk63y2fNI%=nTB1rXcXHo4mqnd@x29 z)lc!&pq3d;$va0MN+(UY&~7!iCf``O`IGVZ*i9vVXCt>0d7q^A@O|Y6LMix2f`#3@ zP%4Iu7h}#9ro!cQ$v=zd19UsIOT|w2KCQSj^u;lgMsi~KugO(WrPAnyGNbnQEs1;| z9W;c^Clk`sM*vwDO@s{H93wD6Hnxdt0-7ODr$9DBfv+Gko}cMcv|R&^<>R)COG<&9grbIEIUq3NCzjdYp{ZRKSp z+nvoss$~ffPRa-pg#xPX0bf2mUy`39F+BWSHtR?+xYhbE74#z``C2OmEtgY6dQOYe z`?o?KJLJy~;~#nz8zdWL_v=@j4}&#CnUxTw<|$Z}8!d)Dv58rRc&&xTW# z)auHtt4S2P+&Olj=BxQ6fLxr6L#CnpZmB(`3xHmG+zE6R(=pj_KzCMhlEUnS~Kk8lt%c{3e z#8O687nY)mzx~J6p{d#t$e|0mGpd>MgyU5E78W+t4|qxF}p&eIaHV@Vb~KQj$*zuU%}ZE)Ur$Whvsd3 zLF9;vI4&$c$PSV7W)1dmhY~4Hkl%gzOi@9O2RnYYwe+KXRyfr3)2@slAz=yH@SjMD z7Tl;=)mL=5ECb;bogAT_eQP6+p{CPeE-DsvbKXtjG@vShkS#Y*%Jk>FHHTlTzG&nx z^flAWInqsNa)uFRu&3yxw47dKf&~Khth~Isy&!h$4lV(97ecw2z{NxBn2S$wM_c9O z&1^rd-ohwSMAFAo{g(QyAW1WtIw^MxmW($2xJ2uyV0N#dxR_6!RpbKOrAkoXT}ld# zX;d)O8`(_GosuY-$}ZrVZ`HGOx!{nwNtGoJt&Pd-!QhH%$nDT(NcLEYR)|vWU35s5 zzb1qzwP$k(K-3VdK{Dj8wt)VMnu`TAL5wWsb8k3agyruKA3oS`#z;G^1>&$-&s8uI zp;Ev53aIMqK)RlZUKvyTImoR(h~z|;ansN-MMB?|~W4=W=?l!L`nmV#94_|6l^<}&UU2N|l zGZxQzq`~3?k%jHLyq~+aoucm!nE+laIrJ^uO%`6-xed4M9nqlep0CWEa#1O6h21{*A= zkMYq?AMlLUaPYoF;wThT9HYzRm}u91=fKBSHKJlKin)DOawE%Jox`scf-jLr?hDQ& z!Dl6?9JXE{5KlITz0p=w6~!-H{6?x&W`~SnOa#9q+KRkbz~5#`tdf&blszi5uKQE2zNdm$j(Pp?USxQmGo3~@5p9+3oa^=Z`0NW^cmfh zjwBWFb6(S6u__paKAT#z7CbpCH=licOEOgrnp*Qk6na_u-Six%{_FWon)}%{s<2+R zW9~4zJ2y?<9*s(_F8X9YhBC8!_qZX8FJtoO?1HzgZ-p*!qOp_~x*@=Aff+DoC^gps zn^ucT1+9Dz7SbW8bVBFd%V0zTcjuCoC8ydp73y^MWH|x?j1%DEBd`6;*A)67sV8vG zah<1#TNuIaur6WXz7;R^GjC16w&hH!Tc3P1C8#uqbi_dX?Zp|imR34-K+g;Omi&55 zjLTD#joWB&W33N)1;SH=vf9%6NH)i$4Z_JbR z!t}Ri6i^NH*mIWNFB~h!Xohbp`9lsIu2$>vx%@wW4H>Qw{bOaM{Wi!9{o{TC1{cwR zwDG(0j)F&A_KZLqiI^nHNze=<&Hh`5Hv$T|3BPxP&bystSwVvzrW9 zYHG|xaqrg(R$hGQo6r6DgUP6jj8N3CU|qYUtG?G=RH%Z z%WdGXM|nMG67^n*W7ckQJUY*+0bbZkJ*El;MofwzdWfrw4Gn%M!MgJt)~T(;_?ert zw5caMhNs%R^rxI}?3(mutmbbakpr=mh_RA);JVHDwmXyN=(h=s2BVxih9ev0LS=fy zwoX_DTEO@@YQqM)F8|#b_i;s<3d(`PdC>~?{6UYF!j?2SgMGci946b&uTp>h8j$SI z5M_Y11&gC@4K%ocsEhyQ6~m4+MoL6zAb4?gt_V9U&Yu-Ss6-?@fT-g{59!(^0O>Jg zuP2AOyUZs@`xXSVjUVl?Tm`WBB7KIqFSjn&ZA-4?B%|zJms^a@k=cB)G3t>h| zi1ph*G+J;Wk$783&rJSe^?hP4`ZvdVP*52^EToQ34wGBpOOwC!{!~b{RNXYDC2n%U zH~hPOo@AaZl4X2mXdhzUirnY!MxHi`?O!l8G*dhVj{_72R;}+Obq!y&`0%OnQ`<1a zT!w*6#TgwunDpOjV1m?zes0HpV2_LqGoh04=oyTam^H>24B}4kr_PW&{YgA998*y1 z-1g*-IGuIf=P_-Fm&x>%rdZ)g3M;sGy!iubmG7weY|j_4T})EX(g~xPnL8A{0JOkW zJC1vyRc`W}!e)HnlGspw)`x0jKRacaSX1-DB-!eISdG;kTPRw5UkP>X$hqk21YXf6 z(y#I^3~K_71(;oQRpASz>z5I5+1S9aJ(+(W_xzxWrAG`mHzUfmw=!jX4-i9*_xr`} z`-S-ny!YF7Ob)Ctx)i?-JKmtGkDKW?e_di(1&;avSTE$0wg;xO2Cv)42}QvxbwJOm zi@2X{2L@g5J#CcBkZQBt)81Qtf+Xp7LN?Y`8~DJ~9P8HtDEb6If&jqd&pevsu$i|w_;vLeRwts z+dD*gT>Se8I})-3_R;kL$FKgE7{d?uD~85G-k=&lxB#5i;B#zO(xWFn;Um{eYYGZuxfw=NmOS z<3+x@V{%$soGx^eP!<9#i@cPnym7d+0t#kl`uBwI6r#{8!w|G7C7#|s2Plk)q?SnH zsI=}oRCybPxPkUj>Ztvs*L(15^GG86l?fc`cbmF{DY2qMLxsi27CGPxv25?OAB_G9eXZ%zX0&E!n9-vTBE4~+Z<9W5;12i{+IuhHwA7+*& zBXhQ0pRQ)vz3-i`yuJB%fBNGJdek_sBh2kBw?4d;R*)7?`R(h3pjjH+z*w+$wja*J zqBQNz3P<5;{7!@FcE472hAGlIM99gWhPl|Nw}!GrPg|BPLBi7fc0xh1#RS*eb--p8 z84%Mey@2sEyH(S}^=uf-p)0TLy1Ehw=;+`ZFhB$}Q#${zne$ek&i630G8G{hYd$Ey(P9XThJhvE^1B*IA{!RWX82bHtT_223RG=&( z4;cMou|AbtBlVCdlUn(2#YnGyMUr)bZ@1LGp&T( zK%_jajJSNF2fNGY_j^veP@4U7(d5JEK!6Qi74y|+~r#0Qz(&6iu<+GEk%B*JM-_BWN+&acR8XESHwf%}6cTKhbY1C^q7besN z3_fy2Kfjv^xV_1z*U`nwf))k!P+~FA7h5~VMFw!#4f_S?ano|`%`+|z6+T=;4HGXv z)XTP}J}$dGE!NWcls38}x}pV-e_vPKE@dK3tBK}lce>v1QsIAErvrJHM|chzH+>Lz zUJqmbdniwQe0F# zQE%iLrH=g(8UX3e2APi;bcWkuuLm$5zP$634EH2Ru zl_H_VTVUMM^llkPG6f`Zn-D;-UqH%hX?Ys^yeMnAV~K0xCo>Te6ZN1i9zyYhBQXSww+9Pj>K-ZnEq z7`?H8Bf7fNCJ>Y&p@z1R?ekv7icDiUtX!g6K;0zlait?$Dax@aE3JPh=#i9Q^P^3 zV9Q0qN0cNLD^k8@qATkK!#ZLH@8P=4P~goLX78fL^TKJ=9axeTCHidM5S=)DKibzq^2%zESU_`T<)Ft z;7AK(cVy23ul>YbBlncpjiwi~fkkI;pbROdZ}Hi(1r&+1$IGEt)7Ku!I&eZ|#~JSk zHsjV50h5hG%Rjs!D2BU8!K5WiAAa$l&inrcQ~EX_g(pf9a-b}oi99!+CH-7*Yd}97 zC>F*KU{CBwtLWFMvYwUPT5;~OP!#NTnY2EL8Uz$7EJduTV=l+f1w=H^$}X*6T&x-i z8l|HoF1Gj^a54@Ba8=X6y)$%k5fWI5&MH|R5B#$=mUZ@+CaU7 zDN{Tsrxge#W&*cT`9T~%^0h7Gnm;xKa(gmDe)J|aa#IzIj&yP|IxmQasS6H9z!fc+ zv#v}>C4F6E(i3$-V2Uf;gv#9F5rWG6#ausI!y$6Eb<eN}y%8^xc5`~2W z#q+P3WmTDB1bseCpLyWph%4!EPUBQ;1*MmIJk;DXlv=LjSJ#m$gs!c(zJ2`NVKu;K z!8xnmIj?WWY&O))E3l1CUy69XaNMUR1@Fvh@a5D(n&Pp%ynN>$%u|qIE1Cxcs9*LT zT_;FWaz0th`PDao+GmP+0Q&Az5qj$P+AtE|v?aTaEDo!=^>cSMAAD`XWa?)s)RSK$ zOcVlbr+TiOP*!;b9*fYErFZ6$xbTUn>iG^SYHy%~YF}NF|46%|Y!Gm_%0LywlBRe?<$1}$bie*}v|s;YB3zvaO)PPYu;i8lx;B$svG>B8-rwH(v- zz^5!99haQXvrzdU)dh*p@W+_utdftw4T_`5wn(j!`TIa4|N6s%t!+^WF}YPy@>(nn zQB|Jyk0k6EYgN+xKzDr8K@8>3SqH3$ws@(ZVuE>-pkrYw*Lnsu5|PPHsjj4^4@DTA zs>nNBAIsfIIxs20T7Nb{Q+c>9eU^ud%^=HCcz%z`I_^+B8i3x(^b-`Q7s5KWr39fQ zzSmJ%SAbXd5R;k5bg#N|9hWT;D<7cF_e{-)1=pWI`qyrbMPm7LrN$cI`|9NNzYNWP zpyMJuEoj?0zNSU4n$O{PU8asIyN=5Fl~!9uIp|lwv>8OA$!cl@9>xRfzMUFOybt@U zHJI(jbXbKCD$lBs9yMMjh)Qc|PLSx!XJDYEft0;PQK(~t0dMn{YgLO%M7CXy^KI|# zIStbm+IPYroB=2syHPhByk&3t=Iy*bGprrl>5N#`?rug_R{0xQCxskY7neH6tJ*nK zfvYe5F+?MZd?&q|eNp%G9WQ-A7GS5xUe*Bc9gRql`1AttcXA#cJizC|4fw=Cm9hmb zj*K)5Mez|LAKv{rh~r1{YVeMoC28nPzfe~$XxES(Yv$Hb{n%ezx(9NPwXT0PK|N@q z_QX8bg*6|RwY*=?_mFRWuxdS@>p}FRk1OCeJHLUDqA?WjhC#Gy?9HZ+ile0Vo@^Ys zTl`QZj)Z;&B4%)DAb5O}!D6@E6xX%CbzJnIW-!Ob^3g)Gw9#-HeBN8unfE3xHt8(r%*2Bqd|7+WhH+$ zktvj1G>i-Eu4 zzhCC*SzZq2-PfDAG6edW?s>}SD=jacQ&tmE0F!AXKfX=>wL0I9lpx^UE%taiD7Yl2 zri933p%>+YUH99geldq>WrCRdD7ie}jp;d#P3pTWxcYnU$pG^>Z1{mx$|9g$U2vPVR6w+HsyLJdJcw7OnBf(T z*d0__k_Lj#KgZEY$LbkC`U5F>JO(J)2db0bCcof{ak2i|{F9=neyhEGyB}?4`q}oI z)z`8+iX_FWqgxE)H$+IjZ=*8Y1>!o4mX&Sto-$i^{DyD$4*JOWmK< z)7witaz&^vdNXQPasBjl7VmZ)pNLm9pC2?NV+_MZx=T1&UcE!ZD3O-v|QarT|a}mpJ<5cGxKF?WK-D;S?F3o7RO`T&012 z*eRH(=)K(F$*#Jx%C0;ZklM!|3wgc{Z~vshO1i->PNA*Sh{76`I|AERN;2 zqJ)r*Z^OSEUMR1w@b%bPVrv@4040~XqHJRv9*be|d$pr{)}#P?ll52PHXZw!#yIMH z-JEGY4g@fz?J)^WW>1^a^2iNEsQnQ~L$&jy3bFSo%=YDB}s-3(FT3)8ZDBkjI zZ<}?^31{oWap~xb1FFesQ#>t+U)SU7ZM)+XTxn3I{aFP6%c2R=_IDCK1D{X>=M#z6 z=iw#qhZpnZ=Rf-56v|A5KJkl%!Vo7V-qfE;ypXqOLU9vVxlt`l$D9}oH7*$JhMT2~XajH#2l0BlQQv&Puf|5y^!liEUret5IiZN!v5 zlLoplj&9YMpSoI2I#104gFOABZrIRV7^t#RyA>o54^fOXI(o}1^DKv5IyP`eCeU^> zi7@tldVsPO%bmev(;ZX#=Nxv1PFDlv5OQpmocFqyme0Ec>*)ntM~DsrUp| zbWB;LK7(_RCwEXVS2MBTOth7Dz31XGwqdlHiMu>gB?|URMA2g20+nF|E%|145^iVi~>?gzrNdwgrXuU zP(I{FVq$7dt32Lq#V!EMr`nU26C*~%*)V;jJ&+-57fx?g@)wBXo%MEGFvY28+(e>Q zfb;@mm}TS>p(q5BrlwS3gpTjmd~S&Zvz3}G*x1>VOC^P;3#a$$JZ+bz$nHE)a}NuM z>=#0a;VmAJZJs?7AgoS>8tl(2zmmvD@yA)?OfSMrkPa4^g{ydnhx^o*-A>F$?;Af= z&XWo(i50QMWI6v9;GGgeuM3~&bhUEfgvNX2)0v^yKwiBa;$A@)-l5GBtJ*}{hdibX z7O*9Qm7!gNL3*kt4x`34-TjM{Y+t@?_s$ITIoYynE}z zizO3wKS_B`y@}9rkKB(uzBgm@>zvaG4VcYhbW`8Ewn3cwU%V#U|DD%le;5SDiDHgE zHQob+Wz%(l!{J`Meelm)z=pV>Z6q~YapetoyUm_kR7XcYnjMBIaSbwhg0?c=SlZ9( z{>PQj>w@)Az+p#CQ-fBT0x;9{<~XNf600W#^+yW9I-6P`(98y z1B#`v%?y)4<_o(@^UvV^k(RoMMGY>6{W=i;oke{~QYTS;Hw)#d=N$fb9!HY7zSzy_ zyfF`W@a=B1&c*x;X88rE#9K2;Oj0Z8-Y+!DX<(J@>}{$HTZtykN=nyO z-7PML10T+Vo6J@u#Y3G=b|I9mzjO^75URhH>Ph&|Zt%GpO^A39Fx`qzZC+}Z-ro)g zv3uO$2S&_XV~z1*Oda#*@B#j_xlri0pVMStw+1O<)jGw#juF_k<{EoIssAZEx#SbT zPrkRuN~2)O&;L^c0AP@RQ)oacs?$!g<^}LhQ8SMek;_bI6ObgFfyB*WEg>N>e17@d z%~7uJYU9~KB|UA`;_S+o=YMs)yOFe*{+51s?&4s&ujF)exAtk3_~P-%`+UROz|WpZ zNBq!RWS%UY(B9e${CJ9Pl@4XT&yUl> z?;xd%QS1UQbJqDd9njhLN>(qHYT>{YE&HB7yl%BQBFu?>G+@&F^c?FSUam|O_kf$( z`SexxjMoCs0s*xyLCH?UeD>EHv>Gm;I=`9Ve?SJ9?TQB(Z;1F08RSLvJ%hd?F-eEt z=m^EP2EGqi8jOa;q+{lZLVM+@t3Z6-ro2ACA8TTv-|zQRK$B{Oe*bjiw(Orc;N$u~ z%vt*0BGsy8m^q=YmP^#|l+@V~0Ce-5os}@e&@6Xj|CgB=COa`D&yyZJm?1V=xjMLa z6NY;hrnQ<T|r&HM}ip$*l1fnax5E z%d0WQkTV0ml=Dz`M?l0DZm$Vy1hgR1*$YKXUdVVUz(|$l;WRR(=p6;o--Ne0+fvf~ zRj|s)Q(x$P6=5^49r$8m#gkLNDImw<4M@UO(~f%voIYmWl?H)=n$7Jux_sjP)D%G8 zR6VX5_CImd(KcCZ4pDy4s5DWQ;hBxcMZ`j!Z=Xw#lhgwZ#2gQkQ6TAN)^bNuw>Bhs zSgAz$C3bxiaJwS$Itvr=fa`H!^4gR$c<_biu<oH=>Z_ z5seb9nv7GTX^R&W0668j>`r7Z(W?DEiY(~y7n8cU}K{BquT3@^7xjwS!RMC&?-;TagIQ2hh1%9Fd zUNmjPV$7|xWCNZ(9)5dCKlN}F!ot%xNr7GjgIb{ognAg;EtXBJiB6>5Ij^bBk9Vz;QX3fQ-m1er~nj9pn>4c0atoseh~#Bgnq%PHgneFBxAvU&`F zXLy_APwT^?p^*_)4gBb*lp3G6)2}ZUqqdOD*@Uc|*A^df{t zhs!R7EZ)4BbF!?2PW*oHBYOd3p0~}|yRf{2*#kZXrM`meC63e&wyR+dINqW|-S`j4 z6I%XuxOOj9#P(ymAHgP-XZ#~3) zO*0ssS?_nrP~1-$M_IyR`8?9F(QaJ??M(inP*Eq5= z!mxkY>@u5hWLiu)q_x(kba>a8QG7|N0L$YV3?BG6K|tZaDE-d#N-@#W2QX3;63PB>r3Xn_tPm&=53|Z{o!Th-2^l>?QF(<)$^XQz>gzKmwH(gARfnFni+CzHG^SByDdUHl!6G=zM6Jza`1%4W8EFk*C)qB9zXC*()z@H0|Q$DS6D+ zOgt{5xU^b4ZEBt=FDA=nri)W&{#u&7h!Ub8^L>w?)aP8f`f$Yk-dr4 zp!sRp%%Rudk}S74;LS1@FH(g-O5zbpGye(LmOI6(1lAmzR{#9LNTU)@0#V^@T3c-f zP#&*?t{9GH#I0|wklq^|l+a{}u`9w~^q{;Sbm4c057vWxR`-x4ixf4$7I{JIvk z=k=-<&Jzh(=M&?BRQ8K`;0GaU3iO=C>|W+8naw$C1u&`K%_2;KE5=w=HOB|38tIy# z(PO~~qp%-&nH&Wu4g!Ix&3X@j8v3ss58*qeesHc9(`GkAi_NXpeI-;}DKxKn)NQO! zp%FBcxTpS*hr$(i@7v){Raz?6n}|U=UtP`)Y@_>4+g0tK%ses#!m&)z``fCE5Ig@o zIgIR78|&lMXe58p!PH>&iq>+n#jS{t3go$w7)tm3hmiw}QlFl}~rwuE>T7!PYV zdfiOpxm|WrKS{m1x{{m*G)d=Pbutb|fI0kmIDsok^xNi-rInR>d1e@~r!cBKGhfzAPHi^e2TuO2f<2|@Nx_v10|D9qM+ZWr^R0HueD2*bc?wwEgEw% z`7-QP(pnK!pnqX=)Bo=b(FZ=51j+(a46aVA099`qogszJ2jgK_^Gse+lYv9a zE^BufGZh+J3*4BHU8^@>jDujmL8>;`%~evxKT)-rQFyxwSzU_?n*2B%=#=+@hw{r!63f>~BvMoOC*NI7I@`NBO z!9s#TF3MIhDD`xLKaHq;D9gDa8~(I|gXCky_p_q-w3b4ie|O2oo;G!;5uu1SPczN? z4C7JRI83Gw6H!&uHTL{tLD6IFLpyqw_*=0g-Rl+QI0kk$LY1S|_mHEMqpeVrcVBC( zxE~K|jRiBc=N2nw9*2oA0jDqZlb{D`rX(PxL$3{D2@GWQvQm8A9q0S2 zR_6qP1zkHO?z4MvIKNFV7;;^*Dcl_Qyggk3$59tXrDmZH74EIqVppb$&+J~eXp+X8 zm)D7t%M2~jVNWodEp%g8mgaScXK?)C7MK{3nLiHPn4~?7?j1fA?UzEiP+dKOz0K^ob48iAMeW2>nE)8h z`MLeNg%bf>|1!Fa*N9~81BgGhSfMO6A*ZkKQ-JcfKPvjP z!|Pzjs5lcw9o0!IioY`2{jx>Z3d4-p(`iB@e93_VCPa{%mj1d`Ib{?n*`4AJLXj%j zp@e5R=r)V%{(T+SUyob{ohh!CNvp#hvIeYI24&=i6sPSI+Nm=^?^J@NLaQanr7-@? ziQ%t^T+T&jE20RwcwK1jLF0Kp@L4DJ@gQ8;-cYBc)jSGmjWh2_N;#@M)Hzaz3*QO2VzO?YRm1i*grv_d2}Ls` zVR_@0#s--Dh6{CH`zxA4F~fryR-5hMtEES-Erv%*v{}rlN>eqfZC%t8?F%*cMc;Pz04XH zU@-2zy6PGmKj3Y#7`^fV_Irlz_?_u2fzJzxVbb{65)KQ?QXyxPk1d`XQ$^md)vUSD z8Xs$A-UbxHG`uO^M>3_;c z+y4PZd?^IB!-!OmZK1!`bF7Abr)#)AS0Wj8;_F$+b;$Joz zye_PbF&TJ*zN!7n`)tfB&O&IWHaeU>uKGG$T$s0?<#~93*XhrbXD%!(9+(iHd6|$h z#@CYA@~U)wyuM518fvOp^23}Y`P?G~?W~t+^>a!UvHp`>Ph(cvA#Etk!2}DM?NePWXJE$#T2g&F9V#;sIt}ZRPhO+=)9S~ z$$#)oSZUhmkmN3GzuK64X&?$3zVYjvKy&gVYbYu@nA9t_f34t$|>H4&C+bT#l zHgtm7bYFI8b@j;$ww28aM;BEsJ3(>OQ*2j6<772<a> z-0(27k)a|h&a)GB<*GfB&thTXkL^xdb|=yX+)5$o7DN*Em#g{#6ev1uK|uk&?GIo) zuVb;9bF*299O{tVsMX-`*2|6X+urV5E$L3tlks2u@4&qe5fCNyChJ}&(k0CGh`NQ= z#+E8VC|=^}b_6llS*d;tabK^BC2=QY)zRTQ1cW~G*hIQA#NIZ|L&gf{U1CW-T2^K} zZrG@K_S#ckGuGST$+Z(`X{j^hY(Dv{ZC`tu61QtXOTYDk{wXew`cOS7j@lB@^i8q9 znlK$HRveNvd<;GO1ybbqMUbuCPLd!8BAGsDz%@f!T2=d1OBjC)wgjiPE%CRjU@!&) zJVE4x7wb0|E;@vd?O zlq5(rB_rqjwFZLhPeH1Xu_S2xRP{#$g8tSEe?0ML`swI~J?@&&h6U|y+pJ5gfnC!l ztJ#y}jh?W75(Sy%w3;<>?0|IFEdYGs3u$X>hcSc84#wd=tu%Wf5X{*a@5N-fM~TI7 zV!D>SE0XCHpJfq&^0i##erc{LAYWN%BDz048vA4(GL@C(Dyds_| z$X7aYNjgEW9iqVVWMbvpG~nk}m~QTw?__WZ_XHUaYzqmuLVHEe?U~@QHCWZuvw@7B zx$`c_Kixu+Lphu@v^6F9hh4EB-7WMvNlqE*QeADtOM+wsruS1->YQXnAvQ*QF!SRxr+!bH>H42RSkv{AU{i`)u~CNHHGoxjRzjcAL0-{ z%aTzmn;XeEJ&C|aF^3z@xTE8w5HHWWdfP?IPfnFO(a(!yr(b+0gFOGhouPD1*~?iQYNj+Zs#fJt9qTn{6PYCY!P40I)E3A(rw>x;Z$A6McFJc>2Ntru?=-~^rLJ- z$H#DAF9+RSa%#oKO$SCq1?;C;-t&Yd{>#``1biwU9r^!@4V^Y*C|L9E2a z*O8$SqZj5Vls`#X$wZ#@NnmoGp9}sRGNGlCPtDdf0~t-{3oxM>l`@B&1lST?#eurh=gB^02fXujvg>yGst1`C zj0lz>B2FyN`>&cXiS@g=$#_Ak%I;N8Y;Gd$1}S+PAa>7--OJNB2RK-ZkVV6?i_}t?l|hNu*?RVvep)BpYN`R z!?u$%L69M7j{-}xx3ch~f`s?3Yy)7EQp=4u(n?7XHTUVkiIhgN1??brVu@Rg) zNMJ*)zH%$TlSwmOXF>o6UI9+Yb%HxKG*D! zUe=Ak#HRB=-y-T{oOYeDWkzj=RnPaY=>Ei$Qa+-P-675wUuAQ7QzZ|2`KzeD$MkAm zzN@S^8s*v(b{P$uC>n`>*XqmD$U9An^(nvTpN zS^-_hIidEAy|G*lTtC@k%c=L$6ndY5j->h3{v;v4`GIE4kAK%ild!ZZ-?(39G&;728H zt7E8f#T#GMC0^u0srfE2|JCNgvfp*X@k*RhVd8Z9+1-#l^q=d)PQrh`KFGmS zcbuc!d0*&@JNfO;(KnrvALKEnJKlp_v~b1vL&z zOs_A#L>;z6#$&4&Astqp;xjZ*8M!L^iEQ3D4YA2HB5kUttr~^n)rRafPHVCT;n950 zPSa5Z=>4z7$&gaX?aopp*n0_2YIu2aDnob)xHlM;=TRWPe4jpysmz5+0w6BhXnQdJ z9SiMJu*nX98M0@7Ru@?W?pu>O@F6ZBOYSh^XdAL+~h2fkB8Rg_-?JO zBLFR1JEW;Q)T$`1{}0XSo5VTu%fr)dHfernj5};$#-|6GMQIlLCyjlR3@+(D@p>8R zkRu%$wsw7t%D;nqb^0O673hW{8!j18amu`r?;+vVYI)3{&|A*6x@MJQrj zAr*%Yj}PST))b6=diYK_zn%#)&XiGP-@B19caN>b*A7ySGBRYUls6oXDT7V1U6$L; z6*WP@+&TslhLQ|Urg#edq{jK1C?Xt^txWG=Ma;_ojO~rMUakxa5ITogTF*4TM0S5L zX>k&jJPDbyin=~HgiP1}+R#dED=$rgPfh1BoLX zF(TZSbCre@7mSaViMQc`m8etUq`(XxtGyb&gUrr!tNNjE*u7B2-f&Gejbi1_qNOC) z`ZANA&n3_C+Qw!_ERzT`@<}xmneXj{)kyd2NpJE=zKj!sPgvd8iGJ_;^3md6I07~( z`gJ+BdCUC~MC=Ljx4f=jUZQwYJw(X7_xx*v8ZY%?TDE$3&=Kl+RJeNBT)*vZ1*$@0 zy*|cJJ;dq@aEK!W9Bp7Df)7Q$ElB)S7Z!ySr78jssw5cT@cyq$Ew?R}`(Yhg`o+R6 z$M|cmZpC_Y)P#U7hvjF?)VP8R*gR__Cd=ecc1fKuC~;KT(^%n(qtA)olqKe4{n^!kOeHXo1in(cT`<) z^0GTUXNRQGC15xQ<4MOqO9zG^0$!M~U5ROHNd-u^g3#vGqAZyL?bBpP7>!z3L5T=Y z62C@6y69T`Jh?m<3hhezXMg2=I_jQ{y_C!5$#Q+qazi^99X7O2XGe=G$D?$@Gt(9c z>p6A?35M&EE+GOpYB*|KuApS@kHSV7S6ihe8+%mNu-_z@>{X}4LFY z`cQpnOqI2wqy$<}FjZ|L<>=(JP;C+xUr}B{ohfXyR8K`l)@6?*0HhFK??TbHWMmtD zyNM&&c+H{WJ-5I4+wsC4t8@ofy73{RmE$C#bL+J!w5!miXAk9)J zOE#6XdjXNHN4i5(?Xr>$IAjf&5C4`{WD*?6?9`1FtjZ+!p;eu4x+IQCF~CZf%29WK z+F1!zphG|;>+fxgySFMT{Reta+md<1ueBA5AKaWRyR&tv5>!6qpvMDuLT{n@y=083 znZm_imHh=k6{K9520Y|Gzm_JTLN&YTemuPE= ztuVTBq9g$uj09t6C5`dgjnE$tGU7hb&SRR@Bhqy=9_;e2qRDH~w{^9DTX99w zqhft@9a|_!)Yo(2j-Rs}IF)xL8SMV+>d@2V(|EZl0;N+&NRgTjJ z6}}Jjb0nYNlrq9uG9+gK_6`rBpe**xCzo#nI_zmS%f4}82H9gca`gd&mm2!hxner} zXwgL7jmpog5zc1aJewcRPJZdjXVpaTWT38Bd}04tukcY$8nc2(MMcG!+xTB4l)|L1 zv-C0VGJ|X*&UMu5i~!-r|}k-YOpKI<%%r-77xjo z{Q7*wT^9jkNe({6ATeyc{QyLU5T9#Vwo&;@4kWVOEhXYO9OA81FN)rV|1~pePt785 z^w^x!KGw-Hq%GHW=_23-mM{~lMd*j!I->j0Ay-w4M$%H-Zn6cg$^J&pi0@!LrHs1^ zCJQ&=t-WK6)fMH=Q88ObSe-glqVqwenxgME=o3wN4w;h-sD;vExFU&h)Ufd}T~ruT zgl{KJQ==te5W#r{bigC!%e#N_&;Pmf)*CgxPFaz#T-V^KTb}uG8FpQ#O5-Sq{UODe zQZon{Bvat~C{a+S0{he75GKn0x0aqofO{E%VF+WxM#IyO?!HdmNZH>QEdC1nG~2(> z5sZkPK1LPw8NZ+{#w~TK34f6jy(SbkTt-S<`^F6(g#;GBBi_N6ecUrLMf;O9rDj&L zPSVJTFJp_@zRQ(|a?b^$-&g!~CJSB41j*o2ukNdidmU+vH>NfId)>LMx(DH6@88-2 zP(Ytou#?OY&0*!?#H5P9?@6Bf>|yox{0T~8UinIEoqfrto}HbHe7?IQ-3~_}#@x$XFKNXov0hfA?28y21s*Qj^ zla(Rrc{E&%Qwm9xhQD9>b+YW$lX1MJ6`qfzsqm2q#-gIp^z+tVJdvZDgR~y;Hu*2{ zKPpM*d%FL+o%NmwWpt5wbAQ4LU!yn|w21c0^Z6K#qXt@)p|$oD_3Md3zpsDT5Hpx=FWTd@Mh z{e9aWG^!xr7!?sr$1D!iZ+HGb^26k)a=cKu-a`WkYPp4M87!7)FqbdhIJ|s>P6pyb zDhO^5QdCG{N^tvH#Nzq`bu;T!0~a1XAveJ%$^Xs}ap1K+j%4-|64XU^?SL1^`G^en z5jE3MYQEc++*e97TIT?=hFoBL5jX~3*y6gvgybdpas+8?@H!Y{yt3~3^I9Urfj;A?H&VSRC7Xmaw z^g@`>=37}ZD(6lS>Tb9$fprOZJaFpK#0uP`DIe|pXI);s0?kC+xFXIleW(e0#+ZC2 zcRXPAdTXzcUy7bZzb}WvM>ogMt-zt|TVC+6tQZMHsfz6UZEfLs?A5arL#qFt= z!-7HRcCVgoUw~>hS=V)L@ITcoJg_vL@3VjfYl`bHGdkBz+fG8fWLF+*k zcZi4Bfq|20AZuH!KX{>sLgBC2C`;&6=^2<1Tfu0T1>q~{Erb@TM# zchl>4XG>3Ta9Eg5pK@ess=qzEB1M{{o*t*J&^;mr!f|Bnl+M@eb&6a>>4ih+)H!NO zewUjf#p zv7+-^HFXlIxj4yA+W5oc+G#~Gs6c6~2KrR^-;s-*k!aS&mFl2m^05V=O8K5-PHto3 zBZALL(lFn%nN08C;NL=mHxy^Ia!6f1Sf+)fo~&ajs6HPsLGX2MzTf=lV_;Z>>)@yYd%5Ok&}@PKdpr&(4vfW-!S7tL)!ylAzPEsJ4s4VU z>F?4PhEWe&uSZ}pRg`3oIF4H^0b9_yE37-n_xkqxq_xp`)N^m18!=zSHP9lKt_81D z<~+Du<%oXy28?CCD?+c8{yyZ-1^fN|&j_Ia3@@g7f5Z$kQ@h9yx|@7Zm!<^a)**j| z-A$C^6;FbgASZCb62?kqh?0T`*WOno4OcOsHc?X*TnZA{zuPl~v+-!yAr=+j~t8n5vRvk6u|*Sd>1sDEtHL8;2zN0%KxjT1}GDxZL9$uu&B zEclWz0xD=RLj2M15P%x_sIcm|{P|ypM2_*lbx5S){eRg)5bWAB&r>sLT)@JB=%MN+ z&HnAHQvBeDKA-omF_o;3DLH8%`+PAyY^KDw(*Z8rNGY2&;x`&?+N$TY5n4%lUnY8| zA1F7UUZz?tsO}VKwNM3OnJq-?_KTWH1adIW4nIQ{iblvUW^nC9!&HCZ{bi0K=OR|q z?>bh3T|t_AyT9u!9}@$|!KE`q%^(pU$f3X1l zW({fkYpg+qw){~r0y?v_&kJ3dYe`l}Bbufv(^s%r+)0 zvS|M|kElCUX44usrbKkv#&YvKbxuyJ9{c3HwX)?3zj*ylZyr1jwnF&NZuqZ|uGz$& zX$T$mU1`#W`MQl!z`bzdk?hJil26tv&9l-1oPbE@=!B`51XQk*Ksa~!RO2iqF#Bcl z9Uo+xVSi=4SR1kT!)yGF1V_F;=DJZ&D9Z726Q+aVg6qwKIlJvLH?PZ~xTNGez(7P8 zDu~Ir8@Ibh-FVT~|8jo+{EdjW_sP)DbUsF(tnh0wT2G4c&iH_o!@WzPk(+o5Q}sAO z>1edE-Xpt{$6fuc*4@~9cD^OkVw-+}tpnuSW=`>iztS997Q6S%Oe8vendVMi?`a&>(>^Wcx6y zx(dFKhG>*(+rojn4Zas=;apdYDIx9y73gCJcM%XBk3~%;xXi-EUTdv!L6Q>z51XbX~tiN-L0( zzaW=;=Q`jQFUt25JlGnEsKBO;3YNK|NTB3IdSMZGb_QarO}gaDeatQ~x~%OJ@WfJ> zg7XhI`A?IMJjl3?G3?G;I2Lug$@{y{v1*Df-xr7|Qv#n~M}J8P^6{VV5%Zb-+Cj}T zkQ*uCdd8L-_xsB}@8+)*+OXq<+Nu4scruFAYuuS~q1Rte<^)(LcP=>y-$~rVhm>hG zM2wb+x%;%2NEP*T-Y9q+1$;P|WBrL*Q}mp&x0W$rLh>paK(oDAw*2X1)x@s28+Wvh z0Qu4^V`07Nl}t6Bs(RP~0xID;&`#S1+H6c*l+_bJ8fI@WBIf=|%k9Pl+!;oWxPM$# zR9XE(VPPSGVrry9FD)G%8)@{!9{YNjKL_l`h?gFl>%-aBt0_4Ko!X*=quoWT%AMlE zA8c64G$fE!`n44bt66cXxMpqjWb&cXx+`bibSDoPWLNi+ZUWZuXx2o0&Ch ztsy}!u4fN5`0F;F`(@qL3+5};M0bIT-0G*SWbEylxClHRS)NZU`?=P?PLps|-q5EL zlH~!&tYJp6RRb6fQ&u8A!z#QZX*i1ifuzO2CwwMd1s%~yuG$_wD8<9PgCU7HyAouP zY7T}^W=!A{kCR(YP4hA`^W0G45R^o%5X3G774vH;tzMAnVoKZLgXd#iXDcW_2>Hda zRXcl|sG!up1cz!uy9k+@iq-o_2?p|!Gn& z`xj9VXq&YYz3csS5>$n z90;i-rgWDl!k$)4(CMv2t-R*1cf$UEe=&VTHuj%YuD>4T{3Bd#p-&$B-R=Z;#Z}G(bLd`0`Ac< zXcS_&sQo*axC){^Xup>l-p|Z{-5dXD&Iesg3yFBm$&AKVzGU6~H!1yC1P3GnUEVxRXW6~^ z&;y6{Kq@pGo9IB9xdBw5fnuFC-=^zBB}6HSuU;A- z3%JU@wU2iL$@Hh=-+>*$e;P%j|7aAu6uSOgUSu~4a97RQx_hdRQjTINjS<@9J>Mi* z5UeHu*SCEf#GY2ZmJV2D$`g~-QV_l=^s5I8dYU@8?N4lkZ7;wT_p6HkHkb*> z|G2Bdr3G4360LO+C9G0|LFzd`x87=eVC!A`+OY&71X`1-#Uj+X7{D_4of7uaXL0c| zi+n=N*k6X^t&J2mWTukJA zat_;9Ymd9MGu`xh#JK28N@X9Mf?H5E!_6G^!SK;xkIU0^3RF5i(JLrucs5PncHggL z{M>-yja5@Suo?C{=FH0NY~U-6WAia@R2_#ZuME!Q`>vY-hBARImhul zoB{?10Wik6m=s3AGg}CV7X!mrv>7m{jmgf|{gm^;no?A@yimCIwT zZ>jy)jmZY+{R8G^23j;$@vaxC(vl}}0VA}Vc5CSYpuPI|n4&ZHBhz&nvau;;wE^qX ze}+TwQvWd=3W9)`cEoj!Qr_WI>(X!h>3NBQBnSNt7Yx@1fWmCI0_CR9I<3= z{K}x2VZ($RFxq4WHB zuFca5!az3SRBNfW(+O7HIRn4xVO?KmbW=O|<6oLZp?-Z9ROj>9>9?m`th_c~NT3}* z>|SJbk4?k0|C(r3>jx5ka^CAs_TKD2S5p$5FV-}%RKeoru;}qmM&62Z_+dy38E4*( zx7frNE?zvYKVZW{eGLXf>ND!mFXgmhDO{ukKiuaAS8oR9J4X z8j1TP9YMleRrjY4Lw>g)UXBGU%0~>SmUaLF6eWL0+Ya@7%zgzppL)9`)tiSY_saY! z#etxrNXbFO#@P zXYF*B+oIeIm&;*Gz8FzCAxBi8-T%7*_QA~HQY6F^5%|5jG~#|x@jWjsDE&uXVgf(` zF>9#zk}1-Jgz&3`VHYeobwGHZUsWJ!?>#l@G zg0(FFs>U9J5mwyb&&QJq9ru;V%!kiW=)ZZ4dj!SQz63XHFKk!3_rB$+R^5=5^`u~B z`p^gpt$qTL-1C2;;m_bFSzn^cvv%65e^dko`fQ5>ERc$@ON!|XGbrJDYvj%h>qRMr z4+|;OtQ{~gW<9OVC4D0((hV$oPl?YB6yg34{Z3^XUl(kG#|-k^Pe5WBi&+F>St7+r zrNLugu?z>`r$dAdy-A1CXOjOuHqxqh$``bj3-@Q_$ldMBHl2F807OL48iEbgG}< zC%W^2kHw~MZ*O0-WEu2rZ;WFDw95AV+rfBdGvK`lIO2iaZ%?;;VTtvC1;-wM6>WyM zm!(pG7jSfFc|GhQ5^~18yX*nJpzlU{S)R8V4VFtv*1SDz4gkdncO0*JLE7BBES6Z7 z7vXn{JXx&q;8-{C9>P)=#yBFCKV0#v<;aqoh}WDs>AOuC zt#8#SgHLs0%0?<@O?~UtERz2wb4ezzqCtkTVb1wd0bj{oWcQnE4UemVq+QN3c+S|k ze;^ZmTIBvF;+h4(0aVJos)57E>n5q4jo}|0p#48^0B~U-QSFMM0%z2W>#b11KVgj) zL6);;_-cmQ;*Q}ZDumOi@g3tr)B}~97c&YyR*vfWO^ltomoE<&89z}_kmHq>kowY> zRMeS7sw?X2U5-}84y%d29fv4i4a7#=2%NFW4jYa>TYs(wD8DAWth@wD!Ot0_B8Vo? zQe=qUkZ${!67Tjq3GU5D_?anVKbGAsKMaN0gXrUJUTb&oD zC5J*7nu3Iw!5aw+9}b01*Q+pf>jHK$NlaCfEEmOmrJKwRW?-%l1px$eX($g_(O4Bc z`=!m7(R*oVIWu^O5u4^9N(V#A$uf3ylDM+@HlqXaZ0a`{0b4ylg|ZcBz1{nJdCJyy z-EY96owYG@LNq+fmdTl(8nNpdxAUifvvN^}GQZ<%?t;8^ZStv~L0ven%EyE73X0Y| zraEs}$_PA(w=65$MPc_-(=TaZ6f5oS9PyO0+khK6?VTbpa&&vX9K-{5{Pp+uuR6}i zdH`c?F?w8Z>z)fxU8-t_ln)BHk%(0Wz`00R(Dlx2YT^Wh)&!Jt8ACRmFREunfbcZ+ z?WyxEUpAec&Djk^D%&L7$v6bq-#aOu{NDR`6{rlk=pf zBg0u$J}%DNWeu2AFKB;z@kF2Q)0t5h0hqklpMT?eEB_OW-#`8Tth4_J#sLXojM*ta zhS}!ci{{4sP4PL}7CB(DvVHgE=KG{@@KKpH`#K?xz&5FBn_KmvaYD`#XAX8JiM38T zLMPtn8Rh2iAh+CLP|3-**wl{R1X)Efl+XR zc3^Te)u7Q%gz!@7Calq)R(6ah7}E+7m<$r}W)E~`4J<;BgAPz&g>!5QD0q$Dj*=db z`aszUneZiLDX{06Zq$$YNRAGUNtsWitE()+~Y?LLaoTe-P{Ox^?KYaM}hdxW9i$A~s z()eYH280720lOtN$9zHp=KFpm$h->O&a8LP$?0U?ZpEt64p`_pl`9M@<5Y2gjR>>U z;n|9Im8hnZD;`ZOHVXK~5TG6c8cqrhj>c8j7N?Ve+0w6gAXA0NZ#Sl2@TY2BpRur# zYFyWiz3v^MrEx63pGOfw5--d`En_7YILj2-Y^XXOucsv#+ofz*ELvjA^pH^>dxRc@ z4$4br1w*E~Rp>UP|4Bzti23R_gsc&dB7UteUB`TpAeUipjS{3gnVw{&L_60P8$-EV ztiAUH#7%oqZHPKX0op`vDWm+}jElg|42b|)spQ2P15v1Q-e~AD&&?bViL?*~<&Zy|=0EX7^n&mOb52Jp zXM1KpRy>k}Nd)GUB_C4X1E9ND>5sm<*@@iG4~zZK83IIaGOB^dly0rt&F=JNu2PiUU!GB7jfX ziB!&mGEsKNT>Xfn^A#xV9kdG=SK7dmgJ0>Ux(t{yo0mWt=yCN-WTe{!kYEILr zgS-SS9|4C@(Q(a3z1s&&vk0|7sJqf|k1}D9wXn))79}UYq-8hjSl#UxKKYv_r77%H0*qsk%2dFx1sPzGz5ChD z9D$DK;HablqNC|tSt7U$V6Jlc-~qB)PRQbOC(mFv$*_X~T0Swb%;gNW?Ip79XMjWe zd_5yC_FQkV5SN(v{hIy}%}zuB7KIqJ9p1wF>C-1*$=Jl5E8!Uh-#; zzBXw}U>rGpr)n^LHOPAGlw7qxugtI?K=tz_&F;M85_q1l^AlULbEaSe1FvB=26yiBT>@Xnph|M9yZMqpcHkHh=Qlj zNoh*45G^<4x!hG{c<(DbULTtK5EN6?anQd}YYw?dK;wr&pihGm5;+@oVgPd7vG>Pz zad@+F+(j&hNeE)SGp37bmgApLy@HghrByjl0S=<1sES^iLbE9-k3GSQd1BJ{x>wv% zX5gul0;<9!aIlEhJYgfzRhZ~aWAbsT5SrvdDjp2v{=?O|r`e$mr)IM+;oaM$gJ)er z$fnN9YsB!SNku#8N3*}#B6HH@1q(QP!{%(diECm`hI(_UHZRJI8rv{WaysKvCJDzZ z#SoF$s4Ik^m<(_CwzJ*9x!k_lE!Ne*h+=b0HCFC_FFBsO>9y?jFLFbplSae;Or{nk z-?%k&?*BCX0Fp!s)U7jPg|1qBAvge_AY6Y=)1`FnK6zS~iyOxD)MgK!z^s-?$%;wI zOcq?O5(FH?voGgSV@ztc0U~vs(LiKHlQrf9*Z?nzXZ3SeH@eN5QjRD~u6Y$&>DWNz z;h1(Za-L!NEdET_9901zz-QG9?Kj934aaWMV#sno<0_I#Rr+HI9fNkGr`cdB2_Uxs zyNGR57APGeIP-KOO!I)P_UBXr0vkTetELGLM=sWpF_hCMzoYK`lA1n0o&}%hIknDvJai{puC*a`PE3qf@<>id z9Qa8yZk|MUQaY$nF09(KnYc-kE<%U9H(Rgcy5qNJq%ot} z8+bWvkN!Kds%y5AixjVu)pvsv$&mpPg$|T?ePTuA{0?TJT2WLo*`N7#2h9545N^-b zrL(=-Q!l!pC{$%%-kre;3JRxx+C-P^h?ZshFxqrJB3~I#unsKLi{rfh-PE-m;7WB} z*g%Rjezn0q&~@a$GMU(kl;7a27`9Sd9Z=!W?vK$IHmH@2)&Ls7yrkD?a5Js`Pf&hB zI$4k4B;Gge;NOkn-(^q&&``hd+_&6T?Ow1_WGT0Iye1Moo=eG0=&(w>ff}pSdyK#! z8h9W3R7!uy#C}QJg8YHck6E1+X|+{~>BgRGjy#&!73@c2%BlrQt0KjX;OtxQ>s*li z&`DGs@<>})6@GCZYGL&WJ1mTqNijs0wj0FXiP;bU9*ToR>owZsWPAU7-{2{@I`5)* zS6#Sh-CxjJTf*;W3WbRfrubIW2D43CCqh4PEZsv`lfTUCN*{b-QJOLnynXH}Aj<-y z-{5NupJy%^4~%S2RC#de9f*n;#58! z&&__HjoqNg5YwJPzdxv?;51ZFlY!Z-Xa-)!QciSmg)GGV+i?K+jsyu>?H)6OIGjTaZaCeJl>Dt20< zlj^+PiN%h}@)!NW#t%XMs`<=-|i>e83~RiI$pMUi~*<7FzgozE1 zPq&J9OPH7clikF|x&Bxf8}D1+6%6Uawm)Npqq&Xu1GeO_WZUD!+qQFSv&r@vTnN*C z7;^+JmtVH=vr!kR-9%I+&;3Xf4-zWt>FLby*s$TV=#HD$Z--wev*Ta_7T({~hNqNb zbi4Krbh=%_JJ|LycE5m?9u)D4NAs_xUVF>qd4{-!cCu=7KTovrz0mIzhNJ;9 z-7($!l^t)2LlhArMx__8M}3CuwyRKPm-MxP85DWSb~AjARX51!mm89xZ-+-}*(`Ou zkwkWQ6CJOJMBFZd6>GBI9jWpr-hPF#Cc!|pcw8*A6AU8Xn{udbH+&wV{6{?41HbBU z#n~sX?eIV1OXjg!95ow}A@y?%Ug!&Xk*e_*1{)IOyiTV~wx&9fv z6pYb0UoO&DFQBpyj9nkskQ$?5TG_$pT)cSEa*%j*K&L6vpNN5UN|1#cd(C`SfvEyi zhTzdtPcfajpGVt|iTy)T^NMMCT@=bAwZ!-$E+Frlg0wczo+{O0w_GT7qd%=RHLw&a zzy1Z|7V2V|-jtG{fiwj)Nk_=AZ_SJ>CC!<`J-pb8EBnXKU|j6ON8cqJKQ1Tho~Wv_lgLPV<|8Cx%_Z`aQQ8bA0X4?mj@^Aj-rvO_OU(8ea9% z_pahEMhU%)3UOHiP|7^j(Vb|4alngM_G*9Z-JlqeDqJF*5*aL7%z=|o44-vt_hBoT zWUtZ@eXs z;I_RHO+XUv80C!*iaWaMFuHC0iFVXU$FUgU$wh|dTqS0pa@*3ura=z ziD;Jj@gPYN)Y>RxH)aXz&6lwy70a2VH@-HX{-Esr(^JF zx}7yy+a>jKsWbbT<1+L^M7C{v?$dna%KeJKS^4=N!mHPJOlNuk!AxW<^+hAN>A@x% z|7h%=1W^Eig@t-Fq2s=LIF383;ARHsgO-b#W8YX+FV~~X?Vd&!tkBFxADzs{kq)wlQmGp9ziX1KN>kT= z`$ezX5>e9IarX#8r(PfbE&C;n9zua={2XVkVp}=Teen9AidLS2X532z_Au|j@PipV zJp8+miO2a=@BU)T@oY7f%VGawH(tIDm;fCHl*uj@LP`59G3GwjB`!Y~wz35ZEEgmRl$9!+U{) zd=h? z$;Rw&@lfIWh=R~Yd>C9djGiAK!>bN_sfhLF>Qv@#f9l`-@Jf9OXGVFCv(QqNfuecceTn;dzai43kQ0p!DU2ilVZ#jkL%N`6F>oc?= z-}_#e8aO09IH30M5e>10^A?ft7YH$C*;4H?0mDHuA@!jz$)^?a=q4>Y7E~Ec!Gue~ z_Zls$sm6p5clII3ofY4!dylP61EA%T*@ECq(Czs<_T>8Kqyasa_+XCSU-p{D~(6t{2xPK$Rk?G3V7E@h*j6?`l&@IjVDMi6eP-;Sk~ zFZ4cdC~*ql2ZAEx+6ZX*2D){$vJJAftV_bwmsf$H$^a3q)ZnWKoN8YfpidF?yWb%Xrz<~wkc{Q|`T3TTY%KOfcZCRe zIg2K1AD#ha74ytWb&J2RFs%L9m|AlBJ`S?7WeOl7lIOd@q!5ePEKJtP1Ms!_DhDeZ&_|%SvX-t?4tW#Z#gmNdNeGZT{43J$mze66qZmmjrmxl+x%FJihRrm;~fY zj%pVax^MeZA(pV6&D#NLR@9vvob}CvQ~`&-Iq?yXg5Cj?0QanX@t$<7YSc4>-#Ei@ zQl$MB(A90;D+zL%d%gYzAc(SMat{xn)uF}W!Y;q+l7v}rhc5e-JQ*mNs`+pE9v8%zh@7PWZLt!38WAnqHh z?i-gVy~B{R0yfz$!hB4BpvvEr)+7rE0M#ylu+ac>%RuNrE$8t)F&wY#H(T)gyG~CO zwb*b1hUO{TERi4DDu&v%u7Ti+4c5!%ycAE_)6oRyZLzc0$~*R3bg8$?t@khBX~v+v zvrw0*w(nOIexMUIE2h;5p2k0bs=%1{`dU~ltQ%DuxSWO@kbrQ zTC4I>H13su;~R;M*KJU)WWmvRSvb`I5lz7qTV|uKXRzDP13bCZb*h`~h9_%QQe{!9 zNZghA$ZyRzVJohWiN#0?SK_7sHr5^%i7*Wpew|&_p)#Kn`eO}n0O`6c^(j%j`twUI z(h;^!5)gvazSr)H7R$I4Qo#I5RTgl={;6tTa8oTv2jDU7D?2;Ac;&8E15!y=d?Bhy zorl~scFqh0%aJQ$clqvv`?a4<4B-}l$B!F--`Ji5c&);ctp)UVB&nkZbd8A39a<4Vx06Khu|; zq4`X`b&zV|`dVAP)JldEujo!YE3%f_XN=6y;>=`NEf6{XXSx=S6NBK@{6Ujta1t?oe)QTWV3$8+Gebw(&mgr9o$(g`hehSY zks!yd2I=6*azj?j`Ne}mn~<2IGAyjkqMRI`f`S5jz^;0Ccwmp5O|wbG#j3(ZN;nv_ z^$-U6vU>WZ$h#?|T0s4G(kFLGv&1fqoKBoHasfLijONcnHEq^arq2y{}l;A{s# z>(7>nhBKSF+*WySjYY!h#a|y>D4f(e+kp5ZF z_O+emByy$+0-S14g`uNxBq*|otTfrF^3Av_H9`3rnx7>@KYZ-#k3~KINXEY|(I2O# zAfe+0&h-GjOYo*Ul)K8STD9aecoLcW7l}3@0O0iVnd3*kx22W45OdY&Agi5YK%a z_5Y8n2P=WzrO)}u#FI5Vnd&VVfuY@p;FX2Hp*va;lsz%Xw{!m8d*5sQ{uD_`DL#5i z;<$JvRd-_dRMCVWlh5NoWSr9kw|9cXYnB_QD5zQBdGz9Hg4f(r1RogVN+g!uwgjP= zdGHHNw6UlZafkn?{3nufDj>-BmNu+giOc8617iW?&7eTgFc>5ohu-|SjllU|=G z6M$Q4Z={cGd~k88wsCc-#=6*HF%i4ADp&=my?yCKpn3r}BZ%1DPyZcqG4RTzzlGXAJlX}EaaaW{;ZA_ zS@A5jy9l`766v|@d)fc}3(%6jsw?;9X7FzBWWaGm-AkIqiI__rzKPPOcfUMN77Dj& zKBYa4pl5mR(W_Qy=$_Og9YFv+=d}4OFCbpVpU@nRmHIC=Urz3O9Gi+ZST6SLhECW{ z=fp3zd9n73GMqKNAwOQ97<#;RC!nOf{IL|=>I0{;KWT5&Ye;FfJp?l3+MdVXajJ-B z14Lj#f@gPWm*KG0tmQB>*YqG_g0g{XYp}j|XGcB^u?$hB-@WK~@5w-6)@&9kyMq-TlQrWW`@~=HRKVwcyLW9h_^TdDyXKkn~MllhYoyKlbIN zT}^Gh?+HjvU0t(lt)D2-Tv_Zu=Qac`x(n>dH>K48IV^#i+{v5zweTnJ<@O~)(MHH6 zg#utZFN4pO+WdX!ld$adRpAVd-ODx-CY=(PgX*ZhW_SjuZvNryh9^eI_ckhnc?MfH zus+hMuKwlz)_={g6T;gUELoe1$MJ9q+@Bl8fT={eSxLRdn7^RXd!xbg!u=Azmbn)0 z8E>d-s(>qA@4HoLLn9WlnR1fS9ht0=G6>)CG`xD_t}^Hllzs6K2(g)%2{dzkhT)}NQrZ-u)(0?so3ZqtW9`Z=q3m)-#2k+ z&H~Bho5t#O1J?<(lvaBNp1w}6OYV8Ms=Ois>3mBdD$VB=Z zO{|(urh(lI{yD|P!DfbhlQ|lmNyH~TrQwL{bT>K>J9Gmn9N+mX?7tbrjN~XUI9abk zuRS^my9`=$?zgnG>-mIjR|HM#V8Hyvnm`EWfs2&OmzPY>IDTD!;4nU zj{|e|s@z=g8KwDGg<~$?4ls%Vq`{HmY9_PYkEi@U5oQKl3qF{Y%~p*1EM2A#s;lQY zn(UP)BsY&&S~P@y?WRv}N7QgI>h+0ziLV^9Sciv6|ABNoOggiDB)!RPMR&H=7L5Tb z$3zubar1O`-QVD}Qv1+FX*7{aRE|?Aq^yiN&=Re<@(m{#^jW&}DJF>8U`n$R6@#Gs zulWNQ5I10If(1Ucv1se-ydOM0JsIHDd}wnhp;-_L$dX3_Vj-EE)TSG|rp1);`zg85C4;I!A~jg$bKhAEZK$1&6051D64%t z*8V+){`p1=n42+_X5w%nO~}N-{>dmc*++ywosf7=`5IwQ_&7+tb3G2%t9jg`GLYRH z{}?i$`_V#)NhLFmWyJ@8puUGCQTtVSw$>e-tv7`ujkMPem^hW4m}c}7VCO4L`MKIY zftOnd+xjoZrAjN-NC@qdhK7dv=H`+~vx-@#>NvOCZQt6#m}xym59HFqF0t*N+Pb8M z5e+sP<_?l$(&z+e%hR)vqie|2=?zB|0)gU|E%gOIZLl<&HA;(Tbh^%Lf}1O$e$g9fE1hieTeyx6kBwMzYquDgOP z6UGd4k`zeOG16l5+#i08s&i+K*>xR|IvC5QF!L{sWUi{u+SH8bCD48KI}-o%cZt?O zg2Lhj)`h6AmnXXKYSOdLoUFU;W_Vw54;DC26r;7vff&g9Rl2CKm-rX_p9do-1^rB- zJ&mV0U!mcj${PR5nQLrr9tNO{J-xkbTfo zMX~jFX0Z{0`$jHbTA%6-x z2S&6diupk-Gn6OgQFcKnB;)fJM>EBagSoUg#xN2y`N9@5L_82&4o1>n*`=5pJl_;y zOjzCNS>bV+*Y{%)HpBTSLn2fWiW(4!UujB(vQU`cdjt1`Tmgf zy@p!l{;-+rb_|^n;rKNeCz#E4-yu)3{HtJf*E;?EvxO6kaa5~qg zf?TIR+KH-t2yZG_e6}0Fk9GVd0Z({3_!@l>f-wYY1Q!VjM zPiIQ{g9JKZhqMmDsTeoeM5xGk@Wt_c)=_8B${n=h3zb?Q747jPJGoN$9V~R{BvZytGQ3K#~ApN%nCUpnE z6C@>lq$)F?8VXG)?Rq@_(6~4N1pGHqAgUC98q10X$E?__x4B*X{oAwI?XQ^o1zM}q zi-@0}9~W>|0@iGOzWU+Rg_X9sGZ^jqcujLWTk4;|z1Xan2la1L3LGYw1VQkC6_OI1JG`G_A|!mJA_GbDB(0U^tF3&1gw1q|w!HS@n7c zEPqhk0u6*2exo_!;O$GzvI!PECWDU;i7#DX3a^B)9R4w5n19tsT)+B$%g2Qj^l6D6 zQu}EwJ{Rbp?Qt25%u~#yO!kMzWEoucnr0FXXZKt%^hJ!95?6&^EtXnqDTcpO#7GfG+%Tb_Uk+d6q}b5}#hR~cRG_NRo#Tu-rO|pqv%b9&s0Zp2 z2&YTv$o{E0hJL{xk^{!Yo;>&*a*y9TO{d7|v|AFI72yQwH0q!hsd$vd#FDGG|6qgUkCTNmD;N{5!a4p4*vCM@z~rfvtI|aQ*XT{=2$AM6*=>uArm=+= zhEXU?*L|11waTFRTC@p7$xt#Q2|mcw2cR+)9Tg}#5`O#k&GB#&{OVxB zBALTxy~ZzO7I2UA2eu^U+wc88oGwII@AQs#zdNfv7^=0uztH!1c~q&`_+>Uz<8-15 z1r6OjH5FSKshP_1eUU$gD5I)WwG!XqFoKXPPW$}$`1huQ)S|=dv)gDEU;0=&kBc=Y z7gw&!`FcoHl<_#ZpUN&6xq7|prNKN^VSLc74M4!RBwm(psgjJR+-^GD*u^JbPzJ<0 zwbpCg4I3b;etCD1`9E@*+`jWv(_#dS%G!aTc--NM1SU1-8-Qzh-2s4=q0A2+-CcK?-DH{T?|kO>NyC4l%g@v4*wQoisS49Zk* zvHKA4;Y)*D;}QlMIw84}c3d^MMof^;#AcO$>PfI5R^e`o$3A?LE2D7~`gh4P!5AD6zm#nx6q#RRMgN#g8Q_87NJ8TmOKpBjC!jEn9yl&7_ z^I_5R2aYO(dLSW}L(bcf*Zu7SLHUfZle773CGwM4rUpK{)Ca0E$*;NQqNyj!P}8HS zAlR`LHWN1gLtg!+UO1TyF5g10m3lLda<^-q!^YX0pJ^bAM#GzNl~Ftq+uxHzaO2i; z=I$fgF=F3oxC#_CzVN^2jTkemNhb;6;PaVcd6TF#fF(K{2+GaPeP_(`+!y!$fM5W~ zMp6v|WQNToOcCWDrqpj+>^mqD<^At7PGKvMWZ zS&A58+hX8+mSM%Wczb=}bl69Hx&sc>8oM2_l+@Jj{(fkyMYA5`DDZS|ZDb*P^ z2}7$?1Oh&jT&V|^(vO^8XDqA6j8ht%@hqElpTcWFR!HV5vh_(x$if%*542WRKUdv2 z3u0+w#~n9g#7r9eVE?DjkO4N=fxOAaMniupvxzoaA(IdE0%I zZ?cF(aD_D#Y)4!*+E0cs{Sh9c*6jux7(3tr)n180A+J~jNjLJ_45S&g%A#K>f<|U? z#nMlM!xXX{zncUvt84H4!Y}w?hBIZd6=E_57}7YD7TR$fb#xNKFGCM?R)19c z`uizdvQ}|-`0?2r*xzZV#BcM9<(`{nCw$Cr)8% zOct=@`Nt8J&#-==36gd_UE-IETgVEl3OwZkknOQKaA;S2d@uQjVBecKmP&{gIAB)` zpJKTxebQM3^0t7-eHSTsGv6+k8Fl7jBCXn@*QC(fSUSg2E}t)^B8CvY*%fL6r~NLR zLvf7zJ5YRabp^>KA|jU%j6%}$`!_t0rw7L~c`lzH9AKc}l-pb{A(raC8`h%JNt9DY zlJD@k-$pcxVl!yLg{gp|cE`lLwSeaBi^z>u7#8gS@z+_&pZ0rFj;D)gjW!#`Il=QH zlR{YsnqR72i9AUQ@nk5&`2YjGWwixF1s~m})>$usc#xYR63TKR%BU2D}FNPjzzH zK$eS4iQ!W32eBVWg*Kr(Y0n{+)+EYE8s!60@2=a(ru%6G`$xqm!atgzp655Mem19h z>lMgoQAw_1r$RfxRECF402$eA*P_q;pC0+WzX1-81_;9Gk4HU%eF3S9_NJ_zDoqgF zrC>t%e$s|(gQj%+?>&8zFn;2vUC8&#QdPmV13+;G(`5XGi{u;#;3#e}MIxc-bZa^-xlzDcdF=ETSyZp^|J22&e!jTzl3Ebg=vcG?6VGGKZyM$jDP0_D z|ERHZus4!yy8Md<5(H%~f{)%s7DDa^Vl$uBlcPXELD?rK=M-}?PGZy@cg$eYhlt`3 zi=+H6E&z$Zct^9LmDLy+W+ZJXZNE&8=r1q(Q-$_)a7Y-v{n6CnZE||eM(fCs5V(Da zA1{w=4jfZn3bblfgwlaxG*iFk9HFNj&nNM-SmVMNr5b?l(lB5pLS`o`w!x;Ep1x+$ z5aO@8MxNW9(DJfQ;K5dmn0_fs8$~b(uLGL*y(Im2ov-;%ozE@VC{eT~Lwqk#3FZ&7 z;nzEzt;PRF_5Lc10F^BIKRu7HOt}xk7kqA`;$ElUJl`5DHJnrABd2u~UvMDMfLmeW zq7aQQ_M102TeDrUytyhf|ZmP~^lqs*TIVH$NYCqajt zDv}y2wJs(IY%o_iIE5#ekb-6qt&)P0GKfo)dJm`nlld+snV|5=*<3l!*+wUdAKff9 zAaFq)P6HK)1L-8?qy%W35b0vmKefjMRUBTE2w_7Q|FX&BLPtjzwA*NL3NKWofD?cE zG$Kh67M>vm3}ItFn3+a`#BFVvRs{US*IJwmH>JMG;*gHzWMwitY?mlY>ogC;{^VUS zm4>ezjb{~Shk8R+ajn`Gh3}~{gEWqPyT2iLUiaz(YGkYqovA3oY3efNfxDd;%AGqO z@%R4eUkK1>8E`U7@(hy68n^qud2jE>z~oHuaj$b0OkE;vZ@t$d_{xGfWJp{JC3>E} z#gGxpu!Ko{^&p$MhrSEdD-D?mDfl8EPyxF~rvqXw@`34cMOLJdG;mVvUIF>Fe==7X zuOw&r^X@vCsmKLTpyWD!OE3=a3K??x!X%<0L4hAUT@PqpBf1g2z287HnX%YVyo7{= z3N4Oi`=d+0%rKIwTxmc8P6y-707AtCu_%K)u_$s$Z5mH}Uo5G1u^g+T z=|b1PyB{2WFD@@j1%eV@D}Yk3rna`b$!_L<5Zo1FF6EWRsAPPzg}_ zN{=K8czdPBP@0TqAR?p67rvT2nF%-Pib`qc-V^AEWK+Rm+1h=hF#wPUv8xL>z zF>YXX`lKND^20r!>#C0+V7L*Re)0Z#kEJ)pk)@DJQ3SfnDDOe$N1 zr3mT!_WTgvO=+KjYDzvSNE&2*c2TqfZ-iNZH#Gr%W*GDd<6tlS?vTrX_t_iju)!2R zVtl;{Pj%c$%{9pC3E8k`v>*O1c|P_%oy;zS9r=RX=pAw_r#v*nW91VxeOVi`%IKsc z>qKMLcuQYb--KIVPKkm+_UxL9RI*oTdm#G}kB3`G_vnm)M^7p=3>=i-^A-k1a1@X) zMpyjJm7M17_ zSM1nocSrUZmDbl0`t-J3VZYZGna|I}%7!L=(fcm?h!x2fB| zO=B$lZPwv*c_ySB&+y@nJU*PX9zqsP)no^1y0*&y(~Sck&;6S?$uFArwCHFQ0IgH( z@Ni4Qu8>J(X~Ch3rcQ)d4gw~uYJ*j5;c@+!z#!n43*mz|lBqC7AHb{2MG#q9$*^q zjlxMVZI8g&;AHEkL`Zb74;`zyWlx{TApvfV&66=MTS@V6it?QsN<5JYg}oS-elRh~ z(a1(`E#T$A+}KPx#6>k_W@GK2WuDn&%7Fz?-b$tdxBti3Uk1h1MeU*}?i$=JSa4|E z-GT*ocMb0DPOxAJ(zru_;1=8)hhV`Sf{?ysBu$RZBlTgWD-w0EPp)KVCtPBnHGaXXMaC)@Y+iCWq3)Ja@bxQ^t za~SS49k{-!e(<4_B!%U8!n7KZKUM5WbY3L}!4 ztT8@|p$qc&ov%e{KwEL}42E$%CDZuv+#1N)5Gu?&S3)F!H$Yyb+6bsXtzE5Eiz7Y| z@b$fTGQijl?=oQ>+}eWX`)ITqI!Y4Ut&KK=M*k+yLtr!NZ9RKFsHgopr+cbrefR{{>cRUGe~E0L?x%Dp_a3V%@F+uq!TWuG*Q4_Lk19%`W&&Krv5w{<{WG8@aTuKUsOE14tgl4+CRo3KAZ zMc(aoFL0rhUXS@DNN4q*(iR~RQG|FNB1fHSg#lwcAup-AOnZ^X&;sA*3%GD(luHKKmQsNNoSA1#ze*PZME`_Io14=jcM*9b*2r zS3Wd`_l zYJ<{5_!|O#Tkyc;&I``?SN2rPS)1i9S_A>ifZlt38Dq+?$%4R*POa|-C*BK|mq z;M4dC)-N4#mk;%|du|bXIojZhP6hpo*M1nKX< z_KqoPGYoo_#dG#vwT7VxO%<`<*%r%S1L0ql7Y*F8qdJkP*xdgJ{%>Tz!gL6oB(@ zM7{~#HqEGxm=$RJ=+stUsNQTt1_5xbUL}g)_+54jOyHEU>2#Smnu7OFW!X4j)o?)@ z!`d<+9i?LIzw+54t#~^b#KJ_NnoRDr0tz-Ftjw*7Cjr3j;ps7Qu>@^puE}HS&&-!{ zhy0Va$5UqCyuM?CTJ!B#C7tGF9J&&^uN;90AG9jpEXdRZudBaG4mxKEnu6LAn7%GY z+wtVEzWE9hqX&!iqMoE1(CX?qxg!3=Gcz1EONHXuNiD|^{IE6*ne*Px>7SbB{@zd6 zZ$945F#fNh0dt!qQ=L{v_%Mpu!H<&53YKccR(KrX6nxq3jD)WlY3~x>j9_m2KMqSf zji!`QP*}Z4q2jUNH{=3G|7IbwmaaScaxFh=n>lNpjKuxT1YPzmNy_OBhIGuknL0R(LlN{=%&5!I0B)6XKrZ{Z z2cN6HKF2elxrr~wS}t{pAM3XUz#ne_%9n%4&zK3eWi2+nu;dLY<|aKI8$y|D;us>u zlI_VG!Tb9&9J+DBsW!H+ZCKI@xZ-1;EYn5BuskQmQzp6l%qkhabGxDh7`8v2-a4A+ z&0gah*lz;^e4yQ)vUwlarQH6_`}NSiZLcs6sFD_Uz3yb7#uaNakmvue~sH3WF8bGF6Qin1GI%!^t=jqJLFP- zh?in~@2j*9B;+2+B8yJNp}E(_^2IobIb-oPDXQg7d?L?8u>~x|sH|^XOFD@D7{Jl7 z_$SPLh9&tO1Sf^4v1X*{F%AfXehl zq-bxcfa3SQ3U;l&d+oLDBEjoK-nfDG9ANcF#mM8o=}?maGNx0@YiNJn?H9=GJ*%w} ziCj0Z(uzE{cHli#ru4a!B#BSE5Z&a83_Bkj-m(d-0CP!TJw-^`HC7cPNiH!xwOeYk z`pnrXgkSw@#qrQB%L0EbXRb1ajA_=Gsl@{_fu$`~pfz3>5w%_(;AYWChyuh=j+C3P9Pby0{7je?i- zYHh#YzEZnE@+D1~SV3_YFwYXCCour?%u8HBj%&o0(_i__LPb5Bb!JN4;P+czgu@>j z1t+??=_mD6Sbr~)% z6}=?HXB4vdRr%@U`Bj>H(m*i=fFyslT?G3B#mpEi&Jl4Te zT%e#-tpvPC5bo6dq5Rpq#oq1dCTH!r3S%4qXKpR6W6Rc%WuVv&S1Um6|BFGrC;OMv zTR+)(qTcDPE|G25RM|JVo_J$#IE#_v&&!!me!AR10F=FSQlPNd@p_;GiJ$-Rieq$a zeBU&OpzOb|M3$Y7`mLR| z;B>rF{nKxo^;qRehH(nNDr*Yp9vhMT;F+3re;$C&iewb zbxqh~9w#TXXs&sWY{T?!=t{?neYbd50|9%r*OB{e)t_oV1LjDkc;~>B^M)7Pwl%B5 ze7Ex=##d3xs{2dXDWd|-DX{3j*;SyY)Vi*8CjzBtUz11#^pq-`WI8$ob{?&$_pU=f z0WKubN3(mIdIFH@6<5Hq6A65YJexd=PKaCd6~^_+`Iz4~JPp;}X;o|r8G&1Xfj|IuW2aRkRlj6EHXdFC5NiQ^f1p4B z^WV@g$D_X^-A(O>g&GfLYZg)(L-yH6JUNOtvjEzYzrBjIBoVuavbzK$LZ&YS9wag7U5}Rbrs9-^1v&P| zClf?;jyl78^W27}w&u2G0g!V4%$2YOJm0Q8f0?)E`@hNIWi3O#t=#q=2#Gc9DS8(L z9aZ+USs43TaK|`B^+@28fbEVrF^n$UkM}v}myJ4|mIUh^ui^iieWt4onfTD}pTy%I z+a`=cS^T~LWUd9E=SI6ff&ePJvS>iYRk1y-Lr*y|nHL-en_v3Suty5{HP(5R>WbgEIJ!g>>_vNMZ!Qv(E15!9Au;QeZKI43>R%^E3wR= z$dyx0(g{IH zFAM4H!26EY#)bO7l#9a4>e-feAo4?Kki3_yatKvhZgSR8^qK@kVU5D^J0CfkG z#TQNMXZH_4t}J6NSU>>!i2bKZ4{Cs(TJwRiQ9__$gV9N#U}2k%QWs2s(nN&#KR%M3 zA|x*Qh|#pkBF&Lr8b!kdeHsUQoR@9il-SA@T@oaJ!2t+0*hIl|KUqe;cW!A791I1G z4Q-p~eY>PP?qwXjR_awRahBF#cXc$u=luW`M)rkUskwG_^61w!#d6a8XSMfhM8)f_ zXWM86s?n`XdvXyV+}xxVOl1n;ep0pvl%0M)OzoY9(RAiB>!feyAx|)bgv9KKvUxHd z^~2`aib}T!XEX-%xC|Ol_L((GH{QL}@VW_EmW`QIJ6;U&@d@k} z*H{|Wnh_IThvT#WVd}UigXQE zb*8vc5Y(-~@Xin)OvV0(-;Zd$!xuJ04AV33giwg)K7$15hV1ZYJh)P&rU96U}&6(^Y|v^)+7P zBGP_CDX+W&rHGJZzA-ChiI&^youg|&@^B{t>9N$j2fUimYA!NBu+FMh{ebmCa^Gh7PBC9CWZ8IJF~5oURO0urzHb_j%U zZvn#|tw5_gNdziJH^4H16%}G(py6*-6YRtQK%LR2w;%u8YyduWmglkera(n-38hj5 zC++7^Yr_W3)a|fbidQxkK<>XLIxxYkP%{Vg#1aEpW#eBuNe@U#sx?Mopi_PzsNzKn z{0ZyY_cWSA1)n1&vpfAl)JwnQg7j>D%NOa&0f$HutMb|X-`yO1PxWW@ov}=UC#~`D z0#iHfOaUY3qj1n@36DD6T2|Yqd|MdEuff534GE1+1FhLbf}W+N==r65d>ov(aPNoB zQ(-p_< zZH~ARihPbttjN!*BVMcy$*aVVMa%@IrYv!-O6Y7fN)am3*b+EtWBZndk=kP0_?sqvng_u7k`rp;(RNm2~-52Urb13bFT)} zugf<1T7BUSH8P`qhmIB^B#mut1M{9vg6%_^M*)rdv$1gj0YQXRNY~2Q_g)M#_A0L< ziPbkCh%k}|vUSet$Oe5Ex!<0vXOjDvhHlVc#U-2fn66e=$C7jKyz2bZXSenDiuQ6t zR-sxFEUMWE>pD%-cZfLW|LhRX2TX~uGDhA4}eF7QZ_IKlvUx9 zU9JLI)F2Up?LsZ0Oae@a3L@P{xlgnl*wJyY@$qwIpZ*pAAB7Zr>34@c@t72q-WsEK zn*>RsU9gG!<$Eh8 z_}Ay@a@Q^YBW7YuIY)MLP3*#{J#}2n-g+FQ$a>TsP{5*M4@tr#v#$>aYad@#-$d{` zK*IPxd{00kKV7)&@z8))63b3^TQhZD{Mhk_#Sf#`(eqPE|7+>Ok3bd&V-DjE3m`{wB~VgP*CCB`y_)rpek)sn;&;*IW%b(W~?ZglJ>P#32pE+>Sl`B19W#3q)- z9P+?-i3W~|OOoBEa=L${Ih9x$bz*?d{&}XJ?`+67U(85_?lGMd7y5EJKOGmRC|oq7wzK=_x)A5|7`?5_Iz zp^f$w8nv3_X)h;d6PY?K{}{~7EntOnI`9w9mT>VZ@#hbJSid18gbWU$|99`xT5@FU zy-2GIl8j8G!+=BqR?`cnA?Sza8CdPPsUZ>v>CvA3%{J*s0|g=Yf()MB?TAJ zxIA#W?4eE9QMsIvvYR8+d2^_?a+)|)sTFVo!>`eaioxVx>`bEd{(hHA#1cNB(Nfk- z=r*6$gpq{MJ$rB-xCn|EaV77a%&)rS?ZU%8?^G%+TA@Tl*Dj(zadx2``cOkL-!AkR~Ju0P@G53V&40sS#iq6g}({S%r4_RE~ zx!-ee`~F%zn@Kq`Z)cegUIfUtn5yVAptF?Je8!zoo|DBhT(>{&R6Mws*9tTGc5rgq6)$K0|LGGRlG%!g z&G}L(5`X5K4>$-_jPA=lZY&k?B~#nD)mr^+(-_ro;jeZzeg5&Di*6lOE_&Zz(?o7dW@wouS`9!c=O*K0nd(+qQYY;xj`b zpnn=GXruN6sEc{q0w(`9d|f=P9IVbSrYX)Va_+1ngc<VO#-t_7$Nu6<`PUwbNl-g9LWwlNMPtKEu#I^_>cVcW zR+H~9iQ>l_EBsYba;!#htwGP*C2B**O0IFZ5ugvw{s3m?y;=lyM^6rSFMXJ&2=09cMUJE2lYi@~UZ z&#bU0D|K(aQCo+{n!iu7-_*hZt~5ruOrw)p$UxZT{~n(aS2a=1e&$rx6}jrp2VTw( z=hXirxCBfQtWw$(}fd z02=_GOE0X_%U~SP^xFtH8+ImL2sw~zMFZ6p<3Z8i966BMU+6uAY!4?7V0xQ6vAQ~7 zD{RfBYFO|f{WIPJsCyAp6|D}qZ^tk}I=LLpVI+1!`hxkFD+b>LP-#Np6}ZVXI~)Wu zmXg9<@HrjKN?o)p`AhRvt-&38+<+a0pQT~j%Y_f)tSgj>;2R~Ci1<;b3}u;2-lqfJ z4({;@r8&=}N_!wxFjoxzyDb+6N^^2}6R`hu!dWt9^yZGZUA|2CRsHUQ`C)9Bu)Volc`(;u)L;hA(h?%~E>YcF zdA1(T9C`QO4D>lHpBz;Ir(nMk#wAQ|8m5$zkUU1EO7&F&`!poa1@4KxGX@FOMsJT`q{jcS(Lf%sWsHx}miXX@e8LeWBa}Cx-&dVihB0*1y zUKHJ%$9EL@L9h2j(axeUSOl5wb#%+|2?=61_71N4R6w|TIFlDM7I&B)2TJY3k4Lg6 zhR(!64||jSiikhQ-b%#9v^$5BkmQd9Kw+c|yoZ9W@3~Ulw8vHDrdJ&&WuMgs78Ov` z41)P$WE1l95n&Ofd8+FbgXW??Rd>(OH(+$%pYulYZC3*}too z;=`7P$E3na4x_uoERzop33NYNoxl7LUsYLl!?OSf)@|~j=aan;JfsiO(X`8^a>T8{E$Q+=955mo3=Eun6Y>5K35w~HaxiSi z^K$-e`OFYNTr5-svT>sMJq^~x`C+pWD%@f{W(1h6S>oBKrL2E0&icnqWzL_SjXMX* z+v(MTZ0Y|)zXw{L+6>2%=K(X%iEv_mGW*wTi(YOD6$@^zi66d~JzS+QjasKYd$6UH z)3cJ52;A%|Ge+ihGKR^6AGDQ)M1oYA`Fg()SGQMoK);Qr?W46=Y@hJ^zvDd@?n}+A z6}KIkoB7yaA)fV4n$W^dwVgP7zBbQc={8aM=hekj%P3whU_`-3e3?lQwEYy9nvxv3 z`B4MrLYVj`9@@!0j1=8_yaAp?#1%bQjE4{hl(ciz=d)o08jBBdl8_o>%u_{VB1w^w12Rn5Q<86=)P!Gr0`3|K{=`M+Mc;>8Cj^arxCi;z1%nQ@(FKl zNk@0{V6RvY*aK%B2a1ZT+MjKcG2Birv7N|Uh_r!)On1OpFL^*}Q z7S^aTKq;cklFdD&Op&@87W%}*q$#6m&fZkT( z>4eIfa#s)i))@;9kMEK+8Wlc7y3Pfd#3e{PeKKvD`hd$|00k`yGt;hgu8~Z4VVyq*+;i63?h60u%_SP;h5sMN zKX9;Or_3z5UVwPcL}NAzw#*!JeZ6{Yh9~NG{tsGVq%nBL#GkvwQefSKXy;r zMR6a6f(%!ie*M)=9Vk4%5RUyk``RW4X(z#v#rSnV6)=z)^mvqHdEByfu&juL{`BOl zbbilRJ7#VfbMudo8yb` z`Dm8QRJ368^SGxc@Q0ns9$#jWY{>>^{0a{`)r1>u0@FSs+EUX%d)Gd52x%F z;Cydjc%G|;OXPQdpxeU5^sMAh9N@ZTg%AmM-izkbApkd;D0;{w&Ah@#hvgp|5#l?t zXu~{OdFpr*y6%mSbP=(9#O;GXz7#j7EX<+Xe!#64mqeuhN>oZSuPXubM`1oBu&8F5 zYYh7Rhp&t5*wN2){YrjUSns|Wn7{iahG|TVlQP9lZbc_^s2qTgjT5IR!gO(;*Zn&{ ztwhq-4gy?fzl;)AI#_fgxx=E zw|pEyL%%UyEXNmcFGmbP!vZU<0kpehWn}*o9z;i1-xQes&}kmQX@+;WJX&VT752oS zp^xtYJlA^rStsVzlbC)#jP0|V_OGoDbO2D~Fz@@gHx3L~k#-3Ne7^b3&8#CxvC~(O z4Z^F`GMSG2RP&Jg8#w?rz}wHq{CpvR&-I!8&-NeFjWR9_L;mP<<8H-MYX^ti&wu`A zadrMD&_w(XSW$)p373{KOFd_FxD-xEzKFKSb|FwI>6CuS>ang}j!}A2q0`3p)_>k(`Q4?5`QWl!F3E37&=XcvB((IZRwfNW2 z`_kxnI%g-e&qt90H%yJbphZ@ZUf)`CSNlmoH^2!%Y!Pc!kjB;N+-nDvTAzgCiTn>> zMzs<+C&Si(qv2mtLp{I7;goS?3k`~0ksk5T_C+R7P-*S`wZb5!5fPESK-3R557BIe z5c9{$(mP>9K9jB|7@?qR(pJYR)pB1;IQW;o`@`*elOqWsU<_Ed(b}?np}A%mp@1Fw zTaJ)!_K!ujb(7{r2ZRvt%^07@!+4e<5Z}>Q7k?WCNXGncL{$%d4%$|tpGH@qu^MrT zQs|3oLaCDms)fdea+Vf7(B!m(4GcZV3@BY^Sf8JUu>t zooGY<)u`<}*MQx%KBn5PN81#i{!LtH(Gh+=Rjrx3TpLGFixtaw&>jH4l-^3&p!c&p z;MNlYq(wpOXrzqi2}`vy31MNKuY`rNF;xee>oBbirEHcAWH!(Dm#|#cli?{TY7J&H zJ7Vk{9OCt61FF?}+&?kR!_K|FVeuOB|xwkhIz8>h#WX=c7N2B?4x$GO7(CHH|7c z{Fmz9%W?H!-#Kmc7lcJEbprRBIDGvgd8neu9|?#(sijkO{dYeh`Z&g|c-JHz>c53k z%@A~x2Wg^!vQ!i!jH#o{orxm?W7Jb`XnRvWc+FC{fV zYjVCO_S5)!XzBobdB~HQA)y3n;h{pGAR-`%@?i4Z?pb%kIv5MwF4OPkjO6o(N^o@2 zYV5ZUVI%+T!*V5TOgSw%P%$v=C8xOaL$1P}@SY#5KvZJR*Et$tEJIL`8C6GtEJu z3#=dW5cRS+AgjF8oG6;vUNSZ)EqT=2YKA$EOnWiytU9gOii?hFJD;lW3bKXHo$?@$ z9e?R|l(XkhY=MR>^UGwqP5)=+1it8*sMK7o$w1e~??|{~wxL@}iiOsxkYPttI_FAt zVHHF@(V&-Kq4225Ec!f4fOql49!-fw$-sa_MMcE`jFk}cI>rBPb+dQktdU8GVn@n**V_8L4m;9BUzsCZCX2x`du?RDoi$D9jGW51)RM`B9=U?$ZE zaF?mq7PfaNG;x49v!X3NAzAESrW%?cEps6k))+|KcWO$#=ruvFBK;O8G~%=MMv}>* zTx>$DXim#flbecpc3xiDut;<)Y%=InW;zD#64Knf++WF72XzJa*OxdvRU1%`UWc5; zY6brA-oCztz6nQs9)EBZ) z+;d}5Ti`}_)^~oUL%!%boau&GIuB$_ry;g}awx}0Z)r89xWRFIooO-kZnDg{hm;^H z<4gOXI$KcDX<`fI{fAmx5{RmhvFK}0Rk{7e;Ca!<9(x-bq#e{_BT!jba80hmwTM10bGbqDA+Z>cZ%$PXRFrCc) z5^=?Z*DOG(q{YQ`Z>aKuzQ*<6IYbM$E|%m8UT zBvL51$FE(Em#&=E4iaBGoLu2?4i^^|4ExlhMpOD_qdn=T_jB_o5RWdJb4)470}d(- zgWLYE&uk{^4Mc^oFqhlwl2R{ds)Td6qgL^zN{R)}jgY#@VgqPvY_M*JH-{k9IZ&;f zYk;n|wZA_EQBZp<1I9oLfo1r^>531y@_%`*@6I>){BD`M{2xNKs`Uyq7$2gF7>DLG z<#2GZqY9#owt8!A;wvoUe0|1EOzoh0DHK0SIl%Opzr(`9OHwhdM^oP6<_dSzqDgDy zkj3u@U+bO+$`%z(x&0>5BZ^djA-8?BCx(2jy^(Cc;Jx_ggCzz72WRsVoc%q8qwL2c z+TUzz@!W6ZFnxt}=3^MwC(Ef3$6H$=hmEDc8BY6GZ-1aMb4q8WWB?W4{I+8mjdEpa zN4oqS?aW5~cS4B!=|Xz(#cGQ+MVtG1pONA~EPj8|cTp^S{7C4;=dDiDq7|x%Tf?V| zIhEG5yw8KWrtD@uU*Ku-l<>h>=>fba4RVOGruAYmx-dK3cnt7%qv;Is>%u!hFIrae zUy@}qxTJBCt;P@8Msh*+Ir{_2GO_*BnWBZND_4xe zdfKHtKeFNHZqr1<3=WxEy{kOJcCE30=!Crr6)UUJkrw1hv$t=-{!rZ=j4z z50$ZDZ5|Ft4yOn+4%NN~XK}0}KR7zN>|Dd&lZ#eLM|jwOs0rJm&#JfuQio} zqHs!Ejs5XppOXmA39@Psb<_WI>vj`1yVzjk-iueFU_f@Ip%O>>K94%!7A`CGmi9zKM^({Y0;m`;0=_kOnNKVL zS?L^_ni=w;4h@PbVba2|h0y9p8h}~kaEQsnoZM74O~c8V^+93Z#Dc%(oA|c}qN;TV zGB)2z1&d8g)6vef_z>-=!ORVZfeN9Ja&v`z-cgA7n{bN(v!Me9JnjJ&7VocMEC!_X%s=gBhBlelqw~;|T8&lu@4q8qTFh@!GX(xzh!?xn*=l80V7hus> zwde##+tl4r6jjB}XVup?1dm;Wps=XTD7XCqmpf#^-wmdzgB(70uTu1@*{>;PEn32X z3xY$#B?F2j@3I%>=-v5ixHaTz{VL{Rv|#RB5mVM?4>*CWT4* zsI_@AtWFO?`|n-O^B@AFZ9vm+8ZBSw1&B>$u76$7$NvDY>Kg`OhehOT4&Vk-0R5yN zb~I8P+^37t<;?SIlkPz;Q1AF{4=!{cn%1=L_Uh zQrQyJITtw^ZKJ%yd=@#klNA!ans$`V6MmDm3Vy-&(q`1u|AHttXUwHuRDY|fv*&Q+ zW@k!#x3V-zSFfM51_JjhUj@C+Ht#RD%QVX0WpmpP+65$!?VYZ+c;B87RXR#;<9*PG zZZ-L!T{9kxE>0vs+8y*N5{t{&XBXlBbc_D-@={k`Vc8oK@Xh^YQ zk;U>C8|y`kC`>Z^+7_FbLhrjhvRoMf(}8R}+Xb*Zvh9i9^48Lf`N=wsTq;&hKDHcJ zK(DKm^bkV}FL5~NmM&@YTL4LCv795Et&9V~=HL*RH8zwu6<8I>E z#_Aua+L37w)ob8o2K#;YB;UX6R+J+QGXUoB1lzZ+0peOi?*{`OJ`Q$vu~(|wgFn+> z23{x6nVOyW5|Yj>f{=%Q{X#PICMj+ncHJ&6wFzt?lBLr#S~U+V9jAiY?dg*WTHa;|o?A(sbM~BVrp0`w!QHU|PKo!rXwRNi$l9{a3B67jCh9s(=EGK%qjuB<4sE2lu!i~ePx!Eh21ez7QuoVUYUR;f z;gxpJf3VkJ#auLfRx9?mB_ur99zhiyH)_UcITM}i5!AXX$$+=*dj1!YE{I|JddL)= zq%E?@?lp6;9(Wb~1y|>%DdxhNNH!~f_FM&=!j^W4PA{ld8y<49x*5|p&qPm>X+ZBR z8Yq(j^B{&L+fa^jx5$=_q3}R!r%q7Q^LXkvTdX)52jpGC6%k(+;?(A)0f+wx%)!Oo zE4{%2OvvOh8@T=ne13r)KqUxo)%{y|axGY79%Nn24Gfywj&Pp9IErQ04HI7L`{NH8 z2S)kS7z9zF`!I(~NWI+0^hBv(Uv5X4AsWPpeMZIM<7SE=S5oNbl>Pg}!@`js0)mEy z=JPnhRpgj2Q6kxMycs<#SEyiuyUZ>%mb<%b>RjPV1)i*hip&5sJ6RcfSA*S@p{yx zNNfWDv(rd`B_bpc7cSK10QnE4iE=jK0kRoZE>_HF{W^(Z8KF zR&8Bupfi7YzTq!;24`}yr4s$_3q5Q3p+Xy13SnBq$<7SZ(p~^kcbH`HixE|sbqbSU z$&`mgd4n`I4q4pTKKa%~*D(@mLRwoovr>^GD;mixG<@8SxWPwK^6$RUBqEF01T3A( z<_{&lai~W@wr9Pd?`pmOI{L$L*mX)p^Wr;TE^rZZsf|ajim3*^RnQs;@4?n4&(XTo-ztOo7X8EAkYO{?AJ zsf;S;_UBO$ZS^x*2sX#CZMq;4xL^XOEC%CW2u0F&N+GcUP^7$AQJ-$Tor|Of6OE|H zcO3(dw=sX_%4XRoAUx?oZ4YXu{)(}jZ z0)q(lnxcj5M#VyzIx`~L_00tnHGW6|2ScXHRo~xOk&kT=AbD>N2(m8%N01nLFOloa zFLs?P8UeH>1E6pCQ1PMt9L(^!n!(R)Ya`VBpea5<%w6v|#FNIPk5R0cHdx+Rszdyv zv;FSRSzfzNqbWMd4pT7xgkC01Sv0Zt#Av+< zqDRfTxFK-cjM3LBVyC1cmsd48yr0ztY>O7cviiF44j8)Y^YRETI;2P8>WWmE8L*?G zMZ{e`q`Yk>_Z6y_W0Zom(y)h=S0-JNyKB6H-usHFRng9$jOnAzS4=~%?%qzZnf{zn zJzsv?U&qvZjUL;91_ECCTm7EbjRj`K5S==IQfB6fOD+bus9S@+(_=QB6+NGX!TAbp z{Qg0&(3BKt2^dM2fzx+J#sTG;3Zj?(nt~d#vs4p!lT&~Q+m7mSB?8RQ&7{jdJHPS6 zg+*YJznb>r5LAT(aVY*;WV|e}*G_QrXtrAT7osg4-Jth@-`Dxb<$!6NS5|`wPmO|) z^7m&OlNh&TR%`=-Dim@Qg)_5**K_q9bm+Fko@Y^GvR+(uk`MRDU@TQCxhzYOlz~RcPcn%H-LqC$VX0+@=qBqnz3(+%W2J zWo786vt(DL@s>W>#~uf;-OkYW-gnGlBuee*CSs9#+Bx_PU)k6u4Le6rm{f>_krMk) zurFwknpSSjUN`Zl#3|zq*wbLnPM`@&%tvp4&7lNNB$*8$hcuYPBf@DBr@Y@od-k(_ zgyh10=_ru03fSU?0*Pse?S%|_T|e^>HlN1}3WC7o$Dwu}b0rpZ+dzaUvu$#fldG;C z6Y~Go-@3vB5CKi$nBH^22E`V`Nk0r2bd{$|d#TAVl2-UC$=I5h_b#Bc5;6(6(1GjG ztLf%W47w-hsb$$vF=<Ey^0#L1`Ct<@=dLQ!8%*WHF+C#{9o^T008 zffa6h4woJ=IQVC=<7P)4;!c64W0SezlmpQo^1HKj^Sj?qcjuoEHmTfOPBC(tc`j~W zQqP#Zl;8iNt$Wfu$Ob7cI7rCpgzIIpb2uX(EKg|o1`7)v%cD&-5QrUteCh*73K9fR zfyo_)NNUy82?*&dscbn{I;5+*qmY&r_p`O_VjQ!zf`WFukX)+y3vBqm5D??gzt+>G z-ySGmx7*O<)a`b0I-c@KA$5F=p^W;@zLLZ%$E%Cq>rD2n?t@Z|E29mAgafWmW;2RK zXg(VWJ%@L)cHKYH%561)*r#PTdRbwZ)FxI$xw65q_^-x-%i)SQ0Oat>@D22%)5(Rj{p^2P1!Ct}+z& z3hLe2)893K4KT&?W%rZb(yxTPZX6ioq6sOto$P*navcD5NN9`x=8k`Ey~e}Ky!JCs z7`pl+V(jx)A{(p{6VGYz5QkdG1xm3ZC%aVnv7F@NKq7BSYNVaJ!?G8Q)3>hZ7|q-d zA@+m7R-s|7{5LMX*o~@yKNNxHRj-d2Up7jOc(U1z4J(0xvOm;1*@%H)f_3+{Zw zZ4vi0thYHbmMuEpJw6ci%%&@#HTSI29scAWyE-~iLrI_DPJ?*(RlHn1!j8M1IP7pM z;r3Z(lvMo2ZhcLNmeJ(p-;E%sg$yj?4v5q5nDPXVi6KJ1WKgTz`arAhzI&!B=QvntPVQ4P-NwTy(g`ohcNy2641r32eIBpcMQ&)k2-g-z zS9YT+T2EWff5)|apRYvD#3c&>Gm=lw5}b-_FUW2@`|!p4ki*$@dW<|`Qq|4_=;$pzl& zsE~qxQz%g&y^TU*M1WtLAKv%8!UB1*nMZ1Xe>a665{hZc&D#HxQXS>80~ROsni8mu z)}tf{HmuOr*h`BQDGLhv|9yHwZTTtElcl(5D(a-iDW?v$LjCoDZ(14I_HotI!gd0` z*3GJX&Sst1(Kp{GOhAEZ;@^ll`;S@{x4~&bA0;$yV7tuN9yaf#cSW(JGWqACpda^Z zqEi@!do}KTS}m~SyNzbI@00DN+tkRuQ{h!0j$^(OIA@MjiC;Pw9w|7lvz-tljYq~HwNPBV z`20w|@i2ir>hot-wf zlKXYf8mf%AvBdoLR>X8zp{2exstgSiu=ZO6xN9P8ZX zEJTYRr6YX|!NcT2>;^5!(Y(E!;K^;cAIEHdZO{>7q`Ggfi=9hF`)vG;_oH9ta0c~$ zajS%bGa|&_-(Opi__j4N5?zqA)%Aebu+=B>rBry9cIEqh-@jYKnfo=py|RDLhDBe< zO7cJo9u)2_4?dJVwxU7aui>2BxN$Q}XUugFZY@6e_s3JPD*_B+6`SZAjJLP&Iy;v{ zZU%Xu1&^OiL)!I^wk7UF8e&*-c|SU{G4L#Kufv?9zpY2aw2A<Y0h!l1g^2myZsg;oFMJRK*xxTrE zze|v-qX$dsY0+7Yemy-7wyTVeyp+dS&xe*P@lZ%4!rMueTb;Z_@jH_5Vkdi%n zuYz-a&fkGD-pj8xftTChvWKsfA@s*`p!(w|9N5B`mZgFWtna!tmc3t@34Up+s;aVl znDK*0*6!o1j1Q(%T$XLW%!SY4y7DSxl^Ukw#cFR4nwf|x(IL2b zyzyV(MR?1=Rm7^rOKUcA={U#+&vo`?d1BA-WPKdS-}9UHc>T-`K8Ge#O=IdCHYNJP z)nW$0N_DqE;V)W%t|tpvJadBn?&|LB*~51lV{n3wT(I+UNK6@`k3#cZ1QUC?#(!y$}_$JrcPKO<*z%>@qs6hPO&{D@1@W)DY$o=9s^BCf*|WO_Uw zK!RFoeI99f5r&LgiA?(LR~_Of*UiXx^%{jLNJ{}eE4v4GJML5FC53sJi}c!Sp6lHD zn3)o?^`0KJT$5$jmi2IuA21W&0h3MrTX1SV4@8K!TrA%6Gp2a&hPZ8XLaAgioxLH4 z^6BYT`NRG%rHRBUI`qh#OzLwL|N7A@_XcS)b#%rZ8J^y4FTMHohL79#=LK@6OF1~( zekcxmA4QRX4py#acohDCeas|q{eqf)`2Be`qU8?oJlA#1v$8M%eenETd3*An4~Y!< zO}mhV(mG@;Zo*e(JT6b<4xbWdd>am`(#T0cLGkzcB%tAAFO}2w2vy=?2{377Q2qX< z>O-sd9X@aZe7uUuAI?s4-=>K2L}VGsiNkxo#U2pbLXO5zlaxVz$5q2u#RU`k?_ z4DOB%#Q{a`S#(5K&(f$nIbm4gV0cBRqLb;(j?ei0@-{JazETiba!eKp5~Z8e=A_0< z7#k1_7?FfD;V_Xa6k6!bLk|ieO`o&Sy+k=sSoOZ;crdSsMUKR5&Lt^p*O|5sIQ#UK zy_HC`9@!JY_H1~b?})bZ9QvjUPH}RFT1m<@lyH1Rn9oN=d7X{s_NrKgm6{Lok*%wW zXl(&^TXs6+3=p1pU>vsWsov*6fEC3R z)S6^X4kjm?V@D3VYUpQw-S4j%xmRiQ{dZgFJm+hr`k(aGh2-d^(aWf?xJ5>1M;#Lb zijpDvTNsDN%HCsRz2F>u0Mo_%eEl8PLNH&&50?b-RK^_Sc8BEVbqx8P%~&2oJhI)X zlJNVXVxnFFuMH$PxPXyH2)rhH>h8;t_=To0+?ZhQ_lnOZ_XS*$1Tk(XwFkc!=xdd= zJ$`|seZCcvly?FZOxiUyT^EqgcaCrOMK)CaQwg@capqKpqLdcYF| ztj7HO;FK2=+|90nbA7KIncAkF1@sb6Tlh2qmvC63B1y@Z?)iCAFyJCLTUc0xyvvi9 zD!Zw2s=VyBSDP8 zG4d={7F9^(N@mAC3+pV!$FY_gqSQK?in8V$@X6HJe-JfBq`^Aj3_=BIe|N)Z2F0r9 zu*MBk{q)orw=P*UhRCTltLP{i(4&hdwy9*b7K`|ge|iWPQ%s9RiL%u}Yc(qBM9~lt zBtnFa=pHa_wi*6fKh{|!7s`C-epashEJDR_iJ_Tl@W_bDezBe+X=q8j2~I`g(Y#!< zS;+hqDPn)gCd=SVdozK$h&-pRFZA%$OMx3iUi9^T zr6%d1{(ijKNxv^(AF)Ga8-%*vS?wS>TCb$2oowOvctxohV!pANzAxu!*++>!D8;y3 zpgQ|geo%m#Q=VIM(Ottis}fk}fFExFTdJXT>GNr48GMGl;QH4nH|y?iy7;-+<(y0c z(g{chS>_ep(0Q~ep~()GFOcpzKBLjc8aU=!inhsndTwZzLZt-ZSRKwRcM0PeMS7|P zu`XJkZ?1X_l$C}XEy1=J$S7G3a-DNR&~|HonjRa@B|@{$wr7~DcZ3x-D)9Of{f{0F z;vTB=cS{?og(T_&$Zq+Yryvbx7%o)k!rEdOLkUZA>lJ^Av3g0R&S3(;J7EdTMr-OI zJIH_uJCS7pDHks{8{Ov|vpvp~< zUkEHJx2bZ0NAw#R8Q__Ww6d~Npx?lm%4@?UXXSdntqK@@$N+KrP-A|&H9QPW18%xS zGHXXi(ZJ5P0E```rVbl@c!|=H-5Q1O5W$}6!&yp7A(A2|aju*P{M~(2cX1p0IyYCa zizZGo;qK3K3u&{`o3W1XYdX)Xjj${0PdE^)>~3?+eNfQ~(1` zR{&AIp0fIVTvpFK_iF2x_DGZOq5Lm?n-q@ZW<^eWo5mD`C=CvdA;mqFJQ-{3!ES zO6o3X$**OY6#No1V(4B)LBASwlWVadAcyodb2|^~=xnvk)0(O@T64US=~<0Ck|Y&% zCRUfWs!ET27>RMj}Lc-6ImK_S~BtNgSaKaC>D0b zIt20)em=6<6!L=1|xDu43H_`6k|n$0QY1|+6kA6CC8&_B)Yy6&LAON{xC@q9RC zq`Mk|l`ENWz`=S63c8k6c>HQ2_Gy}3vkg_3Z7(TCqZs?AMr zU8Rd}C-8;}&~vlTqqi^{I0=HQq>X=_wN(xbGN{LweUaptyCjba88$4!^_jY*9Y|-i z-G#%|pc@5tF{JC#vsIs>n8sEX0Nqx|p46$N2pB@CYE_=^WhTZ1yWX(U5HlNfbzUXy zLP`h=ZcgAu$%UnomtK$h)nt$tZSn++h0+!1wfMe+-6>r2^@U;4u7JtU&(C@}I{pkg z(kYvmn20tsUZR7esi`?2E@^9J378ncKYq|Vjg9PecXy-hk0b-y{CjY9Fc`H6?H?S7 z??4kKfT%(xmD|qF?$hH#dRJ~LFM{t!TMb?55bo-b`oK4u0d#x<N0^IX%wHMr~)GCtX#J9huZ6w7)bTjcAjHmcB^XJUh0)x3(t+amU z2JP9e1Sc{ke#}yYZ-Bgwv zNRvjaO{@q&mCEe*1$db;fv3fp%Qm1O{MbQ)#Q9n%FB}BNd>AgG*Yobx+U@jCEvefe~&Pdk3LdU%%mrK zCej$l{eJt(O%3W3WabthUPiccy3cLMMIY*JZXiaSi8^(BR5i$c3olgDki|jO&cqKn zHh7SPCri6HUis!KAa~@)X~3G!1)Hw>S_wy%x_{;69*-_{vu#drytFFmJC>QdFgZYe z!zE4{c+Q15luEJUP;ulTQuQA$fZ=KALQ2))<+(q1!lrfI7y3_8M&?+ChHvE+B-S>0 zIA$x^9M=cJk1H7V9ry#jX=PYBG5^eDQ`A+Lo?47FNtr;4rHVb)*^5-h6e;+683B&K zs{kcrW`FK;gI}g=7^L&w&ya`7#A^3v%*r-yyY{AAd<1a@M;VdBRP0+#A#lErH9{5x?_h_uCh#bG>dUjB{IQC{CjVQj*+t zv6)ILI%qqYrL$#Qb4hmB7iR=anuP_s)p0(^ZWOGH4OkPc;`m}~|T}r8eE4_GWPgBIxjrM7A?~y71;7h2_ABuQ(Tb7dvW$1o(c>|2C$ZDW8on-8NRo7%p-UiprPys{6HErL#y}7 zpFy!;7=Rk+(su3(yv0?2Ah-BZ06PeaWLd0#w!xIxIW+j|`0oi<$@FdAVQ$I7QzFgV ze75e;FlyCSh%n7>`sL${PCoCyX!_CnzEYFxknAy~*jBF5BT+^QXKY6@JENAM{$Mig z)oSgv3JD2fs!1pJBW$oe`99TVXnDj)ClJj4VQ^rOk}O1$_~sq7)r->|gf9dbQML#@ zdFX`z6Cud&ek$#sJ$o#?zbIrv{Zk2NSOy%rywS@Qb2|5WC5!Xh;!4Q}Q1S~jUg^O_ z!8c}$yIf>$X4ivK6)t(vSYS&~Q-AHAP_U4CZ!|Ud;R0@&+m0s1{6xUQdb(2Uuo|x~ z!R(^vcckU0y48%LJpp=`9hfZPC01+aA;^<_N6;D?;x2G zNX(HtI=n>8{>Se(<{ga_DmrAp(X9pFTu6{u&i9R69t5MZnA3K8Xz9#qHo5Bu z-9PNd-4fIBd4(wllayh#xvjVso9{}natVov-Y-{_ZBOSBDJVpq+-VV-3s}p%30$4! z&>2vOVGZH;c|?;`sQz2sj^J2ww$V23;T^;52J(P@ulQYg&)c^?_c!Vzz9^V%AtuIL z<$)wXzLFn-N_1q{Y#NjA63P3VYOwzY+h~>!eC;QJ?aTu{l0%Wh=XG37Q_rfcr{EUu zT$Cq=x274#A=)JTjvH+smiq0TT;XBg-u_xsK;9hT-}S+@GisI8waH>4uk^1Cg}s7YzD!XIag%n_ zbrYT)5vmvJ5ZM{FboDhbtCpClB6vTBeH~)9-|J&VQUhs)G38<+3Ta%}{7zd6HKI#6 zE%t6FFb!Wy&vZ?9J3gCy?FnxmG5F@Tvj4|PRzdd7)S`j$SSeYsGl~Ckg?&P)Ha@%z zW?MKvbH!RO27Xc+^=j+bHEVJ0>TTZMK9^R5H0>rY)l{*NEDrvQ?#rvo2|dlR2Ayx_ z+kz!_RrSy_>-n_=YhlSA%=Rjse$`SXo+h6MVr-KYg`7SfCezG45dvvS8^xN;BswO9=E{|k%vShdz zGH>QWCTn%7_!>%`R%SXaWMvh8k0C3kTsmnDif4TCaDIqgQ3CA*koQ`lc>E{c5Iq;$ zP8ZFJA!uBgUwJ-yZwYbj*5yyNz)6sW4`M>Y$6Zav=*oM69L>BcT^mgX*`FRW*3PzP zQ^87IdxfFRWqO^n6Ao=2HD;-HuuG~xZIm07H5=`8+eu%o);h1bmdtJD$A18d>gJM1 zOhlUr4Mt%q^imBCl};+fQ)cGh*_By<0WJXHwM8%=#&1tbCd|@gU0#}e>LUAtn1iS&$?#BjPXmP&uC zMfVwZp6n;gNfl-l3UvD$p07##APb`Y--|F=G#_+H$*dCr_`evcJ}_l{o^TS>Cv83G zLC-@o>hV_3=!DBTWvSEmmD1W+KlE{mkEPSni7Oj%$CosqpZgME;Hk!0zLKlS3U$|J z^I=efRtIwfJMHO~8%iO}bhT$6duQI2oA98K*?jqnSb|N0gZx87=H&QLFKDfoOr^%0 zv3f@Z=SP$6TKmFlS#=ow?U;JiGx=@N67+}&G;AW`ur@c?&}h{M{@gDy!bTX{cwdcj zB33h-?-jnz>1=sBeoLlGswCRJ0*Z^JpX!BjInSWEO_XjBTp#0Kry+Pc2_@$=yy(anaFR5R0Q)U{QV}2-hl7qkY%C^kNdxP!4V`KS;O;TXCpve>O8QBCyXv@*-Nn^hPX_&BIMasw z^D35X%E1Cy*W?X8iK_gY;@75UWv$8s&#Scg#ck7$#Z(LDhv2)Fdv?A|y}Ky8RQ7N` z$_{v`I+ph(coiVV_Zp9%`Gi!o@&FRL{}Tt9^f588_YL9&O`PvLe6h$h-=OTqUw@A- z2v$e5f5dEdB4hhf(WCh#+AhFoX<T&pLVl9+09S$6d7XxcTp(gn?^2EZ()5RRSdjR z#aQn}_}_ozkmdGfCTa+8HIy+FI=|z@*!b<=`a)13+r}5WdB3y;>;#L2>FQ`AcGH_D$DQW>z#wq&LDirMf6bV?`+~Y^{$x zZmVK=jH?2uh^LIBiWF2-g9{{Xl|Cm(B{P-84JGTMF=82fioWmy@yxuX(}6a~b(NlN!G`gUhOdMy7CBNSD zAyqymScGC!b+q@Co)?zVF?JfgHXaqy+ra5Ip`Y-I&G8`)CzMo5QTMeb5mbRxAZ$l5 z5*kxe`k~Vj2U|OCBUcpxBKt*a*wA#ox{`3hg4;>t{^16-8Tm?jShKleEfiIWoS%^Z zI^XPoi8?uCVa31efM#dd)Shq??{bzM6W#|{d@ueXE(rZQMiT1K zIUQ|M#XI`slIUl$ZGN-wrxhl~<29{k#1{?;M-k$2a**J>7XLwqxzQ2?MX2O9(z(@nDC&K%9eT0akqqid`Fs9A)QiK zh$7%-7q$pL>-X??bAy1dT-1-kul@NEmScx=bt&?Q|Z% zTj3btXPf;%JrGZT2xot*Q=w5R;dX?%hgudzVt%82!C9_eiI`wgs#Twa z)d*<7f#883>JPT6^N$Is5ikfBg5FoS0o-ab%BJ20svLIPZHJoGMub*T!Ct9$TG4nDfhbM_s&1AW!?TohogwN*28{da}S$pGmV z`McV%(l%Faoxbc?Z7q87fn*ep<@&nE<0csiJzJ@+JUu!@%9h@N`o8XPt|Lu+SAuv~ z)M8aXQN(t3dndWlOn{eV!8bNu`u$AFhXE=n-7y||8Flc#cDP)!d(*!r@>o8Rbx^_Z z^8Z`PyrPWMM)T)6q#x=8oUsuqez!5R**TgqwofhbB(4-^ACyse%k{ptr*L+?xiAd0 zl@KS^o%*&XQgOW|f(p#RQ;-e<4a)}HftO!A#%_pgoI zOKXKsHuQXlCZ|ipZT4MsUxl>}{6VxzciXcTv4I26V5BERFi|qKdP1*Y=IPWE$IF%j*d0g>VXK&v2Q* zfrojGPF675o?4Y379ae+k?f>hm%wDc>_q)rzWhtgOD+XO%imxRg(>ee`Qev{p*Nl% zGSzHywl_z|BCieum53b__NzFt#$|S4e6U%gXuc5B*4u-_M?&04>>iPo`5){mNRpOa zRV1cKHXPgx<|&ps1co75H?L+~BA|V8lFF-g+BL{6B2zkKC?1hM$Yt+JSxEDzsf}Q* zG()<*L)Z=%zE^)pP*HQu30P<1dHeo&+qE}!P#?N8HLPO2v>a&>Ey|!+u32Z|aZWz| z0za`M7co}~9PPdzZ(e&pA&}3lw(*YcbMmy0JT@;r+fKMw@xGB8xYE z9$8KT9!9@b11|}H5f>R1BL>Q%XG1e&(^!uow2AP;;(*y zvAjy%a@>`#;Ux=SLY`}U62O0AH{qo*+n#*;9ih)Q-M^>4dGJ|c|2XiJ%Xb|*_J5A% z+n~57DOPlM-U+2$d34s=n7WD$k!Vqt;!=uD*OybLPLw_mc`#6|l7&rIVx`G-&}oL@ z9VC&PoU=H`O>6ah`(y9N^39p<+TuUXG_m0uzX>){2OKY%)oxP<&c*ViyM3zj{dvg>vS6HMo3c*J1X9;4P}GWY%i#6fK{f zkZ(c3$DlfxiLc25UJRDwWubwAZ_rdlyXabNX)wk0vsba*AaZkSKHUc%$?jQMrFGzzY=Ct1G zldR&&U%hRx^v7}{-7-F|Z!f8R&cj6c`D8$fkHTL1jW$B?EJjy;v(kW#ll2mZ{$;cO z#H-@ucnJ;q$hk@3>HU_l(#YlD*h&roXS-;*PC70uQ{#^?N$9Wm05l$Dbmjj@@L5(e zbqO^3Pu_}KjrfSq31He2elBjYd-fHW>3!!}X!c2hrGlD0Bp|Zz%my#)Im}#fUfQ}@ zK$c(NywGVZFZ}W#bzE+|@3au@A~;o*UDmnLbIzK)H{Ft72P1r&2AJ;=#HOEtSU|W72e?Ykpef~aunh57X2>v zvOu@k5=?z$^m$Iff{+I$urd={3b|o=jnD7`v-6)^&+wGP3Rqfpd-e9N>9=V8SKh^7Xm*-RPHs^lx90!SQBfw5@iD4QIThde$rC z4l|HK?Kq)Atvy!5OzVgojtl#6gUp};lgzKCJ}=(iJ(j*RBqy1)c{T;ZT|t7(47&h# zPUCLxu3p4!SCEOou2kS%hkz8cI+-HOV90mT$?|lj335?#W0ee~Ki4wG;w=We zslmzpR^n{I*s}|-J=#b~#|`}(w#s}YIXb;jqn|zo2W|4cM=8etwYs1u520zL{Y~HD z^U-4Z!VXj3;PP~b-hE#vM42K%NIM<@jc^7jGF2-UMQi)`di>pQ{) zi1LYy1((f?R=^9>zqddY%Oi%4n+6w*ij~Rh-?IYTEWMhqD1}%^B^xn64B-^!HSDsuwTx!JhX8^124>b_W$#TE!wGjE;nV6rQHhZ>-anbKWu+4h4 zC^L0qHg9qWK$?Abj~j&!8G%1WLcaCQK3+*#PZ4(M#_@ z>`_TRs&|M5$FM)gW0Z6k6JESc*rkBeUzR{%lfz_$UV{_nnsG#S#G2>imVjq~=ucU_ZOB6$wd1g zbKP_~D~^Ton;<5fd)x0yS`M2DkpFBl8T+t4@-iS1rD272H}+Y(TAi# z-KcwuODc=QG#13Up+P~N1(L=GC=f%fVP&oE44Hjy0)=+litPfFe}ortAuB+47RML^ z(8IUGc-Nm*#AIbnzcM3}XNuCrK0)e$-apk4adWD@@{l4K=b;W{jLkKyEr_3{W^UaZ zxeoF+fYl8#So_?2e=$P;J_mNMS6oX{2GC^Z;IUMEbXj* zOW?HjZy6~|9EqLjf@${>9X>=dy+1ze>Y>Bm&R=o^rNrxONF$d6X-5Y0Ebi~X;N5`K zo`=|igL6`j!hR&V#6l}s96X}P$l|NjrX$6~I9WqrISasJ7Ck`}{6ur$4AWzB)epuk zjsm2(ro`mrK;4VJDsBs%fjGh9+@6>(*7wj(_gh(qSuXj8@roVMii4@ZQpve)s>s^s zmLi6D^pTsRV{SAPARFrtCjhyr5Rl@wsa|7=e}CKp_EaCeFFYE#{;Qn?4@1f&6fECV z5J4HK?(){t%yw8Hj$3$VL+DS}Xbl1onj4>9f+2W*py7L`JMHnWuNNzVid_;iM5hRM zzQcbXF$JoPaBg;S%d7{RD}^v3JnRv?fj_apkGj1@axT)~-cr_=zqb@`abmFnRwKO7 z_n~uD6H&EK*P|I%KA`r_5G&Zr``s<<6m2e*ujA&r#=gCX|FRL)^C=1CZ{>3W=(O^9 zCXk^rBTs+fId5znYEda7*cknWpYQ*U+cLZpa(RL~eS9c=BlWR`Y5TYQhRMQRXyp)@V^BNV*z<>}MD@&EXOR7Pza zTSE;vJ8U&7J_0*j0JaAl>oC_XuXm9Uk&k0#K^96xGzZcV;NfpVHlHe^of#FS;)gw! zWGDk0%TGcv%S0N?iYsvLr>CwF9;|H|NAwC1PNS79r_LeiFjjzUr|n=CfAOm{3xHtCmjDxncs z0&7*9HKi1i1zEry2d5!Ki_0!$? zi0oMwgQbnYxCHXtEpVRF;P>eR;W!^z(kI~``@w3?!QJ=K>mOkS{?n%J|66v0OE)(8s!JYRFJauetMn1aC5He6NW&IEuBZR z^f&VB-SXULrTE3Rixn7`*7|f|75|#RtguzxB*C|pUMnF3HtQdy#^^EtFb!OnTQwt# z65h@J85vR8p=yOv3LJ`!(1?f}fX7X6&uzaGACt}OMommF)Q0Z2C8niB&Ki4xmdrpp zw?rN-%85sOhAe|D^)Mc_In(OZhl`vG22Z0zR2kaJ2WKc^ZdkN(TTTB}rAIol4-#U( zOD9%aZ_*NR4w+Yu^g%c~JA2z8^YC)xjEqStm#*i7e*#$HAehPm2g&av96E3WprrChe$4%cZKeZ0;(u*BLGU1i zjm*d$NkfbvCf_|)qJFc6ekN+K`e!G7tDS%<6>V-dF`qiBOe0T`8kyCWGW-Qz-EOJP z3G4DNrO7wq-*^flo0a-$Pk>Ld(eCgt{5Zuq1w}iR;$~AD=!n2T`**e&4w4}AM@Se% zTjfCC>rIvwyc6AZe%NJI(62(7)mWAlN$1U?V-mq8!B_NCJPT$z5`QZCW?;Vl`Z@-K z%mo(Ga*OzW;=PuT_g`JAd3GKi@u`f`kx~n0ZS7R52J*b_gR|7PbeAx}1!qn?GD7dbHy!AV!4a57L!rg9lt zj1-wN*IcHgj5(7zi26rE)G;g%ivPm}kd(nmXSiSK8cQ0P&nME`s^%D5ap*HB-HV?Q z0H5*#55O1y-z&s&M~0+8A0o*@#At+rX&0Jvn~Qfg!) zc{XS2PDw>m_$%140y;Q|HoC3&^RMq+umGjJcL54qI{*YakbyzldvSYDKi~NHEIOn4 zh4aF^9CbmO06Hj`N*fb8_Eb+vsH#35AT+!*7N{~`0-KVo{%xJ>%LxkU=a#JutuH@& z6`)$KzIYK^ZclZ+uNwf|@^=*wpPqCaP;qCxFE-9zr-?efg$PuZ=&-8%w57#mN=s5a zUr84|T=FbkPo;0?EG8-%XUNk8w}be7>w{TT>M?s4I@|e`35AQT{J#es zB0T7b@aRtsHqzsT^2uNxKTJ!-tj?iXiPYTRG(j$o36w?+Bo>KAIVPUna_sv9XC5WlK{7 zlL>#zFpHom%PRO6Ht^?1l7*66ikQ4Itb0OvX~E%DS2W0HkxD&P4zd(>Udavn@l%-LoG+#F+I)qyN8~M;zxN;Hzd_Rf=*UJK?2~Y+bwF75oqYfX4VBI-v+M0 zgDcA`j>PEC{SMwHXto|;}3ePvXAypdsd&vzldWjI$-Ggs9vC-aj*g)S9=#n zDRnb$rm2F6u%GnCqt#ONV7(rW%NEf^LO@L?Absc_O?GGhciBPP{O22xA!|Q-hUV&V zppZBGZ&Wyscp#P;nbblcOJ!7o4hZ86Vzv`6n1i|RgZ_e72glQC$oDgd3-I)Ewz@q8%{Zr_&OnR`(@p?PX-{-eM zPwjkUBM%k{$rsRhKjEYmeO5v5KD?!(6ClPhSC+-kye&0EsUP=u07VHCZ?)|D@HPzU`ojw2tHs;$Hn|m3Gy(wk`!I z14SBFl9QI}e#8Pauh}`I>MjR4>{jhJ2=v4;pK8PkIMmg%Sr|xraL{ezloVbXka6m^ z1LDp9H{cL?SD8Yjb6&&gnEDvG8HT zVFMzNE+w<~V*|)fBINMEWNZSdJfpb-keVvD0!bwNCD{QPfv>^FEbD#L8mW50J6M}v z)j1h5pw^JuSNrFactk%XMN%Wv&!UK@~CVwXH#W1X5wGp{aM^!-0Zrp`_P@|uX(DZJ_19_Lbt$U!Iinl2C}&-0LZG9gi>br# zhnzY$`kV;3T03_&rd!2!v7l}$XGHh$6tVZxEWFBWh6A|j3;Mx=mYkUyo6$1Fu`#gH ztYyu*Qe-`w><ypxs19Dq5#5_tv##c!e1E)nB3}mvNC_1z z#pz$HjwAydGAU4!c!n5)3i+*yNp{sGP)EK0$MKYG+e-V5LE0?~2P2B7=Pf(?AY4eh za5B7RC>@w^Jjnnduqurc>cs42^sJcyDTG^skx>u>xKT`KsXBYabYBIsy-I5g?IMvH zx-IBsaE8p|(c5`&X%RFi+Zz1}5PO8NzMLL_fhB7cZ902)HWdnG60N_7`KD>z@g4mO zd;J`iyTM69?i%re8(Od+hGbiv7>GO8;0z|^!WHG@d{jz3V+%R*x}1sqSLXDr`bX#j41d9zwawapy= z;EqPAgEG3YrdI2@*g(Rs`!`oDTl+zA-Nqqvp6#g!^;7Ly0BFPid_9B7 zcjMn8&$xxh>l+eufeS=_-9YQ`7LrSHem|GF`Qr_}S^R9RDLJ(kXOuL-dg>Gw^?r*l zbFfd!eZUG7uXANx<{J>vp$M6ITe&nQ!^{tELirYMvH_q{?PHxb`=`;Qp5C}_MWw;b z#YQE-Cr7E1?5R8$fh5xP${IzBlL+r-{h+^XRW}XGjfE*8 z&~5Wzub$C0QyNGRi@z?DVh7IymU2)w0GTP{q8fp5;}dK0u++9UQTUsgIo!y)HdP%; zUTc+&`4{rb+6oHB+l6l!3x$&?c`M)PTnDhkh~_?%mYn`A)%l%9J=R0DYy~6Ia@Xq{ z>P&qVJ}q~4dt=qG*6MQ_uw>C{=JYC~mIjCp)QyZpeB^kQ?>xztn?5ri>bG`6QxpyO zzOwqI@vOGG6)a)nC*o&S2aGe^8?8-7>NK+LNUK^*6*)~h(mtwL0H?+^OxKp^5;N1ZC#Pgqoly%ljSwdn3r}ac>eQ8zgv855AZPg%oq6(y4Thox ziIPUa`JhTCHCx-SiQyePn>;RS#H!Tujy5r)AE^soC#oaYq|n|(wW+JGSp*#L2spPb z5>Uh*GtRm_NMXMp}(`RNRnRwUWy!moZl2wR1El-wMy{MHW4Ws7KNt`8bGF0QhjnJ2u|@GMv9; z6Qkx}ua;|S2dj8-J3E0+3{db58_G>j%Hm<~902V0o4b+((v_4FA#_=ey5ClCm%-;YGD996Y%OtG1wVKlr=t`-r z94Go*P|6UAZTDyc)(+SPOaC1qF)mB~7ed1D)R3Oh4I`7~dmUVLob|A=TWnaXDyEit zRm^zfI0=oIGz0XdTZt?{wOOXUwv{!t7ScCQr^L+L?vM}v7Ly;abu}^bKzq!BNJv)e zR&n54rr21?ZIZ8}un~22b=LFSB!1cPqhQt600tbz`sU0=4cAO06O!;c22kSmT#|Ku zSYp;bsA5WS3PzF>gw&SI!odlw-%>G%+53{RzNe(j$kiJ=)NX{Jc%{PtsR;?Y(+nC2 zw)o=$jWN_3Ht0Mp?N7!~x5{_CkT0Y}Z;(D*XbQZO%Ga!e#=TgijeC>^VsYC zDww37ZmZweZi!MlU;Dz`Tu0lRh+0xItW%~*rika~u#4y~&CEsbxL^P7LnLsaTpUz> z6S-6|GCQZF7W`TAgG@loP7*e+xXw;&DTwx~*|pM3bFl^Fo&P*?_@_A#!PfF+j#&X~ zE4ogD7cE%|W#H!~j{EqKP)RuZ!;2HRGX0~RF?U4VU=z)YmrjrLxxjoA$qT*`2SW}_ zGF_h7CZl2-X__B+G~5_XJcq}gnrG0zf=e$Xrl0I~9av}7~mk<|2E7#skKyeL<35GV> z=r>{ylZyb7u50IP2}XE!wn^2sA##*yW-;;r>%eHflU^WF$m+leSF(`Z3(Wx?MlKNM z{7H}3ia$ft6Jzg_X2H9kOg@PB3Awg7%3?4UC+D;*LAsT3QXp;{MMa<<hl^d`cE?#EZX&ybc5-=^QzE;so^EUIXjjYI5?GNYwsI?)U@D5G-YJd z9WCt}u&llsp3}0+E-y#^_KJ6VQTg1?!k-(^kAlnV*j{$L)b`GZ5*Dbq0)Il1n5vZr zuN(NS59V&-I3U);5h(##J?A{_3Tof_bD+GVO8InUC(~8+@*8iBFNHXz3eK@GLwqrV z*NsQ1)0*FrN#rFyu!VSEqx*-<3y_S)3k`KneZFoQU=yCJ)b^6EFSk(=Jh8Ou+f^Upsu1VzCz!Ok)HZ+&Q}99HXOz0zL&5@wpD% z*@p!F+;f;VlD2#E{ztw)1jlsW{kQ812uH7PZcHBj-qZs_1_?>YSkccu=X+C_)Y1_u zMF+jH)GG%Ek-&L}`9QBoo$-xy{!ov|r)&Fx3}L+;cOA0v6r)iDud73;!BigAMrTOP zr1+VahsVm^RC!@{-q*5le3n2FjUsjN6wVJ7pC5f{s^y}G0Ew>P)!+>Ls|xl%Q)5-`9QJ*G)Oy=L7kC=@Qm>S1hT(EXwD) znTnm3!h-flYFZ%eEzo!4irprI0JVAUkbHOLgDQy<$Jr+n>m8s98s4FlSqZ8sqCDYZ zu`&oql_eXL8XWJh~ULcL*N}nuzjducnTWOy58S|Yv+Z57c@LN*VJT~NT6YCav_WtAQme5u~A%_cZSOz3;v~_xQ&BR zojv1S31n1SE;i0p==miwv+mmp=T#4zb-9NGB7X%uch5G#~@#%rCqh`&B?ZZ zRY)HT&b&6hWZ2)F*QvhJzmYRk=6|u4EwwvZU|vGT-KF-aPs81wsVU}{2AA3Lq+7?# zz_FN~2H)*APU@?Zsq?b8SGmru1?>rFn7kFkRqjvfov5&GP*ECXUthaQt2wlDji zSz&%v$3;?`I%53!LI8x04}?IZ&hzL*mdaCHlxW=89dDr2t8hJ2WZ5kpeo0m(8A{-^ zFhI>9Wc^?%qTsDb(`yl@X)2Px@ZH3NX!+_v7vqOUMxXUW^OKK(q7;(^5&KI~Iixh) zHPJk}j}G?Sdf37JRM3bSTIs(2(YS%4HBR6p5{cwqvdq-T{^)>HxWK?ru#Hwis%L6E z1YMy@Km#2MWm{X@Sh2^Py6m@-2T^v$Jz3hWyBj=%=i2VJ$I%N~%J&GkuUXtnl1$7t z1-(c}PM?+rE!_G%!KK4{@i&a?zm8OTSoD2l-8G$Co9W_Dgp^^s(dZYVp*=bJLDXCt zESD}3f;U$l?!JB8RrIDvS67$4%YTJD;v$hgxEf36#M<_L)Sr_1`%?Ac(_{+$T3-FK z>unr9xrGsIpxJ1f+kD@R$+8TcB2F4!y_aXNDnKi8+Tw);Dyw`BLqH3Z{E{!z1H3wg zFWY1tUx#?@ZcwiYME8JuJ$9h`M0C46g{g#cQo~D*Ria^CGt%g8EFtJJa2YfaYl^N~ zilqdN0Rs?GT*;a-&W)B2k@Ne+i91)1iz4R1gC#IE#iSbuC}K^UBPr^a#^8nhRXWJ9 z&@BXhUw?E0t4x4gyl1uWuavvVd3l+WD@4}^P`!JiC`E)_=Uw;Zg2T~jRZ)17vMk-uaCQgYtP1mrTPSXZ$w;6XfmoQMG zH2KSqq&uD*BixUxIYw|yot2y*V75C`;9UoJjN!V?0ECE$=;PzF9iUS;uUTvCr;S^= zcdn-aO>2x`r+lV-j_qDeUBJ1B8JT1L59n|4IXXJNVwOVc3t*!P*<7W;t5?0@ zG(;8CUhp4xrn7WWA-*vHq5Q`kkJ;W&ef#$5K&d8l(xAYM+|fk8%;^-kQ7yN){3Q_saP;`1TH7cZy}Dv#KhLj zsZ*fG!wt6;6Jno6y34lMFh4!H$esDmFG%MX*5`T!re)o4dThMP4oZMPq=t_hH-w-! z76#*X19I#?Jv|Zk%n!;k%qNWk*B}c+1y|GGYEBh56|e2=%k>2(yaJa+UW{0#2lN)G z>SiTMsn58-AcR0bt0)Cr`*kK@;jYI#<$L~*g2ess_rq7mNheQF<2&pZMo0fyg$cdm z3o#<#@R`lj%>8JNxj4!DMorD>SZ-j%WJ?SmcPp?bH%yz)Pe!v+u?&-7!>pd_(PM)t z=4ZYp>46q^^D|xVECvcW#J{{N6A8U|(

mM^{>!&@rd4zdtWhXBNCXDFAxHn6dM??$x+ejALL zL|}v^^#h{g7!gUNM)DbH#8i?`6^Yu4;(oC3NXbXf!~M;7iQTVtwM?&vCkoOHnaC+3 z=_2&`q6Fai5p2&QWofii`^GqHBZk^JrMfl{-EolZ(s}u&Cs$CHTH2BG%}t|ILKdae znzkRJ99ue)E5q0@txb!Fc)Kc54Ffmar3cMaEK_mjL-S>GIkHsYZ=@wJAAhqUjUY2{ zfYEuH&?@5;{3V`U?bV(Ek4(UYjODu$bCjj_onoXBdUC|7@bJMfT&Yn1-H4nhsTSK5 zJr_Ty_+p9ieSbP}IIx~7PSiN{4=za3NZpMOY*YR!-;bHAvDQ9xTn- zFUf?~TOGPpPFkJ8en}`CBtDOIV#xMAMa2Sr0_`FtftR7`wka7_nR`n~B5y(ERUbz^ zhp3;Ue{#$hdm17wAEAHMD!0=4VXQu7X{ENeZ<1lz6zyWEzPhuH$-7o<^F(#eH$L6! znrP0`#dMYqOU5X2ePhTGGh-Re#6;&jVMr)I z)WjRQJl;TSxMS`Q^OM`&oB!U_9_(r0>~6Ao#~C-Fx5^kbPt{alQaor|{?_rbxTAsl zOqx+uid<+&<;Fm!h#^};OBh>2YZ%K^b0P}KU|aIgo}x31 zRVGm2g+mZ(KDAlEZ$LbPO+4Pgs%#Gvd?9EN}RBQt1#mg^|P zIeAsVhoR&wsWUe$DKA0s!VhC-N!?CPRUL^x%g*emAhA6ifj(5O9JA!AevF zv^Sn;|E+`6cYOENvz2aGG@&x||rpN$E} z7%=fk>`F`Qt`+3fMSV1MYGqhs?}V=h*6AEAna+G12{H@(!)gT~olMIM5&(KpPX4h^YYZ~x_ zELCnA*iWhu-=<5&Ia`U|8E6&B1xlNbbfZvdzg!;9nFuS|V}6wK98#KIBw3)aH(Qrt zv@A;-XB&`Pz3t5S7#nBb20O)7Tm5$}fKL_<>*16|c8mY{z!HNv%ww^Woig}gZSH)h zo738LR+voW8`TIZtW#ikNG+iJ%=zS582Np+Shgq*I_UR+I72UrjYgqp5GMb z>c8Lx^%F-dv3RAN2C0K3fIOomCkiEGbXZd*PS!f-l zkF&ePzV$-8(M$mCSc{>au=hr-j8On3pIFy;Prv1(itiYo^*V^zHW@2ySg~W~6bW1m zhI>ZzW8pPqgwhB~DAIKzK;+=%xv{UzOy@Imi*^cqB)0rVhtIkUJ8Lp}4BS9Zu~mwH z=&PFVVK}_tayYXnviK^AMhfFYR*IfNy|P*=NuQ40ZUHAn7(b-SUVoEZ(%EOx`eM!l zTlDEv1iBv8d<}u)^Sq=40fX9Tu#x7jTSz zaqxJk$b0=F#TM#e(?G{Rjoc@;y8bsA}A|6zcS`Ochp4mq3(ABObmyXoh_`ibLhsZNshOWg^s;5G1E zM2qb8Ex}F-k3HoY!_gWd7pHV{3e*$C9ke7KVU90P7%QVGL!{o8Of{TjqEo)Pq1GuI z(R+9xEJ&kg@gTvgUnTeQ|74pq0vp|4$Do#cUj{LuV;h%dJdFu`)vdAj<(|9Sowm5@ zDsDf+{c=}xC*v1_NxELRKCAB=dEM!T)~H$GA$JeY!xGi;Hqf-)x+hERE<9%T?S~DcDT5?%! zIMOk`c%iuOiu1q@S6=h!7L<7Cl);`kqhqtEJ&=npHb|zMTJl|wuFgD?mPV|6X}~Qt8rHKJC{e0AFE5h})J5DBV1ayddcC1?)&GQKJmCm`aF}jxeB+(FOm;B?hjFYrxYCOb-;B4zA}-aX$6){qDC}1GboJQZE5Q)cd@%h zMDj&G8E6jg<4-4u>s&S%89{8I=+A{I(9bEI=_xsgmTFMNNElvz6XLIJ@#%!o_}P*i9>jFL?#-a83%xlP#mdE%W?@)mku87^MFu1Qp+6(U}L90`g0KP5O;3)V@Lpq z{br?wyyXQRj+N&fXjY#&+}ZTWFvunV;-zv%%W|2rfvML3`>i^iUG_;$0%_#c)DKzn zwL#pBqy1LBeYi~B)|EpVliue2P>D04QtP3vV>9Ms0q>H6^{fOnom;X>XBC$F)iqx7 zYx6oazF`aOy5R>$RfUAu<9ym8~!l4Z0H zX5kAlZwZuJsP|O`Q)_mlooF47786sjjf3Wqqwx_=`W53-s__`=3j@~_uJXM zbYX|he!01R00Qa}>gm1J7m!5M%H5yJ`M{lkHCXs5z!6Vmmp98Yh^B~9uHy9z?%#0g zxji7jrg~4pxYhQ_ev824&S;faGNAco-+VuaO-%I+@m!s=t}VT;-A)?)ht}=uAjD)i z^vNt59RJpkl(0%L>j}(e`-#|R4W#hNV=Z!jTRGsq3`hvU|AHPT>7`Pe(j@o#BJ$9^ zo4NfNJ}Qw>65IJ1#?=SpwYH?AmK3A4RmSA(%(UffY62r!I2u5_t7e=%qS~wRv~ZFk_+7s z&2(Oow@Pb52(Dkb==MFlWUk78ynXlLtCP(8x|;s*#@*)-a_wkmc2Mu2oZTAva}R?6 zB<|!ik|df1A>D_8Dn?e=0cn@2zrJ-#LB^a7Q0Ko`P-5avqr>KIDk2<&M3Z{SaWaSv z2vE*jio9on_=@GZi?)oGzsX8%VfMUo4JwV+`s{DGxAwVutWCSFOXW5w@>SFGRqyCj zY^`KEhUmT(e-6QMM2DqI6!EM6;CP1xaG`fHUv5*qPXhQ@?gBcLwz|~63RccVnRast z;c-Qlt?rCnx1%K>ETXn33QI3`ZxcY^ft<%izSA&M_^~OYhe74LEU0fV6Rw{F(r;sk z3^N_8+Y`yslXUWcx0c0Rf8IDCY$PNbo4zg_ZhOSJthyb`NxPYJBC zJ4x9m=F6$@?}SBh$p7s^UqDKSVhr2_g|-G3f0|G`Kyw|r2goX~@eM29kWlVQlR54I zg;Q%E0crd{F|653BZztKiFbj(=D)AID$HzUVsq?M!vW2p*IaUj=1;I+XIC*V1vRv9 z>})J_i3Jt^MR=1N1ojWV6MH3urQagG45;w%muy5r0coCIio4`{5g$~M>sN)b#Yg~i zx7;|24EeO{qbvvOUV1`60zpBYJM_HU@8%5zCIudVHpq);9VTBfuyLE!dqV710U)35 z41k-kw{?Y9GoE`_)f=F^OY+MVe?27HSzkQ2@39%Mw_7KbwCB>*wWe#9h zz0yGqoQ>v}^zwHJz=^PmTN>;x&E+k9lM_!#pWUoEMubph!6ef;k9FqN83oNI!`sj5 zsy_od)+_X*jgB#1IY|~Hvk9tRN}$=(=nX54=;ZS%*v_4 z=23PaLLS0xB~y5r(T$Nxz5CRDoV_mcgX(w|DQ{?aify3qh-_%Ha-^Nm!7ZJW zMnrqJ@pub?p&5qZlO%9XGB=Gj39sGrgGs}#gNe(15k8?)hVE%3Hf%7YUQsk~P8N*5 z5>{+7aX86*r>y+XD|y>~bF#K}Lhu!jb|gH3KkjZ2Ae~OuS0-*vc~#_QvU-&ohqCP7 zGNGKTejv%3$}w6FufO@jWR#UkBZ?W_%-YH$*wA42tWP9dERnHedgB;~>Kd~t1j4}a zjzX(AMxs3d{(d(0UM3*7PSHwNt}Y(_*V-1|^Q&u1y2w-U96v>(;}Ky5+r5y(iY<-W zw#=S$v*jkYmrAEH)<4$AANO6&-IDQ7I_PPSZ~r7Osbl5)LG^$(!Z3UNeGvm+?F4Z( zLO2!v$hGV8KRZ=;*=uL`EolUAUTMG&tM_xiqD^A$+VPF)V8+Hgp)myNPbf{#ck&ko z{D7p<9P8Y)oTvcEu>B1SkrzIa+e?1&5vR`J1D{{WiUNRB37(c_z-^+Q{sR5+Bm9jhISWfF{K=(Q!e1&0{0=W*QW?pV5Noi@-}8WlUdBUwb9(X* zh*kh%PH8FEzaa+WAwK7fJ^mYF4iKxd$w}USLzKZod`rf5>z`SY74bOcm2&(WA~`F7 z_>w=C=r=@OJjA+5wtqu3#zRb@F#7`{7aqs=rR*o7wI43u@fS(&-Ce5oak|aeJuM(8 z^_vd*)cD}C-Rp;r{Xl4z4{*?jyjkoxD@>cqeB_@mu&V%_3j)|4*ieF6~+RagFbCg zi#rXsdY@i7kroVkN z;U87{*AHeO>9qV5k_QF{1X;oVnCBm^QC+J9U)Qb{J_!MP=Mjn{v7)lj1M`gc)VF5P z0RQ@9yNKVL{w)lD|1d2ChM_v?OMXgC4cSqHKqPV*sJ}}}0GJS_r>FSS{QU=VQ2bUt zjql9~C*bv$osXCdZ_dVn?$e`$%ruI?B7Wo-{zm0bl9D2G2Vnd`xm+YSuMRLi0w*>ZWLsIMf}MA9to=q z9|GDG66aI{><p82AdN z{~+csEIUeo2-ar@$EoA3{g3qjQFQIF0mE!l1Rw1K?ALRB>5du%h%W~m!_u8|U_wMm zN%Won6b3wUzF6>8!BCoX8k{?fFZ{;$PY(Fj17ilUwQ0?=1dI5Q4LcH+EeLb*$@aOQ zmag@vL4eL;AOv(3Mt}*s>d-}yBLzCr00fLXXLX-l5I_7$SbcdXK3HPo%}M*iEB>B0c@2EU#&i&h z0X1_KKa$hXWb+ejRpJ~wZQ{!BF6sn@nJFQAKiu7>@*Mys!*bl>{E;iBn$D_0_wKP8 zxZ+0bYjSiOj7WJzS_U&t!4FpJ2kkdr&KZ@a#k?G@E{2=Gn{p&_R{-==#Uf>nrZO{0 zg*e*KrfdOhxCtTO5k+J+)v-$ zOV7SG$p|~K8JHK^XFk|3`-Q#*M0gyAZLP6KatTNK-l?nNru%#$+C)phwT0Zc zTE95(1udh>UWEW_Tl~^14l(mPLyravAF(YlmDKE&Su`JJKvqvbhqUSGTODnoE|Zcm zxOpY4&2gC{jBH^-u9@VT5!O^bG|4_%q-?{=a+ZsNHL&v2+^^XhetE{ z{RgP?=LFA#)?rAu4DCzk6!(n7ZW_2S0$-K`dHPE3Xl z@`>~0ch$=#`vMCzgTDcFBPfI7j)4GGJyJrvb#WfU?2Ui z9>wNkzDlP}gxhF|nTNjhLlPO&w_*z{CU3Wx&jHK(!I3}$c_a^sF1^(-?-B{BpHsU8 zmJ|?ZnsKD2S?KucICYV2sT`I}1sc{@fX(i}W@-}+TPi&NsSd@zR{ytUQ{cM3mVe)V zKvvVm?Lelg$ao&L8m(V78cgJlw;2QJ|!6PNCFsp`+_E4z3Vr`&5=kViAROr4-zk6}gDghz+ zHQ+aE-o~CilEOL$$pXWWG7FspK@M?XFz2ZuK1a>~$%G;mBc{5XoXEF(Lh?r2b%o|u zvNN}VB(@nEb6q)-2BIg-x?w3n=?Q{@b2Gri;Im^#E!slQw~Mbzti8XIxMq6>K2!S@fx%jABf#Qt3SKSM!yd*ttb41h8Lv3U&L{I#1s z0#D$+#g7ucpTv9r3^0~r`r=V)4{bVe(QB=<&vUiyUAEC8IGqUfUQ1aXUh)<$9(Eq= z&#^7))(FDI7)ss=VHE8$2PJkFj8;M$1S=5WbMGuL?1 z;hy>4qDys9x2B<2G&GSMuA%ktMallgU=WnO_IXH-=r+Ii+H_}LGiPR9zj+dqu63TQ zKB;z4SUO@IVkz%9pVv?ifJ~Jv6c1)(U`p)A#nunh)~SRwF9R0d!Bie4L51nitEr;j zYmSfmOYJ@MeT2EWSqJJOsQkf;ZYHh;VD^T)?1|?=4QhzO%hx{6eGmO*uO>7u#?Oyw z*_PtQ5**tDLcQjVZ)7SV_OJ(AV)fbLxP9`~u%w-jf86NIvcAkk$lmHbD-|nHkX3}B;r97tJ z_#1`G(gXl1=WOXYQ{yT_C069uK;fUOcg|ts<hMl@Z zwkIM|>_)4)81qx6BUP0GRF!WE;!pauocm4RiB1glfMfTPHLT)zs{rN|C?XQj(0|-L zRv>!EV{W@U*PEJF-|2qEay`RxRIX>5>j)?{(rp#r?|KN1+C%1R?yhc#!TIaTzJDeS znlf#;Pt2aQJ2Yh`ijk$&FPye$&MTnUMrNT#+|d_@JsK#33jOf=EJQ9`(-q3L+lOXK#GJVpTpg*kst;3 z9Xc{?y9Y^UvP#bV2HH8#6u!I0%^{yUXt?vNN4B zE+@5fKTlAXSYCXgP}RC}y(e$AU7Xfe+B+aAk&&)XEeB)+q^kCCd=27D73V;Ggsq-K z(^a&nCEX#u>a*Qq82I4Qvn(>|$vAW5Shab{YMY&R zK^H5`b~pM{oo4k;_ocO+df}@3&t;-m(iYquBKHS>ehiDE$lW zQWED`1T6i0=~)b&3_`(6U`Wenf1R`e)cQ26_Zp6V2xB{*MfRA#P$4tRPO>^>$8?xe zlbC}p;T}?=lw>h~4qm=c9K@dFnI9|HBSv1}{4U9Rr*QM?Xj0a#1MbmaGBl0eqfax% zpE94r>2!vHjY98656-6fX7b`W_0i+nk({D=?-`IpAWwX(bXeQDZRk-gx&4US6uQRu zxH$vXg!VS^2{%*u*S>e08%9FSiTzLj6orPMu7$6f z5pNHIYS?O@7WZbOMs%EXOkBeT6HPZ^em6sJZfJ2=eE%#9jd&>UtT*AvsfnZ8F4!wD zN4l|9ZK3&S#!a@u2pTu5HY+bNHq~6~jd@f5{M5PANn~VfN(ov{X{oxz6gDXFcy)G| zbBjsI${R|r_tVIJ>w>nxjw=|OIQyIUBwHR%uU)v@d}GkAdaFU|;J#DB1Y<$LRIG6b zhjf^-*R1Mt9LCcu9bAWrDs1Yo0n6aw22XeysqAGjxwg+q5t&>dW@pXsGCp?^WTLpXd&_c%5 zK(K>U*q((e$iF7IGk869LBgC&&;dy)x%Hr8Yb*%e!1<;I>9MHoRHv5HOk-9$tZ~rH zbv$;+lB?W5zw0V$tyw97jG9wQIdgt*Yj^bUA~G^+qq*K_zYI>?{l zH2JzZ;<1Fr7e`v(=pAu)$ca(`Rb@;PbgxZRI)yx&3!V)OE^?RqIfxgL4e_@&@{IGh zHXA0Mf^$BWPa*T=-)jze7cv{OYUNQx4(D9lRx%M*H`wMi*~E+)u~q z92S>c2@gI0N#4M1<1R5_DY{p3cV5-W)8u;R#y!M5cM}hKrMbX5|Jl{*2f0pnOe`V> zJ=LpBFnp5&5{-s*?@ekVeC2JqHfEH4+{-X+cjX0)*iZh`keUo-(0f zRSMH~PEpIzlRIcuxr`cU7BEzjSgyOI0xIt2XB!{mbQ~AyS_^5h6FT|jY^ZNKZn&r* zrAV@5{#T720(;GZ<|pqXOjNoI;vy zh7OA5^JWehBT1fja;mZVQQuT^#8K~BSen#nK@6wgck}0o z?Z0CR-@i!l^ADcD`L1uHUA%84-GTu#MQ0_;nd*FJ` zcV}_<3h5TUCbe&av-%OnCVS=M)}E(xR3W*e88vq3aj!ml!;+57lw@^hE?3SrVxuV6 zD|<`ZHYWPhZDK`5o}w>>rlvJv7z|Gf|MMmg43ITFx?1}In832>^rrO*ZK2X`Z38!D z=N*&Suv@YRo@r4UoMmb&dT|hXQ3n%yB+M2aMbL>a)|I>HX42X12x>E_Kf!D@qaWV& zBi-JsSV7|5P1*WHk6C|z#5YyHvve16tN8`&D4v#Wb6RC$sTf0Vx2)1hgun|(f7I*8 z%@`ikki!dmV)~ia-b`%*sH7ILi8x59pf<5xX}hPhZDP;;ee9cssG>#zi*}LmSD&w; zgj;ws^<1iSMGc&rCImQ_6#aPmKSfOS4S|^K1Jnt>Twcey9UFQq9 zQt_NJd`SLz@y%}m|7|oPbsji_LrUIiZj4fxM0^_deuVx-y4I|cu|QcD^b>;PfsWSs z=h(zq`K@QJr8X%cf_TfW`H?edcy=OhL6I@9KPlrXV#z#K91Bjv9fIYP4mx4ST z2J<9x!99o@=mP!+&5N<1f_e%y;cU>K_nL{9u4lrWf2c`7HUBu9_{)`qsJ$oxRbpK_ zlR|xE$;%Cx-4XY>?6<0H7*cw0TdC9Zb)qC)m?=-b0J}`u5P#M}6w`IO=O#A%=bJk? zj)%=ZitCn$(J~6S^u9T7Rh#aDO@0%b?6ucZ<4$VTbcq6m&GZxfcV=Ro;o;vDkxda( zIFom(wzV2=hWUn0DELL z!!q$FCx1n?m>hXb0P?B~zQu`}{fRivC}8f@aQxaw?`82DzGxQ^zH>(v{+F~pNVWeT zCOhVfuSkL@Ud{e5scaIeYySr{pvl@`>(utw-MOQ)S|EH-07p<9>ZSLhkKAYi`dH8a z!%?7y75gop|7kryZeBs1H{$4w5|{&l-^u)cQs624e}xpWG+0Q>(=6lm6Ce*uc8 BhIRk| literal 0 HcmV?d00001 diff --git a/assets/Asgard-Endpoints.png b/assets/Asgard-Endpoints.png new file mode 100644 index 0000000000000000000000000000000000000000..5d29207ffb29aacda8b692efec1e48bb80abb1b2 GIT binary patch literal 29795 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 rPMjBW@3NYFMk?WOcSw2Kb@ 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�i%J3@?cq53& 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�heSU>!`2KQbI1h~Ji}pUb*rG$)^?oLB_ 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

)rR?zkJ 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

!e$Ha?{R}Xo2w&-1ew2l_QFKKM}q^wXM3fZ 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

{kOC^)hFg=9i-Dq z%O#}Y_S1}YdkVKOJozIee>eR+q~;I(aDN;@E?3C;yI6DToZ{+~PLAtkdVy%X&Me{4 zDElOFq#QWAaLZ?Se9K~VO+atdaLs5r&q@Z;6ZX^-k4!vqUek;SvBao2@$W0*=~I2U zhTRW?RBc+gLOh`&x?CJ7;BCI(p=#c50r|-k?GMz=9PS$ki6w2*`V9cBFBLuGehq1C zAKWd!7sq|iwpDtNP|y)6#uObQ&P>R##hy9utaZSmA|EMWSFk8HU$?#j5BK6z{%1!& z%<16$;t(Q{S)o+E%hA@)(!}!cvN}9#z^|>5>of>X?^jr0nY|ToPj@r&96W&jtHnX>va>3HS+-RDr#*g0VqCL9n(T%w1;5^UKp5cUthjkQ*LJD(0u_*-FS zl13Z_l2I7vqATRY=vMM@Z*%$vSc#E!H0WK$Ke=z#v~RQ=z#~VYKd>S?M)|?rpIo&x z`v6*4xI%`2H=D1eZbyub1xfS~yymFJ>gGEUqMLPk;+J11!90a>p_|aeWiL={WIt~# zDUrvu99C@w%m*%obonHjGkwc@b#P9ao^Sa#Y2oaS}8}v&K*(K0%u0xZ5nBYZv^A&PhSZI>Hh};SL`95LY z+rv|LXs_J!wv7AUK)KTAq580HOMaM+8r2_!HQzlBLTn#oat8Km!KHPRmTc`SE4C(>iO88nO`7y_FBpX4u`z!ui$)tX0G zwBDUqd95!@|4{ewon%nT{nFipqkv8`lp+`9S=hZkxh=H3y9^ zF_rmo;3{#kPx1{!mX8wCikvOt+5o`u;<7m!uTSLb_!fRk2O~B%qKrh`E&23rH)@Vw zRioNXef4YN(4WaMM`OWnU$oDeWH7&lr5_CKY@7vinSBxe^;O(}!N2bvoUwnZqcVXZ zA8@Gq)>=)f`{E$-@OkGvC9RO%H!7u)Ry=i@#LsoXEve*mI6!{fBs{v z5t2co798E~4PuUBpsRsfIHwJMYt#*}OZ@q$7k2V5`26%fj)+I)(IYaPcQ&o|7^OSk zBGkW(lJMMU#%u6~s!_KieiUJdLtmfz9wN9$hqNt<3Tj2YBxV4|XbXQKguZgVF85Tv zd)`s3-!U2hgSnPgih}tmaz-o`a8W<6(-Ykjdsc^9j*9fSWj`XZucq697=MZ0aBs4| zoou^%AkKm2>b*9DZi1MH(6h?4eLB#X!1*RJ1AUq|{&mM5)nVUVi^}X#k-~sZU*Eji z>w`bC=6)pebBK4>Q<=V{(Nf%Z$;SC!MepAK-;={rZ|GQC#*e66*dXCvO?Tu<;B=L66FtKFC zM-;$|(8d#$_r6ddYg=U=0~*SpMWkb|u%|TM1 z&m*3aS5q9;6nx?-M^gx24qkxMpt#jpyj{t9PQR6aW{t7-(Jjb1e7b@$~!!B%NXtV@kWZLhMkia41LG- zLWlHe-!Fmk+}*o|dn(Q%Jh2@<{DL>(+k@d`2#GSAck(DKpN#tCW9D?w2N}>{NNtP7 zf2{->W6>i;^s?n2>1Ddd-H%|sFB}C!VTE$g@u%PUxFq^ut)z9C;;T^Tu_VLr>cZ8m zQGY~VE9h_atyHk5_Io~N(=EFK_0D59lNYsf)7OD9mss6ifpmupi{8EK)k&?>J}WVR=5KGL--vix&kT=3`~&LbtdG#&vWgF4*0$55dT(x z0y-RTpzMTOd6#e67FFL%-Bi+>#RtJ7@QUx@{7xpBvrp7c3N3ArgATz`mVJO-!y|34 z3i>bAqZtHlB_(Y4C%#ZI>B&)Ezv7Q#1|maT>E?y<@#=TsUq(TQK zw6c9xecj_5@;&n#2?>|jb5Yl4^c^~CU&DH_X1lTv4k(c`OvlbrabQiRsqJ$6x z(9!gO4D2aG1uRNpDRMHA^h^a|4PjPG?z1Za-*#p)xwynu^YxA=pD6aBE{aI- zexKL5+3!@4xB2~(=+2%n5Xp0^FXqiWGf$3gkPNsPciUA5uSTaqysr}cFD&=`qgpOD zraQUXJ%hxD_M##BC>^4hveo-;u2N)bK9yT3d*8l`?{@@S_OV~o3G63~Leyec7LZVm z?U)q+1hc)K5553z!wRXQ?d;KMa{1a#3eX6;xlT_aoarJUj43yn7`X(d7zWll&hSr1 ztBr8X1qI^cca;)AF^HD}{XI-!)*9hVL=RhxjrlXBqoL-(I#L!;Ce8BhlVRO&wzO@Y6*U)WUXO7rD2dDej2{{^!ib@9bvqxN~f`gstn zq^Pz&9O@Mqe1xPYFBM4^Tz@eCJd≫ooNWyRV>RZQyQ|5*mjGDZ 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%0DPDk3|iKJ*9-$i3O#!1gt zD_=CqBMn~H(9*wS8JM61e!uic0RP8bVzpD4w7Xr-#w27Vsq7|8$~=D3nVA8;(W4*i zRPLvj^5Zps+UIVwN{xk; z-R0KeO!pS8$lDbxMg;}!qL!V*G8VxXgI=j$AHlLn+vQ?-I!XfIOSKn5X#o$*J-9wE zuAjDBac|<}Q^_zOv%j<(J;sZ~?W>U(_lH{ziz`kli3|IF|KH~7LF#bE^tk+$LD?k7g?NTGV;exa(9?- zCiP%PWP$G8c)yc^VGF^1`EN~tf>qlWQgr`m2jkHz0=);PYYYeAM`BU2vY#K~3{XT= z#!@1G0D?k!ZLrv_{{5iw@l>{l`~#DheM;2an{du*heB09Uh+9{E z&oC`~wZ~bya-&yizt3X=8STA!mvd!0q}93m1)TUuVQ1N2Jj#CkuS@@mJFxv9^U0Lp znV^mpL3dPJ>+{L?xrYDjJu}1P8PshcCMz6Kd`_*K=kaSE-aO*@imKa1aH1GA@ulcF>1*1>A--mD* zZ*O3=qgc8euc@%89@`4v0v15sh8FTc0|fHLGR%cw2FUAT7v970ef0xV9mhj_#KSx` zz(|$XYyM9Uc6wY>-{AYLVbQU`u`d8oracrt!vEFJL;p_IrWYh{CRb8kEc8-XDnMpD zZ2)|uu(!&!vfl5m+Om5XE2P^w*#sBzD71gW1^mG)-4=n|ei0=qrxi`YcnO_FnB+(z zz7l(sT1itTZgf!O1K^fp;46{km5b@l8;pCdSm4ECWSUW1h3VivRVca=n_h#HCpLx2 z*B`hG$HUV1DxmxX)I+!f)koc9DSu~JDA9hNEfku{kt&|a49X9|it=Vllg|+VX0s83 zE9VVu!VH6P-FG~(>fQ^O6#Fu-mT$vT%DMYy`t=;H2N;A1w}Ipqs6AwhX_DK*Ia`%w zCTnM=a_DSQR<5CK=(F~DldB*ziugW{`PsA&xiDJ4Uy|0V?G)nFDep4AdyCs=g#$r0 zaM^AnlO#|%r6EDK_)Zosq+jUg#C1~!AxjdxHb8zaajrLIAPXj$nXm0P2iinmsuAjUo}#}8s7B$#Bd`a`?X>{ANRU*+(x!mC9Hy4zHY{YgH}sXxTmN3Nnb2{vYVWZ;pM14w7~ zV}l^1qv+$oEFGFV)feaz!Bjju8%SDXV+wL*7PI%D-60mlaucSkoTGUMKyb&PL|=t z0TIof5$*whexz!&jG^J>WREDFUmM0fBXUvp{qK6mIlfUN%6n%?GlNgqXA5|W4vdNP z59G{>>UCat?v8d=jZeaF0gi#8B)>gz${!GCDxenNZ|N;*_y0;rG!O4%^*cnbiO$P( zDEiybF8)i11Nxl1WZR8vN+`rWKKGX}cyO|RFl+wX6R`xqqOUAAAoi$1>kora_Lc>gf8TRtvI?M;Gcm;_H+kF|0|1V6&RiRc)I?=!3 z@spgSA&Kd4g@R~i-y{3?$AL-6<5dS)0U4Zq`yy%-2NwA4Y+s&l((F8X;q7nDc7UDE z_h!QtjIvy-To@Qt@P&sfAWGij6l$Z(BX_4CWsQ=iTdbbur$St294Bk5O5IoL7A$vW zZfHTAa;m$d)3cXm`!x68?Qm`H$WtadY)H40 zGX}aI-bNi{-1l+M*8Mni?7*w;;Vwno-BG)_5F-IMEvCxR*as20;P7ax$MUIEmv^~7 z;rtDEYWve%$RleAJ|v zam~jgX9?yl+QZKL{7?I|&=Tjydi))Y8@d-`Dpp^ZrQ7-UKFsvqx;TgzI&&Dpk94+I zGPz$_9wwAw^)0wI0u~DnnE7kpaVD^YN52gMSm9X)+OzNJls-+j7U1Vbzi(ho#%RdH zEm`uT5&qB`hx!IsL94@p>}EM^2U$J9ic~lq z?k)m%e?nXEOxb@^Fv6uxLEjhf51Mk_eH9VgK;9-K)b2>qYM*<=71P7V9*jNvlZ^41 zQSH<1woijW6($H1sb4LSTh1P1job{9)X72GceDRP}K_TGsrqvbGc~n*@vL z5Pa+7Abe-AE1C6!v!>d_ocQ>F@%trwS@TD&yswofC^(0p+wib7MA7jF)gDfr(KK(f zXbsj?z@k_`)Knj%x11@SaQw`np$_h?De;CLBs-0T+b}kQPu5p10v!5@7Z~zN9t^1z$o26C|XZ6f4HWP zuiZ4xaMfJ>t%_ok4KNruHMy&RLovg^!+f1U_9IWycf22cG}iv}17!GyuFe0cQKf}S zsoeV;=^6GCB)lxgZZPNdgM)4TS+2lfM%R@mZ2Lz5q*e}?j?X<6PJNbh@M9Qzbgn^skCIc*)w62AEh^q2C zP;Xzd4{d*on0;O!UG*5w>)yPf#fz`=X#DTBw;dT}N|5@qn5FS@K@I!dzx}-^@bV$8 zL6r+{Bio=RanMeJ@u9%(_Y8i*Nf2fs78gI{@hEz8ccR`NSJ&~d@<12Ukh8~G?ppn4 z3`oJ}&(30-|MHMyof1UOOOIj6^YgU^zTmSB%Y9bT#5hAO;NN^A%md$h=jZk@4f`%1 z`wy}oDlkwAdTwy4zE>QYtf%-sJcxD4;YXyO##_@cqwRDxbMMdI6R$VagF!isCB;%c zH6(R+zFsV{{Ax{EurGNo0ePdfu3)`=2(Q0iRzV_kqHfDD2kWIXAcf*21-RS%GCt(> z{&|Bv#duYnj1)n8RQ%6)?$}RV_QQfz^n8AfVC&lhzV>(gRVYjU+sZlPa#|*g6DHW3g3ldU&IxF@0%Y8XD59S z4x5TQ3cDMVlesrzj@(i|w4>%iYf&y|gN?IcXn+yn5^U z^Jv_HLJ=aL_1g3mWad1DtV#S>@vPei|5RsYK8}X1{yRe1DUL62%D%jwRb^~2;Wl{J z46&!(m;+$E^)=Aw&)8A6q)US_r-!Fs9`Gdhk|Ghj11Zun*h$zQr@n9M5?5`2DmwSTd<3ui!M`+9=2RKUdi_Fk}%Np}s#hO}_5;N(mb>&ACzU!B?FguE)cQ$&9nv_Pqyw zvh2qahd2j(hG<4P!u-1XSA_;iUGgYDAM?XJ6tq~L=j$~(39Utv@tjxAz)~ zZ`&v8!MJtA+KlPL8Yn;+a7@Ope)&coj2eCh(cO{8>|i&ZV}1H4uz~XzkdCw_uH%24 z!Ba3r#Z{k5T3FCZ-pBkEHU;xNFNsP>Dx9^h&qo6H&rJE`o>O+AZa`CTN@BX)Ga5bp zgtthqw*l7B`}bdE{BYJ?>*>i0!S%9&tb3@oas~?Y2a>^BR@U zU?13G-5>SuRtE1LEj8JH<5Pr6>ux$IK1pi|Y$rQjD`N?g^}6-$=DqLAWAqfv8)|X& zXVW5^e0po(M^elBK+kvo-XmbA&BW*8#HdDAB1^1Py%y0KlBh~6L*!Orx%^iev=&YWJ__N`=NN`W#1&obB~hyw;BpXS%Hyw~H6QBsd$R z{q=him_;pPVqdc$j*u@mBBb_}>3yG>-^)uYF*t7DLRxu>e?dJM-q`_I)Z@3K)cVUt zqunIm3Pk9YH910ZuJLUV&_xa5~o>*WT%iY&V zUu6lHZxc%W{E@?=K}>$TN=BI$z3JIL;GTzb&VTMrF_u@vg@Qd5?!xlb<;xoOU1CuA z-WP`Zem>^=@^Ws&4t#BhjPVPtoSej$&@zW_rdc+;0up0UY>SJsC8AhIoAMl&DTHbh;j9=5{+p0MW-vX9SB%z((%GT>s6NGl!~^ z5ooh5g2l_D{FUxv0Fjfe&KI;k=HEjDxn$Q5zu^Q*Je;FY2KV2pp!;GO&8%?SD{~M% zG>=)@^7Jq2XEcyS?1IC_IS>hS4SMs?pYM6cFRJ* z#V74q< zN7-tuS6lee2iZi}K#gA`p>rX~hY<>N`FMd$(b?y|D~s9*z9uHdSG+H{_}XX3k0c%S zK+V6_j%_95<@hJad$^AVYYWGR zS=?>?RC~msc%&joTIBId<|s0My*A;|+$VSxQQ&V28QcdLya8YLiT-)U^9^PJV^A6j z?Nb+?Ea_UK@tTI;2CM%EwA154oB-E-=STJR`_56i$CU{f*y5oy%ZaC+Gll9P{Z-Dv zE#V!B?ve`;u=Ii)gVJ}%kH>I$V2Po4ER=;1Kzv!9%@a4P1xQ8x9xtr17y1;mQ)xX4 zUjd2R;Cr{wC)PKAxUBNICi1qAZ=Z%Z>s5Iq>P27@xDS}kF2&gahN623VePCc9Ko~xsD|`ID#>4mfeVqsI-zG9fH7w1grX(v*Gwey9G4VwH zGW8&>q(DqrXT5grDB~K9cV=VznNP~VTxjsTw6Cke_4NZ=@X2#udef#p1$pqkhR|IK zLhbR%$wU>)P*|PxQ53XgCW=EqqjiGp4uK|YoF^-#>i>o`IWwc;^38c)a)R#y*_;D# zvpVeal{HVi`qUR^)9wZQYPO~86^TAn+4Hc*(xWrwp$dQ0Ny1rAL7Su^I@adnk;1&y z)?2?1DSXL22rI8MW*}w^SHu^=2YCAxQB#wjkV_ZmY(I&FK9rpiXP6Me%Z0Ri|Qul(ydFHfQ(-BD7M}ZY)wzGAyJRg~ zaT1GWTg9y3tmRAbULRsGpbh%bHP)9L@PAk@ONtrB?;zd}5BfHHcU%P>_RwbdeB56e za(Kq&pq3q;N`X+T9|KvPaD?-pU~9NS6<>QWmV|rNh)xQ& zJ>$?w==A`wVjk8qE{^&SokR4xUsGTHdQn(!@W6wJ7TRHi4aDsxy+ZiYl zrX^d$q16dC1ZkDZ;vgBKi5J@O!fVuYUm zFo9D>3i|xQa}Hsf>hQdN zPKpuf@21xWwf7l0KaB}y*-k{*H-Ropk1qCNWlrOds0Rx-W}J9M0yTxbrZ3V{3C7R` zeqO4z%9pID7ACqvS?z7{Ko;vD8#ikEHL_ErQFX0Ei3Xm+m`%mQ_*J@n(l@vL2`}`@ zln)Wb{PKH&UL|A(@A;LG>`PpICCKj5J<$#dBz~@AG(tOf6AM0@cE=1#E`2p(s5O- zd+1ZHwZXBQt0YvUx9{S5w>~V^TjiJ>Ya+_6d9KadKhr}}?JFn>8tOLW9uNXQ=fuC1 z+AsgRpHGy=1ywdW4VIoRz{&!M)MOIfDhFS!{C6fat8^=Erg$`(FL(75da@AAK~RO@ zVrY{B3Q8`V^nTuldI2Hbm?V1g+m%u~#6^ly6T?ejk_!3O$@JnLa<={zCM5LZcT^IiYTVsQ}Z^k)xi5H}#L*{T#R62f;yAU#I-C z|JVK*72sLzPrL94vR80avyPO&ep*zOSg%MYks{4k04)`8`zu|=I%XcBmd6C@PcC4qaeil z=KqRGL_CTT#I5)lR(+prybwx(DZ|f_Z37;nop8p*+7|tmLp$Mxr=kg_P&=Gs3-=Y# z#6H4-&jhV~O+w8f=l;4+#gaIq^>Fp1GJ+zE{>bva#+m23w)AbGAM7{C$4rGLEGEGD zx`**YqoXCYjK@3kZY*jd$gkRJ45)n>J|!dR6943uVK)PdtXwzNMK1855rn}>xL)0233!?AvhY$m?!HaNKrRcx+v5S-)rMbxrZFr zk2zM=?}JI5?s)dw-1hEo-3(yAHO@u$gm_$k1Be14(-CowLigjod7$wRf5VmFU$Qz! z_JD0xv_;r#ARY5d)QhB*D$ENGq3k+hR0Ar=5OVaSMdPl#es^Dy-PjD;=gss}JFgBQ zuE_6V%H)lz=x_MtTCPePqz%Ng$p3Co*%A95GDeqFNTwTy|EJWJ%-mO5!qGdhy8Z`{sGhdX`CfOOi!4YwiMB)&&Tj^TGG;XPCf?MGFY+VQNCgTwz! z(hK|3v+#Ye6x%dTq_>qApM|>8hBu!xu>WBykvhR#Q}XTn9SLQ^3TAdw^l9P)IVyt< zlL^-pI*P(!|6y%)VhY)EmnZIk`6u5dNPhuK6LYeAi>XO(56JU8B-$3^%UM^-HK)Dq zpVB)v?=E?FGg)AhWmKDO3{0+yU@y0ZWS^yj0gVMvPmlA#QP=NyZOTJ=z7s$ux3JF$ zb@p?Gt_kn_UX?U$ABl;+^$$XUP{3~M6eHE{^=CMqgv8h!MvU(-sJ!o=$ErjxiafZC zP8>ZUZuYGRU*QY1HaNy-R;n|0C{5G8Jnk2obdb6|spfG{z?*eamP2&vqLiN>Q~sC^ z`b9vSk9w^u%Ix>gB8BuGM@GBb39V>ozFz~P<2C7L*L%P^;g5uJkfMM0;k79RjF;|D z0HH-EYl9cU9pU>!wwn{Yo4N~`#LxN}1OkUrmN;dJWs2cK!aS_PL&0rav81RLpX>+C z)>f=GKN5`lv5NuHgS!BAOR|^NF^Ab5f77wE`%l-*SVfh8GwByvVRXl;m)~K7lw`HO|Wq9Pj;*&Idc5+X2Go%Yy04S5mD(2Nb$8}%1=R46SWJEIOybvqWldyj%P7EWBjawIl!np4beYu7JC%_Pv zP~rIMnao7QSzpT+KfS$!jvmU1q%eDPO%cMc!_7Hwy`+u?lrGTYU6<@<5)Ay9$=vL(cxnB5dM(HH z*3U3^n-u!`ofGlaTwElgoUN^Y^-tlJQ*);+)=~FG!2d*yo6rImx^7FwG#YIMfVPbG zE_y2Oz_%8}T9$$_@VQ6t>5ul{-Fu+aUeLsaZMw%Cl%MHJa&YkA@63~ZPvzCwcP;@9 zz1B@QBXV9M($Q|Dis$?9mckkC>{3x)ea<+u4ckXud|?kIS_yqn3Wt)8W?95;FD+j8 zSh?Zc;wuvxI)Q&pn-X%SCfxLZ`PveX4eSVd+k91x$MzSlCF zz30rwcC?IlEHE&1t9kjm9O83hNZ2_Q|0pVACkTX{?WdCMtm~Kg`TKpC?7xVyhd1WT zI{@Z!TJr3k1$C>Br!__nh45A%Lw!@8U@tW{pkbt7@YC^fx0u53QQx-mrHY5F50mF-e@+dBqL{v^v47} z{cEn$UV#u$>k|DIOpS!bHqq&^Y%6xYu%E!Ifca@*Rt579d1XALZ>0pu)+2PxhEBn* z{%W98R_05%Uc6UM^R7rJW2EY>8xi>l0Q0%?k9IX^Xi=rB@cu?_S&6UOY6+bM1%aa9 zpL&7zLJ^ALeLNY&$srEPx|s2Q_nVX@U8cJAjcctd$DLpgX%?R|8sETTy7rbdpT6rg z2&`kv#|8zi1Mh((@nyt)JRGtQJHB0|n(p)2wL-{UZ?U1^tN~BI`2aIwNHwu4m?Zic zk$b=yEM?*c|2U|JmkcT1dpu+q)l z2WryFx%kF<#DGC}x`~GC#)~S16-=n&eTLa=xHBTa~N)4iM<|gu~I}l+j}FoMoPZ4?E}`S>Xz{}F*^tX zoatb<^!5~&Gm54BDRkd2B8%@i^@6#J>8TH@J2rQdmY6rP|K)0B|mP)>4I4#%8R@H zig2CVC9=N1e}1h!^WBxC?Pr49(p@&M@u4D`wyrM^^Q&D^8s@g1*kF)S4(ayaeDHeW zw)f+{87vaCf33oS`u_fK2`7Egk^|uO@A#LibHT{Ci9PMEiapLDOaqlg|Qcik( za;eN9h7e{oPWK1f9?WrUNqF3TrpT@zl!ic19D2!7kBYO|+=?4v&k5va*e*EZN@iX$ z_}TZ>Zg0rZ)1f?;8X*m-!7!Fuz8>FWTx+l1?+v2V+hm`&{J8JuzZn$KMV+5OjO-&W zK~w!{j+-_NoT^RgpgHroj$lehiRz!!HBl`bYQZ=Oh?lX){5Bf@Kw)Gw*u9{vR^EP9 zLI?;?01f!g$n+hZB;MD|Z=oKcxDMZIZV%w?3&|+rePSEwFW`>%P7As<)r3yX;Zzl}60OHBUgc@WE?C zD$XTxmbOj(WC=rgpZ6@2NGde_Z$rlf)r|$5x9Ji|?~_^;ree8twgw6(=-}hE4q|Dc zJP%ysuXCVW2E`YoRHno4U#7bv4X=dc-FO{QOP|jJJHOrRx{u2M&*SA|eoIiV=%>wh zZFp`+x9{b-FG?Fxc#&nDrgsgcdcehKd^ZzoM^A|ecGMt?(X&ppI8ixms;Rc=q#ElU zNTa!Q5^fZBgxtE<>FfCde`@1^@_;80Hu7A~`>v+9Fy?N_+b^a_IA4or1PS;tYZ`Yg zjyo5)&d2M-6+DkbE}X;5?+}B(q?I>QAj*Ng{bZLuA3ucHDIfdj9QVV^%?2O63`Ggh zuWa4pJ?f1h_!L*S6Z%cAnPA=F_@fv50YzB$a8LZ~DMXA~(GNZ$GXHc5JbNT8g!}!D zLi#UWC?o-@h2(b(r06qv>z>KVV6a8FvIaXgn_!ot(fzbkek|8IU!T^2&R9O*CtprqH};rLo=gY=otyxH#fphW)7JXc(v0pz z=`xK%we=fW=4Ye3e_XMm8*n1w$lJy86}C?5oCN_GfwqmO_3eK@GEn*P&D-#a=WIRz zcoUoIzQ-Cf79R2cZA+ZXZPK{iUfq^^>QphRy8}){?|tCFnE1Z99{_U%Oaq>Vk^%Qn z>@i)%W~=#wu!-tbv7ajIW>cte+M~vU2)=nO_B}CSG+%QOEr?z`S^G{1tD2_4Vz^@S8Zk-0?1*sYQVLT}w*e zyq3uNhU!s%MCB7D)6P&(1Hn1Iv0p77YE> z;D`YBujdMD`G6ZJrybuG+O(gWd^m}Z_6{(9@ZJomA;wpImDB>xG;g*#c*IuNHcH4C zb;m4CXayx-O&Xl@RfFRqu7e0_hkjBZ6xV->1fE)$BA-lszYQQ>lWJ!MljkJNr_^s} z#;(xgt+JU`U6E3AvoF4*h(Q_}pPQ>H+u)&k=}2LFSj;y#zmFg2B`8cC(MsU2P85wZ zHoprqeQ{wR0NH*g>eK!`HC;@Rn|$9?wqUSy%6WADVP+y znwag+3f?PLHjz`EFKP)lynL-p1SuiaFF2-*{$}~1TOSnsY6kg#8$!%~0f+Trpre!m z7V%SmfUc|Fg1^8TGB~t~@17Gf)DI7(dK@F{4IgPkcFWGlR#JL?Jb(&Y^rS`E$11Uw zEYkOn*pp7*Je!jEV#Jr`lX}Vexu7Wae$<_L1V{v*%n|E7v(wz*f!kecH52U>PUVOU ziA3ri0PnF2ybM`5NnI~Ik!xOUrhp5jTOxlhYgS@P0d#P@+%TMmN-+(V7F&iwY4&gK|)R@NIjF5Y9tsjb0aOXu{v?b zp+OsBq61yu+SO_s_PcD9oA<$KzV)u?N`&oBL0;~yhXp`+TvlB@NbjGV3(WNayX5Iq zP5a)PvYoJ^6lEjf(|%m%q5pU&OQ|d8@cp6WXb<`DSj~_R`RLuTcaV)Wlq=K=2`#zx-Xy0z9N231KKPxlEs5Gy(}|B+Y%?B52xg> zF?Lh?L#&q<2*au{PS@(^)vyZJ0vBCzH;8qKG%C)~ld8An6u|xt`M9T)$f$+{b94Ay zrw8Z(uU4JULEo2Vg>&7C#wg{ryNCVbfUiQ- z@}D_*_Ws#7Sxr?8^#lyw!vY-bA-U#FaKuA z0>vR?w8xv*@XAsUc^Q;_$n5qd-0u5|KE)N>Sqf$@d^VzFdCoTHMUR0@SDm)h9CB)|daY`WuNZp!ql_2NmkB()`tA!i(&lh+<(i{A`wY zpngz74e{^U3K+k8l5uuC%-bAeYvUaV0>oPi^ zl-=XsZ79YFjfUGNgVwu2Ai#VMXl;J2a#s4&eS`EA6!co%OCt*J?8TG3x&!*=Wc+!X9_+E`=x)?1zWQ$n$-7g_cT7*nGHbGOGV)0*3YAAYT#@wm<6iJyE?sSfrpu9?D@Pi zOFODx3B2u27%6PeU)GaACbSEp)jCP;{u%3DNuqDSbdwmi*=V{jm}vh9@x|s@dhric z`hGV3368rIW1h|SgFLDD8O?8`zEf)s>>gD<`BWRuCYclcId`m&O>HileL7ah{lu^h z>dNAp48Nl)`G5hG6>sXKDGU+)umW2^QvTDANwBG&%5@8ECLzuZ!H~JhXTXhIf*pRtL4QX>4d3I)+hQ5 zN&7b~3H?b6(WFQI?fE_uIhry%Zr15Q12ZM|D1gO-Q7!5HB>G++kC&>CI43G(vVZbt zpc_wAcsd(xd^)SJ^mT&+8$4f~4P(K_FUYNRFh5H{ zqGbZq6YyH0qPooWYP{V5uLZq+FYO8b?oa!|&X)7svZ;S>X-?LDy6j^R88bcY1S#}Y zMA%C79?{znZ1|1-n?mveetSGV-nYX8tdIEpAGd@C4+78$7ACB-AvN;7^6h@v+SX~A zAxY{35pE-*J<)YOjPrGdz-tNhSy6eZ^Ur+WmR9y$2yDwdTEzRD$bmb{(O+Ak7NG2Cg z^^xW;k6fYO!+w7M?2paA=|=%nVFyUNSkDS!cDlFBl~p0_Ey%BDGx#zW(EA<4;pqzB zJ-)do@e&9x9BBC$wwuqBO}=SMnlsGqm_1B$Z|J=>Yvg~>64LE9>?a0!9DHjnxgLpB zzAgZm92C&u-yQL|Ck!WWrfPscf*Xb9PfdhZap;^=Zo6kz!6S*zK3i-GAamheT!_4Lb>&^FYC89ycBT(OXC=OK(@ntCG7<9@06hpmPumzL%q z;$_+Ua&%~f$WMKB{mGv8V>EFfeeWC|FRzptPkYE2vt+Xm4kY5yFZF}dhoO^)Xy$JL z9fHZ_O-pa_W_f+f%RtCd!0WumjW9{D{DC^0qgV&fQ`@%=P-HK6{JXj=8aFBTr)4X- zng&vX81!gW$S3)V?D_tdmtdREg^v>-Fva};fL6)_HGMBPY#A`)2IcL2e9`c}-d`Ag zgnwQid?MQNiW9lI{GUc?Obs5Nx#ITD|MsOYVUcH1EV$>3cGLQZ?B5V<^>patR@h?m zA7CgSZ5{B6(ZsSj*H>OpWvEd2J-(XLW8|15R)R!}(p&g*CGI5bPa#*cGj}Q3%On5l zcQ~$6P|rOIz#}=xMq3w_O8H>uccW*GIY}iX@oy@o^j1b%&4vjUeM%tdl6r7i+H5i` zxf9_*T)q}K&E1(VaT0DCs+@Sh*)g)D4-$|`MF{T?Q|QNRyEW@_L1IRfnzMLM*AXB0 z8?PWvc+a0=`0tceK$SmbZ++;|H+0|Lt1v>{crKBKJQ#BSejgWIElT^>eXp#9mS;DK z{L5!?sn4{$(!u^lA+eX)pzG0Li8W*-YNDbf@OHl;!UR%imLr*7?_CG{oyi zip2{WJl)tiH7cj-H|ZODS9WCP8PW0>kAuFiDkIBZ_<(w#5oUAYE)$nm0omOMeStx5 zN5e^iMG*Jh5 zezPs~1RIgrdKreW5~#44Bck6{T!bv|Dfu7VZvJirsdXTDVBrN&`}!tL#<#TZV|3ow zY=9Y|)>on|%;}6^pS50KjBv;NdrUwK&p)ZMUOw;E8)}RMp!3W`2x0kGugf!fy)T&d z3K~_^v%T8uO@Y7c!~c*Z+qd^7i^xQU>{zGi^>ifwIkXN{P-GVTG!mb!zn!c!-=4&r zLXIy&4uAA_M=^0l;GdxEd?b|Ew{J{#KbVkRCXKg1)xDRb5L}$*>$3cjbX{ADVo~&$ z$l+14B$XuiMpQrr0Rj2?-c+wu(^F+Ygd0xSVK7At0FweF@UvIU=-q_ZTcRD|3GQ_U zDIe5v+6QjE`L8CB(grmSyjvg=9t$vnQ zxls@IgK;QoIwgqfi^a!l$Elzih_CK*MN7P`8>a7RzfoOSAkU92L<{?ZIH$7ATK6Vj zA^Q(C0vd(@MBjMAWr(n9qw9n>MdX`%72Acy1282dH|KhOjUKkZ)4p_ig!mS9sB;i3 z3m}EK5w%F;ZJ9ew@i(=;mseD{6CPo<%j7GUccqyouIP$pD#*=7#`EC{yy~x>pADH- zpR3X@z39Zhck@uHhww1o4v>!)yHdB@1aZG}tT0=?&=<(!hijeBkLGp?3+npz(x{Xp zCLQ+j4tJv0^n&2#&){4qOg=OP zfB187qrnF%kr8ORdz!TC1Plt(ws|41mZwt~6CL}8@(d^qN4WAle?R4O>$F3PzP9Xd zuB)8l`kw5Qgg8La94d~%x%^8|1LcRDdB3L4Q#d~uArg3dO|*p?jr-**t z*m>UCXX_Sr)bfH;ol_MhQ&_c^1{78dNc#l;w+QLvy9^p+4+S>Way{_Q@jFz)pS6%O z5>Hd{1s2$fhs~F-7y`0ye@tRnBz(TKQVuGYUvZ+cWY5(b-(z3n@dKb2S&J-&`Q3j& z1^3v&khC`pe}X^)$0-9(+8S zR`$4o3sKqoy((8!8@Sp6niC%{$2LC{AGONG7s)Aj74=cBS0OrnP?@`)KG#`#+FkqA z4C=uCme*fiNDzL2Ni1ozp#LOW+$w%LgDjTE;*FRe>&jfjT}^-A{0rIlLMLy({&A?VTA;@YeyPHg4_UYEDW-c5*AB z@dBSYJj}6?*)v5K*CjbAglw+@$4+;cfRo^>YRZ#@poQJaA>Jr!yA81R1g1{=U3@C_ z0<&ut?t=K*VxV@QG{T2O7K0aM<5m{VyTDWM{@7Y0QPgwDYL6Pe!76iOudiCtAQ9nA z^zg3br*j|0>oMT(9Br8^}O8(YZyw{qNu&)*1hl{%}jeoP5KcCmWDQHk7p+|BPkppzGpJczqF3J+(^3aqU4)jHH7u?{$=J# zE#QpgXP5j(IEl7^>x9#MbwHb#i-|k2lv-^IQleLSN2U-`W z#oXxoc{dGlpEOlLjD|O9jF7Zs0N^*GE&kx|7Fe^(R*-*8Z!?GwS;rW zM6-5{wl^Q$Xu8vi5w^85Lkr6V2Hf@D(oeERzBhubK$7DOzivbzea zEY6Q>_k!j1Az=PQ4<-soTmRFvpVRG>hd~dNB2))>~Bktk$d2rV;g40_9@ND5=k&Q*4j%@aIhg@8B&d-x%!g$>8VcjWKp zw^qlbs{dj3EnXtSB&f=!KR?DkoEm2V+J|42)IP^BZpNo(1ZDinKhmZAENQ~`q~qdH z6_`}}&`zbCS*SJQEd#AWUqSA7ytuci4v%?PXTJYEYF5qXpS@(nbjS9$-J`tS7Y>Er z81EZ>fyLaA-jo4XQ0L!#Xk}j6-7*v)r+hqtKH|%dc=z5JM@~p>KEKuKGeJQtOYg*1y_w{#OZ^iQ>$<0uT3&qodYY)Chd<2lm&C zrAJl)of_#m54g@{`wHUOd4lRm{|u<0orzOi3bMdgKWk?vT({T#nz`9#*zSFS`U^hQ z>2F`|5Zjlkxt*JGVDQ)>Nw3=|b#J|Z@b9wR;S;T01Wco=md)R1HKJPrkMy-Xo{<2i zs2PLvsyY1iet$8duJ;O6!d%D?tbr1&TxImv`Aoc5R*8d){>0*`0gWJtx1QeQZ%=;t z8vK@pZ}s=X-h-fh4J(W0{CJzm7$fNwed~LFB=aMz=f?|Z_ZX1$f#%CK+#5S=L>fe0 zLtuqTAu3>gs}gh=tRgA6WUVf;yzWeLJq`x?*w&42Y_())4^pT5&rJQ zz)pTiKba(wbIuk@uJlhr5awZ8>*Vad9v%t!L`!_$oBoteaNuKO-L&tBVCt>n1|HgC zILH-tC)*x}vVQu?5G9kXC4Nh_IIC89Q$LA6RC65HrY3Tiy46T-J^?_}B!OkwWBUCZ zKwF}I1WnM@cny_35{G@)*u7`1&RdSE1>4Licr=b`Od@fH*gmU&+?Ce8?oG{Q@`cz( zYLrK=6~xL|-Zk7#>!BkV=oKbiHMwq2J8C6lJaiz+5vC$axyOU%sU<7pS>B1CZ4O7S z=ilJ8^ju8M7mcKMqOs(}?LmCj^y@?ITUa@e)a9Os@l$urrz}zDL>9yIgX$~zy;UXg zDJ$m6iWlMme#iG(Kh~!kcjqqDcRViK-sV@V&HP;0@&dNRJM*`LrW})-g7{YY*xYMj zRfa_=;7>~*%ctb@%;8KkQyvfiLA~M%u0LDovo;Sz2o!}ZZ(^233oTTHhAnwzd&k2$ zyp_W}oUPRy9pMLt&po5gD@scscvbM@_6MqR?QwqXZ0zmwiA!;R!a^|^I?U2V> zWhTed`&Xl5>puKZVy^XmxY$;Bc6;k>Y`YznIcbG=m{8WD9=Pd7i-mR<(n%D>cYX79 zxI6UlIt1l^zk00eg?makswKAQx33(=704QgfcpVO9*0Nt8e((F{N&e}fcFf5upR_s zJ3y6xGJfxU7%pJ)3UJ}pgImcS-d@-Sl`^cPFADaxJp(v-R05TAeM~(~Q)3oW0sVedza>D~O^3Jqf5Pz=1fngltTH5+Vz;b~KR0!dj*iXMx?cJY?q z^cXEU_=B4}vkcqG_sf4(>AnnFZ>>RzSG(pzYr#1A&};KNVKm|~klk>45T?Av zVo8dU+Z(9B@V6(k&js=9(=OD(96qZclR#h5|D^gt-Zq!HngqqY!fskpSkR0=@puM0 z3wFrg85Mh&j{KOA=pJrVUR%vMLsMd})zPqN4Yw9{DmGB{_r9|p$#`cb;+X(E`C@i` zMeXx)MNj@fuV^U2t_?Oe3!iXLgj3Zu9AO)?ssS;_k1`^vY`#Dja$)ZU(T=Dx_i%E7 zJ+h_^yR3S6jBbPIL;2I9`p+Ts^y9_xIjxC`%ftUdG^~bE?YaK)BepbY(s?eJ&Mh~F zd$HC!89Xe$_$ElW{AOm$gm4mN9%(S8e%mNBa!06+ope`(jRhRADhN9&LbL{_+rBle zA7s8vWJ6*vyO~L60`!5M%_S|` zdU4`NhPf#+^nSSU4)1xMufRRUSuq#5B=(+B@DC}$@a-KGBu)`ou7=}SPNWtzHdd+F z_VKgj6|1T(!3kfKWVRgr#b5j|rq(5`WaHhW4GX7Kw(U%WqBngL?u zm1w#Z%Ok3hr=sgws)o)y-Y}6U%b~@14+?H3&)ca_;ZX=dx!>Uy!_OT z;5$r8zx%%EwE+qRDCwsr3QzZPrg^^Qq0GJVx6^F%r+E`!70b;}6^cQ36}=(}z>0ny z_YXyICB9W{p!VUu#g$Xm%=tRT0G4Xp@Ih%jlyuo>RXBmR{QD?Kw;2T(L!H^dRDR2#laSsjv`yNeRl!P;Y(({3{#Qk}=&M@3`>A!jnRNm$3KgcF8 zR$++*V{Z1f2~c&P!$W&oIi2yqJqW*mHYNvaYX|DrhrtKNdwV?LY{)jZIZyVvl?Jfg zS@w<3eBEfGqO55>TDLkZMltcI>DlgeiJ#TG#k9XU+85#|G(=;+5(ovfHwZ{tb;x3~ z)h>B8bro|7)P0C#EcSHN5xDO{o+mK55$zT=1b?6JoCz(X;dzKcD+YyNOM~XTbdh2x zg0YD=qqcbN?+e}zz*g*`1N2Ubiddc;4%j~j=o~&22NpayrA0df2xNxv8Nci&)eM94 z72;j81WIH4#6Yw0>+ln#X`o}fcPgXS9ucDl$?Kf1T};%dT4?1sXaHBTHx1lam99Y? zd^20xvwE_B4ZlAg0D6B+`#9Ye?}t1!QyO_Y^M5EWIAQAQfEn|0?&1+x5Z=4=#Mg2( zI&6Buiak;#);s^KQt=W)PVMj#y33p4Xp{C*C4BEI^pKVK&TvIcoxRI3F#&7b=a)De zjacs;OG)Es!R>)sNA(bYLYMYeh*$%EbGhVfdwOQ+epAE`U-czt9(>GP%^azV0#7pG z<~1!K34EtC`l$SI&y@$JnbuyOAHBZ6$A_>PFAWd8J81OOkB~2dIvx8<69e8>5+RBj zT)FGXdA9nxYxgodyaUaOHfWg6D}+RFH1J>XZ(Qc2z3zY;oG7qu9*dxXzi)^Gvj^JJ zpWFL~Cy6}hpQ&HJwvJSOPUiq>IXA``6~i0Rhj*KJ2q|nhKx|}zQ1-=rh{KxXOsiB% zboN8MwP*R;ytVX%#fd;%vwx#9DBvy%5e1tV;yR`naRYo&_iTDw?)yo7vSdUvpyMM0YCpX|%;h%6w8xH9f?VdHjlF z@1SylimlDdV;i@73>=OGI}ptaKD^$!c^**%&|dq@6+w7_5ts`DO&PW-X$g?_Fnf?6 z-PCvLx*zhSyxiuuZTCIOfT#}sg+$`*S4PW1hmrO3^Y6J^`qR?7e~A2hQr%ARbKm1f zua6$HxY;V$2_1GNKf`s`I(l_=8HAWVirz~RW#3VFHg{n$Dn|6*EPr9Q+*Eea5lKeT z@V}N8MQ!4gG_l)$>$eVu!y6hdzdL`0tjDk(uIc&tox;c|7^qh9$;eRG<=HI1u{wV3 z!?7lIcm$5PGT&Fi;+OZz7$Gs%e*JYc%oHe#{SD*4FtH?kb`h)jTE@TOc8t=S@##6Y zkKP((n^bwm;M3de4kJLMT5x=KRjT+|=|1D?TT}$Dl3vWO(_gy;qT%{1-J|ckd(Xle z_Gh3(qVf-A*DwK<>09}S_|{@oftSp$l_7kEa1J%-S%;}a-@vDxtD?hWutV0}UuDe6 zbI|*vPZH%Bg(%|4T%63a+Z@Tef{`ob-IFBDt{}XM&yeEpRWIprH)`HSEfOdot=o%M z+^ujQY<{kckn{CN25)IRiXT}j`to4v)2%Pw=skoiJybbyZt0`nnx+N?qDU&|X|?SL zFYlxjC2_(uqy3YW4J-7tC-Z?AXfF=GEY!E;?4zh~$((-4WsG$HN@ z(K{Y@zePCUe5b>Qo$*jk7>{?Fw6q7S0y@&JOr|hU7ZP~WU0V2Zev!1!Y`#vstItUl;pNs1 z&f8XV2SgrIT(#TKr(yFg1?LnEBv0UrCYK8}?8n)8*W;-ve?$9v?n!5>X%pwx@W|1%=OY6QYJY>%Hm`joH+P=FU^Y&BuM14P| z0RnC9x%9?cyxo86Am5EZ%IYz*Z|G?H1;WIrcI79DcHr#@C8g*>Fx~cn5LKsA2{f-Z zSF%1A?v^`80#>0;_w@0JS-0;k2UIWb-bpYB{|aO05Xb^hy{$?difH(X=s#8yb+H}o z%_5`amCea0XY-FJQD#%|TiF$29AYj#XXOz2n;7C`&3lucKxjyt(Ri^w9|Lr^aiw+9 zh|fr&&L@?pYw4=jvqZr;&8sq%$nzK`o7cPw?Jj@{p(Qx?6B3txeKW9|lIWHrnnT~@ z!dN}dGXW)gN4|>9TV}F6{&{#kdu2Y-r9cO5Epl9H^8W0r@g)%7(}hR#+$?Q)!;<*~p1 zFBXzewtL2e<6t%gY$C5K2l9b{d8+9jaL;agh~tZ>@4`8e9jQHHN6M35s#}>|88*>6 zF)MtgwlXG_inS|5SEokwoX~9(Q53}6WAL0P?3>ytZg4SiglU(;)*`>tkMna(XBeB} z(M+%N!^fugg;x}WrYaa}UvGZ%(0f(nH4g{lCLy-x1;4ztjQJ&K~R!CfbWLxJC48n6Fx3^x?ILjXh38bp`8+9U6c21+8QovdU=rTRq{nL zhMSasywAVM;$pkv<+`iou2K#kDQ^Ou&Ec zeu5PU?Pv5NPf&gRMPaW<t+8jc2yD*OzTVzbIzkFG{>Z39oM19K5(soC|Jq~O-q8$mX`_-tVv z=rbb?)56cB)8hb@gjQZ$d2Mdb_?NkH4* zbp^|KY^0RXFk)e}kpEe4`36~yCBMf-<$a3)Ujf-FtlAC=z332YO5a-XtDr^Flil%c z8SIOUguVY@i~dwr*pJfowBKp1C-%66wmG)H#x0@{ZGRaa;w9l%{;{OPpBOwUKAq1K zFEabm0x`xY`q=RG(T=>yiMOUXX+Vyf2SwHfl%Qd_BO7IXyRCkDAOpjqU-K0`EQvLW z6>K9b4x?yIt%gv8g`DSC& zArz_xs-aOO_VT_GQTNq3*n6%~SI`gHVZhM)q9ICz6@a{%0_O1wZLc&QdxPB432bj4 zfKsD(t%*Wvc(7*B!Eq6#lbF%)tif+-_f~zn(3?VkyF-52@)vd6>y}!bv>kSWbom~Y zI)E1CZAheT(g_5OhIIemz)fJ;Ukf*dFXcg#6cm*;X6`4T@wNn3*E> zF^J1$Hx|CF=3m$_bBFIvREJp^OD6e^IA@Pwf{TEY#4j4CzkQ&8+h@RkoW?ghO+mUYs5uVgZq`f`~EYPL2s$&I97-7#aChaK`0?T^_;kIxrqHTf+mNY zoLmFyT%;&+y%+FY*bzVek@IQXS!R!@;Eoi0uIc0Ms-&T-i(}Z(1Uh_IKEFB8+`>i1 zHDGo)x75!ubUt;`ZtqKW@wQ8LmG;L4*v>A%JNW)z*$9uMmKjZ5Dn|r)wfQUH2*S9h z#BNjeKwabVJd63x_=#=pt{hS;h;?=l2KnLS5PIDadMAOsmco5?osWVuVZUR@6s&jV z;}R8m_?J-UCw#G>4(sD?q@i$ik1Zu6vb=wZYeo^SSSw&xP9dZ$>M4WQPh8`v&k^#r zFvLwisgs2j{|9_|;)yf=nWFF&j!-P+cN^NO;`LWe7u*r$;=o}4V%mFAFwT--b`XU+5|Ehg0m-_ z6d*32Pvd$}xd-mJ#NJ52(p%j#)C5ZYuuCqy-CI{P^c>zq_=S}V@HYh-`~YH5`qO8s zhRmC}jO_e(g|1}u@K5mk&YaRI*Xb$v`Dn(z#l263VBdKq zAj$RRpGXqKSvIM754B+CPma9XM668Eqm-VnlQ~&^{Hun?fjsk1v~-OGZpm0iwJnjU z(6T*|D5aZ~!0}w_Zlzc1AvL5UUW-`(-GBu;FtGF{r*%3U#+BL zoB?Qsj+c^12kq`8pJ~{gGTQS5J}G>O-e!`r0UwaU}XXxwo6=nSn769`D zT^-mji-~lZ(71@G!ppC%_fC~(1EycHi5##@nl*iv&0|MK&r6og_9e5)8Fo*JbPZeu z7YT(l^M#P)tbbr$AhT=a+T;uAUK>90G9f-ll;Ck%7-2+8TPP&3zIzznep1|xS;4OJ z2*pG8C&v^th#dAQA|d=k)AR)E1=lpF*5Wv*@hu@$xrE9wFv@?7`r|qKaB}ZDnaMUW zMo$|7?29nPxVO6~ofgW(R(tig2Z4Sbcg@>H&q4~a$f~z3dGnpK+D>zVrIktS?=-=m zWQu=yZ^vZQt;vRc3~cq=BfT%9?s}aXictIR#9!ZPf&u!8~rBI`cE%!~zB1d4r^lmaj){L4m?DPH?1^0gbB+I@9uU}2i~i6)t7aZqM|XVyUd_{ZS=cE2ww z0VkN=$DLNK{C!_j`|1!u*>O5W$s2$v!($P`TuKeN$;1K>9%0>jpY#7pzkFLVcX&__N_Fjl*;@wgXM!PB!fm=9W? z>6~P0ON&FtQsFwhsbeW<5=BmHHk6Z36pD{;& ziSpa;Rl)kHjoFS3`%`3fopt=kJqnf6@^frhF&-~futex2;}zza8(oK$h2gO3$6>M* z)c)+wYwf3a3#I9W4h`eOp2|qR?|o`(;K6#(+9AIc*=l@N$BX7>C+I~G{f(8sKjF4fXx|pRD8VR&%iZ`PE8g32r>D#=EJi5N1ITu$Dn*6mL@D9 z^`^Dc3-_}qdtc#Ezqj$tsl4N_cNMOWAbY%rWgSW=tI00pQE}YyDIn@ZJtcyPh_o?f zV9V8tMsp9)-k4Fp>o$Mo?)*2him&aFDeWxZCXDXuoa)hC{*<_2+GO13h=4p?hOJT= z+VFLoGyiKOSNYk#uaK-9%Y!IiYfC=gvZOzsFZ@29!dv{=E6CHKExukgn>)ALeh2yf zyk}7U2t>&m$pEYG?p)%N^q!s2rskLll&xba=n@! zg8HI@I`($a46-ED=28Fdy1d`f&!ta`?WrtR?HNfC^h+;F1mDpD(X+>z3eg5Jtd3a~ z5slPCV*%-V6$o-1&cgwaGq$N8m(*~x0g=Sao5%m-<^t{yCU~2H==qo zWeHlNM|-TJW&MXO*|$Pnsy(E}jC}CQmy{k?~raX;X8bZKjxFXe2h;$${2uJi#1(hA70{EED9gQI^Q%U z+vqI5o|YFo7Sic}iqn0*D!EYKh1iDe)*jtImm>*%=I6r;%8Yky7Iw;F&&^TynP?Sqfu5Q`}1mDJ0#o$}AbSJG{0837~@{S-v| zcjk&|5~o;LwYpoq`zjxe=N>j6i07a4fo++r>|~oZ4!YWD-47nGp1$Zy7uX=kjN@=V zW@j{EMI*BNhs!FFeJn2BevD*GhL`qWLcw0glN!|pk# zWKdc9roXIt!)055$0>kqaJbvgL4jx#hUnZr{X?J(?}BD6{~0dc=bJ)8%=Xn~STB)K z3r9CCH>1BLYgO*IMRZA~f&&FA@fHlXy*h#c$J4V@2&}@0ji<1~? z>{wrWcq7C-^}ykf(&E~ORlS~uk-J^lMY3zn@ zqeizo!T?-f6PUu`mCn9KRzEkk%y$pp1k-|^zBHxsEf7}1mq0>|csSS^n~o-rz*;?M zF`3)ngd%B#o#7bt*vt4` z^L4v2Sesq1v*tadt0L`rriABRe5pS7miEn4xf_>o)BLKg=lVPE+q81e50HuE;0(Mir>3R9-7-I1CFXAOD6`%*n+f81 zCVt8NTm2%ugVYIAJmZ>ZL6{3x6<<7?G+93u6C>*N4cArMbMeJqCv|?F#`A%$3gsA{ zPmhEC>BUPp&8P_AWmGyMJBEeECw#%(@{g>-?n61@o>hRZ8i*NpbsdpgQuMJ;>9)&uNQOeocys2r63-( zZ_OV077i$ZU89!S6)(84%suDT0RMxBTSE_GW&Jzd9+--vO5=AohE~AJuCbT(JH#Y@ z`=L|!obikNzWmBU_~?=0m(nlWFLfwPZvA@+D-*sS?c0UUoA+ zy*?VXE;^&X7>;t;i%S%F4xu7LgOrcUiD)n_>hsUoXEDg2gd&cEppny~G8HkJ=4wBI zWw=02%EuCZSlz)rfA&{*`|^G8@!P19&|a%wD7|gvEh+rtjjIpiLK}i0T%ya%@VM73 zDyk_|Uz2w7!!hWk$7BJ#{9c-0Q=`lCYkvnwm^()vV_90y3AzKfD}F6yK3Z~nST=%) z=rJR~2f(no`mW2S-O)ttiwv>jI90pyZhRcT0saX3xFl&Kg-UwNejC|nOEdM6XTo-c zWa45;P<1I!bF7#Ce%1T?OHI4@ntd1eQGtotQndZ);=J3FknP8!kh@KNb}hPEWbPfz zob#NpzuHAMfA)|0wGQ{4Oq_|L9lKRq#bP!scC9N9rtzj%}Ty zNrI@@f(&0GX*)iU$cO%kFGQ5&W20Hl!Q%&xrgMb0I~ZR( zc&pcEQ5-za17tpmFyK*bUQVgf<0n!4Gwi^0J0`Cs{6?6MLHRJqPaQC>G&>CjWe%WlrqXyCM}@$u3jnWB6$*E+`g~s zAMW>kM-#%kuOjc8=6g7N9rkYDK07dSk9%Gzxy*ZB6<>aQPHhn8=H!C0r_)V;+1-ZP z(@&tDZ_aSsn_nT?zL3YS>YP1MSV_sI9wwyDq zZygvr6tndS;Crf5fqkJ9D>{3)9wUz9OxNLHOv3qN(l1laQ1be21#ts^$X0Z7g*_rD zGwr_WT+^ffG<{RmzE2H0>eT$qKi~K;x@`1-l+qZ?-ja`#^5EIadFJm>%5Y|P{fUo)Wa}V_hZMVE$ z>h#9sU!ngn=becvMU~pnuixbj9t8TeOH>S}5yB^6+wJWA>+`)YHCRy4qdd6%LlP>u zxM@y&-b!7~so?!2(RZhB85B9nHcGqUWPSX*^X$#6yR5;vO1}X-Ag_K#oX_QsrFTZn*t_YnSCh2l@90~ZhxwCdGeJDx|FLL ze2Fgyt`yjkgqY7hF%(6b)KEa}m#dQO3gO~McRHr_A@U$Y1_9o>Z!^+<1y9JzCSz-$ zCx4QY%l-EC2H)i68`Ld%y7CQV>00liDuXN0&-aaF!tEBa{i*u|R(v`xUZR`sfPDkf1!9>@H!Xt(P8&g|?C!KxoA5v}DAqA8cd` zEni-NM4qiXvOtj6+6t6ayc9oFhy_m49qImg#KcI>&4vN5NA{2|1A06v`%sAn;;k&-O6iO8PH_a46crR@uA3v|nyK1keFtqTwa<{ptvj7FM zEu6})DRH0nyMOLwTIg#1!l)@?mNsYY2rudS!$G?T=*pwN(Arka&&u(oB`F4o@21b?j_{RziLc9% zs^q~Y=d4}j5$==Ur!F)*u1-el zeDnn2w75aNZ!aGG#Nev;8wO*d;2u?O6DRz=LgjwhE}@(pXDi!1P9&)cKhE)p2BV0g zaFKtYUrCK^qC5|Q)qZ5tHg{5&KI`wd3$$@^Ulg>jMBok6iE2 zFZ1%pMYa0X6IksTL^*Q(C&YOA;!MN?J3K5w`ib43zWicGg=oJ6F$$>{%}Tt-8<*AD zBcd5B@81_bI!3@vBCEz&ha@D;G0X9fp3=jBdczHlO4U`QK85Ksgk6_z^j-R1S; zIEFH}rzr6pBD>L?vcc9MA*`itPE(6XcgTedVAw6aTtq=gh7%$6uIivSWn` zvxgf}{0k7yO59W2bs|JrR{pGEcosxjbBo)fQl1squvd{A z!rxoSCEjAs8tIC$N{O$8Y5>;0-Dh6WukwO^hy0GO+aqM^YH%{1M3OpIuAq>2C51@X z7yv%aZg*?ipi3nSppE-WCr#P`-j$!FItfi=NDfc$llzSFXzfCR%wS=O%mB{=hPlqz zJxh&W+Qn6o7t(_t1|Go)E-!pct;;anM<`_3mB5DqVBnVACG&PBP39|fR z6lPy6(91LRV6qS2+!z-bs<6%?Un9(NHz?3^Fd?tfH5r-g!%BWR+f~QEt7?-^Q_ZvXniu19YMZdJ>m2ECl0fkhqPH3^~8gYx3f zre9Bny)i9^^I2~OfGia()3v1q`80$Gy7z1X4-Kc&l|wm3DnaF4$clboEyCCCXcttr zU*SQZb%R?ne;oAoe#tRYW0#)9lKqffwJ(2#PEu+6ZGA)P7-8kB@||jqrNwQ5I7M1S z0DfPt4ko?uK37Z+$Yk}q0DG*R{KSRd8&G97;vY$@bnV4(R}kAAzu#2K&8;5gvq|Mv%hY=?i$s7H7&u`Ao)%WA*I5 zf8U9wO7Yx?)C{rE@c6EnO&BpVp_|uTF%daY^hULUh5F3dg{?PGz)RW;X2q!2Ng04J zaLz-Dl&MTn2q+@ zF3-*0UoyN%tlliJ70_~d%zLr<;-o+Dw4px??Prpf$Y8%t2I1Z{U#NLvRM9qo0mzZI zkZrQU`@rJ)=Ah;&s^mT!NRvvBhiBhU_KEf$2Gq=-h zHsv?}uo*wV+{@Lmd_tju9GmQL)`?|w$=Q+De)XN}&$eT%h*CXn)S5LfzkW`(8)wq} z>S5XPj!RoUJf-B$(am!H+;6%WD{XIV>|kbBF0iUg{Jy}_Z_6P*xaTeuju)6HeKg&g ze1&}k9O<%E?g7{-p37=Z{T=+$C<+qb%;Y(zf1(NFg_(Ngnqv+g0DUj`Y5TdC?nH9x ze#9wq2>ISmNA8GxO_RM-df{2IxFaw7L{A%fiiS7uRi0~hcnfq>3cBD9C5N0{gAc58 zN*23Fk786fPMu`JosPrpp|8L83vXa8-J=EP zFq4u_sfa_HRmJQs{W|C}8=X;n3+g)=l;H_IDBj;sU0G+5rJ%DBE5)nq&;i}IYe|5E z`qGkZ6P-uL;^?TD4~M-FhMzQiF2+knU$r=u%3r^}ou6iW_>R;@UK|=|@@% zN7%jG5AAy^;fS%or;h2cq)I3z!Br8Tb3`j6%r~3fv+G&`;A@cf8#2FU?2pm}qC7G^?kPgW z=}rFejHkOyPx>j8#M?$|HAtLkvV1_4bvNEYz1Ukq?ewA)KpKYT(OdsWIQVs_sffI>uY*19CtqlFfvVsNi|pT3 z5TYuD0pUtlh22^LaKLug_DuZRI4Bm_+t9;N%n)6ELhI!s^Q{8y`muXD{7fveR0#_{`{9O#BW)QLn_0c@xsk9mD393(*=J{Ic`|6~GNm&%_K4*N{sQ$Oo^ibOZO zROB`tV2-_1XCsFNk*WXk!|$DM^JEz?yt)>Tfl=5(_PNvWE#>D|KR{6GZ(jEHG(nTb z;&;UouMt~8%2DT!f4hF|cR67hnAC)%9p|x%8hM4EiCWb>?fs@|>ZjlJ9p%?U5oN-# zKlaCBG=>>Z`bCz{>KF9MJ6SmGW#QmB5JCaAdBi@gqIZIKs)2!?gE9}0c~3q0+s2NI z`b%lQP@S*YhtFKBcDch22NJZZhpDX`>s>EGZ6t5@ z;D_=#?NYSM+$lo_lhl6%uuLg}weD4Y>0Nb;y6WG4o@&R*}~79A3#nvB|` zQu~HhlWBdT!P49tHKY%dwxneslkv6*Qu$>ymrMK5SNwwb{aPYF5-i7!Exfz0OIb^W zFIq{S>IWk6-iMRA6buT!2sq@cwv3Zbb0w`mr2AE*Xme^%1Ckz{Gw=nevu8bt{99#w z9@0V-(?asGGAes)1rXlo*1uN}?U93a)7--a#7TF-gw;g340nX_Z~KbBAHGtu&!kWdp_ONL|9?}jeJt09Ers+&|DOK zZvk7J?@KCgrDCqbau&6alaimm?E`}kJidbHRLtJh_2US)K}tAM+An>_IY^!Oj-~SO zqOsu?wj*a0z5ghCq716~N)F{`U%A)I)IYLvdfrB4SWiE*ypXR*&G?$Q9Pc6r>(Lu* zbkxVisBwOo;?B_I5cHrMccJDq+Ifla@-z?_B*hAy!IUkx zbVkeJtAK+gYM0rqn`%1=d$JJv1KAYd?Bg-gKqXsUB63IV-d?z}pt}r#_uHWQgCM+5 z#2x#Qf*W{gO`0$7K&QS5!{ILc2|kh&IEBa}Ldkh3b1=1sd!9Qeh+nH03~ZX^uCivh zlv7=-Jv34<*)4a(U=`^hP)Z0FYg2XbH3g9Gf z9$&?mGe_ckl8~A~(55MCYbQc^C_zNZ2I2C2Fz_1ozWe#0nf&d0aVQ)TS+>g*o`W!? zqynJoYV4};3e9ak+Z19pR>20>xpH9EbT7caQ$))>g2WnYqBT2#Hkt{;Pe9oT=xZ(>TpM9~z@3S$bnPPJKfTb1ofQ zxy?*e`9`E1Z^hG*7}}+Zi-{Nz<3i)tv+-`m=ev22SUWVoL~EC_FNm^a+3!pj2-PDk z_Q&l5cb8>LFTEp?GwJlx?fF6FEu*7a0n0~OtRP2g@T(ROYH8Lh(6jROmmC=UuWGlB zS%Mxg;dj0qfvAjxqL=JxXY=_}T4*yU*ow4P->#>&7Z2e+VXr#7-*v90p10L4Ue<4r zs@MH^Kd)iGM|524HqU*md&nwtDyBB}df|Qrm=BQ{KLqzoH7**?Jm-01G>wJpm~T&w zI*Xubyo1Y;g0o5CBf`6koH|yJ+h7@{EOt%K<(t5kOKQ^7rP`-3wDj4H0zyweG4Wp0 z3p%$AV6TKlxY|1I@viih5r*4*y7-SfND_EW6na?5{DYn=U{APSs1g zfb1qPWJEGY{17)ujMx9DH6Ag=#DZ$F+mwFA9R zeZHwLZ4f@nt>I87Rv8&>9!GdN5Hw(cWQ9Eyj>qf!?bE&o#e;{fQJL>GE!2Hv0LZU= z+;dIAm0}Mr@YD2obg-&XdS5gUL2z)JwSP?!-|{kifBKPrZKnpW{IEZ(Sn}lfSlW*$ z$!f-3+k`;w>yx~PZpq@xaHcLBL7e@4=RSI*67_TLQo~ZknJf|5-mj2|Q_l0L^;CzE zUe)(tJ60GQe)>AlFOdZYIP>G zd;PxLtJ9u%Y*4&CC->~;;U<>44ec2(BeK7=pJjXc+rD|l%Z`tIH*#FR=h(V_5eR! zn9B|uc}GS|`;vNliHsvZqo#%9#|X3arV*(XEwQtH=2wGj|rV;S!=c6Ch zSFZ-;&uKJVsYV_+7K0Bh%alE6DSlGz)m3TPVqy3c5|V=#^pC00$#A9ncNf@O2|i=2OB5_UlRNCq}pKYtOv>hQ?y{iKrS2ebo1l2x$SK-Ct{L zTsAa&jCI@|DSa9qK&Y2Jw0=kS^6LIvNy6ZmrGC7}DmAZf!m>xL28?hl=H=gPm3JAXj3UAEYsuk3y5SZciNCX=j;~hHJe70` zO$S=}d_-F@Q>NR|**8VVw8@GIP+eYQs=M1g3FjL$AH#OUS1)*y_*}oe$B#2Lmdg1eH7r&dr4WKGPPB>fX zQ9lUWfZI)8n*3zQBsKG`F2 zL{I5^mw4oSSoRP3{{w z&FW#HXm!Q9sGX0>y`9Y2cuf8;GoC6*oTNR5efq+PQd4vM?0JWT((U9Ia9=#@V`VWR zEH8wM`BA$5CbFz~1t+k7J;sca1OFmH7-kk)vpSEi51(<8(S6Xa37{fm09&0%KBlcz zQ(xx2)!@HfWQN9vWJUDT9=USPPpi$;)WQ=Z+R1~5=v^uM0mqt~5%|jeq#?+E$%k+`E7avS>BKPi~!dEm54P z49?QE=7gR6G31I~KhS|0*I9aX_owyRx_<`ftNAUiUqGEP!O1jwPe8QlgpG=s$K!XZ zP2k!KF?fXIsNB?7`E%p9WekeVXI2|+BZ=8xW500ueLpsP5~~cyhRBQh_$K!oj|`RD zmH*M>@ObMkcU2@aKR$IC%OXvAx_;P*tct8s_!pg+7$amo5B;tREMODH~Q!y8C8 zf%dlj?UN5!_dUH2#k9=j!W-Y9FvPtj_gjbarprqHh)$6g0SGb({%oN)*wNc57p`Ck%P;< zo`HH(sPCZ)8YsiH;N|^^d?Eb9Pa-(Wkouzc^W)rZ zeGMDYjQ@O)b@+p|;~CKkCxd$O%ghSIVCMNI4~N49QJv0TTYJO{Qj^@nME}`5ZimlQ zU2NsgN321h)yMDg6!6V?}XL|5H zn0C7qrRnx^o%Ruy1D|rM_4OM*Bd!qN>wz{?SU8N<5q72ddf0-jUT0H&$BzD+p+sf< z?cAz=Jar2?DbC&>_z`ZtmJhJ-_=z;$^!}(nNCA_e_RiCO8Nr|$N__JuI;S5m^Nuin zUxA5k?|;?2MAmXN;L#xk)1 z<-HX^FCYkVbhxdm)F+>Y5Quq7&s2XVKetdhwb%zifak4>DDcAL#6!n)^A!{drh5uT zRiT^d=OjD5lXn(WDtPs5s0x4M!(xAC^msfrK0I#KfhMp zwr_9841%qFQ9>$pKnR9>G->^S#Gh*3Jj+NY*5RpLrFVKiRTH@-WlZNza3@x->Gzo+ zHRt?kevUdJ6c~;emaNVsg7UP?NIy4bo#b1c|`>&uz|=8x)3%O@wH0GeqbeeGT76@6isXz{dc`AS9RBD13%MH)7!L>SLh=4 zwOuOd2Oz&Ad)WqOHm2c?bnSRB9TY2agoPN(D=2Hn^liayNB62Wfdzg zHRzvPLlb?|Wk5O)_|l~k9k!SH-YWTenht)-S}-P;VykXqE4pfeWb^iDE}I*S&U;@9 zESTAN2a4GDBk_|v(#2svPb%3Cv3}$=XsRC_Ks&YH{opzEJm}cGn|lbZs6F}T=!6ap z9Ow<8{rusg!`A3u{dPusAi=;=9ux|E7;`^@ ze)F$;5TLDhx!);;{d;AQmM@_p$Y<&vi8?K%XkM+)8saTZET18bp#n-XN+Ey^%M+j^ z+ld<%E2^gzhl;R^6JRdCu}WhHL%H73s3z*_otDJ7Obe^%nzHyoU9z6z*Lk1F;w|Xj zyn1C%RIWmrT=s~S(X?o+Ay#Yy!ljks;N;mpq; zXiu$_P#e%`-2AdaJ?1j^Nv#J?6W{w$;qvFLABDUzKG^NiglOBF(n7O~4UM7QBik3= zI+okPHbuKXIh?LeTv4GqWM=+s^$&6QN`i-q8*%?Tg5rZ zU2q3V8&MmqxhHG0H#u629?pX|`PhVbsf(~%cnzodE2cCl&IR)<>IZV5V4d_t<0@4r?sRev|6M;pBo&ygGB6tXGYa zTZ3N&m_@RLDs`$9%bY$PIbExs^5V5TmrmGcJb0px08RMxqW($v)3%W1M|yb^_+fPj zYjm|CF2UEb0;ujXQ2M&h{x+A zSpVGr7KeJJA<%tEvmq`i{hvZ#7SEu=Cx4;2YVdmD)s7VQU7G(EKzen`=B_|-Y-S%% z9+7N(lx6Wb+OnwU(p)PyE^m3k*11oA7GLiDM|^CJWr>gad&alEIxD!psu~FO;ccG| zqbTO=9f`y7<^dO~gY|p#E!BNIyGh-97PaU+x?b)2+#Nj#XLxQ2_Fih#{#=~VqqV`b zcM^~A0t?2{22VlfpFkf@W_H)q%MH#}lsx9v(L5Qm?HT6|eNi%HJFH24(B5(bi|%`9 zucz5woVs|WJT}pl_ZA3Ey>9zh?|=1x>~Abb0Plw;l4BZk+s;dCH4BWVYb8&6jx1B% zJVdYVV4SFTzvl$>c)hdpRgxRRl{U1RO3XYp7=rC1O zZ~LHr3EjJg*HaQr0F^V|E>@C!&XIU13yjpW>d)?cEr}|Bd}U?Pc!G!;Mm5u<0qz>3 z&-B~A)*#WyF4TReM|XS@{RGG52M)LPP4%)kx1|2wp z-8XX2Wrmt zp@dI8@7JD#ff42zvqwXvDPB0tDsOoNdT_n&;nUx$ofR9@fUWzt!yO*;C;5u83|UGa zmPz^IKc`n6iON;KB5`>blfz%}>yrUuswQGto@!k2wC*RZunZN3bUsP9`h;*u^CcCX zu6wtEMm}#)d-e4#HtY8N<>-!~Rqw8z)InN>!=BqDiyEIH0Iusm=~E6#u0MV=V^nJ85zEZ_u>;f^BO z%bson{LbUM>F-g2f!(eKh;oO}E;+o7&zt`2NI;DZk{}OVjs}`)&f7zRpHccp2!~U= z{z?O7XY)m6cEU$zjnnqq6g;l$vALgClk}mR_Wpp5iPjdwT?6--zD~f|*eF^(e0RUY zuX?vgkhHWoeQswtKHBG>T%uQj)b5ooDuY4K*nsy+v% z*271)+I|>A>#gc7a;v2xWRlFH-xrCmX8f~X70$z;wnwS$!@wUEwmRlaF@mVqD8c5^~Ft; zxhy6+fMw7qfNl`Xp$Vunz}ru{U$p~Qdbf+xZajHaa3YQWT+G3b`_n;4w&=|Y#~Qj^ z6fIQjE3?w?kvqT>{+dKNrLK!HL4?0=tWJhOhIA4Ti#iiS;j=KCW?yL&?D{QSo=9(2 zBEYAz8-231zb(l)OamB6S5;1e_KY)VwHKWMnD%cawy)d3qP9~KGQCeMSI?3JoA5Gc zaQ2Dv4SZ01+IMy@HgryK*rAG`MIJE+5Jh@g&kK7F*!4Pr3s4`PT178TmIO6 zj-Ck~HssIp?ZYjEZyCbs#54OJT{KA(D?S4FhmvoV7F9Cbzs~#mX~S`BGZ08E8WRgu8&TBzR`Jt zCU#ATGQ(|12|fgW8$(F`R3kL)1nzxTPMrDXrT-SyT=01wiERA-xp3!>KWA?CQQjxP zkS!fgZmW?ctB}8C2Rd&K%f5(7YdpIr{)DLvqxH{bfOVoTpfu#G$RsE^9LN1rZ1X4L zLLnAr<{|))k}{N~S5G%%6@zKt&EgN4ITRtAwym#j`LVyfS+d7{IZL3`tk}6i-O@^$ zd0UQpaQNW!-pAQ|mM>XAv)tsR=)FY}$vr35*HUm6x=0=E|fW5WTi7Ul$PznR~VY~A71=3##nlv(&Z9>*~``Jn-2tcGrS-nqug z3^SFXu1M@`KG-j^e*sAfgpXAhaGkiiMG!Ne5yFFbMzI_sggseKtbIb5MssK6AI^Uj zR)uq&AiPYK${r<2DVS4Wd`gwP(=aWP*=4BRIVUE4kFi46S}UlnN4@#G2<$#JDHk-@3$Jum9uo5{e`NvVg4~=Q z8Ei?j?R#}cAx$sG?HvmivMu{uhUq!t9rXGTg}D8)IerDftFYdvbLsvO!q|0RXN!Fz z-kY=;VAVe7_O&5MkQP)fr=%L%_>`DpROtijVFHnW*S~Dlh57J)KFQ>FgL4vDLU`>) zL_EMbbYkrTrzos{Zv|&*UNMf2tlSoiUpR>9ujT=aj8_;R=PjWCBJV)5H-8Gl)J`wU z{9-@s$!{i(`!vG`0N#h%Fo!&kFAw&2a9;hzKmAZ|H%6wQbV-~^U1A`)|82^Hehr^( zJ8l(y0kRbuGjmfum3j7VsX|Bbs;SN=mZ<9PsAbY{^3D9Zy!wP@3FnAEJfiSz+}g$k z^(o_?Qk?|_hd!X&ODqoJ0eTWarz#*f2z(lkcN|jwb65?)WlhY-2Y#O*cF%SxB=f9$ zQJ$9|lZTEgBuolx9}1gY{yAi1wUm&Yo556P&yD5l@qNEz4ltCfV)-NHR;?+6%LEJf zgQ2+4-+uV}0S~7%#ymC?AK4#|?UCn0T`8Zl^yeGPyt0D3o?d9R6fZ-vYds40ye9iZ9;+rzn$qWJj+9+w+``4m?0$;YIE1zBhov6 zbU@NtzsL1YMl#IpyjNV1*U#s#eNpY^61*OX?P2lSm}T2gc1fPx^EDZ+Teh%8v7;eA zwYSE(em(;kqFQTShmN|~;?1?C=uMu}G|%6HwKQH=R$~+pb1J=fvIn@<+I&q7Kz?L@`f4fzHtCr&I=P@ zVuLf<@C+monjD-m+&&t0j$a*rE@f{$R7k0qIx1&p`BA6y?EnWE9q`b^nk6JZOSD?| zPc7f)zXy3u_a~n-4u6osuke9pqIacwUo8eq@i_{5+lpCVQe~0X_-%KikzBJ2x+%>z z?ryEZFBG#|oG`;}T$&9|f|KeaFk^cHeMZ2<3fzLx;KY&Vwn@^zl$(CHV+GzmCbRH506J8(Dl}wHVYM z3v;t4Qy<(PY1=|b$0=Cc>+_blL;|92Z55?(&&QHtbBv3^ONF)UIjcBt)ZmE$o@9xe zvT-ZLI3qT1*v(cnDh%}fu4uVWBi>I~Btu@m;Jo}^dyehWZrXs}(BCgZryxE3SecB! zeoj+&=G>r0v0#2=UA zQ^Qij%s0@QvmUc5ys_UV3|R*nrVk8H)}lHw&&;}h6Mvesfw>!=p3&gjzI~9*!;^8T zXrZf!hyo@Jb%5i(KO`2|QRe6Iiw{4F1(QAC5yLyWxrgPpdt9qF4AElXcK#dUErO=b zZBB;J5N;p7?S)#|XUTn`EQzglXI-`-P+r-yCGc^c&IvgWIvnU+Ci+$%sqvJ_E ztY8O9RTD6;pI1DNM|lqdiG59r;G(cyH@cuHY9V0Xv{VK6BoarZ#8)%{%Vr%OTdJv@ zFSt~>-U9e-;(dL@^_NV+O>tRFtz9I;QCww6HN8B+&QRY^ZCfWtN=+b;fI(`D!q~u1 z?~fo_wDS+4%pR6KEMa#|tV?#^REF6>=rbfU!b?WJ%tKZ!`kPQJbQ?U+4Doz|?T?rJ z$opTed&gYvW4K3mq7SzhaHSD9JdU*btKIO1`BNi23a?rAP3Zngd3g%-cVC^~4C8Wr z+dbhF@H-!;=-VWkm!-;CL#sO}2Fq)o3q)rL(luW{mqWL>lm@^1euHI$RZA>>J!lFg z)B?nH-|h=@P#s+vANuPjYIa8hZe!n&@)-dA*1LUv=bzkgpRf0WOrn{cdbi(Mr1OwSbDphc(vz`1{NCo`0?hANt*m&?v~1WP>M-?RmZT``v_! zi!!JU9G#*EKuL<^eKzE<^Yn@Bc6yJ*d>ID&!h=|`$3R3&iNFY>iQ)}s?#PJv@vno@ zW02C2vW)Ew)LTOhBWMqVQIyrhPYc`k4afzDV}`3JpNm^-2*WjYY5#Q3?2w_A4C#v= z*6lVr%iz0SRb#GoAKNiAdf-c;${E@snZuc#PA9LIs&%-z0B^_-M!rqMk|2d`mc1wE zoS3zxREj-2!q5_@a136IbbEWk+Yy`zn~ziGo*xHg$6sq<+@Rmb+>OunluVsJs9Sz% z%cuQ*gR?pNKj|QtFkaD%NDOM}zIJu1GY_;?;{vaE%hLYfREd9lJ*WHAs~nq5$QZ;E z$gJukbS(HKa6E7Wqz&n(tLNzwA1Ualr7P1h`)>^)1t4mDU1&u@Dv@HUuj;^Ik2`bx zx{pDrGMhCn7?{SYm&>^&&SXpB+^#}r+v#e& zF9Aus-ZGwliDda7*BWRlV;IUgUyH*m-+294A~%l>oXm0EpeyJ|-j{$msHpwHG*Rwg z(Ybw9YWf*uTYnxoq_*a?oVWrVUB^mK(ldI{AJS3v`b1`-N+yWzt^6 z)78AtI35f_7%L&0B>*~6_z8YTa6b>3u*>23c!)2{F%>zSIXrXP^G-+s_247$rEO;S zeEIB$*iUO-M6xE`l0zpYM4#?Kpl&nCViTKQ`16%x;^Apuo@7r6_?-J;8Oi$KYf}`-k7g&F7+0 zdd@%HEgI9p51$1?Jn~=mL{Pfj%4A9rq^kPk)JU-Q-e;^$zHLsxpY<<&i_rywRBm>^ z%?WlXggF%4`9b#z`(&@+cci7U&Mf9vLqFAylotSyO#dzx@ zy|l_c8qYkMY>PovHWKXCWa!bOo0DuCSX} zyA*vpo}oU!1^Pz5FBqQ{mxI`br_a7Z)n@iCwBzmkCA`XeQOsd%eDY1y$JYtC2arKK zxv{Ezqi7l5rKBz=mq6SRHsa+bUfAp0ZN&ksh2N379O7+D+GpZ;my2@!^!({T=9hrS zZoe%;sf91MO2;dq4Sl7+`fZ9|_nHl@ua6S6#y)}Iaw)(U@M{2=`3SAq zvjhK^&gaz0;A<<&-ON3ab{L*}r5fTN_&5fCj7YlHhDeWuqx3iY$a1uwe$oKgqt8ZkT zUa~y+he{V;H7V#Z8M)yp*#oI%MZ2oq2*<2I#5;~}HBL@(m|$L`Gjd+r-p=g$f-cVi zuI+LJD!^tJLUX^p%dUQ^*@fv@!!D40oPk4s!7zMt_iygHC41;#7s?qtkNA^0oZH%H zACrP(xUVzDE9fO}f~Ikv%yy6qGQhU=__@0u`-<6FO4IsEw-H0I&FJouQ;8VhUc0lPmkFg?a*aTcpNnp?(@NZYT62%QUDoD2Cv{> zd)_C2>&nl?zN$VAQDeZr#OqtSkt~?Do(}Dd@2T;BtW&JF=1(X21}07QHTc z`&*Wy#IBgUg7XV`6%=68hfsCPNSMyMrx18Z2b-5ZDFprn{Y*za8hQ}q!9aNR!3qb; zdA<_oeQmqFj)U(+J(&Iw48`WGL*QFOJa?l@`zG;6E(g6yqwlOt+}``tvVv4{mg|?L ziH}7`3?+$J;v{Fi{g*G$Vxw}0?MuAl%gHc7UX#7gl9FoV=6Qc`3@$^^7&vmZ-(XW6 z=N3{49C*6a=dUvR1ePa=Z1TwkY>wUYwD$m&x}jDcmshXt>qHWwxjppf=J@7jr%Ul8 zbb?3vY1HFqjkw*9gw0HnfjRPSGW7Nw$QA!|nJd)N30w&uQKNqtwA!3FW-*?h(41v% z7|BFCqLCEml>-P0I=R)>DgX>W@wyM)G?`$!`=f5w;9BY2+Y zvrRRS_mS4MHmLFUicv|zfxg;pPDi0FemaWvhnW4$K!O?(0B9G6rS6|)Xzu$^e`NWs zF)OIUy&ieGUwj4s`u)579!c0*w_o5?N|HKY1zuLcA&0GAvNY++P?>&wl{h9!!IK_UY#eaoRr$D7( zD&5KrqKESZ5bv%EIJ!Iy8&)BZ-}om;`vM{y$ssh7SAwEa+A3i$a;zM43s%p!V5(~u zKbZ*XTru1`-#eM{23#}#hAiwr4HEp4S=wVA@dc{T_bl)IE4Z#0)s<%kZ6dOVd`oDo zr|=*N5Gu|jj-!I<(KH-b4qxrB zds~|qeF>tDJ^1giIl{3F%xdwwoVyvUZjej$vvgkTWxhRNBzAwbJp?S1s2{*j#PI^n zjowzGEITk#t55AQlu>Ej*FEl26mRUGl)UB=jzA=htAyv+2gY3fD#SU<2G5d|5h>4i zZh!j&jy)ezJX9usvrr8+u^niut(=VfI~?(8rhmHl(*2 z;X%~WK&eV!xlprh31@dOj@^tZ$ionRvryj-#67N_nbO|z+6#zO<10VRNdz>aNpBi@ z4A)-;Q>4whWf*``HyuGSTUfFf6g~q2*@ox(^(f?=E*5Y9Zn2kO#-ZK^6A+W@^!OOZ zH~dTWxF@}al!@SguX;mgIz?xf&pw!1PiTJ1_Q6$Inb#>W5!Wy@yFn`*90`bi{tUO% zk}w7{)E~0f+s?y__lwiFMLpypk*u|(;>D8VTO9D{jitWNaB{tIeLlfOe!JGlKO8!4 z_-;)72K9$@FHhq;tjbMV*N~QaT;jgPSwXi1)aE`{n$HM6bABh6>}CH#X6L-}Iq+AD#rwW^w|~KnU1;PQ-8Yi}bY|zcDa4PliJ;m%k2Ed3rdb zy495XR2}0%9KV3}z#PYIMBP~1D{SaU>&006#Lg{s%JmEi>986h8!26Vh*qvJsrVhg zgKijK??>E@xGe2BtmDQ@B`v)`+1xm1`QX}&Be-v+t-41!GuYRM-M6}@$BX1nL_lto zvYO8(`w^;~O&|@lK5#-vF0&_0()s8{;owd`ne z@cG=LMZc#k9Fn|V4j$V+NcQ0vR1M+w0Mh<$E&5!IgD=JIubTxU-ZG%4b8BP2>}s$a z#Vx)d@?YY2CtHBkcSleOpj-=MsYz$L!YZKgS@XWRMr_4Gd_DKFc*7iURftame;pMy z)$bm$==Dd8HPJ&i^S9$IKtIUvF@*|zX_|BTTN$V-Bloh0=_iG_%@@*)_)QMDqm}2X zH@z|AR5$)Q`E#2x_hnJ?J!zVsYUqtb2-e?6fB|?TOsjermv?kmnb*E%ze;Jqav&o& zrG;PTau%Gl_$E}{Yw^G=oZKSVxUHTxRpG}BD4|o{4mn?!VcN&C0y>%){=zKZzkN|T z?mLmg`EY>Qa7M_)aaii885QpS%EN^zMOH$<=QXF&xxsI|R5(%OpXf^;dOD>)Xpc74 zC#BWRnLqZPl|9cN0h%zn)%NWz73x)1&##Wh3ftXz^}7`Bh@^ki@#|~R-!7beDrCKuC#3r0sl}pA272| zcSAg>w2%VIz?`Ru$5QH+M-e#an}Pbc>ZqD9bM0AHUI2Dzfr=GTt9>z1fZf*W5pJAWI$xZhU8SEbJ_{AB7*VDl&INF*IFsT1QO@LX60OG`f`Qd| zt`&7YO26P5*o*lW2zV}CNAaGlp^l3O z5DPlk4n6eCXSiN-Sb-jdZ}g*+a3mbLCHP-5F$eZ?dZj**B;v;J$3n?FG2#j z)OTE@OalE&{p{)Rq5cg>kNr#XV`v4n8?g`1sp|;?cTixa*4c!Ael<}HlY4P*v{D`vW z9f{`eJqWS)rtU*(C)zpE?Z55{w5D_sSnooH?&19oyU6PB=9B@a6@3Jqq(|f2z)_m! z)C)r*`^8q@&A9U^_3dK42loKJ7W#wV0w&baH@hcp%kSMMHA9od@4?IV7y(TH#~bWU z9Ez;Vnxs#}A#8zbI1qEkiIl%3Boq7>dq|pg;S=rxC?(>l#U*4~<$#~)+ z>*K!LT2ffwF(w$4gyKnQ-_dQgJheFfYCO{Ge(`!})8X`-9p}A^mA1~}_tb%UyGnc6 zw)qyzq*baSBTw4WNzKjRs?8(gtZ`x@l}eTQor$vfEH6ADfau#M%mS*?hvr{Kn2Smr zZ!ecH9Z%UWwyLmGrf~?cQgC-9-Uw)j17bh*Lt+)?t(TfIG(S3~8R|04zw$VMs5V7_ zaEi+S$F`g$8Q$DuMrld5uBl{r;+zQo@KeAyYc!wxxKZTj*fyL>O@h+H$7?}1;NO#t z^fEz<1Z1Dhr+R9C*|;26tsSQOslL3}H4U}^a2T2>az20+8faq`fq_$xne>XnkB0;Q}WqdlplZ$a0=ihB#c>JUJ zDGr&H&;>t8KEIX>2o=oZL#}5gZBrB?iQYo3I41)}EkvmH<1opM=kGrCBQd#+WRz5=E^G&CfD={T1;>BJoNVJu*o zEk(JRFP;c-X&+*I4))U1L>}mU^nAHr{>huLJ$SicTs)0x23L1AuZ3eRvqL=2S>hTiWkl{uMch{ zuUAE~Q|hLUlis|#Qonso5pe^2+#(?lYRC7k|`$yDq88;kID|sVg*k)lGvKV4>6{+j_Y6*mZxxCoUSx-v&ZS~6~&LHd?Vi9 z`9qgF^SK6ZeCHZEUD5J>gxQX)p5tcjZ>eCr-DZh3g=cs*y!py4ME>T1qTzcZw{zUpki9K;pWE&>aP7|HyuKd~ zP0tP&^F9aj`yFL>y}ETD@V_J!mL)&t7~`|G@c%f9=?&6+uP5k}^tfAu>M+D9=!!@1 z9d5;8i!XS?D&VhoQ|?dw7T(mzLrnjBZh?a~-mk#FV@uCwmP*jP_8>esO3-WQ9}pvG zed%X)7vK@ROv9;zHU+*)9sShcmdG_L!kLcGx}G#^nN?RTpY!S9gWenT2*4(3edn~p z-O67gB8{Rs4wAN4>Yy*@du3f^+qPRndrqJ2rFkC24F+-g9P2w42cb8|`Y%~m{k8EV zrxEQ#@7(-N5SwKK{W32<<*m~PP-&o(712lBJmw^?+^BPCKNd+614q(0>w_8XPHxb? z0G8yyhldUNGw=mc76`s8dOwo_!!Sjm4Du7K}o8wh@i62n# z2C{wGc!La~V5#izAT)mH-sSOl^|9a;nQLk2hkadnM;!Y)`rPi{I?2Kjswr|Butwk= z^%|ugufV_l`jF%TWy@FfGFIO8sJtKJHs{^QiDE|I7h)+uBz0KDFI>TLDt6xB!3YH) zVrrUR*B%vS^o4O}&sbMxJpRXrYmR;A*fWvNufr3b40g$N5VryWQ8Y~c(8Zx-LzGk{ z51iv&&4@L%ErUlUx$zzUvjksn%7cEQS6j3RX%H4B2 zz)J1%BEp73#XdSxUon1$X1ydl8Ht>-2DG`6Ge4=cI7gaGOuvcO|=@Y_RtDWK<$m zK7OV4-{3A_5zyKAsi3v!tq~3DJ<%}IINAN_I+rIqtOZ9+!?)m3=QoHti0@zibI-}& zO?+_ssxtF(gSyB`boA7HrVi>lW)nasYgFMmxdxBl2*wVI7w`g1b_l$*usT~tKGXhV z>AJQPRm12jsWiEyN(U7Ixs%?MCLlch*<{XInMq<05&!a)T^NKM%9~c2W191P5J#Ez z%pOCUT$?REEksl>N$-&Iy|xIZBaMg=$V8a3PNhA32? z)yhH6dV>lO1~Jfa<6Hn)JPN;J-=y*M^+Y$oAUvOuHH%zzPT3lH+A<~6n~O@UjxZ~_ z<(pui)iw!=1F&NCRWLh|IGyk7rsGC+f%ZH$XsUO2N;|w704?65td4iF+H*1+rOC3O{zYbNnE z3X0ZK%`OFOF#5sJAdTJX(&^22Sa;74WyxS*1>ON0w9p3Z_IlgHt=j!$D0;k)-=mod zoBp+-iMG?R;mFuEyRZjpAUric(cL+qj*_RMP%rI$4W|<9p)R9HMu+97Fa7T#?lQnU1kmvRvl)@;5lJyVAHY|E zjM1hWkk@|g*Mi4Oc>94p^y9)gUiJ7MkU>?EAHL{g;&N>t)a${@sCy2$J92hyaoThF z*n^CBNB_u10olT{>SxsKs!IG6m(zn_*NU(&cw^XfUb%r5DxJMVTIS$@d#0y*b~;>P zoo2f>d#KFL3%0FkIFHlujDrGJR|*Jgx`Z1K6hU*B((^?Wh0WZ%$m zFOa9uwZj&E8OZ#$tf`ky%ALdHV3zB&FW<Q z%d6yruW{&cE9I|AZQkcwD8@t7w0&xHoz1))iKc4nbes3vE!8IzsOeGIRp0H10_<13h;@9r}8p; z?qU|_FHrWab9)phSR*feB*`GXHt#J1;-j8K*yO?y!8TEYVEUhNwZ?OQwmM(W)$slJ zBA4KapYdTD=s-A)RVf{DSA#uZ7~rEua!dElf8S)Ehva;QFmlvs8wg0#g(vsx$pTX%Y@GbB1inpb`07; z{T|z>zw&O_SG^^aPTihy3%!tnRH+yOwd?2ZN~g?dLXP3?Q8 zbdQEs{J?^Q=`!s;1_rfM=K=j7Cz+MeiPr|97MSpd8&uU86m_7vNnT^9-J@4n4e3L> z>zK2HYY(72_oL=R*fDX62?nzXWgYKV(49_nSeS=>{Yh*-pt!h$5bVDG=eKXh_xMqj8Op;SAI|a*?^oN+vJB4f;bzQ-8=vf zwyVy2N;T8=$_)OUYDWjqC!G5}0}V@VO0S<155GSJ8q%0c4Ut%uf_>wD3<-ai4OA9f z7jPxqtlgnvI?iN#Urz*OjZ%rNRxTRhH1%$q3h2f6%Opk|`OOS@hQ2VWMe-hl4_PUy z&yNgs{3kk}oUHH9yn9=CrHhewKrLSq?oQ=dY+Oq{tgl$zE)5Cms|7Ac4hSjvK4nk8%y7MGkHFW&fWt)0$NeFwC!8`e2gTrsPmZN z;wZ6lgj_#%0;Ax3yk5AkY^nxriX;PFLo!dCCvV757~5z6?>ZT&qCE3s$(4%LeB4b@ zpc39&d~0;UV>5p+9MO8hcMXW|XU1h7V!vH%;}ULpkJlDtSYNNnSzMaH=nH~8(C-Vx z{p%Fyv)|cBG9ZvS)F}z@~3b%l#5& zIr;+TaB#J|@r2x#WWIjFAOXXfcoVl*y|M`4YT`F;7F!D~yKiVloFZT1nY=nsM-xi% z5Qf0jI6A>1G=>c&TvgsJSS5^PCU*)hQPu@#vPDZ&76U&Ahf&2p> zPw+fHyo`sxTH3uehZKewft@?+r(u;Igg(@JkWrTsj4w@I-DjS7=e<_e&`9Z)-mI-j zFh%x+kmk$}km7o%toyP<=R)Z(4YEjW?Djg*Kg+zQ=s$hoTpzL|zN1e%?(?^#C9WB} zwl*VPn^ z6sV8u4Ju0|v=N?10BE5Jf6{N?agp#!Ud2)H#W;qiGU_4z!#fqpX@+#Yl70F(#>wz! z-vyw7h|NU~`D2kaPV@Sz_CCwQ^NGa62zQfU@4*bSuLDsbyY5NsD|lucZ=D3I6CC5j z+vyrHCpCa8!s-Wbn&_#4Kl%VFHpq>J&&RRgoAV6s3kCAt6Xu`&@Eo6Pq?-vm&=7qo zwjAf)T*MA^0au*#5V;rM^+oaA-?)pIzpSg%iXor?xEQXF*U#aCvwTi9ca&1~<(7~> zyWi_05r@S2Evo1HUL(Ml|ML~UG9PaG3yWx8shi|HFfTMd+7m%XJ(1Gl)P>~19M--l zH+U%0a3Up3p1LOA_e}Vx*zbytyuS+9iJm8#29sNd&U1Zj^mK-mp7sa6?)~?}cmc1m ziMQr1WdG6FHH>fYjuk7e;RfZs-(7iQ`N3ccw4X0ZD0sKyeJ ze}K_E#=$&05WzgtnRj6pv{~wt-$&mBT?3`K$dGJ=D$fn&SQ(zT@=X?6&hGus>>_1^ zQY*G#Pk-JXKQp=j_A|u+LBTN?lnITNnv-+?=Fv4~yfYHVv8=hW_ksVQCc_cmombjy zHdO7Pf)#glhO7`)IBVd|cv!vU18mq|{wrNuwmlcX8oQko)On=EywoHO59yL+{;)(z z9?Y6vtA%)uZT&df>E}DhWS<0PZHDzJOeGrHJhXit6zMIRK!QB*9F- zmo8T-*P`7YP@8F2_dW=WU@-a1%q*2CF8YsC|4$9q^0Ty;O+tD_{4#phBd zw0?c^0F>2DJJp;hWBWZj^wp)pkROCCBauIG_j&bnWZo_F&I6Dz}G46|-f{unFyq~ctZ5#T7PkY=~f}T$0uh&icbrHaT;ErfOL>2isswfBK zq{A$*c^w+j9OgZjYO{~CkQYfS?@e&CRpP~;v=5a#be<)zy!`qpPj4J03BP0p!|&dF z<%+i7I}?+4V*f`oRO=u}G7$`z#z$ws_6NEqDLD~dD<1evIPlwlJRyQv%P~NiOOF4j z-t&jzN`3S)hPgblBizPtWLET?v&X@IUp)2MIHTD|62TlgXF$0ZKeMWUZ>ZM)J8on5 z2haGof8>sXctHll?`dY7!n-P5Rjn`By*kG^|pNv4CRq}Na; zppW8Z_Mh=#TDom69_u~P=~jR!Q~HC%x~V<8#xcb;EQnIyUdfqA6(@Yf?Ijg{y|pK7 zJz(@h26xg|uT~VnGmtR6K7Sav57s-JchO%N$YuG~)MEtLC2_{kJs&vvLBgL6e|(zG z7u|MbPF*n(Pl9`NaQ8KR3&58+ua_%5H!=*dIc&^7wv|B8vL|HZ;XNQ`4;*&ieEMNt zwxLlyE?Iy9xPUiRSeGF8E0c*lg#O4sFm7%yet z6DZm_X`%bbbk9lA8t(H4SIG8rkED;NKksY)I0ulFSQj!?ZeY_l2B~+{1-@*s(!^=w z8RD0$vFvVW{N>ebw!$s1Qw}rkCbGQKxDpSN{k|FvB#gh`-6ce98I^e=P0n z6InA!QE$-Hqar|x-+J&@$|Sbv5h^3qkYkqQGnc*J;#l3_J#g8F@Lb+>?vnd& z*vI2+oWVsN!BX(?MM5Hz55xyNb`0gPk%P|R+X+JE#FCfE$3Kl0JQH%_7D1eyTf(I~ znKwS8O~HL~4}XmQQipTP!y1OXesO*|5MqjCVT$_cf+pr+Cx6s0-~{#S`dEc*zULd& z*cZK=KfVIq8n;;me@lPzsqWs-p;|boXBt#B|Abb01o`K(UAE_KWa+b`<+-8H?qv^Y zcI2YG5*bzxiV9gW`Fpc~BMs-%aNycoyeW3@L?iV@066rAU~+5qWuKsJSE-W0nllpc zicN$4wzQYuM|`jo6nbf*dN3FC_a);kS3Ym=o%zCXZ+}e|$UvbUM|UvGBK~Pv9OCGm zlTfm`pJsrIszly6i^zTntl4ts0G}hRq2+XoCPBH->D+f2dw7K}D)~KZl8;B$yayCR z34kBsmChe@{wLV947r#FAA0}`vWB!FinOevKG4LSlBF$M31PC*sguq2Uo6 zO0V@qY%qK<&E=|44eL9dj+ZaIc<41d8{WNSIkd&JP*u#{d)_vqvg;4QA zA#t%Bl`mVj+t+m7Jq$k30AIIDvu#4<)YeZ>kj?@qaktH5xQ@Sjax%u-ISw8jH_Y@o ze5v#uMzSK5Jh9sIgMtq^S@(ti5Ur$Acc)0==1+UnVek@=Q{w}sYv!5tB@(B>Afkee zIDHxyUeNE7fWI|L5&LIe?8S!mp6XFQ*nVrh3+DB<=b(5%g+fI*- zqF^+dXWLuo8uH<*UW{P+scl&hi!k~FoP#<4Xjj<|ap3-dCCB$sh_X{>r?D|bbye?> z6q{7!m?|)yD(iK9(9QA!Bw=glgGX`b8cbz;Lgk<7~@5wrA!rOVbwsJ=5#rLIB z*9(6bo9Pgni9RHn$_NhKf&moVCklm|OVo-+_L_+05rF-9a_joLuGhWyMqTdYhdnB= zj;S7rJqCM#Ad>y{shmXxZSb&1{d5Tv9X(h3hsHIM?)?yjc3RdY8pyk!Ay+VhD$iQ% zc2aZaBF+T&ycNvSCs1I%6>{H!`f`ra0kG8fYevU+f9ZW|zuc$Kr`mP`x$GlQ$6(#> zo$&t9NIlVCP&$wMIb??F1s{$NVqwUPJD^|=A%f`O)i7wux+vak3_aw_@=N3QCi)xV z{aXfW(b>uNoEcnyQg&tUG}+bd;k+3ztAH2t zhBL+iHnFw@*ern)q1J&r#b+KOUdXi{naQkUs#a`}z)((j5M{c4(BpB$M#t*Ih{o`F z|2~#YEm5!}x6=RGAVHx7{(PqUOsavFi~t9HrZLQq!;mqA*XzuVL2+mKm;82t%Y|ak zZ+U>CCw#p9o-o=IIuS2AqmL>`CkerMzVWAm@*<5F9KYan*^$045Ce3@`H_C?8yQ@N z6|Zf%%~(XE%-MSf9Vj8o?Xy=bt7)zL96#t;6itY3_|>BRK!*papYu+sFtJkneW5m@ zGS42S4)&9(C)$4b(v6lRm+}2?r;W@HmGOOJV5DaqzwUQ7uOVd1-43VAU+AH(B}@rV zhsEz&ExoVY56P7chkJGO$>RX)p^kP~ct;_CT)v6iZmH79NG!XjCAn9PSP@HtQ zuSe3@j+zqU9>xaiIjw1?a0nfEOBcr;Y^H#Xn%DJRJD3%i!o2Y_Gxhg|^uq?Y7(47R zVfhKzG(zvUe8?h5&P4A5@;P3y|P`7AE>q)SpOR+79UX! z*1bn@K%UzlG8oN6M0&Z|c6jjF(QP`cRycccD>x+VNGkYPr+KQ859bA~?fsSG369iv zE&z^obcIW1j{^4$&wRZBEv;#fOG%EJE~~+Vc;7*(Ca>L#C8tkozR!M>9|xg0jjuFu z;wAsQcH{_OWV|a1$2+ycmh+f=Cc}u1Gd*9D`6lAIHnYU+%{xMj?6u}UZC;(9f})bHr{s6a?)?z za{GMV&%ajA6vDV$DX--?u!Zu7{XGcJkCS(kJq{#cYB>$My1YaKJa8=0kEZ30?nJ0Z zSfHV?=F#60V3((Z zsjSD{R_EhL5SV6RP$F|Ff4A^_F(d(M!w;wid3Fes$BItYr&#v4+|k?6(Vi%saLVO+ z5{p$eX1R3|2>rz@o`d)Bbmu)AdsfJz_Tr|Qzf!p+FRNgKBz`E3%DX|qvpxtOF~P$Z z$ClDpWx!)Ncp8_%rrzI@iGyAx>afNEMM0PBdmL6@`>`g94P#iD)0!6RAkx zRb4dop^z$DP_G63Ega~F(9-xWJWsI?m}ut-AUkypyZYxWe}{X-JuE_e#yy7qb~ggY zv}y}_5T4`Qp4u*ZEe0pBOq;{AA~Kb&K6U;xp{v>EF62sfjusq$zQ*Ng@&?-ko~qtO zQ10G`bo)$qkmpBR$(*+hJyqVS1V9MdmJheDvKcfSdI;B-7}s)^eK0NI?IX8Mn|raQ zp~SkE^RYVD?qimRPg4}r7Y0b`ny(j?crS#Q;9GwJ^mR>L@t#us!i}oLxFz0TR*tv= zSwHamI{SLJfPpzO)9j-ZUjthz;4JNkQ;_z0_)_8J`MoM76vWw3ADg;ojS!$qhjY(I z{zP;nFB>e>Wlzg(!evMH~%i93{p4~ll!5Z%n=L_=g zfa=Sy@P%ee_Un+axtN7beN~DV)sMZLpdfruT?h-5$esvi{w~) zK@m^+!uwX>r}1;A4;c(*@y4Ub2cZo71=`xK9%d&0eEFdX4=c9peo!L@;1FK7djNS+ z*6A7t?%ccgqj&S7JsfF8JOkg^B+Frf0K=PUylP+8d(#)gAuELylY4K>jBpL4gx*L} zU?L7!v9E!$&vTzIP(jMI-mnCx;0W_9u0vZ}dyIXK62WiQimJoc_38Pn5+q5j5WXJ$ z;^;9y;^aPQi{`n>a6)#nxD|x`Tc#&ArWP`&E>KM)ZEpV^=O3_l6SR_G)R!d$xX|8qa&q+0Y=GtFWN1e%C_EJ9n zc8$?};du3T3b-N)Vk0qTv0VG+S1?Wxb&y7PYi>NecVPi}C|$0A%H^-X3<;D8I%ZPV zBRV`6@8@bF%=xI!vyUI)YorYWcNR`v;(29k&9r%l!mqUSMbra4h2E}EAi1%vL5))W zKwqAItQDTn)h1iF-Cy;TvvAWI5V53sN7Da)lpnba2jg>aF2Djbq_rZrj%1On5n*_hRQY2nhZmsd zuW-=}4$y&hMxY_rqTaKj>HcalylYvyi@xNsa|*I^E=#&gH##DEdNB01l)gtujGqK@6dMb!~5REgbB4rIj2`D@~D0O5DEEqm*3to1M(W`O5iBchS`q zo4pPM4%_F>VyBkH^Jwf7Bf!deRKoI=sIW2Fw9}X;=iI#wCnIOVRHd2|o)^t`IQ%h? zA=|;pNp)rUn*cDIZR|zzA!by!is3z?drcA?a^Dny!7eyRwL=j>>>f>UnoDZ0lt2Mp zi>f=omw=#QXOcVkf)nRk>i5EH7+)sm_oUWC6ET}#_R_;*HtII(++J|3Vp16p)}gjK zLty%cd597aM=bsKeSJNUzz!U&^+fk@HS)l>^B!4CK3eyN?my8e%~2ONU9=Q(!N!-9 zi$!LB-03r{j>1r-&Ij=vYcl~fu{NYU5rp0yZaMD{0xVgS(Xg1W@LSfDJ8M2{qL<(% zeGT9abExty{rSRlA=GxiAsr2f<~15G1ptatdN%KGGJ_hGM(cn2bT(w$^Y2>1;8cJt zI<-CE%y0pJ=^QRTDY-gS4znm;C@b4PBb^;CklYQLz7B1Ogp{a3?t#gRf!9M0ecu&0 z{+5RHtyg;=krv<0>hU5c9AgBEGIwOzlF#6Jze4`2-J{UxV{Q7iF=W)^S)XaBAfJu#vWExA;JG`ss1x=i?()k z=B`x9L;Ftj&$vcNC*gP@pOSGqj@zpbsUnZ3=XZV|;S8wP`}VZSgfw4=QiZ_XzAAzH z@KfbP)W3gVL%N{8@9Wl6e@;(%ji?9CiTjP&!(|yFDKGUtLhR+wBx9_K33HB1>I53@ zx$|9oOkcjwV1e$o%;Im~Ht(I_wfyFwN4D|RuRIXNA{eRB85MCD4|Jl~g1*-DF0Ece|23S z?Vz@tYt0uc!|~o1D7Nkotb^akCuFyj@aRR+o3o+A{`!EVV=+Wz%s9mf&)j%6*%A(WbSlDv+Kd2 z`+?!Rn;BeTZkSN#6o} z5@cHep+TqEXBdMEZ(4nu@mjw}+|{qtt?r{I9-t@hqYPP5YyX&eVNl>Q>)Z+`9iL4% zy&qot8HCd zZJ%WLYLn|5+IM}?mt$x12p27P-@)>w^Xnij9&ouBs=*8Eobs|yFIjyZ4t|=FX*sy`v$?!GrerD zJ&UoLH3ZVF=heGZ#-2xmh!+)Mkt zM2J$DK10nt-rx0|?!)bINJStI=_6A&%1=$`c!cmQEgDa1tZGKO&BekT^VxTzJ0Z3S zy|gp99(ySX2+0SC2GQqQ3-{JA2Y)FystzjD>-uruO_e zKekH09Xzx5VKSh2#5>tF6Qx7`g6mAboySg`O*oy_8{L2=?7F*UsO(nxzJ$UVz>AsU z;ujwnO?cFv{mkzCEke#`x@W0t=dy+?kfX#@Vv5_KuTNr)Aw=puvZp>@VU{NpW$5)x zrJSXFG~r4Gt3T*9w(BkoFQbF^zUnh%zrUA#BxzOqjP76izN>or5s|2LI{i>8@*nB| zm!exPLr9gUG5oD90a-&TDqzz$2e;6Dv%fN+n)VX60nxDNfEF2-FZ=!x^3Umj3H?8PLGE zA3yG;OU7&jYs()@jv(*z7-h!8aP#d^I11T3V3K+KM*BR(*R_P$oL;+BQBq!TpsqTa zBvSi)vJS=j>HB(9d`c=lQK%a<33X!G1=`$)i#buz+DWa(usfY#UMHuA=-5vuGP^eX z*dE;Lz8?EIvH8|?4mn!9bnr6%Tz)`zQ_B7MW~?bfVozUHcN?YVvj0Lw%p~{0d|C~vPW*H;NlDrZF>A&#_jXmQy_dnq6z1qX`uS`RXe&}5Hc|Rm05>{o>n=P8c6?#bA+ux-sZNC z6(ig3iScTzU;8f0b6=8xJTEP}Wo0PWhY?I61{%Mt%;_L_@zmL4U}*%ps|+6Uz21p8 z&^O$^*DB1FiNt#;2lEe z$S&Hrs;`^Br*MM)7GVgsKgS8G(w;`R6YmS_zHa{>`dcx}9ww<^Y09)T(97vvVY@uK z{h98ZeVpJcm@C|DINE||8MZBBLW}1>Ul%3wA=`_Dn*R<7a@1Md3O+LOmDk=31#V}u zzAu;00yu-DL%rfUHS#+=4f6(vosf^*?7E7uJW-16wXaG8&sWdaeabJ9%EH?W=m=r) zd5dwY`$Sw1PH=ec5&PPoKVTzpKD2uXUX;WR;x{^WIW|`ga8i-6+y=o}h1xodDy&EE zgTI0>D8KU;zEGA@_=U^|f~HPg?IHZWJ1_fuWsyx)clsIMrRRB@pQO(yP&P6K3Q~PI z$iJGyc68X}cbkG1W}j~{Bvj6x!pr#*3q%q95Q23OiSPC`@EV=P)`#GHbhK}w80fTo z`zZ1VW!53`$%|{q%a1*5D*X8#ODt8@%Ku(flq&l&Ky6ov8uyJ5{mpHmw3s8FSy2(s z(`a1YfMJk8q~4f-6|;*9{?;USFaJV)Mc(7!(TBi?-%WI3H)fcgy6vCSzB?y*M8>ms zgyZR)BEFb)jyqW9ZCt!Ai^Vl~FtPTBQ4q7uA+monD&mjHPr<1RP zvq*Qlft2~r`ii8)eV|5wXu2*jZEogJ5BKZO_7v9?h53FarHPrKHP6O zkB_{JNyi6QTl~VL^;nSzb@=)s3|EGHI;CGk>t=(<0+Xhf(4p5_G0U}mdGC9*7B`Pt z$@6;+2QJekk~pzhO?p4~wh{Gp`BNGkbl5)mrwV|D^e1WGPg*09>U#0`H>IEiP`-Ui z?~Im-qc4%~c`dmSjrjy*c(w)RKYTN?S+@Wsil5F->OdI zo-jPQt3Dmwk(fa-`)$%6`%r!bOg~pOm7R{hgA0G?AumxezmK>`ZJq+#-pV^jFn{}S z(>*`;i|Kg%xO6$yvg&e?eh zFUD8OaKF3JX@J~$Q?3fA&e)3?qPtw0;p=L1DN2O1zvn@qHz|5OidNmQ1aBw*52RwrytVE=+Iuk_~ao|jH>YYx7xJGn=&do?_MSJ z{B8ZdlJPn6-%|{oLC+kAYP(It{wWEvdT}{@QFpE*ZTjbK^_bxMj*fD{#%7pUd{v1*BXwXoO6O)OItAR`)BQspdjc{KI=U;SywEx{ zPqOgD<wjUyxBV!or4_X!9NybWGq(Jz%X$fvfnV9BRa@4XpA+GCN` zFq4ALsLyp`9b{g#CCZd+*J^Q&xNQOeLj56yZrSFBx(m-S`}-|TGHwE`yT1uI75jGs z$=qTLTCJR4?`l3>ygdpn^B}ZFFsj~SDKXI#F2Z%A1B;bC5S;Q7ga7(TWTEg)k?IlH zq<8Y__RYezH*~42`lD+e@lIe__6PH4h??#s z&Q&ZzRpfGj+(w-=>f@TiGRJ`+^ae-N=Qc6rRsDUYoUQ0#=F*CnK$)`c%I&g>?E$#A zi(j>0oXbkn?yW(fI_$bjXhwBiMC<`LbZI7s_G`N9MLj$fj#hr z+!{n4PQ{_UdW3fG3l0b(uUNlF9(}Lwf$76fbmNBZwof3tKTujyKu7ZwkfsgwzxXqT z67vpU*ym-!{$UxAM+Vc1zdiY_#@c}g$TM##=b2X;f`jVoU|LqEiCDm=^OtTVv9U$@ z0?W-CJ0afT4J`mIFoWhTfFI61`xcdFfp25V^*C4T7V^{r&Gy?}7E(qA5dqKXs|Fr0 zC&$v?d;j4U1d2j!`bW3-VW9c~yrAd&C*7R>84oH%v>RrIp1vi=1tVMV?RHn*aiJ9d z=^%xAkj;a;u?%=-nZIC}myZV|Pm7b^Zsa#4y0^i-CxSQ~0>%NFb$GYyl=VzVuciBO z4(IqX%YItt%O1=Y)p-PGW4}%ao;>I(Ga+l(wuhSdi!58lw$2|L#p{(|b)?aDK9+DH z*q7D4g=aj{v)!3Nd(o``@ipHZJ{jq}b;&Zm4q?$x>fzIt1#RPzMh^8N<4xj-)P}&c z1ssNQ>?`fiRIUcMAc#W_&9Q6VTK-#`-oK&8{aCN?3*W7>fkSW8rkEZf`^1$KoxXi- z>UNw`Qwjqe4|RiZigW@pHgOdPE!XNdcy^+_k8~eGB){@@r!ATIy;3cINMGl<&2M&J zGhn}Xo#|6#tf`QU&)1#{R7K6?8`^GC$5&Hy?;pl9m+%Kry#R@LWn6HQlE*DRu^g-* z>@TY4*$kH*T^-G=WU`PDw|%ZsWTu1qnPmXFsONJU!XGH+PPpjWP)jr$@+cC1(gMUh zYX4v6b{{EmkH8H9LM_Xl6G_?B0|ts+qW8YjbAlBQ@$v~lm$SLhBc#1IEb`F82I3|rpvM&rOFzDOh|I;w7G z?1ysLKgl>AD}or(^rdoMOk9QhDoo$|D-9t>`yQkZxw=I{TZDVc_B$^gK4*NKu&l@) z?3KDattWdob%q5}=B2Grc;ln<5ByR0?s>s$`CaagcD7sPdbbrR~)?U5whHm=+EM}J}W+KvF>}7t~l?)FVMf4)UQxn z_rh9C^QAf@-Q%-uZdLr=B(%M`xinR^hE>)uKf6P-X+Iq52C7&GAAt?{0t#k0A-{#q zzWlsG&^^VCe&zn`g!`yl8~Sk}pn-fgw9q%Uy-dvuD~*S!=W{qtiFvg*{YWOybwIrs_uR1ZeoqqqvGtH zK99?#*D(mf8>Kv+c9=Sjsw@zPO|T8f>~%Pp0a`*gS1!GC4NA^kv@T*o6VCoQ9#B5w z@5~JUrH;^_Mm;eQ55Qw^&Uyoc5u2z|>y&@k-*3@~@X9g|)F27teAH-oS|$1qTEC_a zXFBx0TIv1#+DlDUTgsjKt08_bPb8_DsCtKqPQqL$X5$Szqi6no1p(*ZI!D2R0eIlD zT!P(piFfH#RkI~t52EzuvKu#&pv4|K$*_B}`rZ$`W{ao^C_h~)-ce}5Z2s-PiHh`l z?**sG-+h>mo#9XXk>6~~)d+zh*3iVqC&$-X6LMgQO=9EB0{B-bZCYa*SC`d|_oT$V z&c%&Sj`kf)%&M>^QhUP1>w=Z0f5dwIaaLz0#J;{t5EIp*s?&Z6b(&@KPCWbN06F35aW%#3{JVa$ZuHgUZQUAh zl(HF8<`WHv0)Uiz^@yq%Ph8d@BC<%1#oxZxUXCi*By&sIK^>)8n;wJ9E%So#ZP}Nl z;^?0eCe&df+1eSMkCp4S(@`mK&Gy^KY;YPExm%h6Kft{S47%7AE+!P zB@i;_5@Q|suetp7`W_g_0s?hUE^pE*QkPSrh)D9}!lo^$5n9+?C*m#MQbjlY^9^k(Iscwyb&yRS?OV928BA**%c23KZ;I(h6YWiX{PZukPQq91l zL)#)Cw!&J>Lx$eh_B(v94gdyAA^Of;UG4kb;i#SJ{9{M^4Us?lil#r4qy?IE@zbN9 zJCdyiAe&R3IvlQ`njj|U)?@av?`rs~-d2#u)w!2@Yr%8x@>RVw@1_q59yPmr;2ZCv z^gVFmuKQlnH6bORPP41$Wc4G7e*YMT{X+DNx$f_+6vXp}RFm>x2Q}_-ym{FZV0nUp z6@IH%Zg#2jhlH3SgwszNf;$1i|%?4CHum zTNi#o8T)+pK8}};`FUG!NzAO*)BAya^!HvAQ+x`_!SWianEp(fQ<3i8Tu}OE;8{jE zUJ+27aZxQ~4E7Oy_DG0ir;^kFe|D*(D+#qp39zyn3%|3uX)9f6@cxkR@E;}_YAd;C zarFLjKKc`FF+I`p-N+l513A4K}{9wGeBFZbTT261wyK7-zEnEpO`*#otOzjmcb z2YYdw*Wdhja9tr4W{*{<2W^rboREK?`20l~+RuM9y@Y=CiSBUY1?F5KZx>;?hx{unzV^W)K{<2CJVW!2f19td zVte9^^Y^*0H7YR9?;8}rw2$W3u^l}S_N%~}-VLu`d*z>cD^8O%;$I5{@US9x^5{U* z@Of#*M39PXMbYZ)>F1z0Ie>|sq0n+Qzqc`l3d3XH4N;xM|3~UZcu){Xl8bwWzl)YP z=3pzbJ&$J=5+PQ-Fxj>VU6qOJCiw6Xef@L=##P#FOY&!>mROJ79NU6`VDt(}N2E$q2((S?gml#*}@Yqd(o9=to|z4wUuZ zm#gIMq9(jTWio7$_Mg57Y5L@`op>qg{lkg6-ConR+ZQTsl;oPH^qcue_nrQJd^2w~ z6*|{{dH~sR_X*7R=Dr(L$}S{CMdq>sHmoAY^R2!Rz)B8<>53)G z2~Y@E_S+hf@?hSC#)oh=lS2T_HW5G_=r|;yj)i3AT1?G8*hW*LreEk~r3Pq{m9#%R z*xz1Dt$v@c!)?0Impe>G-lZfw!durV=e-KRs~)wOGu(0?t?S>d(p`QN!`9N_%4eg#ia@3`OAGKoZ4eg6RA{G;P zKD}>L2zR9}JVa+@EDvSWnMGt*Lg5@3q>Fh9^`6-+?J+h^x(ip%<8@!(+h`gRn&A(% zS^e(*Y^SnGs9r-G6!`5)a3+r0gNNwzW4}b=PO~#5oeI$RaP{M#$u76AQnbB==j^n7 zFW_vA`&ijcmLk$un$x2VxS@t%61z&&V&&Dw*Qt1j`5;Wn>M0P%K?&e)Rt$`)o80=_ zdVCn2iL=OjSV|3CS9TXrn0jJ$fPnYsF{N4cF5$uP{xV1MC0Q}}{R^NazvrHboprR9 zNV#f0jr6o#I{w>L#_KFG`?~U}FF#vqR(BtW>Gk?u`KJ{eRTg|O-eYx46h0L8_3m|R zL@%_9Kle!b`vn5(4%Vuo@`XU?0Ru5haogwn@8;D_7khtUz20c@Y@J!G|#yb8AE zxQ;XXF|S98XzjV`i$?4DW1Y^GLP=FXda9HcVG3aI10eGRuC_AyQ5&aR+DKCEUt(c_ zKi-bxbOmKFI^=LMc{4MdrJYAgCC~e!8)u36v+LWVtLKAd*+GlRhP^z{vjMRq71*Ot zSVfg&NVKG$v{I@ACx&oUHM ztYCegAuWyP?8YWq_j42Jz+X4(?FbpFVdHa5wcjs%od~+f`5fi-;C%e%^)R73`F>sr z5U!`|rTLY<^q0t}%DGd>3KUa-zF?SCoN#uTdk)aY4BsEsI79;6ATZo{0B--NSq5}$ zPvtXO>?dTtoeGu@F25KHAExGFQF#@d>Z#Hykbax01Ki3vM=E-v^&V zS!9sr>_OAH!J+oCzBKqpp~Ta;CtX#FVI!!(D^}1FB9ywr$FEh@|42HsB}IWCivAMF z{>ZKff(Qt{0kX&@0*l$0{2K|}P$W`bmi4yyqkSB^%HBTi z3jcQ(mZ4xcM_*;Vj}Yh|QDGx!XZbK6Iz!)uTa<4kPW zwB!WuJpc}nUT&lJ8l1K0wXoH^*+0D8B#7ET2H+wr0)!rrRi;TMJ@3cUgFxtn8bDZn z&Hx2brjO?!-))XH?z~Tv2#_aS%FPu+Exy52WTT^!z;Sg__c%Z*APYk+XYHjsPq%#r zupfGT--h9rI8rAK_TZdsOwESZBj2{@3FG?q&og%KR!AcbM_?7~q(~n=4^>kt63!V; z#LYwQfEXwZ=CuzMGhwN*&j=`t)L2ioLW#CA<)tmo_59k+Ep1uIDP=~jm)A1 zoBqKuPTT^$$J=XDLI?Q>MS;o6`$}5sI&@Qhk%RXy z&q*`LW36c1)5}W?XDRBmih<2R3H6%C(=l7!6+5{94K>P2}PtA$*bg@v+VQiIF zYgihho8owA#)PMx!%e0S3?}v3Yf%_?af?-=hzYMR%md0*ToB3pu$b<{^1Im(g`q^? z9hgD?`wfHgvY)K09XJ)PRA@oaz3pReO|J8aM)@lxRDr?`7UsTU_*Ia&Mb{^q#I<-C zJEt5%B}OcD(q?KHW*b?r>8eoal=l{u4@P9|7@!4d-?u?5MF_fjXCGG&CX;&>(JA!r zI+u4v?Tpu9?-38sNIbkkKYlpUaV<{b>j>}`aoa94Q2-f^ZAjC<35X!1Pg_&qdMGDP zJu2irlp(Mg^l$?3}C*!jjMcy2eKb zK!u`P)}Yu>mZ*gFuk=0#5n*nAq?7!HTh;6pqoDNHceOWIqnH;|PyA$$&rXo#p3Qdv zub_S%`I)x0+dwf!G(y8Dd^^qQr@L|sb_W_6re;c#hRh_K)-ERtUUzd;uVegA? zfJI4zpL@VWenQJVvz-}!a>K*O#gM1l?PgzEzb%?msxbGDR$BE-t;?vaY$r`*lUw5b z$ba-4QA92XB?3~dvffX@+}jpjoUqjY^Xr)lj?rT{%{ThJa9k0sGhy60hkwzmGQdTx z`Zk5=JUr>ku|bw>LwA;;LsW>3gnSz6E@+(IGpPbraP{QV0`mD5z%+@R-<-Zx5$!S$;#eH_HZEJk_*E(%BynR$2Zfm4Mc$3)u&r%w;Ze?<-zmjL2r3s*}X!E zer&n7%_ zbO_JjZhzc#gi_Rp-xM73RgqyeULx^vHD2B60W=kyyJreM9DX()EqnO>e(m}@-LAk6 z!J80=FYR142|jf+8-*ELrAw^)&aYbUo?X4pEVn$UdfD>h8I$bHtLJfzp1)hRO-Gk=#aJT>?nPNM>+ZNp1mM0*AlMT0mz%kZ6JW7r?(VY?f3o58|zkVmIO0lNNv@VM~OD`7xf-t>tS&Ek&`m+wvd5Wu!&yqcCB z-+o`IrsB?;*>$q2z43pdY42e6E?7_&U;ph-6Fx5`P$-+~qRV=K_lEM8FX0s$U{|;( z6QrR(s%tJ2eXoJDZKOAnih+Ab5{!+K_qgQz#o70Zuoi)whTJ%6!5v4|AO>2$GYuD@ z+XBYjBd^#JvjGi5v_zshvwk1Y9;cRD=5iRyvwvnk&hY2hNCT`2+yf@r+HX0$lQyAH zaRYU&${VrCc4<4eN`Cq4wET+@e8=?*N7(H7xp%NA`P^*;SQ=Q+FT$d3i?*`}$5N?dw6Dh0}*o=`oA1DzAAf93sz@YQb+>4(U%C z_Ds!n0&!)HB+VpH#^A58j+pHN>QFc#(@jJ3oN&Xmyx4SaT7rhsoIQn+ZkC@wyriPc zHfE@8k1~IS@bRa;Nu#5n_PbS|Q6-q~J_w5T`|!rz;yAib$4=_S1kO9)4QZ^;1+stt!` ziU=^l?iBbqsUm5d#Z&rr0T++wfc zG#?Cu#X-p6-)92zS6B)ZfFo_IE3@H|#JMMd`ZR+u9?VbEblJNvJeIbxR>Tk6Rej1z zYt6K?$wz;mSg-;saEI752=s~F$C2OX+U=5) z5lR4<99fJ{gZ5GpQT}{fn`M)-j*y3saZ0-g=&1OFJr91oj2q`8!G2JZ2vU`N0t!z` z@>ndT{P4I7B8YMC{#u8xK{np>wBHi$i|-=&%dg$wcDg`adY>qlboN1wkROjh#{y2X zhXeaxK=Z^;)A5$(Ah_nZJc5p@V8#!FrC&wAD$;X4*?C5L^n zhw=bWXLd~=f5YxYlN(3{KEDOMoVIt}oAZE#Ss`B3%+}kMQl7gqlX#Wv>b8n zi*d{Q-_dY)7(QC?xmmOP%P4{VXXLQY4X|Q;%16K|J9-S<8~hV3_3#Xo0|PPlKH)ez z0(e8v`$#HG#m$Z%7q&HF%8DS3enI4powN#vpckA1{AiehTo%KeE(!5ri#lG19t%|(&R`I_7 zdBjtwV5ENl+S`#wC35w#(&l?~Y#7zUPJ}UGY}|-YJRtRIG?hW$l;~Zk-#`gNlszEz z#1*Nv(85@JU8k?ZH<^iT1%v81HPO?YH8P5c_OGU+*HBtQAq`Q5?RX ze65x?apgN^ijqnX%;bCDVl1_HH|BLTg-gkOKL+%(VPa{nCmz(jca;z#@FmfB#eu@e$$@XdMA1e=lvn=LEhEJ4QR!c zpa7HN#r?abM%Uv$QzszAc|!YhRSqY389M4kp)8gsPrDQjyAFjxUX~S~c}^zts)qVd z>_=$cQ$H-z_}Q~QYYgtUm*T4er${jL*9n_r8%Or(WY(Cr%OB9Z$;eeX=F)gZTV5;Z z_%9;oP(_KAYHYtg=xlv{D6ni$s?`|bOZfUU!VQI;tm0n(0y-QG)`d=sA&>fpVl8tuAA)rNSzz3tIHxJ0~UZzxT>13SM>2?YYf=yQP8@} z|Dz?IA#1!z%Z_UO1S9pgA~#oVN)^xhEr9;sF$N^1EC|TPCAhM<6Tv{v>Fd*R; z`VIX=Y~PO*XERt^d_Oq;u=fE{`dm1bFw!xo$4pl*7cFlNE&GEn5iYSNcMgdw;}D3? zwIXcO{xPDV2?<7Djq`Q!36Im)43FlL*yr7PJ{mJB%uc+aA`7__QlyUs9v=7n6geT7 zKq*4kjlvb(%Mab&tL=?8xh_T?n)Og^n3&? zF5f41-$yq?%kB&1xw!V`uCfGwsphRBAgU)XRi9!3pLH*eJgt%i5@aS6WD+ql8)?(`}?D#(HI}m23q*EO{F)1|B4^h}5h` zyqjyWikCEf8?Wl6D`fWrb3|X^=q1FrDz^ zn-jx{Mo;~Y=?4t#_#`tw1{`Xq2Jc6sm&oq>L2V5jEYfdkFPv1Hu`n}fTU0U@>yH&6 zSi$6kBs(*HhEqg~XP?edTfj`$E>JGjOas=O<3J?@yX%4dcvxe6w16wVU(V2#{Q$LiOHqU04cYd!ga?KRrmL{qs1upFc(2k<7pMws7zO%kPNO;e&CbcnI$@;M)H4gt?J~@qWY&z(&s~ftqCFz z?H&T&(k$7l6x{b+T)1mML5cU2Ybq$px6r2^@5f&}08-j%P$C^zC|xo}#G1(C1rp_J z=P8cSVNk8oitkrftba}syu<6|mST0G_#OV}x#~cR7_0Vp_=h3r{sDE75)xs!&JiKR zE4@CS<_-~-U?PVqMX@}?CkHR%`P$LK8a}5ZUcJ++weRDj-Uy&$e%3|3N39`GXP@n4 zt@T}~ILjU%lBuDxlF7Wt`Y>AfCx8Y!6Uz5zai;lZ3i1tdBjO&RVl7SM0%Jz7IbA#>Yyo&Y$PdPLW~tiG%v6cJIsOtxU~M@~Tjpuqsx)67&ws9VGeo z_wK0I*cxKDRJu*cX=%7p})PhMI;v!84ISbn+$FVOLU1UUdIL@;Q)0CB059zHFG1M)CA zPfvYWIR$6Vy~TwA5JDIdBxiZBNP2JPd8_XlT{ltk;cgKu*e(MqzpBj^<@@92JWz?P z8BY7B1-3_t%_H$r3Y++mzl+SZj@GW|*QAB!U-_(*KZj(bqFDFN6DI`JcB!Ny=Tol7 z2u0|XeUu?pJnRD&7_4q!U1rV`JkFlYY*@zgRl0tffI8alm@zsZx-@E@*XsJdYKL#= z6Oc@SmEv7UHZ1gUc?~xK#g3l#?Rx-b7-8rOA-UYyI-Yr@}?gZ_Tg8V6W*(jMy32|*R*MQ1=_~7 zXBq!|6AlOl_rv*#&AYYzBH+L^Vl}{qS`nlDRb!V|&7l=5m<#atW<{ zW^AzaclmCf!A^%roUM{ub#YOT#>jS0sXd7SNTbXtOCJ_3?FH3ZJSTThC$pbL@&Zf% z6g}R@rEr*~eMFZ1U$)QNEYIGs^=Kz9-PUh@3o?one#&148(=+xyH$`kSTwq)xq_4igHc06~_x z&A-G8w?CmD^XhR6HxG}!^LGx^>2aj-TMGB=>tl_w;Iv)JPxF3v&*N<%_kO3iH4-GN zBd4ynjMs<{aFk+rJ^ccu!vH5~kxdqG{*;yz7VvqvUh2a=8mu^rxE#FR!y`OfF z8l#}3!YNZz{k>Q1cRsu*SO4IiqKfUty)U>s^WOOJ4>C>d|iHJ>Z!{|MaT_s<`N z6PX5w^LD;h3C!rQ@dO2V=w!sW=95eB3TpX}RA^)BjE?>{bcGe5UDUE>T!qQNO(~w41~&Mu9sZaiF7r+t$;r zR|13>q|=pEOCIzn+*a{ZRO@!YTA1#p!AU=(0cv0D8O+JhO}^A$+PwEipQI?Y#Z*VK zsOWqo4(nSU%TCt41i=Z8Og0Q06;-p)2;crH9okw>Ppc{%GkyPZ_>@lt_j9(uPk(&CtfBYQipeP z*uGt#r@zK&sd~<5&`U1iSGv%bP*rP^8S<9kyL?Mt_x7>eYIrLh!mU@wV3n=5#^`qI zP0pJRtKfpuo>peeeh;y5L3F2a!E6Z)&6FkV0^zK{XHbamJzsS87q)W!l8MVjhHAl&)lyolC1B$)hedegsTSM_=RQCkd9S+}GJucoRU(N$d zhtp~KBBV9M$T&Pc^oe^Q_~7gR(kv-fm6GePdC;@+>XQp>jj9H!HMZ z5*THlzunAtuxVD5qj(mIM!qevpF7SMx?$^@CfW(N7f#0et;A}0Sm__UmYz5_jhJZ2 zP_FpxKHzPqaozrv9{ZuZpC9+%%?9Tz^Lg#pXJzuXac!7;L-EidzfPt(T+R`UQq=tc z3FTvTqKMV!ct`;btc>cZTf81g@*O_1G*fdtkOeHo>7k&nZFwVq(GfE9DJa%&k^is%SGC`54NrCgxdMulkoE{l)a8i z#5Ka5hGj=c*xt3ua3)mDC*=7CBF$r_irFsK_;TYY16cG2H5R7{>sDvE*JD4ja9#D? z7*~Q`wtFR)>pl)$o~^c?>-Gm#cJuh~Jjw|v&$ADWVb>YD?R{YnpIHmCE#3mkIO_Nn zzGrgWOil?cM-}DCG3=wnrw(4LOeYRQVr}G|_ z%9T!ZDS6(I-2@ zbui(8g!k-5c%e3}WHat6e6ss5T7W(C4n9+C2mRN8C4u8@%K2REoC0a}KB%BqD}5E= z1537Uj+y4TeZCoY)GNDY0nwF=J%)#AD`B8jH#~H+aYJ%bpzqB~Y@P?S_T1 z9}Kz8+ZR)>@8x^io1%f_CAH>6WdPxqO~vDMl?<_uxHTt>-_{hr znf?_0HE?_qdZPip5W`d9yYP6xd|!U=c{x#WHO5TaVEr-@xd%!A|A}7YYk{r3p4m7M z=-Z_B=b8z-@82BNuqFGKJ=~gWXz8$YeR7+XIV?!YuMb?qrg)DP-sIyQvAS|h_C+$O zaBso8=7npk=oI@oY&>E539l^~k0S~Ip0Dq~H_8IN17{9O8{0DE`f=5e#A%f=YrAakePCiNf zs2KB9rTnl!ZR_9HP+9+sKb{TCZQOz10L3|N1cen%i>VWh}YDG6;Xm z={*LbWO%B?5l9&?ll=e`%QJF9Jobs5IyG1pV8YRV^nCd3F%l(JfRAdb2$x?V`B8uX zSG@aW|B6(ubiju3uGupCv$}^!)Fa z*N<_71MaDWZVR6P56S8prQbUe2wU89Gd#RxeOA+1O<(zYUXK`V`yBI==UUQT64ayx zMz{$LYrWqDSG}H7ZPZ;^LVeHSRcYq$6x84S3FJWcoD#k3x_&i!`$?$*vaW9OceQ>$ z?(3D`Rg2>3DV9(^DZe%Lx1pG?ED9-z{kjv)g+tD*^B9Dtvroq|3>TT95 zaKp~$>ld|_GSUy43a5`3F(y8~#%s9P+4CQ+TnVw$bbwXteM`uMU)ZBz>Tf~{6AL8% z_9aYRp7TCMS-uPPAeMwW$1vU79V-zgQ8`50J!4?G=B9G6s)dh?Zft-6K3M)y(0LHB zaVNB|^3pM_r5)dy@zeksj~|d7^MS)xFrb9T7_&NGL4m)U06Z*fen#K+iEnB?mLa>a zEj)j*AAAba%+bD7XIuw@Ezu<(&X0}di8%#vi8~zXs=%s=C9gM}Eb1=f@8QjC%+$na)qM5ntoh<>}9BW z`OV0bWIS$I7=@tjW*ER5?V+1-lV~q6|E9Cjex0c&jS`Zqa8vQoG}XZ$Pp9E(9S~0M zmms+F@ld88Cp*}UK8Lee9}JDh033pT-ec_=95FZb&=Iq0mlpv9@XlAFZV$uaVK&qx z@;h72qCD3hwjyk_An91ZFnCT|#Tsi@{c~9n4mgyxZ{KVrFSqCfU@Z}=pY$d>uj)OP zcm9?HQ@D1c+TFjO{<nEb?+-4NL39@Ur)bGLIjKC~4zX6cCE3?s4kypg)e-xStqr^g-6O z-o)FwMyODBe4SVrtuEf%1dQGbxO;3!8_*s;4JO{Z4jP9z#K#RU5)2A zU|Z=!m9r5{c3u21)6Md(cG>2j-eC$@`?(kbuA>*h|`rUpE(?c+K0Co~LL0mR(yt zb!v5Vg(1+q{V5Q=&-Vg5s1l%_VGraGQ%JQ6B~^J+|0*$e#3mG+hsfK}?f1aGeQ4r~ z>t3hFq)LDHYesju!|Rvyn_v`}tOC`&*agh`dzTf19-;;9tAy#yC5FcgufMwxb z2j~m)2u; zCy5mpV4E(reR*)|e44xP3a+*?Uc^%-9r^$iN*7~_Lj=Syc4y{WS&M1}2g!s@B4a(k;^#iAxF&Joi!FYkM7xHej&iv~yiNM)|> zC!C8`K%xg>8`id7Wg{wxGZ;U-`7`oa3L;*u^56NMUTC80qO2bs^}%naq6x*=!xi(M zl>^h;XFpFLE~|)&0}T*F=$vGvl>Jmt?fcprzbNGUh&YUaNdQ);ZAv1~50vn*s>27h z-lJ2KK5zfMhZVB7-Z_4Ca^*=^4m-B0O0RaZ=VwpF#U$W?YzC?##BeSQxi>M+%U5dx zA8XYjguuU102yewoe!P{dd3HY2)M`2VVm6IZhDhXQt|Rm&ovj{H93dDdV$DW#}N(? zEO`ALT9P!>wyrU8 zr=!CD76@XXW-cHapT{@9-L8DLR-yyj$!E4@u7}S_LHl0p%>EI#RZo?0-`61{?%~VT zg3U8O!^JUH1gZS>)StxHLB0* zfeDf8;Fzpzj!l%4k3=#KrW)+cH2?XXPD`Tt+`!bDgzp25=u7)67tOhGwVE6PUkd>I z?U{yXyY79uT|S3W@ucwdLY?>gyzEbl2eXLa(>)q{+1o;2`~+h*I`jOXO@Go269)I4 z)}kCy3_Zk}P>#XW?(o<6*TMhn?5dw=qlBK7lSsJJ%{}dw2l_ONqAL1s)a~xXNIMNeZQeioC-K;6ms$^M zsD>JQ4;n+|U^Cyzmyh@JUeP6;=QC~s5<>3O!Mizgb)G}Y)`G)STwbD9How^lUie!e zo*l3--;L*AJqkm9-t>YNVrAg%7aBLg2r4CfQ2Yg~w^N>E)omlnb)fA%1d!;ZdI{`x z7WbYYTN;Ls%;Y-!^5$-s^&?>#C%I#x;*GSeYAfegD!W*7Auw&wUh9e)CMIVB9EFK2 zl6W?|Ub?xr?!GsIrqht76Xpv#gw{5MsSR(byDg;p!Mo5?nGdPDe*Q{kgTdmPUiFLb zK1Mu8vO%#ve(Ru|gg50rGnM$q81944-#=|BKR$}$`mH$pO-VSkpQ5q2pxo zEEuaRj`NrXm>c*q3p455;Xc~K6yiH?euPt9+{61H7$fEwAMW-#Vz^L0zylT_#e&|d%+kWX2+}7e4lsF@mk33uZ;ga zt(bI+;uR0=)CgUoNyM4BZbG$v!Zs%+Xngd0#B}DRt!g1#Q6l7maa#bG_+ilqCGf9$ZsQ9BWy> zhgj`>a~#6Pr29k+?{VCERJMo(p>!d8-c+Sm=Fmv`omD%?f-p>VQ!$z+acJ1YX(xXC z5^|m9wbpR`JIr8KTjz!1eiBbWto=%ScU#Aa0XmAXBhCl?N8kl_ID zrdH%(&k&Pr!1%||u{)Q|Ned3meE#Stz%r?$M|}FrOqnvfha%^VP3*SEFsA9>enZD2 zJ##$OQnfzR>)!paTJ%dFi1M_b*L_aKt-l=|PDU1sDqvr>#rw*HQcod_Wp%!dawSQ(O$CJVB*El3*FORgzl%6C{I7~1Q_n?TiXT5JHNU?ugG z*aUdGSNJvJtC#wn9`uX$8t5Z~fwH=f)x~md)^jFB;Fd@__d}MXlz_ zw#ex?{s=!`oS8oK>oBgh0h!o#bn<-Op~~8PMDHm{lBxP)siE~rhy7t~yxvY{HVdaO zwHA5xC1H}9PX|-JxF~lhwbN^0jH}NRKS6x9R`sy4vkSUUDcwh{;h1pqXKQWc&U}cU zV+5b#rJIS!4DdJf#XSPsy;>#fD{#a0d>E*gQE%M#CrXM=M~^j*ML1@K`r~Hrx<8LG z*`_7?i9-BtVh5UnCHm@+ix4)7$w0ju!c1tq`Q9hiTKN28)hlND$!_rx?J*wG-!JmO zHO^-n#^FM%OK$zS-?c%bPi8=K>fHwTS)N9bI^FNv0>fA8caBJh%X6%~?n?6EP1lwF zaw*x5*`Zg5w5w>+0>v6)29VO9=WqWC<*F#_dsjf5qeVQUJS;0oq^^{xT3NP%Yb$;F z-mJCp2;t^rd)E*r{L3@dald+|?p2Xx8z6Fj^m~9ZN)#9!SLdzqB)iWNzBJqcT}3Sx z1`8Ekku~a(jUarsxi69<`*?u0GYs$AAw~7?1K{S@fT2WM<>1)wR|Efcx{frNm#6D} zCg8HtqqZ7pRc{ACm59w{-3trp2xH%`G}Ma4oindAhtFshuyWPZCixWKyrI`?U1H&R zEuQBarpQ0~blccxbh9-h7C}=`2d#6G&363y%@}JzmKez6lXS1n|U#orO13FIPIIkn^}>3PB{K%-e-^5KIn-gu&EejAtv-*&PhPqBqJOpL*^Y|OkugwJ7eonP?v3K~ zZN0k))$8RwJDj_QgLC%uSe4&v62$Es%I;KCJt8@cuZX`I+OyH^k8EB>%3Rs_GB+4&Kyn zZ`fbK@aVGi8uom|()|6=oAzcag|%+1y+3TpmIbe$-e(}R_o6?DWH|0!ZyTYLlDhpW zi#ire1-DI}dI$mH*A6~?%Ly*l+~F%KJ0ffKZ?mU%=irE6M)@eEig|PPi`#sTz`mpe zBTlke&}ZS4)1%lD`MqXf4e&ID!u4Mhb7TD5=lYw0o@LI%Z67#2{YK@f-QTZ?Kynj7 zA_-nW0QN@YRSfsgwvOth{S34O(%xlEcl+|p=4ex6oCcU@vx2Y$yKZ6r$u#ymCg?@C zm&Ata^AVRz5^wymusjCF8}K;Cbd#^I+?j}(F*T2zzxEA(MKGtqRnJ4KiM5p5V|wW; zN1r>p_ZTM@Gc}uxBVo5P!w5|~&f#^{!fQuX{@{InY~Q4efvMNycQ#_J8pkT zJ|dz(Zlb&aZ<6AjM=}pEA4wruSI5#c{#snw0k|%aey0#coAaFY4Z1|B`}`@>s}?zq z9`KLXfO72TIF~+ov}^d`oJkZU&H1gY)Ve>25vfSdb>pn-id?e03=4^}uw-(^oG`{> z-a9Xt!+&i(Odihl$Y6H*+C7!Naax0@z+n`5(6Vc^%E$KNQ(QzfZ$7s1r9(x8QOcp~ zrb01c!7bbmNax55)a$MXUTQ7$bxwry zfkd(YtQ%~=xjIUgik&$xW!%gA^q{)l8GszW8u@!pLd?!y2l+MZIA*`pK!#EZjImph zN-9_ivd`FRwI4k!y=uo=Y2l*PpV#5=Gm2lHDD!vE{%N5XL7D+U_ep+WnQyy8b*6oJ zejxo{bO2~<@5gQT%j}4X!3n>%O};iPN6wfYX)mjy^B)xs#AP!gM>-_~x{a!vN$J2H zs;G9y>cwKLeLdIgF}CXh+dIW0lQhC@&S`llG#Fnp64y-dT{$H}KAb5A5ws`w9HDnK|E%o7V6c=*-5T6LZJZM$$Po&w3IA=MOC_$D7RKWfVK(XeS<8#J_oz4d-GnuA5$pE*&S=+^ zaePY?N6-lWtM=HEb}toMRiy;^y+zZvhG{d`VVTwRmq5K(vrimCIk+1ZfOwjKnIo}3qDBA zMI2XX4!d5H#!I12(otfkN3}-|@XcY_@A(xjC^@n8xYjl*SI#cApL>cEbsy?mX^?r~ zcWSkN$#g>>8d!gG&_q`$8ZYRV^NGkpZXv1B@FFWkW&&5nWe@$Q~i z3el&;t?!WgeZ5I90o6FSsFh!y_$b+GZ_PmV@p884*;Xnh<<7@(TY4~)Q4Ec0eFi+# zzODObS07I-ixpfcxzHw1VVToC{uWi&^KRB5m8)}RdKdF;&3u#-IJ4)NIKaYjh(HQ@ zNWOt4r!lW|3W+Uv`XISkS8r^xOL<;~{1&am(TYh+*k7Z9<|^zn z6x#W=S^JwHg^2E4dz3-fSFigE?ve0&C}Jm^wYFfWXi&li z>3Jz>nWt<(Q>c*DQAHu+9)mz>iqDQ#a?9wgg0&pGXBnZYY&~H~Ki)__j*-~*CpdTP zXI%d7&=o3=$3CT#0PJbY_^}&XN-&bO#ArEsA~KI6dD+7n`!(M1U!$B_AZ!?Y+sMHY z_p~1gfdm@rFjQ^(s%9+N(tv35lXo<8$SM`}B764f`jU^mx~^OEl@s>N=)uGZ_OZTb8wq(FQqA~|A6FLhKG%S!<{Z|;wsf~WE}m-g)m6lP?*u57B5=I{m# zYg4cgj_Sbc&%dIJ>5-ea_g7f7;hwGi_eq^&jsS2-2N7y;l@RCTyxF&Ztzv=c?xZ1_ zf4Cl-La3D94n9n+G_wExoS}>kZ5SlX@3VG5$5Q)U0z)EBuq-`7GG-6+t@UXq7uAdR z*Ax?P))zo2#&Q+uo40O;W{0DD>_*gj%*2PVOUT|X)BEnPop5JATjCxL@~NGUdpEL3 z6#w!gdB2rVlBBigP&W+!Q*zWw0{tQ1Gg{youPQk0?HtZXR~sn#Afp}x`{8)s;lL7H zK2iQSoa`IsF3FL|wVKu?#v;9df%(Hym~BOd)W;yTY&AA0!S*ra4Soi`mO3(@K|y3( z?-6z|3n%-IBD_Xj`G-Bn07RrU(9YX&;bN!?$_rMdxtm2=mt{RZy-QiJq`nz%X(5_Kp!8Q;({Ff13XCw--Ygg$FkjUv%U1<`#oUXDwIc#E z=5YV&+&wUeFxFXr1l&q?x_7ztwvsW%rB|M%p@`PnQj3QgBT}oUy;>C(imIm+-5_WQoX}kau#jp$nH0 zjTpAS*TdLf8+*!c4e&%4I2$rxJ)nS%i# zsZCONsX|>rXKe3&vwDBTbhRO#@ll<!?LrBL;daw0SW zoX`H$cgd7)AdJ)W>lZ`eM&0wT7DGr~rMvqHiU5c1vodvDOY+GH{KEqMR8uhSmZ*30 zD$@MS;C>`*yYcS8L23E!y0OYki1YWyokjM#DCR;PQ;XES;2&$D!eLOy~N=J8eS zltO*IQl*a6op!&!!{uz_7vHU|;G!-I=keeZkQn)~$6q2t$emU$yf4Y&QAXT=rf$k< z2_HlW;DxdCTxW$-4mr#xkNcWkPP9WL&X?73{?1v4aSUrb7n6N{ zNPdb%YkFMUpsaOKk{Hf2ISllltyR*9AiEc0kM!)RFeHLUzH7lFWU0OKzcL%7#TRaD z>QyAkW;ADz59EYKJ%{yET;22h&fC5|Ue8y%QZJkBl;_r6b?4_p<24Q31^fNvglH>? z?otAI&QRSQ3?ii(yNk97;A#?iTUW7~=r<#MVP7@vje#;A~tj z`x%9RO6P&z881&|Qy;6X#W$tlzK~0DJ#we8iqfaJcCiYX;&I%cs6uxp=-YQ}ZujUI znfbMmIGXv!=O`!SZ~29VI?pkGFRdq=fpyvAus;e=9-Y6-aeEocBQ9TDrSB*BNu%3q zzZEBPGaJU}a|rNxxj*6c9oHMln%#JNX8DyEtXoR(Uqm4aN1iypW`a?bW-le$ws6$6 zJl)-#bS4#aZ<754Z=&3X6XJEG<*19IW4f=epkD9G%`0Nk)XfL8H1tV=c;=~%LdY#m z@KQr|)k4BA$-|925s1W~RsGFkZym9~wC>xJjTUntAbv#JJ=fxlPO{ug^f)W#*^>fYuXffmu%jjc&XJ_9H7pq<`9hfFu z)gjSSc9QcImlE-ygj5!Vktzd~P^dF=?=aE-*<;&?uw8gZXjtU^`U6(+IlY8fHhc3h zY5MpXLZZe5<;0dem&{`LIuj0R=Cq0&84b2!6B^f}Y834S=}Gt0`x{13`w14hGwe9g zQ7`9kV)@E!BP^NX;h3(6;(qDDa*2)UK3m^AGKC3-ayqi7%qy6@%S10emk2|t!veCb zRyMKMQ+BW&Vz5)wSxemiHkj_u(S6JBrU|RgQb%m)XdyD@NiSh-!|i zQ%oYd35+vZfh*sCdUUa189a(6ZH|E4w?_80nJ_bk$d3y$@gCpf;^PExg20^T&k}4v z)JRAr={~k7AM$91Ld7j4Z~pl?vA=)6Byo@1nNL^-qxe%Q9yKet_vuHuvcbn(iyq`^ zYJ70Oj2U?h_}nf?mDB6tb7v77c!V|z8i>n0-yPjhil$rd`wfizgTKT-tw6l~X)OMd zTG^huZ(EXu`*`m>RMdV30!T=w(X#c!D8}=xIGo?HqcMASgcz|nSEt;~Qe4Ktnnm_B zUk>g*dw^vs-w#FT;Q2RUAQWx6T%^GRo*h5zzSqa?W_!2SYe40VYqNNEl5KxiqbjBE z&phAJW%9=%eaj{uk`rFS$Isfnss^L3l4A#j>Ebu}cvsItV;oSV^W;WX*||Nj1zq0W z*iuxyFSzTPBTqEV)J`Ek5B=%Ab}gz1(zA~v9a@V=eXcHT&^Mo7S4^fImPQI6?x#dz zL;xl4*a!fVzS!_HWbrdS;HoWxnS?)ov|Q%F#*XjkqERNlWS>MWPBrEHgaFuP%6S?v zXxuL8@9OOm>bz%hMzf~r&v zL@lcQ=^RKIbFbBqUu0TPtn6#x7mR$XPaOGc?q`rG@vIi95i9mEoY{isjmj+I=_Gmr zgaWTi9^9|reNSH8to^Lg2In>!3Gze}ml!JId2>r#3x$Z=IXNP-n2QGZe9PS`-P9#F z^DBWHt84RaoVfP{C@;^CU|?Z4u?gT9NecD?KxO8zf+9`ghR9Q6!y$>ia@M`{e%|Vb zqsR@q!>4GxMX0ZSRP~9mn2BtMKlXihgFs%S5^y&9qtJNnM@-!;`STzN`RQX7z>_F@ zJ;#MR>f;Z%t(jzjPMbUtFX43nYlsw9L~?pQ5y1Rj39I#~`X_Y4LsM6Wec`ot2Dg|b z2mgG7V_q;dnkB{*Z#-HZC3|!N{TyqVDLjrOhrT&}#rx{@*_Ru;*$&6&fx10Stz%xe zn~E4((m>{9hZ0}(hrrdX5t-47I7;ih7FNE$i0fkl{i3t{L+QBljh{XVj385T#{tqX z@00DpkQEU#PHjBe@D>`jhSou&RUx*Nzw-|k{kGXl@mA6_yfR$gzMP3{TXFuxG4I* zeGHQCF>4cAd2GJH2=Zd{z~l3Q+BY1YC7S)9&`4OYaarn@&1C$52uY<2-+#c^zpf*L zoA>(%PyE;^zJdb|JVsnyAvGPk&c}yKR_5|f zKb-!_52v3ZuH%@bb^U0nA^w=YOggeK-$`Q@2jm4@y7!hNXHt8a%lXShkhr|$b8^># zM-gsqJs_tlU=J|q;@!~&owvrKIWgVQsqnUo4wzTW?8C%_f0&G%Se2d$d^*5K0nj-&sn7Wi-=TZA+o&#SqBN;02 zua1B#7mQ;s3h+;S)wkTfV`ts=#VW|WZ0B36UT1^CQxU1-k&d8#+9-kiJxaJxmLrYZ zxfeJk05{Jc2va|*wP>)DKH!KHlk+4zcdWALrjQ=Z5i$~V`=zP-rGY9e*V!*Bdtt`h zg~ZyMlU^rE{%NV@LpE<1q~lv~9!@J|srUS?WVgRWpOp_YU$2JByjFV_g6!{y)Z5H? z7b>YO?y8Gj-w510%BabUVhu^H^*t!P5zMU#xR}$mD$H&xUPI&vtC5kxTU4*eEU%@{eBMX$)SmXU~7zD0F`@b z)`1Q>*apJsvhJ@k#b|7QfNv7d<82&}2RmmO9bc4}-dn)ZTnt^v`{2@+MP!3LsvzUf z`yvkjrhhG(HFDQaiRB$pvwnLcf7lJ*?EH#FPHtE>4Gu%#zyQg-<)1fe{rF(dsz8#Y zOZ*tzNc3=h+xO*x)7D7==Te6=JAi&Y|I6&8=Ft@Pi_YxzOd`OQZ4>P}) z@3$4pRl*f&%J*mqM*Jw&%R4(3(sRFetHdR0T9V;nPApRo3bH2HA4}FwQPb?{7yzpU=N+@?~>+9 zL7Huv7i?82LuIn_5E46S7OJ~MIPRBpV4%~&39r*SwTF-lT{K?B`3{qGCS;6l!9e$| z%(Cna!`z~CmZw8y<+K&wF=iLlFN}n*1E~n?>-6R2dW;|d+nx1#dPgS z#`LveV`R^fXU0KSo7IVK|D@wT**FhLe_kh{fbSp`BF;(gT&}b~vsC(S=VpcUa;BZ> zrKeh*_MY<^Y$0Xst7yoq zeOxg|S@Cb4w;JW-l6$@PO&#oyAnw=SUJI4i{ywmZpWHRC=s&XX#?G3dPoSda$LAWY z`)P=4m#9upV!!U4{l{{#d2m{GEs2~;HS97^?T~#G+y9y|7yz_3oJYRkP&UgP(Twbk zMew}n5x)F>GdctdpU-Ju4avS>?qvCDhlu#@C;wF4BjN;=C9#*J$PYaGff$p73Tu>1N`MFwe|iS+|f6&B|$^yHd`O_O3PG{W68X=D7JN z>8FRO9BPfkh~Vmm9WjP(nxUjjT%H2dBW`6qqYUZVMdf{JAE= zD8k4U9d2kYMnp58bi+~;YC3!wN5Vq=n8yf<82ot1gT`<}TL&w5UY?VM{L7=2X>$nT z;Hd=G1_UFogPC#`vLoHNqQ4iS_#PQ9sE#7T-Oq=M)tW9qE-}3D^;;sv zM8NSb3dWgD<4=9sCIn=ioOG3~N>|@Cc#W9#hWGg+&vwJQ<@}-Fe>3hkdzi%gf;9S? zdT!4+3Oa&c5r?}E`+Fjpl~CM;>nQV-QHrBvV(IuPYE?&nZ^-6e_7HD@J=rg zi8X|37t0pH2hVC(q;k69zRsUXotxys2zAkYlzfd|i;=*xhO$heWo92k$;J1abVcbq z0$J8scPjaIU`_PWO71B(NAq$$Ri^s1)k9k;oBO?FK=kpyT`p8Q`25RvRAZ-v#Gd<6 zc&61P5$>>Ed~*dWPsnIhyRA268w2WuXA~*M<_7CeuQ%rxdc?kZV1*IQz8XOh5$j~c zzmUp-kUc}{)Tj9Qq{0c0@w^y9V>Vok!$rAfFJ+ ztV-uLSrOGcc=B$!m&**Z#?{a2eMf>sAli5;fE=zGG(RW%BOu)?mmZg4Slo`WXI#n( z(zI@8V1~!T80^|-5tf4dT8TP={-x)%OYrc`;zi0e%mpLzMpQ{I#LaSE;FFT$N>I`Q;{Yh3U$)F@2Je z;&OL5)4u8NnrHx)y&dD%vjYZ~YeAB}s|Mj8kXF&fBs%UBu6FX0wENn`pxSmV#c_;& zW61hXwoLc?M+YC>SoX`6z8{s7GX~1#MT8t=>v}G^8!|-Vz!(k+sz72u9ym zNMsL#9yVOJIlbS{ceq6$L1HNH*~7*3Io$f2-Ws~H#?>=DzSc}Gi}MBQ`r<@fK+I<^ zH&~tbQsUNAlqR}!M}s;1D&T53xoJ_vs=!?zS(USW|LwK7u?#B40VoqIh6_&OhQ{TE zu(PRnoZYke>OS6>VU14*di8%jJ1HKim=(m7Nmn88UhC(_qJ~Q*&R5Yc{0PGb25!}0V6_PF@O-;=%c^%OYVIfJtg_V*i$~_r}DZm-@VCTi9${|?NPZP z;Fxf`{Q@N1>zTSF=ll|Lt2P};o{<1iul0%p4N-!Qoaa^a=&%D3t-Z!Rphsw)zkmp! zI9;+=mW_Is*qTJIE|ZV6-+w8iIDXfem${tzK*qw@1DFO*{+w#pmeI-*suKdccBGm3 z`{sw&^=cuLn+XvdyG8k}TAHK>>;>&TYKeo@U)0OqgV5dVxtDAl;w;l-!b_F2zpn;!(TH4KwZr|ckd>YZ?iJtvJBvJoo4p#f z0UwyGAgLeygOOlcC0{9lsDQbAq&k?b;p#l;&moHBQmn30jcckHo^uH21G5VNoKp}xgIQJ$t~_c6Q;&9cv+fJ4VZp(}FF}0&1guta@D_Kk!h{xl2*Hq~ z4>fU531Ye42x{tUMk7x5WZFN%pICF*ex+_>vo-h41;nRHOQU%CI zlFEMta^mXab0PP>W0mtb?QT7?Nihm|6zUn8s&p(vb-?+H&ay~z;fmezzBhvkF;+sR zlKtH6?%yx)n!foSYRYBxu-VST>XqyJ`=XYCarUdbalc`378RQ_@wN9v9 zCWM}_TW=$Ww4K6(KS=X(Coo31gqWk^!Gw{mB0oYp+mi<>C5tG`G^8Xt55x__80X~S zL;zA|H2vphfuk9?{ z12{TrQVsOOzhU_o_n zl=7(ZR>&sR%Nic{Gg0BgsP{97ReNCd=CBkml{?n=T&i+Flnm;8hUZH9fAk$M2%A55 z=6)rDKhYy}x}wHVt}5~^y(hA@vd52)PtoNx*a{7urKC8FN_r;0_ux_&CW!Nmt?+f+ z4F{rF)yTzJRXv~dVL>C7-xCsS}N3^ zcWLfheY$*d_iyEsP9$|&t?IOO)X+!nD-fBU5&M2LP*}C9&S=zf0NU%B=@@B zCPkZd!PSa76_zf2Io#aHmigiqzp=@9gH)~BQDYpYYlPswYElWWhF+@iKD-iRE+#REKikLF!kjc?rsbugzpLW4@nx>^;)t^x(9K=@8mU$opz zZUhZN71~lRGqd#T&tIkR6g?pFZ9gXW9QO6vdR2STs~y@%`Frv{wJnQsIt+d^8^0j~ zLV;A;N-NG_8J#}-m!A|Pd!JBMigDu@FRLikxVYWaUJxPxOZFy+*h%_xOQ#UX4FYu% zKCzdHzwR=4VdnSE9n@%v5xA(m^?>;6d1MAB#%MYXG3u*5i0b< z(h0p)p1i-HQUU)jpTim$PtfWRmv#|f)raZ25e)~Fgwm!TtulI3pW;SMw&DJ{Vsszr zur<|+y!bi2pVL*~6F~E&TYB|+Q8=60;j$leHNZpXG|l5S(LdBu9JCb%{^>_OnU6SX z`?7Wg92n!NrEBg1axjg(x_e$81dTQ%7{ItifJxCXXZ8lJ zUq3J-o(QWaP;bXc9PjU+K=>DP7SqOMic3&w|eIcN!!9xp|?-oaRWT znC<}|zx%`x+;}_07tLj{p6I3rPRC55x)!e2`X{m*GQ>4LIqzj`3dtiny_xG&SH_J* z=(s#R%}&;UL2Gz%#mf(|nGg^>R%VcnqH2QQDG@uRQ7j3#Ddvi#KSbsodBAy3<`1pU zDMxSMc#-0LnaecihYuv{1WrDj+Ks4u%JOd1Nt#ci@Dlj}PO|q&=mcGMv)2#50?uLo zxz)SMi~vmo7`%6gPna<9ghj2a+;1Wuw)=rKW`1zj(%S6i8*AY~jXMZ-68hRA_2F0CM&1Rq!Y z#VSz8^-l?JXYJpdBPxOK&o3Jn4nklRY8To#JSn}pKdzw`5yk+6J-(6Eu2XVvePNFu zi{2b~2{JWFy2Pud<&2p2xyo)d_2fq5a3Pu3T3={mbcB-PGA@^rcF&-$RR1ht(DbXs z+wcCe@bpJo+>oM`z@UMeT}Do?@DyGx(tLpl+V%rP+uvzx|DR#tzLh>Bk~~pmzrk5O z>>uXOtUa_hTbd6paM^Jtf?67R)VS4D)!)_l1U*@_N2o@^tlQuEn@_yGxV-rp_Md60 z+(y@?@0d4Z6mZ!$semlE$7dIu9*3VlXu8p~1yF3-IirSthlTFJ!M@C4i~N%X^OzHg zP!-XSB+c7cyjR>n&XEuXQnJRXH0kR@BAX>Oq(}pd`{H|fy@Zod7Rvw@+G}w*TQ4ruQiki)d+KNX-D4LNZkw)yCgBy#JPalfyhiVj^n*-DUr5Gwe^uCVJzk@3 zY`+p&P6xw)Igybg?jxO1?IUc(=U>;9FTQa{HW_vGE4qo18AY!P+a{xkDKbE1v-?*f z~Y) z-*y%CzEybFzUU*0+tAi=HSFVF8)n6MA=Pbvn?Oz}>`m1m)mp#Scrz8mrAc3og+oSg` z`6l++-F_jKV?SKRxbTQ*-yYfN^9@eK?;Ng&_W6o_d%aHlh7XY-RChR@aly^_SIU}v zcCPncg`q8>y$`<-ECmI*uCk*^Uo`U*B|Kd-`#bM1{d)y`Ks`TB^MmvoV3F3ROOqL~ zdZ+rh-R!~!0cbG9+&(hL=G%Uv1_2O0dD>s{^Ob#WE43ub@xwQ03>($Hrm_M#&{u&4 zw*9Lq+-;znpMQODRK0q&LKatfmN*X)_m};|#eYwBSbGujTn`_nDAYxyvv;((^5A^G z*TN4P&Ygt+wAYmV)GhAEBn&p{mki%myIvK zrh@G)YH1KfDb@cidA-<^mcl_XEI_aJ_0tP9kb-VoDEo>Z;vz@a`T0#f{U&9tPDr+@U`)@suf1jalBQ$Js81U+bIN*b1sQhg!G#b6j>{KJ<^T zklu4!X7By|F$6E+iuxayTJ?^V$Gx!~*;gzyslY7gv={V3$+$VDNUf4o&;=}YzzyV2WeTOOEViPRe0sz#r0eOwBh@o z$5_Pm_|s%*YU-{0ZT7y4tH?lIz?st@2vI-8tZI?_%gpzkRWfM%7%B3NtUuhX+LaFj zzCCD`ZM0v)@p9%bY(|zoFffa&ysS&sMp3ivOEc@)AmVV@kHTkUEZw z`RV;*)Wt=jwYt9hu$Nwq?4U=8qHH$4u?tIkYY{azd8K@7Hn6n872%$}_5R$oNL$!Z z+#lB@-<;Cb75zM0MgXr|$^UsWANh4Lhr@H{dP+q|OtiVH!HFoXG8KmJ&fP-lrFbYAuX zVZjhPkSL5@RemDX&rF~TlUw!eF3EU8$In5_iKaI7all*$A#LWuEX5^yIL`aU`4LU0 z4&2w*!DwepY11kWHsx;29fDTyw4M#Z1P8&>_j5;!831Nz4h9e%``Y8r{TzSHLHMc< zX_Nmlg(8x?3`jEixW2+|2&4gD+Dz6T8NYMqoB-~5PN`S-4v-ONRiTcl(yyS#B=Xnp z*TIG^d_C`-8z*--d|}n=xcYYby!uvBG7K}+`G?Zz_Bqk!84i14j5>mK5%->6>(|Qa z$*^Clo`2@D*c_&J)cjprz0l50jhhlIgyv%-@zGXSTZ)Zuw&q9P8f>m`Bx#i-jS77) zgfDil>7|M3oq1_qKsdbpKW{}ieyuZ8>AG5gvPf9Kh)~*Pqxs`n`}U>sw%X6tpTuQ7 zk#tv12&oQ{cwZ*T%sqS_N6dcC&bMe>y{qrMzVr_}<-6kn_#GY|?x^I9Ba8S^)`(a_HLHN5wT)T+Q|O!acBcUHnQm>dz1( zBIxk`zOO%Nn2F`pPIw^9(Zkbnn~?BEc6$#%*_e}YD+9qXR6Cc=o7FN0Kk+=)lLmLZt9}?xY>E{BA1XH?bU{b^7_?0;pPP;ot}`8YrW(O zO-|*)6i)LQ3O(0P5SKt$sfxI_$H6+|Yaf&%LkPBKyxPqF6W^Jv#k0 zASPz`wW`RJ@OTk;!de=@6??IDMxvgX7nDEaC3oNUkiZ9z`UJBW4Vk2od*$y+@;lV5 z!;|~HFTwu7k(J2y5&J-X$@(UH`z$aB)VD}->{ z`;r)+OSJ-2dwT7?7V&wQ&9u(n(cO~I@LY!avs+p7?uzjur<(B_nME|wRXq}9*$V)>FSI zd?zkEa)XKORHn> z)*jg{6J>z*^+`z%F(pOmO|jnD?B?C=IRQIZwVBXP`Rj)6G;`Z$*|G-sXL}DbolfU6 zdBydbu|-1Uaiy2Se)8k_5vsb4MMX=-Lx$WbDfGd76v4iBJ#IK7MHqLvZ7y5(6mAHe zINECWyB_2fKhhBqCEZCYUTyYrh|+~lRMv4{*eC7xyjjcn`c5wV2s#mjCD!8c?|FIq z-IqsO-gT7x_*M3USI-#aw+j1F=RCYBed3E>Tig`?XZDvT95P4kYyMf1+QZ8V*({`L zde!82YF#%^D}w2>uhL_hs-;jw7z$N<2Cmd*@0TDlx(HUF+*QuETuEU0**IOZv-V|g z!mB%z*iuJcOq^}sB{80ZA@OiY=F{29Pr%N8xwcU&;)uSH{-~VUoBC8LvA*wf0x?S( zltY3b>3C=EH^%Rej|aETJtDdz0Pe2{R@H)%!r}e#w%~&*$8ltO8403?pFt}0bsWA} zr%ctm0*y@FIOTV^omq8E@cGC^R63&pG7NwV&nA_*slmc2PUZ)hwO|_f3xY~Iy^WA$sn9-OxeUUq z@B3pPm-y+w?g66i8_$l`8@d`k%bsWh9RykY4YNXxPoA%@4KrQ4gnTIZTO)t$ga6&a zClchb{oZ&fhZnw>$m!WjukDO^Bkz~gEj0dgFqhX=^6}IEnn8HfGRO+ zn-md*-uX%^HvyV0v^x*qtLutA_glGR!r7qlt`{V2SSSR-^!0>{r(?6LVA6V)7l#YA z_o}{Yfa%7HK(gFd>ZHfh1@9Jrgp!cqRX8&5V$Vu^Fwc;^O>PtiS>nIf6>4;2BugP> z)x-7y5*pe^a-rLBEgv(kdh&%P8>b49&+SqDB=?Vgda&cZ_%Ww;6+0Ejy1dutVMFXT z+{HLJXw19m$-+0&D}T2BIB@+*d+~vHS=8rBRDfG%q;z{uvmI>AQs9F=6MehW6&1iV^_QL_;kiHB#{^U9C9>JPKE7W|5w5>; zT}afm%5V0X_!#P98JEe&v3Ad3PZ&Sv=F)KG1kFe^9)X*|+laxZhIFiH5?hJ6psCW9IoY9g>~u9WNR?VE z5QC7PsZ$Y8?BzrhHmmRgDP6iA{uF%MzL@a72MbE8Y0rRs-}&t-P!EC``f%t>m_z0H z^?8&8@^KW>#8uOZYbLIvi)CI`%O_?!zROQ8QOlS#cZ!W%&Lfa!8 z0=oEke%Q$y(eH7uj^g?d!DCI;oe=%=^iT_GMYaJ)JW}NWMA~~TB^>#(rbzJbV)%)# znJ>@P-Bsa#Gch@*gMlH60oNT(x340K_@N=GWZx4inR;h=Dit4>+l{*-C2gy z!_9HZtMq}=I^AX3mJ`wv?E3a{l zrPLnG)q0$>O^D)kiMv)GRm^#pjCc!M|2p1Ya3f_f_COrR)-NAyHW_!SXPd*#r*T+Hnsh2Xq~Z;+tF!CAGq3;)`Pj(AsQ4Ht}p(uV+y$7dH=d@vGY6+9ON}UEhyc(7rnFU#~ zL=&Sy^Ze%YZR@m0J5^a^YPTm%KCY@DK1Bjhe=ekiJE~0^bkAq2wy7X|*X9|mYIm^J zWARa}Qb7?elgfS&f2HZH-9A}b&-YUs^xeUW$lx((KVq%XF)yh$r6S7qcU6U)k0}5O z$H=IvQ>6wI!Qh)2+2eX2#2%CQXjZb%G?4an=19o*Kbn?tezfYInif%4dfMM<2Bs*a zSRV!dQr(^8Vr19PP}2n#6MJsu1);v_Cf#8;Xc_#5F;*p=ijlM<8I&7dPwuqTtLK&X;_AiS2vG zEz2*s_gWim&f2#a$MVe#+(XN_KiL!{WC9Y>%w<+)N=<)a*SpX^_$SvK``UV=_nM86 ziY11D$C{txNqQON3?Om99Nh*<9IbAnjgChVa0BgDFUJVFn|bf%22U3$g!`*Hy>t0| z15T&l3~7-ixEnvecj8#9>S;GEaLMi*`S)5f)O6(Fm~ZJH~pDHWO^x=PNB=kvC2{6fT^ z&-=)A{;Ri|`yt)S^An2>dxqyDX!NXQ{{~^qWIOmt2xxD*MG>AEQ>l=y zzBv3UZa&;r8i` z|u-oH5y#QIeJ|V{6nT8Xa!LNL;wkLxm-CoOpbRPq0b6zsxTD z>XX&W7vr?6c?<06DGw)_`nB@Ns5>1M!{69uL+t?NIz32J@IeS?eKX-!`QY8z-wKJE zrca7=w^c64hTo{8V9P6XcW|P<3dTJeu5O-|I5?eO(!zuh!Gra>*%&r zgO5dBaWX^Y@a~f@@!Q_(Ps-fy%4qk?7Vsfr>lC;MrL3jdkc1xL!Ytc4yQ#zApFBf* zEQBB&Npy%Izt_az-7*tmrLtcipM990*Kj|0C-&xoj)|28p#n@=KN%Jq$#%G1w$JB> zI5X>3$1DSd!2BKV8~65&i-8=d>%I*@)aZol7`t5b`M0kC+RX3MEUAMtdOjT3K(>y6 z`QfHNX&c*Y&;#aFGI~U^JlC^DwYRaiaB&}lY2|i>oi+W-z}g@C*ua~gAPR@IxYH`%TM`dpiAlZ9XLD-DC*qni3k*0i^)qEo(~ZcpKOxuHFJ zQocurI__udk&RwZIM)QoBZ|H{Z^Kc-kTZ5QQYe7YZ~G#q2Aw*y%}MFn*PvWRmVBU`j+XY51;;tXArz<9}b6QIB+x4 zWRAYjDRiFS9ps)ThYHWbFZ(tTs@Y$sxTKKp9(BmQuXYW(cv^3zX`&Ro=07Rd>$PjK z?VIYSj8v{VIUlVvef|cKY#!!DMQLwaVxIM;NdUZ!xgN)^Vb>1gsK%&a)ckd6?$#;+UUU7(>{9>7dt1QIPcsCv+ z%_M1`-*m66O7$U0nZ>444)+co)@9U8fx{eR6JIjnezx;>{K3My1L1PyeL`jD?a7XH zrB5wOlpzWtbo=(6>{-w}%w*REg$ocdO~Ab3D}En83EuQEzGfI2(E6SHr~?W zARy2%J=7fUz~}Z$CHxW*@vLGojUs>!2W1Vm0z{|6T^PZ=1+f*7PKa`*5IRebIU)=DM=>kST2T9Op{Rw z(8I#;Jk|h|J}$jsZ~MqjymNr>!hcDcKZ^e%ogjV=YLk~m{{yChGpmr-^VIELxct=v zp%%ywMA3uE?jo9}AD}{A6PA;ZJkOug(!X*fGKD64SqDltjd(FWJ?Dhw^M^^qu@-H& zzb64r1k0O0N=vJeFXO|HTZLp*bWi$L4$sfA&AnT0U2tb(bk$iux@qifJmu<{J4V7y z2%mi=ZfJ+Kc)Gn6*d)Jy<`M_b<0BFF6MG(f9`D&vTmg@Dq)LbVP`+^|QbR^MzPwnC zIuF?&w@?$UXAL7VCwc9YOx0aOiJO$~HyKhMeTtR*N`g#23lz+s7cdH!GmNmUb?N9J zct2OE=&!=rhKo7*w#;~O4#F_M?!WRmsr1ZX;giqOXqxgT;N2i~2|UABt$wZ31rnfr zaUlC`7(q;F+2RE@&|iXmcsk;YN9KAjUuvex)ejYmr}I^4q8O4Kd&o+TYE^WiFEiF- zaW%S2)zZ!3I&7rTqd||{>HU)Ej>cXj zm=l+N8wC-IcLv$SnspU*K@<&!om{Fv6&KLdyMUT`#1!DZI&8zzypq+u+Fx&kHTe&< z8)3&f!DTtymm7R4cviN9puic*fD<9K;S}xX^&6p1kk#B@uhexp!?2t%NzF)A_O%hI z*ZlV`7(aA=jOWLBYc!=`NB){OBQz&V)p>WH|cCPdF22+=F=_KS8%_m*ulBcajYuGUrV#`>j*^6cIi z>hLrl`w4Kf3_nY?AE*={TyjrBEGTod8I3tcD`-Pi-+4%T`|8^5vA(oT0!D9ZK=wmB z`t&r~eOHq!Zzc$%Axmp-D!X|Q=EF?9%0 zYv2WyceeNh%r+|m)v%E2g$x-*8bRK5g+h^V$3UQxlf` zZ0qVobNB`^CNiC5&g>SY{#$;{ROrn0o0AVA-@DA@x8nWbco`& z6V1`}PMl(Zn14^gVgM#XTNyWc8m`x<{3&>`$rDu)?q_u}CXHg_i6kw17$M<@3KoOa zSNQ?m$VxcshXLiU`CRzP{UKlr1!_xz{3;cS6Y%MUf@n@dcyy36jrrqzXQrXM?Xd`m z*fOfmjj~wQ`Pil>@Xj?;$K@|b&>Fh-F>V_*RBP+v#(2AY%vbitozGu4gSv^4 z(+MHwkAdA9;)IZDt1OIE)dJzk0fl=(h>YkxIMuApaNLiCn<;;_613YVwJ(jhuNSi( zAWWbUC$2;94fAXt8WL8(T*BtNQDm)9e5G` z!Yq7j9V8`wsJLrlW9~zv zZqwdy)tX0q^duR=_`Q$8h}&CjuNk>Ns`KW}I02(180y zqJf~qH$^gnlHu!nQQbX8-CLFc35OH*-fJ$4=;5a@ypqB#w&BQ`}pM(D>7OKd|O+@Y`M^JCcG`wb8SF|h{HAGUj&!F4e zGrDwb%5L)mPupzf=v6+Zv2udFB{`jg>pB|m9^=bnOlA==W~m}PX6-y zFc(1=K7T_XHa^}lH%T~&a%c1OnNVdWJ?L7;do)rrlk%DO_sydIsOUcTE2eVeu3>{^ zpF$1M9UViHfu;o7pl1ctxgt1o>i`GIJ_izVj?v&HD(CqjgHU20*6~yRjn+6eJT?gU zAYUgdJVZv~uxB(<$pYpSHVf0+2P@x$l&KtgburF|puAlS1T8Sh*#BRCVV*u`hLWGCnI7HZj%+A&^2UoD zg6?cB9vsWvXZ0uhd7S~g{Bv}a_nD)eL%k*3_jR0dENIutBljKcrv~wuikzZcGA_3t z`1g3q&#JxQY%|Dz3Z!!I3b$46@PN~l5L{3~wuCp^NIE`s%U)`qK9fW?KJe&rl}yIM z`XpP*p3#jrokoZ}`Q^z6a%_grQHH8K#yyt~PHATGmRJ|vp9Tb;!>SNk@=WShn>EFDRE6hdZK4Ut1C4;r} zT-zUiMcSc319(*AMK!uVbZ$UhztmWe82HUaA) zoTO=ZVINNx4iO*rp3vfpsN>8y5|^n`x?`J;Av|YSc`^FoBJYc1y!#sauZr*5!@Glg zljF!E9l|q7Pys}vUG^a+JI4}npO@aCV}2sZvk!pTDkFh8^;;NM=rBhMsui_QmXE}w zNxSgzj$={+&Ph%HIT!GDuu&7{7TzPZV^!K9$YNQEtkQiSb|AP&(-)D`zQ{ixovR&v zoLf-x_wZot;%H|?_c~rBW@}OrsPP3*HFRMoPXUOhJ4K=xZ-K=S z%jc-wy-ioIdYt)?%l(d8-dU%uvDgwC$?^F-9N>X_7ATwD<3{)y?s8Fx^uTr#CMr+3 zr797bjxd!vE@OW`rZ>{h1!`RuPiRhZzO;??Gi}&Fex!RH*5^fM(MKF>aP!=PD~|zy zseul4y8=yT^2=bZuz!zl`}=4nKh@LqQC68|dk;EW5uracVURFS`&`t7viApqW~kEi zVvK;YUt!dGvU+CU$n#Nh&-G$pde^62BF^<|S}i>nvb#qw?eiXDH}yzuhvcTLN&#yAybx4eKgHiL08czu@wdkN{Z)*~6Nrx}tI6s|Uw-4)_x#BGw?!lXJ!H~Y z^Bmbp$Js|p$0>r-`iK8+0e!pe9hRZI*N5(~{6TH+tye{Z;~(QhdUC(%wz@gt17|?W z0p3bpE`eM<1MUk8CRa%!0kGx|G)Ui*lEGJW?((mv5V=9{VTqOp*E|Au~ z;c}3ECcUipH4li>aOLvY2?rHvPreS1%gl{^u2Xhqz;pYE0#}!l2OIh@I`0%ukgUjEpZH>bBm|Yp0JXVoPfC1#0AphBB^}tu z@~)P+B8)&?g09ZVm8)n#?7zxLvC>tDZd0xO0oaPybojhwjUr&{TiH+cF71QPbdB6; z*mwN;D&}SnqPFg(bqk$e9@O?30o%2)5HQ@JF3b5xj%t4P#Kf8gR63E-S&;qw7n7sR zS--E7#Hzc8DcfpOJ&9-U&CEZ16mahiFJ%F13uN;YY)!NsVh53{NEP^6wMqSn*%CwN%L)J3W*IX}R=OK#IjV7r*r=rH{%MT+S zSFv*fshC&UYp&{UW*)2-Ontg;J96DR3Y7k5MpdR{w9hm6Gz-)ZlXo3cJ-SA3xB&Im zs#iirbiO(D3PZk&DTfBs5Op6Mh{N8NYN zZ^8UYgX>;tso0-bM>w&k|42sfF4($W%jxS?>guDxiqUyajKnp0>9| z3wAQwBw&Tz6CNFao(phTB9{U83w@e%QaUzk;MH>|PfkriOhUWcS)S%6|h$AU$|?&{2$S|MdNv9k-s zRp(NwT;AVdP+9@~Z_SL|)Ro*j;Z9+K3q5c-m z0j;88j8bmh^9g2(rS+`&MQPoDdkFS?pDKO2mudOErp}9IKl)5#GK)^Q>~YA?BCz*} z7|Ux8`=nFxJ87U{UF4Td59@rgmVF`98YyEE`?w%X{gPVGlLsdMM;de(BIgEjo(_^{ z)x4Vb*YpvFi^D8jXw!~y`s99iVpP|Ce_(L8ViORqVu%19O}o$BEB`*4%l+kH3a31Q zPp%VaHM7?wwwA8*BE%irXTDz6a}(ubl#v+79IIPactQSHM30ik4$8+Y?8C6(>Os?1 zl#|cz&aooNkNODbLSAX_$SIy&!4%?1L|JCJf2KKH_yZ+Mfu!Kwip|z+-Ri$Lut4oj zf>f&h$=%xQ4MUyN=|Jyif-r0CC>I=&)dIqi-XBg(H9(4{ZFGMMw2~s)Dkf_mEd24r zK4jHBMi~V@V1gVD`;GfqN3bQAlMsRiq_PFdoW*y`B)o4{_4jJ4b^UY2%-wfF?u+XQ zVY5ZJwr`JVv*FwVZv!^Q+J@m?ks}I@L$n9Pb6!;*r^6*Vn9~5W;`TB!XZRi7>H8b~ z5+@*x$A-n#JRlG^-5_2#CHi&$_MrwfyM~!b1dy$Kxg6@( z7w?!Jz^CY)eu`b7k5R~w3Nin@2A@1h@1uU%kNg3Q*oX>vrLIrmQUIk8UIdG3l?)=Y z&uViLKb-aNLpgukr=u4SyOt3!kg0$yew@a6sc`1_hq;3z|HqHH7N=p?*d@68ud_V;;EjE)&QzL9XE zQTJyJ3D8OcBTTH%2mBc&U>LEh?fSzV{92q|rfw16-7Wplre|!?ON7rw_}H&~)=7b! znY|CE^YL(2_haDbLwMNl@Efm=MZj-T-WymBDxZaWbVWApA|M;ST#_cmTpXgX z_X87CW^Yv_OH{&{<2=W?{O+bt;kgfcX|s9gpauoT+=Q|QPqyM&;j|D+>;->musE&H zCK7_=?R&33lL6rro`*vk{lWBz#4el&c)Zs`!G%_toJ1o9641`lv;Ud+Am;gW5T}i} zR~57ShTg29NA;ox8wqv~$HeUisM5ap8t5d9suG`L@)epfaf_=JG+Gzk!wDDT6p)=a z@+Yqw4q=$@!IY2OXX&#+De?OW&SrRR7GWc@@Xq^j@iebwUcOtkOE-_eE)#=*RONXQ z;TX`u)himtG5x+2Kz7#21?;s_0_XfdMSDye?9p=+Nd_F^X=nZXH?uSC?nF0}GzLO! zjei=nBD~b>RWg&+LI35haGj8DODf~*sF`6asTO8f!fOd^c(vh3OY*wkk5(2sC_1d(L^6@!(Sev3a#K01#Kn2c=u`7*~S#g$ROjYIIlkdhNnJ)$+$4Sfo@09WGUK0y zt-GdpmFIAI6o2pE`)P~zbp*+tY#9&s@41Gv^ghH@fcsEMZ!XrII$-DcW2RtAh}voP z@F5X;*vEp)t=!3g%E(eQ0LeA2wS2SRMdLksetoFXr_O<{57XPjUo8QNS{rk3(9`MUcx9*9ql-m24`&&9# zeCh5Q<9KI;!(6W79=v9a5Pa9_|F~zL#X1aeplLz5PPpo4KGb+q62|;f)qO z_j?GHE*L4`|4qJ+*acCUFZ}IDE-7EKT|pbYx4nbSw5oZSva%SKS}y88v}sXDo&xns*L~=z zOiQo;4(Doh+0T&zaP1syj4g&V!8`SnVJt(_ydH645L;C_`V1 zPL6n&7Us^BuoVAHgx17m1_F>gE$uZw@adU}u1r$L`{spADMq)yf zm8w2BlAd2srUZeMI9jQM1pG9r+M><=+5EDJds+4ydTEYOXzz!&|6vn+_=mm>zke_8 z7YC7`KMOX^o(|uohqMY$f=_p9Z(Atg@tWLDuENKw)dokb>oHGZ@il)NfQFf$k*E&} z7!O?^7$|XTW4gUJmL73Zmc!Lh8vHdd7Y@=X{%lp-KBf?AQG$(nUpIPhKSRXs*XEf1 zZWDli7TRHN@qv|%3hKId>@p&sW&XBwb$&f)6TXjOGQsFPh2y(8!6~gdhCa!Vb8~PR z77JOJqM7DiQ!Uy@3{t1ZiSlpR!l%<&PaJ3?uJ%b}P(s?OQnJ9)uny7a>#nmpE8pY9 zA~P?8{c=DV3*Srox#~7m^f~tAG!c2TU?P42zeCPYvT#Y!vitp%G$fX!^m;|}-)ATI zpPMoq+TP`bU;A-BARmPs5dPdM0lY8`3Gwlq&gBUR^ZkMlOp&tp0Uv2!EfinYGj%Up zVlD5gOgMLNUX6*fMPl=^UI2_a&mtRR}%$}40>P!4eZ-7>^*?v^0Ot%L}7+Vo*7BTlw zftFHKQ!e}V-VZaFLk4OF{MG)3qx^o#mFC>$l5U#AjLe5)QA2I9;(~Y%#eXUqq2UqQ zUDqgSzFEFe9UQJ;tyR$hbwW&ANN+1Rq)|Rs>Z$vq8GNBV4=RV6jT!?OVH#9R>BF- z%-NfMmdBzb3MbHKKiat$9(MYPK$e3m{IxkFApY{M)hoJM>+WqX=EXk!pl-#nbgpOk z%CsQS2-V4|`&!MNnh0dSt(EFti1q5vJ~e-h@3nI*%_K5gk6{G6LMuz} zx61Fj|KG?udlF9?vRna0rX0 zCaupjA`y&A5~9{TE+k|RjCUsd=d9$+KnQ$gO4((*)@y&`<^DvYRNldXIF85J#e$tbh=`9Xh(*AQ)~`USl~Q0XOfX^56{-fGO(U<~(Y{_Y$T zd}w-n;W`eWhOrj!bcpRk7a!B+p>N;)X9wt z5|o$zWWJjz9P|8SCHtLlP3Xz|6>E%L%g)>Jp_Ktj9Y3z8LumI}zog+&%IA>}S+(dH z0S6S|uzksp&fg3zTf`s^&^KzRZN&BNByTHG0p}fp&@S^#6Mit?fjtp2t&8I8Y(+_{uF<=0N_Dxw=w~auF)h^8A z?)E-ld*bjz5xdr9x8iAB6U=+WLPYiStv)oijFl03pWo6y?4(lk)ApE*v)5AmmI%g%=TnHn&;`A z70^#4uahQjBkoQdAgXs6O_dbk&DLduzD?BcOwc3}jD0F7xRVHhL9hiL(n0ilew5Vh zhZ*6^_XsaP$Tv*0#Q6>yJvv!;*vQHM_+|vQ%)iba2+hNz24IXnu?73PWmjz<7k?aE z29iNWv6j*A`toLCmm#h~t){;gHX^B|a;X?qKtr6#g}pf;I?H{UP}UdJ;uBiq-;v=_ z8kg}Oc^=ymL;R@Vg@8~(*uD8oAM}~_DRpL=nZ_ohpG9M+N<3T2bR>->3#AfdwbD5dGHDUy;7yT`MDf)tpVG{J4s*e>v9K2pU1ST4lrW zk5W(<{-Mvu$0wosxCb-CznIg7OTOJQllk$pXhus_(d79}+lPC9UUsB8yS&E8u+32^N07oj){ zfBF06W-CvkdR&{lU|v4+i8oYAbfD47XDuEh85q8hql;Q3+*?$E-Ayb$DZSu{VUV41 z_Ob1_em-3?F~pz{*0xo;L-2!8%viX&6QCqc46jqBrjFlp)I9)ibieky$$^P$l<#+E z0V;lPzxw6$c|+4}3-O0#*~Ht#)-zmr&gJ!!?&MEx-;o0ZT=!H+2Wi|`T!O_zH7Z6D??wW!#A`Rhc+x1^?QntC zeg3^1M?j4vZH9TpTp0t^z8|to!^b21MWyA0mpD%06SkdS(|I@%&EDB0aO(T8TcO*J z+#<>s@2PjTkM_0SRS&Eq&Heh%`L#AoMNArcWW{ICk#T9Zr;r0ZzR0A{5~MkwT(W;f ziv_)0C=o+}qRq~H!bkThw$1tU4(8}kD$v_Msby;f>)87jEK`gXYb$J3*5#@Dz(MN! z3NWL9y@W}RKqGs(lL2VIOsJx*`R+NouIqh&_b^;z*4-{OJv{uQOOGCso39>NhEwGW zk$RY)Tl=L!10cY?>QWQAN&*V)_e=%(d;dnUqQ7HH-*3GmT1jQzR7yS&+l>j{%vDvJ zJ&GmPC}mmRbYsCv=x!>#{a5RIg2?!2K2fKk@ zpr~QG_&slFfo_DiKJUk>*LJSx-Y-KOn*(yJzg?kPprAk!02C7*ECCgi<8rR~j- z@ybD^SdUR8_YTKP#bsPdHQZW|??5DG`#`4w*f9w*s|6}$7K@= z#?6jq0UburXBXUF8h%gDa4NyXY@CJspEU6D&JZpA%(z10MEk>iHy#OG|@ zpZ8N{Awe=q`KW)D&@7k(BDLc=6sSq!7Q&Y?x5IaWP~d7mwo$?>1dF}mat{iu0EOW9 zPzwU73%gIso@z$llcj;$9G+8O{`HNfb$QH3^7um;8 z2Cd8X%7=V;qsd9`nI^i=V_VyX9ZMq1Md`>^&)%#@1gAtB?T2>-<{f-a%pn|j0j#UX z39fJ17u)8Qd|$637a?DM`SC_WA@@CuCnoG!;rB~i{tM&}7a0Y&2TDS?^3AcveQsZ~ z(#)0_AKlyJkF%PVC;j;88psJ#ObE*UD+RaL{*i`18SnLcP-R+r)ss`8q_qt{z26z2 zsct+ERsL;FFZ#HZ$Ss;?`q3ngB7Ei8ZfAMnJXJEd#+#h>5Ll`iu|-W&) zKdZ+uTT;*BGUt{7s|+JW720|3K0~KS`Fc4-<3@gaWlx5?i48>Uo=>$`Aq$3{Li~N&Qw`I{JMYf;O4%!h0r|$P`mEykM37#sL+>J zTdk4ve50_wYQ6s;baKL))_I>-$@|Tvg83|D z?5~h=C@gK>a7dFE>iMAR8jvFABJfT@ZGh(B zP{JDJX$|IIiQbNe6*b~Av)DQwz9zC{E_=Z4(8t1IpHaHR^q2tb~$4RD}sky7G6JrJn8F2AlaV9~{xda|t8!7qZxg5qoG>u8|o>=$XG_ zw%P)35iijGzQ%t#`~RSLpDbCW7F#|%Bq3-BGYU|GpmA2+$_59_M;!f-)Z05{I78w8 zS;a=g+oh4xOf)!!OXFZx)Ta5k+#MdfXHv1TM!@`*mo>G*4r4(_?CZMp<)t{cVi0%> zpmgSmfF{V^8~+2YoTw_>I|}Gqzyo{ZNnyO>j8>WdXKhQ)C** zT;?LZ+xgI0)eGnr)F@DdZo`W}xRlJkI2wEgn!Gxm)U)l1*Q}z>J%lNm?dq8YiQ!9FkykINGPyfHBl3;lrCzdGyWv(rUVkx9g_sPs ztu4KMW9lE=5^g!n;V^}SvqTWzz6tK$*nO%`UYJ~dI9<0GmcI*FDA^a)I7V!hA(g_f zjt#Pl{KVWwyxJ&$yIyYds^RTd>OdACSKOBQt=_|GdGr#1 z9#SFI)k3&`YTIG_3ah&QoS2@on+RsXySpNANzYa_-p@h^f9jKeJp{Nk%j@cx&GV@{ zRP%`pZ!q2dDP3NV$S=w&$tK9O&F68hOT~|0?dyB&P&|WGl@eXLXXQcd?Z43)lpm9S zP_H(q9l>1G*g1Olqh;J>{zxm7!7LiU-7Kx`+lE&J~5GJqy@tAqpq}Hy)wRZ z1A0%j>&5h6pT(L&;BEvod%9b z`;;%}UypqP^kQ!h%rHoSNP;l+5hDE;E;oBiX?2rkVZ0ta!c znKVigk*BF3j^dgwv@wVt0)P12nFst8@SgVpp(ccsE8-bLxc>_2#6J$#h>=q#UqNj9 zxn4fQ9N8mo_oH8-K-55~fWu#XJ~Zj<5)Vt93H*m0{i` zp!^_2^A-;S+^@I+;Y4vx3`*>+Avj5ZO%Qv>a$u76kidiGyC7J8{1x}*e1IrdD=+s?<+U-Zh~hOe7_o%!#`{M7qQQ<PLA+qud&RUKurXr{y?PC`mZ@qNVB6E`0{<6!CIc>H6067>6fZD!A0#M;FY3>IY>u zFizd?Vmz1w=gg@(JBQPFA*h>=8dj1(<$+%O_W4vhoKaqTCfZNhS0!u>!ukcI zBKdqsaFX)h&b}%|5=!UfQngoIxTS~FK(ASmlrO{|yw#LF=J@@YOcR zKd4i_Uw~I0inh)t_%iDy3@EMFe1%DAGZJ3~cZEl6LDar*8kcF7x~?e_?(#964FW+z zZYb-(Y;{=g`F=I`^K!|S_*%NB+Y=bQ+Tct8Y9K7+@ir}_FT3FgT2cN`4dqI6X} zY1N()ol9;0d4tc=XLq@t?(sOX`GFAq=W@+|eoJmAGFC5rvC+_mq8|3lWWMy&!-_EA zo^^=8l6)npm|Qf3h-KJxMWL>wS#x=&7cNK2U@mW~DPokWF||K@ZB06t+GiGg!66|L z?2jD%lr`br2tM2&%qj^{mx1`7)5Qf$h@Q(~WGuQjE_+&J*6$m2q~UkE52L;+SI~6b z$?Z7t=-hBye_^Rb>KXo}}xDf}mb-={-)UCkQu=)nKd$#*OA3+3dlp z?q>qL(4Og!M_Ex1Jk4v}D=_Std`Tvuf4c!GgHNgSAQWP?h)_yJ2!WuT9l_DNPY1ix ze1OyY)q68(Xpm2}^oAv~kk(i%m^|;d&-{GFpuT*t^k54&v_2jvQHR0gJfVbcncdBLMZqvFb~h|h!dkdf982DLE_)^ z=$;^u?cB@9206#!;xB~0V#?`+NCIk$&mDAwyHwTJDwyNNf%lG-pF|Rgw@by`Unk_k zfNr${=z{lL6JQK4l#SoZoDjm>w;P|4k!IiI_+rQuDnj~GZ}jZq0gx>wgInrz1;3GEI6I?0*O*cd{HthsH67oNZoqnD7<3H zd+AsfHoZ+C4s^e&=5)7clpr2hkNgu68|jyuDEVS=@4CLhBk^k-%@+0U(Dga(Wr(e! z1w5wHnV!Bt*Z7i>FiMPT2uEA-O&m&?BL&yQz!@(tyXJ1M8W2%80|&?KWnd3Q+WGnY zR6U^ZyXn`y9Nq5Y?bGv+zTV;2STj8cKhu63_JOP zN1!w|AK0~T{iqKku-A~VbII`sKW3WW$NKTNSfH7AZ)yDg4xYer&mgvZOjIwMuUYQL zMqQLae!O`6wq>|F^1Adfut1UU9a7ir|4ivsaQLvXP=3NT$w#iV?MEr6+`$iWA^~k!mA?VJXE?nG=vVq@@=gAJBuhTT!o3d7jgCP z_zF-DE&BQ84bV6RYp4;Xoy>ep&3nAh!{BU4D}cf$2?5uXtO$y0GL@I_;TGMpR3o+y z)U=!PJ+z$ZTh#G>eaVQ$E5HS21Cj$jb-#@2OZo`!E$Biro3QHj0ff7LPw+{>i&axn zhz+$ta=jrM9_r63ermlME#LOUB!>T<+E|Ov@~1!OULMKz*kwe_X}NxIoYP(Cji@}Y z@ByPJD9$LElB^W%|FOY_8_sqijj;AvK<`H{q*-s#+Z7 z5>9bn!z?zey6@j{S^K`DGRR|1%OHgA@#tv(dXhY!(-fobZ-}c;fjD~a;KvxuEyR>^ z4_c6pE`+n_r!RN!BezcevBHBXU}^SOC8;>egw_7qJ-X~EeN7x_c)%d5YlF0|@j$I^@@BKS?x+@R@ry;75n*J;()Vo}qL}m^ynzZe0 z;3x_A-){yE;IqNjH(qhiWvkT*uw~Ut@7})SMIVp1KDu3JWgQ_=O9&BhzN!!7S)EJS zpII*@nybeEYhDCL=@FgNR?>+Uc=oWb zO7USUANN~b9FPOXEP@30a6cQEY;i5Xvt4W^r1!|&Bv}Is)&gl3g=vOnhZ0Y2l^M-) z)YcSUvy~O3+3#!N)9;#U=Dt9gPA!b$(xAd3L|K6@BKCzK9z%Yl-S#p$#S9}GvuSqz zi#)xG#|lNZ-mGT})ko&5=&huVCN_dC4^MKsb$d0T&h}lRannznW->Y*lsrA2b!^!= zF|SPzkoYlfji0bw;V*}GRsmx*7PSC(%^WK-*K(F!OL9C-AM5StPI=ttIN9H%Mchv% z#2<3U20QU~|Bl?<+8@84k8Xj}5q_^73qLl8MS_X*lalm_JvD@Q-zPudZc*UqGvkZj z-Owu^}g}btdw)G35!*)Z#fkOjO#%PyRs~Je};< zrTPnGaEuK?&HMP~bQGlcYg1}Y=}siF ze+C$?_*#T_iix}G+@Jh}qK6Bt9**@F#aHigKLJnp`mNCE5RS22e$cIr)nCckq#4!a z)8(c5!MiS61mqeZbASMk4s&$gaKKTU4mc)rdAxr*E`nG`aUpsn3oGsAk%|T3cDitZ zcuBxo;A2=tjBwF<^)26^UAugX^~0am?n0I)t@})$d;gi5wb&lEava3f3Fby^=#}$; zbEWh7NCo>@HdwbmQKEgZjKip6mkK^|no;mD1$I|=7QvF8x!6-;%88T2^5-yg zWUZ#ylDK}G8~-716SGfQ4}ne}gzB;$b5db>See5;NV+i~&mt&8esy+dABrUC@OKAr z!6!R#hu1WPu;#+^;be!dul-(6!#VGRNT;LV5WjQlCO+r@7AVfpJMZJCFZhdo4RnG0 zJg*)ybx_rzAnZj@IB?&yOs()S{<>PGI4YN4~1HL#uM;tQvLtaOcl?8`udRYcON7iDexQhHoUB zx>kXE_nRx3T#%NF&Qoo})mj_(Uh#3dYS+e4?oJzMzUY~pdO?sc6p{Y9YmWtyv^+=_ zADLUqKH3%AR-xxszxb%#w1bs354WH177{>*pCb^4x448rXjeBsUEPX;Z{ZEd&Cl)P z-U&%XFihWQcvU=*PuP3$n`-hGFpA-9eDpj_!8&+oEZg!jUUjOU>)7&^<|@ATMhxoS zQ(8-9y4_*Njwhn;^R0fL=|)@xkK~N??c-U&`XDZv(KHpFb8nsfZaYsGQ4L^fWpaxH zVS9{e#v6cJ@S=Pl8WM3`6-eckkp!Bn8|=J)wBXPI%BxvTeq`KR z;C8>+h%Wp1BAq4u*-G6v|1QehR!FCZ0Ia>%pv-PuopAIdcQBs!*8L!e1)=^5gXjkU zKsX?N);&lg&eAse52toULA>_9a-SggQJ4Wx7<0SwCJY(Fq%Qp&A-6+bZE;%K`dYA8 zQPE2dH(B+FuI3T;Ig7f0a^@C8a%XMcWelA^|1Ggl7>CJHkIbNYG|h~bwTq8lRH2?X zomk^<=E9FaKM>>VEU7R~^RGc2Rc9(44nNeM%?mulR$DNrxp0 zpiW=clz8OCZ*H}xT^DdmUQ;7`!<ExvJ^x5=#Wj5Qq4PVaSWP{O1=Y!?7jv4!{8N!t zwmN&XhhRKObmf4RJ^s8O<}q*V;eJA=q)>LOqi(SQc&5TUUXu=AU-{ORydO*Od=Bp% z04+DrlXC1-jZXG4f8R;oOQkz=)w?-y;SLnf_34BFPWfaBRe;Fqemj#d`PGd*QjVkP zq7=S_nV$Ln(K0$5ux>WTzm-vJy-}LjJVFh*Eo#eU!+iOZdT5z1q?{3)`P#tg?8i9V z{nz_w5NmYCy=Tdn^~nYX=C&gJqhq7nWzNt!uoI~Y(4cYS*vlKr%7s}c^!7tD_rfsx z*KsMN5Cqn$zX`t_@%@6=GF7zd-q@??RQWJxZNe2C1BB+S( zH~EN@;SnpJY+hkMCBulRwJCrBJ^+s=Cr{09zbh}o9pv%Y5}Z?wpx+NPw)`qcy>Eqr zahC*MNXHf4XDcc$vX;1-mtsBIf$z4(aG)lYjpKC$-gs4+&Fq)G5w$L_IWNJN`0Ha) zTOS>F!dHrbmuU8a+F8nh8QPDMUSQ>zKkk`b2C2Jw@(W~=!|`s6e( zT=bdzmDLhXOL8x=*L-C_Rnpk2(p3+8@cTn|fZuA_qLZ=~^6|JY>#3th&X~5^X)uQ>V*(u(@KwV(zhLzCqAj_NQh~;+^o%=|OUc+Of+OX#nq0#n!$E_7MCj$4EMeIH} z*srF^De7UW<0z`Agt$@jOGDwKZ&EPzfP|yyU8giwH6R+t?Mg!O*t3fM`IuiSx%$0u zJZq2D_x+r=3ArIUn#LYcmi%BcVAP zk_Q#^M}>5Vco3bBCIJM`%VE9x%uj-b&iZ{n;>l>}=6rKSDqwmjt0l)X|ZcnrVOEKkfrFzF1e>BM#7xBcq9ZSt*}7z%ikGs+CMQ zs?fWU=RSQ>TNZ8MnH(H?Ooq-xRfld`P%N_zQa@+B~;eh6UA3~z6A|3nSw z1OCW31ms3W6eI4f?K78-H+z$iZH0_J?$)i4BZQe&Q z{H1;$2r}T2crp^WCLmg%yewGC?DwL=^SX^j1kSseFPt_5l6u-Kjzy259hWmcb>$AW zwTRk;F^^42>bfB&absC-TC~N0!4*C|ar9r3=JLYoZr|Ex8g6@!x7T09?6-Skj}ch)uH8J@4_~T!RZ=DmR0MrT!L^ zqUB6j?^=WiCri>HTav%+Ct^KzKO~hD*9!6f-dF9v57%uWX<}a+u+0sU7~#87q>XSR z36AFi-qSPhm~Z)~`cuVP_qp^Pbu#rx`v-Zd)68vn;1c)=fq!gd5Bp@I1v6O03Pi5v z_4>R^jc$-3?WEg&5O60MVTG{Wc=`K)X=#cv!O@VwK{^~C(9`R$UQf(nxrvEN)#Lek? z1VM7TLEZhg-w$?)=I0~8rqjiE$)scrH}Pv7j_kCbYUm2~pog(HO=czV%-&yLAp|TJ zp2_&*Ynx`PxP1celF>JZc?H!$7o@>Ih|VdZeGvA*0-C4PRayKkSC%|hGvP_^px z^4()gtZQF$7A;KNThD7BH88s$_er=WscoA2>V6l}>6@o>X_kb1|H7%>$AtIWVt=&a zmfBi|Mpi-6C7tcBI1%qPUo{SD*#m6i@%|v+cLcgX{9g|6ohSEJxq3IvDvixz`dZqq z>CGyzg6&iJ+*$kiKHO~7_vUjU!$Ekzm#)z!bVShaL0tJX4JHlucS{RB1L$R0eq~oU zsD!Gw-@`fyN8&r(tlql!M8WGwM!iK-IkH#=1$ztGpJut9A3 zdK_MQOnd8~FKn=nE(mrDK`>QvhbSde{jTk)1T78v_~0~N+3Xo=`m@w@7=x+WoNFT# z{TwSpn;qR#Hae%}-a;;9{PiB~hn(wlRTJIJi%BW3b&XoZ2yq}{PEVIZfkkzGVdwGW zhogAhV-F9QtNAIvd*+Jw?&oblPs``1I+({t62R}qwgC$-jc-tp7tR~6elHlfB1pA` z%})*w%q{t*D9Zi|oTkhow{eYXlp6vOZm9aG52L!OH_ zLOfqXQDg76pg>!s$gGVbFGPj5k-I|Dn{cGfYWU;uhc6gnRdkcEa zJKabL9+%O#?`7lV%wuZ_5;kl~{aW19%Rec93_?L>pAcSE5rq8mdoAltTxei@%2VR7WZTMQ*lq0}j-ZV1&etk5i< zCp{ zbYed9NP@g>Ckx71TJ(h@8M z&)-LFZzyk24HRfU)W4;%va_MNQ*?&wLqkNEB6tTY!+x&za;you`bGoc#m9$K*=D5|yB{kC()Q;G+Ltf1g?bANi;96xyWw1sIex?N!q#^v3w|d_{JtF5 zx2As1>piBHmy9uUrFT-Is;-8arQ`g2>?L} zOHtlxsIiDH#Xi&F(_U<&0pVsmw0ChkaSs`Wyed|9tw(p(fFLuqc`6s&s5Oj3<@7w+ zp@iNucX&4bSxSh>QQ)O1)w@N-MYp80_<*yonVgjBzM$%V0U|w-6CBH@AsXU#u|K?L z-r~u2#{FoUhPW%rwhHO;!{v5}ZG+|ka)~E(I_b(ewY7cqe7HnTnbU{* z+^d`a`UKy54To*mE?O|fzJZsM{IQaVgY~-r_!jyX7HE){`VK&6b+xPJIgp5(`ge7C zp^c4Q>TcxZx@p)ia6)R}?Yf^imhZxb1xc7z)k5FqXj+;%Nn>W-d$z5cGM-}1FL2Xt1T z>cP9iz~y`91B+uXaW#4?Vy^paPkOcTjF9z5A8;98dD&b>R~r?{Q|9|H$DqBq(fT(y z4L_@DwMd4Lc@f>ZRC|A!_-RAdS}p_AIK$3lat7uwToxBykmBlvqnRd;hIWbBe@lI+ zRZCPyT6xR}1fqiT*->Pl8U+AA*2|~Tt|Lt~7PtU|(7Up}` z%h`HEYW+7FK1^8BW8V$%F%kg7dGu3^gdTn{j0zS=?zonAlbpw|D6>h3&5KWGvJ}j~ zIej)RZQ(ub%es4dL;g2o_5h+Dyfd^MZxI=w7hU;)T(LU`7bO|~x2Qtr_y<@QMhfTe zQE9Tu<+t8rRJWhzUjsQ&m|z;}Q^}6DLu>E7W-`j0`Q-FUA9}i@M!$zv7*zpF{RWVm zBkdD?Jb(y0pS*d>oZM7?3vAA^8{Gn{oN&_A^n|}3oKAy~7}CG~N}TWCqlxg2kG$5A zL?9x4zKhn;vV3v?eSklL&9{_d_nIW~cRzC~Bz-OsS3EvYc4pL9v1x|TlGZhOy~o_{ zAB-&5M3nFrw1eJ3d(^fiFUNT_bLy{Vnpn;cNxdx7Fu-HntpYcT+HX#Eu=z0lAoG;7 z^N-s}Ui^c_EU>QtCNs_SS$FoJ8y4MoYmarjUr%4enfUB^==$07bYrgnd{EpUT0P>- zcAzu#v?I**uy5qPuvp7R)w2KlJYHZr_lo`99-ji4ru=AiEoYy3PQL>X@vg9&L80+| zPCWKY?wNvowIAwy^4XFVf7?%q(&P2URd}*^b=?oS8%N6f?fDU2y5D1!mG-slpUA`x zpyWX@-NRWT!sH~M#r+;o?3LR7Tru%dD*Lndct7TRarS4U1GJ(GIgLAzKK%oITB)h`!LtbbrgMV&|Ra*8sog+S`Y93p5=D zDg$H$HNcBFh{-RU&$yp!K+{P*Ghet-;?^;db;Ghg|9!~gI zIbsIo2hcbyD6R_Dg(k01;0~Z}lzcbsH2?ZcU}yHF?MH4jvismrD>*;mX^9tZ=M&ne zwS0{ax5wJ&%tEAh9dz)0^4c#u55(`|^w#%i+3Dx~0zT(G>%DOQM2o?MT|s7KK1PmC ziqJxaC0{mSqLkx{`k)x#ymCGK%&lv1{hFVg7xRMPSGQleI{_y~E19Sloc)gIW~K)f zhR1(ie}NZX_9&q~?;}t^l5MfK{MzdHpL@Xll&`BmhZb%!U-Z?P6tnDf=BmV2^Lano zWAZnS(|!un!(XqRLWitpH=H-R!g>e?dlIe|LKhRd2M^23w`ODRyk3}nM9w-KK8Iwi zba8#!vzg@cUZNp$>-5UyeMaXl*5Q(|`zV{)r*hK;6mR#3NxbwpJ2^`r6^7|1x@!)+La|?4%!_XUe;H zP1_k$y+|PCA7HlP$Uo=-9nOUgB|F7cKTww;Vi+$;y40PO)oa}DLeMpQ;t95M5|dvY z{R32xcu3fXV_U;-Cd8J>T}EGF-;U!*xgIt?%YhuJ_2>gK&Pe+(+w)ax`c;d|Z!$tJkLYjrr?yd)k`?F}1#WX^-Z8e=(vD>gmt} zhLC*sXAnQHNUdTl`?u?lQn+c+l2gt%rLbY%8t-)Ej{Hr3iZ~k#d#sy!a zvxSaP0j;N&)7qqlDpPi3n)O*ine&S-Eh9Bkv(H{5;~ms3B<7#mckXd0j#kBZ+_dcj z>ZZ%`pPNqM?9Kdozio6?2cS3)-HUM(Wg5l+A~&uhR!|oa+ov8$=r? zP<%RO`W#Nn;d5o^9!1(~6hea^*4mYPqnEU7wF^LLi(kiiLc?YJ8U9jzqA2qXv8{Mz zv@M)JOwzNn>QgnkN@9Iq?@{zRWbCtwEExKH5`%2c_w5DT|1SiAXd5Y4x1x9YKvOno z&roIb?s<2ayRKt3G0St=mL{k7v|eEjH6+zM6hS2*_{gG&TD=T8tROO|m8igM<@cek zxWd9jbZK8uHR(aJ0YJX9{VFRDQkl*2sZNh4z(cW7Y6SiJUSl#n-(3;(kmn^&hI+qg zbj#g*?lO(n=t*bIpUjzp7%)T7cKQ^7MXwF}h6Q-}w9ah;o0?;50UQw%6L)@8j0B;X zcIei1?7*Da7YklrI@)T>&X`wQ#QY4>36|^eM9k zbb|2#e{~f_!f*VV|2}#2Y)}5-Nze_I*ZaIXlMG`HJepa0kj0w_A0M-6FTXPY{nIDN zFPSf1+~aGknxmGaeA#1vg{`3A&L!gc((g0td5VqVO7qk8FG9z6bee0wfb_n09eUe!{Frm)6zU(X6 zQ^G5aeUDlWwwKvYO1~y2N0IGL;Bu~Ip>B}?dj)Joo9yv-v_iXS++{IDdb?dcGjVw; z6>r@qyp*ZP>DSg$lWIhz^stFS z;#x0c!0-mOGKSFpj4xRWSH~C|B?q= zJtSR0X_q5ZIx(c=D-HdUpW@sg6#%&Gm71O^5FN*RD8S{0=SK8fBjiLa#2L&1PJXgR zsf=zh<{s&vp4F?0{F_Oh`IkxFprTGPl-fhFr|40mJRWR)11f5*zt_5dL7uqqittKW=M+jhUU~)AfBHE}0{N}i zJi{;0JHAsdav(-cLysgx`)6U;qP{ZaUR+JS_2IH{QUh5%rIpUG)VNxeB5&)!nuVoCR(}9(Q z-@u%_=KHul`CT?4sgAOnm%qzMghK+*QCyflgx4WeP=i8N8dGaZP(;FV#7D+>9=hck z?Q_sk`s!CTwxiws&`9Pz&y;PI3IW~-}aC%-)j!HW(e>5=+$JF z1v~Zam&|eqUpW8(L^6~oOeDND(@>$%qVT9MH%I-_b-6%UbPu46CHxhk9LA>l{Rr9n z5>nqC+REKd=JKMz^1Wt}sHRXQ+lpe2PH`R!CwLVx;umo~|0zU~uK@|ui{AJEe847e z^7oj;l2FC1PpG(tz`3muTT}Ku=znWhS zZG4Pd9zi;PlLdh$`l`@*=J4=^Vz2r0{Db?EFqRmvwaFb)Z=W-g`f{NAzH4+Jk-(k* zu(Kq?xW_nT&r$-R^_5>@A_6OEHmgC58z!Wv2b{i>3ymho#sA1Wy5wKrvC*sEZ7QI6 za7P)f)b=YJUysBNITvpu&_vOi5w*pZ z<7ZuZb%e~gA;p&qzfLe^O{M|HWi$dhup&Q9V0D}Wsw5p3Rq4QNOuxQ6=FqFDjd-5Q zg6HFtLOBY;Iy z=rGEtXf*qcd#U|HljqB>jLEyjDQg$1A7_$f#>-b9KQnXW>t0+NV_nMT-dWX>L44jq zpWT$pw3n~!{Rz8CcFzZzM8#SsKkP%m>VqlHI@k^cAM3(XqLy(JktxYwx=_I!pP^-Q zLKyhd!V`16(+%8*_a|Nwa1VJsj(u32O>z(5xhq3sV(?712DVGdAoAUZ2>+w&!Hoq!c6J-Si1 z9hktwM_!bzqt%>J9_C0ez>(LtBMUU%LqA0P4R^2^HqsV53BD|{@n@q&uW+;{{|lKt zY}$U+Czg7Qv(_-Q9XSTm-~Dyt!czsbF^%x2chAEK^(&r~61mS({T_xuz`*IrzPRh3 z49?-}hR|kYp}B;5qNAwPG(oNUUJQ9+pIel9uG;M1Bq|mB)5$NCyQ_AOqv=0B8`8~! zDj-IjiIIZ<-8C(0SB<`M4mH_Lzj>?;B@FnBLpReW00bvY+iaC9Bn4$kG)+6gXXr-W zFAI}I@i%qU&%wzd;12(qI&mZF#gYg{ARnwcBf*>w0P032LH33Jd7H{?0kGK~Ht_sk zMLSvnM@m2b-qBx4(UdfN#@`Yx>eqHLtBzEK;Zv&>IC>PBt(iU5-(`hdMpeKeQhjxK zM%P#3EpFcN)>#5Yd!BwA;G%pjR1OExum+c}s`>IL82(vL7=D$MTjzU5$Bpz5kXm)P z#T+{5l$8MmzY6D%mc0r(VV>Hac^1EYt;6P%vE0W`XWXZE_lBY=m(b0vH!423kmHub zdPg6&YX^JjBp>!!O`$nzl)G>9>>=RMzYjP24RC~<_wAkzLu5DOg9pid$L?KxJjZ?s zTmweDK^ZZ*y=bPPid1l!;`_ziIViy(>LnDD9IHc3QJa959&zXNR`;YxNeuYF^g(-1 z8UOcOT)Jre`c}@v8J?)LHFINYvH*C)26Q{)=qj5RQ>s-=0~Md1Ixp~1-|MCqAX19q zlD;XE!n7=33u(!pWI*Yj@qOPlC`qz)FYLP*P3Us|sJ zSM5h|8No8$KE)6(gMMG%gswo8fr;>~nfxu~tM2)MjKIi^FMGNSP-0k# z5TjxjLe**KXv+4g|24$g?hys5Imxj1B)Ps%rjz?;_KHt=w;8_X!ijo)L8L9_JI$*0 z#VgCvGQKygIr1VIjAhnd#eNwFeh{o!I2q)AZiixlKwtDtMd}^7hw zAueRP)KWT9hL_TSYzGw)oLsEQh+8I9d;Q}pHpi1b@c~b}$E-aw^NVkESt~6g`NfUo zZA<5Tj;ni*FJ*pV&P*>tB}{7OFVdhlOw$gmOIad(w#>q^*le4T^=OJ+CHo9NF)!x0 z-^#5%6?%$SPMKV#qcc$)l%YSt_{Z8c8?lakSDWa_k+!qvX-j73m*+-Bh+a@4b(?fm618<0iKi%K7M%T6a zi+Ol^4X_Chk%vTIH-&-blqn{Y#NPe6L1SSI_PJ?06DBt&%gOhuxZ6(3$G|PTof>8c;*9wN_5%YZY zmLwTo>0XJhdE>l~@5tBGB7uqx?8Bzk3gho_PmncZqm1-spRz80G>7B5Wi$p&tBo`Q zki9yRUHc6FHbK4KHIVFLZ$v@egYQarK27_)-bbG->fHk=E%c+_)W3GfdV>a85|AiQ zLcG9?^yA1u?fUHSoOYS!XSv#sCs2sNG3?{)k3?Nwhj-dGLEsh*namG664)TJ55l;Z z2v2Nkfqh>I+o$7adqF8C+uXz10ni)OEPnLOPPZlR>9+}eX;8kQY?KF4A&}EnQsNFy zO361u@|H?7EL3#lBgcEpre_1ooh*?1;>LTe=A~|@-cYJBI`6<$Vq0%ZRi_=dU&agS zhOlqg{b1grGwk&aBoh0xNa5FaBWne6{Xiqx8-j_2XML2R5&-SeFr<$K)^*+kTplJP z=q;(`@%LHgePryuqk4A2x>f^FZux2Eu4LJSmhYqFhU0`s-DmYj2t4EYebbOkkDpJ| zbJgHBTJ)ftdQ@-5=~w$0jfHcDc7VPmWY8Vc%a+>=1R@R(;3m?2Z9k3l6H&W-i3t6+ zqG4Qj(YYc{m&iMmk4KM0&XUuMVX%ASM2-x7>s`;~Kh)qxzN&4ygJtT=h?02#nB!QC zzviy3n{t~e$glrE7{j-;TmMz{_xpK1MY4$6Xn3UMA%*M{xox;F{5=LrVv1F$y~qwP z6<*07gF71ah5nvy)$^jlZWXIP_$HNXy1Ue2nwC_w=8;*fj4X&9j2nq6+jM=h8Sf_s zznRvjKzpM|ivwrE_yv{e7X(4?{#FQNHb~v&wt(M{ygf~ELJMhz##_=8Q@Dk92W8Tn z6o^*S_hpR!LAHNcktwp>?f0YL(mCWj7FY;7r-pG^y$}jYhrv?Tc3tTkNmmV^>H9Uq zHu?O06b^p>bQ)RdM8cs4C`wZBzKeUCoD@dq3K>Y4s+C&|)wVpWyOJU<>ZCz9I;S!s zSOy@NZL~9AVUEtQxi4Av#SE55&R10k_Yt}@8dm>39wNtCA{I+|x#^6e!Vd|JJl@^WQF*L$3v6cfamFh5=&cm`aDxgT57z~SLSQjiX^>G$z_ z?|wm3XNCkAe%Dcu6_BkiIP_J2-J4_GUz8*ds1x0OdYB0^9yd!38i-wDa)8%Qd z?TlF4?%N~!Lh>>wud!~NqglY4cl;^wC-3uf)Oj7g|0dFge_~wy36azA1LwLaN*=@o z$_6($z2~T~MelGw%qawzUwu@f$8P>Y0i$S^qP#ek7VvRSbj42&K9@FeRO;Sdq`lM} zgGgd`JmF;fw|kVmyWz;r@5wJSjaT|?xuyj9g0^iiNRZ#lIFg)*+hISGPJ#0BOEr>0 z_X(!j*Pr$lBF>n9{z={5&NFVf=SnHxnS>6Ed7O_K=bUI7zRqTTI>iHg^=`AWnAr=T z1v$^&pGxua+5W7Gv>(D)i&U7WjOPzdDDwe6D?gR8m|cO+$rOd#Dj(ITBFUI< z0rZqki3`m?UeaMymNKso0dp0AMzBwK2$@}d2(jdK%J);lx$$`{I2XpmeQm?B07SvO zUy>6!?}zXrSfZ^@O&@Ka=^cdSWVunZHQFW<&KJEdoArOdt5SzQz`t{Jf z0{xI(*_?r*tuVv-uk<`$pg&6-C&BgdL)gUM&f!ya;UF~`CZ1@D@s|RjeMf;4hfjsR`aeWQNKAg-waor7Gl^;?2^|QR{k@C1_ z-p@IHJpHnMlJG2S5ZmMX^-S2$lTvpg=G2l6svQ={fJo=aP@eG)pOr$|GF63 z@POKr#7+9QZwaeH|0lEasP7`v7Y~0$sJh-)!RGri9GQOj4Z&%&+b+n?Mf)&gI@=S! zHZ02{#3fLs4dO$ahK9b9$WK`&qhseHUmB)OeYBTg2+^=I4z2^_1*@MeQ1bA?m zS|$1gD>{EwU{W*jQS--}Of>{HlD7s~?54oe36p!O?wY?4D_9R?+@|>v`sX!P72dp? zUv7&Z7Em9o=v|-XcxSxKBkPc@a#XZ7=vzf25={A7jQv5JV$ZE_U*QuQKSf^EIXIx_ zF_;!JS!ZE<18g!Z1o3|7G7y}$VH}a$GNB!;^+r6ye(WQGgtT(u6esj=uT)Ub-sb6d zpLm-=19>#q3MK2##OJZHkdm3Rr^}NWN?|mJTR$B6%!}sRw!CNZSl4^;@7LdtwSICp zLWgCDZZ3s1^r&`F(huo1t@S}2m<64?P_6?;EHaiO>i<`kR`^7%8+~}4hq0~vNadwv z|Kbauv7fF&@96uT_|)RI(?##zu5*M^!+9RP+adYsogD_PuSPD)D}}f~d25L3s6yJ#rBCB*}s5c`sp6khS|m zZ=>IBfudE%UXEA1mRVkpf8LQe8c!BV>4+_?jw;Zv7C&7ZhxT%BY^&8o&h^Ag1+kml zQ%}X+cwF3v6dy_j{X@7JoxxxuevNlFVpIS4m;?Axgv%Tf790u;fsPN}(c!W5Nt!tC z2`JLRT1Y3Knf9nE9y%!n;v^J?JKDKJC05dO_`6sb=kiyevm+6kAG#d(>%qSo)y-j# zvvIaVF$$3Px;We!7a~Gemq)%GomZlc8<-iK9m%x7q&Fa9M&u~uv_!>m&wgK~whn-${s zdjM|=GL^H=piQ?W+4d($F|6wvOHto;X^L-)!xic&{sy`EJCodtJKwD=S)Igvp6yEO zDIw8Z7w30Rebc+7j{Ter0LW-~dG|{FWy2~=qZZ`0C}|#pA3B+?SW+5#*X8(_yU2Q0 z;H!Wi8EqA6;YIw_T<&Kdfs33~%IkFf z=x=bW{0p-jfn-X_gE+cSXAKW$zuTkO-Qz?4WpFo__q@^e&bE?msVyyEm)W)b#HaFN78oqid-avs{mx%uclz!ld}XO?dM9Xx;=mNOmz z?M&|fw0&w#Z&JXIFpR0Q5zTon$wQo}0@ZJ#qHz+E99zYvllQvuBd-kCLMC zKU$KH!<1N~FiEYJl|K}@UVGdW&JMVVg$_-(_3T_vsy-#i7WgY1-aXqZY^N{j_N8B* zKe%?gkHtM7DrR1W&d6?6LKU;m9gnV?*2;8Z7AV|8W#SI`6rF_O!{)ou22aLAk`X6E z-p`2g`!{$*d!I5U_Jyt&Z2tLKU^rKFgC47P#e>7r4Myy=t6)VZo!IR2obOK(vY% zH}{f%5#PX$r;#}yk$`s7efScpdZ`AgoF`2>vuAIHfM-Ux zl+4v5d!e&hQV(GOO*IL6*zRZD6Nx8G6YR%^1a3d#&xb=Lw|V|G<|= z`|cKU6kitjQQklA^_#y^Gq4z2t1p(rFfd1APJ)%!_I(f3J^%>_kN1Z_gd{&k`6m4g zXxy(xUp{VIzNcfS!R)v=iP?R$YNEoceX;Qrgmc}zOF}!(;zy}~k-sfZ6y_ak4h&*~VU&*<` zRG1$hZ}WlEy9dF_oeFFh+TZ!ZcJZOsW-u1{_M#1%QR>;?H?Y^~K^rVA-FGEWt)DU4 zCAYUAw!(Pv^WVNBbQE0K1H5Xc9{VcntFOrIFka*m0&j2o@{R#2hCIg2situW&)Eki zguV#tLC7qfvf=(i%|+LFSfweR4Ii`Iv!iJ7!#ldr(1F#@!h<=36!$a8(@np_eEs!) zeS95)A}|6y4ob=Snuq}-J8h7gKPG*Ve>xL593C-+X|zGyWh)&3PQG62Lt^LSIX9GK zPgCKrJwY&gc)%zdjCm+l+FZAVzpw0=#n{ld8Ywn}g~H#I@rT9<>0+J_--!%UU3$Ea z>X{~<55KTk5E%h(2A~X*u{anGU;0Dq-u4u<3eON&Q)iQYo%jgeJH+K;*Nt1r}sL>4F1ts}bhA zRUCwrh@mo`)BAP*T5_4P333}LC%e%pxkAFw%_k`EQMmK_(%Ay>URMp}c?lmYu7Q2z zf=uJ1kC!kCb{F~m=e1uI6B$n$LJA&l%IV3OZ-=Hdz_(H!z@iD>^|w8AOrG`Y>hEpsxh7pVo1DgBAD3dw8Ve5dK4L)yEXlrOxE+f7*U$RE$^q;(zO zY4un8ctnh*L_Zmc@w6;025=-Cr}^_$2?3rlR20iU3XHlFk}%d|_n`0Z zXZdVpO^tl9K;|OmW-VWo`x>(I*{31j-N^a5rRo*nrVLk#kDo82T|NTgl@mevr}$98 zgHPb0m=3$-&%?Mg;fK_K@m+t!0EQ1U#s}jdJ__Tj21&4fe{_A;-w@Jz*g3>H{CMd6 z-+1?(@3VNA$~VbSNIsy#eQqfC6_?XVF#;aawIN*#ca+~0fdlfJJWRX%q(rQ|9Ay1P);FvLzXCl)v{!FZrpbvcwH^E81%I2Ns6JJcQ1^ z=>y(px_iyrIl2+8<3#-#VIO$DO9J!ZO3L7WB)!)-wOeCrYEE%2wykyMLO%)PA$;20 zPJx?Fp4;1K&E9-2<8K_&`{fP$4t_J4mOZj0`HXV&nN4VM2Lodd>k>xMFb1<;UGB^@ z#ZUlo`f$g`2X7gDTV{fpu)_M$4uh=rniq68!=M`>9sX`s{J;C+Fz;{>=*gshvWYgCx0Va(T#Jg1z8=M{- zfDR_-o}mRXl?+O;m$xyr-Du6rtvfX8DkSQ(rsc9!uuEgU_GIavu0*PxW=#Ph+p%x< zud=QO?{c*SOTR{ey`Mpyo%lO`k%gm9LS$#2R=!0Y(D%CU497TCX_nLV;du|M1W~;0 z?n8`91r4fJ^jV+21$kzk*VF*TOaHq*wcpRq;fKICTb)abs2=L^BV1?Gbf8`}L272! zl)En6kl?G`TEIJKezDV0Wpfl`V7xp3lo^sZ#Qh*@ZTSZN<9nuB;x)a6LH5GA_3Bii3Gx5_USPmpvRYr+#9KZmj{k+Ap@RdNa@&RHLc%cQqpWw47jMAiVY3 z=8os)rQBhv*3-OY-dFos>CSN)gitTUH*^SKC1^9xmH{yk0rES2$u#|P7w(*Fr+#+# z&LjKT6FP$dNj0>Zpnc>?JJR-OEdHSG)f2*+dpcKllR#dmS9p$o=cmSh_bDM5er+N^ zlIC(Jy}N4zPeVBK2NrY3`Z~WTSOh2Zu+Km8Px7FkVN{>}K90|opsOjR&__&$Q0TSAuOW8YiihqoR4M|SvR)g$M%5HIS`iiPHKG0-$u+@u=B|eQ61kDpYxx91&3sQ zsl(I-+`WPi(!08TFWm8aE^EcMx5|p&gzG|Ar0|TC@bAdhJ?Y#Crsi+*v|iuyo9dyK zH?cllp18?c4Ajy$i#t$y$FU6|K-LBezVvu<{&<~)G)o~ z>{8pbE6cwuuvepvp#6T5$vAdq={K+2b#)eL68>C3tzfMKcuQ#icImkU z#*O&!i;=nKk?^qn-sj{`mNU-NAuf)m_x$<_`OYfjQTXBB@}0?z1E{jtwyzRU!uJp1 zk1zjnI{JN3dXx|C_<~}}o6R}Tb^1MRgjLi!BzW(5II$JszW2|4%1R}Z$R_t2gP(0q zXe>=KA?<}mg7Zh*4|#(;O9hoWN>H58W4M{VMtHe896vqWf*goIu=<}1#EdqbGpI%$ zI``?9e=W=wvU}NgT`PN}53Nb;_!{=yYw;L<1uuuZ4C=`X9W)+udhZ#^r|cHatcMm; zZln++Jneg-$56yS5>`qS(Ch1h-SOgHA2k?N!5xsbsr|LwU$HUE_E|Gb@9};f9%Oi1 z)NG0zwB6f`S9)Jzt}4my2ZOa7A3kW^zOQm$?)IyMA1Cc;kuBfSt!$hOQu|lnnU(kZhugxxt(U_om!hKgDO<*|%I`CRQF)+3Z4=l1 zRaA7R{SD^}V|jc=ndX;wI6i~R5%M^Aqt^E++d90fjs3Fwxx

?@A1udutg%i{J>w z-_$3-O*s_Q=MtaFXmyWb%vH|QqYzxv;g zyY1n^e%s#oGb0tbIy6M;V80DPX04bm)bVuM9~p2WI4ofJt?tLtV&}q8KQRh}YPcFd zP2BJ0-*CqkUEd5hkF1CXr*c+w2CwUfmp8ThoLuJw7n|S=lSpp8&0M?>2FoGr{W?P9 z3Cn`a`j}7{R&f|%L4Cs1r&80q^E0nnuWYb^g(%yLkYl7YmMXqX5>F1p>#H=iMy2du zcfNbj<$casa{CN?H5B8z%S;#Tioq}b?2dt>#wEGcC*vCFbu)-6h zpw2>Qz)GuM&<8*>U{iV)Y71rlS0u(wWX=7uQ96gex&5j>_rXSKs=E@#^`vvkXr*)f zMV-jt9qKYlN5=cMK>lH~mD=ljcMEVO0b^ZOaPR6;n}^>%Y97|MW7c^7DO4l@wKTl; zy4>>WiHLh2&%59f77WI9wxDh|l^4Vu#K;`4QVfd?qWt%F*_pOIQjnkm$tlWrY>({8y}q3IE17j z*wczqnCvTAtqiU$Pyyo4)^3IV`(|8mm7YizH zmLGDJIpDv;pO80-0Q-2m?%r1N>n2JbEbrjtEj;qu@j1WSBk!MH*At#fdGJ%>!KPoQ z$bR(xh(7m=j94|^Zv?3_i=whedN(8BnL&}1pLaV7;kOao-%x^|vkws1wd(D9HuwAN zYKw3VzibPVJzD($&B4Z<=?`T>&HaA+55UvA{Kf3Mei#6toe$Z!P7*M7!^e3D?$P@V z&9Cb%UYa%Sq7zVP2p^wv#%J?s978>CFPs7AV^^dRD@6Afn1zdB`=^QZmgd## zQ>%)9?Kn`;L)h@8tXpN7$ShhaZSN2E6~iL!r97#+3!~hJwN5!!!ZOz+I=uvrQh4w+$j--Uo3^Dngje97d#&^wHvj;`k4uG8 z=YDXxRNm)29zpm_lS?wc4_f7T@pjssp zdTBFUNbKyo?Gw~KN$R4rFZ?Y^3haKt^7a3DZ_5p=GyJiB1(A8EGz*wZTq zlNF{@i1-Z6=}128jQ-kQ{rGMsk)( zc2tt~XCK=`eKO35-i^Mte%hMZ+16wRRm>;H)W=r% z;f3^iD*LP0ywdny|GHPo7)h8C7=Loc5_J1^3k|TpsEZ@g_*_=VNkf0!nj?gw(~fQi zshj;{RzI>Ar5(@3^+z*>c}XHrTw#HA-x=WioMhk$)QNYhHpPCc@nrXTRo5~Iwlzk5q2f*h@ z?7|yZ^Z7Y7^s3)J*3|z+P#A*+*+OY-3q|m| ztQJ8`Ix4JL7}%EI!KTA(C`a8Vxc-_T{KONp@t);ivD=sAEN)f>6^v&*TBrW#o((8B zpxgu@rDypH+}q^^U-ifsu1}yw;GW)`#>Ep7uK7&A55*4qOxl{?=-!PSc~_rx*_{UN zm~xX(>>Ypf&Df_c0uhD{yG^?5?jAg%jd{8q4X09)wbZZO(d5FzaP~A}aZeZH4I!1n z9M>AGI}*8-aeq&HI3axnp%O}iteRw!HKM#z`voiY35uP{>-?ldF_ECO ze8K$K`#?|wFM2$&_o z@IkF8y&vN8?5ac{CM+~&PMO->-}OB{wMp3Ax>nQl@^KgGmw{4qK-DKUug>4=6+OEv z?CMX)V0(4iyjH=lnRF&NKJ~ zwkaGo`&_}BXXu(~MB^BuwS>Z7Z1VZi$#*r!1cjP=fBXof!(A%&EkPsCLCDX0z1hK9 zL^;|)LtfufxyldM0H^R#5_Vf9)}?R;a+E_wD5dX>KG&%CjIEyjaP8oRguLJ=j^#IT zvLn}PunjSVXJc0P@Aja&uNYM~`KDzSEc85-e`UL*tDfmRa``$w)T*eA+P)v_)rTI- z4@?T(a+&A21Ik3d3qVlf)7Xh(O+5=Tg*L8JJ$?X;#(t9BPJhxxkK`JZ3kZnSRMg`v zHek=6DE~!$A)NT738FikNm%v0PL*LB^F59wPa#2{T1R_u$^18_u`^iDTm(>it;}8z zZ>W*Mz9ey9A>qLm4#c^*Dh6?Yh)WMp#}kR)AFqRIj{QD>4>Yks;YGEXGGI%g=E;wm z++4A>T|5GA;6bCESe#B@A!ulR9HaYMf9S_2f76xfuqR))6-&*b--{xUk9sO$e{1$T z#O5XT-kYcVZ8(H*GqYvbm$M&$=I}M7ZqDzu8pRosqPL2!MX_!QX^$EWS2>50a0|A$ z=-I*4Hd#NQofqVVKftt%b)MrRBVLCdoe&-^!#=(TyhBgvRH2NsKO0V8k)4#?aoWAZ z1fPB*#Ot1ZkjC8_XE(emjkKKwT?cipeG<9uml&{IFi09I##5@OBRpdO6kxhOgHlUC z*%@igx8Y&_E@-A237lC?j!DNbkOpgvO5ha_2SS=WWrZ9_InkE;hsz+QcG{){!8QL* z2|2loNlnEW_s-!J>zP)?*Xqp{{1#6vIB`vs1Q>GkB$U+Ti<2W|88or@dwcqdK>xJd{FcL@ONvC$#{&gb2 z;QyjjzZYbm5#kuWS%K~h&Z$nbWOwU@`?QBCF)V3(UZ$*8^e;~j0)oeG5B2MZGZCZd zc}M2_4ehC)Me|p=2@dt2D+~8^eSO~%RH>Ya z&kzUN?=|Bd@gk-iLCANKSWo7ilw-A0q^t#c^j#b0ktJGr}AdQ_&h%1-3Ts(wJ#N!&~RB`n2Zgu z_xXH*dCfxZ5>EV{lN@1gtY~T?4M9tRl^kQK;5}Z9-i%y3bFWrL>HNjCfTIy>Img%L zAwhUQRE7#d6RqLBzn>dJpUlJ*VQ<8be0lv1dCHW8a*hiBEBsi$S5?JP1td;<{v!zD zrlIe>Pg)m`xDL$3Yd;XpJ$nm8U_9?4v^95WDMgcDk%12}Uh)Y(FNkWAA-fMl=JvS# z;I@&;#Q6=eo8!}kg%Jst^Mi8A-U^tHh3y5+?vb%0)D|^E2LX3y@0!9XULtH5$>#iV znFQ-*?FrVQIo_@RBk9c66lIz%d`l>Ua0oJrGNa%bf{ZfCBv;>y>Sy==UDY+%@DNJ ztVBbiWh_^RGY z)D8qRY_Jn|D2PVFNLHTx1x?kCAf8FbB8NMR{>I6*M&5f|zZ9W_+B4g<*BQL-QjC%{ zPOKijM$KDIF3Ydrh57WEZnW_P;^S(<*X3r|Tnhp8BNa6u^TSk9j2u`l~|Rp#yk zz3(UdHOuRBSw5~teP5>yJQ_#7ckMk5#+zH8ezaoK8=fIoScK$W>G_yxJ#2N<{l!Ed zh>4f_yRV&QTN|1MLkiKPb*>c>^MoXs@gNPx!!T<#7BAb1gjSKHOQ>7l5n;x7Y6q3X z3jri|;^`orXuFQ;03_EvOV}TgRa_s96T@UgHRkhJ@uEHWsD_OM0r!L z(Y4Jkm9e$YF-G^%AP7eE_TMw~yiyZd!uL+!k9X`J%|zApZIfFmbUfdhn>fr#Rm zSKstWw;zRLw$7)!K1&V%KjVnuZG3+|3CGHHU(Jyh79zF~P}urKk@*lNW6Y?xzjc zqtA_)%n&T!O;30bxZ<*fHM`@w8o2b157#@jr zNVhNX490~$Y_U~}1+9BmmJaVOdTA4}<-+6+e$t{_Y&CmlOj=4mv8;N9a^rb_rzdO% z_EBaWL4XhFX#L78bqin0@=lt8nuPPkQNJudAx1qyT#JQU9_*70y?&->S_J)*{{fs4 zoiorX;E&)`s3lMQY2J0^2e`00zJ%N2xiBB}41U_f#9%Sz*dTj!h=DQw{82b%;@?se z9IgisPTTesUJmEpb=QJuu2r#5G%uC}1YTgON4-w;h#>9^(jQYt4B}V$^|TO;YAvlz z#f``xut=(Gg9eB=)!f75j2S(w8FOYnXW5`b*Zd>+!r}Nu_k3ioazXp(jcZDul zvTP`oSAkoJOGV?d8gGY$ z*1u+WXDxJN$!lYC0BbbUqH~9djxyqv5M}Obx&!O#Em{2X2xMp|B1foUV8bvF=Lwxj?Hfx`IB3TCg zkw4^P-#v3>te~EeYy(CO{$YCSjgn-`^(H=v!|YkdzKx1^xZjrWbZ+MeO>g#R^Y{)l zF_@Y_AbNhLk>rk$=8m^l1^8^2{dKrTxvNLl^Y*7y&4elU-?pv}5*4n<4GM)-{J^mA z#nYk*1Bsb-XUqx^nBBmUKywNi|Hk}c6kORa{h+-42~+)_9IQGq#W(4`NKHQAenUjM zb{hJyN^yEJrianSz4@)z&UJ6y|zv&Sb5FTr8gkKV9N|*LynV zz*@7nCNIDDHxV`V=Mo|K+;3w44|tp4g36?rK`91zJ;=1Owq9w)Kh)=gTM(x|X}Dqj zxe3|J{dfN1#-eLtyG>n!$!5*-?_1+_fQ?>9YrF%PsTm7_*qko?i6#n|VE(5jz{cHy7L42z(khGJHC zmJxh~-UTAbVW<%splZKn#j^$&J73>EIb9}yPi~$`DqrE?WtoZwEZMN!f=AD^+Xp#% z^gcZS91FqNCNW^i_z+VAXr-C@TSmKmQnUSoV9;9ls<5Nv%XpfM7-*`+dcl+6ScKey1ZE*{Nuf~E}!()-1{56N20Mu6gF$xXP zLvm3ET>MPo&T#}7!`h+S;_9d#&qBqo33Pywv5;K?b|{y_iOO^uAlLG z`RDkNF#H)I_tW)L zxX~N`3PnTn?&&RJXAs6XSv!6%M>yV zT(GYS`6iFuNY5pqD}#6-J~G@9qhNiVsn1^qQSg8;n*fAX_n^ZKNwJ~cxcb!#FUjsWEx!2eI+q@^38q|fBD3XzpOJ+Dl zgqq(AsGiRWEyY%r^%!$JW@RBD0cs$mIfTi9KwgAu4z2L(EmM5BrO|=RkHoctbnq~O z_Ho)bKjtNATIXqH;Z^mOT(Eh5d~?lxSe&tTUuF?LuJN&YMbgEwd33tZk4s6eFpcN` z`hSj-Bi8ktf8mgdc9Y?z-hC^3u|I=egh%qv zH7dCGoP#ZlU$2D8UlSo8dyWUV{B}B zgR~bB&8R)t47Z=7a0}NHwPHt#!W&-Q|H>RLb(ePL@qH#EX2UJSKo#VlEgIA(6En(+ z^bszvKPKO5?TunVB$8^|ub=a44_0MLkPen_Q;@8D_Z!hXn&1V+^OgR}^+mez%jiH< zzJF)oX}$Y*(SF&-W=_X=&N<}x{L@mFx(CM7Tem0FZYLB~*t1l5{!>50(t1u8;(f;u6h+^Gu+a8C3?#7XH@*HUR=r%uXtfLdn}#p{pUMF zXz$C9v7~SjIUUrCBwpmNb+|^6PPMngJSTA+W>a**vMSkED4}R1DpJFSXF6hbG3lD)c-B)vyb1Bqg&_!J>G*!6wBA-Q z$c{R0eE}2%#_x>WSuYWCWdeJV6z+S0Din}2d36y{^YaUxVD*Q)-$kz8Y;@Qg4EtDh z`RxTTUfqXGavi=Xek3-?>9>BJ|6GHdnJL}QWqTIAG2&UNw=ehk*m@V^F78c(7OZ0s>o^&EI0a#<>*nNf#q~Yus zUICbq*rRJ32AA#OEt;V7F0QecQdX|}1lQMaHo0bB3Uh*lbd>tB9;gayp`Eyi_SQq# zK&CmUDqS0WGc_FwY$?x@zqp}fRp8tpe4FYR<4Q1vG6@ut`x5OL4W8tBoity|VS9N~_n%Q#T$ z3Fu|K&((M&3`!mZW*a7Q%zgR%B`@(aH>LZ1I&Z#>gO(&=3Z8&pPMiz%)_R|jz77xd z^!AcaB{{7tVD1X$BHr5f5qW%%fav#M5Oseu41FjLy${e0mY~Yb)KY!7F=Xv0Y{1h2 zcdl@F0D5TVVVbjf%02Ymj$PpS7<=6tM(9o3qbZksHd*l5({N(5C#nJ$8vZ7VIt<>k zuf>BW`O(R_GCeFvP&F)T>Bc>}Szi0ICDv0^R|qh^hH+Em`4BKK3G^*?oRdH};3NY4 ztS((AhhqiI3Ir|I;aj@bdfvv9n`xS^0fj!enY(|ueXf@>F)56dU(B#hW zX(6mEWlNzTo|5>z(AHNe>DH*6Vp_^ko*m=6C-668Mg( z^ZgzaKYG1}tv}t&(W4RY3p1$`S#1>ly;T!PRypou=oT3Z<>w8SGsLh!|9bbgYZ-4& z5iw)K#PJ|7@&8A)XBwv$7gQ+tcO@N=zK{XBt13D-*Jxjh4`cqr$WooXzB&Opcv0oH}BY&E|b zd~ew`+`D-=r_#ZrNiKsk1eD;v-J50K;uKfOe3v);BuB3~P4s8L0w#mzcCteC=p1G~ zRq4XfD$(H-y-ov}4X4`}a@B`~xhGqFv&ckqD_)=_XW@=*97!QQh++UTWZ94zn%O-wllO@!s6m!7pL)-=lrGz9avo z^UZJL+{f_|TEH4*U%JZt*Ik0^jf124hfR`_^1v0Otcic@Lf_u z!h4^uRhF1vOZoZ%jg)$k263st;pplJ$k+V-)&-$4JUK*$iJpw=*w{bH*IvNq_8rdl zE5e@F>2u0~3+R4VzUkj_{|xtYjW}B1pJy|gQAy?&7_c=)H@kff1MJUF>c;LDI>N~D zA89I`)3jf&T-nQC^&HXd0y@Mj(-E~<#u zTey5w@xf<2=EV+;iX=X(f+v~;Ty*=W!=+>7+MZ%6DDYxCQw^dSg}I1KkQ5T%M+)0f0Y?Cw_u^!&W(ij zk$h;y`AqSVj-h8U$PcBDEBybC*C=JVTZ&_k`-$|nui;;gr%O_PoZI)2n{BSUrv53Q*S_wbEaCk^3XW*ABNL zf%OkSw7VnEqtNt-K>ntT08$$=uZDvdHy1 zlKa%iYyeR$EI6QLBO>bv8e@>CGkN^hS@V3)0)Au9+?gk1%RIJ@lv`;FYcOTgk*t5Z z#dSmr8QSFXkd2T0_ti|_@FiAvtrn6GNm42iln#?ZzXcG!BptigXCGBI70jw~2;I+s z!rX#KwD|o_5;yhtD?&u<{+LD77@ESoqPDs&{P2=Lty|ZZl+y1--=d;<`l>LB!ZGQZ zI!krAu*7nf+5IkscP$a4r*7CM7RkGq?h)Y?6L|O)mIK6Bd!Dd=AjImG$HM(o2y#y7 zq{GC2RkRXkE|U($l^!UmO_ZBN_9(X2WW3v+#LdI^8~GdG_ZV%u|e;!(o@!@Jqr^kVP z9*@CNe}$Lx>)NApa+H)4_t5C_dY|qj?>2A4|C}lNvDvM}RjJVn06D;2{ATXo(fxsD zLfmTM+XntwdiRJSwpS)Ei!BdBH8)RuAkXDs0+cC?jviC%7LVuC8a5)H&g_?otV*7B z9|E&}x!>)rJiq%0!LlF_-EO@GFymozB%~`aUjnn5%~EoX3!5O5Baa14h3>Uv{KRiF z;*na*skS{ESw_3jPQ*jq;M;;2X#%n9j^{HCMH_ej?x_Hn-ho+tQ-`v};Fg7>dP;y$ ztX1ht6aB`}MDU}HlU|+)L%x9F4*3FvLD?Iz%NYbG(BeJQNQLM6ZSyHfC!fwK9_Bw8 z{m$P&hLgngc^$js9o;$OH{2q0e6If13M4muT{$=H`q``EUxz&AknY(0(XA&*Vrw{P{YZ^|{)MHZ&UDXka zeGDe~jHH7+;%gbD(l_Od}b$O;iO< zNQ#Hlim$_w^~aB{p1ZLW`|&i-Vrah&(B!cw3)!qsi}45O2pXrm9YeHq;hp0b?sp-+ ze7V+6eBt&uD4yykTJX(7{_{i-3#$7sdwedZ*tI%}!1YD%qe{ur;U1&%W%;XI6I( z{hpwNF1{I?JfKB`93*IDd5MLXUlWx z-2&{Y4*Q7({3%HqdBBYTXLB>#A{9cm7c~ah}A_`dDum2qPCL@CYu%LGw$)G;W7DwX}>egA@CQooQO61wI^ zc%L9WSTlseuAQ-Z8)?wveZA++;W_@vIiob)FaZ?J$u+OH=6P*#SaE^yQhIRsZ&3 zx(zI7LzT>Odt0@fgWkl*K*yj;3btm>nNM$i6k zLPqnz*Q&9flq;yJCl+L}A=p=U@fNTFVI%ZY)6-)}&#DNyFN~2~hkMY`HFyty1EFud zGYN~j9rx}zK*Bd%a|K> z_ZXKq<&OA@Z}Vj)2l8nj_A8BlfrnXBE;17PKv+`Z5xA_C`^T3vN_ZaK`VMcrDhs;| zP6y#DcDZzgNZmrb2dosJ-sb63c>vc0RPN~WGchLZDhanpeHrO>L$g32XH9dyQ+u|j zB_Q80+5BPojCG22MI27efjhD^1jugdQ=Bcpxqu`y{t8tak!!dojJTXmSeNlfmvQw~C z9G?(INr-9h2kS#)v6g8o*gv3ewP6yvfTCSbS*ZAue!M~QX&DuI5W^Mj!TVYB9<Pw>WK-79z4U3D3UZBBdbR+8^8k>9j_yc^=IK~b% zFwmmmCF7U*3kxYeC)fxcrTJTgYP7VzF`&l^ZY26T%(z6mQlkn`a;&AW!A-J%n$=dg zJ_R5aKl>||@89=8*vkWce1DvR{&)n|kjehDS-NIAIizUZVb4d|p~PGo`$)b!4nX-4 zsf+!Kn5@Z7OKgWvWo|BdUIz2MPP4i3MI+j{eV`$0V^QrQ0DXNT#@c*89oM*vDlIC{ z!|xeaKiES$wo(X+O_X|gTZ(NGZ3{r~PTF4KmB`b3i^Ajs0kiPyP=4aj?23*|Rp91C zCHBuTJrSSXkEiqH%El6rrA=2ha@*F6i%e(41;S;!71#VjUC;Z;(7f)jFEEeaR3Ga5 zxl-5!2EB-Fge#8?{Vh5M=t|nJ_f0DH1-so5639L%Xg?#E=l0msCo)~v9Ht0g3qNq$ zK3_KP9ZU4--+?E67<~gZlMAeX={!_F*hH zI3EGrc$f-1|S}T6Y zvDY`gyUcFlw8dx3ILGv3_s$joJ!d8ejIGvH-p&$a2jDfNXzu(t? zbw4&CiUr+7m42H9uYOh@=wG`rs32wC!cjbiWw_U%W;|3C2w~BaKmT7u$F2KM?{1cPBQn#@gx@ zT}CFaRwg^tWXx%;yKfe=Tiy^ICg+Y7# zY2|#F-1_}c=rY zzs(*0v#e|kO!Y@FuWj<+-&9<(H0AD>VSY>-q>tWy>chpnoSLIx!Tam?<;F+qV&0ABwDfL|tcPeP3gYxZg7NQK4XFTb?6yN)) zCowPpPkl*8A_JDr3{Uk#Qr`{NgiH@F!vdy2C(hdX9KxUHs9 zPS0eY(4hm|Pu#YAm7pAX{B_iV7yct=5c-cZm4_&TB%nAM9k1a+tXsA1-sUwQew%gE|}oo;?Mc>H-rLlNy^ zRUFs_bJxIf%garDG5g+LKI|Vz$19NDMF@5; zFBxkXoLyk723S9WGDW1;s~iD|aLd*^Z(h5=|LAt*TrT;l+^Eh&%fANLtVQ`7wy##| zegeWhbI+_~=9J2>o$Di@^*baahVlfbu-`L5(eVW39xm}d!Bj?`wSU#mt2oJ)Y@`}n>u9?^E=d?K_ZPTi*BMnV|JzjD1j zNiKbPKIDm~&a0wq&$Sf3bIxm@`-43y6L-p!eR{z^$r8`hA>m=rK0(rI7x2I84NzSP zx9tUe1WMw*csEU-_9sxsN-mVhSb8F--)-Kg`^wQuDLicaE4L}zl&xo)3PGSO&}|gH zc^_CxU3gp9gxv>IarVgL5tLWnQe9#Yimv|4x0PC%LQ9%ev1S+FHx@5B&(^1GrWfx| z=*2x>`-!{-@M=E*b?)K_jn_D3emlt*?z;g?CvfAkxec_vWqCe38l8VWucIlIyPCir zMFauuBy2Z<8BEZw#@RhfurxkQX3P2W^}uVm*L8+3+Ciq`AE_e}Tq-({{W~-G z>**6hm3+V3+1_Xc_iBVo`nBj_c(R8CID-P8JOouF7VW{PPk>Yo`|P$`d*N?i{hb?s z)o@c!xACu83l5nln>*x(nnrsQL-s0k(9EYyx~d{KSaY9X+axzPMbMUM}px2O28upw9 zIKc9L&aK=h{qUpMXYD{IF)H2rH`bryCl$Zp=*Aa3IzZ8tyq*YZE@t`}Q6$f4 z@O5N!w!HO}H{Rp9t)tddX_w`jsUpivjH;W@77d&85lV4;0CPW~gM$b=&mCT~33koT z_uF;fjTqCk*you>-$3?t8$X@eJ(+GTQrOwEIkv z8}!y_$Z1KAmdPfk#z!;?W{{okV~ZIk%_6;MI;~N`eywAD30JR&xfAqqsn4OwNiro8 z1{5m;4GMkkh$oOFtu-GV%c@G_I~*+&4g4>`;uU~1Cc@qrw|&-ezThj6Re8E4} zAX>q;Zww3qyT*$?bJZ!pqX_bl+kmrNfLTpi8Yu`&da|r$WUx#(L7iV$@$iMkBpy|& z($;QA$ko9aV$MSh{WRf_?X84zMjBqKLvDPyAp#M~i+iWnJb^M*lg^{xqowyrxI?)I zW=WhD{KH6FdWT zkp^gvsZ*O%D~}MZS@n)y6b`!QYHstK%6^aQ07}m9z4!En4u8~YB(%dlj0|VElK3le zq1sgo)ve18?VwEp@V&30@0uq~I2fh3$Yzd=I=W zZ0DJjvg{(--berEy;p-1$NqZ!)OzvVj+sCcDmr4no-7Vw{kw#L+T>{%muZ8@0{gl(JzLu|L*pN5_Ga*Bf+V&s+ba!m-tYAO#NGHqHVui-M z1uK;ht{*2*Up~j@hJLBAJ(>pknV*FD*#pJ$9<=N$6%AO+OI%DLd!Cg>|Gs)IYMn}s zTr>PQnx|=6m}}&i^KFeyL9M|r@RmLv(?+Vl{AecNdEUCVrj5&mqn@byU4`%_C=A>i z=klSS{am@$`&@d)|8E*SDzJ^Pbf-k+vlWFG8vPz4>5Fm%HjD|)Zu8#Prz~JJ^P*05 zh)G9yEOZa1h`82o!aIp`lX8>&Xi=i~BHQ`M`{X@}x5K+Kb-8+^Ro6~MG`_vLzpxB( zkUuA(vH2+eXw2&c4Xf(c9~dndtT5bOneGP*f)C{EYb`i#j;XzJ}m zf?`LKH@Gi;zzB`kJ(_(E2P`NRcEI?I$w7YibT4J5$=Nm-|M4$gyjle<$#Bfcg{J_a zlBZnCJB^##^;93K9DS_pOZCRz{w?1ZlqmJmyhK~Wk7wj(({w0qiYuCa0=SgvV#>^V zSTi?}^x^%lm5geQ+dEjsgv(PP=L~~KY;5K>d&FHUombv!{PsAx21ovWUuK&pTd?;u zhU|>7)ke~jwHg|>AH;S4M(0qtSF@yBs${>BGwPOW(V8+$zB3ltY;>sNozDB9QJ+6V zO*U7OUq?f%ueG`}hPT6h{@~un)sPJCUn;TTNw#kUW=fOuC&S>!3p;W=uCja}!7gUs z15iL_YN}2Y8Gv)Iu^@jo)ax))2;d|*+!tJT%asaId=2amPuwmLDrNQ_U#>EJyS+?C z%F7=*+lcq^E&V=I#5lXjoDjS^n5^E(==5{@FYNw)qwtX)9=mMn4mW~}${hD+X6T^k zZ13goykC0!^E;3$7zT#{>j-TuUP~1SawB;*=vPe9s@HstnVofUrFYN7sQt@5wxrIdcWfg3Cff`4-+$VcUaDSDy z>I|cFl?HUR!KgO^lmZMh^Z9m7{k;h0LTmwW5+bj|6oK2&gEmzBhP-Q@Zw_S^z?_8n z8xmE=Tfzlyc<iu83iL4K zIdSH7i-ucz{Xu;Xy_`=8{w8;kr;?)T$*|{7>WL6v4X2%K$~%aE@rr)CPJB20XR~GZ zch_JglKGN+P>i(cN0zG58*!^(ZgY&aM_#Gi5eIaqt9CVx2$*2PJnMV*cAowHKhf3C z|MIRAA9|H6or4GZTj0YZTz02J850Txe0;Gn*p3HWvE7C0+g(Yxqpzgr+<9#4u6o3w z9_Yge3E%FU;Azq^mkD6v)3x>{je&7jLBV#&GvpcWFs<1#!K(cN)qAY9+0!m0$hAP# z#ignoQ>qZNe{4R>C{GvxIzKjf8?_-yeZ>nTU`K{D89O;y@0AiUv)q(+ z>kWl;eC*RxXZ;e_V3ff~VDM=}O1yzR ziI7$wIGE;NVurX~xL{GguxFsgL*rX$%YIW%qIOr5s{ix(4aRj}GcS8~8*)vvJ=N2u zHh~?S-kSg6;Ij2S%Z7KO(yQL?5taUoKk<5B6?2d7>O8!zhUnk+_kN5MuJ-qLzQ*a| zXM20aib=g#Iwikwr!v~+=mO49-bxRqjGO8D(B<I@1}8T(>~nV?_xsqIDZJqC zOM7{|e?Z|w|4^KhTGf0-_`C4s2W`yePmEM+W0EpjsHGYTC%Hxs6Us|l4TzBTfjJ}L zIA<2ZX(o(D;kne}k|^PRHShCAhC#>yjn#rkxbqndjC(Ba$kgOi+}%ww~Z<#i%*zI;TZ$DmP5 zRD6X)g9V;L?!%8dW_pnMCwawL0m*v$E3n`?$t89`r04O#vVux6XQz=LP6oZQzxH~~ zaP>YNG^O%mfA@1gNYWTZEp;lgmv9)(rSLyP-g&|~##gJ${r^ti@d)rt5P9*0JMJ~; z#BU#?1B{iQkJ))ujW-0p7xT7E=`vAS5O`><;^NiRH%)f;yT>0~td4Np^pDe3NMmR1 zZ+{K|H}uxAkL%05h7UAHI?Vk59o@Ck!gukdlkYkCMlk6v>SMisdGo!z4|XEH%e!cD zK3md5YGQqty}?M0?7rd{x7!*8BGU>g38VxB!pA5Pd>jl{g`lxEs6MYyuXV>30U}B#aLfWY>oHf%RXj_y)?J#I(a%AX(XZ|jnJZ!hIq`z zA$%yxS(O+S-ITyVB#_PZmt{D=(20z0T%&m!Smu%HlRI@&E`J_JfDv%lzkMk5|f zI<@@)G6+IE)NGk*dtH8mtew>r(W@owK><^GuBZ7l??IdG1o7ir=_5;vnlB?| zsRNgxQ-t4tA&a<;#KEaYnylk}_@Oo89JjZejLzTo9Pc-W#qbZc@qTB~gPpSKVpvu%p^kFSKTNkYrjqZYYcbg5 zN1sZwv%f=-^H)0AvuoLH;#!Qws}3WF2C?wA$2W7N_WQZ*fAC9PV2F#yY=eNGwJd{> zUxF=Se2MVIu%1~dDMhPq6x?tSauLv?zRrYoEzItGX-SOEXMaqOt?I{b?O?y>ORPHy zo5ik4O%9#k$)M#F`AItFI55fWR=>%`b2RsB`vLK2$IkD?$^ZE8WKv&^q3R>gKKCNP<;!a&Fs+YQt=w7dT|>vfwNvTt%TTVE4zT3`b|C|K z`kb!&kk$Oqdb;qCxg=gS^RZ!@K9_6-wB(xfE%oL1E7I@RWMwsM$R3K-j!oX@3%T|c z0069q(?#2Op@A8~@H;+_gzuK$x{i>pM4VqQAI-ISP1zqodw}H~- ziEXj=a2Q=@A0JT*Pw;ncA3js^T0hQHXg<%|MLDtR6trqcQcAdKD0L3>V4O%&SDpYJ zb^^-9G&-==R86iR^t~-lkUM9B`)v>wfAz45NwY#H*ehf~7=d=U?=>{(XL|QsW8h0u z9y?O%(mM?`#m*FxYb~a-p5!xP!Ef$YN=6fVP|g@`sV89qgzWpncCb@x=pE=eiHeZM1;VA_Uc+4v3@Jz}&_UB%a1A8|Vj7Yryt z?V<8;_*nYf$M=H{V(ankbGT1sE>?ggcxJlqySJ*?TcIM|=;ZDSDKObD2l8}utp%CX z$v6z1{V=ZZXjs{^n%_6=VY>-D7&Z@^Y2lc|v$TPM-S?M0#kQU8CiyBy^!53(yl=py z<5}g}a$GXrUd~Y=Q?=`?YsHtuBl)6#_AtiH@f4BMouXPzuuss5^1tiR7&6d`ZG%_i zuCL*E&OFCc_;xPyn0&wq^P6s$1+v7mevZPJm+15T0%|}0_SH_Tix%*)FnR@VsGH9GMI!Zfu0AGX zWCRYdZFC`5wkp35o>$Y?>7x9j>AIFw#iHmhk;9`zC8{8ZZ$t@#fC$3Z&!TTlRnMJn z10tNT!wNv#-U&IssJ=G^%W{3T!005H6_~3M^{6Ff>-n+D$*)d0l(#C=X<_CDHBWGu}>hKu?+x<)?pN{6NS685O^9Li!F4aOvGPuPrUXH=FFr2*})rp9G zP~|_4x3ku?rf7h}^|KF?W?Os!wVI{vAJx9d*2~)8nt(Bq=&B7j@0$OLmFhzB{JXq- zjr;>*T>K~epbpz-uLfY5f>i_jqSgGW;P|y=ll4BW=;VAR-Uf$v$0y+9Tlx8eb+|)i z(@UH4tS1|C%Wl)-6DSs$Uo8C2WRJ3@{5DWWZg#J-IJ8$ADuRz{aF@Jvk8$@MG{gTa&sxz2{uRKe zW8X?1{W4m!nxCfVU$Y_K}RNohQYrLXm+!SjL%`KP`w%8RTzP?aYIud#l$90BJ}h!yNe z_F$eV%l3NM_e8IHw#7|V*$WBn$x>%~%JBuuJUyNBUCJEf1)4idA2EMC=wk zGUZ{M=4seUwMrQunql`h`Kv8)%ibPcTRl!GkXP~`zt!b^&cYioVUvw(F!Xzzv=mc2 z4c_T#YaRf$^6->U3L?(|RJ4g;^JQ2tlbqx)^VY%bJ-{qv_#f!Ppb{WT|NuSH>jP@`uJXUQM%QE;Q%$Ii7m zp09@yZ%h5d{mSN(V?0|sQOdBOcrHkY-nGaF-#oJYd zpgZ`-LUMTx7lEMBdbtH!d#es&U|f^s_JQ$MwZwK{Ihx231-l~NG_3_-N_ZI%?b3~qw$I}fjTi561B4|P26lTGC>zrP8<2)Pc<>o2zOaej2>E6=b zG(31Nb7MC!RoLH*-A{mb2~h;%98h~bNpd$TiK`UB>!aBYCltuR&LFsPw9NM%M}0sAYM`%}Gvo2qJKMS?Sc%d zqS=*Aq;0^B3D{eHre~JkCx*ed0V=ZNYOCdq*;marG+uy0ch8$RH{9pZUN!h3SQRNO zcp9E1o;h~B2-^n+>Y8{%F5=;nX<=0_H`tG~Sn7jvcHc-vyx?wGGU5dJLXFcoP)7gW zlS7TvvT=an&68R!?H~Qc-Xsl7h9mvlukfJl(uipVb00cB278xgA+V{F!jk7|prPC8 zCO;7IOEE=j0ZsiA>Mats78SOmR{OEFM5E#22O=SkKy<_TC*5Hx`Zz>Wt>1bYI^LKH z54E_4&R4i^{DAk*!M@for+Q-^kvZPY;Ngw?ra3ov%qS_sui8~*X)^qiQ%XI9ck0jh z1XVGwRp+WUGzv{nGKJW}xw`P*XA^B*2{@Of!ffZA440tLUo1IF?n>qBU12{SIw{7! z(girY^npqZ>F5QlGOC3CKxqe!uJmSr+UF^=TnKu$e6QE)l`}n2)kz=Q>|>BDNOD55 z>Ib_Z|0YrFT!o1rP{kyyDw#rg*w{mHIC_>CaZt;A46ZQQlz<8WG zLPi+4{q}Mi_*gGxs!SB~c9?;_9c&BZ7>*ME_E!d{_&lEUQyHIx$1Byxd8{7(VU>9sDY}xhh$0*#IkZ|*f1be(+m!V)@VE>k$T_zum zYD+K~|5zt|GaHp7B2LgvqPf?73UT&K6c`I3^K~7apUTwdC1aB`@uqtR{qHSH709FZ z8t4w@K3ASt5&+plIVzdN1ixpHzu#`VJr5(k-$Qjt&K${kTT@dIk{AvQg-IWXoOFm3 zPv-&m1^2#JBF=V+}c@1wLo1OyziEBw~xg}x7 zm&Y1#WXeyD#0w^orT{n8A-HH$ttB&OhjaXydZ(JK;j zd<|Jb0fAtMiUmLBN>Y>!lT=7A-E4h=O3}jhIt)f1?}Kp%<%pmw!hz+Y8ltZf{J6@4 zMZgGXYpki8|Gwm(?zBghXU-AYhV+WTbgb`SAWm{VJ)nuN;nznhG>lIBR*aw16#GuU zIKZWy*!Vqpp%(-yS=(r(?AJNI-%n4Xz0>(+Km9%V!Vi^g*|QEy zqnih_+rC=N-yQ)9T1qJ?!rq94{s{i{_r2`Iw$khnt^7#_Ke(KpT&cP=agc0>1Yfcb zKQ95d`RPzCWESg$JgSuNYk-|;n1;U_V$nAHVuzpV2L8rACr%Zr75(!0ivBle{p)X! zjW&kHgaw58e!YCJ-LbZ&!o9zuLyA%;9ng1ce73LzPYwaW;f(Upxr3 z2AUE87zbW3x8vnTdM&6*b->njO&nvzEL4s5J=u32ObaU=b7cIN>MWB1y-@$m6WW*X zV;&Hx{aQ+tnB2u=eg|P$kj{7aXp~IA{7!5R4MO8xuryyaFd~3rV#dn0IoihwLnT3- z=NQlE_lxO1UC2ch!zUh14&=?J_f_z7yB=CMgr%?g=L;J1^LC^$oHXh?Wa=b8SMH#R z-+j+hA|O|?M_4M)_ZL{?4`kb*Lw;aI$YFVxJaNA-I78^gG1M&3P@^oYRhj72B{7K- zQ0E@TRH`8$zcQo zP+<66Fh(7lt^@g?R=Q=5TLjeEpu%DjErxev+=`2Tu&YCvHEVYH9t_=HLGM2V6R|#I>~%gp+@hAz6xv%)P0PFr?A_ zY@c+BpakfI73Tc=WZFBF*JlYQAVXuv*Qkg0LC3lCT2fKZ?R`2LXcJzB7i%}OxvweH z_d8GTXZvU5+l7S#Y4wCC<+}piUnp|ghVltg8lqWyamqxWPTaqeFJxI!!g94M-Zz1u z)xCFAcJTO-Mc72H?+Z;lQ~P&cqoJmnd@EdKzXK%BFq~BUmUf>yRU99_T1+0p5jSP| z58TH*>Ucxwj4LXAN!n%ZUi^X{@!R|SLQ6ODx3~N&WeY>3?}(p2?}c#m^7UXq^xrT>biHrfv3H zQ^76ON!T8ao^nwTc)v@TyJe{OIo}DYYBigCJL|WW8-k;pV1pS(|HwDS`(5PXx4*w{ z{p9+To0q`4Nm8KPnzfYyBeoIg|6_voi5d{ONK{fz$^k=ghC zQpz^DZ~bS65ib=?b&`ICYM&|KyKvXTi8!+}2Ql0kR3ymIJCma@unN)_nS=8P`IE6% zRQxfM>GMRtm8ePzjSI~=qD5uTKIn?8Tk_a=8v{Df(L>6;E7M5=g@1H4gS?PGU`=#?zQwd`V3aacKU%i|xBlHw_Q;AZ>l(d6JHQ4hY1lmEUyp`91}; z+ZUL*J#FW^aY&{DhCvHFTpDK|cFgTwC%S9?^tW&?3tnEYmGC=5tt!7F_Lfp%_ICks z@N&FSX9Y)Tq%UU{7B0PV-4zOYuRN^Zhkn4IL7D}0$?>UJK-z%l2?0z!n~YLk+Sgr( z10>12`6>w3=u4;9fq0t!PjXs6kG*eM^~jC+bF_x!0nUVdZmta`8*>^_`1onE*nwNE zCL%L?!3*ASN4aA=j~`&BvR4crT2Stb2}H2QD~g0N`b6;s4|oMGk}T$}s(jZ#Dzx_{ zN>OwoNGLA|nVwsON&{jnpz}d{KECYl2xv9ZUvHyMMVP5PIy4tH_n~7)-;WQnc{*;; zaGbt81`axNYesUE;nBg@J~^M)3&JtU>a&^p6e^U@3D{NSALksLe|*fPsgf@D(A5c; z(Hg6B6ZauC>XDssmsR5XbzcF19(xU+$HooSm3;r{aPGHZBuASsr6?dY4NvPLC@0yR=54_ zm2Ze8-0}4_C2Zpu3x_o=@!0@4`uqF!{Sg|OK;O2>k9<|}_3qFFD#iRo+T$fOm1G~+ zR+G2KV1o57ZO|}AGL)XFxpLLhNoRDrq50pVimNYtlMP-XwnR|Qh=K7w<3e>LoX2q* zKZTZ9w_2d?s|oTdF|Qn{ozxXUzdze{Dg-}nHV?}xK{8yQ)#A}I9^=;dK)$+A<&L6z z76vYRHsM^uaHhK)<-N+~lx}e4en@J<_@@v7G%@;pSpR~%a-Uysc-@}65S%Y|Bn8g& zL{IMrlrG_kj#C6So`b4v08Z{)i@i;X=TzELf2&{U^W3}MYKl7w0YWrPe{tW}-oj|a z1NK56_yXEu095h6&3nMlMmh)v%RY?3YPIhdQhJXQOB9*?L(zXb_J}IA?`!ct$0vx_ zj8!~7+kS7ZXsnR)6pe?%YL5mMimeui6Yqlhg-_Z)4e$-r4yqqvy~i)!V%$YnCbWBh zP6hGfNE}3vo9w%h%z+)?OV$gGUS7aaS9CRB z`zD#8ROS>4Bm-Ew=AZ9ZOEf0r{Oxc=7DrosqmFOlB2fs4_pJ**Q|%%PiQ;#9lhedF zT`%P}4Jyu7^DOl2jM^sHo`B@8&n$P8)8`B&jXb$D`*pxAg6`w|iU!BEIp=IcA{c5$ zv_Pf+z%gx8WSis=O$~>t!c_RjV~^6rJM;>_mWHXex~wD`x)Nh=5FQv~TG>zNcInsQ zcIwyE(q?-q(7{aJLga051-Sbpky#tZ5ZNf6d7VP`bevpHIVKz3TLZv6ZHbIY`(z{> z)L=)}Z}RVuKxMJ{h$4GLrN)!?g&kV|RYbiPPb!!RRVN!_W^PVg4}6$qU_bGL%}h)xOot^7HBwA9sjgshdz9adc1@d(`&P;s^b25UDYk(p z%3?s11N7qRXNEt#>3oY#*8Nxu*x}~VjKI`ZK3$dhYP?6-CXkA!P5TtSn4rq-pVIeh zaY<)hjhG?Lgd6qoMhxGT>%O=2sllG^AUVbuU6-k|78HBpm&mYej|_0Q9Q64!0W^rx z{6*{ECz~M*srbNx?36fW`h`fA_x>R=bo?<@b$V-1nh>G74N&ox!)W2iL;E=0JcI-| znflur{Ii~!J!JmWVNodYUphKB0I_nkc(Fy|GZ?iPwL`ya2ZHC;r$U^AC!7l0*vj8q z^O+5my38x%bM6lnJ0DgObaM$V%0 zW_ar{E&&_a-Y$`kC0jeJ4pRf)|Lpe?wf2^Q<^is`bXQ(V<$SVn%MuTg5%xKKW#6w- z28UBYpr_6b+|7S|)c9V>iyos{GdBO1AQ=+PD6Ht zX9_-nj(-c*Yl(#JiALkvmJv-kLn(x07B7`k;+(X&@Xm0Upy6M^@P>8ema9@YzZ;i5 z-NCn!+QU-lBjA;L0vw<-F{)RL6<>Rf(CfT*4`3wk7kw3ucTL;BJnhx-bA$HH@rAnd zU0A_SAb$g7DkkGdFidxz=fhaWmQGbo%wuog6WA?EG>K0S6Ny8FrGJr<{dQg=MTE{Q zysSllyoqqXj34nnd?KRQNTJYIEQwlXLPw&uQ84_a+q0b8Csy7|-WW$M_^gi&l4cXS zkq0gTp1J3~w(RqBt}WOL!dU#40I>(BD7e!Czr2=_2i&gi`Urh1s9U??!05#(`Re^1 z?(2Io=OS5eUP?z&`=00vIg9h@XKYLw-!4QqOJt+H)~zwB)#?b-^3RYa0bnA*%4ZEnbmZDYb!@)F9@i`GWK8ud7IbW;{v3f!_g?l7B>2B%k5}ih^35 z+k)_f^l9ng#gEJ$g!I}8k+w|`R8lmaBjer|!b3|B#;4D9`*Qv{j~EcOm@B@KA@r)B zLTW}RIDnU5vFxV3QS5k8mJm<_@?jiI8CaOQvUDEWW#tl7*HCkfi z=uJQI(OA6jr*&tCX8%gRG>R29x;1pxK1w>g;z|7ns+b(V_8S=xlfbAjvV_h11*2Tr zqZ6uzp77(b2?SoDb4dOqy-d_=X(qP{ektF;N3E)Zi9zpoHhe9g8Z=z@Ir6)@_G_A` zC0j#Tf;9>g2l*;=Z`BRBa$iA-TNX&%`7Ipsjtx^f9!fSi5TK^&pVDO0Q?QIwauZR? zGI)+JSn+zoH<4KW`#u|ECm$bheuXIm>}6kN2(@B@{PW?f47(wFxJR`=RUuy8M!+jPPd=-^vpVXS2Wy@R6GouhlH@a z%kbFOhg7^2;Ce@~)X1G!gzB${fM|a(K?U+aEJe?}kn^ZT&%=4;Br33POPr`PjdI`0 zcUx_s3I!F01{?M1T0eg^+^_r2`y$N4IdLL&4u>!3_K-9X*59*S{%VD`p^2gPsnD80 zNu-*jPuw1(VYM<)5F^;stRoCoZY)Xrc8qq!egA^9{fU#8(`vIZn^XIO=TilF!W*kX z7jC7O;Jfohr1%>ZU~7DzCH7Z|+|{|Hj=OG*;=IjBULy8(`-BlWXo7eCHNYYSUrHS> z{t~N&=rSfL+%33-$fAC{)-!ar_R;1;0qk&<88n}u#`GvJ#u0i_KRC0}&tm)1^MINI z%0N}LR|Jkh(w*VBHcZ(q*;6};da;swXP;&65I+^0t@L^=?Zrb)EnN!MS@xp(pGl_~ zJj>BH&@-Q6GrpOo3<6RIURUn$@4C&w?A3oO2pw4={n1&}qE3gT`26<$7^oNiadW~$ z-@#!ZIGn!;D>hH}bRSJnNSiAhuzV$glyW8_9fVgQZ(%yi(YT1k_4?i z+Y56wvk!YhIQp;%lgQC-1lo)ZW^hV{bI_?f4!MU7(6XD?uIjxrw6y7cxza3k2^am)o?bXJDRTHZ zs*_7HpT*!*O4IjBHIKZQUz*~bZFG4w{#d^ep1P9lS=uNNnW!b zdo;PIQQco0Tai`h9SaZ0vs@RYM-yut*>dI06S=P5D)myBgS znjJMh#I@eH_^Hl6SC0L>7*^rB9xT5Tpbg|E5|8K$VR+I;E~!T-weH2zV^%b zEv3MIadc4p_M87Gs$#v{L^^)5o;b1&@eyoO?93BxFN7l(4X3I3u*`^2eK-|Xh|W4w zQR;=%A25T!A?z&_Q;XQrze1IeR?hlh&Ze?{{-D+du9o0GIy#qGlY+*U4!2&|&q?kp zE4mL;tmEl%u*2F@4fWztPft;}6cQ=Is*cwM?p?6Y3H;yLaUIa%dpAzV_7fjB$hp7c zj!ZO8(d)ulsL!8Z>$(ukJ_#QVM^C_DH-ooXrne6|ce$TW-w%A7-QE~odGU!z8ZCft zuW&XY{}$GL?~-<@yQUA~yv}O#xLZ)7=VfjrC(<@5n|GDZ@hu+ODL`j!I=`3WUp_=D6Ga(U%d$So6W#klSnB*-FiZ%Q1{(8&4;+}C#C=RCOj=}du3Mp zs}E7%z6QaW>$0!&(Vzqi{wD(>?!t$A#qu#WUPAMLs#?-!Trqqls7GN>-%oab!R>qe z!M3rYz4V&jUi&4%GeH#}RBmO~vna@W-JA2LEpof9eEmsqEBub6DiA3yw>03JXwpwJ zTn-lKNUk^pG^OT)e{Hku0gX~-GpzPB?KQ#u_)fF z#&M5WvBK=zA{s&8>!<(9hvqJTds^+=Cw{JdOGb}sy8Osi-Ae{|%L7>G?Y z3r?jQM2(X1ToShwjdrHoz%Qwy;PkP85MV2@C#-TCTj@Hp@Uu<%3a#C60LI5ZE=$kx zm5{mNq2kZ_=}ao`5bkZiO|o#fwIIOaiQl_W>wRl$gn3`C(tLcu{HIDsu^k#3ZV_oq zLhU@BjbB{QqzTTK||b6T;t8CXD~@H@~NVG<6TF2pp&~RP~FuiyJ?$3cF{d%xfFKlWgnz@pT{RCFDl$C zrAkl{_m!^M@6DrYMm{RT!!)bcCLDQ3+`5&|q2mrd@Zb(@{(S&n_c`0rgTMZKvYX*tY9cT}g@fJpxST+(3u-nR}7?SM-zBydFS<%^VY{636&e&W~tlx?AW>L zXApG20W64Viv_%=()`o>A|v~PvN?@Um@dQknW?7??D|*3r~^3$4Qg|zlqiO`?MIZT9_uRDF-MHj7GOF5$!&5eReKK zRQy-ci(U&~1c%WJK-{&ea-P4gl*ayjzma9$>M+meCB3O% zh0_DxAGeSY{W$`0kUUa<`}V92SY+esmJQN*$UgaiYQkj^)`b zvVJr!-(=`R=QYF9&!&blr@u0ZGe{JU-Tqo%%^$XsYfa{AbxLv>?+;_F1~k*c$d+Z7 zkGz&?9hc*l~M!_V$GI(Dp}CA>kdy523$zS7JJTZ_iW@ zB8AbRpBfn~W3ry)9%=)Qe;n&^DMX2yFN@YN?v?zx)9=f{E}aKQBuL2|L(TY0Oimef zy??%Ic_JO2WFSp_u4%{B&Ukh}D7`}=$}`{rJqLVt@%FLW8Tjd)xyuv0jlzX1-< zaS-Iy!6)`YXuyTbo_-1EU{7TpN_e+EuY~<|06WINIfk0yz9=!nYHrD(3uNti@i7pM zqfY?tR#(4jB)y3a2}qYdWCWOg@tlU00W~US@?y2LeRTo^;$`k}izy||P28j~3Mcaf z8!sh4XQ=8`1&XJz&-Iswm3L0sG%vYmPlgW41!`9NccX|%TuLh9SHcE>hRQO7Tu;@A z@3s{2c&H&YRm}Se$mK%+MT@>gD1w13URodygvL(+=W5xL$BqOYfeQdz>$4S7DA1=u+9R z8re^0UB74UJ&=*|fhKuYtHf=2`f$Rl^+3@f2&VJC@L72yeO&>aJ$XQ4uj{umEDThJPbT2|LrAiCh!14=bk~v>h`OB6kGZk z5v`VcCpNxHF94`BVEC0kCWMrqSVtuW8X|D;NP%cIS0a4-T%Ler=a&!EH=epKz3XeC zLPw(I&68Gf$%v6CZ9W6}q*>2F+ZPLIoJFA8pgi#ZHN1m!TnGA zW)$*4W-8&#bKUe1^w;FHj1^?~u6n_97v~1JU;HNdk)c!y@;=kcYx(yc6e;JFJiV~x zGw|;?^U%_h9v74O<}|V2qDX$V6IXGr+k9bgs*lIdYi2IW^r!-cD1N9ejgfMEl*fy5 zJ{?jGdeCQGdD%d749BxsT1ZbM z`mS~5SG3iMcHleT#>!v7!7IPqrLOe80kO9;thBDnie&}~IdO9AqC9$!&S(0!(rE&u z>Y*OJSOt{3238qu&hMT`*RW&7`Rrc&tMjv3#aINWLVwgehwAxr#9Am!#UrE4EZ=QJ zdR*@AL>x68RJ)_N9pnZVFafSrh`D{F-Kjkw;IGKgXK|03Lql2jh=acQ(IZF-+T-gN zA4O2RmI(hDUO{;T=zVKNM!Fog_s58tAJLBsz_@D+r{5{C`rGCVcRg>3p+1<4H)s5t z)C@iv+DS3LQWGy~TA2x|?N8my7#Lz5f!lX|Ln&ls+ zc`9k3xK?tH+@kxvgt;vAz2>OVz?6~iTWoK4k-J$QBaP0)Z-*hU_L2LpkLj&(lUh8xoascbp>GIlhg)KaOE_mU~BA&lR z{7gI~?;0X;ZF!$kNg}gFo$pr?tAi$tAY9szM!%; zx{q71nYQ6QyHT%1#}?>gn_|f{upen32pqdu7&NxwqDI+*i^szSi?zw};q-(C$dI9u zSAZYGZ>M$%3gEsI_#;nV#T=SpFSy}eK2GP6cU2yNy3Uw`%2VNsyx7BHWb_L@k7ndm z>z?c~t5iRmaG#>mM9`vFtXTYLdXCeiy^Fivmf2DELsNIyD^#8e6&AD{CN*#%|B z?zdlep?6vyyt6(DfT6j30{azd26rD+1G;$i@pdci%WtFgt`}@7eilRI0E~eRPx`0; zk0r%|qbR4ZJ>Vhy8t+9l4W8m<8Pu^`V3tzXqsHlIECqymc|CL0QK?TozX`md|2~{b34ZhyNs;UZ)5JHFI7Zf^ z4kQzX2v-_+T0-ISyMOGnVf`;GNV)k^-`l$LKB+-EZ!jH;fF@pm`+l1tiQs{hsTOG8 zAL1BU#s1dFss~3WFvT@Ey92zNtd9$2RSCQA2%RgjNin@H>FXuGQe;S$b9@fRpX+Jx zcUxcBfE@(_E@z;y_*>h(hY9GQ#$r@Rl?lmb$>AJ1ygxF$tE}Y?>(15R@0q(j6w~ex za8FI((GEE&o4?(D@7zl3ak4nQBdQ}LE2Kb$nrp`KQNiDc=YB22caxK`{DT*zRaAa9 zqpuIWq!@;NSQxRuNUK}!>kVG}%^hw;W{lf#yh!lR;}v(FcL27uFF9f4oUJGR0Nm*w zt@f>hAKZLGTHCV|*hkkp{h|65C?1cAA2L~f#QmuAYh{3Irrj-b`*B}>z_L6x@n^Jd z^@>``s0_yC=2!mhWPG-FaCq#cC(T>R3v=#H6F|7ASGpv3WxzaK2$jn02uB9D0ft#e z7^#@w?Caw#{pS6g;>XmqFe^VF<_mamVg@3Xsu3N1k5NUUVgx3+@|H2`dqMU>)^~Ob z*Fii>UIL{l_wnfX;30;0J(*te^HFZk;Py)nJtQRCz-r+8fDa!ap?HP4Hh#rX?$-~n z1Gk|(;$Wfkn43*nv0hkLbdiq0z0ojes@D)=+B zmP2XL_x;5ElmH~lqq|{`B-e(A^Si+;7w>8{NG~Cw%D^LBC$H2EPSDgo<=O)qA|zz( z!I!5bO5IzWHLvr&*+6UVoPg^1%suiaR41Fek%I-<$$EP{U<>?Ag-U@>Bdk0CDaS5k zl9k?G&h3M%U@~K%`VonFsj_Ql5`{(gLs;w~!~ms^^XF$K8Y4se3+}vb=VWxR**vg} zr;0)sqQsK)fM*ZR!lLU^2Wrn5uXiezeve#-n&6kywD{B+>v_Io?|6|?S`~^C*}n+V zHkz%(MPkZ}(!w(2afb2QqqQIjsnin4>QAz@#SUrXb}Rt|zUa@%#U0WLs1Za91PYBf z`b7)52l-LHFqH^0fWR!I6~MRoq4kO+xBE?eF$InPefAgb*|}WAw{i+akUh2G0Gqf8 z-QUFYRO&bZ)b|K#y4=?>F*7v|_6~SqGvh)5*5Z7xZ=Nj9LGcs&AxUSSO(fGOqe3rf6% zfW?OW$V;%Q%)63CE_`g%QY0>j-i{nk!aGH`5o`jFNS~ZTk*>I&)R+%GIRysXw~KzF zWfXZUi0(uVePA9Fz=Jh}Z>%pojliHaD+S!|AENozO|tsB5X=VxEar?eM$jPT?;kdT z6X?7TTnMQps$RP!HmbYdKTo~*Pjz?Hw>q_BZyf-h!aL!5`DM?|pPmiYWz89c0>@dd z26Qj+cayFyLP>l5nw#Bc9=7x5kk;q6m6g3Fd4C(%Ncq}1nc5&-o!7UxN>skx_xXH| z#>=BM9<+?HL-g@J$<9{kK+N(bhjtx_Llu|F@k8D~HkI20$QuT+9;EaZcuQ76V>gUD)mFpw(^qtEa zxLx4YjCkP7^h_>Bhc${=-zaZ8^hi$jU>!ba%V&^@ z`y^bI*BX3U<8rO9?Jl&|);hCB;J8By;G&<#T6hi)zwe}vcw4E2n?jVHK#DwQw|!sQ zpZLHB7Vc8_OfZxAMctT{WkmQCl-(;Khf@U8I8J{gP%%oD!^tE8Xs{_ob)O$=bL@yd zG7>#1yeGcc`^TeC&{GGX?KJIUxAM!Ddr5_VknK?MzlaQev z;m_H)nOno-TtVYa(E1;T^5`IPbvT;n^^u`+{jN>7l8v4Wq$l0cUq6@|%jd_lHa7L@ zL`VH`mXh!e2V^$Fx8tV~ut@89!VCapV9jmS7ZYwA~awupAS13$7tmfal{Tqs% zEu&6!{Ef0llDG3Q@EG<$sUcNBp>mtmccs@-4xiQu8XHW1JP|fCa11a1pqvy~Mg2$3 z>Fb2fK=YcNh9RzA_>y`Zq9LAFX3nDj6$828+ca;v`c{=Lg&R!*p{q+np#@2mQ(vP` z*J%Wjl~@h2_0Q5e51n$;>(@xbv;-nqK}9(s*(_sQx+v6fb!R5u%4)cVIX;8Ui|l<{ zmFp1yHg}%C38*sh`xbNWG>D;Tn916-c(99|?5hURMV4d65JyzYsJ{)-e4L|7{O3N&$2NrivhrLlOQG1a1 zl^~(0l_?yZ*qY#f`S%xJeD>6H)4nBduzE@0!JN*g`5G6E6_6XdFQf)`3GMMc&W%GR zL~aLnk9>OEiw-^Yb02TsaVSBAfN4TPU6(H#OHa3W3wywacNf1ePu!EXZ&K>^j(j=4 zZK#$C?qfqrEj7AtoIHp@lrR4>z!x~y*DVeTCF}Cky2YUr4g1*%JOUi3vIt!8aY+%H zuOxtukle&E@H9P_0GgIGSvhAT^1;$32=b-A^hA^A&DmdtyK}_}p^1|gtK{8L_ahYj z69bF7KYa5wq3o2i3Y~DgI)N&umr98UuP41?F71b2w`1*31YsO>DkVKYsoOg*I?(T< zq4Zv26VH&!xhg4)kS6?GZz>!L;hm`WcU>S_-Gsp!Y$~wk;R{JR3!8>TUaow2DE!|n zfyYc=LxR!=-MW4kKWBT+K#4ev+sOt}bL2R(;|SF`XX8N7O)l^E1zae6VecA=;2d5> zRq3W1yEz>HjD=~L>9bGDwn}k?mzG>FkL2#MbNXb-z82Tl5xhThs^IPSOW(O{w)A#6 z5VvI5ufd@UUWo&xE&pef^&xj3>V?)Ie&yXbvkIi>edC2IFf+?hXvte}3%~4mq&@lP zd`|I#+BHF6BPpZR*4*3P+CfMh%NY|^3G0;QR+eAEe}(O=4)Oh41*Ltr>K6z&nx*0kUx+QfWPnYeox&~ zcht}|J|k_=`o=Aqvs*%P*@Xuc(*1rPI{1;Iqm-!Rdf)3eO!qr~O-8a|-7 zM_YIX%yZS`D)n>W+m;N%!FFO^FV%swBLanS>9d#Wr1W}nAI~`V>0#dnRC=jj2i4Wx zY~H}|oU$ifCM6)ACR`RA`d*Ek;^oC_1UHJ;osIG)*UPHl-?X$`xwlRI9z=HVbO|=6 zFr@r~E59E>_xkw&L1fhq^zp)+pdqfW#QW*pa_C{OS7&MO?Kaa>ML#*gJYT2-J;EC~ z@lVf=fE8-9WZY@6^!WHvn=s1cqH53W_9Jwd@j<4TvJl=F50M_A!rWcD@UB)pWu1`r*qI-WU501Ru=?e>s`Yy{NqfPrzKE zGabDJ&GX6C866I0>z2p)a_F%1!`MT>ub0~A=V!O-mRhlU`5t5> zjs4W_A}pYVAt%20d=q%&JNS)a$ykka_0)n<4~bn3&V%Q)jF|Vz)-tPq25EBvOAIxq^WSPol$>In3Kqfj9Omiz*6^BWqnnO@et-Nly$4X z?)QW}9+b0@#2zBpD1o(#A9rp}|wee3>&LUrx+ zHh&jt@h`hOoc`2R_DMvw4|+JkV`}>BH}ZVDS@<8x#9P77PdWtQKd1$`K3fTg>-srA zKELSVn|k-!Qw_=0rC76W1J++FzOd0kmBgrRkc@?_-uHJLF2}Wv|NIv3feWP(yaxsP zc7ttp-?_6tzr%0b@*U#5Otv=jEDbRk!#wUWV7<{O5cD8^jM)Al895=!Hgug5i$01> z4B>!D+C_1tv}=@G4K;;hXe5nvyPDYGih-c4`{xLB$uKaf_vm3V+ZQ#oq&)P4A}13s zx8Lh~3H~mkaG8j^0D6XC!ozwGw6@h$Awl!4BcL~D&}xa{vKMcl17FM>rDA*6oW|k~ z$ShwhGe0j|d9CC3`zYTqx%ugJFn^~TB{xM!?McFZ%qGf<*7lXO)I=UWs9#b~BnI^G zIb5BCp5~9+RCgKqmG0;f_1mY2i^HDO;>}tVV1v}Wne=bU1jKP&alxCp2jMbyfFbt) z)as)T{~|DD7qmJSNBn%`FJw-A-;wqe;{$Irt&z!RdXE?mwS0K$tk;vhqji7X>{zD* z!!ZYLAJWir>u2`sqNISoiZxguICFDhVBI&&&q3MivCjzb$pBRrX}m?tmOf^K%H-I2 z4j>R_-miFTxM~M%#FA{V(2x>uOL1`#9FOg&8|p!K_DWB}0ycA6+X{Y0-vdFL1zkR2 zm8|UBgeDisziS{V4`>IlrOIdT?*vzae%V-aD90Ta@m@msCIpNNR`%dz&*b$9vf&dvtvT=Qz%E%7 zh_DQ30HcywE~?XU?T&GN;Gp7vRqi=MTyE!Qe*-h{keYDlS=VIt8b}(zUBb%`S_2Ey z#DP@_?}Mmuypy8%08d3R)|XzFuP0BF473YD9$g?k2d6_q;mg;Bqee;Lpz3BIJE20; zyWmVAA$&fYe~J+dNEqF7Jc~(Sdu6=BYFVuc`nGy@{CS~D<=Y*Hx6DCaYK#C;uhEA` zkh6{tsd`n*1eW#pyieOK0c$0UVS-?@{+mFqX?%rPXwL#%Y+314_>~3-=oz^B7q_p= z0D5>QY`T>HgC_KQ>c;gX@(9tHvCiiK42EN^J+Of;_$GjZu3^t&7XP3$1vIR@kA{W0 z0-|P{MLQR@aEW}nfT~mb8!M*Rs2)2AZswx5_Z+c=E`t>E!OGD>sJJHRM#{y%&+fh z@bG?1V5XO0&x~Disa_MRL3_4<1S_N|hFr~a4=e}Lz|`Hqp=V`p)y=xf-_DknFqT`- zzUbMrBButl1&)cmr`2Q{d|*(d0WE>*)X{}0ta4gs0t%xv^ST-GY4sOFM|2Y28aaj2 zr!y>T@?0?bf8M5C4z%gCuwMSo$`oIxrOYhszwue_uOT=nC&B4>;tEdBS351Zs5wXV zZ_xIw@O&lHBd`hI|5&=NEk%_m`b$U>9zjJ#kRbVuj06QFfBoI`+_idoYy%RCsuOmo z&U=(74ov2wY!ClJYoLg`z{*|he9#RMS~)}#2%v)skx>xK1s9Yu%OJd`W;N0CGrd33 zb`(sedRTN7kj!!#A0BK^<~`NL&-NYn#eL*8*!W@0Jw!D?z(G49{2KexrCE52>*A=WnPHw8w#9d*78Q zCG_?Vg?kzNec8B-{--snDpi;zH`02M)7hNdU#&a z_j_VL&&Do(Cl0A|Vk%`In2r$SP=eLaUyWI+u8IBJq6WgaD$u(2EG`q|2tq=K)U2J`8MR5~6*aNXY4ak70AC3ztid z7(3!}k9y-CPkSMZYYG{rw_hcT+DRs-h+b_p#nczS+cgz zQvux-1#mafRtf$1QCjEP@`@6TW$6K019@22>b&P(? zO4Nt5IUl)GN}@Y|e}6P(g%J4g5k9`2-i}T2q)wOMIAkzfdbZy0%h2Sl4Tjq8PZnTt z>YBZ^x5YszAeSEZ>u?M$eU4Gqz8(Cpp~5+4O7r!t$KSmoq^6^K{s6uU8S48zuJ(cn##>4cI=6v4xfiNut5|}7Lh1Ok15P*}S zy`WVQ!uZ43>AJ^o(p*k3zg~D5oRpI?6{A)Dj)(@(VrymbcnP!~)L4A)6vjX7gv7SF z=yMcl#Ctgtgzk!Z`1PJq9>J~u$g}$NA-o+X>6iw1$53eZl%nF}yDb%f?TA;cjk)D- zL_nzKz*q4Lv^OHu>d>gQ8ty(~=lEhlFS=>(j$pus|6uua62?6ssvt`-e@&VKxal>| z-`8BZ?k7!Ri?^2DBw9+p%3!NJn@BNxnWO~u`iAse#|cy#V(5J_v99=zcwYsq1VCT! z2Lk?&XXt&T;s+Qh2yz-cGmPhC&((;}8MbS*);!GT{d&4WxzM;ncOBoAQN(_MbQUv; z`XIvcwq1hHb##IS?y3t%XYFG@Y4d{_?us+8#gF^yC;x1t#&=AiaqT#n3Rb4m6Y$Z^ z`hx*N9N@BI$elY=^%hN+c?Jaj2kr=Q_~dsTa&oNRmW^)MmF-kb47RKx-p>$6z&E{h zKw1dK+lDBD?)rl;FTh};XeuuBA2(!Z0YBFohG0F*0d7a&X$&h7qygAIK5>I$BNmk- zw2JiN0;%BJeqP8|qzadE2+l8m-`JS75Urfg{xQXK z-=9ylK7;6cwOym`-i+Q{Z+tn%_WhT!lwza9XYzR8V&fO_N!(~Qnur{5)}%FY%*}&+ z!XEU<&&ptA)|b4~i(h|aMvZ_>cZyUTTz)!2;6f)rQ+g!si_PrMY7@zPpDq;K%Jx&U zVxeBouOJRH$A0*ww~o%{j*bWCpUd!YN?s|12uT{lx^ z_J=S+*J1T!4yFmmhhL7!dzPr?39GgB8Pp;U=zK36bR+i)vIKn^>Bf7ObUO-9~+OD$FKXG7(y&9u88|7 zQne@vEEN!y=YFWlgR0Z>@{!&^g5I8hyu&urKK`lsDzbo^XH9b#6mNEy>89|mwww%t;Q!SQFk z!J35*esOTd+I_fWKBJ$R6B{A{4}4-7hfIz&rTcA)9{!RW{XRh|8qyZQQQG%`?s*Fk zbSKmTRsRV)y?@7;!K5vrli=y4v#Ls3?Jrc1 zBW&APw_h|r&tDZqjr`q)`RC-OziSMaHrNfP`kkLOz=JH0@y)YmOjq{&M zum-SE<<@EMTm^>d?HKM>8$Ym?qOD zJlu{@smfIBuQumt3kNrB;6~+oxgXD2i-Q3SH?IQ}Kkg^&ji)XadBxXAmi1;L8!&)+ z*e*&A3_WJ@zw1R&y}9ka}QM07Y$AVqHWKN0@WV!PMsmAoFQsEv=Mq4rY+C ziJS_4ewufa?+QATNBTU;S1f}P(1i1mheou65o~V7VP50ed^LtMNU&#nCP0G1ah z#RICJ_eXj$d#H8N208vMRIS2~D-%UvUs%xMa2&b4C&$-qx)Dt`Xw+T|!w+n5xN={k zcWDcWF9co8yS<$TP9QpPGveNxe)z>?OtlX}I(HZ=Ka1*fl9$c*!9nRvM4z0W&mJpO z%L|npTQ6paXZ}IsK=5al^LEe~^xY1zr;qgn`Lh%Gn3IFWmp`s(Qd+%Mh5gzNAitBH zc6_AYM{H;6AF&ko0*Ffs+;n5LBZkWE%gj5Rk1k6QQj`_Ea{)ch)Tb!dc+=^q#ye0Y zES-DK&#C%L)O@qR_jicmEXB320~h>&0nN~53Or>#CMSWeJxOGJw)Uo;u8P#vUsO540xpuY>8D) zcNzlXI96a!2S5SrR?~WNnZD(ZnIt=yiwPcgS$8-!1AnyIM1nHwK6=k@tao2kA9ipb zNRj7Db~s&l?}F|x!$8naIjmx1>$Gy6eNj{3eCvPjckQ@QlLcr8vJ1%*XgGt@`}(#o zQ>Cc(0&VpT!g$Zjg^)pQ?WXERjd3w~1Hr&R{XuzYcuJ>h2`Uvn1|c*lkYjgF>AzZFCct8XIriH@&#W^3DNVrUuT=;g{m() zJ3v~9ru*}ogI@$PQ+-m}!Gy9l4lJ^@7Us=v6y$yH2jxqo$& zzstVg-bynRijUaJ2 zbLwI@x5If1`?LL7kcOG-H#O1Xk>45mf?#@ZMQ}rFw3^9Jw|qa(=xsfC>SD83qkrD- zu&Mb_Ru{+%6sh;x=XdlfG)o>Ah#_e(=we>isaN=e5T4Pyy=q&*YM(~DD)rZTH!!d{ z(Bz*Q`;-= ze^=PzPVa*arBb{=xx#UMh*uz*EN|sbZDq~8WZZY-C6(u#f+l7BX59{&)Sa z+!r~*2{_me#^ZMU7JHP)dk}jjZm+1_SJcd%{O9T2;9A@Mof%FScKyq6~U8b9S9ugfTK zLHEGkSI?yuf8Zy^`pmx)x#3b80&6RUPsVGyPvQt~MkfVAgSqwZj7@~^NzhlAs0<+g z=*b;QV5?bY)ni|f?>+tP(2v!8!)AJWU-o}IS@&W`7kfy3FJ>T5nx0^dh$p05**cXo zz1PEMx!iua{Q7{!CjlMt331Ql;Yn?mJKWqC6eOg~kM8vaLY}wQ+i=6zk!H&3KK#w2 z4CcP|hQWLiH3R!(;uj=R>Kk$Cv;YevV`QPYHje&fURr5gp#uMKLE!-& zKD=V(mQ9KWW}c`L7WGu|)4KUl3Rm$9S&xP^7VS;P6jDr1QST#xrItO^Nff8d zqz|K(G-eplC+l`!@Gajs_Eh}54hMVrdbK6;Xqc0 z^vk>7#Ci&hQs_2dnAm~j?gk&Vv6a}vTHBvgV4iNK3)ZA_tJ$Uw{I{yCmuf2M)Th3M z@8$b#wYbzYZdhI<9r{fBX-*L%2vc%)55u9Ng?COAd$29h&P_XgAzBu5R3nG=^gh)& zRNc7x^dT=WRQ*k}1zXo$Mp<+@Q_k_fH@deOaMBu$2({nD?Mv{im;mg8a6* z6D&Wr{BbINdzr4sKi~-q{VSsI2~jwmix*?MXDCX|7I1B5F0MHiBB?vDqZeiU_%1M! zO5b%KSXZBy?BmA;0P9EwSrQH8bLsg2_5A+C9c7jelfvolX0|?=Cw<+loE-NNC)FPY ze1dbioS67Q{idrk8{QWfh|J60KVCCTgOZ;o_kG_`H$p-{~;8!xKJBunF96lTD!p`QmO*c&Kx4 zc=a8Bv-RS9_Hw=;818CFZZgXHOog+tet$UIu=)kom){K>#r2lC_>YawtphiXItBu% z)SygMxYtu>HoxOOV>**{KcU748KwMz+F;OYAVz3bkym^2)&>{oI@N0&pXNz0nsN^U zl7J0%C$W658v3a9p=|>Nq6y>hMrwr6XJ&t=zD(ZMY&Dg-?D>8DWPvkgp0F&0k+K1=?}0D8($Id{ zEw})79J-%nxejlri#tU9tNYvyPEqZGnK}Z?CI~00l+Plw4^|P);p>A67&=d%@xFkb zSPD~_1lBfw7mrDJ)-_|*;p@-0QAC4Y0TP)wxjT*&5-YR_vSWyAAb}q8RfvUZ8FzsH zB%Xnd*r+_`90dh%VtXJ3wD3j91C%0?;F)~)nJZ`Sjqy&W6Y+X>st&M37uCgaHX7Cy>7?Jk{u(eNY zvPJU~$%puC$^PbVLa0WMp#6h;X$@Vhs)x?d08d_*xf33QU9s~b8TNTk}by;I)_tsmBkCk#WNz{GHKd@92oI9_5B1FMU26#SUOWk^4?CStRFr->sNV(PLXem8BD{v2gI}tR9r#c!|S1D z{8-1@{2ub=g=#vNez|-z2PIz#4zfZ4t)*dK*p2JW}(D70}a!5emp%adtcP}_kIul${SiYcwpY^($hG^GA{9rLnt!8 zhKPy}hrRD2srT+BBt;G3iCTs%Y0UOZ6 zcPJz*LCHQ_aG$Of$>2yu>}Uk8 zC$FBX>3&r%->S>5Qp>`M>GP_uK>xN^VC!y@=xAfrYhP%@Dbb#R-})b{PWCC&X2cDVd0bZK7`3!f-vX-Q~%IP4~$1=}DWD zeX?~W;R%CK`bFej%iWcWSMZF!1o$c^%Ta=;Sa6+0t1BOWUR`*clnJ~slWe~;P@0z` zXzm3T(K#-IbsJB@SQ5dF)ZW7**0iHLugi9AltZ{-(RL?DFC9vHpQEAhZq%<%CIap@ z&iW@fW?O}T8yA^d-y`ab5KY7eozEzu_PS4N7RqHn-8*4AG5SR>31A}wAZdGdZ& zbrC}B6w14t${|kzID6sk<@kNCkvU^!2l9Gg@%-&CDi!`1;n=-nhk7+SMH#mdvAs4{Xk9M zObd?}F!3c_?<8VE$Ld0&$Kh6^1razeZjLLHt#{gxyK`oV_2~{vMRrRKmV@inYhQ;k zxW{Ka9Za;Vj=-{^L7Hfqh}Y@1E*;hm^wD0oz|PmGtAD||KfH>scnzE;0|sj(PA zBAft^`m5}6hdjsoB#ECAqSZY?<^~^?0o7SP+W zuEV1h;#hI5nuxRE`68rcQ7!#;{}2-CP5m^nY{$B!MB@ z#n|nxU6il95@R@FI$(klp=gcrJNv8UBEGgbw#4{&1qlY?E4`9XDyI+6%j&~kFn|r3 zDJHYyUnW^qA86OTf2ET^DO-SABX#`ij8WsBhNOIBM2D2yGv_&iRNd;FS0CPlrF(Wf zxRnc!mkQ|;?_IBEm&ul*C)PpLVhTJvzBBfr>Cxq@C{6mU+<&Nfl_dE~*qbe9cQv%r zNlXLh@>kQ8@A+5IQs@ehWdnUT z0@JIgaa7NZR=K3>9*w>h_A=aE`9_&4^AYsBg?4d<7c4osnnQ6y6zAOIdLJSXsS?3Q zP;im}H~=M4E?@EsBFi3BDJ-7?N9*zV;f;;f+>bT)H3|H2Jx%&cc_oWCs)^8G&X8oz z9jO%J*dF^l$WnJdH{%^h6gqCzCHELwT@v}6;~I;co$C4c`01bZwMRiXda)g>xBjv3 zdk$&wTH^GtuX!^Lp#=v40}&O^{R~@WSHI3@BUtw_Rv?1jHz#!0fUSb}leFL&*&T`E zXVbU^JMP+z?b(F_}4UErfw={YOXph@Jkh9+;{`!<-NIyLa4|Abt-MM8{XE z_?*PgVV}y>Hb0Q-sS;fPQ)n(d?n!}T{}D2d@w+nbEew3;_2FG8|MA@9^BKepsq1xL z8DNQpZxah4Nz?F##Pg9d6oF0d8_6!t^Xkg00B>?wLTnN#U;W&F&DUy$y4?q_u`lMf z`-O=|lWP4TUa3hZDq!PnbVV$d3QKF|DZ*=qqi zt3y1VS%FKQ{jfYT#(p1PC%obY^Mej!$Tj$K0e&fc5^f0!9tpaGt1&UPb5uSsxWQWw zV38Pyy)40tpqp%6;tk3zF918b?YD}wB^8rpp zxWStZjkB~o+p9mIJP(JJ* z!uRC{aQywg-<_+g{FW-X* z{H$}cz3u1}gDQ?CIJ!=?6;jsvz-xIZDm=AEY8(@Junp+F?-vcGIcLw8p>>x_`#uf{ zubFJErT6P}c2gG*AP&--4)D99A+Fk>BnU;sO51Q2qc* zH&VEZ?-Xl=61PcjcDvHgB!t}Cs!3;n^-jaJF{w2V?mmi!1TMNX`WGs&ZYOVvpCr+L z`yzP@h+;*7b?G|*%%~g|6P4_Fz~mU&pVf!4`8NaL1E077Z~CO)Ef}iU*yju`E8aMw z?wP(q;(mJ#K7S{@#~ta|vfo}@8Ac`D>H94f1)BBxJ308{GaoI-L+|u}XOH{zMuLvb zrhUH2%fTcpoVDIYSnw2;oO?B-SwZjoTtzy)Pm&#pBE-nO)?!EF#u7 z)&%VZ;qE8su&Vw;*I~bI%QK>{KZ+c^%fekCWA+@y6TM7nEWDax=eA0aL@F8o6kj+` zMZJ8S>Y4MjI)%KE!o=4+VU;_K0?!cMp-77BtdvdHbF^ecshID!s43{Ax%X2y!VH!J zl^+O0BR|Fp{Do;Dve@)#KBKMkjdz*nnl{Wn zu#L9uPUS=T`RDkZ2k}LvW%_OHBLOB#{&&QnhrA^`+~ne}O-wBma?oi^?J`SG$-vbbf@ zGjL%`?(saPNlBgu5Q#@{ApiU)iVl5)jI=NXAUl-vWf(lJsw~oSl9-QfZrwJq3l9ke5JFY-t%5 zhTGqig-so`PCWNwxmTbb$4WPhUFKf=t|(459yxs8f}Cp~%E&jNibAG;4KN_Xo6}Ws zF2qD%P8dG`mDY>^Ed>HLq~O8PH@^)K^Zf}SUW4i0I}hjc@K>wh(MNZaZaqCAYg6wT zs{g7@!k95j?}v_de>Sbfs(J91n+*fcM#1TK^$5SLCRD&}clTAI^w>_LRS^4`I*PE9oVj8BnR(m-6Po~8uqZ`i#B#4D{xG%O2 zuObiC^P!g}@W4-)v%K6J99kd>R6bpFlC zTHeHy;U1}%LIVmRW&JQ151gu&yYU`YykC7P4;obS_}g=#i{5SW2;Pgoc&c-#*&>XQ zHtTbhBg{WQlx}}Uf)YTi#V5kD?yT;y?T_C2u0;J++y%(s3zhM_)jTw{vwZ@p2%p}^ zh*(tTeTuB|m1J3=X7p=>Qd+^AxOyMjRjbbB8We=Dl6<;t9?;BPIm|GhclV$H# z0_*F7~9bzt`ti#L<rop|ygwIIom~OG zuCiunRDx?_?fb=He=7GJWsoJMjpy5{pTF^O`H_BIQhOq&Vnu628nd?;?qew!Y?mjJ zlj>#UrfUkhdGklEJz{Q(`3hIb^G$I;H10>Dvdf=e>j|stJALDovzPf*41v;{iH79J z?M}`c-p6b6O9VwJ2p9#$GP*y3lgn!fCd7O=qpFR!v3jzFT32OeKlfSpX}fKaKPqv86W0@LGni8+x)4L z7P~h>9Y7cL=dX;EU$Th zPJe8YTTKkSl4`BOaX<6i*bo``$w(FL!m&>KZG~gOZ|9X&AzYp`;kk4HWncl4X!1^? z)hi7jF5X-;LEg>N4vrU-j8bh2Pvr4Zz$j)rE6{I!6Mbp@zEwd2-5`>NVsgq6j5cBxX7XwXvjtL1KPKv19x>@Q618D0u!75E&_?j<(|ZK0 zuGJCO$ecd6Bgyq0)OgBAF<$lv;ec~4dNkMYMSUV_<*B_%^z+=ebe~4wefg`zX)w6- zBbaL&bpG~1-dPvO#}KzUhqd{6yf@dY)paH|ba&qM0%M{lq#W_Lk|*1?VSb zrgmEiGZu7-=zYBY2=>&VElza3kAPj{@x}?O*`s zdJ{1rT;*dA_7M}yr>PyKoYtXWyD*%Z0g@k@^zHccir>719Ut8bl_{y^DNWoXzsv#+ zpm=?s`GMSt7%pdKeNOFqdy8Eh}d zN=|toMwU75iE()w!3ZvXt)kP_I2ot^M*oDQq$baC=7c& z|J0!R?O_#ugr_T$?0v-tf;f0cF&Y@x+cozRbzoP$bZ?7(t@CGjhWHe8%}+4rP+qr$ zJ}rUj((tP$l<3IM+wHZyK=2Va&VgL3tVg;2$|Y5~U7`g7#e0igYC@sqQtJ}GMHM*z zov8OQjxAfiPhK{>Q<#-ncpKE+?G23OM?2q>6KziUH;v7q2_97!Z8%fs(0=hdwQ9QfTd__&K3g5WK~ap-h0| z6yKR59o9*_^-Fs%_TX!rK7paE$guY1iXDkPSlZJ8DA2a9_SA;CGPsBuH|PBs4ZIDV zNSxF6mO|*1`sz9)#ftUQ?l^_XV|uRLXX`XQ82K{~S@FnyflJ$5|6SY=o(A1;gzw)1 z4Gt(yTsH(xB8SKhO)T*f!GP)pL!j5|>uTN8cDcf+Y@1|OVu#yS_6R`pU-iW0$N2C1QDC>bh{$pq-+}Q z%^%LY5}xBz7#EPT$XGZLRkc>6NBf{K!y#*hz4<79x=fjQ?nQX~alc;K3d${>e^tJJ z`Wo;`Sr6au3blfpjamp^Ntx~l-;B>O1geN6s8MDO_WCPS_*W?@0LG<+*4h)4g8cYJ zgmB~!q`Hr(>i1g{uh-1v1cl+%eK8t+mVt!4q!-z9^hUPJOVghP^ZC3+-w)A@&nsQ- z^A~<@LH;V^DkEfRvoTmCx^;ylsscd7k3eRel96iB+iGWn?{`NZ@zufuoe-pkFN0rW z$R_mCi1hg)_q$csmjNTjpj#x@K+JZ^4H8*43U@co$r`5pkgjXeR8FFrJ-xn3v8-khpldOh@(S zn(niziR;*g<$0o{s{xP46Y}rvdH(HDA<}#NrjH*DWVrdQ5+=s^=f|S5r`~z*BH6}`GN-HE8XtvST|Fx&3v z^4tV0Tkn_UMGhQa<(KR4nFnqcQJ{P7giuL>uP%N=C=F&XH!Pxh_M!G?1W>lx69mN` zJ?(qs{8hSh&ue{4emR2L(N6qIDD$7Ruu;DQ`UiC`oBwqfq>K>hs z@xD(i%6%=LaO)GlCspAm&CE>48lTP3(1)6jQ*N#xjuqpb_WXvD7aq74VYKmF)cr=4 zFiMr|Jpxr03DnA?E%bpsxaP$3#nu9$hnMi?@ z0ZsBk)}Y=3C`Y-GQ{K9etb=x`EUsNW51@75WfpqZIN|7soVyv#o_08?+UIhO48Z>P z;yf*6RVS9xtA%w@0EO@yHctVae~s31h@8aCzHmLAJ6@_!&_%CbxTbzP41`}f#$A{x+}4P7_5Slw z(|ubT#|OOWTAnM=moV8Y&|| z?As60|B8^^Ap%S{-U?my^{y9BINp;6so7euyW-Q+_0U+j5~PTX_V{@5-qmr0tsI)9 ztljU!6+f5w106Pe#g`C-HcJ_L88;pFOG^UgU5@Ez7a_YIjM8PGGO;guJpKvgsgI4! z8eItYjJT8bdp11R-iwRdt#kBJ0CX`$$1J4 zgI4E|ntTjV`(l=qGxD~22P0-c)7US0^~zFpBCPAwfVqw*473iu#*R7{UG>Ae4UbDq zD98v-_2%`j33ZUU|79?t9@4w2C%jKrD2gT%9St0Fz$WOMt+C6D&J+H~KMP8G;;U2x zIr(0qA%TgA_Y0+E$*@`Jv0joHAE2BHx$2|8U&@fLPRQJoOU zugZ~E%r4FKt*R%Qas-t5&&Df4&35hDht8H0kr?nhO~CuST>hC%mc%8HPwnj(nVkL& zm#o_>3sM*kjPrrUuWA@Vp#eHURk{nY*dk`LYvB2 zjlHZquN-{pZeLI5N>KXsr>A7J!r!>14rJD?8r!N+b{%2xW&UEBgOs#zd}w*izBx^8 zx=-$|!aA_yz#TI(oqom{!fv^;>meXn*Isd@5|W_r&fyZCrZCE@vzSpbWh(IgujFduB{4v%MyO` zK_lPCD_tNh4s4I?899F*(QvumGUvcwzfkwe$~{7<&plX_dqk43d(de0 zAOZ?ef@aqm85#2-%zKt1L_Y8%k?NJk+Vq##D+rEk=lBX`7De2ri$87J>x0ZKWLLLQ zrusO*_MlM<`wnO%6)e)1x;8 zv%OyFGk57?boih)(xg@FytfBr^c6RG?vp2?2H6G29Z~8fOUbY`wCUGkXPuLyh11aX z9>^^6BKF1c>Ks83_GR0vDbM1@yGq~AjsC9E^QmXWgA0@EFnvNNbYK4Cz5F%G@VBsQ z2q1|T&Z#UvnnU`w zWomsb+Nd0(dx}NE(NU#TP$Gb^KPDXMXOlJ55%EaMm(6~qx!k8Ar=>r4K74%wFX)Vn zBr8o=a1EaiPUL4m+gX*HNKZL2LHkme8Zh&FXC6bhJ_o|v?|r@ zp$LtcF4#|&lC%R2nk%H44kIt#Zyj@Le1iXU#y&{2F}e98^9g|PuuCiAZCdAbkDD)F z#FDR5Dbt3b4~N1Q&#_jua(@e%n^n1gAh<;yoRX5!QtugiU3^h1s67^~dH<_q?1 zSbl%!{L+s7pCv~I5Am+;l)y-|xjiVhipnpXUb4If$xV1?#W@$Q((}%K`)Y%pq@SP0 zBL_{#Q!#Rr2tg#%Vw%hBgG}$N7Z>93@F)Qv!)U26YU^fi@k5~eJJq`9M{5|7oU#vY^2$Vet z{BfkWll8>}>5-IG*CO0HHgJwXt&sB9SHm7?VID)?eBSWs{WO)3iC^eCi=UWFctM)y z)nq*C&3*23cTs*Zx9Pe6)y@O>L4@6mmt%=e61P@__q8agfY967qii19yPev%ze5-p z+DPlaV9s89IWdFelLV*KdyTfN(qSKRzg0Znb3shN>-SHg-uUpuzUlCk0r}TUpZ;O< zP>^hsq1EsK$kEt`_hCb6W(fA^m#rD)<#JJdgTy4q?&tn{fQ;0&*87AANv8%;nD4UB z8oeLxA;3(-1k7d0qvKS0gd%I{0Z@9jhkpe^cS(HF^5=*xOYU?3J=3`)iud+U_jez$ zSD<3!(_s{z$BWRE58$qE?UVn5t9kkTt~0+s!Hg?Oa1QGB z48cHR)18C#0?87SN#l34 z%o(6R>=*g&{~Vedne!0=y9X@e_(MLJmB9+3%hLnoVYyKc@$}J&YkqvYTQD9QzK#X* z2M%rC@5u{S9Xb*NC^+nM4}O?GpL=Y*%YWHKeuKy=x}NgOYsuGX9-e^=Ar+ePO#O7+ z)9H(j;??o6qP{M=vk!au6HsG<1u&Gxd7>QZf7YY(={Xym3A#$h9V@omBG^lH--@|E z*p42Tt8bO1h6-WHP)_4j;de5P&Od0oZWG7=iISUS9Z+$ZK0xJjbX0f00~)^Ma9`Jy zKkJ;{uboK2jiCzw)CY~!xAK5=M$~eLCn+|?@etz;Bk9;k!~p?`*cOlD(SahV z_1bR@oEp6A^R%YNVCEyHc@1(}jj+GgS=s%SQmCIAg3hZwU4_jfY`FURsvuo-?1ufi z1Pmpjz^IjDqR=?Wf0D~Vd?Q~AtN^faLBC??NDYfmjdEU<-RN&fUhlv7&9-e36~==~&oI zSPL+8pA>7kHjM-3i~3>Pv$1a+f6F0tc$^k4tP^~aj>PG=^Ad(;qj48S00QE^ibYGQI@G|K5= zNwm~)8qxbK_t0To5BU6jev@0%iq%q+)?MU`)mwe()?TfBu~AvQY$NM^14ibT8K21h zE`>0SUdXQ9WfkpYA2aI`eJFc79wbET{c{k&uk@g?z69~mFqWp2oxY)Nb6~~ zDu*vm<&SLZA;F20mK)#IsuHJAr&#eG9nQEB@VAT4M%+t6&35?u>^b_>U$B+o;d#iH zwWSmEQ#PG@JxMLRRXGW>_}hu(Xt=jMHqtAuYqo`<)2x@ZBOf`ES3qAJri^-osJ-$AaPreY%Ba;n7GR zsm%NoUTcnzv?a>AaV<@bR%1T?em-fO_R()ZDa!VDnLLvZ2_hnIN=}jy`1(89=T=##&Q??;tktW#=a>|p`+W>+mw`+2^YMAa zr)8g})Dw&e*yyT<0$stG0piI;v$0Q2Z2@CHku~PU^kL_h``i0LsA25Gvhf@^xCReQ zfi6KCYZ*y$H&)FqrMP$B3ZG?fS{GgqI?~$1eqSBMW4n9}*UfadOV8TdZSVK(6W1E~ zpz1U6wt~-_zaBvaY`hwPwJ(Ol8q<#O$?o69`(1^mX15kyJM*_ck05UFo-4k@wy$pF zQj`S^K90K*g%kces^5A#w^?e)WDk>-v=xaAcC zH6=r$DHTIEYN{Wvr#Ap%Y&~O%MR2ZIqc49v64Zu>yqT);n&@`^^r z&+MGDqM@xvLrM-eVpjD6~j`LKh+j7|A~MDPqEHgIh$Fw5M2&0e`qu^>7oq@Vx5&4@okE-sa74FVAw0xI)`Q~#<;ev!Hk3P<) zB*pS|@m}8iMrYh!XT9=vYZ4csNy&J>sE=L9Kti{w{u!-r>4n$(ZAR$Z)G)HZzPyO_ za2Id7P|L*B%g`kyXv5viln9(9iRU_dMa)x&G1i2Y-@fjpkO4+S%2|w4<>auLwa-Egp&^XA6`{LDR`{4`4 zH9oA3v!LL_+&C&AzufJ|oq1>1&nY+2A>=E#-~g77p#FZGpQlzm@e3S(nLMWv%3+tT z_tPWIQg-){W$usaYb_r|xjaBfxWIAp`GEPw)Sq0OnEkjgI@aGp(VsAx3qXt;>>J)c zHAeD|K*!M>e|_!IWT_u7jVLa_}b-TuJgZ@*Q=52n$Ae z`57tK^qhtZD!4!qnzk?xr0+J*DI=o%;8YG9*r^lo7Q@lV{)G@0*irG$T%f ztvtiWaGCcp{Xp@QeCC_3#cE5jIO3N?)?%K`zr42?gl>H`o$bQelgpHfTSBvB@w;e!Ic z^&etUbKwdJLL9mmoLmw_4QWvaQqYxLSu5CM)Yed6nI01O`qrGNy=uMR0KV@tocLp&`wxIG zr(>*#oBuqNQzxu9<-+UDcm*I9JqDS=F0?ktSW=l#Sbs(Y^e@x@wI3yy7N6hyUO=St z=RR00$D%*CVV{ohY@*R;WLZQh2HDNiyM?83ok@+Wz@?Nu`})o3`6cN5v|7(8e;r@| zf!BX$KVrUGVlj&pbfEB14Ud@CF*az-g5GTPtX&QpZPCShm7gI zZ*t@5E3}Sh{+BKfRGwMLk2uTy(ShsiGt8fH8F?H5m3P#G=@cLlCKiPl_%;xc$N8S(OVSL}bh7=Hs zA`1jFEWe}{w59#H>bKfo6^!uZH>P0Ba-%Cg4&wpII&6zE#`4*p>B-#Te&6TV?~m&i z^I@UmOc|eL=(J-7pwhJQFhy(F2pOL}y7)Xk{>PkimBkuOI1{K-YAe0iy)E2v`Rr5D zJGo5gF7zm4cnt5v84XQur)^d$+W*MXOZ0z^;D@SX_v)Qjy!VlwA z#C?6&-mM+F6;G3{Ll$KN*e8YH5xa4_qAKWap>qXa%39?`z3`F`KO9kXFO_#w=#HF{ z@UmQ!`HJA}d&WI4pm~6z4_F1X&8j)WO%)RWn1p&_IlQ{8%9`-%mtI$A|IPvW5oIhM zsRlc0K#On9SNu(?W0Yft4W#nc+|{}@$2-*Mmft!k-<5_Y_we?R}%~{Jqn6>JP(LH?-SVE z*j9PbmH!7IhVejfz9omdVfM`|dFYZdTz%h$rLRXK`e81ya}Y9KSlaZ!C}>5JC@!ii)c5X`!t-N&H)L5 z3j$bP2&lvM^+V=S?L$B@^WA%WW(}5g%ndo)H zViLx5_d$0*^@E!4U8|hIs3nIVFy3|lSeI2uV5429Q+kj6|6K!Y!+H&zCS7E_g?Ux&xmJyOau6Tn=f^nEWD(t@5yKY?BQ~_ z+3d5~?^ZHGp_!+~sf5CQY)6)9lb=EjvH=5$H~K(~fw&qdG+qP;K-X=&Z}~!=m3y+V zZ*R4veE`zp^LqXn+)=*3fA|HUQRn5KkCT@HfHmZnfnS-YGR$sAxK-#0sb~*;d#7*uxxwHc=N8?RY<64uZ!yB3f0plPnuhS#MwI}t(BjZUCriMueb6m(vsXg{`To8K(`c*wT zCQ(MP{HY_T2Ti3`!8a4{VUZ>AO*%e3;Y6)3-%2kc!&#f&YiYtdY%BMg&`4H$+te22KwI2u`TxW#Kp3u{U+yMH1Kuf^ynybBVA!_#L zpOC!cKS)MWN2zDGdnEp;{eeYoe3;BZ67qn9!Wxv`sgf#chP~Ad-lx^uxG%cp0-<&F zz{5p+qiKj2?ymX#UZ&H2UhvQ> z{(Q=ZylI7;d058He5gG{e~9Jw!4WA~+!o)dv9}!Ncm~5e0bgoL?gqan`>}d=LNqEf zyMdR`Wp{8O#zuUwm#f4N7P*Eeeh*0%W%ShfhZs%5Pyk1DYD+-=?J4fL_ZbTEtSP^P z&hk~)X(too;>SB>PNJNYmkwnwT#{+5g!*#HKb(;ZYY9sPXzBcixq*d|Pg4ofAj?pku|=EywM~1A&@j?zkDCU4D*<^C z&H+rN_LBj^q4v{Tdqd0hPN)IUap z<4kT*4BGYi%eIge4HxkJ^wXci*AO@o;>H{NU7Ccyg~zU4W8KkAAvd&iSZ~HL)ROi$ z9!PkL!$BZ>u^q;1DfrC4KUa8MQGzr<50Y0(Z+M3ZFA}i!ETA&o$r`_5iF}|BVd2i- zPD>KCg`XNWWxOx)7pPo|pDpgE|1tYY-0-wi0sVwNIhng6?;CGpy^%Q|vwi862+uxnEDl+SOmQ(>ME`pcfl?dV2vg?lUjnOPtL`!NIT~ z)zOc(9oFAUC{9;@T%61ccOEylzNF^y&(|Y&?X$NaGewDiE%E!$?xsZOp;j?srgy++ zqVJ#6`G=UD44vTmJ7``dRxb{Y5Q0CVcjVoZ6AH7~FP)lWooNb=%-V)Mfqi|6Sc*+9 z;o`t0$(JIYfAxGK60C7Lef2{uhK-Wk|Jv2m8(Fv6MV<)oE${P`7j%BBG+qBZ(z~K& z_XOXNMfZ0KyOT7qI}Q=8q?#Fv0tc9o#A4nsNemQpo1|y&iXlmSt^PIJez?i;7g9t1 z%CMVkXs^~g+?$()nuiu%dnRIvm1&DeiuBSK{9@x_V}-Z)w*4h>AUtA1pI`h#R{(21 zZ}s!LrtYj|xc;Sm@o?ooSzrX9Md#Wm3EJ2^QM?t~PgR`ZtTn%l^jy3j&e=R1jq`%E z4`8()id6S&|65HQBm|0#MixM0KS%V`_qX>3lRjh&mR`OpFETbM`aAKc0q<+Ueaz)q z`~x%$b$x|bNrj6xbx@cJ`A;>1rJrEJ!MMpt@!6f2(28Momz3*Iw;r+mD~=NfbEDPK z^X<~ak5}-#Scoo!{Jv2a^K04iAE6FR?F>Euy;kfrtjZfK5ehMfNsOwqNJ$94NQFJ<#;L84WIC z$sw) zea3DOtR++&LGpU2yhP3tUG^$t=@vd0nuCmOh;i8#iPJmH7%1!8M8F`YP?$U#B6CiVpdP zC00T+4|BuYB~(n^2VOlcgwadr^Gss@iR)y{J||C?JI!ogwB=NnKS(X0@Ru+JG;A>R?WJ`pSHMZV36BY!Gl2yOFjAi zOVAW|SmY0Wd`;h`TrlJuHCicA5Pj_WDap#5X4+xu z%V*TpujFr#a`Ttyseq0-SN6UD zJ2u*o%O{xrpbFktnu@bwfgB<>%PsFc+)etl^gwQ3sQT{qY`Z+py&LEEH;Mdr;Qi^- zZzx)M8xkhnAE6L3TUum$bG+GT7kAbw26PxZe%xoO#)KdMP15L0R_FjD+-Bd3Fn-sM z`l;*#N=O4k(trGi7Cr0dcDTJiWyE({*qqo&biuBckvfoG7gJbZ7WBzn=sXpX+pk&) zVWGNTWRKW&l_&dzLj{}?n1}B`Md>hDR38JiS4r5q>PP!v|Jinb>nAM3edD7DkDd}> zH;Z#1pKw#a%uTulu$RS0+IX@>ie9D5afiOa^O3!UCOYsrY1yixXBNPdlGBHX*ml^y z%nKdq#z6(bQ>q#)pM}%AkG!3VCAIE*AE7qhK2P6{zpJzxkkRn&NGwTuI7wN@e4yX5 zSL_8Z3CrX8l1zUtWy4@=L6-}!{N2zJ5MH}&gam2(sRoSg+@Ja)qx-XvVxYR+$r1`7 z{lslBPvf(whxKzYUb8nEk8IUn_slUK-F=@Ch4E+wj5$9Rz-i!iju)QqA=Fs_Xy%k? z71=`ai{_vFcHc7%A}2au4RN2>XPFiKpRwmd{b3SYO$HqOK`MwufuKEu<{ zX$_^wHeMIT~~`M^z**Fjon&AmQ{Oo*WCA+KS}%A6=?Ntchf6m`0WD^98BY1 zyeMcWoFz|%FW;F*K98Zpq7*5_d%S^1c352ktvkh;fB0FQXiNk>Wcfw6zp6fJ^|=?{ z-1kGk5+6|K_xY{gEA*y&W{@1ehLqjMYQ0tH(0{xd{?FHW|IRJf>oNqFGA&? zN7OezrYWxt-G)MI`z3Lpp1T)|q)Upl#}98c5nk~bg5R=*>u{kImpkXAyiQT(L7d@# z4NL8ACcBPyp~D4+?TpBnj6P=4rNR4&ZU8E`fb?1d_btA=f)agRXkw`hA@TOw{_3$9 zJ!etpUNbJ^BjStcdq?XNb^<`PJ?Npz8=R+CSXhVNi+jFxv`c(g0>kfkwZog?eo%sc z9E0FbE62jU?>3Mq#2;}(APW}8MwGzIvMj{{beSXF{VM+9J=?ht745CAw?_I_*Fsc# z7)Qjeq-YvAH1F}8txG5RANlnKfaDF8gX(EP@He6u2s6GHdNSSRWIvW`(QH<*1`h+G zvs2_nx9#$%-e0yu^3NIUph2_35p= zO?WfGR0)0{hY6T|uAI3@Of(3SpN~K@&38lYtM505mTf0|)9V5bwtfk`{N>U8b4&)# ze>m)gX)LsVvkXjBQ+d47&lQ+8$-P+B-=$0+m{I-N0=V?cqp#@zy8QKYgG+SU(mX%` z@EuW7^zMUm)mI&&ncE=*fzHvBA z_L0-FIb%}b6^8uX_So0dLfg#fd#le_hK&ac?~vu6R!zhZ9`Pz3hFL}W6UOpyg8g-^ zwgewO;n8}}6^fX@w)1CHZa#oqbr0+8@5sBhck!zk=H-zS-~$M?Kd!iS@!1h7P$Sl9 zaAJ;l`vY7PlP1^cW-R+m*=<*dZuLE2`_Orv=S0x7_m8S4s@)LRcnmBgR)0@iJ2MQW znP8|g=5+~OW@5I-d?S>~2|Qug-c|j*^s)vPhSkfiv;WRCp{nX|xu>8Y<4^YFKF+s? zhbFaEkIefczQHM~+QzeVKehu!GS8Ddh2Jl~XFT?OSIQTa$(K~+|MU?i6$+;i09hnt zSu=Kr4v=<%F~WV@Q7W#x~gcWGs-ev7oETmPxmL_P9z70o- z2Y63F#BOYT^QsLc#;!Se4g%*%zN~ik*QuhECY->NfT>;U{%qqE!Hl3K(6f#QT04PA2r+avC$yQGHmy;9(f7w%Cdje@PKh)DQl#D*U@Tbwey{L|37z1f=|2&18 zOS%whc>bGXWp@{ONF$jwQS-N^CGOdAU9Jo`z!LF_-3Tx@Fvm8S9I=S?yE!KFm+ifY z%FD*fUThmXq+F5~-OKp4X2M(}dABvaonZ5NDLUdu7Q1`2krEA*eY%H)J!5p&?~XP_%iKiDq-ps7#US?D-ecEa8qGzW>air+l-+!a72N3e!m1U!KBn zfN?oIW=0f9rU%4Q>F3a?M}YwKu^oY8NWPnG(P7v_tr^tlvFGL*zA4RbPVQ?fABL5@ z+&-wyttfd&N^b0=CL}lTb2#03!T2VqqR~^*4xzTk>3zC6_*zmIYsXWLc7f=VR!*H^=cUelV03t0$>MS&1M%4~S9kuFRwXYH<;vp=A% z^N*NvYuQWOJiO&51pNkbnRRVsHx`HoeQGkv!H-Pzbd5!hl>E3~L;J~gES|-u2V$+y zxsIlbXEzR%cMJ~<=PL0rH{8o}>6;r7av{XR7vR5*cNbm4mPa<_&m4|o$;Z3+uy!#U z3THyXJL_2z7P{Hy2+%9m&r&a=X$vsG9@tA$bssuK-ac%tU3tF_P97F3uY(17Hpr*_ znxnNi$gLFYC8xTO(moE|jT4efZR$Y0U`GUQW>Iqb;EOa-a4H_8ch^7fH**9j**cu3 zJ>Xj}+pr1o6{x{`9d&r-Vu`Q`XgnrErlVW6WxPoz`}PTRyh+`W!ge?)B=@^w zfh`B*cRdZQ9bI&O{5@kB@2P~e2jb1G=C%(mIV_02ycXvf6lHA# zi5zimsd*I4aS+5QzVdEG-2_K_?}H)#LsVF3IfLE-{0+0|H@P?kUMb`EJUP;nrYh>H z*BbIn@L4oAwAjOUsrCGQXC?@Q-VdU1F?P4n~h>yJ!!m=1AWZ$ZD?{zy&!PF`BjC_4QIjb(!iC=Rcn;4$){rcw~xrkuDUwoJ5q|a`jY+FYUycQaU7+Dtre9e07=Q;?f%3Pt`t;lA5<9!yfzm zi`hETq_X@@3L7)Ai=^sLW`4Y{x@R7XG?<1SF3s(sMzIeE0aKww?qd=(U*pM5keFcQ zRy#{2dE|J$2~+gd-Fma^)}E5{yS(~sSrzN)vt5(v=$`ofQWdmsurBlV$>o$CfM(zJ zS{hgxwH?1 z7s5R{)RRN^jp9#H2yAlVWB~o?x2Iihzlb3(Y3hV=FR=i?5*i@h3~ozAL(zb8E6m|K5FPnJ zy>F9H8R9ki`&`-8uFwMqmB#3pu2JOE%IS9?cHXqa>dClSq2=#yWk4Ulj~}f1`5}!B)WE4dxz#!j)GphgF8mjWN!`sK*GkzM zYc#A7&PM^RsuYxms01$IR-0l0`v(GnMm~jkBoX(hdA{ejr9+5;nG6nRY!-B0zTm_g(A9g z^V527uUEKd%Fq*Y&8dlO;gF*HwES3JDE}@G@8C}6eOt=pHU3s!zkO$rVyxnPa{okJ z4zarS#M!yX z!p?1%s`8jqS13db^C>EE$s=aO)A_A_9m6gs_sL_+b7UM&(*ZF*NlfSf#gm=XUY008 zHyeM16>v29dt?~F_*P4@s)XB$tlUhC;ETiOcTaz@n4Bu|*3Lc|KQnJ z`a)}bfEezPH^qfd!ya9&eSEyQ&*l5dAc9uBfZxM`<#c-d<_V`l5@^TZgxM}Yxd@R1 zS=0BLQRlPHNf0H+6G?P?My*!-`@Nt2AN|5*&)V^DV%X%qMfqcsWNab*b`vu}8I>^J zFf`8>N8Y$k2VuIGB|Ske&^#y{*Zp)3j>&|aMWDbo8Tty1&x4?b~6T>hhtuP z+H&inz4`?eC(UaHq5Qf$a|rTV{AgfGx@^|dH;?K*HeQfuzTX_4 zFufP6D&+g6zAgY&eG<<6@b*tV$8N%qSZPS#(>mw9#1IU6wWnKgPu^IMHmXP)-MtHy zf&sqx_u4x78db{W65r8RTTncFB>Mi}z6tTOkz85MDRmV_b=#lt+3IaY_l zr^#Cd+*R2h`h!*{1PdkruWv*~_dhU&Vs-xSd`D zD0Vr|N$L!6pr$kMn4!QMvt)Y|@{m(xC~FQ8Cto}EiNKcU?}0o!Vx?DOm@o6L!j_nZ zmAThKKKf=~vz;Un5;xhR%xA$1`LyF2(R;Fwx5P@GRMC>#lKots1lqxY$re$YlJ4x8 zgvb5wNOf^6HQO=Jiyb4jqL9+|O0t=`k}7(WKF126)5k%4+=2;O%|=X8N}0?eK7t>o z-U@Q~yC7kk>Zz|t-)9t9*T$FSC2eBzb7SLYy(?L)y?qSPe$?T#Xos^0JDgX*uqQ`; zT^(;W`D&Rb&S?YQ!n#nej=J}Bt^xV6iUH1hXOejhJRg(sUjuf0h@?MO5E);;m85H+ z2gf!eNIx%BOsJ`OGP8edH`{2|6{APE*Tem6f%~dtH-6(4EeY3P?FT5NaM+w9lv@Rq zylAWU{F@S;{HD5>LpnwTU@H=a!O4jF7xXE~$p1K&|VT(;emo z)7mbxZib}aOI{IZ3eCXqWr;d^_3ztC*yr>Hg5mBR5)CKMu5XzVsQ;%2Y8dWKt{ z>!vl5dxf`x5V%+7F-dGmSQN;%7UP3uj=jdi+h_lCE*?<}ZgqP&FVB-YEJe6Ik_MtV z^LiJlo$f68)GP4jg_!WJ?a$6uoBaCKW9~)x;8LHOXhXLo94KC!?rFD}zZ@2!BAiX$ z)wOyT!RhJ-$!34N?zL*G6?R6!V@>k%uo%lFrv7P+7HKdP6fOO5jkDb3=U*%5he2=l z3!@j_&WCQ#k-vQR-}?)X?FNTfJ{gg&(I32Tk4tCtrUX?y2$)Br?nds%nK)a+2xn z7^kdup1(hR&5B!wRhHxo{W8ptyTM1_qGRjm6(T`DY@v=)SJw7V)=D}T)~F^~T9M}J>qqHu;S8*j486^0Rv@$`j3Sie2s>fd;Fo@jir2u3P`mG69pb)ahLp%dCUka8nyL`BaEV za{EZTlMJLN#iq88Z*YGCqj`Jo3BT!Vlr|6ONENvIGz(@KPNP&Hx9#k+a3vpL*4pQL z@c?RmeLgH~%MUnw66|>S6Ep$20YApz z-dk{&w9l9TkJWsK+lhshG&Z}*hf_5t=eHE+13p&cuEYmPCCw>yqJaj#dY^3tDbb<-P!jj>-#R#!?ce5 zVUzLzR$A00dbvT~186DZ2)WZB}{f{M5pK0|cPWk%K3@#1ZJQ2YC(B>7mi z30Ap=_I{bp*ckK&HJN7S~^ zb?$L=RLGH^xc!o*VCFp_r}fP@xEhSf!(}eWA7j_{Av==?=$w+LUj^bpZ|7Q8clU{kJEQyQqT#+S3Fb#Bq<_0qdP?o1p^cJ%N+GXotap86Jx1Bp`6?7LW6@a5_a%XBn}0(HL40;Q7r2#l-p<+(xF2~8x6@OPoh$M5D$jTX z7`$PKnWIhK&WY4`d+`(Yuwdzlq>V*`S3brK-4)2HcGtNWnT1+tNcX1bO{;x5QALST zd+TPZttJFbUq>LXv?Y50p52oXL*Z*52R(3~qzG{>n1S_m(gp}n;QC?B_ENER6N!*F>kC6ziX0KNAhRb*%6&4@M9lghhw!*yV}o4gF0JY zG8N$F=234=E)1&=Y;@uYt%%`Ug9agZxlC31uR|Jes_DRHO0Xp9?%EI5hUy<5;;cpO zvelC?3T{EZ{WrtTz-Fd}D4CPkfxSECUOTDXw4s0~5!5F)ANi&%S2n`Yl7@Zhg8m)K z^M3R4bWf#Q?$&j+7cgf{)$Y@Ux5L1GW$Ai?f&FsSh!Jdz{rDJK^fY(u%P$!*Ae zVr!z)wlHpLj(gy1;YeoTwx1YC9lJb1H3T%h6H>cghuaBN*VPo4E7DhSv!JI-wtntz zp((`sL7qM;+3C`H*as4GCdYUmiF*o@gyg1NM(&vUeP8xaq4E+B%%jPpvjS9?!aIB$ ziW|U$fh=PGH~}7_@iC#ln82{Qo~8O`Ma*Gvoc>Cduf+m*=B8N^7v{r0CXIt{_)O(L z_YMR}Or!V|sY{|K7A2hPE`zmT8%_y;b>Qx5h2>(p%FSswzH*2Gjo*) z!<0fbVxRdPiFT9*KS6R{>RJlXLq- zia#lI#$j)_?OP6!)Q9hVbe^%WLf6KVUZ1y^F1d*o&|e+vp+^sp>_q`aIObr4`lEqe zUP-eH)#fBD}xy+mQEM{usV<4X#Ol=laqDP zhd)YaI5DehPw}LRcYV*CTY|MORlc3ou<1T#PL#Q!K;xAAy(%7!i~l?C<*F|98|u=) z{3QSJ{fT!!cT@ym1`k>8H}WWiI#RSeZq*RTuJMVDZcb;Ixf9Ms-78(zEr!_Oyh3x+ zT+*Ye6AID9au6CSb)7rX(feeeDwfz7MSkF>Yw8Z=H(@_o0J5>SWEPJgRG%#2!h&aa zBK9cH2-C#)?13dg%#8j1M6X8NMy3j1ZZnOAYJ1LR9I7APVc3Eb2}~>Z8!d;HpclUI zy2xA-p8DvJ<+7H?=#cOCly^%D%^Kt7XZ@IvEomre7%)OC^@0qTg{-E z=tPXumYslDq6l<8frInuW3Ojr?{h)z=1}dcHQ#Huc=^n8zG6;JB=(_i30e zjIX`GmxNQ6_ozNU*}vQavJ5VO4z106g}?xct$U#d`

7N*bBPlA*SkDJn{3VcJo6)f%STu_+^Ccwq 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

2_ zb9la7b)>Xjun4fqW4-;}@TD2oICeB=;k|txKQAB*N>4a~T{6gH-b70*Ob;)E4tbm} zHraR%BkWuM;Bv#Yz)GYSKp8ZBV!!i;i;B+p200#6h}={8u&*-dV^Y9r?HUX$Hni^I zT|ws@d~MmE%j+btuCTj0fK^jdM+ZG5Vs(zfkGf9~&|dL$#O`}NjUzn?P-4{L@RPq8 zBf7$JB7kSkXmm&Jyhm@J6}Oo`@_tF{_*r~j&T`9zqG)(aOpWr^j8ksOitbsV}fUQdh0fjN=vUQAxFJRYNNl`jV~X^#lkQ&fUFt zXSDOhaJqd|+_=OcFoxKQyZx@O>*!m)x?Zi95x763(rTpI7|7?kAY)T@#%ylwTMxK) z-4o9)HWlUpHI;&!fZO%3^@E%rnox_9{mxd8K3m3DN!wg4Xun-uTpvq&R1YXJ;TT8j z2pt5pY)N7}ZA)pyE`${OdN^!{whXqa{Wxcl1hI2X4jKdw6^Ej8`!LVtq4D6^Kwact zinbdmUD@c`-k53NM4GzaY8+nTuo+D+Sol>7J*e{N^y#dIAm4SI~bN!hj+ z`UOCwt0+0fgSl;Gk0|!ME~{aQ^V4cP%A&}xd3N@cX61airgJ&!<6u(gz^DTTQmGY< zwS72PGM@Y1ed`W@jeL0VdZ2Il?`rLrJTPAu-n-~RW0S4iJoQlZ$uiZJ?U_TjgqjVW zWNVkbV#z+bp!(xm?@@tQqs`8LElp8eDwgTqJf+~gYiQ__~Y`U6pfSRTKAGuu>%;uiIR)0=X*er#=hWWd!@ z{2qI_rz3r)xN8660BG-8?&!YPQ!YY+3p9NAYnLkh6EWfmSJ1)SN5&vmk$Ft=nfvP^ zcMi6Ig<8w9B33h~UHCY&^~qRe=qZhvD!QzM(9Y|pGoI@nybohLi}i^IYl1L7GOf5F z@|5V`1+e;EnS_5eI?;q%?>?rdu&`j32|jNN=bn>nfXR3wr!Bp`*DD|^*6|LJvwgp1 zN*5pSf*;$?Pg^P>jOY939{`7e`|Qh1u|=itc!skdH)Bos41kH&wkdU>${mpFiUvo?@s-Z5Rq2=3>2B{z{Ers*__XozV>{;TR2bI!^XJJM1Io+if(ejoW9jGw%yF zUv8g0k_a$zQ)A!c;7`HOWH*lZ-I6YknOYu`TWkLJ@N+HG zdJUU~Nl8zLR}w$yeo;KnAu5nIj-OL;f^15eLg&eBvUgxk z8c&(fE~R8pMsLfw?*RoJr^Sn?z)w=vwf9~vO+9cjGZ@R)eaqI;3Ij$8<)frB*7D=3 zqSd_PeuXJcvTo#WtbDAiXVhYXp#S++ZdM*-)*J1+3P=q)4dykqvB&Au(O?yRB-?h1L!bNe>r z6gQDgBHk9YjD&iow;z87JXeQwFfG!~K5g3KTA`Fa@2d(a)D3A|JE$K`ffp3C(#gNq zFJIK{+cW!YtCR4t#{UyXq}nyEb;@XvQ^0YC#Rz`2fE9~9#=Z&lrX3}fbYZG0!Sa`&1P6c=*tZ;8>Ak1f!tnI z0ryVwhZZv?()qh`2mL$llg978J%zhcyK7aRZy)@!!+)&594@$D_h_U~ z*wo$oY~*ht>T)S2WOB= zccbV}MshKSt})^|ew!-I^e=qB0cW6pZTPZ@6U@^W7^340IDZ>ju*>5jDafgc>XXqa!^|T1Wj{-AwU`$oNu;XMef^YYfK>61ENAN# zip!*zdahwLCGBbd%-b2HE9GcDzv!ea9=H5NGK%C2j}ZXYcC0Xa>%5>ZP&q_k;q+_nEF893N2ciWSFMq|00Ni0GW%Lapx{SDc zl$^KEp^IT(GH#+*&=EYC-xV4b`=@2b1!i5BhnL-xj1STA0GRWP^XG;WKifb?#0XFI%XCG)AB$>k zc7kCDuMb7^w4;8W7fR-fwm@5N{UBU``h=jq8$q(}>-P$2)UuF;#YqQSe2jkoyP8di zW=h*tKdI1zdIkgIB77a+`f!7ccCA8z_!`%DtB5`MO3vrZ!0Z4cz9XG0sWUCtA78*^ zU_2ECHJK_5(WbUZa)oWMf5^us)tP4rPb?^JYb;W{YYgCkK%qT8FXrIAZ{`qPq(lWONBye)_)e)giBoi{9gFM@=<*>s zmCxtHl>kEv11$<`W$K-`_GUk~BGy_M7D)V}1C7PppK}>GcSC+*Aj8Xx=v+{*k4Ys zRTMw2>+h;_xV*3LGcxR=b34A#HzE;E!-S7tTenU*y(A@cUlL<$1m#-N3+a9MjiO^O zN8c5TW~zgq)9)`sL*nBXcJs6(Y_%U6cv8pN<=@%_l%w&kf7@6mc(*dYWzVkNdgB)Z zXDRIwM)!Ja3|d1?3P1Q#zggXhKeNViO3Oy7-9Oej>PI2h)B~w%L z@MAdcZ*OGpDO(YIlW9lMyzS=~1$aDE16J`YWypr^zv}k6J{od6h-!Q$p??Jw;TFN- z;u|#Q#C*|rCRk(xQENyg^HOW2+F;D$5FVrM$C4CH=FDl?HZm1b@R*IcfwZ&%6chUNRXSbFbn=5F)CDsU2Sx%p_4kEnX{KNNz*V_^Za6{BsN zge(2K`jTmP3Td4uk9R5&jtZ_A8+0q4`gQiuLtkrvwuEM}`)Zz4_;u8NE82feps@(X z1oO#TH(O%acoOPk-^9W&KKCe==b*3`K5ti<;TaY5%J8gIO>vsHKltJ+Q7c6FFcGEt9y@tF z`LR2li5K7d2Je)S3&ED3*G$}l(6TE7L|8vlJj0f{$;cJp&^@3F*ST3seq+z?XMUVv z2Jm9vm4==7Cb+kX+HP<7Juk)?0_9_WQXP*!-qPcjRe6N6xVi9GtGr;@3Qx@ZlJsKc z!NK%>?5BJ9l8Svr`$Bg%TY{}ho>z)5%Ct&o)vqHetF_aHbx^F(fY+`J&w$WtFAWpZ zF6&u0mki5vqn^rMvxOPmersGmEpz-N7Ic@)>Mx&zZ9`YKoVWnFJCqWq4EeyPt<>kx z(SG+vM(}>=X#11RKaX;S_aOs$pHKJH4;P&8=IpvZ^Sifnr#vBnrVe*o6VfTIwnoD7 zF7sU&_4K|DK3*Z6YKGC?BQbYfuU~>c!@}NJ-?#Df}rJ0Trrt)E?GuCpX#6|5v1^Ie~ zC)7%l3zP_F>*g?DSmZ%^H>5EF-6a1Qm&VFLV1>u$?ouxzQ3uI$w{9HlpiXq(Igz$a z)bfF}@G+`0#u^AfPPM%y;e$?9Dvh^0GPtLJIO*~D`|v7)EkF;O{ePhvYuGV#6t=yW zSPO#ueTYl%$w)pNg7yUN=Jv{)soH1NKSV46A^^G4EZlDw<2vsX@=dGQl-R#+)Rqlp z16%keQ|LCaxzPl58Rf3&p&T=FL6sM~@hDx}!$-69MW{Z+7~Ll+Yh|nhf#m{rr!Bhm zUD2Cc?vYhHvTJVRLl6`B{EOBQ!f2ADr|Hay-U1Flh7qL*urIS(0Txq*J~2 zus-YjWRMxTA3}DIRNwy20AfQyG~Yc;5+2emFR6><-H=j(ul0d~N!wB8>D#UTQ(PVZ zV%9uF=Kvgi45dbWoIl_vSf(|0d#V73^GLdQEbfTIkABY6Xxcz+4RVV5DInz3AXvW% z1LAom0;V$nFK(O8HJl^V?;t;%m0C9bkY^3@^Wt;zvT~Pz0t*st3Oz1odw2*HY6URz z`Ld<+3W6olKrgYveR|rWCnc1lW+J*LAx;|jL@r5CD#2Iliwx#p zy8qi}E796anae*v_}Y$eEDnq{+VO#Gh%A`a!$L-iOE_hq2z>D3;5QyPz4)yhkh%%C z(wJuCQk%E-x>xBf5>uHrTde58;iscLH;pegBkqIG`@J0L(0Lb|m_NUhCVuy8mQ^fS z7>}+$3~_L>o%Il`>i6LMMNIf4Nh+_Gc+L=6CJh37 z+}J}lfY}yljK6uT`RO<$13_3&^dkECEnDp~0UpVn`|-zo_1AWWb>_WYhn4w00;yh3 zU~x*u>3CB900?3!8ZEKMT>LM9k-|D1rpC-n z7`6^{NjUsDTLQD)sIjVFo72_Ks|ZX}Tww}Y0Cu^$_Jeq#Z^r#@XKDo6Uv=2LV&xe!O|S ziXPuzn@SR4T_VC1p>SR$?C;7y+B+;Cw$iT(=|~Pj;p&ZYziB5*Lo21fwS@4-2248~ zM%VrlPgKs{5fz>zxKcO$xfBfK|8g)xWyjDy6tu%+mpr3u4gU=q{#@3h={axpe?O2r z_`^PhJ*4mU^Dgn#loh@9Gndu$>gGVOs=aU9a{kn-d(VC+RI%Ta{*e^)for|aT z*8wWtl7fFgxy+0G2U{ya@1t({TZT3*WTn?FqM7MlN9b#ANUOV^u{JZCmZ$OV>Bhps zUC)+xwk{UtCT2Ykq{Dq<*1kM^wS%W-3%-&+pE2#RGtUjO`axT^Q#?CQVTkM)T)mlv z(u3F5b@rPJQ8M;Ds89FVI_B7jRPf$K7wQ9MjomSg{NH6c7UJid0b+=r%$6TLVPAv* zW|^OoC9{mThzEWq3LYL1{cfiuiX)OuY`lM{efGuw9AIXC-*^9drbwr}(<={o2_7$& zXG^Ll4*LnSCqrDE>sv>QL(a0-Q(EVe%tJ$+lX3(=y{d|V5h749qx7B;bsu>FvJp7U z_Z-?NE_nk61}pb&B!7_Dal3(vUg)8j{bzhRHY{%)*Gvq_lQBlYe(ClzXielNqM-fk zfnlQSp_h;!+;T2Jt>govk*($vo;#nD@J1J0tUB-{$d=;;J z!3sPsICu{ok-q%%86WnZ08-hv2B=ckk6zC6z*6_^bt`Poc5>nVIT%xw=}>#ZY#Cfg zb+MHO`ThNa#XjQq-|hXxo+RZ<$!h!aVMW6eOPSE@^DK(4(yzSXqj9$bFnjGEM2S?7 zu%Qcq6w#xZjY6TSHt!sE=mKw|=Ih{^h-`7tg|O6UBi+t%`7#!pp1kBstM^Q+wt`&O!eZv~lheG8osEWD{G8#sOo zg3AizQc*_-7S0cnZ&#!aIAnTf_A$y__T>B;#YWYP#eMsInNzU|G}FLbAW{lKL8Vjmx+Dbvgg1UCzE<1{Vyt88oW+ z;r4rn9j3EFuznHBqTJ-#bQ9hJA~*-mBj9sQ-j`b8l%o*=gynPbaGMQ+ zKuk*Zkw-rnew!QlDYj2MTIfR$_X^S(EV^_Z@olHpdcFZyBlQb#2H$p>FeR`;e~}}@ zi53Aal;{@kE{6yFKh~%gLa%XqZ@BGaG3AikGrOM(+c_7Jq!>T78|9)xMmQ*tO`x&$rj zwx5|lB4PS>M>sO;!w9aqP`kK<)u5eJ0fHJ}t9V#rET#A4NJ$s?_-2Uc`u#ZzgZxK! z!{tUD0mVH6eMNZkj}fkW+JyMS*BA5y6^uCGCEcx(+KH7xdvmz$SWomQW#As}{g;-^ zOO+T?LGDqg{JV48Crn%TrTHY*3w{ubdwrfi4ILZStlj7K^9AJZ1oDS}B-X)B)Q%ox zc17pG+?q9V4vw?|2XAEg zAmV&>r4RFj`yBn2wy)tVL*PSyhet24iFPa|c@4^)`ute_E@SO;8B4wL;I5qI&Af+@ zkmglt5}fh~dV&FU-8r3Kr-KF|-5VS8{PIYrYkNWVd`J#z!gWa|6ACvbt8CqKv3K!K z?9vH(dpdszZ`GvP#eH>g-$DA_mzO>aeEizcPT_Tw)x~sPm$Ple8u>zRRr%T5#zD2H zF{C6_7v>VxkJXo=_lYPH0(1h;gs!u-IQ<&IL1|&UqT`ppi+PeaG=6zdyX|Elc0G%# zAJw6tW~Rib)j!_b3%uF$RY{?!;^@u>i`2!n@aF2P9;Jx%cMuNIU8|d1JmHymA#pAD ztA3fiZ?P+OA@`g2>4-9O9U~kf>lLxRY7H5Y2QX&L(*m51=c^&hg=GR4g;7x}IY2GI zRX_b0m&%vP^jEwQ8{(cAM$adjg z3yg>X4dCzOfYWmRW9huMR8^uV`b*^SC@O-0A}Hw%1SBare*InaxnuM>9aKc9+O=zk zx%P4vd3P=TD&8T;<&CdTz1+iKDbMT~_d{OaU8<|^^Ey6*9j&xN^=_!3ilL{0o8LZ{ z&l4nf;&yVUhQG4tYY5xvKz2J*LRw8o30DdmJYTVC!CFXO#X4Ic66>`=q=qUPzGS9H zK9;khkfSMMho5g;`MyP`dv-X|;l#D-!!kYQm+!>2-TjFcc=7>PymkMgQ&9SQsmvaDwwup zVsk-B(D9U>_o$wn5nWV{f6@Api28DSGTK&_vn7eb@~Za;M%8VeE|8Mbi6-(wmn?AYs5NL{dr&)sGOPm4n588kO`SAu8vr~c zADM@veg}qu%l_G67Pj*9dQ^A;!((5LYm+@CcHd4+n}>GO&!Jy37l=4Gqx@YgOrOi0 zNU5BXtemdCU~b49YH&U&yW&Un#w=pu(+qxI%?)a3Jc*$3r>=&SHqhO6fTFsg#hdx& ztLC_PtVM95FpeK^`z{F@-P?Fvd~v*zcGjkQpcv35U2{3-cL+3bn4{CvwKaqhjSk&_1c(0~PHn<Mc;!Yp4xVaY*6dIC_!o7??N%_dvD)zEZNqhY3M69l^{Wq z7%fX5^?noLO5NJ;SfCOaizDigsUx$_#ajmS;zwF2|8>6Y2Nd8sRTNe!0DwH-&+ukJ z)c1tj)h#r-`(&PdP0bAS0E_s5nDp2E_L4=AWExdsAxRbT5q+>V_ooG{7(baX`0zDP zo!?ymsBwC{ksK2`Ff-BtFtYS+T6w`mOxR~f*=CFbA~L7w>HE1qVv=~)9|Hv)J}2(- z%?b*#%z5)XR^7x;En#YVIvmGx9*Ex1I$+}XWoj;5`D*`katq~AuV2Sfivx2u2i1Rx z8fY2Zm!zJPe7s8P>S`M)J!Poj5MQ6s1jH!7)_;AM^!?`cQ5ZT1(#i0@QxUS1mscjuYJxUG-x;qm_}X(4J2C>`PYfC9`0ghSx;U%( zBkgm!UkNh);(gGSGqlW&z4?pW#5<1K@k?^^ArdmJnu?EX?n>r& zcE73e3^MkqKZ~#@k_?ips^9`iDaxm`U%rQDp1?Xb6Dl=XCQ#zq@o$}_U7JzIHh!e{ zqTX8(#N^0UMLIrT_YIAv-e+oR5?V~8Q+?Ru6uCHNANl3hug0o4WAK$Z!`nS-?Yu0Z zxNt?)Cx&iQZ=E_l9t9Mn_i4=J(;eQXJeMRSGXb^~c@+WT6aIAe#PoS9^b=KZNg#Ez z&W;`O`TTvl0zE7Z-E=DlgCh6mveSYlrtNo#>R7bjcJZW#Ff@*9K9u8imD_M+CVxry5L)p}#`p#ch z*9vui{1t?acX$lfvqexs-(AVa_p+eIkci@e0y_F zvu`}6jP!!#h?Hvp$2mX=y93F?`Zzha$cFwjN}hB?NeXb)YP*hE@PEzU=dXMN%$&vh zRKibTFa-5G7i^&K)>~6o@`dX?Sc)e(9=%I}p5VoEjg%m@&nn!!w-#sK9paM^Z9$zQ zZRk<{pq1P64EURXuB)CDxgOOj z+-dxl!^M!YYtt>a8&hK64nn7zn%*v!%`VFjxdZeF)=p}}-NX3op>=!teoz)8 zyU?Op&JZEP-#RfCUmv9J_xlP~-~Qz1V-qrQ=x@87P=YjRztl2r?2kSLA!a5qzII1{ zr)%!!oni_AXczpn%EX@^cs|4MfkAQWXt->^`$}Fz7SN79ev$*%@FU$rJo$YAAu#w> z-c(dl$e9a6-S6Jsm?a&4YS#KKb0>^L^4FS|pqw^fr_R^;jLop*W>?`r-LB&wnZYa? z`PgSRZjQvrC(B`vg90GNa5(90bdp@2>7AVRzr*zc9OSM2wYxnuACH&7Ly2uKh~2+f z+u_S+0^Mp%A%&M4mK|=gkE7bh0LT+thCT(Z&?0b6j(bgKPk6;iQ z;eIt<0HC+xx6)=*TaecAgQ&o;ZW`*m`XrSd$#$JJcMqg2lI+$!!~7g~^n6O3t>uox zmO91<+NyJR6YVXGru8-z&DLY@g0m#%$gP5bRJ-50$9}+Y$d)x3wNK$bX069c1D017 z%k*PhzQvh{LY=b+?JEBMQu+W+sjpknA{OH0!&|%$$H(CZM)UHQ`ZBCC{T#JFl1b;i z`xU4o9c@U^%W9FKv#{?}w1?Ma{mrquQOdf2nV=WxD#`o|kqbuJ$ESUw6XmOoozASC zp`7sI>uLA2MQ6H+a4<_3@ez5pPwCEEA3q5KxFPcyG9?e%^AL@7h07}i-)G!;PQ;eZ zM!l1$p6`Z9N*mP*fN^cRg?RKD6W`>thNuIUUa56+%);~L*;z74mB_6tSGufF8H>hx z)CN_8{dTTXit_;t>6%v%p_bqGv#B)DkyRpk&VI|1rTj(2GmyUxnHT83i`;%5MixYO z5jm(+f&PjDEajZp_bsUVCd1kOKZtkr^?S8H(FatPk1ZlPB58`%8(!fNThF8$Ug zxpG!M-lKS1z-vZJ-S#ZwzlaFx%Ipj+f_KUG+b>O8zH$wdOwi&~g^fzo!bnpxL*=Ws zUc^f1M}gUZ8Jet50c~}q{^qCmUD+IJip+?)K|ZD(i>HuUqs0W}?Gn6XZVJsV3*8@7 znY1bge6bi&=1cVarm};Ey4pkOzK({Dd zD1$&g*?yV3!*^>+g$`~XpxCOxyICRZyu9zWk2TLEe=Bu=EL)}t(xTzePjb|ta_!>K zugU~*=Rqo@Ed#pUMDUN+!-v~f5__{*OiyECjGQbjKyIIIDSTE*HIKj0uvXo)H>+C8 ztZ~y_%1*9P!&v;KQcwIiPW1}~E;!Hx!SOy+?fcZ3 z!*;)ue7f_}C1+Rtk*`7|KI}%VMW=eVcG#LNgImp%bN2M^NmJuQ z3F|%zZL|RirV|>y>E6O;gE1!^+d9UEONXKvaek1DRJ49DiFIp9jn}PXcbm7*|KqB66gFz*{-y8Hp z@uBO-wJPJt$XjJ!Owa3is!F2Orh4DBS?0#`m-Z7nYq#BqTb-}`&3owcsm}EFxVT($ zyS`Y>yP%hjr}q$??>UwMe#q|IqvrQ_>uC)4VaDTW z;6}Lu#RjcOk`FN^!sFBKy9(3g*}(^X=sIoz0O`A(ZtBlgqm`csdlz;s{b|c3zwIV! zgI6NSzqO*`O+DRz&YeWE7-*3svV;ina;P1GLGj%!itgrL0#~ePKBkPCzN^VFx+q@S z<;QkxP+C!-{S>ryVa<~S{8NbnY@4|3=jW{PG(^810X`rTzwf!+0yUOo8=8LcC-1eg zmk9~Ntpd8|&3%93V(E|W`9zsmRUp)>ln)M#K+wHE@~>XtP8Zh=qn_A3w>~$=+R1l2 zL~y(`c-NQ@c#bx6bgL&8dN-(6S7}JRs67Zt&nw`{ zk)ATF=SCOQZ_T%nxdzU4|DcAKo6Jn=#6x`{fTT80x2u_Td~3u__)E0zSDLR9fbD7s zfc;KME7KA}`@}&XbhmSe>jn(ecP{gq*FW!f1VAv)PmdE8bDpcJ7r~otth{)mGp*$n za++rzI#f0VgC5tf+XoD_bNbN%+}lkzM27C~Uw;yX%hf)&6LafK1c9j6 zlE=Sq0x*g9=uX^xMT@T{)rFzFyxK+Vcfy&1^=?vD`$9niaXDSVY9J2b1ONuv$(6Cu z(3!xq&^V9(fw1M{AKr0XtnwXA`5#w7CiqWsjD3HlGFL+~IR9H%z@7-+CT)KYPihI5OHj0!L77*h+tqgOm4ZXq6HEx(D zyIAuRP0&1r#uY-%x&7O$G%9oKGstiatf&Pn1wGcuk?%u>*&f@iUxQ|Z0MGx zau!kB!QX{>{zEQ3MAe2snj)pU7c;3S{dR@3jw3b5#7DEZhn}R_OYBV74s_kw9CO*1 zV&ms3dcH2)aJ_>*TKO6hF$jmmmp4)0a*?TjuYK9cF5PG9UqP)Qn%5P}^AAEJXWtqT zn(Urj1k0qH-4%#Ym(UgUhka@CX-IXJe;=giC{-%QKUtCD+ZQrr@0T+3ABL~}&!D9B zKGOF6nX&OL#Lv5d@psRq0#kdIbO^{i2Q;yDZ_4}vWW2jm#S9_u{!$DG*GzBA%}U1= z8_m~1L3j{(htF&N_Wy^6A?r%>{YY&F7_&}62SIjpButuA9pzvep!#n4p=Q^TE&uj zCUnc4%w=8Bh^z8bmwgx@WU<{K#3l07M$l)2PKCW&P3?B z)OvcXFdEWA?ycL>?QIt8a~8wrBI(PH>4OiAcMST4zkH=5iVg|t;6^2hm=rX}MDzQN zxeoP8l3eApZMkJeiNxnf^29e$@$yTfV2&FTah9sj`}CvU2T!RF2YGKusHUS-~;H(QepnF#t?RrldJ>0Z6c1+79-SJeY{5H|bh<=r8DoZz; z;~sWX@0Ti6PsLZ$d$EWdQkZ3OU?IZIzg3NJq8~` zj!kUeSYf$3#B6WUg{2W0Yq4vKyA0buaQw&P1$Y5T+%&KQYu&G|cgBTq>;q1cRR1Pk z*~O8h=?pyCKxwbE;}X<+d7vQPUrl}9my$09gosPL1IUzDYeSEc=$?#m5ZC}grR z=$GG#2VF$+p`GW|ngdJ_RH;56L*&CC531xMiE7@%z>yQLo1h$rI5!QmcEzYBQ${j+81JO%--i*u+KIdz6kr5@mBn{I&`miram1jCl?^UI_QtP1vB>-tDGZC3=Atxv}o15KZFi0`o3^^agzd zbTl8c^(pW3hMXKb_U%ENSE_2H0-@z+d$UK!*;W?3F+C@l81YCvRr*3s`2Y}V_k*PM z?%}K*+|BNU^=sg&bb1_EP{3&VxhwwU4*BU5sx+6cTWnr4m6DlMAfDk2j>F0vIf>U8Fz}PNVZP=j$Wi47Cy7MpEucWPIQ~#K12{@ixll85<(We?Ls^E1MCW zdq!rIDztjuyk?vnM=U-oRlYsRSLgXr8O^7&k$cp0bJBk>K}o%y;XeO-`tml->Qb zeqS2UpMd|-!TeIj1B4!+3emL4i%@fq1mjV@Y_2mMgmw32i7fNQd;iQjyrenyetxtK zWJ50}X)UJ<^B_deDum#3PO~NUZp|SDA<1FKs9A-!3X?NxidUaXm7u;q5>zm#h_3xI zxBmXVVFI2c$wZDtZ1|gFW;81LMznz={6~t45Qc7koYiKxop7P!D@aqqbxa@!*6?kG zHaxn5JnwnlPgU2_I}vHtBz=NZj_#k?W3b4e*F~usl-#2w>lA>`w%irS8C-zU+v@X$ zA&C=DzQ-u~hS372U!qJU`JkE=FD+vkJ+cPm?X2bS10fX;@0(NR?iY4m|9FX7@vAqF z!bHHMBaF4YS-T@9U`)!a?C%yuuIJi1$Gi|dj~x~dxxgUOr1bpx{M9SAkP=Fq z%a1%^x$O249g({9v6&>ePH=1ZU%CljL^&&&F%TML=8#5X{KOZK9~otB3u{{GQ11oJ4OH*N{C+dUojk@W?Jx&#t~D zy`_L(_0_k<#McD6Ebo_O9${koVM zM_uby+MQ7EPb=gOq?5^uvLegsM~4qBe(U{DC#cQ9_P(n7HvcH?p+|!U7!$KSj@GB$ zFZ+InKj;R|t0T|h_YvgKMA&axK3)X>er1b5p$?DMSN1*VNx@}UseL}TaXSdUXaAs? z9@SHBCG4qZ#5*k~eZI1vPj_I!fAz54P`Gu!DHN`R{6y=QL-SC*KP;D*o)kYwg=(;> zkZ}~I;yMzLAc9!R6$~%DCSXShd@Vp)yE=Oww8apse80`pKrb<8BZTg}wR>WUoeb5l z_~GvUTx4Br)kZ;VNMCB<-_hbJf6UO z$N@(HGK`ntt3pJp);94&uTcrL8a2it&``2eq=A(PHp7p{cs|~vOec3E*H6!-Bby?7 zbp(EW@Ah*ys8Xz9(|?#4AFPfl?OAodL_P#5q<#Dzf0fS18M-#t&tFO9>R%yX&Z_wV z9hZ+VrXZ0?l69UxaQ*JYh}Vcu?zdQ%Ua;1k7U76YeTl9GDA0oW+euqM zKCDQEBP!@vN{!RHk}nb^M0`v+y78Rr=6vJ^cQv+h5Yl!@i`v56jx?t(h&gmPC{D3 zmEswCKMdG0FFcH|sn0d|r`qz};5RzQPm{En5%*is{6zC{c97JJ&V~(z;j+!^hf;(B zURGZ!v=dZe8OV3ngx2N0fg0X1`MPy!3;?)+Zp5q30;=n;z4% zN-Y#91O%@4_*&e4J)~c%aNJ~mk^?WVnpo5XoPI^MqqBX)0E^VRR|t%kB2cHQycb5wABO1(nOC4wedo{S{6a5KK+DaeLW6{cy&-C>flr#Fp)`G( z_;enpAa%Kl%6^K%+1))9M_y}um(e%b1`zxDR=4WMNKDY|_5%-~acq1YCS6d_jrnZ7 z2AWRi*KxO(D{WAFAZzYF=qqgS6StdEe6c4f1Q($WSv|XOrbwpK`5gba!T5rhGoji0 zo1MPV9U!KE{~iLgs;E!w}x-%Q)D%iAcuzvc}xnqDI*$TQ8%r%{dY7$TGA z%ABK&sY~JdrG28VwWQkTauA(<^elRk^g#CJ`oxTuKFEsg1Hv%&fr#DksSts&iq3JR z_~ET*I&OvW$~MMHnysJa~FvpZyhK@8gT_#CB@8ll|o&G(wM2 z7Iw?}DUP!LKr!NgI5GdtY(0Usqat*b&E1bj2UhYT#irdq3^WO#vdRchMWij)nDf)Y zq(|*y-&C&e5wl$fopu=g2P_gI*iZ_Opv%;DWmKEG}EqXfLvceYN%=k@BLbN*>>OQAK#G4P>@kn2--mmidE-pnla zH91|n-l(6*_Pzd?Jj7|AV*^R`$IJCxLJT68FQk;$&0AnU`~E5QQ6|9q%<$yd?-mr7 z-P|3WuuRZc$A0hZIr$qsq-1MXl;vLUT>E|>)%5nj>VR$)hY8=HESHbyJ=_Fd9<)tg z2%^8C|865sNY8QsF-{4$*s}Q&Z`e3tAf7`?8=1{8_RBK3v>hJLMg>q7^aQ_%mA!8Z z0T%S5i7wEz6Wd|@z$ubB$jdkM(^<}!Gg?y;`f61iLdLs&sW>s-qktqfjp)1F*K2G4 zF!)Xl<*!70>g7Q?@` zSVRs(*N3ZvBUVfMQUrfGCJ(qw>Va8wTfT17tU8I|5%BrI61)Pfrn_@d>}xW#7J36h zhUc0l(Ht6x$?x!S?Y)9YI&8`Z0DoeR$#Pc9Y0h59N$+d>-mTywU6to?c0Er=-s!Cf z5ctc8k9+f1Fg8Vh{Y$8q42cWk>g0s&7PdK}q7o_4`s@HaY56loLpPIqf?D0(B=|3C z&{3+7_fCsUwFBtRu#bJ2F+VkPd(U;He7*pr+;t>SNAE{ecY{p%7Z_`Y0a8KsBcOWd zSmOX$^cvK&EC}Gbqh~DqCqqo%sD?H5_ec--+e;U3nt-Fjh(lTIg5JUCt>bq<>%@2O zMZjNUeUOXK^LjE4+wO;aj;Xxcw=^oD1M8jEuR9F-xI5pStoTqZx-NlV|DNiwI%H&j z9L>$R;8U*h`V%z1uR=38}$4ErN`$%#^pbusH`U891+sq(AtJ8X1E zLz5kO1EPwui#^yN47>fB7Gzf-`hG@>Hl7Uq&Ud;sWB}C*GU|*LN$X8jZ5!iTX8b)Z zaW1+rM6)neT0v0Ockr+5><9$vCP!dRy-^Y{0!%%;s+$s6c)?z!hn(S`PzEhyj70kt zOzscHjg|EWm%C(hi#VE+3hll-z`Moi)c;99p7_##$5@9XRmey4`q;X_l1TkLB2(~f z>k1ZL4gqm_iTDAs#y3g5ss(o?DT05kON2W7ChM}IJhyIttrk>A`ZgeBv}kMs0hlEW#gJg65@T-8_S0?qYRk6Nm4yULXCsEIeF z$Gm*|BTEHEM)}btG0tcDk5ozB0jn{2BBMwSOPpS8h&$ z4D?|kB*%=8T#Tn7iBFh_Av`1!kysFizccat%(~EfXCOz=@x8uR_We0RY1HDZdwHv0 zqIWHi(ffP03&sB#)FMg4aa7+hFS6IWZ}FB6gwdXw$Lj)qDZO0uLAmK!V)%Z1b>D+7 z<-jAe%n!inZ_nVff!NhLH*ufq+mK8@Eo^oX3MskTnk<(;lE))wX_C(&JFl1D@Zqwk z+|7u(1W>s6oHsTCQ}_nl3SQQr4@(5^{6}wTY*7y4EI0)bTjWz9>~YYXP>KIl>2j~ zH%vYT_xY2g&uA0_3$_=3QOcWpI|W08#Rs=U`b`||ng^jrmJ&MBi&x!FFF8*E6^#?u zrXE$sG6#da3+KlLjj$|pDu4l?V|^c@MfE{Ak$_OrS89SIJ8d!Hbaw&n7)hvTW)eBC z`Q5LjetBM)P@%~;c>7LEnYhxy@G6BD=&IZxdGB&n|N*+>BXQjUpWE#cq02vSw5e$Z|pmABPd@sWTCm! zFPUjKJ6BbX)dpI(41tL3wmI z1_xF7eT6?2&q3&UvmdLw96xxnRjZ3nANPS$Y`{OxUzjmB`2$LOXea*MfiqXqOTx6N~C;$cHr^Ovnm4>Tq-qO1+vQAqTr36@IyAk8-M{+pD3aERBxGR@)-xTujFZ zLBmft?RF_E_Mn)vFLILRfvpA<*L%09o`+T+=S-N#eWAICtv5bw?yrU%Q%PPv2$~V9 zUnRgu#g|wg=3ZQ{ILx1jb~Ct=&H9Zdf^CRDOtp9PX0>5YgK;m-RPYv)}K9XD82# zB}g}?xhekmzrvN|5B1@`jmmpcuKObO05E*M-o)1#0kWIQMq~DP2#>qiH}#FStgPj) zslA3gkZ_|4POx*tm6R*AY~b4s-N^D24M9ge?qWq)0Te?n%<2wpQ@-8~tcP&@Esp0y z4R>0G&k2|S=?;FKtV0RW=!PDxZg0!v861u2KJ*>cznY4L5V{)HdNz($s{xT}7~;Y^ zM3~D()Kc-zcG**Jg-2$$DwxG|rw&DmRz#G7voCTh|F6K9CU!_W8(YH~$yj#{-Lr5M^3zupSUT9m7+Im1Mvnw^8;h@OZ zwYLi(3!t3+0%yX>oYOU>Uw?Gjj`MU4>PlU5rIb!S?2gcz4xmFl!ShD4(PzQ*W(0p7 zs2*u}!n?ttl$H-k=C=v*l1RL}JTOCEY`$LEQo32Y?AthevG6&EP|I=&$~UwG@o%zg zb6!fH{7M`nKt&-O%PHscjs8;<2d(@R-}vhaBQF6kEqw^<&RY--+EWL8&j^I|A?UJE z>A$7(`tmIo6sHTAezo`SJ>&d6xN?Us?}R&V*d9jFDjiSmi8+3EhxiTD?2Vwg zWI*Bg^tAusAbbuY`}zqZUkSY8egMUcm3{2`>H~aMl9!^qJl$pYz_sJDZ$THd8o`&5 zFYn974kc*> z{&SD%VV2@DCA#5L>URA%_+Q7ki#iL*Qr$;p^X?sN1?qn@)=#{qOjrI&3n3}N1z7^4 zMOk=n%2dJT(__|V?1K?%vJQ*8s@knR0Xba)UI9A#uM)D7 z!Pu4haJNg|?mH;KQF<@2PQFg_>HaLu+rwVJxg$X}{b_K|0?m4(`U@iT;T(VVHBh!+ zM>Q>Rs1@M`d$$0{iuiSwVXjJBsuazbVi5AQFaDO zQVOYO+kPis%>We{{)Nn5lFs19rdg;%xUYhxQIBG50*fYJr5_}<`@agTs|TjN{+=(w zMnnjAao9B^h8)HFl!KTW?VokD3+~(4$B7N8M3GDT4z+SPQRf$cqo(0K5S$@5;(?V) zTG7`7W^PRdpNSpzi~4~D#{>M5PPfiU=lEl#-vdZJJ;IbcXZp$_BQ}Jv!tkM=r2ICY z#G!NSLOdMxl!r&qnlGCb6pv8npSvB0XLUd>WZk0M;8D?>*!$e0ozHUEt@%VHGYrJt z`@BL+l~9?B;vyQo{$q4XxRdqhj3J)=xlmMO_#cW=i(CZ&bNCUp)wyv+&vi_1?5A8u zQz6j{vB*z`@yf{0aGOtt`^bF-&|Ypyv7F0l4H1)lRLcW)bN5HetCvcAp-P=67xG7; zJp&33E*>|QYlJnySMub2RcKT6W$H9OSn-@(g0mfRHq!4x`9QHZ3-W`#+dcXFg+x1m z^ZZBG3#-|yGge!8(rHq`+PrxC1=XA11bwCxHT2Te)tiRTJ(*3`oRR5Qd-WgXdNRUv zlFlhDSs#TgzONg3{KgRqUK%TOMPu{llk}cFQUEn6;r5|>DDzqEue--$#8dT|h_8N# zNFQPSrw*!Da^9>njCVyA4iu7Ol+)s=nnmekbiG^J<=Q_8d6^TFRt@4fxO|@IHeAw2 z@w1O%L%rqh{v)oE`;T9-XhGU?4LUD$*o9g87G+*9Y5nksz zXf4h%;RUJ}J67Mz{ZKk~No&`XBKKRNdEQitX5fBhzXu=r=@p*3ubl~`hkx2eSk;BC zO1di7G@%1GGE%R+Vo&Idw3b;*ntVI}T={PfTq%5JmJ2zle5wLdA;uxxSPx3=g8PF>Z@-1XD#PA+O$A!bSU`yFu4*j-x~JR>Q}u( z2*|tje~XadwxV>KN=vr^t42ii0_gNo1NQ^c^o!+L>+)tMWBvWLW;A@Yen2A1PZ#^x zZV>#z`yCJjG$r>zoIp*Z)3v`pIO<+lTQG`}(G`dom1pv>+YS*~x72Ex7O_qX&u5@;_A&|9Ii9PNblZCW^8?BfymVoy*w6uH)HN) zUsBEAWUF@VS8AJaYAiT8#Xy>VIM&IDcM!>_agMNe1h^EH>QO(FWZqPY=8Btr*Dlp{ zF5Llo1a{p^l2^(^E^+&H=J4s|%Jjy zD_ch}h>J1c_P{{;%Mpo@ ze{98~fqMmH3SNi&O?w)$8CT;JN54n#cpkqT#kTtx|5eT&kt*kJ=(BfS9+m)tI)`fm zg@9*rRvfNFAwc;ZNsQLogXW4Aic={tA7c{k5K+5gVt>-(0MQ1BcwR}}6*hy%kpm=T zj^3jm?yKe07I$AmlK5UIyc-ncEyyhKOOBw-7iq}cI(0lFJF87ja*98i5b<~-n1#98cBBh-COaIDbPjzvqxdiEqysh z^m^ma<(qru+~5m>=gF~moS~X^dqw7HnveBiO%IPdp5=eSKSc*H!1vGLwa~!zZm)g( zDqu8h?&mk}MVEWUirl20$hN5L6`X#y2QRu-kaWHD&Npfnbs~<}`x(qq@?$5ds)Mi} zX#5tD(LTsDNGl#MEcPc57+KxpkRR3yssU3pbi`oFt#;YngL6yti~a|>@aysFMkBpI z;*ho@siZz-tUMlZ5&>`jc2jCeNy$SYhdjJ?$Gg^(fHna?s%n`M#K^?Yu9@ExY?wl@D z6_Z2&z``Av8~$Z2cZbP^@j3{6dgwL&q53$GEsMv+pcoz*#G`N@9LPfY9v&zan8Nge z3OxMc())n_es|e&AbGc?qg>%AagWTHmHloc5&Dq`JSzLKVuuT<*1<^&t}1OEkbDyF z`|IUa)`^?-4Bfd_ny!CPgrT?Z-Rqa22ET9LkOxSuF5iUQeNnM5<^`LELo{FC-Xwr= zOeI71CLSs6#*yeQkW4riX$=kYiVqowDx@&?`)7j!;x9@S98?Gh`+9&fm(!E+*ZYyi zAeGuq`LubObjn-Fm)FT)mnwBnrYXI%=792;+^C9g+cCe@#hgK#h>%C9PPWJtJ3RY3 z&1LLbC|Jg^8hG@PNpeGS_8Ng^ zz0@&rSGhKGLdFRGq-^9zeKS7$01GOgs4Tdxa(!(ch}&*sv6QKTb`1WP-QVBe?l+u@ zolhzIC_CIE1gev{;&*k@4?`e~Fb+&2 z@${AQ?D9|DbuP-@TL1zpQ0%q8i5+e1Zr!a6PPNb>)&hb*epmK&hRd3s;54hi8YGR* zSbPPfT)k}{(5GW2MYgoOE27!`&Nkd6RyYR(53t%y|I{97tD@@soA}umPChkO^pjrq zO}FC*po>8S{&G@IYFZ|@Lj(=_X!Ii3E71E;;-@v}GsWu?-^DAik*^pBU7XX2<#wBS z$`(Gopl^pPE~u#n2VK2&UxIJSL)WlFW`{TOK`!r2MLB^LpfH<7AUHtJI>gdsy4`(^ zbEs-(980I(eVVaFr4C6h-r1l4bmn(+$DEyBOHq5bPVn@=g2QX)GV5QThp%S-%-!~AzSA%u zPm{vcc5E}vzh^k?%g;GpPnu(qDDF^!?^{N? z^J#RB=Y8PS@g-qHDMpH*;l&u;!}x-yBXNb`rQEQ&|tWv7jfIB z+wFyr(MSF(SNVdWbid@5c#z)h<2*vsT0yW;X}M{9wP!-IyMasj>uo%re`)e3jOkxr z100Xu3GUI50EMMC6ZGDjPu~?!lH%qkP4onb+AYqRsvGl8SrsJ9%U_6)LoHEtFgQb^ zwy!=@7|n<-1Ukkg!pX~JgKHqom)Dr(!kbpP{Au6zx%g)P=zv*9y=^HLCR_KSHI6xV zdESyq(Dp%2F=wpe#_2EsboR7v=STXQCKQ+WBCz#eFvbO$yIU&~a~^ zY&dJibt<>j6248vxG&}MYm4k}AyGEZ3HCWc(WLCy$oSP4lHCgzW$I4|;|a!~d4v`Q zc8ffT30&c#v(S>pGv*Qstrr`TbI}t5$@_=A;I1DOFd$rc*|82&Bg9MbH)dRURHTmTNp`+$3TyDI}a2eZ36+?fu}cs}a!OK0RfX_1ekalBHh; zb^`4L>#B5}1!s?@Jd~+%8tIlC-{}9W>hV&Si_P9OgIEsl3T%S=Tm#Rfy&^4pOvVKB zCKJ|ERX3f06_%c_tub<_dVh84Cc2)A&}bGno;IR8!mzAF?1Yd#T$gc1HAIiKI9-3# z{hKH9`MVI!{NNiIrF*SSo0ln`x|%O zY-u0dROzfu0g95~6}wN0fCQp%Gu?{A?d$NRZMbiUnx^>0&N?=p$$q2yIEV&3!M!~- z6E(aLeliQEc|AbkGmgI=w!rt^NNe!ZjC&{n>xI&Z)4>OK@JjP4h`elsFr^Cpm4iMB z)coYF%oFzKMy#8R5O#wM5Qn#Vp4&I_R3ZGU7%LSZ8+Z-{$F)T3jGFjQG_vHD71i*? zA_r^Om1aA>GU@cLc>q$9)Ysg8wevuE8)fd^Ip)co2yZeeu08*tLA^-dgz;o=_F?!Q zM`k^3x)I!>b51yjzdidA1<4Y$<$i_yP9$f~5?%P40R(vLL|bzLZVs+Re=1taQ7)c3A9 zd_TL8Wp(cL#;Mhz(jx9_bxb#9d|SEcr|Uc&m`b7kOI8EppD!)U9{^Yw7@`K3Pd!Zek2k40o9ZnadP?V z=}r>m>9u4`%0MD?c5LR8YwF{#L;#h4Ky`lg-_wEP4_XCvTp`p|=nX1d;tOBX^xb+Z za-8hrve-EL6rMWY%voB^ueuFnnAo~_s66t0eL(a!?kD0BvZe*01kw@0SBdj|{C@aKGQwucY`sn@nzm}f`L3G8QzGDQK`g`)qkG7yzaC(mCW{$V?~)MG$Zp=KR>fxS!>JHZcq&iZ2!nyYMCA}GapQm~R zyMO@%`AhM(&55{&=C(5DHo|!B4~R{5;houhyKW_t`cdj_*Ug&Rd2Y0M5FsmTr|c1o z{}&>3>nT6a?xGLlQSDE^^;`U06eQ}H%aU+@kCu3&Xb2<8&L}9*dnnkY2Pl#6^S<0Z z1$|}M-!XR1e~pG9#o9kcW8nl->mL3r`Ci}JDH=d^!+ydlD@n65V4NQCx$1E#}eIuO6 zyy<+L{%o`N2WcOAT4PV@B|hVI#}BrDb@!*WPJW^aH~DYx6cbme41vd4=BzAu10F`$ zVs;BHZzZqPn67=OE4Z}M+=ISk7kp6OllXY!JLY#i@J26StgFHW(tupH1$F*31cs}g^ z!utGXeAu!1gweuqP~QJEWxw*NH@Z)4U-Lc)(xrXN<-0wa&0xg4&lMC2EyVJ?SLigz zI-nkY-1~r^tL2!mQ!`#I)LrnRQ=2+)*ruz)V0(FZ@y%K3AJ(Ib{~=`L`vO3_0IsS& z!i3($%sGqaPjnOqW&ftKn!`~B?@}9wgVKK)u18yu{?RNbZt+NoDdPU9Y#^xdzXv-F z&uO{IsUbrpZq+B9xE+Q0PVWK9tA+3K)6XPKTfF}MirBC`e2sf_ZW~-#^<1lO7A$I> zdVh@ltCUW>m~v{qhe*@Lej`Y9Aojg6w4-(zR zzbD=%w;33Y#H|rNtN3 znkwx0a2)*dCu>T@qRvq=@yGssH6P#XMYm_;`9jmnew}bEQnwodcEDotw83)b>gi$p z^(QIcxYR@_-HfvXMB(e(or{lk1h4v#@Z-@fPoKm$PHTNggmVkNm}WMCd#807#ggZC`541zd>6Ve6lZD?qG?RygrM&Xq#p9$2dT3aNUg(cXu zzVU>WI-VPUMi^d=R*I*ZPy|CkEK&vhGKI^-o-(;zr~UKIzmy%Tn>lYY z9U2TAtu5FU-Htk3pOnM*e{33^@^Psaz8a(Rx#kiPLqd{*PgV!s5X{@y)W_lE|IS;c zbV|aNf>gZvmj|tw`=&|~q>If4_#HPPGEOi1hq;6w`B5$6{6@acv6k{5dJCpFHD=fBZG!+4V0pAO}!syKe$+4oe|}NieS()+atmxeuI&B@z<_bAC6^O+7+M`HPR**AqHa8^vyiv?*Zdj##t8g zF1;zp5btvZ+R*OV=BLQBzRzhGJl$hZbN8C1U83Kb=gSskiP^2_rEvBaw0@|2N=+g! z5B+!XE^-N@;>o%+Hxj3mTDh_hn*<-0H~1g>5TZ# zvS-KXu6_&!F6wCgSoh5rucLz;OIN1?%y? zc1FS?b4hi86%;z+MBWp8Emc_9BK&35pWHs_bgXnifgzjCHtY)~Jk6c^1Z` zeSC4ubW5dM2VNrdqRQnRDkO54p>+P;W@5^qx`fXdng-4;+63=jtvllj+NAKIpK|hA zMENJb4^E-yvsXqoz0VKo^_>4f5;zK8?f5})Rn^;zV>VRWJ`zsp`|xJ=JVZtO;WGdB zWcZbTFHZ47ghkj-0{>Es$QJVJaEX6X%f*o~M(I zS8vtx!8G4O5-*15Zq=f^6 zzicOTVV>p&i6yvdOTe&C{^Tt_=`jH%PyTtxS zOBTz#QCq>f7!u2x?Sb8U#-1Xu%ZhEqc4n_8;6d&<{(`5UOwSAWe{1(UnZNrbxgWwV zKl<$c4LRc~?BIL;rgTTjq`%Spx)8@7p=R%&{;Pno#PE^QgGdI~mA>^>2&d=)rmdCA zQlDqL0JkvahHw=Q@^T`t`96OXPH+PpGa=vj@CO0uWE?~1PJA`wJ0l7CS2yFTfqn_& z4GkF2(S)m`Cs_M5kEi0-6{h6*K9j!_%}AIFHn{L*_LiHkRTxaE(rZ{Pj5I zqxAco8f;ui<+gf$j#sAn=1^>Y=RWIX(+(8aoRZxnupcf;wySvHPB!^GLL^)I@594FR-4 z_b2F&?AC(nv%n1xzUX1dG#cPNMn8YGi$-CpYsAMTpem){{cJ>T$k+qSoAFod6ifh< zKE?BS_rE!O-O|0$zP>tA+cq6U2C#ShtcSbZyKjtJ*F+Z< zoveC2-|v7bDaecP#qE_!-S^PMcC5a&*Km4SLi0RsodPeV`ANV}E3aOiNS~mmgNcUl zOa2OowIAc)KuvH0#uE>7g`-pme!vbrck)=?3S*Ssb7J;x8_fe4DrjReyK=PhmG|Va zq`@R7y^=6k!}b+v2X7>*Y}Xasl0A1LSs${k{$w2WrFy=xEyMh79Y8-+XuIJ$`ua!P zzr5t;1gFHKYQ~E9xn4UO6R(DxlJIi;j1^k~9)!y_{8EqVzqZY@IW=!GbxO-p`IfiM z5?(JT#)$jd^+`Ejrt9d9Ret(C%@$b+=}nB6k15Ya1H07tm7Lt4z0W#ygxQQ=%^#iv zB!HzNBzhflnBpK05nNSy7W|vh?mRdlnxku&wY?HBr`jEm{(}iWzM9M2>hpW?>7M^Nuqxo5S!bN{H=V^^nKx} zEAOFOHTG69@W8d0hD^%YC0Ue^@L|N8r&OA}0-opAFH)?ZmAGmm6GWr=)Qz?RK*c4S z9KD22eZ3->*k^z&TcxQs&MwST(Hs&j~5|qYtZa zt#b;38u9t6)srpyw*QD1_r$n5jNHBvNAS*R*e8&E^{!GhydT4-L^9v6b;eIlcRmEZ0hva+S%r;n@+@3e_KSYm?L=_XPM0O^`*ZI(WzRY?zL$H_QPtLY_b_}w+yw~%5D1qT#TT3#Exq8C zoaVGGTP<~?6zy&en}ZGG3(-Dr9I^pTs8IR<)c6NdnV~R%;h@zj=J6^kay_?J!Splp zS-mRw)lHzTK;YcIMu*--+SG+*v85YYrEtzo+PBO086qU*aMk)=vKSXG=bF-d;V<2D zu3ZF+JX~czYq;q5JWkzHJ9|P=Y`o8fFwZrqr@p~^_{IM8lXP5Phu_RAnlHoe)uSsi z(VxVTsv(4G4Gu6u23N`mv+(mCyOoCfs5qx*brOp`ugueeJ;d_-cA&gX3j0zH&mo(% zQ)dx$!9Ss~f1R&(vc`W#_Ya5BYNbq=&v1aN#C$!Ce3VY&^Dlf>fAoD6X$SqtQirBe zeBM1Ed~{h)T(%SVWJ^+aFlCS((=oq|q|@G<9d*Y06vvwtIc!dbq^|E%Kq(UG;U-pQ zRmE(lNvv?8_;ayb-{HI%rUeNvRFU&Jvdf~T6YCJP8g}1zR!(6b_2AY(z98#Gz5_-} z<=dgt_0+j564>Ot$I&KfXB~AzWBUCRO2l)0?Dob|g5C%^9c2SMFkW_kqBaRf^Hpa2 zNxBLs@ZMfCd6b9#J-8qF<(M^+=1IA{0c!(iyV$qqAbU}V6X(5x;=py=^j5Bum=e=66QR?Ses(@W}V9V@t zYwjXvW^4Xom}_jf$v3j_n){sipovkifB%*`O17s$0IUxmO7dRRfK8LMo#x^kVtt$f z!k>vI4P?H{O*cn%n*nm}mp_P4#5#O)fxWr-IjRl;$MdUpkA-8(mWOnBoa0LyD~E^b zQm^4Qr`X0E7DNU7)Rs-n?UT-Fu4-}5g!Z#fz$Lff+_wJXYV40v!>iWD(yediWTH$Q{bD82r5iB8ejCMKEndNz z^RTuqY___EaL7~f@3qy3nA00!YM-alSJzTC?e6s)MGwjX*g>9{5v#rA8e90Xp}oM- zY{|N$V}76fig_OUt@E25asiU6p^NjNqd;rk-yyIvBIBL=#wdub1n{hP6&I5)DWa>R4bElJMO*|zY76H>V1yy#k=cF z!WF0<0S;g8!QIJ&!prB&oZmmF>n0xB?kji>qJJ?rVEyRh%@_7FFFo4Fzs6ku=9lFI za>Gi7d5H}>cdc3V;1D7*1ax6M6{!BI~c$rp{*M-(F6 zscU@R*C!!uJ|74Fcpp0msf6GGCX;& z9*EwMLh8x!Rqr>v+a4+^Lwdz2+OSy_76-rQLTo78r6Uj8bl0&Z;v*{R0Bq#M=uW{HB0VB#|ESDs zDTB_v;x&qnZRdW*1+$p)xwZ))J-&n5zZq-Q-LwG;`SVr!pB2ik2gREzT6Zpz9LE)< zn>n)m6UJEBw#xfWwU-kJODjkIV#-{>jdzeiPD*X@D0V)kGDo1qm&w1oY_%n}bTS5k z*!EsN%iloqbI8_#5@x@5cDB!F>%1R#bFQRl>>T{9t-fE)wq*8O2Laqz{t7iG00 z+q(6!!#Nt_BV*~_KBKjr0{X2wg}=sp&ZqwBJJIED(|jD=@zBQ{glcGO_L@cH?P1bS zwEdew0y2MD%^$L|BReookFNY`VEcM~!e{sgohm+8f!~Kh2v#_G(w}0xPn|}l%^_`f z{fpG{?Y&%b5=pev(P{1`QA{PksFiSSZto!eM!zAA?t7^9w57*Bz+fcP9)8w-&&2C6 zoz_<%PAC)JWU>5^&v9vXGZdQqk5P*Ihq z3}d^2=6&_#Kt~p$A!EKhzLHWjAM;gn!Jt_CWh!EQg#oIJdQq%1-$Y&dcWY+YWk??m zni84Ij!fJpS3U_YY!!HM@pKsOR}JmxILV(%ahJoBg{n)_#xr2~a!2Rm)t=ea?Cniwcq6Y zUM?s8s5guR^6(eLzad{MUbHeC2x~Iq^sA8`km7UayTdR=#mFx= z2V^=f)W|lBJYujMnSTr$4RO=KE6`hFD!r1MWolK~%S1VqJTBtR)1`w5Tcgq+A4n2q z$^BX>erHvu6O2fH8*^XT{$kbo_xsKmPY`Pq0v}G5Co2%HYK?MnW~cGte0fc-a`ScK zV;=TZb&(PX^^Ooc;XmUjs29mk)APQ0NVZrsUiq)0w>>*xFQc;!^=`z}D|p-%Dh+4`Q>}y9_SV{csJ+N?fn+uN+75uvzvt!LHi$>B z1gWre=*SL!Ht>tXj{a?H8*Fm)Cr6-ERM7d&l zy;S(1Qj~BDMk#Cy?%nxG5u$u+_HIE{{zS@$HIgcV1tL1RmDYku(J%?Nps72Q03=7^ zXao4|P5ER~FXSP@Yv8RgotnRtqF;Z@U0^iIh@Ae7rYM(rcE>xo%ydV?ep1~(os!(m zb6knE5ah>kfUdr-2{T255@Y>%2ziy_EQE3?DTN^00yO{!RDv1hH zfq+GMuwTwYCXE5ks&)1u?4KD`_HDaxS5!y* zXaADSq;kSJc;=90E)H|@r|N6pJxLkQ7P!`Uk(W)#-73rTN1%02vckL6%Tl#_0Z3-H zfT~f)pK>zTEIi)QjEP71q@UW3zI1<9otgG7eu64k=%UV^5-OM0{d_;O@^Kc5eG>BF z{`ZVFdW31$=Yd+0tC1U^w0sPrAP{QA%N{KCSK7B46#@S=(rnv(_Sr>dOX&s3!rnWR zCMf3wB31QlcKu<-JI#=$dD(C_UqnF%#4W*lZTz<%dPrNeOlckwk_I2?C!57^ot~_vl1lek-zBEy3SYQ|p$dD@B%B zZ`V^Mm2jBq(&Pu3gj|QU&XG96K6Koig^kmDU)DC=&tQ;+S`{8J1neAn;sPfc4II^J zz#P4A^jbJmrU3c8sl}Ktp3b+k;Ow+f zc3L6Q_K(>LEi#2F!*2HAZmDhs^1tE4n~+T_%2;N+_r}wK11GNN}~(xvSsR7I_zKF>$=;V z$uZNG`IeoMD@(Jv$0kx)P%RT*vvDsL%K z{$SBR#_eCb^;@DY>qzFP>i2uxFK2aq@f-)M&h(0^(`XyVPvbUwijWIDKDs(BZ3p3< z9inEr*v~RV3|^o$ya^e^7|Zg5m7w`dY3j?Z*9-fyf@FWOuBnWOq}q5?j3$@i^(J$W zkJd*1ChVG5K$HbPs}^IX{`2V`nB zT;fxmZD^BiyXII`bR5bkU!R?~K<;0u>9~8e9PF1vAt>u3w__q-<5<%fh(ez4KQYHX z-{ir)-uG=x1Ob#h1cQKrSF}i}BgXJ&z_El({;mdkq)tI|k&{hD$TlJe@f&+C61OoE zVK0X)PSE;;HE#Dnw>7|meg!{KIjuaYWZ`^ggwceJJ5uiEmI+oiK}BryM&J;9}aQ9 zz0?X2N=f+qVucRvBPbV_r#OcWn9zfc@Ta>yvoFVU@1wM&j#4pi9P76n|BQVAiB;JC z2L8=qgmAHfhM;majc7Tk@MI5u0jkv=pD?fJJiP1z2f7mjVZ`;zD)Mk7+ zxZvO1X8YAs9>gtQefZ4lFt+4B-KEneRY86ZU1L1F&iSYMi4=SY-f-@I*Y$c`1E*I zE!gk%02gF`p9{(jM^g1%F0OJI{NABoM30QMLvw^-2OL%KaC|3TMtuGeXE->2kH0uv zZ90h(HkWR;XKrKy=^lISi0|G8n$XH&K3vT6BhXGe93ok$z;2DIK3T6#-=n;B!aE<` z-n#Z*!)Yd$95Z$eAUyn%yxhZX{3Z>#4&+cRU^M_hNG;h>Zu`o(!z?v`RG-!gIOLdX-RMDjkm8ko@R2RwLxBr^6)z`xypRe(gW-r;E zAR?Q;t`m4eHLC`TuC@$h`;O=gqOvlZCL>f4hP9)0YUaj(BTG~{aQmFa&f;7Ez z1yl+tmi0rr%*5t@jrUhQi?#Rq)L%MjF$weRQULcR6R+16{qU~Jk=k=wxdSlJhQ80` z)?|>3&D?zYYV{jy3;gVCSi5MlJmh?dEaJXK9Y6df&?xq@GVdovjb!BYrU&TiP_tv8 z{mHq_$tJ>#$@h#U6bg73zATFUl1jO8GW&Na$=`@Q@>Dr@v*eOZd9&6m$LNK?V4eDVO2@j#)a~1}yS5R^{!K7ntSCEk7={RQ`F{vP`QD!i2c_~msxOOrl+=*7>A^-U{n=6%tg z$ZvvqY{<(7$$_VO8P?@`7`J_^RL!(Zc^O5}@aE@<3Hne;aoB2A0WT1|f84Ej$oD(#OzCioj;@u8A7HL$T<2aL%`c_$bv5%9WlX zJ>9$cdXKe&xmU((y6SeE&5t_sj)-t1&lmgUwx@OwFiNnjSFMHU&!NhxaIjj#)<{JLk5y2@!iL<$fuQD^&Tq$N$V*u85Da}_5L zQvHCx8SF(w6M8U)nnmPR<(_0z?LBH$$$NB01HT5Vr}MrTu=6mJXr0gw%SsM0nSYsv z0=XjcUonOruUqDmV()H)t^!Tur>u)^8$(0e3Yk=+Qolty0cbllrt&VKKr|f2yBuK= zhEu(XCo{NW;X%(XIvWm0#apSra1j$ENcKcxBdh@i$yq^GD{efU82W6D+C_Dpddq%} zO2gOpx%3h3N!|_^^SV9p(e%;7(hJy#rTXR>Z6pu8wz+_HS#4@H$?cuK9R${s8mg@A zGh@*=E~3qgT|DA7{w=>7GFseM7hpz1A=9rOz4#zk_58s3oF5wA1SAl6YrXevRh)nu zBN4UvhkPLo5NW)YAYwwUpG;wj)SEruKI3SvoMPDt=xBDs=#O>t2P!xpvVKcE)sT=^ zhBZs@<_h^-xEi4GXQ9)!{9fQ(KJl!h{6LxZPxl`8uG?<>-=J9;ilrFkfIqpJZ@;IM zQV(Pl!+B^je9J}N7^he*ns~rTU!@ewo5Z@dW-SLha_ZR1ZsYg_HFS8cr$su_-pxiY z)w~yV!6jN8gMxVB{2rG<=$!f8->2WgsJGVQU-Z%()em>60t$4eNp+T;D54Ke*GS?# zyL(i+UH8e2l7IZH99OX@hlj}f%n`}3X@*A|WeI`-jo z`&_6qI{xY%8vowwE{Lgex1N3=f(8B+NX%oc32;B^u5-!iy zfq!`Z1mC54{Pqx4#l$2Xz95mwrb=CF81i1f*UhWvUqFfI_IEAsA(rxfOj0|+jWkaf>i7|aQ{QiTp0v$^X-8nM2DER?3YR(OG631p@9UE1` zeR-NI`fJ{!UiDXfnfVCOEt7&odsu< z1o(?58$YfY0+VE}r17n`MeB-7zHdIC@#FCVZw5~bc&%usy-^$nS&tJsY>wA;xd3k- z>f!bFsECtAc3@~oK}a=nr(X#0_C@m*_0XE^_dfP5J&FA#e36Egc>F^SoY9 ziTKv0V5*v`cm*?GpEWk+-YKhtN%{#lq!VA2d^^f_`@M#bNtj*XiG~!rRG-gdr-sJt z1fVg}b{;412TG|9x}|uzr!KKOhW(Ub*F9ZfeWs>JCItBik-i&e%xOF#i3el0+D2<2 zA;K5&^`Qmc{p>TijX)44T$kp7>dnNLjpJ=m3t=&D5kwxrKwZW5jpuCqk>rn<-Th)D znBW3OyD{CTw(H6>!|q<{pVRzmPFJoZ&t2e}V90$xWBGWE=j#lAzQ%As4BGFFIZ-$@ z()ds$?6k2IHU7X=dbE>`8-!}KM9+x#FSX2{YAq~g|Ge#M7kw3tIW%t#`@mvtncS~v3}qC(%HhDoal>32Ot&xnRN8OQ zcUw6l{Toiu`|h8x95HyM&bO7@n|hbd;_nx2Y(^*yX~Jl@2L&vfqU`Y_4*9N ztb3|}*5h^f^;Q;jdBa^yfE!JwnQcrk^27~at(gF4x<&~aZL%XMQ0%XA1}}(np!cVo zi5r%b=P=;k$~jHai@TpSp_6>SUGXgdRvh7D%EJC8_?3aa4@#`>WM5kRe5S9q)ftC+ znh0=CDekEr0YivnjiXs!w88<*^Qn>Dc4_tl|Fp@?e3_qmqHofYFdXHoX6l!l+~O~9 zrdz)9poBq))w%2UIA*WPp*9KNZO@i-t+JdQkMQ_@D>|TX;iuhiZB{k110&VfPc!t* zV?N%lFfRm&yF6TOPBjn>yI;@8@sb+H@xG^>3wOwn)!>)9W1KTtBe{Y9O{1?^u6ZI( z)hcH^J~Ds345UHtOS2x%4w|_H9#oxUXE<%?4KAxyoe@bXbfG2i(ER9N62ffht+jt$Qy5@`4p7AaF z4#X$lxBQDdk%&3-Q6b)45javr+5dIPB|-uwQtP zf!WL9R!95(=lTuf^4&jS9^PIa*Dk-y^cSwx!l%1hqViG1OtX(1eObFN>2Y>OHQ%dy zC8M9R);|QMbuj_n5A8Hl@DF#95zkBMs)(kOt7yXOKwNQ|1H+D@g(_@@lOU5dI!tOH zBUYE_K)xdm9&Dqa-#?4wr~ z6bK3M8-d zS-zDJgjlE6$`l2pzCCx6T~xw8O0_ERAz~-#9a{Oh0&T{;m3894cQs1gW_b5sk-4_S z0(z|Hhn@>-KT7y9;`0hD#v*IsdfN^GZIjru?R-Yjs8dh6+kZl;Hd_BiQxajU9OH*1 z%CNS-RD`&U<-4G`^t9h=PIDe5Xtbe&(P|Fu>$~j@6yU$;IXzN+*7P0h#xs6TN|jDO z6MQHTiXN!bn9J46=Vf-1lss8E5~}R2pg#ARf2E80y`oN!fy%$9zG?Jk2y3O8b|ip) zfQuvgpB%qAru!)n1U)#7(rKLqNg`;QyKqNJ$5DxFSl>+f8L33Q!bp+6LvuOe?+S&1 z^Z}!o{mXOgvi@iS@zBBG!^AIb-;<}#t=8|8#adh^x21GrdEaCtkodPI-iyl*1_Nc_ z219}>_V(G3-jB-sI5VdsRopHQ(PvNr*R+nZvV0}7KcegTSeQKURb{^!|L_F=P+{(63b1yVk!&Y2R*hk&3W&@U?avPZY+80}Cm zKDjK(ATZ9??9?Owv-cN{UBT;(v&qns=ilKMK&Q#;r%pWxx6{q=k0Gf7u&_r8z=n=o za5PZBi*wA;(xp44mjO-Ip>UGk6;=7^&0h8{dERZ5lY(}A!02aDvLgwmO2Yn~qsZ1u6VHp8>nglmY)ii~`R+5~ zHAWvK!d6po0_nmfk8l)!pXyZq62%#O#RYK!j?j1~?XkYQTBgYEvcS;%;0+_0`9vKn zT>II`bW`S&eDO6y;ZahURcNoB+bk&f(0n#2Qjs0d0N4Y|18oS1(j1OSO8bDeI_^36 zt~gfio7=u5;B1#Y9=%G}5pZgdGikCqy~4O<<@&&g`{!mT64N*wcHBW0JemH$z`XSr z8b2uuB{Mh}QR)@g=k2d%ga)m?Wp4eB59F~YmGz7K?K(Z5H1%WVEOOhg%~x{(OlbJm z`zC#^hx8Eqv@m!a7D8~#ALNni{7zm3Vgsp%0XR4J(p~~NTp6n!fwbe?-)5q7*3QC2 z#n9q|XF^>VP#y01vFBkBcZTiEyLqAHl(@|~xCWww(Gz7<^c~3W`aQ*~)>38b`d98lgo>L~T-v@~p!YG0&0CofnT71#u?dPk= z8nMjAqm6G2_9jGqfhq{!U%4%x{f-6H(sj;9)%SXzEWZ^6+Yc)r9z$qZO%ZONG@c` zTW7E7_|NIEzfe7m=Xc z&b2Sq5M6-p%9|aazxwutx{3^Bi4VD(J2r}YXGHI$|5E-=^_L?Vbd0~6b$pRBb7Q{T z@uuvWYzf42OF3|jWdMST{~H)}*G0SEC$X#-eEKhl*DmNqEb_ifh z4nh76y7?1qa*&(wDB3?&Q4)d^QqbtgJ;Kom!ZtcY?_mX}4I&SI%oBy$J?A6M$U5cL z&1$1JaYucJx{iPimo^^rlEQ)0?|v~KnBDp30i)oc-G2bIH}3V5aK~OOgRcxZm-xVF zOZHcZ7RABxK0ufHME`X!lh+$R8Grg4iH5jj(Mw~YhM;VEwqT4PE*{uEVwn`O3QXLK zctj>6~xbDT3LaBYx5CG#)UGT(s1V^Y*&_G(DR$ z~!M$19$#8bjZHLTk#3bup}t1!0t*PD}IVa4wsZJVD&-2exdzIUG+;mVM7!H#HF_W7tRF(G3!JLIoicv7FQ%RTBtX}cOt>&oHQ)Vso`jb*8r`veuhsZF-zWE6 zgG&4HhpIZW*PEFTc$X?+<}9Bm94A?bz<5x z$|>JM*)-+j?J3mK%x!);Sj2GJgDM5M;@{0(aPID*oPX`|%IRb?({e`JF!g zHV=8X;w8Dip8v+g{MZNLXrG9I1$+?Dc!ZkL^{+DPD$WBJP4@mZ zH~p^Ukg$>hhrr?o?&s(~HUaHUieF;e&)@ctAlYMq3BNP-CSqg30kcn!enss!d4#>G zLaF^vq<%lKyuZ1}1QSDfdS)V^Xj&8$f}*I-f!yhUyC<0b4 z&~Qb0Eq)f>W~(qp0MMS~{Ps&BoSA7fh$M%DQK7m_cF35#%I;$K?almsDOvGAc=t-Y zGCVyl(GzdnhYyfu=(3 z2^kGdT%5BbM|sWjAMNfO;On<75AnvQ&9mdqx2)a2B;Hq4WRCD9N-Vn6_wj^Z@z|eH z9CPx3llAgrKxh|6=@3$wqBx8p$v8X?P7$FiBjS#(Vp|*%GN1i;p9d*0I&}y!miSQ& z&Dk{%%@RQ7lq8AtS(wf~u=h#-v=yF#Umbp*UdD&{BHaSR^A;V}dZ~m{6QJvQQ9uMh zAr?>4$eu#?s?~~0L<>mby=btgKwh4_Mx1&WDZOBV{AGmrtV z1OcMrwXS|lPeGrL@0Y*SM;%+M)Vlp(j(R*v^qU%7JTS=d$TuVCg7M1#+;y)SJ(1Z7 zLIb?Ru@U@XUUELm`HK$vCUa~$!U5kR6=$v9m%|t9=eqwHcptLU?mniAeOhQdpxf5q zvFRbw$bGnRYj!^EK5TpzrO-#n9*^iJ@`8s130L;bZt45`X{xZVmFMRFUdGtPDk-C{ z_gZw^<$#v{>OxnFOehAU*2f^4uD3H&-CPEXB??LOKHA!wfX-*Vy0|vjQ%?HY!^fjA zkSHOAMK4j)o?)UoRym+s=Xy%tjIca;?FX9k#$EP%$Z!~*4XHO-waGT?UOnM-~UmG5Y^>ig0&Z(?yATR6urm)RWjjCaUXML@?4RECzAGi#JzH=uM6Sg-@JpV4zLOZvFPzY; zDiQ&ItB)r|7x;Q46kebw#6La_wv>xlVLL7R&yl>f`CXsk$BiquPrZ*8>U;L}2=eD) zymQPO(-LocVjSueq&Pk-CO$9*?5>GvS+_QuMbbD;H}~wEjDQ)H&B63U&13%YJhM6}{7bpLa$$6=CV0;c4wB!dzA)Lv8g34}qxpFvRO) zTl6sNaA!-gwa*ghp2wg2hc<~6pBLu!{ho2K=kwtmc1<4RXQ1AYC-w~^fYbV5b?>ql zzN?jE{9ASTZQn%EDyv3YlyS?BhQR@$l13$$bc$7rF~n)Hs@5TL_^=gYEx5|z<&L59 zRAY7E$SwLJ@s)V)Rg(2H?bjHev%JqY?D$Y${7Fx?$LoC2mo*|X(aif((aS4J+(O`> zf?Dft{OHm3m8?b0`I-BpivHUR^7)up9zaBoVEp;-Xw0k1*z9wb=Fr`rEQud}{>P4= zcSZ6n@wDD6$7q$Jdk)0iqM=ycq%E0(1XiM36+9dN}B*i>sf69ueS7<$L zr4a>#*I7H0(=SoEe%&YcV~Y0diPW0kBLNr5(!beDkdDRX6LK=mBA`ZC&F&m=NTcG! zd?~$6VTU0;3g$nlY&d~KYpSNiY)>Y!YQ~7c@fKk&a3a^y|$YMmniwS^;hYn;oW&| z`y&9u*ylfz&TLCjB?_Xy#Ed)&h#<3y0&mO+G7BPK-$C_Sb^BUX4wORX$&(Q~*mw7S zxvwV!wVW#_Mq_=*BPX26<+uas(G+>5H+p`BpYlxe=c?sJ>D+J(ZA*Lkc8PB%AdLQ|Jo|nAj8m zr`(JGq_1B5{#?*#+^fj+!GcXGeyP)FrhZwCG=a9w%25ZL#E864&%|MP5OAJAq={_KLB&vDRE3`=KZgiox%)Pk%-i|6y2-!Cz1gJ=UWhUF*Y22o~DY zC&}54m)|)8jVX7919;*FXyZ@qcS51kYaeFTOpZ0@MSJvqRP;5DRiP@-j*u@Z%puA7 z7->Zt>R`f5XCvP~fA~%O@9T;5B^9|~g^e_;hlfOKwrTdyaWH&WH6qVE008Xx}$xTbr8q_V&Dm(xk-_CI-f zh6y$WzA7xhms!JB_cK{zPVS zUgO`A+Motux)1wlsJ_lc_)JBQ`tkc2-v^2)9H7A6*x`5IXa3Xa%Bv;Jwma_~i~vf2ct)2WkJirHiA7plkXu}vGU`g zfHl+HI5hS?ROCV?REGui)m9I~`G!9u3NSe><$A86l+cL6&a(az2U3 zY%lj1^oH?S=?4>KOx^Wd`lVw1WnEjY^Q^2)?aSFo8QR}QePL=PgCty@Z=SfG7hBdbN)iqR8?{bzJ0x8y_8(rp@WP1*1b&oK*=Nwc%m0F+>z% zwNmDNbM3mswFrLqml!pn|HT}hkwpmx9|e`s(pmiF#f7{W^4EKGgW!0v59j<{2)vhj z4@os9zqs?07R&W-N9qwSC&=m5M)=4_=X?$h2pN5civM<#^YeJQ@}2P@8tqoyAEN5j zGg9k@new%{`watj6e?c%cBkrlIh2UUQ@P^jp&5*L@VrLdD5~tZtqyfda}wVX*}WJ} zmmk%~zbXAlZv@Hetf}kZ02LoG3yrx*IV!8yz5XRB>lc8)N8UPLI-ib55W}Daj$fST zi~hus-;ZJD^vJgmL~YU|KFrFpk0R-NqdoRxD0bdE_o6lD?BGXmTfku z3x@AMm*m8zGytyE{@{lB&Ifi0ly*pXTb=}dnvwN)Oh-~7&;|JP~8VHj(Hm75Vz0zxl8W!?k?dsDZ zF7*?_XY{=lbFBpVJ=yWHIR|Y43zH+d&r=Gq!Si7@^-fh%B%mm&0;_S~IpCN>Zu6@0 zl3NQq9CnynTiv=B=3xfD^Fqe%a5h@f%sOJS3(`C^TGBI6JVla|3FOOe)jf3 zO9*u54E)1~d+t+xE>17s93&*qP4YOhaXDS@REvO-xZXA25>86yQ?V}t*?gEkn z?p}<+)3s!!V?qw$D}aN4qCdF|US+8EJ4Q zwihz{G%{tA`{IrvQqCS=iqRtmHyw&LqM?=$@@o9T`^CCL5a)J`wIv1+yC7`8JZWDM z;MOhgdoACa20w|!zpKv&;XO*nmkNX~@knCl^%xAU9*4s0UrGD4_cy6^)<7IH>yF#b zqUbt8fwZIgP67FaZ1=7?JaLXA?BLSa=|8E%i#oFu`3w@{q(uhhf6icY9VDo^Pn=Xh zA)!`o&D=kCkc+aXt6iIw#^I2~SEyB(%zkGF-`4F72$_+2#VWCX0?z;()c(iJ`R%=A zH`$vpf=3JIwIv#yI5zV#!f(XS%-D|J_aR*Q?-M^}H&(QS< zJYo>@bccdLDpi4b^=bAGS2=M<_BzLq zCwzycOwY;QuY8<8NBWYNpF4RP!S#r6u{PNBpPsWA7;~zHnFi4Ml#RoMC)FVwP7E_@m0h3khdi6b&X-OZ~c>$?FpBfNN-upPE-n0a^!$08F>} zkEi4eSc%hxRiMjHt9=oRYLz->!CBZPxv;@@*?i%9iF4PB5n9M&YWx_ky|>qdP{c&wC1c@>ZqH5*dArTrvK=E*4M;52L`=_Ko7@y;q_Ys^6%Qrn;D0 znK7hXlFm7{2e^*CM;}$s$oK-CN`Um$6Gt+o{~KhW9hyU4)irtJeYbd1ud-;Qk!`(z zM~STLBZAsAHbWM_{Bsn-#y8kIf?*MS)8qFTCY8PDMzM4sj`q&?R(?nkboK|H_kZy6 zk1*;k#Oo>Dv10qkr~N@!@2mt<)I61Hd}i2l!>RwL^ZrFg&*5+U3Ho zg2cb$KYGPOET!TZOMlAJC_Lu3vpE#TM4yuD$k74!L3+AI|Mq#sew3p3O6tR}N7&Qc zL#dWx^j5fW1jzWtgq!3!%sy1oPcgau&?|c!oVbw3BzQaRzKn14l3G9Q*Mxg}|MT7= zsN~=D7X5yw1AF7N%g+y(cN)2dA2-lI+P3dj+nJ*Qh-^7p}a zXqHQO^KL@8caOLP%4WaDgO272eJgI;NyT#U#b7dfAq5RlJlM8rsXm#A z(9m^q?;gpV_)h2`QD6nT8A7fb%&@{NnsCR5GjUv4@=Tq8{eCPR8%xnk%bR?0`#{4= z^lpPURl8#9^mS_qx#m37LrjCUG9RHII2}LSvEKip`tysSkN`FB_HKBrhNq?6nwuG4 z!~?5FQpLD-1sRzm`O^c!MT*M0Y(K-X!1X6Z&~L`2Arhz-5gcY_DZ%k2Fyn|?onjfg zlORo9EXb(k7uD|LJRUjVzZ)XB549ct310W>t)?ISTg^B%<;-bfV z`JjEe2^UBmaxDB5IZAK$AA={FW!^pq(M`=zAOL+vrf27MA)Ddxg^l-{p}69C>d>aa zgz194chtwi!;W4qeMiK&)i?wrItEmvQW?;*m+~hX*q|v6#UG*eMUgp>B;7+rBMuHL zCwI3e6$jW(0wZ0a(<9s)`yW-x={Lzwg8xb?w5dXUKjXbG&@zco>A;6SHTO!T6dheH zjAqy<^Oxfl5X4_}`+z%$8b6@;lBS5O4y!o&N!k+~)e5Vw1WJDDTOA{f?k?iu72uD( z^#L!d^msFs57MCNzd74fx7GD6lsxv{=or50Cxp$UyE_M_ds%PqxSX;OT++5RpVyC@ zhrk=W&dIU8!&A_d|$_#b`#`WX?bRTOU%#vSmoQPZu?ay=IQ4% z%8ohNiR8X7+joD8nhRE3ZOV85OV9>lrR)7NT})2N6X9;ghZ_-~yCu4zA*96@Gm^Mp zH4h~7u}Q5w`)dMq6#8VtpEkk$T!QavIsl6jdr7+fhSNk3$T~a(kDS6EDI`E$8E`O2 z9g6pZ1~Y~!2gwhsz49%i6nb3*<1iiD+$_YL@WzqkAF8q)=Yxtt05Dx|OuS2D*&u;$ zUqsxFU)S(f5`D0%5gI!;0viybT#4gdCMIWlry%zKUMRIM-zmf=DMCBR5z$C-=Vzl; zY#OZts~v~PWAtf=8~CL8q^Z{1?P??Ig(-+7hsgpR&-WpXD+OAxS`rR`QhTnNCXJV2 zTi7$t_Mn0zxa?v)qUAQmQVCZ$?E~A}67R3_a*b-e-}QVS4&X0SEv(hN)EfVRUf^JV zZ8Ll|Xk(w#(3{LE?L$P|>+C}r!D+$lhC)g~FmH7i&e#P`g71eguEY&dtEzz{v3aOo zjM?sZ8K>i3*0z7X=J~;?CHUk;*F0=XiOs7tPWQG5ehvbvuumjkp!<00*QK1|8A%NH zi%T<61-l%A`|QST&%{H5LukwHSG)S@>c;7WY`#lG&J(}0btib4$`$R{RlQRana*Ti zbWK0UI$;3&HAnyVSJStXLd(X@>*jfFE z&ebF&%OKi539C+|n!PvO%Y7_HaNny_??HfK_Dp%O0q=Xy3@Bav6W?&PDIlfk9EWSBuMAT+UVQLLTeE#4Iup^C zk9((17@8E0pNb#%(PxQca)HV<*(Af87(FFqnJl~Y4bONkrE5=s zlf0_0y+8u{+~{y>j`pdQQzoWDRYYIv2u3DzW-bWcnN}i2FdP?R85RF%&rpvie}YVb^CAqui6vWF4x5!rtUX<5+*N3Rf@G>UoAzWokOvnSn9bPd0FcibHE8ZpK z!a(UBG25!#Va(nU+4vC7dj35ieY}erXaAfFmh$kw)A{H=r8RAWBdIYklcC0siP*DB zw2d5i0e;PDlZ{uS77$m(ao#FO^bE5V!Z}J=)_}wQaWO8BjXZ;dhG_z7p=(TWTiDi* zNpRf$9Asn`u)Kyw#PIO@CYoF1GUi`qy{y;P)F#N()}^-@BMr3j_S`Son7i~HV>gpSA5O^=M6 zvmaTet)IaV>QU&$l{Z|)^N4O0Yd74EcfGGC7y$%Q$KV2RM?d#0LOqJvHKHsvF&}tWJ ze|^s@g4*|~7)&q{*lwhP`# zr+re-q28+>d}cqxG{Ol;wpmExS{&hr!5wzvln7l`H(Cn4z3RK<%6j|gGRmt@Pl)$U z>g=z=Z5q z!>s~2de%fu&DEFcLq@g;=Uth6e6>yLg9%qe#u5L4I`Xi8B=~Z_SZQ!puwthW1EJ6H zsNK%Pgofyyem`)JyZWJS$>N>0cTgPI8-c!1|8ssMKwm?T=KB3@@)Vu+()%bjTDvck zE^8Sn6C?tEvDv;oeJQCXzq+;e?6JwUzAk~dzR4P~)iQk*A1C@%zcV*KLrmqM;1bpD za6NC0@OFjpw=XjL?;*o_Zul^gfKz-@W|Obc`r+|M4M0sSpe@$Y{DB`Tl%ij;UiuQF z@e|jw#c{WD8b2H2>9da-N#b!R<6+U@h3NYTcy@I$tqMetD{6ct=5PGBnfKGHK3xgL z9@m42`^PC&*te>tyC(}RBq9obpwuJkiC*@?QURZ>M{ir}GeLw2gV4MOJZDx6_1}xv z_GLg`D%iKmZw!2EPehvIM;atw_I=+^Ru*hgK1*pEYb}DbY~Cm&((NNYzD}~fcg@}z zD@v(E`S?a8`244-ptkWUB2M4*7<%))fEW1M8pp<{=%w^AExy-b(f$MiCbB);lXil}GqdY_Z*kPEHHPd_UYvoF@AlvL{X``QDjiWyj|dv&<3uRF-K& z(l<^a@B4k5rS*PB8t;p>-_Q(=vdDV8T`D>KvG`daHJ1U6+4*n|6OzlU!)-d5!4ctp%w6E?+H5&}nC=DC^+dhXQ*|!hWz*%JLjs-|t5o%}d%03P*QBjO$}%?CH^O2Ox`DY9pB zIV=1HEJXr)vRv3mD|($jUtiK;Tg$kn1A!Nv-#;Pz5oo~u#1+&*_OP!EO7-=z9pq`< z+noTuID_QJm254C^GX4hwelj!q}M_H#ug&nf823@?}iI|i%dv0mS1%cL-lsOubI9c zVfQcEpJUmR)+do~>x{zDO@ZZaU1bmO-?Hy%g3WWkfDwbI2-^DoO^bDz{RjCc2L6R3 zaHrr^g|l(5_f`FG!wX6kB4!Q{TuXrG@pth%MkOM{2rv)48#bFXQw(-NhG*z$j+zJ0J1S9V}^G2;&(sZq%7>oS}v}f6W$-e&7Xbc6ly?4db9Q zzOU)5^B&{#s~VgG`Z5*}Xpj9q)Liq^t$DpphQbl6M*$tiO^hU~NP>1*_MuugoYRjF zLywj z#Y>3l=M^vDz^W1$OF~TGlEAVl)LRlMkQyvHA!Ju)`nc)H)PW1X2_kPFv){JSeEtvB zV|M^Ozy9$anSrmR#^rKE^v+}HUdx%fS#?+;<`a)mocMB3=}+ajbR=~5yxPD3bT;FT zopb!YXR2H?>H%e|vW@SL1ERVS%H>N4ob)rc^|RCI1M#%a;z~~nlsxip4;I z^I60y$;Y#;Id>u)=3TV;KqCVI&xh{bg~f$zilAPmfGrS+ncN4Rn_xs?4WZ2Rc_O@C zpgZC#0SlY$2_Jd>h4%CHV98(Ts9J8`QY=NsW4uB6AtT4celXgRXk-I; zc_WLXbIi(PHdthMg>`B$g#C|%sYbq=vL`He%6}`c3=)=j4fb=yJUbrJeR#NQ4-<`| z{qqe7Ld?V*5LHQ3ahLcwXCVVR=`-z^kMx^*~r7Ik9JtelkZJ)|Zq$xB3fl+Y_jg(j}6V zCVW8CbDBV&o+a-9Zj4efBL_eDQD8Vxut+dFbgC^cfaX!yE#9;bdd61b>G_E=e^I_^OsYt z5wWa@#Iw^kh$lk|^%*?#v(xHXbaO;`AoF*K3(%-9wPsh!^4L zAI=74I$n9D72WfqKFZ7IqHVv~UlJ7jOY#b2IZF|>Y2 z{h$?S*S`RI_}A&3a;3#ALdUj{!N&KJ7;n%=qB7bM6$unwFGxA5D=R&vyLnnNng z8C2+7Qiq)Npem#%C-(6RR@Uj;7{Ln-HwFA+XTN@u9vip#{t`iM@G4Wb9D;fqo#BAJ zj9;1<>RjD9+7z#kns~$XJTg}pO#9C{NVDh6Z#4plBP6zCwcmjgRMy%10Qzi}G*^6N z!sbN2;vkr$IbqsW0Q}VNr14tkX}tx-FD42Dsnmk`KGMoNaV__cAud|umj+_w_w)7rq0al4<758Wxatvt8CeU>=sR|hIG<~f?C z7@~m9)K6qw&Tr@;O-sH5lyMTK2)udDk&IGE&3L!$D+g)Js6s{eh<^C6>VB^BWm$j) zZI`NNYHQdF*Zuj~cW%qI;7z1Im@A!AAj27UddBV`r<#W}l=cEqy2sds{iKFZ8tnIY z>JBiePJ7Q2DP)sMaqlY;^JPs?us8A|)K%$JxHH~oa2uR`Wk{T7rY0#E1$`bdRB0^n8p=F1AJVR~QLY(>)N z$N@ftQ9Vnq>@5h7ZD(rwO^|;bCGBD=@h6}~a3y2R27YSGk==-PeKqc?A1Z+QXf3@OL9sLpR zZh_1pV&iD+^rR5yaVZpS&i7_!x}HOD16(;y7^>m-PBH}YyD;EsoXZ&f{l+3&87Du|fPYu!MYkX|) zE<7sas#|K>SX^F9(g|n3;_%w}MVRovdv0^doqI=w`pM`C!|HB+^rgU?49!8(0F-e^P{K$?PJ3hFXyFB<4vjb$hA* zkq?w}ifF$-!nThVFEcl$Gvcos07C3uKe#qNLInZOFBW=8qjesLW6|H6{%#P$@VICa z``H4{ooc^$*KnhJ`sXo*DU^~=;a^pOwT*lw2;qd0!6f5oKO5V#S@dZ0C~K7#7PsKm z9t2kWKI9k;>&k3395YRJOt2j@tuWD|qN^$&#J8$}lb>IqZ||pZTxxX**v4O#KqB z3LTyl6dUn<-$kvQGo9nz*ZF%}x@RgqVHLm8Uly@?6)srpEZ~LJ$z+xU%4EhlbCrML zvIw;DV{|3y2&h#-iT-pHv4Q&BOE_z*k zbzXbyDJ&Tx>y9;yKv>gTjHgo1bXg7FGN$Q-aGnEJAD`)wHlh`SufMM`PesLGuXS{h zr?#Q1yLP9Ez*1iD=s9h%?O+l6!4n-z#r36wG-7YiupKk))ip}VOq{M)v?0T>v^HXI z>$TQx;r(_x$sFioT&{e!#Z0$g6GsezqOKwK&(Z4Uiu(vYL3Js)qD=gn7{kPWe1 zn`ch!2`*waWE`3n=jY^@Qr_L{HNHB!=H64cqVW!m&;0);V9ZWdz7h9^WT?IRT1+3dRwr@d?;HF$USbxUzv6b&$4I45Lb0U3u zW+1=+?NROznkh97prv$C!|Gl18NW57HytX zTdZ1Y?z5+a^6+@1f_aJ;WEDe89BGuPpN;EeCD)(tIu(S7QiRngwX_nNi6Ca6F7EVz z&y~hZk9pOkOn>{`na^N+Sj@lT%AL_fT0ZzdA7 zCcAspR|KOw9jepmTkmHXfne`o=@22C$^i~3gWJ6a#{f4|cd6%$A!~LhlbFPvwPIpP zyCW7(mI%&s1LC~2{sKD^hfM4e8;}hjdF@8_0D0iP-<3eY z^?Zkn4zT&veR&9T&d?-f8IJ4P6&{59S{YL*+1%~%$nWVRyN3SWr&HQ})gOJI^;MkYvZH&l zwXSQDWrhZa*{SVGj%G252;a8V$8QqcBAAl!7?Yi5f=$v6shWcFv?QfmTuOMww~MUt z+%Y0mPpDc}Z;u!)Hsi>*zxs4Tr!}QC3~Hz3&Cy$-Gsd0jYl6XtCl-i9sgGthUwf|R z3c-*SLyj@|HBrqb$0)uAId^omH-Qc9dpw&6n-&Hjnq>a4Um6VUUz5Gk9>6~WqD;#jwu!u8SUKgl*)I&h9fpV z)kH6Q*yX&-=?K%_2QP1;tiK&e;E|yTC$13LzP~Uuxnd(!Rrzc~M2&`up_Pw(t8+CL zklNsLZ|)Kg;y%xA@7Jui)B4h2+}Z2E46Bl~N*8O@9Gt3D()W#ArQg8K_x&b{nb& z>a9Y!>?`Xj=LICZq$*n^8!wbE!w_)x&Lcs`J?R!1 z!Hb7|4He2nwGYnE&TXy!h@a#O8K}hvw|eS`oxXEU<^kGrh@w7jiuvm*(^=Ku@V;c! zgFb=@&GqDm@mIpNz5(z3b+!#M-b#=~n#>^Sd--{YEcSbw#zTO59(UY^ zgxJfuVx&DJ?47?+t%Tie_|nf&OX>QAuthu!I37P=)%ysilMcUXS_c-C_G@6h*ITkT zj^ORxCv3F8fK1PY0ZF7!c7Mg59ro-0@p*l}mv5Vhu(>1kI5s7X{kA8m>}RQt-hk6e z`3l@?%O}vFF1p=`wecPeLZ_C6cp**^m)>mc z#{hl6tVhVz#O?1s-&8+BulAZ&EUK0YimL^s3u342>^R&T-JJIshX7L**B0M!6s&XO zxPQ6^n;``QnU3E_0)wcL9$#$XA488exN*p&5PkP!n?y(g&S4r+Z_n$=unpG918-DrV=dG+ zB&)3l=CGoRPu3hFGp&7QNDrqCAG2aZhjS(*F(NKAI}f%^@v}7S3!LByCc(>p_kJo2 z$5RQ582+BopZxEHUdC;i8ZjYX+`5v8HM)_KA6kRi}&fMKLcJQXFBn6 z#NL_VK&VrsA`w!7U(UdrD)@hfvr)kX4=lC+Ze%PHup4+tqafTr9PxCSDE>E2dWF55 z@tAa{EyC!BAhb}NW+}?7K zhd0*{K^Sm!OM5eo>)-@Z$Mw!sj0RAuGHmXRW6m$byqs(Pfv40%x_g|##yn8epMH?Z zf~4ylmGD@y@EYu=CL*w>DTIF%yO!iywwmr@{We_%_`Odw#>lkAetF?^Ei3H{kza4u z@qG0pjW5D05Qu}(0_Dsb=dRiaA~AekvO!VXOS!;=B;bQyo-)27@T5x|{@5i3#&(jt z35(r59Byh1gnpnaF?=(ZVA*{YbT>cj7bxLw`H{w zCBvsjXRd){HZF45?UQwg6Zw;o?$c{7N5%k`ur}PLaG}0D*Vr*iD^x3rbLoYe%c;>H z+0L%JQSViNPF$HZgYPB?Zmr&8fe9z;jBbi}Pd})c-Con>l0Laq*$fjBo|GdKqBr)g zSqGsWTGui@NM-F=^7b*dAz4Ncv;#MMdfVaNkdREufv2!d`mn$8{72fv@)pWFff^)h zO9>v|;R|89Y4+vrz}nb3PL7=muVB#-SXhLYf?4yd`&(R@N8w$ckCWs+~`@Qzz&%tDQd!}@*^dbXx#Mlz*zT8o^Y_d@$ya{p#`-k z28&9*vqli}-ScXD;=dapH11XUkl+cSm!4(b3cLb$5P#uP01!Ju zc!Z=Mh+358oaE#=ocA&F(!d908>femX5OA_s66^_m^t=?l90G^9Aj9d)ZhgBoPr9e zoh;qjYcIq;-}+ZfICE2o<;U`A6Ow*N*c&^7kc;%6_T55j9Kix4chRSP%)H~{QcjhV zfMQIKE`pGa!*9+*6J*pvt8NeH7xcG)7@-N#r7$vKCe_o0;4s9X~c88pNvs9uX!#)lC9(KPyz?A_YV=<5U3y<<|QJ`ON3qgfB{#Ho4rTPpmDS0B<{&-zj@udUD zE}v~T#l1kk4ms8af#Nx9kM)q<^RMvL-j*cIPwSghUk3N8j~G}4I6O;xQvtKs>vxhs zay0UPO;GbZp|;&_^q&!+sMvm{;fW$BZm6vyQsS2H@>?Ea6%r0PP%kgY35zt8qxj2Y zErNqTJPeWhVETH*TTkn1AA7OE%DbN$A>D=qgD|19;s3XMm7Q&#eHvGPlR3E{+1ZJPhhW(+vwtU)V1C$9$Yi?`%x>e3%}*^>~QKXR0Tr)B8_w*sqB{$cKt0 z)C+IT-CE@8i`t&&3E&}1JCoMmnK($eeidM1&+%VTa0ykC5ZZM_a-kse^qOeiSge>3 zYN>ul!a=ZZPVq6R-!afxeeEEUf~=ybOpjy8FIkwE{tJnvomQt!JL&Vm3W?+da}auU zul0OjPl7nvK+K#>{mV08bm&Bm^Ft&nIW|E4F!Q@eNpU1shIHv>Nz&?rA_1F79ZD%W z4&u%H>R$d79JDDwbhu$P1Y7$Y4!Xj(M^)a~sUoc@OUgFg=Uq83qetFlHXO!Vz3PsY#9?-!;8-r}|qfhy^}$ zn{)$uUpaZ}cOMaF^C*ACjEVNSej9(ts!Z00{xr0Os;c98q&rAbnYAb0ReODmmtO4n zy5Zt?I2oMZ@aPl70QF?d^EmErjtbl?H&-wP0jib9qcBz>@MmQ(AOTvD{3bSjQx1L7 z3)06-OUoa%8;X_nSMrs9^4{2^Ni4d5`Lo-VZ>rl1Q);~4uz_N>L$47u!Mz#MET!&# zLBx8H?;BYip(Y<7+CWp*Pr|-3&|r^e_a%g*-S($ght>LVr|*l3|B3)BX@AFL6z%?S zy+_XWWSeIL%-^(L>*?DiStn(`cH7U;nBR`hboi1M`^iqfpK%PLEW15Z8UcYBkAP;@ z*`fu1z8JAjwvdiYoD>aEd^Otx?i)-;`Yu~DOhe&kl?F6w;l|>%fIO_rB$AzdxE-^m zxar@WEw+CtVYz-iaA|Ox%cdZD{HF0Q>Z|c0*=hEvy?V-#a9!}KaVQSeQoaTc@lc1J zwyD@d;vJE7EQ_rB{apwbiCa35Ld^vh$p0_mhSWU^1A^2WV`k=$G=4KA(mq{fEvpM9 zWVFIP(GJ4Hvx<6;_1$0lN9zW4gtt(6hQdqfFP8Y}w%5YC_{_Kpl9!{m>uIRX_;zy0 zC>MV~>I?YF_+i^nzq9DW$lM&gU3MuJaD7oHKtHk+lZ&zu)4^uj>-!l+Z1M_1=Xip` zcU_~l2@orOP8p$nAAoL>VHkI%%V`Tr2egOeg~3ntyTeWU@UnaF)8o=N#9bX<_PrpD zV=LUJeKb9~&U<>MssCv$FZ&!3&dTFJl$@5I!6M;S77FR(g9ODk-8SHjKO=o8_kC%Y z4bYJ0_{-%nKIJoyU}wL1WF1FMt#u@j{HUv%v^g#09i+|OyL@PpAPF$%p#Cq34Y1hr z%}O3JBB7RcBg7l|%b%~!XY*bblCP0da5;VGK8`xKKxSE^r%H{JEU7PU;rSk(@Xd(L^54OB- zj||{l9)#0yz^5ffSbob~?`JZ+uvbR@WnNB%>0Kn{rxYO7h`MSj|N9h>=_t|f4J584 zT)woF$PyCDS;(Jb4v7>+bUPKL!I;VITRuG|7Wx}ak&Su`?Nhoh=0NZb>xF#?^A*Cf z!p`sE&)(OTh*!KIj{7KLHRtc6On!NSEUhc@-u5vUM=NB@ z)wwk=;%xk_WNyVTtui5@qKqNj@8&jWuj+NKhoxztYhv$7RU-E}aP>200LB2>%mmdc z$`@>GZ}Z*V^lA><>UfEH`;G3?tCVV{ssnE&xbcocG~GsW;^f9MAP6@VF>1bE#&$D<4kN$9!71Nmm`ziynh zp))T5$yL2KYo0aLM&QfcUSur(fn6s6Q3o#v5`J|#+dJz)Ojp)JJP&P0b!UVm(Mty& z_{@FPaI}ue@7yfmtE%%7cv5})#&OlqjVZUb0<9vX9-D&m8fFF(Hc^!M7O z8d4lFPm2Lh7uXmKPLF-9#JD9J3J)u4t9L_+LUo%wo|F1^tBrRxUkLjQ2j;Y3GclyN zuZ$(BGDN$$S6NPREUw#SZY+vEc;U^W4}Y`swx5P($Uxomn9|4jBms3?^5+~mdOw(= zdcV4f^6Ll8{*+t$jNt$;!8BL-)sfV7e+jzt-`|D0&a;U*1-Q&L&N|N{$lm|^%f*v* zN#S7K6hr}Fzqf)e@MnKQrg^1>)Wul$<5^xH(;w3dmq@|?K~)hp6Mba{Ed;sq_nIk+&4HDqMQaAu zdj3qKuqqDi|378=r(OX=tv4(X&YlL+rs~`+OG26z-#kwVj#PAWL>xzm?*iaA`;=e( zVLhhs056>oZ&YE}QA*#9&h@x%UkhU4Ev92CA3rnwAX;~FsB6S6#^lZyIl7ge#rdxC zRFtc@JoZtS)=2QWTIzc(9MzS!ne1JJOHJ$h(!}BTx*&7qr)R-F=W%{&vFGcBit0-S zW05hWwJ&(!pUzmMTh}uL?q_p9HBMiV{XJGa>cu_NtUIV#B8=+eK;FwM##4labsmjS zy1g*$=elk|rTc!<_4Zp%IP(=qSZpV6LJKE@qQLRaB!t~WQwpOqAp*d3fKng%!8O`& z8GAjI4$wG~z?^>z- zI7Ib>FD43{hsN3-g}&qXg=sPj-W8AlO616=kN^1H&GNRlY78Q%&u=F3qYolvS7bBb zVBsyaEOD{!!!=$A+L>-!YTSyc`$diSlX`&{k&`kF2sZdf({(K=szuRXlAypNNX{Ab z4MmcON|vv`i=MhwQ!~@uHUb{bPAfQ`Ke}si`4}ho)DzFpU)DrB44UKmJ>~_(<=7D+ zd~C6G3;v>Ru5_S`c6KlDO-QXC0($n{{a)s(IquV9K|Z*9pczx|8+^2^nYeMf%lm#P z8VsG_M~eJxFULKogx1L>r!xGi>2UYWi*G?LHN|=rKG488--MJaHWdbr8}C7ztvN>Q z{My$Twk7%P8mGR&LgWsIh!~m~zSkfwc-djEEmt242=6NV()`C*B8AS0j4T*`6Jzw= zx9IT#OCLU#>Gb@KWbe_Rh`xZdjTfHWF8Xt`mpwQjave-&Z~ZhC@k%%6<8jEk^+fRT zd_gywX3QP!a{kzlK!af@_0J*J8rimC5@9{!TKyt-Pf zuWo|^fuwmv@29Wgk3cJ)I0HIOd9 zf|(92Crqb3Nn4GgU^zIbm&_@*qCqzfKdamdhvYS%CiWEG8Eq%4+A75dZsu(aTcM-HOG`L{=|b`GTX0ce`L-6bi+Oh!o+_Ro#e zVCOTGFSz2lZz#PL_X7hSLc)YHqZW#>S@1eiI$Ez>@(QD1GYqCOZ5?&#$C8;ol4czx z=jatYQ8b$Fe&W~2DACN!#fDmU?V#|^vf3(Uv#(( z0E7Of2=@a%5BL4lTAKlF?%Z^9d(VUYdZoVGfUQi3=Eg>bw<`w=T#T79{$0MV+jMSs zh}PW9Oxn25oydCuSZ$^of1knzp&{`L_Ag#c!?);^Pb*qY0k`A|3$qoA@dggyg9Sb zMayZTidJ;T$1BSV_cM2w_@(THeHQcq+jUOjO9t>)%V;&5*aI<=n2r zdzBOFIb&OnlBqNy)$=w2LCz zkrL6q-!tIck`er9;Ipg(hc|^tUhdXazw@18&^v_PYnE{sM`IOOCXg zcY6JblB?CPPL$prVH(xTO`jxc5B0J=eZ~8oXIMteKiIRiGMRn0_uuJ=^TGHuCST-z ztMUVRxmd?ibH-&ve{;{B{v2r`k3Zr6Z5c6(-9jEnra@WT^%7xi1EdXn4UZf(KM>S~ zJI+-mt-bmU&piTIKKjD5_ua_&`wuXaXtx-tVIk z%+Q52RO-taeJrBL+50K`uGrhdQ{2m$4(djSur&eHD1Vl(y^8%w$JDtBuO3{JBQgjd zs#S5%@bd^K%B<|g-0NF8Rv>pMUuYy(5tJGg2%`-CA;%2SgO>x>-fk2b@11t}SimpW z^*E^I$K;#sesYjV&3S*U@yG2$b!P7u@7Zi$<9>!P)@EPE*-vJe9CGB^oi#mUGE6@~ z3Q~L8YY&@jFX>kv92vWm5f-BcTi2V4nbrUDPe7d=LXh{NrFK7&W&L%| ztX3XM?vg6s6{JHg6n?BMy_F%C zMWX5WCNeIG7aKnNG8ft` z-d|S-0Rr&BXgY76(1UQ+yrGh~z-TR%!wN2#8(A>-)rKIR3>9m~-IwJ>i-*Ux5cA_N z@r!nXR}HJ`4I7UxyRqa&Pvk02pJ1jOs8a{V%T#d9=X7M_(#~cI8uFtZb*dBq67+ys z>GvbXonh$F`S%y%agGr3S@942)E96*`;T}xIDyT6QcTne2me;ACIK=i3c4x*u|i{H#KS~?euu69{KnQ+S`*a)y>cDQi&`SyoW zh&^PyMgNY8cLZw~P5O4x`(VtIoS4L*Qn?aBSAwJM$A{8U)`%rQPS&CSS>LRN!`)F< z%;a5a#%6OeR*GEi8_6Pn>a6CK)oxkopa_`O5!>sC{sI4W>T56!SEFpZ{d4<}PX1)? z^FrD3mck&2Y|j)%BfnpnZErt65uhyh9O#(9Aw+x@$8s7~Y_cJ@LmAuc zUWL$%#V?wt`-N?`VczaCb4%;Xx044snxQ!G6}6#y>y~`;m0wTs3HEP**897#f&czQe0@nXYBv7`Y;$}P#*O#;H%{Dvc=(f?8j4+G1jj}? zZhR%2XIJK68!a;UMhtnE^uP+QI-tBe#dokoD!{v{%d|CVk_@C~| z8|G!GpHu=~o6b?%k1WH#rbcp8BpTi^aV-0f=>j{b;ViHmeK$n_yl@I!1pX|>Q0iVX zj^ibnfN{EFylC=?cV&DT5JnrSeh+j1{2^|7&W|4Uqoc>2f69CpocFWeYD0Wl!Oaw% zx6X23JYRbtpy7R1%z@Gpi`(e}>0+f53q4jQm;8#LG0vGFNxT8b?vXZ4Wp5!9&+qh$ zo`(E9q}Td@!^pc&1tNdtn1Q{1t^(*tHh57_(4qJrd9Nht1cPaQNLFJia_1m9};VIDONrb-pjjNK_M_FE`#FQjSW2*;oJ-v>PTC= zRf#60<9q+K@MjvgQb|)i7Gz1V_FPW*qt6Gn6g@6E1p`hQ-xWSrKA-h76g;7;#L+oL zea(BrQFS8avQ_!enZv87!L-NVD*HrMWU!y0#bS%@j0-jY4FeI6B zVarJeVgZk#Ck~sfJkUBtw<)VLTVV1uu6Rh1sBZ3Kw065gA^UpG=G2RHf}xv-b&J*(HV9eyBZ=kCY_Qk6%C*Ei~~t))rIJJdvjzTIX% zI41d9>R5>}C6C(Ul^4GEWMYHS{T)tVMcD^p#Q+P0Z}vLT_6wU|R_f8bX*uk|(dJH+ zl)oQam<|A(#wYIOy1n*Cj+>Ht>0^eqgEJ@+RX6ic1Sn6C4kuor>6sV4Vzy%do(0(( z4|u9gv_JR{sQ#Yb!}DZ0QE8?k_fp+Tx_@1#L@ySX1{axI*`&9yb+2%fW_~x`(BFNe zxiqD`&bbaK>0eg0L^nWRO$NS`{k6NriotKEh6-b8Z~x>O0*P6^8daU1=`{4k$(##D zV!IO4ZsAsaeUZO|vW8*cUEBM~<8czLRr?&+hEHNKGS^;nLOpj#X<^b-(hAq?>H<$}ph)(g2Ma%*};t zMA7{;F3&uSMF7Z?2GI-($!Jed=+|+_r;Mi`2R4Ti+soSXF{rM3kI44+XP!~27y8@} z?gjOPzi+&FnT&Xkgw6wN|K*VK6ed*@&58Mi!s)F`p82Ew2)j$AaIiN)IV~Pg`j_o~ z*}H2N)5dTtfM(o-sP&nk_B?cd>G_PmA$NLb)-O%E{a*EZu*0bl*4LZD8fLP}$w&e= z&wtN#KaYIwV*JEE(9#g1ZJiJ0f;H}ki!iX;73c6s3H<2tTNQ?rG8~WlC88O6j;isG zD3I#@0=-MTg!`6o2)=MhHnM-#e#4%!z)23gGRoI_v6krQO}I8h#0Jl6F-wGO9ZaC} zAU!hB3?jEZ?7?21V*(_X(AxqLyd6MEyST*?OSunqCU3qk@G!)YnFp+Mnk36(j>qsto2O;pj$pq`Z^=B&{U5!Oz--x1l8(KdepeXTlFGBnrAT$D+cATu9e#B-&dC$* z1Gzz1!TZbi;fxuY^?PhlM6uUAmLc?Tq~>&JGVWTxyZw6hxBM`lnZ0!W23;^C9p3Do z=MP%=gROmwQWrgmy+GdtKTRz)s`f}X+-A#tvK^bqD-Vn-Rym;0Ki_j7MBK^ULp*VE zw12wA>2qX8DJ_)KBVChC&US(N$(fvfTTqb7F*98MBJU$XrdTcR zVMHyaC}j>S;}M)?yq8n%SFhG~*bUgtM55|4N)#%kOisR)E%kwRFT@62a2znQ8;9|q z*AM(jGRQy{@wVM~jr`2az4{&Qn7;*%wsd4W-eX&O1#nBT{Lf(h;JMtr<1rrzIMjP5 z;DIO*ksp~-I0hC&Y$$4-Lvv#+L^!NnKWm~~OEQw~_eGHu&)FQ7i@`%3V1?q`+s~eu z9i!!?7<8X1^qst%r`wOa04NckY_Ht6=`f!m97(*NhO@{1G+?=r2YZ4K+^BTQPoY>8 zo&y2qdH%f8gZF8&p0<{PDHqh;ePqcTnv@Hp7_N}s-2RU*HJp8MPd|AD%j4 zq`&;!5Gn_VmLT%k8LEeWqI4FFT!WFB^K~ifRD?g9_(N6ZwM1`t#uq%STzz~QP1-~v zo358Tm|q?)*w!v@lTsRf=#wMRcWN&hFeKv+;a0aCK^o>UJ`Hf_?$(=|)Bx{OSGjrq zHqMPvxt^G&FNp4-K(7YcSQ0herRod$e&4^aaPEBgi6jvG0tx5&m6W}B#rBK0O~fxk z0qnB4BS^%LP0$VyI3Ms6DFt&_DD#6=Z-!}~J$_19t%fvYEDOJ1mYnvmNS1@eVlrum z>h_}V3HfN4^IG?AJq9bv)e-JjBqG3RGfuVa z%kq(}(d!D1xBI=kh(M@a$6CHRd&ee&4WdggxO7giyMXDh_o2$K;ReN-(b)5iVlb3XmCB_*2UmIOtZOolK3nX7?L*ln)dG zD~9J5wz$Avd#-*?0<-TKgP>2eSbPwI5^DIy5SYuI8KhT1PV>jKH@gju%Dj_wHC|3f zQvW4ujQ68oJQw~x>8*QGRHd-(?Wg))#jo$g<#J$>$ow6xg>bULvc;`1W~X7>6UJBj zeX%QP5BRHCu)mDRU-_TqqXL_dMSAI&8jbaj=inbFjWI+$&GhoLX#RP()Xd<~LGQx* zC?6d2ksh|P-=Cp*dx6BIbp9JYd$*PfLSfB7Y67-$R+Oau*??uR3GA+61@suejSpxH z>JJa`r+8J;UJBp7n=n~drRHf?7YRCJ%EXNJuHh``>;1hqS$(lnxd}MK?7B?+5%Sln zmeoP+YVY^w&BuXlC~vL(X4Uv(i(7PXPU^>*VOht0{_KA5;sIjUQ>P+u$if38cl--p9PAkJn@iGHN_5K*dHF?xx5{u8ob{D z*{|>*9}tAtyrTtGuRegQ`<;d>cn%zHGPjFoX^esFTCT3t^b6n!+tFPXYYV0%Hdtf_ z|5?7Z?JxaVhTH!W<$fGYlQ5oq z^{@1=0Jt0it?ARfRFwnQJ=J17)tF&{lX;GMGiZpkD+J!HptmyUM44Ky0ASNe%YI%M znv^we*L%`c`-+oR-u$#(GkG!N{JeE+;4W{kwU-X?%6Rm+ezL^tI1C2VOJTzjbAWA_ z#6=EwHcZP^ZpC(i9FqIfC@m_v(HpeuVLvpLvDYJkJz>SQ=KWf&3fuy^yWch4Q;%BX z^>B;saLG}R%mtTBQxu30<=4%jQcNE!fTR z3f6v77>u*F`#YbGb3Z+Q^~sZ{@Yun}m@-+Y6IGDZCr8H%IqQUY049@^4E*dVQUoEiX)=c@iS65TU=uFW6`yG|hO)%vj1(RS7-Kz6SrStIo2Q8JaV+ zgDSBKUtOUv1(_yX>hSc@p=@hH{L$lv%=sS^++7epgr@MQY>g5(PNGqe*JBTTL@ zAE@QA-^n9rwwC}Hb)8LlLEP)vBIVC`XW1(z{GQ0%m8z}D^8(9U_nwVb*dJFG3)6w< zHSw)m`K`?as=tq1Lqo8QkzvZgd3!a-;tT(;C;Pc-H&NYpS1CMsW!DX?%z4?x(JSjI z5J3*X*Ud4~wAte9?N{piO?(>~qAxfB`Db2AyMX_T5Nn1Yt8LBvgvG}5bQIwsy@-A* z=P_ooP%+D)xhY>K>|G*k+RHquhaTG&-WgdnoqnUX{6W?vP!x<~)$u(P`6>7LZNb@e1Fo<%q!r>LjI9q)8g(ol$T*5wt`x5E+YV_yP zAa0z5;`u%MzbM{LS5nylOuP@-a!9rFj`u^u=$XP(;**m~!`**3&=edt)rwo81^fz| zwQ`h|*Ys2nX9c=RAP!Xo$1hm!;U3ltv4S;J6>X_E<=FK5uC^8?Jd?JR35~ z`AO>(Vrso0($G={z!8tdaxy-IbJvH~m0xX%4ek2j4%x#Z*#6dpuU&NLPc{R0LFpV= z8x?m5VBsrA(Kl9g_+A?gN)ADZfg;S)fuG0(ATM3#M(z`Dduo1x4q#;PSBlE~GRj3+ zG!c0K6*H-v9iWd*t(sr4I*(_&SS)VefZ}J#E$c8nixsbs#~LgS_O7&zgjp6OH9Ypr z#W$2a^0OLq9P!TN3BKZ9%0@qs5JK7*pkqjvXWQjb+LJr&XFYwD@valQk-*`WZOr>) zw*{QU5Ax-by{$AD;kcbUEf;i~eMp2dxI>EyK45Kikm%EJ@h0Y%t(S}4MZr}h!|{GQ zyv7VH%$>9(ztj`1hatHDolr|N6W3Um?tH+wLOLLm&-_zPbfIX`@1r|3Bf|;kDhO9W zsKE34QFnM&Uk3YdrkZk(`0k^Ir^V`IBs4SGrKy}X-8X#cWIPZ1PJ8-d|GR?^I2Sckl)DHnkJwSO)KJN<# zGlcUzIPgm#TlOJZU04QQ_8Q#%3jZb^G;_W|;}9bhbtVGoX+U@Ar$gd~byuJy>uXKX zQ(WxVlQO<|vE^`Lct{Gz#rYZ=69#zijHXD|l=psEVN7tpfjJU$@?*IX?nx9!{tNK9mvY|9=r z2fTh?&5fW?dm+?@r2W31Xsj4{_*!sZ>evqkGx=lVPDdI2gSQ7kgvBOr@|#(Db{7{C zZLk}Q|*I2C*Nxg^57#qARg zvVTsNGd8fqtOM(%J3yF0+B6p-d$6U%jrYFG99tz1mrU=`ecx}Uz5|3)7t=9CK>~pW zBMQViih1-2PA@jN{Gj^_+eu=o5vD+}Kgta20B<#^b^kfIGPni%$}b5-ha~9tGVrmJYzf!^L^iMM;H!jae=Y=b4{=uqR%{cu%|Sqx3Igf+@?z<6g_DW`BA!K z+s!f-(+^J^vH=zOo-J8hd7~EwH9N{XxrdsyWbOSUd4(!j*9Vd)F^8T%{*feC$h0dH zi!z*?Y;UPa87bZVcU)*F4W>9zs@1ve7x$(beMaL*u zE`exTn0T@H9sX8oScsSUBT;Pj+#eh9M!0EcT)z!&_89&)shO3Q~iR-7JzPmKBibnK-`3gwBUIFW3k57QcnkIEu-hnA&(XXw2IuB%)UM#PK z2DD`!Z2H+lxG3g4odpq%M^~kTL)6$G1C5RO^gYbV?K6Vvnl4o-X-O0WE(=!;CA8=( zG^We{EFUq$fKe-oRjja%x_rePEb|;$}=>~DO z&-&({^2PYW_(g{e>x^;H8p3?Uq@%yg=HXNz+AM4z$nX#EwgFg5pv-v}}KvILTb%IYg9jl5*!)hvDF zN1$-3eR{f$=1fv5B*V!lecx`&eFxSJ>`=w%ufEq^G}B)|Ul{x+xo?rRw<;fu_|jPf zY_cSHh1B_#h99Ojau|^fZr*2#K)@J>ATJ5^I0fid^8;ELS=d%*4wgdpCc$C_k~hac z$G(2Gj-PnEQ5B^3^lFfebL5BZAL1SGYq;vv3AsL37{|~(^Wwp-$kjdHPDcZ@WZcBq zUMav%v*oV?CY+Z}KX1Ng$Dzy=w{E3)GY;DL`HwC z5A9LUXQ{sivod4|{w32Mrk?wX8OSYkAp10sEj1Ms-e16XQ^kf;kU&J&6y^ zQ(Y^_?t35pz4PCET5mEy*XF zi>AwWDc^gd;lfDZaf^=M*d6x}sXXiDV<_l$C6a}pD)MCl+GjDjHh0+ z8HU(5%_2{>Gb;ypr_632;0C(+6fa^^iwiqV@4>jVzBcp*(dh8cC#S zFQ2n?CG}*CAjjuVRrrbTe9gW8rijdJXO_5MTG!m!4Cx0a3%uu?O>gzOlLTeXbFg|a zO`0$$xTz?fWPj8=rTD1D(J%rCiWfFT+7a{|eiwT#rzw3s^=xfVi(M5j4IkD1=Usrr z_54%ycsFn01nQd)2*BxUL7z_I$WH9{7Q?vQ>YiWQ9y-VHbx|6!ywH1+?AEz|9OASh zVX9Q*E;h#ZkU`2pzuL)g@F17GD!-fS4g8yaT^Hh={l1`BG4S6qM^PosG*FM1c6dWK z%~Nnj4G)2H*JPM0T^tv-y-L(e^vCrR+)q%Db2M;pc>ij4ync_B!-7Rnh;w?PPa1R3 z*f-4Um-c%9B0RR^k&Whu(tpWicr!S7Rr%pt3(|cNMc2sIZk82=D|dDFWv?!D?5v+# zH~H7VshA#~^57V9{5-wreJ$*RF4=4_|BFY~xHFo|@>H|cv|5xDAMZs?x9M;oEj4!P z+0kR9A8BnTyFkh+_;vw z2|`kFskp4|<8pKI2f1%7Rwhla-UhEYt3jhLtjeJU%1je0gC4n~xTvx}pVL;m_nz8U z%59KxEsC7W{rST2c>P~9A z2nu!>Vck!4Cids-?SxO7#P`m!Hw6nAkj_Xa*KRFUrkv5DeohcB{;h>3sW6p=wOl;j z;rNwDVoyW#e~dxM!EwUNNhxSjWvE>Ru{TLJGTGo?40!dG|V;&Kd!pW{_GF2&#Y zF8E^5`Y0z zv?-UkSf;p_P;e*LIXA8+QMKFb+ty#D3)C!E*XKD2RzP@sJvE(Q81v9Mf55?MfQ`=! z*kROD+l}D?*z>pr)%_`l#ND#rY2aeM0tqj3N4W?Sv}S-D z-L5S32>l~6H~o3NzfKu6CEsuQG#-w-#;!RQoT4j2!B2M@%GN{7uQ2BDYP+egWwq=%IRMY~4HKN7&*V0W zVVu)>s~MI17Io_uw_iR*d!eOn-kZDzD&$9J_Nlq2K$Fj}_O+o)o=4NPfR;#4`{gpD zkj`z|a5VV_cTSv_@kYe1&T|Of^1#gMD#3trOHIZIq|g0>rxTuYmvH-pHw;(-5ghXO zOr1A;KMTcYirLLG(mlgEL~t?V&yI79#bfn!5LaaPyut#!UF5LT=MtI2JKv-DHHAM6 zmzEScWr4CPe6{=z)y*qn&n24}9_!*k*tejf3mH{8N?0$}_^PR=1tPKnf4=j2X{;?- zKeiBW&gW$QiUZ29K{;KW!R1E4sqT8|ac_KF4(GrxsOux?rx(<2A z!Qu|2Z(Q^J^(}X-x*$sK#o(YJV!fGe8zPA__M69Djw_v10`H^`$k8(Uea0Vie3bjv z`_DiD=tst+t}#=Oji*#Hp;;F^jvT0$XtkB>>J)%$UdyqLs?L6X?(WW`k~uk-Z{FCu zm`4njIY;+XQ;b}=q@)H%dO0J$#;a!C=JJPw@szLvmb zuu~+?KSohoet0AP0SG*n@TlFlPpLOAk9diZL<#)?@=E(148l?3f`^ishdaGDCv10J zQvh%$XQJ$~@Kdl!hz5=@%^tswly4Tr_q%Fc>-l^np7}J?-TS%y=_j`OZoI#-u~>!2 zBs{$Lgp=Dh8OWq_1l|@6FA!y6V)HoUow20-zJIB`bHLU+r_}Ry6j(qBn(7WvXF0Xp z%108<$r}CZlkX93!c6_=qp-~%$g)P@bwk>%=c>3Vv*qB{p?2jI_j!s8>E2)nT3_GR zR?DHp<+guk(xC zcN)q2TDad(3CWLj+8@UY>EjUEzH`;={Ft@~<<93qqAAB|7GGcY==;M93#eq{+X3p# zIMC5fCD?B*t?T=%NV0<$No`$X+A-CaK~d;{T#i$)w_$>OuQz&bQwSjpq2SYB&w1h* z>(KOOwWQMb6{D$Ey#XNF;Ysw!8`?>fVdD+H4v~TIcDtPw+I(C3ky)wHn#qF4l|{wC z{h4)y$~Rs~kUY)PUXVd;8C+2E&Co@V8~$tcPK_AnW05oW>oTLj5YUGJF5RFSIoeY* z=_OJSh(5q%_kBb?<3SIDnC*!^}BS{^)fkdQ?nz{5H^E3^kirIPr9l zo4eav`Qy1Bfw_v$i7Cc3?CJ^hf}!VrZ1!}}6@dZ!Kv%Sm-2Q=Zh3~CroHT2n;85=t zt9?2=x8IO~Yh)e<(zQ#IBH=gdrJoB(j+d|VAzJo4cQUjN!hV8fP)4W^_z7Nnq zf$YbJ7A=HJaE#Qxu#(JWo&DXb?;niAa|Kj783w&ZFR&-lxU}}AciHxWg!dKv+UKK} z;YfCmn~#8gvJGwtCazpR@41?~lFYvkI@R;Xvk zB}ZEeT8vY1t{-lnf4%0uHWK$E$*ca}P){)@oGR2Ho+q!d z4yH=nk;}&8n^BpI2;j=WK%;kQ2odVspKP@CcNr9rCwwT^hal&DIZ~2rD{LOIH^P!G zm5gvmko{|~gZw|eussE%{u2DNAshvbV%BlJXpHP&bX1=~+|;uhu&^INx)>p4oeUY# zh-M={izQ^RFCm7fxCF1;Y`LMjM@v8e$?R&>pU*_wtc13ov8=*yp4YVB2#1L@3>1%W zRp&Hmb|qwQ5UFn~QiDh4)}0Fz>Y@5}BK+YEDowRNd?xx?XT_6@(*4@^j7f=8nLvp9 z@Pam+5BfzM<82oi!jxxrz%M+sKO~y_X~n6O=w+yh>A+rzV?eUvLhhIEfSiN43 z#OdxB&zL7fSRuKmdrU^EL1q<2z#?t!dV<@R!$~+cNm>lgJH^?r=k+;C;-A<$eilHQ z+be)Cfr)E>QEjl!p9mn&`yPNuUD~s^Oz_&%?R*&3lo8{X+J5c^4@{WmUsN!mvlp*Q z1}WV%bt5i1?hD6!5^S)JC#ZemOZp=|WpYmlHjA*3ObX}m z1jjgBg!~}NM?pph{;03c^CvOlDqgDRmIG1HyrLyn$l9XzY4Xe0cuAHROs)h-ob`%)m;sM+XLd zsnG_W0yD{iO41(9p@XQ@>=zb`i#{IK08%uUBP1Pj`*+B$1LKu1tYXv6mN-4K7?Yf= zSDtcvwQV($okFm@kjsNE9beoP@|p^A8NqwpZl<&gs0&a_xs5hpNAabF_W5(2?&xO9 zeCto{E#b`{EyxknQRkNprF31v{whFq5cs`pUk92Bf;2x55!gvyC8u#WO=Se&(S^uL zEM|eYd~ZpbK}b(iE`ukmeS3+Qy_9{s3_G5TNc)=ngOe`~T_U#^ z@>DxQw|VrPNLS7jN%<$FE+lf>efQjA&4af|^cCnB5=S3bYozf6Y18a>*z-7*HsMN& zR75B&oBhGG^5WSOezE?jQLtrr8~GU&OY(q|qEA1HEQhq|U^j`}J)@iCpWn}{3}P=$ z^C3)PCU*&S;@!G=t!*P%B($#g2j_7T1+hr&cg^PiHTksktYPG3&gfxdO+2V z9t4Z3)8SfQual!hQz=Fbd`{YZXLa|rdWg01VZvVRB{Hw0wjQ1dykL=X0Vu!Krj(}= z$%)z_p*A!l)0=TGo0S1_cMJlvrV4|mZ~eYYTJHDu;aBw;bls_^?X^|UQr)IMv?hBW zX5LPWk&Ll%#Mx4xDmhJXfAOpNvg?Zr*f^jSc*1=6{GdC7_FRJ7Vp?`?)t^#%;1bk# zZmy{uh*^9fEXJKS<1y{&w46AeRj>dqlxIbxNA=**mVH%gMMbl81UxMTSfsemua@tE z6z}#1!B~#f^K0+&Nh`Mu`*+E+mr_EE|6MlB==Anm)x!6)u*j$c?aUu4r@Z+;Muu$Z z^Q>P3?Jytm3K3r)lxX-p684q*w`gOJL^|wwSM$2SS@IN;T03#@^m9|lo@&x5tcp2j z8|ZQfnEnH=cV-n`PqOY=HuJ_k`n7no1g!zym$IQt@${4ao}fp1zim$1E3o}oC;PdU zhRtf9+SA&XOR=^eHH{D|({$*ZmgKL#FjGPcaFweLyh5 zfqE@_U9H+z+M&&4qH=J^yULx9n!AqgvR}2z@OWr< zEyLA2g?G=soLc^t9~zu0G5X^fx?Q*DjeY(ovhvs4Gnr&x(5K7&{8?UOxqL9LF-zfc z3%o<>?M0v&tBFUxfj7Wy^VaLxTGh`K;U`x5s^X>GVuFRfIV}60OL$WpYX2l$_?q{K zf{RZ4p88xTArRG=bR3VJHrvL}_Nou%y|NyTG}53epegP7ZV1NL@kzZ*NxDChAN(-y z*V?VgPyc&e2dQ-uZ20n5w%Yc6x!{n*^04~{C_*X(VAcXS(&p?NpzGGFc-X7d(DC=N zoG1THHuwt)+{$=AS}s2#vLaLa_}n*}&piC6K(z`i^H}e@snL%u8svg~TI$Y2W&3$p zara;`bT>7q2>T{|`l2<91*6+q7^i75?NKDRvK$Q9w>fA19=*0QtRE2H(%a%~6|}Vx zYyC*W7Gk~l=}h6TU*bIzxP4r){gF^RMkh^9qCNr`iDhm}&*-!8V)K>PH#r9Q2vWt7 z5dA3dw(-h>S6x20+fk&R!xjWh#(p&4O|~duiqrTSUqKzJS_<72#TZw)dd!a>f}v2? zcDZmX+L;&|HOL*8_xUaDC8l-T>r{)NH?yL%dxtM7uL?~p2f?r9)L0V8U!}M_Vb#vf z(RbI+w#}~pdlSjJ(`&6;$kNZ}XZGT*D10x6BPJ1SmNHE8x7uT=hy2zG$I*jD1Mo)2 z4|Ce@#bMJmNXHNkdZ`eaIoR^``8Yb?F~`87y`oq@U>(Y@8%a(-U7-(3e8efs`HGrD zIxW4PKGKWAU+Y(5-KMv8=B)In)ci__~G&3NAEV@XT}D9`>@pNV$!FIyi1R<^zXY&rtS8Vha&o_ge2(b0z7b z1hoI%F_#mE$!n8d^q&APtK_JhAfDW}+kiR3nQoNoSRCG6;$9nGg!_qN77bt&uU6;> zfrLW7XFKBrK|M^}+3`KvKT8SWS=T$(s6J+somYN}{fr6et-JgL{#z(s?3Fjv7B>9U zKc~MH$e1&`eZ9Zsc-1Ts51QOdz-mK6?-Ps*cc3y-RD>mup3%>|f3{NMAIO0kbV%Np zZwAygM*Mk2Hf-&lj?k%wSMHtMYsWMrU6BhMdyI=IhwZiJ#DnX1#Yuo)d(yVWizKFU z9+*^U4^tdkyt4luqL;Jun@*hi814dNcSkKWd~f)X)7GD*u*-`|-Tm=+CY4!;M%ezm zvi$wDZwynNu)ovjV+mRSSvz0FR4P znLiz(Si$w&uBv34XXY%Ty?aZaFhS2X`bhsJTfZ%PdQ0NKmAKEG;=n=w`;cix1}4Ot zpV(?|)Xdh10p7uX9kFx;Q+4ja^HTY33aV?ehXx&FSF!;V`rfQ8F%Eb5SNQ96-R>En z?S;kOpIm!X^5QZ+=W_qBqM^UKj{j~ucVz*Qcw)g~KC{{XY% z_nY$hnxLCn`bhbPz+g|*Egy3g97RcGw}S9jK{%UG;(bIj{0;`hx?oY}UwZkNGdDkQ zWTADvtF(`dZJs+o*%F*wi#kBl>OxtV@4cbFmcGu^Q4Njt?-HseC=3$SogBh`D`6c^|{>yJuqjx$i}egZT>2JoY@OCJ=t) zEiW(4p%|8ZK}ksP77PC=?QfQGB6Ljq^L(xD`RV?YnayDizk>kM3O%tm#i(G|IT8@? zI6}3%(crj;KE%Q&@*VgV{$r33V;>Syf=^|5#+k^NC8zQpDzCR?T6}nc?0N5bfXmVT z<4>hzzq{7fE}O0KSfFTvBH;dtYJC2#$x#j&J*I^m3XhPa*-FS)9UsLWgcjn~MS!+q z#VKdLGSb_2HGM4=t{t5yF9_JFN3KX$L7QuKF^Y?p2A@AlH3 zAgNJLe&pL>e=M5jVF874?`G~N`YHVGgX3lQGfFGG%_o%H%vJ5nF5(q3auWg%$?RSGc0=J1x1OKdl4Wp|ZrY9|a?@TfJI?vFi69_8LLE z&+M0Y55d0k2z1{OpDzA$6q9T)R2#T59NlhYOPTi*VTL|-T@eQy&UoajGxlIRqA7T~ z<2%+C&PQ0XHG@Px=I=JJYjQ5zbP2zgMtDbMa{I)XR|vd%s_==0asduv*v_BR@RiUEWnl4gvQ7wwrrOe{IJ4b>S@#wft-D+V6Aw zC}6IAywX-s<;lT*LGPl?Kt^uPh)yuaR=2&mD$Mc|-r#SgvVJC!Q(1J@M|+C7Uk68o z7TP>@ppf^oBOYkeUX%Uv7x73i5E!7z25DQ%U|?n003QZM@bA+ zvo(M7caqdOdzedjz7q8Nu3i`dB5B;7+)>chjO_N{w&b`{2bFFntkpY5E&-X!z~-_WmM=xb4ke-}4D~ zy7|u|pj7Q`DfL#{H!Jc4Ke10$7vD~~9O{>y=h^ereOf2!#Wr(K<&+1^ ztEM7g_UN9*=&=UBN=l^HvNLYkG?X2-ZuHwF9*qNi^LRDkR7)!zCbW{NumpCAjl z{G#*Fsz)r$@_4)2IDhvr^Nq|pUofA!bG_WLf6D#=eoOz6bY@+yX;BpZOPUZKLv#tE z@7@wY5KR!luRl|rG3wq^l@cYIz1LoAu5X^}4{vQWAOjET{)LcH$ukwX{5ziHdmmDl z{ziT}N=aAk(X7qYx*i@Klk=fNVsG`$mb z_bGpX*a8Y|$cJ9{V@JAwNX3I_tu(kH@-RsoJjS{Lotl!n>`<-htDx} z$-Q&-IKAJW&->Le^uUBK5aZ5!D#+zutnOFA#Abs8+Q!2?JjzPeIvAJ23Gt!l^LIun zSC%h_VJVxe$M=u#)XXxR07`{+*Wd3{+1BkyZ$NE4Cu)SZ6und~va^nX1(Y3Rnuf7* zzV`+z?vXy|Uzz^YFYMW_2B(Cp(r}?~nc&g6HvkSgX+D1;A!Z6k6%I28mDgRWqDHE>3y$HlR|hm! z2U&$?v)|lS53LL|Htqn^HOavR=^~3KTV&uyyMDf7WXD*sUc_lPO896m?LbaH^hlO> zn}m|x6VDam6qzF*@V>)^eIwOygn=a~ny=p9niDh(g@N zTUn|w%?PkF%(GjlUcOYX{;7Vh_iD+`Pt*bQD7Pvkyu=f&BSv8wiE5wuO@s4m3aaV` z>y9>;$CZ#y!nDSsO#;h$q11u9QdcV)U@REk94w1I`q779Ds0NO^R;2KtCdEbp@wDn z`H=^MimgnU^Ok2TFQ1Y0!T4f4xU2NV#ITpTbkY_-&4wnAVDnkwCiN&DZ_D*B6@g(e zGY&W7IRZq8Fcd)$6740@YX`|EMFP}D=}=*emVwrMY?svYSA--Q*@Wl69d!En+XB_U z=b+?0>xFLqC#^+Xd@9%iOeIk5UBAxZC;puur<&C7bbKVnfYnM-g=DHati;oNtpz)! zWn0KjqibWCeS-|9!teRZ^Omzedhh_9v3ub`n_20SeRBg+Ae$cS3}=IDf4RQ})7}q> zTAk>UFp_x)Mq|F%yb{l|1N%-aDwr>k9555f4I`2?5w7XCq;mzN^vQyug&gzlW5e~%jw2r~8wo!ppo&;Z+ zwz8K(oJL9a(ZnU&yF;1Ks5R&vI7W5f-7ZMuWVnsxCZAt#HVw1#UcpO}KYf7+;-juy z)o1n@x@+TD!%HG~udu_%{8L9>67&)d=i?=wtN8sIgq*AOyKE-S)y#E*KkktMzK(K1 zl^lMM`DH)Lu#j*{jX0TwJv}WLn?bOBJGB$AAb_ih4eJ{XDT1;;EE$_!ta%|PJLV+r zu~nS^r1GmBU;PtdP@ktv$H}NlaWb_d+ZoR}a%(jq#h3XSHn^v9H=A-)xW4?#D$lTHFBRO8uH}4(?moop`0{(Ui74f#UYeN=?-;%IH(;W6 z9>O?N3A}*NC5D%7<%4EU2g3gha3jJCMzkht-f&YY;Z6GScRGBwwWZa4s0{8$`-9He z*DL7Iss$~g@Sn-3)Twm%2M*=eEdLPKl?tv?-cXHR|| z-WlMwhuiLcE#NSOeR{+{#w-B{vpj`9?qA;TbdKQV4pt??r48yJB((PERQ({DA)lD* z-fl0m zS;W~Xzj%;^kBTbz;S;>aOSKr#DzJEQ3drg!S)J4!HhSRr@2f70ePCJZ&uK|CeR=6paK%uz(2|5ytE-m`@0nuSZ|tbQ@JHNukR_yhK@1&A9e_}q z>G(2J0>u|JutCIz#IJi9EE_&Kd%2f>nibof>D|m6{bBWLwl-u#Kb__5*MGx%oetle z`f!|SqQ{0H>1=)q^YXT!Me&bYY_lA7-0RI+ye`NHR?sjw3UMuDlIGOdW?joQ)D>J2s^ zna7+UDYLGK+wkdCo=pw`yk|W872UgFIdQdU??)XkARk$x(wJYmY1fcSnLc@o?m*b{ z9=jj49I}PE2V+8w257VC`$DKFIgi0R#Ed966c4&lXW3j;s;Ay2_u;kC@>5vqNp{^J z_&>slhxmnw!u?D*Chzx9FWkO<7CB4-yIkNS+|d%F)FPbBEH!eB zY^N3p`xA5Od54ZJ0I@tkR@?`W^fm_bgho3R_F=KYXJ|34?ynTL^+#PrwNkH3Z@>(a z#jW=kef8m zxsRdX#$<_-jJ};!w&6NHO7~0l43p`3-zR`Ptmg;#hoRuEVexz)KHTe2`<=$SpYKqT zR6U}sLZS+#(yl(efEw$6ObFT0zJ$RJ%8T33^-=es6_TadC-xe~)3ag0a9~kp0y9{wOeg zIVMX#B%6Hat?u^R=%mMP%(3?MLjD$BXVHqfPurh$vXC`}c%NlZbq7Y!*l(eIh=j`& z7w;hwY@C(r_g9z3exdfbXx=_916d&v#!GzfBlgEVyo6>?%sSb7&}#4V71X#7w4rFh zTN8iuo;Q{w2ZoGT*#b*l!obVldiec9){~?Fyu*q$q@b`4 z`OVP2l*TT^XJ1B*(1O>@GN1OLpGN&cii4bpUJ8=2{cf+` zbzCKV|1}Y0$t!z@`K!%M3cJHsQjSGVj_|9<#PfvifZ2Q3M>sHST(Wv9(WFKC(^Pe6cGcBU!! zXy&dJOh=u-d>b083y$%Aridl*%flZkdU_X?4rlhq^#hl}n!Ay;(y zb`X*ff0qL3ecU_yoi)7D#=M_Va;`Unt`#QSsx*Mtayi-;&Cmt-Uw{ z%p-Er{Lr3=4_Dej6AHr2T{4jES8Z7P>q~wVukd)i?;~Dek$E;F@RBiQ!XM!6V9hi| zM)xuY2du@{9`xbMhn$l|`5FC;&~ri24pX~s(bakXJqv$@E>lG@?IyINsK-oa`9~-; z!Xih>wJ-DJSdEnWcIWD)nG@x6)$5(7ywQQlbCvRo?;-1Sf$KOqFBSG!-S@i6mA?6J zYUoW<_B9b;Y}buXjO@R-%$DcVflH6m?O^{-68xzpKNNUQkrlL~iSrsV4vHH`Upc^a zwgMZz1PkqX>;hLot_-`;_n>1>vER%2=I&|gmvb8`FcaD$paW)TwE<^Hm}wXx4AfU= z@B_bDCWinFCM5MT0S_+$JH1P|1!WOA$G)q^IUCdz?Ju`x-c(s(r+`RcR{1${&o=^O ziYnCUPP)(%2n@=o66G8e%8!+WKu3N2&N31x*3b3z;OK847Px0GsAar(sna3q>!-)h85qG?+a6BTfFKM@=w0}k$d^*+@SfJL7zl;QSOOZ zQ=l%zDMO8YMGJ`)exd)??7Qd4pJpNUkzh8y9~RKiM=Mzx=Q_OiC?5e)z~R6h%a}cQ zou#*M40dHLR+DU5H_S1w*6{A7 z#u=~(tIp{?Zu&*Obvlw_%XKzBM8Ym$4~fG2%EH2R9}@1eBtjUg$WVvx8)R7|bitWU zf5mcmmbU3WM)ssPm}S{GQ!5`LF${qaSq+elRFaa61+A-^>z! zIu~b9z9?~D<>^wra%{*pcYmREj|&>(wa3N6YFT}U9`jIr-x@7RwRA`?PmckFHTj#v zqRaV-1uaLK!#Peru(XE=cpx&_ikGF~oVLHs@?OouVK3#sa1ToC^9m!ed|Y5n8$5gynHe4V#X zAzNIkeViF9dfD>7E{+i$cHDuACx88z50f~={z>-WH7)rW@!n@8!Pu8{SrF!L`S|nC zNcKQ+;dC+n1;Y1CW{2+`52CUUsC%7Ah*JJ_^_%;96mMUmGAbk^ygIwSwjJ0f9MRQN z?k9raRhgu}W_d*bUtY|F=M6hsvM-g@_nUKn@9|8bjQqKKB29^C3F)E^f}rm`-<;5Y z5CnOyU)UhMA+x~@cw?y@9^to@)=M)B#32kYi9@vL{_^Jzo(`TeW{5fxg=QU z0UUCi635Fv>hJdM2pLYW-O4p$WNqT|;SK7Up^cHG!*`3Vm$zotFo8Jq`yABjlm$lp zaQnclAS>woLw(XXOMbHbaX>)z{qn5Y{T!bIROE)W{)Y2FS+7snwP#)n1T-m8<$5!$ zITj=KolXWt9XSu}QaG-e9Uz0kJ|CuZ;4BLEu6x9zNBrL3D7-E>A{p-1&L88n>0J9q zu@pKegx2K{d+6gC4CCg0zDs-P2cXJFMSrzESGmT=>wGAYc_`)ET}KjqynXe;d5s_J zS@1xE{_~$ziMLPV73FrR>=@Xf56uesm61Z32Nz{;oO;>$0%{VjR$ zT<*lWu~hc}(Au`X*~khs{5w*4xy4LjH)zWDQ;x);U3~X+Az!-ju9NBIvWWf_Z$zy! z-RHTG%qT)VC#kR`8P2hMo(bcyB-T&Y>6I0aK7ro4ChsAvko^*GPWGWrBc1$mN|Uuq zK4DrUKZn@wT`Rq$zi0Vj5B9}Cz>s>6?iZw}*O~n9%GcuYBIrC_uv~k|yWq3r+l4Bh zbkTQ%fd-C(4&m1Nv#1Y~+B`I(lof~{^7-APr$XY9cdlFct?pycExp2Uz((XL!y?n4 z-Vx-?SF0H~dO>rDa!KcHv~PZMso%GKJ*7zGr3CQwWo~lB%|C64ZUj9@~i8^hb=zTGF$>+@|e-ubjYbq|Vo!o&MxTbvKkck+ zD$kkUe%AcY8AfEp*eC|XP?dt--TPTq`v@$qtii%@`oV02GC%_|54i7SrV6W*=L?(--@$IuHWrpphx5ZL~dSRd!H-SZEm|>vK@Fv?H8+y zsFwdBRWFnlc|EL?w|^@3iN>ujhfeW3h1*0vu%KVhGD>lKv+@ege9L#It5?X2?7dl9 zN%Vk`s8qUn7W7=~FT$l0B9P=U4!3YXxSS3c{A6oMb4FQGn9?4_^Rn9W>xd{vF(%Z4{W*K zzpQYEc{rj;Ap3CSAjFig248MjkX7;Us)Kkg_=mCHGr5++X6me7bmb;e6d zvX6q0OGpRPX{A8Dm)tMnFC%?}PFz&BH({C9`Rbl+_*3BT3*=b|+Tn(|2hhjQ|ETnO8l` znx_=;b?RH+V9r5r89gO%Z^wpPGBo%eZXg3!t_2o?)TV&^ACw>b=TW7&Fyyg@-LC91 z33jAs&9hwurVTrq(NN5z`? zjY?gJ+~z_nN>%dd?;LI)Xo<`Rwm>{3NI4aY?iZo7)vi>0N^QE;MgXK)SmCRCHBMrB51r^0!+KV+4()pnG3DiA zWFL43#VQDYyn3_lTDnJR<0O_k`WC&$IaD0|3m7b_VB2;%slCSG5WayxVTCxa z-z+g@89p}|^OT0y^$+a!ejT9wzTLHLE^^p!RKn15`g=Zu5|y96*H)EwSu`_QQNN9O4h*mGyBNO=)zDtB$}6 zmAzl1HrF8tsH^w+ZLx!4>Q01T%9~EnRVNw)wI_hz$*>hYJ8+_(_Iw?Lk_Ed-|J1y1 z0uj?^7TXy6Sf_vVdBB5*pQY;LoQ(kde-{d}L~WJfBnG*Y|Bjn|_CQR{V-Zxs8c>)# zX?%wmmneY^J=xskNAuD~GcCnE9Kn84W=*>aCgej*@q?6dVzM{Ly}6o%v#4PGoL z0u+uwACF;0IWTFvEMri!kE^MZM|bjD?WQ58RUcdINm$9Gr=X2s-ZWvGFLJotJ859h z6t&k`G%a8Dp1iW6MTD*TE65&6>-*-w9j4Tw@nLGe-a< zeogx_jPAx+-`Xua)W@gK>gReWJd`l zM6E{G@#w0qJ;`2hzMm}O28KbaJD*Ssn*3X;N)lZtm z#}Kr-v92kECe`8W_~SkOk@*Co4|mxufMkzsqw7dLe%#K}0e`+bU*Sshb%Te&yq-`E zl%fr%ro$(0=`=NAN6xJ+?g&B5_IWiTgTpq0{X#~AXdJ?0JC_-=`!S72aZd544)BTg zX1aguC#+?s`uR@Y-;G2rk5%vSRg14v+pOIb5-lmAXK;W~ zaixbKew*W%==4di))$!J$RQ@WGLNSjT*mnmUTk z%%l(U1h0)F+4p*!6PC`3^y62Bgfmt*Tuv^35 z>Oq$(uvmm^=FME+FWeQkD0M&-2N{HkM)7^(wI+JI!B5n|-+TnEbCl6ALVwYceOoib zA^cf6bvJl2&(o$3-XU%;x3TAqAH0a2VGto|7=k+yp~>|Rm2ilUcBV2`=F+J@o{A=$ z`{y+W08%0rG_tg$jupOOo_xFK=TXqF@ZeUZgK8Y3^T&vqgIUgPruC z$uGS3fyd7tJNRcCrdzt}&-VaU8hv4lhZ@2nc3ht8Y5Ap?Erw)gc4D2h2ZvCMqY#HM zmMh>R@39(T!{rmd_DNn^8vXi4FJ-QgT|g`BrV<1k1u4l2QOv%K3Gr(!V|mh+Vd!$r z?{lW)HDHUOetC}il7pB^gZE_rTWjev0iOQqv&#*<2q}MjThV(M8VCCzsX*3_<3b^# zphk1(g)DJ~1YJ^7_Q9K4J-P%PB*pmq6g9+Y{Qg;$4NK7dv2JKhyGJiP{4VE( z`}wYYKrqZk>>MUv^^}m0Tz31%6|J~837kF$&A>X(pHGe8z|^%Vq(D4n=I*_bf8Jh! zUH=B2e)6+*fW;W6r{BbtcVCnJ*k2nNRwdn#fS{rG!?6Q^QOW%6e!@G+p4R0mxz_^~ zoo*nY;ex{^Zv*6mnDO@KkCe1m`aSiH0V109J3djkJ^+*tZw>suJ%`PY^+M@XTz|B< zfQHGB-UnH*uz9tEcwOe5Ln=?eyL3_%?}wDbVN{y$?t;{8JW+lDWvQjZ)tpDAsUV*|m{W6nR7dhWwVW62e< z7@sWapeBh*bfVv`;Cg&H?o?3DtpG8G9QFm{mDU;to!i)HSVFpgY)bDKKSbE!5vk~r z@!Zg-JerQ&(!K=%jrSv$246X5p)*Dy+kH=Ri2ID4dN1NM}O^PFvB=l9R$@sm#lMEIbA$|Ux4Zm(LI`XWT z6okW=Ek-RNVm3fj`|7qc=3mfya6qqwFf7u`_3C$X-_>Wo5s2SD6OoGx*pK{7oQ<77 z`?blACAsDBA`!mHurGbusA?N)6x03;-}34CjNLt6FS&=ge^{ict5@VHS_9$WrZy);0Kc}SUua5 z(PPse3L1CVU{Wu=f!5Er*mX~E5_rA@`OsWNm1%YFPJ9_*3lKFS5EB@T4YHL(PXTj9y*&KF zLhJ?T4MmxPwm{y)a%|?Kc>@0&Vv%OJ18-3_5Y=Mk1bg5`$M^n?S|0sH>rBEPt|bcKpH7)`+D46 zi-ZZ@tkLA$;c_^(KjTZOg#YfpEbC+1uKs^W8TmSt;dfs?c_kd|MzH*S?C%>SxWiT; zOS%`WOL*D6{^TB){tBxM5O>|yEo5trGX4eBOQFmnzx|3(;%}{_|B~^Hg>hLsFK1ej z!pi=p^;JU!8lG!dS{~^WOTA>O+c>Lb9$MNg0pW)4>ewVw^rW&qGAWW}Y`&q_u{Ex) z%b_EK!{bhUA<*Ry_s`kq!tGiV;jj;OZzzt#A@-@qp80?2$OoC!6S=!kH}~6lKmO|; zEKMtnWvegysh%$AQ^x(?pxwCxg0;3J+pK&(qCPythhy{eT%nHp9K*j1g#ZKcLPES= zkNVXJ{vlm*2ks|FZ$JH+iPZDi=%2_J9^~S(lSDDhVVaR$exIPPTVU-H9kREeh_8b4 z0(+BLK@|D81C6q(DJtbN&EB3OzoITxOp@zcbNI|iF;i3NA(xHwvfwvET)4y;#>UHe zUkapOq=C$}E!$uFOAn`?5Jo?TMeG*gVRuWzvZ^WFzix+CEZ7Dys?u2ANT7-ZU(hl^ zcjf2$NN4S!I0U^vmAXMoYUJ)G%VM$q?wFoBb4+r)UQdu4P{HrBmauOmMgK9q>v?}% zSn{an#x&8caYaR8@E_)EE#rr4x>hO=T`AUV62AzN_+vKAP^;=@~@1 z)|rb4+S0u5Asue7hY?wncI*+f+=-sL2bbc=edR3Y9nW<4dr$u?2QeeRt8y)DjhD*x z#}_qP;_^7rnfitnEiX+&xHSMVzc#InjYgOr zt9A5R!JVl=idB&BOTot9wkzRAs!!T_woUTzzDsKc3RKFCx4tqNcOTpym=c5$ni72P z??X6ioL?-%=5!plV1B#lJM}7oAV$B@2Q^9~MHue!Ph-lX&)1=dJ(c&W=X32q}(fCc^&D6wKV)W6Cea`~(d2wF%Vx#@F`!H2gYv9HB|9FlP@jvQ#_{yLPx=j84G$;@O_$}Qu?Yz%t_(F?XG%zSpsPO~cUHh}8_AqNp z74th+T^=75L865pQogahWKTf4q9o?~!J~2C${sk`ufLJao?HHM>taK=tI|iwB`<%m za5Vouu-U}kE&+Os%gXxP0;;6=k*jV@em<@9_s3p;x@erAa0C;!1Zzt3YP0u!s7-Ia ze|EF$sVw%f(%f?`Mt9|&xpEUpqV!<4N}7)re*;{Er(lFr7H8G_V1z@-A=f|9hd)fs z`edIh+!@^~Q$9MmUvp0)%5TXQUmjhfk2n_B^8Do(3|_&($Y? zOec`)uQxV%z{2Vx5AsL5CbLcsu*IU+lP#KqPrtM4tk%SMDB69JvGnxnQb@Nv{SU)w z4xEgAZ$Gg3@&2_BZqTQG=amW9CskNrp5_{a82e3QHt)!rsbG7iOgLqE?+~ytkT%apZ&#WwuehUhw zqG35cwQ@)Q6c6P993Q?2Efk+~@6fN@)KAJ2x9G`AT1_}AdC3}%=II-f#cb#`STU?Ffq`LPU}qx6d{*jLBfhaG z=OZyS$MEy)etQ)OsPBPszR`_D%p$;eLLJ|{q<01U5HT#h)Yqy^O3+%*>Co*%-XeL? z!)&qwJ&-ylQe#<^FuZ<^TPRQW^Y=X~G*=eZCDX!tOdmCVFn-&cJo3}=ae8ZeBs+(0 z_8q93*<}JFZRLl+Ks9w}LRMGzoHj#HU>aKk&Q1RiOjsdMNq%f@^bKMpR>p|SER$Pr zM$(U-vp>ROuxXG+okzt}IdSb!uKz@Yvvk}eE!O7CxVQ{7p+4nPABGK9gZyzz{y5`dwcp#hxY?~2?4gG z?r|HF+p-aPH||T&vZiz#luW`N6n?A{7w%6Q`T=b(?Ji*uyrJj*+|-f4aS2U~U&2iN z{c4_yW&_YTrgSD#QRrCTS>hYnffwAVh3S)D4Q9j-PdARlv_8}`Q#@hNB6{tBeMrne zkcW@Y=-R`B7er-Bo0mDP9UqTS7&VWf+CL)T-Q??d*&0n7>BG4Vnrk)^4mXDJQDeU- zuL&2{`i0BqhZMAbsSJVkTAqacTNL$k#*)x`Xh_*$Uv22=!c{pPI&gg|PkL^ShW^_> zJ|ra9L7H4-XGR+`Mm70%>ulFPKQBq(M>t>@(FOBOXT#IV0*oY?Ur42f8h&Vf$b&t^ z)Y0K4{yde(7%2p_wg=0gh*Xy94B+|==Z>4SemP6c7p<{BL}wu0e$vj*_)mJiD5q7gkFfnjLu+9i*z>6u+vm5z zEG-l*x8?~NO+)^h9gq?ppZYdlKUHu|Ujh4AUl0IzaB0v{>Bf&}u?9wzOV2aoSPqZQM@7dgqw5V>3$FaB(|nWT zBEQJRE$fAtNy+56Fb8j6`TD_o^-rq*cJ#m#^JR|C!**Qq`7~83`YSJay(Gw&pb(u7 z=Pz$}`~lp7S9*M{f4#lf2gvkf7@=W+3eHApe}s%n%I+!2Sx3ZY@>fTLFcxEB zcgk&&P`LIZge-v@Q@FJ)7v=n%403op_O^KY-DSIIM^E|)R^4!mr$+dp)*v? zaUQRo(NnJHx678bFN7ijlc8Fh1CaJsUi0k)U%T+2j>tZ}%b?_Y>qv2Se%a?p9EY8# zt5wgrdBP9sfwZ5G$M>2G`|s{=vQo}PUjH)n{3`Bi!2>-;OTA!5a6h+EF($Q3e5p?? z-(Q#HTzont)nceBYfzNLKkz1WoiF44 ze7B6hd2bZ+g-Z~y-{+!F?>*4u$9zg;U$@(FPn5u+zH!>9{UR$M#85)f{m2$Ou4MmE zu!_c8vf_>2x4k}AYhIq5?UUkNHv5MSOmIt=L8doYrC!fpGBvK0c!f9*eXpoqEl=DBM+T|(f|1c;Q;qVK(jrFqiJbW z_ynDPQ{y_ebzz|JYt0hhWAHow-s<~nM+f3-W(UX#%kDL-@3P$<${H@nNvw>^-^bhs zLNO5Cv*a>DYTWC zhFL{2alWv2IM4To(n?Q)m_GAu+D|dNFMy7QRM`8v89aKV-7(x~f_!=4H-G(d=v!#< zy?73eMEH^G?5zco9bkJj8(ruiL->LAk@#tQSJwFz2l4^Z-Ws2X;Ccv0`1{%Wy^tM& zp`{`-Y0)(V1EXVk zoBCT0_YHCq_Dy|<$N19X>UH>|v=j#1Ud=oA)7?vbE@@B|oH{aKn;i|bg>wO;2rk~w z&(tMi%ldSbvH0nH35i%$L4k}aS=^`dfX>NbahF3S)0F5B3<76mzeVS z-pV=A>@zFgp-qjx+bX0NcI&CgJ_Vq~cuUTx@r`aTf`T#+m`UU1_3c0(ogP~N+0m#h z$hqL{tJ2(@okcHDeZWODNFMpizt`0RYPpXKhc@)8c)1*ct4tV2 zFpvD`R!rQs($IS=10QbI&Bv-ctXR)+&^@bP%L8Na(#y+i_0cGI*WXxQXEWq+_L&>; zjZnVg7+n?k?x+vlgG~F;zN7S$eNpvOr0(;g_N9(gmrGq@D{8v$3!@0ll4(GDjc2t6 zb5o8z*rwt+E~-8Hn9V{81KmOg)v>E!&3MW4jU+C?NqpXJ4dqnYZ})w{{@^=o&*Xkm zALKecc0fzPx8?qf!!g@{dd}vPZ-0Bp&YCUgZ|*W}z4>`ibZ>UEW_Cl%)*6S);Y<9% z!bSK`-7CvG0R!MJ-Sv)p(Epg40|1efWE~t4+HU^{#{D{~?5ZRY=6)r3kjUyYJohqT zRo*$1f4a3EDwL23Mt6ygNpRN6+v+;CTYF%d06FaVewY*S@H`OIaJGE)fir|GP({AR zQ^aUbfqOgJc;S^jR6z*_zeSScK4PfF3unw~s7LrRNC_1jlW;3z#?AMT_`+O{R`a@{ zH6ghTu+773$=l-D1KEq$68F!Qxh7_zbbrP$13J9#VW`3Cgv+!eKpj(#@nQ(&Eu`q^JEaIQLoagC(W`*>P_7G;CD*S zalIE*>Wr>U4vjQ}`8j>m!2KBpW4rZ4fio_8)osfTkHbNY?u2mFYQ*z=>*y1dG#S6A zqADNvk6!Mx`AL2&#b2a;PhL`8zd97CB1Qduh}LG^Jq~-9Ka)&9(<}u|p%2pFTFU z32KB3_ulsr?15IBi#y0(E-jcE-@W)*BWsT+_BLC`Y$gHKxUJYmf56 zonEe<9O8&Y>ksgNiDVRmGpCEmjd$cJyx$fceOp-L0hTk!0T2o=a0dS()VK<%L4#$7 zVLsgSt};uw57!d!-N(gSGm>Cdew&1x4*U(WV;t&{ms&ccf^H6;H@Ic}dUNmO3vC|~ z7Jt7vAzMnmy1+v|0jz7BFp5GwU*8^q9@50gXv#2EKc@AWkU>|L9+GrS&E8e~%Aj^AY z0YJbIR%pv6mnGZ}C_wc@E}J$%lO&wQ`*3bwsM^A8af*krn5B}vCq^Kgf67D4ycjfs zsVz5B*Tj!#DSGm8i$q@hBJTH@1ZA1S_$}!tnsG?CKlH=*cCn^|ll^?FAI`QM*4=YO z?TP0sxNAQ^5VGXsQ;nK*4oR7xmznD`6~1k{IoTwdN$%ZO&aLYgwk6uZJKQ;&JDL6u zPYfd14^tI3BwtoPzih8OB68r@TE%B;3N6?lq~6cO``=*pIFcU^usAl)w3FX{juJ!I zIOd=A5|GJI;rUK7eXbC@Qd6drGDP8A9HX4P2CHU_!R2ZyHDFEaTR)zk#A3eABukWV zoC4{9zZv-!!nW&|atpokthIjAG}CeW>{kgqzh6((QYR$(%Vupibkl@8JlLo8jig-2 z{wnY?F!R{nj?qlVnlJ-NJ+=!26b*ndGe zsBI^uEZ&OyyT)jR!YNqD^JYj5lV0;AzRj{}2OYPM7;B#4|4`dPIvLK)yuQi`3-QNU z1~a;cCU#GBVb9&f99zg81|OSg^&Z#-(7~7TDRiQHxteEHa)W`Bf|oDpjD1uxzIfEgL~FcxZWJaUIGB)C z-h=&)qaSi1qzl^H;qK}6NWuyzQw^|uPdJ1?k}48Nzl`UmePV8vnWfa%+m(iYH6j?1 zBfeuF089aT(5L;p4gsFmJ3Iq}bnN%DnVgUBhJ>E;wAe}WyLP3xj|mMu0=8ch8a+=G z>ZMSK@1IzC@SVPOMp*e@ehnRP0gjre{m_Y5e4OU3oK@lWDjxH<6_P`<`H+o8;4Z={ zZ={=z_?S^!+>XlOo=`;J6BVtlld>n??LgE$PM&#idM!syEN9_nc5smpRM4m6SZ>!4+!%Z8;bkon`;>6FK=MS)d$ zo?o&xu13_j;qr>0P)5<)P|jvHE@iMTQZ#0x+V3$G&OShwQ1EOkpFopwIN6qVdLyQy zpIes~Jb7{oK!eu)&y#{uvW zsqTjTD7hT0-1K)7B;{OguW%Qd4XPi2QX>!C3_7)3^419bO$XU5L>#NhM!I>&rxvQm z`nV5F$;|R4t~=vA^*`-4Q0G>4ekW=VNKQgYR`}Nx_F(2@hx+(p*iZh~Fh_aZ8c@5= zMJVYP8Y`)RIby(b#*@*z0JZz^E&3`)^3T-#GrrHD;ug{`bTQSRKw}Df3`)XnVb?1Q z@9vm`39A=gZy^4$NtmOLpc34PmD;mMkeWl~-sxsx>^`v(bMdmH>=E_*awzAFp}3cR zn5`=M6Rbc2#}}_R6Q`Xe(JO? zppik3_?t0tc@_PCd+Y?U7((}R?P!Wa-Ka?c} zi#qK)t`t3dapmP`)lBG#9sx{fo&xiV7~kGUt?~n+7N!^Pl1DU$4MDH*wURT3Li~+R z>rTU=+Ulh8+B0EOQEz#{eR0D1ca`G=#)Po3#cr;}s%70_+>YM;-f>y)7nf*c?Kz{Z z?VKX!mA_a@2*l?8Oq#E5*1&~$LRP&vb2J=}-|16N&t=n=Wq)!g?~#>HW_?aFug#5P zbRzoyv+#~sW*;98OiUr6fbaf9WWSz^;s&Y@YA9CPMv)Eah|=%QK3& z^lFNw4Pv0$gX#epGEfBWF?(tR63o(*8x(pg?h`C^pTn$QvYIO0<1)-2t#r3}tI(R7 z-leH{?dvN+bpu#M((j+Yrl1{-+;fcQO-J({0i4}ZpBcpv76{eKUJ0%|Km1Fqj zM!3%UzWDceNG*?zBOf5?28({IZa}3V7w;5wrq@l|_kNCwjAJ-8Ki=4q#KxWz-kL9Zu{!s|Pi&5VT5PCXAiBP!pA~iUlm~ZMp%;8OXBd#ZMMgKyllrUSI z-kKIsVSh>CQ5Kjg@Y%-H0&B;*?6;Wgp(|)a^|MNcb%hR?-`hUEO2;YZ;pH!_FTkYv z=vm$4jigjR52l;a95=eYA|GJw$k90^HNS&$(SMUuDP{|Vn0JpPW3Jn5=EqEeLX9Z@!&on|^Wz_%hK}@cRwLS4W{{G|J&Vc@N$& z3j##dz&u@}{n*TkfYB;P$q_@VJ+C8(I;CDI{YKG#1AX&hXsVl(-I?&M*q^Km$Fm+oCa zaPrBI8D}A#4q(MA~&+E~ptn!u1a*4@bNZ}%$ zo=K*b9;z3u&R=%)v1i+0GWh6H0_l9qZ$_p$bgB`qTG{L01Am&VY15f4rkP^V6YYFn zAMeRx0?H@~5wxuW%M1Kinf0RuH6a-n{5CK7vef|2mRL?mxU6!SYkQo^n zahGV{&_gBy+}PrC)oY@@f|U!69!S^DjQYtzu|zqj*lv5QrtNcKzHBHu;1?+NRUNtj ztPH$K`8_=bVuh8p`GzFH3U#0NLh`VKS*H&Jk)-|*ea!CRvg>hvm$#e#3rXhT8QSA% zU8uPY*3R`&WqH`rWjTTY9}5rn_IOLL$84RvSA)VU0=f#~;t}4^S5N-@(K1gI+&twI zyarl&wP&|D+vwf^2{|_4DAgkI7*G_~dpC2SVQmdo=$_?$1V?>K@4Nr~Y9@?iE(^_t zCz7d|55X8<6XK7=-EY`vR?ovm*p{V}$f>{s04`xp+CR>RNjVL>$@~&ws0jMb?PUbyW|hY6{=slN%uwJayWg!0>NY({mFc!9K_JPwEKz+g6Hu%3oe+{Vn@D@ghIM9*+|0R7h=*RmBkjM84+3__0 zY+M*+TQ*uyQEweu<>^*tRYZ`+9IF>Ivy&ZFM@@dnMX)e$d^~uM;i%f7nDdug7~g<3 z&(!g2#}C?`1?*PA3k}v}WTLz2i^L07f}hfrlIXbOXAaGQss-o?F^3=BFj;)0UN&6s z7X{Y6r}3?jQh>dR zdggA)bAF1yceO~+oiNP_wcnd3oH$eQ@D^ zsa~iD%?Ra&&wi2A6f;lM83IPj2F8~7IkUs`4Z0b4Gb*cYENx8c9u&myJQpVou+5i$ zgV)a!@TPZMcbxm)T7`{O!+>oooI^Cmbx$`~{q~$kc(I2pwQFctwWii^;Ann}AFeR? z6I_>{0;)|NcDXn{spY{KC1n{1W^Av@mhW?H)xlePP-t{pJ-u|BP#oQ|E?^63Plnu5DsFAT*UVNM*Jzq?iX6!a3UfI zU|bPN$W+9qab4O@Jfz`2RS!|(N56kyKV+lMF z!?i#S%WzyN$G2eh2gum08ZT>GA4_C6&#M!5r8|A*p&OpY>-hGHy?3m32AVo_ksp>W zpDf^gvV2MvdB2G9`xaJ`o~8>Y7&TUs?YN{t^o#(Gj5MC6!#8#AS(x&w2XB&I(d@1J z8VfNf2nLeWWu9=w_JswVirl;y^uE>j7}x_@p@R%XyrNXfVeS4FHdFabwC7ROXP_^~ zkez{LZGQRZ`MRYtije8+eH8)_qu9)+y`h&1jYTsp?8tqXJDUVMCA=MvtEQ;7^XG8b zy4Jif_qZTmSK@RVf)YBldqnd(2x2Y@Y=hw!-$Umn-OuKCfTB$L*LQ=z0iH0xPsZ`W zJE?DzNHF1_uE;%n|8%3;gT~4K%C%=tDf;&ZyAIy1zGB;;y^I64IFMuO)dSkyH!@XV zerJ@UJX5~j)?8o1iF@+C38rV|*gkKT@bqTwU*X7h{?(GyqOw)Zofl)2^ z$4?A!)p_hxR)u+fyy}(l!+iwy`M03&hILWTf3&yneA%HaycrK*Mm^W330Br{T$#XW z26H#^HO$|56`?ydWd_PK@MSZ)^s6vld+N)>sp3HIh4~`xUkBg330LE;xqIwTSN*z4 zelfh~TyS&sgfv<`d${r9O=ufWOny(HhkjJ`yAi0In9F050*4%j?0o7$@rzr$EjI29 zC!rE>lrjc7NNq&anW=VHs8Qiao{%Wq#^8&Hu|h+Sym%hTh%%s1zo$9oo4Wrz^dKr! z7Q*8zU7Ob+-M+;4tVG5O!Bje15bwm#fv1j6LZMXViAgbUwRrVx2Xd2?IxSKb)c;$;L!3?++$sXrZi?1}8NXKaNJ&gc&>__gc@4ukqgK?bB5w&x=(X@`mAehtjb1 z;%DVRbHblP0P$JvoTJK|Umg&gyl=M~%UthJi`tWgGlS%8T_I_bUp_-VkR0K#=OGMy zti3v#JyA@7q01Fb|K{e|HV~IHgTU%IuTPl}kGPSU@7<$KxIasK z%318e;Y!*5{Y=+SjnHZRO)UvFV`}Z-pW$N`avhytk%F8GK9+*MpN)8=Pbq9w=BwOu z2K3tYq~{no4RyE$JiT7GRfdXMHr<|^5}P2)TEG_2&szg7D4ITuvB--!WwBVKh>Sd$ZPyPAR8F;z7LRmXVyH8^hPujQX+1g04C66m@; zW^nB*G@Lv3UsWA|jO$5!mwlCqd#lR(X)|kdca}|@B6lUbN9%~LgP|$zGgCB<${yVd z`9v$fdF#>-o>ZHuyXaI&EZ zMhMcraMri?!`#o-7g>pbtD)Gmw#Hu*$!+&F1}>UJHJ-DUCTPMzHm*{}KCdq2;b$Jd zw*V##qN@ZI6xf$n`Zy?kEClHQ>NA?d#r=AKHg>BMiG#Th<5e;j2Jv_{x3v0fHBI&-dG=*+CJr(xvLw|B|G9 zy5r!)Mtg-hq?1k zB1N(l3(i}Aq%#+rk_bUZ-5xhIn#CvmwVcz*Jl9QjXI{}MAGuoKr)yHl?<<);*50Qf zaBXhQMS`8L$B7xLkEc41_5?MTEqjXV?bQ~>^0na{K)B^znQ0ee+M}Q%UT5~&)N)G= zN(npLrC;SEV48O;-+n9gg>Dbqh9x)!!q*Fn9*yTxH72jTU1_S%w4Ma2?nd2hcyk5L7^TvWj|#YA&`E%8tO+bF8c+oFraPGQE#OaSOb*BfM70_r>`U%&=nAF4E|del2{l=h5HMgG|mhck8)o z`Kx+&ZW4-jTu>1zSp@rMf-a;&DDOdBEG}DJOJG(LH)3A}*i*h-eiKG7`^H-G`t2F! zDwaRhS3WQUksWAwlw#zG+5#6)41cjbZCR6W-vN*DADG6J)aJUt-#5OOIlstbc0OR6 zzqxRhJ=0-Ea!ob1u0L~B{h0_#zFrmiU`6S{F!?Xgm5volFH$QobCu&zyux(o;OtiglOti7Mu=y~n&|WRpnnNsv4*+hcY?D=@E^4Z zEYO3>iUruyvyF1G*gTzs-^~lbn$M%?;@Z70nrhao7m(@w5lZw?RpP3)S}A-%j96GouQdvx~Ub$Z=_5}W0QbbJ~%B93--qR@CBBf^2u zu~)gjZytk0vh1r)_xKnXtm-p%E8`5c8FE7{7L}kY{r$1~75n7!Rm}Im@#Q^01j*`W z-$x4M{>x$CLaNgP|BBx~Ssn<(VcULxI0=v$*neQCsLf^wSL0Gd(=lFVTfd{?se_Gk ze+xDb?0F2l_BOiuhHB)Vi!@N!=+^7k2$|>?Okb?u<>yEVZFqjTa|n3$R;-H2THms8XsY*mx(`lO+OQaep6Yl<%}V8H-=zm@*1Ka-Z+n zfWairf4>$kYjA4+Y)(H>+4+|XH9Rg4X;Ay2!bWpXspexnvy}e>GPA#(#Y7sRL?{RE zQ(B!#^18DCRf@eIfB5Maro%${QR@s2vrE0cuZ(t$u}`s2e>Swg=X+R%1(n3Aja>?{ zhyEY#fnCF{gOD?ky6~Re*%LS=Gk^2K5 zKKdrzjyVJxgVTbNncj3a&@iTG%bja+(M5VNnS(5a$#GgWmKZL6U|g>8Lzr3#gElFl z4;@S40avIUCEr4%K7A-RT1vWV++LSS&v=`}5Jl?sz~y_40;>N^ei%>YAnd&EqxLCR zup+q#Rgud8PdZ3+*Om{055#bCX!)iq;n~gW)VmGrln+5knLuw?*5i(sUoBqT*sF2ZGzl0yJoD6ZBd_@2 zara_*MUPjKliT6BA6v*{cmW~|%`%D1o4M57;$Onle%{-6t_){VnS{3bwUAkBi;$Uj z%WxrPRho?5VJ3*;ryq2j=eCEMx2+tOkgs0cIe+p@Bd!ml zn_mZO({34v;q=vGYYZo`K!_7>zY_mKaQX{w1M>nhXh*k;CT&ZX!nnu!_MpQ-+!y|Q z?b3jv=-+l#8Pa0!J*@&PCogIuRt`h?+kELQ@WTb%S~ZI zd`~ty`amkbVYE2rP}fy|<;X(#{#p0Nb)=XB?$gxiE69g2Y?q^t>jS2*>u{}N4b?Np;2w={0=erpM zbZ8JN=}nmK@NwBwz_=nV8k48M^FRH8>8dER=pJh)r^_?M+%ImznBQwMs^+n!P-$yB zyRQMl|0a70xpBHDIbv~ro;-TlD^Rq;f26k@OdDIDZ{j8pt&nH_+lFE|b>d;cTe*_g zK?5SaR|5Sebg|fI7CMD)w(jv8`U%Pxl`r$HuDGQ$Z8r23DeyFXeR6#4bD=-VOenYl zu&?&7wi7Q*y{wX(r?ub1F|Fs}{m`D%C)lttd$!Dn&Tm+f*o|ZE%DmT*@WPo;pN`Y^ zOCR%Dd_TR*u{yGmeI*+%xC4hf?zhB5#I4}*=bABbkGOnhs=l!KhAxzgfqi22aJwg-%(yKRQJfU|e zHC@*oBH(I2Px6vwSz#;^-D1F%ZdKrq-)Dj)OpKD$XR>AAhJvg3C^mmza^S8>di@4B zE3JS5)yb&#U73%+NLhla?hncz>GX?Y`Z;Ls&wkapVae_S~R>3;si5Lb9JB;S=`Q|jQ9(m>+`Xclba>uhr! zb>u2xyX+%vegOGy=i}IeRvu6B1nv8M(J;(@YS%B6l1V}LTIWcaLiq*U9|v9;aFGl1 zHcbt8C)EvsE3Fm=xI~7DoHJ~zI*)ihnCg?t)>EKBf5#CugV41OhF+tXo$l}Nlx2Gf z;*TRkzRy)#*lw;b7{8(@WKDYdXkg$3ROkxsRj9L{`+F$KlKWsveowHtd@a3pa1I&J zc;=%DE1#V%h@>id5yz5t-zEj2F{z!yAM)KAVl4Q+qBlIn=?*u@7ZvEFw)tkL*}^q2 z)R>ss3|TYy@i++3^#D@i!3l1?)d7Az7mRVSGW*(ZpVPh_8ur(Ddq`rF$7$WSEaIfg zKID<{XlsEgI~?$cTtjQ)CmCue{hVcZ(}gJC;XPA}Le){-c+Wr`{#_&Wvt^}DMDb%U zlKH}QO2W9xV8H-}wmtKY;lNUJ)z7MhFz1Al+}+eeXv3)c@1*Zz<-p5Fr^{7W@X3EC>4siCGsLfcx>9cCZMn2|3NfFc!bUKeBMmw{ie*Xl2kB{y zOILlid)}U9=o4h`W^i8YMcuw8gC0O@tX{boGV$uss(5Ssa~GQXTDRX@xz5G$8v_?* zUDD?v0*eqgNPRMpdXbunzccNTVm0Ukx%#nY9;@l;#=(VY?B#2!hu?#%>)kj*bO5E; zlM}+BTKxF-T-U|r`(aNl?_CESDET|AQ84TG85HJ;mP1Efg&o|p>!A$iT8|`yLlj-S zjK|hqwcyb|^jUZRwAyajsOB_ubnS1@5C9~1QY6NCDm*Kg!9F1a5yGXn@H9zUXVy(A z$?&7bTDN=Vhr9Jc-k?Y(xwJx>dpZD{-o=3UPI?78B)!ltv=1OI1k-Lv?fFj~YxGOS<0Q4T{J$K<|bxODfY87+9)szUL%Zces z4$x*YW&$4#h1v+t>0`76T>6zI`+IhxZm8>!qZZGeh$Uyg_=}-PPbIuZxzFmUE1Bkx zju%-D#Dza!Vj-40%~T(e(A;x?1m=TaZ*LQ!=SH#+Xg+;wXp-VM)*@i0h=7wdP~pcD zx{A#B_oep=i!wfQq@a42JLOR}k3{qy!C=0QB^Mq*$BSW^1TiqYQiSXDBYn<(f1@5` zW>?*X^oA0GlG#^e3N-SLXtC92$lI$UG>Zr%FDiMv>fkflv9srP*z)bqrQb9n(VeJ* zu`nRj$W~Pz#QnO5wQ8z$z&t}h9{b$kAZohr`_XrLdg*??#IfZp+hGfIjO~g}bCe7j zCMmBiZv~c;N`K#YBpR#!%FI3l%`tA9;sxU%kYA1SRnhEF<15%v-i+X>brKb-kvVOh z#cPnViYBMVyOhg*3-$~+9BcXu9`L@=a2vYkZH^Ou@9FWSQ>!+t7oQ~o5c3pvfSTKW zovP7H=X!0v@A%GjUaPYySOTbiM%Jr&G(U7q^L%`?fS5v};>Aq+0%m7Y5IApDH&3up z_Wb8D{P6sK-yXWoUDZWyoz*-+e5N{>B;Me`2t=!`t%H?$RM#wjJQ0C@9eS`5v^Sv@ z+2o`@N`V|oRe~*09lr>Fe}-<|`v7ngai*DfbA}wl2H^6vmS;g~J`aiJTg)fGo!O76 zIF0FkleeCbed`IK1KIkF#C}F9D$gQHw>$ZccY=J~#ljIN10Fm z)9({aA;Fumnf(k_6WU};CCF6Xat88zHK5xWiLzk^3<}hlyG`@67mPs4+QI8Dy-FWq?~6OIH;_v| zq~<@keSsPoHIqJ6m5Nz#TSWOZVI^0g2zzScb7O}+J!aM?4(o{q~~HABDBWKnHkNUd%PV5L6^KF>Ms_yL99( zgAVYsg%B+V0+J#m*n_tkQc))TAY8u3cMbC&EXghH;jrM(E>8uwLd3$Q8WUxG(Q&9* z$pJtvxS>9*LD~LWaWA6(E#*Ra?^PV_ig%+Uy2e!r*csl)AN<8XmWJKdbR944w^kq> zW2n`8lQ|w0O3Vs;20uXV(5kR_hEaRCVCq)&D-TQZaM3*{dA=mGXbble{QH8 z$9>W$y)A#XLvc}uK)NM^$0rC*Vga+;OVG5Dc2_@NN{=s>hSSrllVN|-Z60quW8kHs zkAW8tuRXr}iF^ZE#li;TEATq09vug>T(dpa{>(;z2+PqA^W8Ps!uG#!$?lnFEv7Hs z94{YpzRm3S%<;8vLT;KlM1`BL`lUboe&?~b+H}#Jv!6&!0S&@GdBqe;itYvUG5tbo zK5SoD5ERg1Nxu)bA|7K_`=0zl2^60*L$ABxIY9d{z(4{pa__}tkZ#peCggrKzb%VK9A473(J=GBZAt5mqA8NVydO528#HxTnC+=>5D>8 z#6ZkJ`yiV-+0xKSc`+mj@3bev{iv-(gH**l?EKPbsZ{Z~cyuxvZbM1Go&e%L-8_tAeB;>h@-TMGL`v41M86j%QD z4G-s62#nMXzSO@LI!(E90yUKpu5Qm-8QJyd?)36AelTM(ye@lcAV_HSR7`s}&M{&B zT$4WC;Kt^K9%gjn zjwh?WAMm=VA2ycBhAufuTKt4h;qWJ}M_P~ykFUKi=ubZP9?qrr(x%~eV78b~&uoD& zTgvF=7b3g6Ebv|!I97MmfCPU?K$3b!AJSHi%X6hQP(%FQoyFK{e30}Wz=94b> z5q{E0O1Xh44Y}=JvmVVc@pD6nR+B+(zaUpY+?oATK3?~%7(9>udJ^+6*{r@dy ztJ)UJmp-5uxT|xRY93Z;uk7+}i9uTLMkK%=a?jeBrg5K5RFw|SJye?Yxaj*Is(XmQ;{CnP{&!{gj{d_`x=CP1Oqj7;(kW6G&tX8>X z#OyhB*g>?q$~{CWm8xOSdTnkHwDlftXEv64@t8JL zdk=aQAGRtct0Jl=|0NL!h%DH*v0pi1@pmlg(Sh0P)q08%jW@ps>dg=!w>1Y zUZ3zj{rm2!eU(Td@0!p3RoNtp!_mJynH9%>I0~hF zY+>H3JS82FyKRwr#Mo488huI#d);f)>(pfm_jtU!hwMYng1nCu0PcEK%6*gS^T(wD zLD_!wfn@x==W*L>7{&nwIS_+8ng>qduY8yoV#D9yM$TSO1$lzHm2x5 zO%IHb2NxF1I6ITZg|L1C;&(5os5BCnmkJ|zJih9EKQW^MDQ4dy4-j~o%3^{+RZ%}I z#=Ly1I^6xF#NqSp5twJCweGc&#g~sHiIHt8WrvbXhqBkL`Sv{JV-Bgf1+akoy+D0d zD4xEymeo)4doF3Ac=hKGJhQ*tr)W=7n(3x;yTI)ppP^om2kZ~hSkm97nNNjkEW)*f zpiGFvuEN9o0=(8pVs7POhju_kfNG#L2>h@?I>kqOoX%5HAR_`G(#fd7YKb%#bv*+q z{=SSj%3E)V=q@)589??ZRx^E0l2JW7j^&~IvIUbx+N@((YLe$6WChsJP?mP}<){P_S zjPrv^UsD=c=j22NuQy%XUjYhmb65>tyRWDw*FanZsTXc7OmqCv3$7@0Bc%*@nbYby zw@~yDTl67s#~Ip53D>C=CMPT)o9r`m<23vcDyZXidZl-AL>eXDnFRpR4E_4{q>C(a zMh=H>?HBhJ?@oWK?iRBU*HIlgMV8IPg!sMYZBbuo!IiNTy@tCV1<=wU=8T_)a8Z7b z#Rm#~{<%~l9`zOVvj&3;qrxP(Ll+wX-w#a-6Em#0gAqT@{u`GOA_b*#y0U&b-@O-U z>?JAh@mU)E`-eR6JkSpmi&9NtP_V(Jh8R&?oXOdw*6hdcS-R`tRkH!cX9St$2l_QGXV`>w%a#jY-=u|om(DlA|TG%x+j zJ{eJ-?SyCI@!ksQsceDj>vw~YMfjPo3f$SF;$Y=>`6wR3k7MD?{=8We-+=ZvsRu9O zcX9vV8P?GvlgqRv_zV`>RlMx|F7gDq7f~@YKh_j+xOA@xvPjO;r4}5jwtgoBeyGd< zzFElOHAb+nC-b#|eb+fhY;HyMa|2eyg2_{!+ha>}-66lBUqx(LdPEK7s6`1@QM&bN8=-pk>_V{&rHeS7Nojys9tRdS6KFGGGOZd(1T;gvNe`BnDlAnXC zQJp9oF<*Ij1iR>M|1@D&O!@S$%n^2X5}ryyPbqlFX`;{dS6k?7N&2975KLWc!PMWs zkP=|R*-i&k``&ixtjec(lS(R#-6bwHosk}m+q^H{OvIY(E~?C56k)Sjo4AxoQAoN$ zpGJwxyyKia6nU>P?pb}Ka=&L~b9<=~bxUaGDp8X}?nO8{@)K3(MBNA2a3B)qqb<=R zgI4UICG~Rz&}2Ad(E)>7+@`_9#_Zd;?@KGSdXe6OuX?zXOSl%FBth zi~73FiYjE`wentufUB(PvWbif^@7>Y+Qlz zKnF8LsTaO4(C#R~L~jT!QGWh@EHr?BCw?8g)4rk@-o+@1ltgB)`oTQ_?+~)h4BcwE zGb`3g(DW}4-@pKWqrGA+>N9_{we$5%xd&YF{YF#!xU?c&f-K4H7OCMQoM{&DL0Ar7 z*~_C~*~KHlqR7F~;8c=69Egi}(KC&x z4ouxou8_S351J@*rDAz5*?2RLpS1~Uw;GR$wk*yQAB=C|VK%4`HF#{{O|0qTo7n3$ zzDUFYJB}0n zuQ^@7sdHDUQYVzceyt;w(cOYq1uJtXr3{LhJIVoGPPeo#d>c-@H-8k?AHlEq$zWC2pT4_zdP-9S6 z$OtvaV$~ULexz<(%;3Feq)&iZTV` zsf2>^iUkN6O>mHfsy%Cr+Nqg-6k`OHn{U7u*XPM#&}502N!sJDkjf`&B z`k?DDyolB2g6KMM5AEu1d~mzG@;cum+&tu$jdjTLeS#P?$Ej)}-=?6CCFS7IlNSL7 zw%)9LivgRUF1TDTkRqO$J4{{%;v3jF5&M_#B~u>GjGl6ScT*kN$`mbHu501tp2DgC zmQ<(}QRk&weNNC>-PDa*WFO7LD>HgJ{qBEY{!)Ieea!jidijNQ*v+v8)oO>j^9(Dubx*oO!Hdyl`fgUBwb6C=^~RS(1iK@y^dcIQ28W`=pG z5UIo~St}KcCR;x~yyA6>PfMLifkIUi@Pr+(8n!)>}BC& z2B>}itvshD`P#vC#UBq)Q|M6ucwKJ?IYcWSTMSRi2dD%3a1WlEDo{T<8Fvwb2kNInQB;}bPiRNr^|k9ZbhBMm4Ehd zU&Z4I4d{5!CbTP~g6ASN@9l=!Sd5XGne@4=$eMzyL;1TiAf2iTK{8yZ1j|Fj7X5ym zmVlV_KXDqG{Oa85GS}#f`6`Ti-aA@4cI9desp5UfNQPPeqRFm5p`pcK1)BF@33@5{ zfCN2II5Rq1v&Dvlv#&R1CzB>+7;heK-|qg(CMXwOaMJ3Ytw9C?;c!59TtQW1A57~- z|9q$;`Y1y9YmGV^l}9=*@>$ny;Q1wAwz+-FiU0cETz*{wz>fmRp6g*HM2WOn*|_yD zjg2+7tt+Tgo!N3Vi!=OrdBS;i3IYtbkDH{0=leK`#JA zU-vY%!O6VulXEHGNeLp_?|tE&aSs{mh#Rlci(`*lOUT{XmdD;EwxC@`!!ejY&7F0r z?k^|f@12;lb`J>3P(S(|yrC+~9>8g&AHraGmAt^k`uY3Ddk%&_dj`mYX#RqBkmcIX zeTCT-*3VcN!~J|7O~`*Nz`qIfis)aTax5zyuQdc`;TwJdj@X)_7Ra#owOo*Li(;nh zKMU_XUV|HwxBjh2ugX5u<%OT8-|St8E0=j%>6`7~Hod~0jzFhW^ z!(ax5hSR=tUbp26a+$ymz(|rCv4SUNz6qRM`&If8+AwBtYENvn&$3S^c6~5Pi{F0l z@L`6_dV;d|-D*|yVGJ_8uYxALX0*d=AAhAjLQ_Rk0<%f&2#{t$j5BByrWE!>AA!q_ zb3fiw`6c$8qyCsnL?B{A!K0XJXQ(bG<^3)AcOqF%U3y zM$JxaN&ji{*(X^U`Q3*0ayYVTJ(G%sZMwn3e5ssjMpKcB1peD74!m-@rO30eHwG!Q-No zM0)EViK`YGm*`id7mZcJiCTvHP$}!}bUl6?`mVR+cR}u0*?ze_)wN-j&7`IR?%Va_ z{F`}-+3`WbJL39%&H7Pyd43OmyYbDIzouM^;K7pN#zzTu`_t_VU?i`y!W}knp|M|l zbr$E_=6xrFPF{@5^V4yBUs8(l_crkvC|)z;*yhZ#>2&)xtq@9r_|b;@>ry0mKV+`o zwRaCt9nGTKp}ycEivrboa{sxV-t%X_(NwUoNJ4#=jN0 zQlB%u$A{OaF=vnWiE<9`7j;=a{^FYTLcx3(vY?KCLWARXUjySYg1#bimZb33iC6dF zmO|h1>Xcu$-_udMf89Rcs2-$@7D)OkJLvB~3F`QJIA;@}&b?;e!WoWHUO8+qA77u> zjDL89*!e5`XhPY~()0ytj-(EAi=*DGk`bQAtB)cExwaE7f_lq(2^Bj$LbVt+j*$Of zAzw63U>1$oWQl8)^(dIn#Xj`a-*+yU2+rRd;ZFI>tUmPRve#35M{duioC;zw(zP%5 zjQ4F>W>2P-OU~2ekU`3%3Edx$q>>3DS(Vr7;`i~sja)ksvS$UXh4D+2oQ2?VlL_xC z%vTLA_E+p{aZN=wZO)J4oWuQ3t!_r7#oBe059g2O_~u4fM?fVe$>=APzTq#By8Pyd`h1fEZcm~uPq@jZ*e zX9R+6-}(e_E|JE(em=jW`a%}M!IlNj1A1ud9ZoS81Zc^y{3xR*TQ5(^iebHkKU|`G z{q~Tz7MHy(23@I4h^}abeV6LBoS)v{WzGn9ffrP=#b)aFA$Na&91SvPSvc*V@(otw z_#ltqHQcFTAJcp)Y_i;P{T_6GhfDg$!3sLogoYwj)D$7UAn_68nO<7ZAo?CWRi5gX zUdH!jB^kON?>L*Bj$mkqQ#zV(QBBqTj=Ek(A9;H^FX3K}YQB-^j@$A~FE+qjshSE) zeh&tTdW2*|mPp&-wQ?i2`wM^^LkQ;2puHgMr8Xn!{p2PPq_4Na_-lCfw~U7BK^?R7 z7FmNX?DG&BdmkM+g2?eiAM7ign65~-A@EXZVOC^$l|j84>4bVCoO}WUYj}3>f^jCP zfh9Jv7~E_;-8}%lp8OY+gROqDUGRr%x$lJaBXy6@IwWUVnYX=tsVjS9upi&>`}e`m zp}oP!iJxYW)fx`0R4flF9S=wM>`2hu`c%L9_|2!LgVnQmjB)8y7vXFtKdH~t=eu2y zx-Mhz`&$q|+&{kE{TOU=vas*0l(PT}&+2sEzc5zSU6r33c=*$H=am<2c51*jZu3_% zg*?}mjPY`#sZ^*3qx!berThCPtvj9%_i`tdVvvY?w80P1HCE47*`g%y#9K0ox4WS$ z34O+C1RB-2&WUpP{h3cbrvi`DMq1CJk>pZSX zTy)Ru?n>5P2;EN-0R87a!(cv$e{~u+4CMFSc2?|ZeIMTN+#R8g#0HWNs~8KKC6iJ% z+NWWr4(4faNzI++q5p!~I9P3EWaAQbnjp{_aZeanGA{J2y0G&VGkc^D{QXUG|;Xu{Y2KNRXcXZuh!dy^S~= zv`-Nadbif>`NaL+!p+vP_^TOw7KOa>u|(px{Yw3AIW*1Ix;jup*}HEdv~(fab71dz zCXUJk{~gfbi8Ci3g7w6Xb6oCTSEBNfF0t|O%TyQSx4OrSdl#<1Wio;T>@Z^k?As41 zubKel*iV56yHmNu(z%C#8SD7QH|`VVM#7WkXiPujnFF}3-`DemT+}!+XP7t7qO&i> zVjTZ19WUvlWsju{E@jzHu&ng=c}FJZ{^^0tQ86cOQ1VpOV{NGWu!u5&Hr#V6j-23+ z<@<9TMsod~b1;qlTZUPRstE(MO1<2;OLV!fxwxEFaUqm?^zWx~07YiI*`J*hsB-r{ zBOOD-w^hBC`(g*ON9k+y%tcsS7l-kHwWtQ{CAl8<*!GG08z7V%Eaa-Rmnsi;b$mI5 zN*l@W_&&AholkdL+nSd&?Q=;#@fYdE#8c-qBs?t3_0G*hJpEPv-lQA_hllFjGF!J7 zC<;V}XLFdg9Wjt;33)XWwYx$2o^G?l7vwnGzrqc-TAvLR(euEc^ZVx~`j66Oful^T zA7F|7_cqyQh``_=ucXf5{F)OKAtgfN-UHrhLg0FaMHnJuEs6*b)kc@dDn`6g%L@wx94XxjnSU}c zs*GR99tfqgdhTQ9EIt{|=RUx!P3{7pg_->HL{QrK%3($%{`bkRqgJQ*nnH59xD`4| z3NA*Pc3Cp$C}3^K^nY|ceV3Xm$s zn>xZBpBJ>j;bC<=?fDmV8b(cPC;ai40S1B=2L0K-gMDJap{@!e`5A07o)+v9!L^*s zIku1E#dMPQQ@zepfh{HsPV&|?QYZ<(Q~ zZG1D}pP>^Fz)9mlGI4zCoo(Rlz*m;{;)|hp(CKCcG#EZnI8PI}XY=(e^V_xPF*rr? zkkfw*nd=8)Nte(r_m#3x+DmuCg+s$|H&b&iZ@lm=S5RS zZ?FHnRc18o_~UTC2O9Ys{Ucx;HL=p8GZ#eO!H*A;CC%z7I{ETBs|?NgPF?j|PrwL3 z0y|vN=ILnl4!Klkf^ya~g-6MH%90b}o@nP@yYlsvKxCa{P&RloGLqGw$eq}1So!-N z;`mC*PyFu9{ZHX!ApHnYE1{wFu1$nL{)=3 z`9ysEvy27)HJHlB;hg?Q)0uTCXarICFM%M-qsXG{JII?LDEschug_(YoHI!#jtfH5 zU0rqSyQ2TahmE@!V6$;bpeMkSO_031lU)`3u~eVTX;hVh@{-zixc&ByvRTSkT>v~< zg%Y|r>;jqiLvoDXz+cwY$TB30G5EmX6I#?OrP;CzV6AyZWgINvX|hl8IW;cIqBT2+ z80?VQP$w3qnB+cP%g^!&1MiMH(WC;$df-IY<;fl3#DGq$WA=Vd5g3ioA5Lk0eEh7# zJ~b}zOi9wtRAv(Ju$>|(P|oP^2Tzmv4{GJGbr63Xh=u4>VXYM0Ms0rggmX`Lh>nvJ zl36?#Ldd#b*^oPrBZC~11Gm!CQzkhgsYi@dzQ0Gzi>QDB^Lv^%#H>d;=c*$yh`mte)jqIN{l6&XFUO3;5YXRSFRP5Br zWiGa|zCkM%FiQ8xwpsm&?yuPct)Hlwzj>jl(LYFCN0a=uRV&AnR)3A)C`*bWOxxWc zf^wBr_XXQVBDxgNl(Fnt@!UhnO+M=-Jua4fBNC7^rej5X_LPTnIPQ_*cx;d78EYBZ zx3eSY0DC(7i3%U{%CKHWpC zAIlwu*~FDle~e6003Iwy4!V)*Dnf^Fa%n9KAS@#d_hDST7Q&8;{$Xy?{^HH09$#3& z)X_D*-lIX_T$P$mBpuWMKnK~0yrW8c`JFNSz@f(HLbmFar>P%rRkp}==dakQ$4~!vH+U>4oYbcO{!_gCBc3u9j%?rDur>OZhFbXerzX?>ZwY;3Xb z!AJjCDSOm$QR@j0%nu+ZO5gj#*t%? zn$}O-!q=1tn@)#BO1 z#F0V?M}{>cCzkGAqB8a+sk`nG*!8q8uCSmCaCHP>U|wL0BDYr@NK1O(=5Qg#OVxXC zLKi34XGu$B|GvjtpW3y@mzNwq-y1dh{C>St^LuUX^fb86vgZ40SG&<+&uy67eRD6N zQ3pg+lWZM?@7!MocKwoq`xhEp*_DV=e=hT<{5!n_+5^R^w#)kMu3~Zv#pTlN8|iM8 zu0N#xf_k8q2Y1SXz%(8LB_F!E0kn6~o+4tNi% z+p%F}%Qf=lY+qOd&-m-Mv!`qSgLkAdI*yc_vuytAf9%R9p;%AD?a%LhHcOZ4DYWZw z+GCbNY2P;p*S^etY5&SWT(84+sVtP9DBd6!DXlaaj3vLzP|769gu1WhSYj<{>tco9i zb~zCAb^l`0$>*Q=-m*&VW$5dhW4J+6`tD95O%?o+bliPJ7}BeHv%#LIY2^sAyhPk%N8wkC z#a-GK`Q&rUzSvP_n1?8om#2-<#6y*j;FZ3uqFoW8`*YRNt6akVdh&V_1nm<_N%r{*}XHNIiYnYyOko(lU$@Lq^Jl z0jc~JgHn%ode~~lQX67z{12GG5vc}`Q+L1Z8;4wTkWF=(Csn`N;S$U4<7N|S03R&s zLA^c$8KXIdcnhlA6Kr{puH3<@7(jNum-S-6Lh&<6iNti8Bb4R^6tdwiXOEa^_%1Ix z8kTpV7aBAy_mF}Ta0~4VGYbY?`bTg|7v+5aeQDu)V?dh_+P!kVR%>Ch8;ABggFaFk}BlV!~pTogkc?AX+j;jVLfACB|& zcu~dxRs{^4uA|?dpJ_4_35EB3DmClg+3o&0fo5&LDfdnC}|PgK&M zTZ$x#^2|&(O1&P|UA-q{TXK4{J^S(_1Q)b_;%R_i0Yl=kMD~vo>Lqb!)xX zu(z+t`~i{m*{Pw3Y}sI&Eb)=(C*I8u=6`VumVUZB#LFkzX2v)?b&WeT89b+dtX#;&u)BL>Xts-_gG77_cYB#)#(c%#r}St_hHrS^Ybfa z58AwM6Vmty^m?~-ZkA6~do+G-{JpcU6Z?2ARN$t?kp4_r{h~99vn0*Ep$6n`!|X@Qs=HTLwRO}q*n7i>&LgRnc+Yx_C5I4aZ4FA9E`7X|*f4r+8zsgzP)0uiO zt3>~V{$WlgNBP2$rzJnx{1RtL*iI5|=w5;g@E_T+cneKNHBcodfQ=rDlz21oB)4$= z`3(7U>nDV{Xv|yQ^oa&_TWs->f*u41aDzvp9TH0OPKIGUibucnha6dHp+MgDud(-V z-<@a#ZFg*Lj5&{x1UofTm`$9T|{?6N`+tE&64|tN<_az%yKk)0i^62VOesX(8NtLtu zXuA{7j%&a^!$--eTb(l4NHj7lh3FVD5GUasVLoaMDFhRr61^fw?h0gdl+RL~!{Dxl zfs>Osx8LbzvZgh>qU|IzGkQLm{qC;LIVX2y`TZ?16(yS~k)Z5&&=3b)e4^(LhKd2GxbHkU+q48ZS4X& z*z{V_tAdG3*uMq^i#5b=@T;BdWzHk^liX8n&YMF;anj?#pWQe7l!vPp-&gch-)&O; zNbDyYQEYiA?RTFh&rj)ggrN0VB;CPu+NXp@0(^k05RX5}BYsEM_-K@66y7NKYb$xs zbk7VCUNeMmM8E%L_@fiv21dJEb1OYysGzvHuMXb#hn>>W|0a>ctS9P1b4#(3ry z(TDI)vgF$A@45MJb}`U^(Rge2d>guaZP?dS1p6lu3O&5TPl)TXWgquh^AOUNH+9Gf z504uso7!aFTjjRz4^H}`9_+Jk00WNal9E8+a>%wxx9`agoLdS_Md=Kmc9LT9pO-~mDt>eFGTkb5|{w<^~}oQduDyS zg9KIw{wo|}UL}4J`purTm2Pr>^r%+88iB4w9jvYsLU5CtJoX1-woW@-T%4b7Yn( z`YQa?mS?B(_M!znBBSi^Iql!$tH}n(Bq@#ou=BG2jhH0+jY7#0_6P*9ev5b9BZ2Jn zQnd(A%WGpVjS3V9jmia>gc5s2`SRv>tLowZ_OeSOQ^*G@Cr zfX`viRVE0@#DEcw6EJ7jchQJyAD0)s4Jd{wLZ12@QLq3laK}^2bR`|?=#qf!kT{ux zCYhzZtrav<4JiU}ecXP}ee6eX8Q}vIS5#?11IQI>Se6})My_f#XdLslnDqF#J}alT zLA=Sa-;%kfaleWZ@y%6-KbHZ-h~bIk@$7R1zr7Am!SC{qTi=O&q-?*S9g;Zz>j{-F zma$P*44D;(|4+Ez#%jE=h@=0i*kJ2iJs?W=5He?B$aM3yKBt!G`(0owR$5&6Xn@I8 z63hXF^vYKH2yam>h>jekRUA|VX`jk~j9ImTeGxi_7L==QJX0KBlfO@(_S%Ev+nt7)AqJsVQYy<3%-fJr3Isl+J>(yA1T-}HaGm$>&w?G_Lyb%FWf_R zL*f2$(N1^2$@j3w(3D}^(-huiXnoju|43**(2=lz*5&77kViZv)>A0#&xd0PPL=T~ zN?Zou(0iU-J?lm}RG4loF1hgda|RE~Pl_I#p1{src%xc)!`K(ji&MJL zZtfw_q~5wD*;hsSob1#$z_i!cOO(?t~ZI+?&ftARgpYja6^Xs+E*ycB|5{2 zgB4tBsU19&Wrwn)tL)QDPz%*;WBe6N(Eazd;RPLcS{0*ZkIcL~B?S_*hlt`rh5B?- zpNp@d!Wc;Q^Q~#bo>#mP} zGrnyVF;>G~nqmMIk+&9o`UT${`&rjdU*R?R39y7jlaXb}C4qcp29 zL9PMZb~3bw)Ms8V%c}M0wLoqAvwf`dv)V`auzygGbz~jj$b<(#7*MI8TJkOB#`9+S zz`Fl>0l=i|PUWRh z39Bf1_WAl;r6c^^CTR$0`eqW;i?bi9w$?yNsbM<@+2@F3aHZ6J^XD)b_K~vu(6yd* z?_dTt_}uSjp1n2=2A<4n@Iw!6dmn_}tFM=ZJH(>@=@QIGdE`;kcfao!wx;0&pep-K zb8YJgCG??yK+Qd#H1aKI+%hmjUpDkh!81n8d4fdUezl3hI(r`3Vs`44Nu8A*ZW~<6 zb>0FeySAPqTF_2aX_gYF@oP_7zX_JLE450HTK%f0N2}^|*lU88*P81w-{Um&jJ>)_ zqwnlpg`na_n$!M0VI9N+J*vceP>81$ywb0pq>I5tuc10cZfZZSrD4sW1UdeI27X3R zrgvw~2daA30VFNxn;nd;LR;Qjn@%3d#m5+C;x9Pc>&D2QY~SQ^@vG^kB9r@ql>M~n zvQ5EWSe1>7sCMF$Y>jANHGBqUJj%Y0l?P4u?gx2S-@jreCB}m-1H)n^t}o=Hz}X;VO9qnlU)NB|6qUvyl6H>Te={`_ly z>r)FhklWC4N3=8>f@3j#wsAYOEwH9DnpJ{F2GbG>NKpY8K0#P1kg&FI_OS!Y3)Fp7 z(%|pF4$JqImrlYRdmcxmSKvtxIQ}WPs~R$fw+9r98K|AtZ-x5Q*`ei`x!AW`ap~OvJtr!p*bZ5WephthX%WggN**9wSJm zm@JxyLk!WZc{OVJ83rNmJSXKnxEuY0@SLHssL0{9*zY4}*~%LrY0HBp_MNA}iO<`q zX4{eZyuidK1_X7k3bSd>^)uNS~q8eJ5hk<92rW-}j(1 zS|J8#1$cHpb@fJKRa7M{*E6u#T|qxP&=shX)9^J0+lFB?cNzf!!tqs`j6N%c{WTD`QZ)$n$E@;T!Kuo$vU^EMzT2f)+73ymTFOGf2 z6IsV{Xf$;S)P5=VJ8u8ShXLEmHv$YFo~BllFGlCxnnfFU=bO-L$;i;3thf!E3WS=l z#r@@&m6%<^b!yQBuYdznUf}OTY4AQ@XB|zr4u$0Tl}2&?u*bgVQ+ch-J_3u3Yktw6 zB?h$6w60d8RR8r3^VPl2WG=I8zqzh7pGk%Y?QgQcJr6IF zb|1Cpg}J4acXh~>NlEp%pB(o|D2Xi#*9Acd`jEsM% z7yol7^T3ma(Z8pu^>}ey0fFBB>CQtIW4Q*!= zU#zz4wC;qi?*2Z;2kX8oxn)%%kjE}I7N*R^TtV9kx0&xxQ9^GxeygFW<&J?j_$$%^ z9IUK;8zc2EPd^I#yZyT-N6l*Q2b$!l{X(_)y3_|5gZhSCcU`$MLX&;ZNld}}cKJ33 zyMm&i3-hwQoK0&FbI!55TJ2{Y;H)w`%fnsaPM7JTypa2a5k-=F7X+;|!|_k;Enivy zHnwWuRy~?8gsyXc;D%Gfax>(KhX$L4$ib=|@3#a2px;GB@F*{u4CQAxzPf!+X(v*I z|7c&Nl$zr!J!0xJ>4o2+n}U2_uYt%Wn(V~Cy8U#tw;~zqPyxT9OtnryBv9M~ zthaLVTff$p9ncBy%F>6ss5rKmM!N?P{q+?^%C7Tkxsb{GzL5dAdr_XbexDNz4$NzM zFz%Cw*Q}Qq!i~23TC8KIzV3Z_>2!;{rM$sicO^bN-3{vRn0sr-YAWb>R#PkTry(U) zF1Z4fy6%od(eP@FZ>BF#kDGhfxlfHP$GpKKLQ7F}h-QQy|Nh!Tc?dayj^n;Aq1_gQ8py!bg zg@dNXzEhDWbxY{shhrboWW3;;Q{LxT$`0L?QJq<|E^PG?563^;7{ZbDUMC`sr7jbb zUjbZb&>nat)AZa!mM3W10mLkRX=Y*dlsS58zOvtqXF3k=T&{0>_eQFkpZ zy=EV7xx30~^hg+wuE(w}PoHl4x&(*aLML=DdJQAdFz+UhaWBjc{mygp0oXjtXVY^k zD>wq0DG-$Xdl`XGE9?`qOt(Ih8cbWlrDkSXRQW(c$(KQp*DX~ zof**$)LF9CjIbXiEi@Ovl|g*Dq-z~b?dF{aN_4XcUuJq9x`O#^tWP0&8$62XqBJ zO-rHX5Hg?+QYf0VOw(&iMEvb6a2?RySLfO{`&78#F-tZ*kPs!z8r8jxwc%dtk1xMIE zd`Ho<@*ny~f4Az@(-xCE=HOk>zFHTNtlLr9^&4A-hu^{jAxL7x%IMCPV54h=Xj+V4 zx7#L}>s@hBX+DN}lhEJHqaRCtd(>K5+|9=j7JViYTtL-8Y2?jK4Ab0l>-a@Kq-_k< z(+{MQdn~;%6A0R#IC~X2Tf-q!e-@|Xkn3>#{!KP(HK!+YC&28JRV8|`+noIF(h^cXbIZa1(V8c|n!fgJI`HkiGQMK! zoZgV@P*0#bBf}>lPC8+yOar0)Tn_E~z!xMf9Ioe0!`J?8mC(GzA*!N4Os6dkgDeOcjb%ZoB%!T zpi(eG@MgGvn6ozi)tX;X@Gz<2RC-KqzvHJSby%)twSzDj$^2=By8xeU`zGfyd-nyF zGZc0Hz7$6v!fUILy#f@-84LIMfF!DU*p7A`z&so;I1bg-`_3?ojV{}LZ6;*jjX+Kd zjUmOyB0Y}MeL#~*o6Cpa9w;9eb48f;VqJr6sT-TUupYR~Lz6BoNyWtgZg5@LxzU_n zO3Ixt?nN`p^t`}~iZ#R=$OUJrmg#UpqDz2*#hbnY1YDe-WIza8!~4~R_)(K@si&_C zUcyDpHF8ftX%WF4J2NxrTCS1^%HeB_vQvuPO?Y)$$+@(v8yXgo{Z$)oKWii7>B7xA zuc4KL3=rxk$%0Qk3U^F&PD2%>@cW_Qo;RY=zRf@iSKu7$2VVr1Qlx;iuG*jJJ@bqu zaN`4#TR+Bh{ep%)oE2m$V8jBdK5Gr%gZWw>^j&?y$S`%<2znUh6Q_RO73b_N$~I|I z+StVJ+n;yKFWTZ$OYr08fFp`84nv}+F!+>T>OMR!fh*|Y@%xgn5X$HCcO*vUso#*$ zkcjNev&WFxQ)z>ZKLc_Jjn!h>tr(gPd2N2KbkGEyWrk$?D`OPbii$kf$KOM}6QGoNj&?qe$_VQh;?rpvT<5#(cg zHugXyuvhOKy{_26Ud8Di+OTf<$~~?qtxNNxF(1b7)BQ=azQJbuR|=NC%+|oc)3(o- zTUDmX8Mu3*P2m4N{oW1l{7~x8P^tH7!wF7nVk*w{4XQu~@mv5st#TaR&v|s13q@CV zVX8{?0R#5)+Mi?J_=GK8>0ehde&ff7UjOS#y2o*s($#LyF&p2pbv)M`rPe;M((oc} zIM{a{jrXsS#r$!F3_GgyMrf3tt7C1cjiR`AqpP12COK6n|5`tQW@^8D-sWkcyPTF* z64t`2Y@tbHHVT{jOXn@OltN*fL`KFG-c?isz_S^Ad zFSKgDL7=;TPHe7N=r<`xkc(^&M&O@cdVV>=(eK#Lr$b~Y+-UwGvmV}DH=Ay7i7!Z* z&%wV?Px{dg=>7;_e+Vgv`vS;-=^m!Hll@g*CyGY14hlZ)<#>C0C6kcY_;YF)4B!rl z&X0yK3%}iSr84Kw9Ry-!+yr7i{hS#kKUvHU$<=!z^C8%iqC4(9^5p6mj_A&<{XN=lj!`>wViLO5t@Z0Ne)PQ%YW} z?i zS0iClj940Xd)XWu;oXvlLvwzP%e`?m znNU9uhM)a${OnaZwseY7@1s1*D-!Fp9rY`SI<3X z-80HLp+9i0A>+$)#6-glD!hJIy;r_Mj|#Y(@B(rSuBpPpx!U}TTLv~9RwKjoynU{| zAZsf(cb4Z`ZeVmTK0~kItj*i`eahgx9(w*Tn8f$nA7S3y4UauS z!jCZDsBa=hXN&;?PbYAMJX&0?#;JPi4sDS@d4Lh06SuD>r3?GL??;n+ zy-6G~6$*=R>eVAlIGSv`#|ab*T32|$Y8d@kN|PUlaw`W)F^FrT0^5QY%J(5a1|SF) zD?P6H-z*pe<($yGoMSU?!0+;>5TBCt{+!OBzu|d#OS?YwG&THS7gzp&CcYf1NDR8qWt zQi|kLt!aSo6`7Fk9@mqS&R6R1&b!M`UmHZovYEVU0&WGeK@zX@fx+>frt?d=YXxzlMyIP?&m(qLKiM6>(?Ng(K&lElZX_JDgXLB-g4l=2*-5zWo>%KDIsxxNJtyturvXz zl}oZpVlCKJr;t+HRdkyF$nYw$PG>cHF8>ILGqR>OFJDK(A+#Uqp^ceh?yr6RT+UBn z3X*>h&g3zj>E6;VBGHhv9@VqR8Jo4c!)bjs`5pb+ULH_ zi<|eJA4sn5k5rOX-v0Y2X1%PYpp8j51xt z?9^+A=IIt67wa+JK(oHcC*$qqi6=G^t_@Fz$>dQnf_qr$gVMiHqvNq$Uhk*J!>cP5 zdJ)aM)(!l4rQ~Eq;z8-Wr+j#-#}~ciCiH2-o(`FC;!>)BK*P1mI0k*ClNPbmQDH!rp= zvSUmpDwe;uWt7-@b0#hO7xIE8t}qNOgScXPkQP`7j5uDzXoa|toc;Yh%d7o97t_eF zzmB2W?C#wyLN`#@1_FQB_R#TAo~+Yv|Dp*_NA(HciCn)?3;%Hiw)pcRtR$KqREIAVu61?XkC>>1DoIXroz>eH_@ z65sPjR~s>XPTER+kI@_bFR|Er9Wx@^Aw1KH`JwNGq6*ssaK5g64~=x~LnZuWzn{O# z186?HV|U5m#UU^UgQjrj*%wGjUZzTE%ILk}UDoYk^qfulBqKzUb7wf&(y*_kwmOXa zY~yNsJSL$3J{T0M*NqH#*e7b3Xd~(XWY_@K#ozNUFIotk6sqnB9YLo6!Wt~sBz0;} zGJS>}QzPz^?d<{w({h#I6zqjf4d?Fog?n9ozC~~IiII|>Z+?|`@aQj%1AmK>~$#Q=Ps&*1*8|A zp1~tJr0&IVifUeXw4IfLPRlgRAA1LxH^RD$FBNuZcu&0M??1(SftyrH{T-B=svEzK7V3>24H>xe)b+K8;uB**h=!ulOdR z4@>O0SHbO~Zeg!>eya=j(h~4mRaG&B-)ryYm8*+BTNpXF>p_7d#_@|7L@2&sty3Cc z>3GIRIoLns(z7UQFNE_)EToJ-FS~)(AW(WzKMmhns94GImh&F`+EM(*OKZg|%WMBW z2C=<+FA6DTTp3&`Sm@p`H{zGmlj3n@Qz4{sbXl2@4`Jq42Qkkf9 zWdiR*8_139VfR{+?|hUJvQXytmH+I3uwG@U#pDjAQ_0cymJOH@}dgfW&+fZQXuE_coOKWc;;e^kSjT< zZ9^bifzCxaPgqS!@!SUQX?(nk_it#f@Ve6S1u;(F-eHKMb+j3fPe@RGghF5TSOFg|CL<^G+qa190qJb0K6i~sxQ_1yohu4?C)dw9n{0u0 zLG!Zls>A)P{d}zSqCT+&!>`4vT>7hBKL2b*o~v7*PYam%y!es3JL{d6qG=bgT%_mg zC&PeuMq(eYJH5d=BHBQdPXQS6dAo9VV8%kYdw=gkX&4{f$1W{l^U$~f=1;EQkcw3c z9s{Rrc?AASNk@PHw28YZq4{*Y(kR|br;>-u2-HqKlSvEsfz z1))dA`g12>)PxSWW`^VDuMWvKKZu2jC*Y^ezL$Hazi!h7i4w(!?)&HmTF0W&eOu)8 zkjfx-TsG|ypdn|W?*O)B?=29O(`DJ`q{98QU}M+^FS-~k@dlcuhWNxjeS7=m_z>eC z29E#wH%`2~GK82_$}f+jD)sJpM16|M?WIp26<_95_%rq36J?y!uzvhN_)oYm*Vyv8 z%979=3&x6O;KcWDF1oE7eBK`@AXlH}ml^l;`SHF$dB8k4xQ`Aev<>3$kfQu?I3CYg^VcU?O82A5ZinK@k{|RvGZ%A(U+~WZrNR}SpV#0)S}Z*wvFu$>j`uP$9wZmNjdq5Aew(si~DUp z>_#N&0XtTXPT2RxRfCwN^>o!^?pwl4#h#~*?cdyrrdvs6c7}!mgB5QI-m?Fr=aL8n~#qt5f$OSt^w)q@_5$3?ZM6BQgMRq=JREo5L}CI{n*CH|%BlP%XxhBL%SU$Yui$vhGKxBG zf2$yDBh1abns(~7Xy5ysKH~Mq--r$#AV=tblyyyTR66f zCci98{$&0bAIlqEDzOSnhCV;Xm)B(?_xsm93slyG$K(~*;@NB<^ZS)TjtxXAP>(YS zmPBG)&s26Zj&t5g&YjfD0+U9ahmjs=KhuYoAK<8GF5#|8TfTwR70a)V03kAQ$%Gs> zPHQK)?Cm+-Du};pbUR$c+K4QwgSm6q$iT(5`TevSk$i&GV|HXz#JRgr-bSZ71(~&< zvLI!`_s62FwLNQ+Rw?29LjPQv>4gHk zgbH4-CRZ7|PsH@_hXHyE=(2~o^LDBPc)J#7a^5 z`UN*w+@sjm!vFGk3$AH@>xh-1Z=Wz>f(ZQ;ro7MikfVsOD1^o&pD&nFJk8uV|k}nLX-4y2BZkAKL=G@L7eFXIXy$-gmze z%;3JFL(n*0aq|ngP0^D?rB$bn2_%gSx{cL73N%EK!bPX20IhL)Yp0VDA0hvo-tJWo zDcBBwuLM&5$b~^P5E2U&}gwgrlWjc-USTe598@TKs-;9y_E{RyY z6BiLiTb|b6T>-K1p#&Q`eyUT0t>jAQN%Af9PqCk5@4iQQd400pg1FIBY;LsU-KE6#`1o4qhVJY%U8K4}^3kZ+q+|2i53L*^3-j`f>6p zi2Ond9_CIt?;CKQ==<*&UQx%im-^QKm|5r=xLDZb(dNpt^fqBV?L=aDKYvvt`LaV` z>>CS#c^|mfo}mCvI8Y~F2ePA($X82b%2;L8<#LN9VuN6zwQV|Lx>Niwr9nm(%mM}#~v_2s5>-ODm zsAj-miR8gYacl}7>=znpa3OA1Xh|^l-cDzDYT$_*Le?+|deRpIL@7jq{0N z;YFf^Fg>WAH>Vby3Y{d*>j?W=@H1F42;H9+|65k^*6HUC&wRCYACa3l$p1wIU@}%8+VVbv+b6?nM@k(Xf zpuV$>sWwliLvOR6`DA(H_qnW31KJ3#Vxp^n4l0OW<7Tq$vJ9E$j}Sa?SYUwkiL1=i zLh!F)6yZ4|R4mWKc={O)3kwKi$wJ4&63y@?JJ>fO$2~On6r7L6Z}rH1z$4=F+mYk@ z6}4Bn@#W%jhmR{r(#-(&^l3Bx@?HtSbe84`yLm4#Fz1`pVkRY!QFYEhY+oT zuACdhzVDXRb2Xo7^^7#KXi4%(laNOd>{=B*GJln|^c$n@@Kw2BKJW3aV~U^4r%#Go zE}`ceZ-ED^qs2>$NB58$^@@8k&`pNF{8GN~w;j~)6dJSH8ErQ)9Ib)Pr~vp zjN$jPd^1s3|J$JOiz;??m)@WQx4H`9p6xtrN=)@;33@Qoh$ZHR{BHW+BTv|ly~m)c zu8YmpedH$`vG4-i%O+4qhJNyOc(pJ8$4*Ck)=}H2FYA+h>8EZ#S99c^ig&(154fMv zA3CW~&?5Kw3>wt@WT@?gzQd~$`e!+9PMXfHpL|81nG3{5_Bbp?4TFaI`| zM8Zx;rdvP(&dJ|Siz6`H}nartEmJ!ahK zP)#vHsrQ6kPsfr*O1-qF--V7Ump044e`fVy)Jk+BWRi%>4o49LmipUaY`p%uFxtYZ zuS8zYaB}>PS9qLD=rIqD1LM5{Y1#@zw*nk!od6KVhGzT(#ZCni%UWat?7oPp@yTWA z!*AGM{Rix0s_WGkn=h<7vM&S4qtpUp=v1ijSJsV^SV;uM5c@II_J+ve?rP$ z5_`m@9r9Z($ax!+U94YMWhZd|-q|NxPK7`Yv>%;*!?nhy|LC}w#btFCM4-QVZVm0c zYiX++KZFqt1$@YpZ+7o~mf9e12byb4`Ru2>spRqVksM`TmA+rKf@Sb0(E$-kXX>=a zbf?$n2BI(+iCPU8R2^LvfsX!G{3+0oB7r^Z!YL5zpEBhCEfsZ!`{QH$wU(+GsBqS}3K#>rXsMXmRZs?_0eSuZcEbVfqC<)fuX&(~p2!2uz@ z+xmbT^?$eTdSfq7M)oF=@6-#C04a?(fv(aN&ff82CC&E;4=g-J^yJHow@-3tSA`4c z#NI4;w9RzM-RS!TD%#oc=PJ5{_P!7mRk-Z&w` zu@|M}7 ztme-7KCe-J7Mui+9>gyi=$^zQu~7;2Z(|Vzueba5ACl>YtC@UW`$eOfxRUF!ynJ)* zXREUkUbSrUGZ^Wh_uxRZjU@SFT0UXyaN1vx?~CwI1?u4)-fEV)=^!k~uNTDhCI6v8 z_NY1U+mGsg*4vn~aGMOpO6tqW$W(Y%V`z8x&0dJ|qh7j%zayS)!;#*MV`y88ackAF z$lq20p5~DM&Uc%FSpv_buqmKFFt*g+W*Ifz%hKTR1-W9)yU2HDlJ-0e^m1FJ2NaQN zb4$gta1z59{eW1p*V%IdFBWKEQs29jWF>t@TLO4QqSN?J$LhPj8C+n&%1`>9xLHu@ zxgLn*+cP`BTA+|OeqLGnZn78NO3$SCI1FuMF7{cy0!#|6rEeMsIE0DXiLG@z9qxO+ zXMR6;N)LYEy z+ouO(6JP0h;gYUJKbV{7E;tLKewahs43}+0x4z$oV(cy`+Qf~ZzfX?W%&)!|c*V6S z!04aR%^%sc75pBYA=l~6-<`Bvj~hqDL^G3jyCjKX!1VJe?)995l?1pRD?0EFFZ*$k z$e^^oTR6O?^3J|bUdp1y`ADT*Ye6GUejWD?sC!=Rs4qE|covBXk<3giA-;KKre;;d z&Z!Rm!e6PlK4=f&fJU55H&;vW&V)GsnDZa3X25hSqboZ@GC~dpPU58AhEagGkk)wo z@n7N9oFeZ8(N=ni__IkH3n&CIVEy#RGdRBNL}f}%v}=Aw2NPW-W}v2nSufdX{YglU z10r_73mkq>GNk(>pV&`ueY#(eSKyzEFv1kJ-NfS&bFKf{=ZaxkhUg;w4zIdtPAr3n zkw5SI5LKj$A)#sB+`qUp8yEe~oy5k;?uj$UjqXmBx%4#rEh~GiqA0e(%86jA(6xC| zcZQAxq`|Ltv!t*YMbmO=`m}QBDajiOL39@{i2RZx44AofhiKuXBRnal7i@6M4%l%8 zK{lj}d%|btZ$XdvUX&gXdvM+J`54hdawzr*3mbO}kIuFf%_WDh z>7^uqxBBG$6z#AyLEF$}_ zpHm(4JTVb{yS*-mNEKO`C%*$n46q{W$2co&R8Qox&1_Ff*RLM67WvnOgrB2NcQ6sVh#bP(Q#1s_ z6zN-9u1u{~$5&VGrsp$#@?=f*kh!h9cRUat)Q{6G&)fBWPn{3#YzyzbTZIt<%F1?OvM zEzbnjNf>a~c3;{dmXcu+w{y@phy96@&1~6yrfiJ(YMm})3xr}B$hY>+B{7Kq3#HzB z>fT)%j-^U1LWhV&r>|lEFA$cu;bUe4a*>W`C-g3ru9~+YUf1zbT~IFbEL*pLN;gaPK_BY7 z1>uTPT+Ud+4T%=+xE4+N&Zl%q)28OH!5wq@56WTeuOwwIYc1bB&AL`~?4MgTtW4>= z75XXq}NJb-N7sHJ}L4eZ^LaGfhynUfjO|_MNBvK1-k#6u1_u( zJ%z`)Jhsg0fA0CMn75oM47sK<%!x7JnayWK6b>U4Y?=PRh;p@GEilf0e?X@ezHRSC z;flpvQ6(Lc<*q-aw(lPkItVfD%xS$l^89|Gfk%-ZK326)_S?b%S>HPlS|3Q=98F{^ z1M@!+_3a>8+2J|^NP(Alq$&e-0c{$Ud z&kvu&4p+HbnO50I^S6{!&%RQAV%nN~gaE~s^@AQmN zVnT4#f0&OJiNTV|J2tgqL8ZX$f9_v~^1Ek8ZoRxGkS}@cMSh>Qi_ZWssC}cgcSMbx zkBLv=jqLV%A>t8jaE_!re*WI1Yg?dG4);Z~VQr+$uWjN`tj%zVC~#x5nc%dIDy|U*$Kgfx2jPvj4{Tf39M6AnNNmbZb;tvF7n>Ytlz905b5PWZ$Fmu~ zAcXJF?hnl?qZOfN5>IdHU@Ajvwzd9-z<(zT+Q)tiFzaI2p-?}&o00BUP-?bov_I#& z>H6s)J)X$7d-@D+o;Jow##Ie;Gwai1i`=c+^XqkYoG}y2vCd`M)1j|lA&7#qKc2rQ z_;KtR>7aeY3`u!N`O!WX5M-fN`KOy#4WM@<@#)T0LQj>-6Glj41|KPjkNlSp-oAPm zzjBNkfAMUf(%M2SqR#73`nwh?cRfX!S`2tv8tnMxj_~D%ly>BAPDTa~8!vSenM3vD=*)jm70n4*iMu9JAQl-%DC*H-Lf;x1(1Js-$J7_fDf9 zI|h3F;q?gzK_6xV-;8jlUCof`B1QX9>Oe-&dbeG6Kp=#*;i8x6!59&@qOWAV8yRfB zCRx4?iBx7aj-F<%{QBCM_z=Ny?enFt35njhCbH46^zuA#Ae%!5qc?2tPbh14;qUr} z6^Zy#X;n>ltBOa|5OvG9PMiS^_Hf_%zby=JZco;d&tc75Pk<*T7PvQNn-)X_b-c-7@9=v4$_=v1=L6Cizz^yk{%bL4P{ad+Nwb5`#l);c;lDsbs#USuo< zUS%4jU;<4Ukw$&D{V_#DfXpmK#Jzu=V9fGZ`>#`hC-s5l+5S*tZ!|KUDWD3LVlUY+ zK6~fsrvb6S?#h=bc5I%%xG&7ZM^Rl}JXg;q>EIR0a$Zo5y+i2xvRdgrCTV;59i~nR z_6|%qZ;<6FL?T)^^`F!Q+N-S9?4t4tc7x3N*Nn&2z3+l|R+WWjg^c5)&8#{ZYE!qRA8xTpCL`%<$TH z9VqR60A}w%4jChG7sj3KfJASu)MY7obqhn~fa}Q+Z~eXKAC>65kkyb7+YJ7Ab4H(E zS~}smAM`Nb&+(1lvVimj{?i~PwHd69503Pj8uB#OO6_tWC+Q7}P&P<$%Ty;$U=|TW z9qLEEj`O@wV!HsjRn?D(wtH)l;HzpwT)XN{jhk|*U}lMmanWM`mGcVg*$OKB&uVRcFB z?_`pGB;^`1+#@c`HSMU!&({8$xJeNl*J}bGD1CC8StwU5oP=$eA~_ zHl?sGNaZK#!x?WfD}Iw6A5KgZmz=T8sSqc-KX0y7arWNk=X^(I!(%#h94NMZFJO&>S*IkLy z03MQZOxYJ6s-_IpF5I|Di(T^JNVXAz>|Q4$O+G~DrM!RNfun#9o@>CmsVI{1!&T%} z(Kz7u_*nZhzwK~SpK{{yr2WN8_-pYoM~0(`_R}#WOB3n&DQg^c+zAW~0KYfsu)!r| zQFT0we3mP1a2U1m)V*$tJQ+4)b0GhJiW4_&3X7X>kKCbt$T!9R)u(5Tynim>ILpQr zXs|UEn$0%Im+Mnc5kag58SNK;*2q&iJAF&Agu!`893^GbKByhJ=$rd;&8axGxmsjh z(ZQ8cLxUOc#-+QDv`E%MD@igQ5*4=ghF5;#b%d}eWZXJYnufS=`*W?qLfw`sBv*Y0l;LSegF4(t~G z6jnCDQE4Qny&xQvLQd_99tjj0N5Ube98{vXxRXy3&nVItaV!=)MI&5AnS>FEShfoK z&DV&`OgytE7m@iG=8SZYgzB=qZjhX&e>62bk`1^ri*C)#JIPR`WuJg6)|rf*2AvxV2- z1d-@5J!!`?8FrnW3|u;76-~#?1fd9NHIeV@S}ExEz|EJ4b6*07QCT%&MLQIb`z~09O4zL&6v5%7cqH)yageGUnM9whJ+c4tf zjH2){r>8(ZE$Y7QCD*mcsf`qU#glo@8&wJ7y)sAbEK%X9b^;jj!Eh6=B`?H3USO(U zu}T@)&9$MXePuB_dIpxK_9*{}7VGEXdYjN3V@bM^Sz+=+8yKXH4BsS;HZZ%hjOhLG z7|_U{T3=Xvth?Z6&n+2O;d&ENjt>)TbPoOCB|my{1~K#=sZ&TaF6`xlkEPMSNfOFp zgF?yOTOQwG=VXfVe7FwV&_FhssncoMPnQ&_Cp@NiQ2ANK*L89wPoBuIevpL{pMOQ= zJ-O_YSW$~J<@vdm`tG|qc?5=xsc`7Jy4=M=R%h;ZFnAPJ&9g0wUzie0(^Y|`3&x?` z1^d?Up@q57R5|X+&{Q;`QbOh)ojhBVZpTLaLIrSt`*Ye;n8Z;z)*4`O8&P|}Z>U<~ zM;)P^A6vsuY*sS7qBpTv7u|N5FY}gVt{6J~La}KWHO~*S!MNbOD)ZCY^kn^PSl(X` z+)XG}EqFJprQv-qqRa=nj?&gGRmgIb=7hv4uv-EXRG~+PS^Q^-9s(Hg! zh?}`*@?JQfA1+S*yEylVT4e zzb2#1Ldc_K_wn?iK$}~z7mIm&BDv>&7UjEYzcM^hZvl2*OakMgr4_mehUsmi&~dL_ zPnG`aI27sMSS{Ybs;LLG{*|*)*}M$^^;)$?#)B_oZr|kiO7?H$R$$|n6#&^E(QAQj zPiJq;UlEH6Z$n<->1HoO!$G)&QBc5@>qGp$$yd)=T6?-X>k$T#$!P!xJ>LK&6g~5C zC0jk@m)6B+1hhK5se2k!>PKA+_rzpRA7tSH#LD(`ow1eT%FkAW+;2*L9?&qrzcGTs zkC^!7`C+d<%1Ip7jt-(AO}FbI45;;?DP%7?H2A{`;#uJ~g~iy#isC1oSyzSb9}0k* zzhe2UWb~>V`u88u4;@_K4I+03e#uwrxf}T&R%=mw^%7YSj@Vf}@wl)2o~%a)pPqv( zQIjwpxzCUV*}Dvk(Sd0tAKv=pL5tpJdwx$Z?MY-`7_xyb@F;i3Yk^f+EzCQ<{{u?W z9cFiqul%CZ-(2T1WS?^x=|%LJim-N%FPE@q$O+Or(khw=I^>W<$Wur?c@K(=@)ZgE z;XHO%*&B9gRP||-dq-d;@uF&1iT-lLO<9zu9Mo))pVL3ik^E30h(^`mtr;&qZ8@2| z099MJU-wM!&~O1exQ0jEi0?*_9&@v02nMSiy>4p7aK{a%qX}tW#q0V^bqn7f!V&N{CcfoA-C+m!+)C)B#=Tjzs zTJZSgMippY#oFDRx!v-x)C5a4d=enn$;4&vhW5QZDsd^zOaOjtz7D9*1*_ zwt0CabK`sX(N-7yV1+EWJe+bKIb021h`2Q>us&>Kb_i|6D$;MecJQg6`F?=o@#Oa- z`gb}#3IN}FpQ-*te>hbbVlqcY%9v7Pl~O#!aaUubdaVlBPgyaZNJ2BLV)ZNVNAzHC z3nz1l?|H#D+aDm|f;M(BP1%W41s&gZDBgF}<&QZN0jV6#P+u(W?b?Jp;1@P@ms9BpyV63(VQ1O$5YOOj>~A$98JV^|N9#R78UVad zs7IwLF+W=moIVfXSt}%C+TPC5@oyoJp>&?lfZE5;0|#uQ1W|8W@70^Y4ZA_&NBJ2C zvyCK9PS3-1QxPm*$JYt{Vk7Gn?j4D(qhXY1!wDsjcM9Vrp>yU>*X=L-DK&Im%$>7j zvqQc%PH@?B-KpSH4p8GU-OI3Slu#yE+;SrjvH#Xe*N$a}~8 zi<&6w!EetUCP^Rj^qX&QBrL|!X1q2G0m{L5q({&BT|YU$4wL>hg-RmQUb zhLC8J0V$=^U>h-IZt%SBdnf~qlU^k1Yjo2c(|B+&Twnu_OLTqTyrXKKUk>ki1_+aJ z_ilNK(x)_+(5F0CiyFPcPw?#VxwhW(NFB}f?Lp+rohbX=MMjZF)o10M!zBv?nuq@*y4q4eV)6*q zGH2KQVN`1Pz$Sfon2COg&!uZ!QEFe+hR+7R+yPb~J`g`@-|Ubq3psjx^SbhWwvajR zRDFK^X=ez`cq{a)Lau}tvxDByx@-H!Y|u?@qoLzWEO@XG2*n>c=^3^v@U~zn=`psNc_cE|<)~J0{Ik zCE$-=;txXthWV;eHg#^l1yrXot7qk-eLsV9C#k1jRrC(#On?L|Ar>R2{hYsCm%a|S z(Nm8j4!g4s)Z?2!5CkJ#4vL7Gy}1wDUwNy)$vc@-`snHmGrQ2PC>>glYP{Q3&h=Hh z&H8}l{cqBM1w+o^YI=QI40&(uo+k6IaM_aM;)UBS`0ysBZyM6e6D&9}Z9()lfyhbL_H}ezcrc1ur$hXPilB=Qd zrjN(gIgG>0311IESdvzsL?(O1huEQ=uepR^1L_K!-@ktH)IhH>MA!{V8K~Khck;>8 zfWlfs+fJLBkHhYEnIW$TIQm&URO*|$50jj6adIkGMas@iB_VBewl$LO1+1!TxF}O{ zBptN8XqW7HFE;+}16DGLl)mZRRKW|KgR9GZcNgAglKGLf!`=zG`TpFvDmdL=%V$T{ zrLUiz%hAYtTzqwMB(+tz64)^Hex>kXJa(`{xO46>Q`%6r zasba6zI)wJ0luj8w0~a{P1z_AuWCJ{xM^OC{{Gob-l~+VSN?%%_@vubqEZ63=H%=4 z`ORWK=LfL52OA1w?CB~@ED#<$jBVL43_qkssAPwSXFOk%2y!CHJ5W^FWrN0#e^xp9e zJPT+GLfwb#mu8=qc$B{0`?6=vJDX>=f{wQI{{6jR{)JQ@yloOzXU&qUJK=&pqp2gU zwQ>{st-xMCxS1b29lKZlUWub*#c1uqWQAVhjl=}*_n&wUr%zluKE0S(guXj=x3!x0 z&3hHEW7b>`r*RI^Ux6nI8LoJ;GqK_$zsGyE4_o;gMGf#h-iye+CTCKwK;wqL zFc&u!i@i|d4%gAuE#4dr@7zD$q)eJak;piXP938R0CC2qF=)~XEnbV!1I%2$jy02+ zO+$j#R7Wm^>A`H5PIMdd>H$WcUm9-+pzxG9`+a_R$M(a9<5Brw`2SgdOVuumraxtG z!%00g`C_#$cw!za-7rtOi$3d*Xx8_`m}>Te%+*#)uEK*Z$S`TiOG9w9v0yS_))O^R zpOJqhlM4!H&nJ!LhqgbOwt$0@M?9j9NkOa;9Jxnze~oYhDbbQz(VH_IZqdUmESP+J zU4wivUn(8?JB?)=rh%(pdCY5B%H=40<2N@s^lH5?uauN+fsUaI?%$J4me`fHC=I3; zc%}2;cYht$?b5wqY%#?xPs6Xtj?MVFyTGnobxWcA7+ZUBJB|N#i6kFwC+1ANTrT{I zT>R`e#*>Eg3|d3nAb}S$FC0IEaf=9EcEGeJ(F9r1;AhabWa3{jM*?&a@dj*yOgDz7 zF-wlEozPZF`Sd354+-qJG?5W)PI6y8o@wMiGE(^*D_DtlFy6=(;c`gcm}R2FVByr! zY=PV@d_-wBaSq6{HD7MzDdYtcz93l=?WD$RRADEyowxC#h;vj+UnIvxKu_{_SzPq$ z-pCxL|1^v?P14B;bxch(!r{iBuM-_MEKJ9eG=E^o44} z4X;djHpMf1TOtb-RFv_Hdy(;YCc$z?;^6=D8usjy4X*gN`5)09#u!!xKQa|CP~$!{pYz`MM6ThF_OvcK~Lo9e4~juGm=mfY@fF6Xo*(g zFoE0nnW)Q?%qJK6!ChRinI~xkd_I-n{2?D9eEJ;|dU&Qbs9FsBaLFg__ab>UnM3Uf z5e6<&WXsSfNmxzjB9o-DG<3{z6uFf+P2i2>bZ4iVZK*L_E5je|+mT*#EXL5$G4)rD!##6}UnkE_`3Ex**#i%^K^XoVoyWIk;V3&c(J4lnZZAYI zfI4?#CZBeN6;MOPpC)zJpEi!Cx7U3|_3whq zXUE9T0y&jA-x?@2WPcwvHIaVTkWZ9CdlVrM3O z=DzqJ+}nUioKAmcKeL$r)yUJc1O7uzqVQyX17rNaE&L!^e@`29G}mDl_^Il!QG0w~ zILgVmY{Dtq$P*e?u)5e1kiZmaTw)1u% za{zu;wj<6d+UR30zAc+69t|>@C|_!mRm+^-|93z}wvNq>A(FQBY8b8_E=rCNSZOIU?r(;_kKd@H|;> z@jAJHHIj+dJ~766BZn_G?e2F1D1x(eXSRC`aP5>|135?$ z^MmOc)!d1S0?9GV_d@x4b^IItp~SIFn~ql)mx~aCrS=0R1Jw5#^@BI+_d3bYB0S;~4>U7J#zsIsFT< z@tq(Yf1R@E(Me@%OQJ-%cAJs>iU0AB$z=lxyr~V5ii++koUhPST>+^I-R1 zh4FWN9_<1?YrEr=)Yr4s?O%_VR<&^A&zWfXm9Gt)u$L;r8ne1@`}n-(6{HZ`IwNW)WQT9A;uYcEA?T*Urf4zR)b$Vk zG!?h$zH;sO9+Z@}C~jOnwS%~nWL-N@V*$wPaf)v=Ft~dYP*F&3`B$UnIU1pd&Gdt& z&pIBRAP60>Y?9rdeEhykEnimY;Vyvcf4SoNB;TjOQP5^tyRD>t+bcpZ_z8ZT0K5Ud z@9mD1LJA4YEqpHIEKT=s?{!hORh#K=)|?GA9nIUB%WA6MP~2#mbBQa3tlqOYMfcIQ zW?pMIOs54NVz~c$-chgW#`#st`J5p?t@*>M1GN?Lg6LP??YYCsNmdU;%OF06%p#Gs zy{;Y_TCYzHJb0H)+S=9q4&DN%_sbCu120|e&NfvgIbSU}kbG;G4T@w$gsvTxNjCVD zNl@hJF0B35nA&nq>*13;E7HL)!$ax{=V(Me%Gtl=4^10BZF>H8`!;RkFO(&*LSJiitX@==H`R=pEgtG~AB*38C-fxnj~(l5$AF6&Mr&1pk~Yxw5+^=df95e~Ws^SE ziU6w(v#LH@B;2%myngMUyjwAL2J9(x<@3}e5)r=x`uL2#(5hbEVF4)``M6X)#5y1V zlLIKl_Ks8uV|L~-2c51v_2reXtm1_X#W!nf1r41(rOFZ(X+`3SM_hrJ?t9|XTmPMhhKGqipYmS9*h%m2m?G^ zAEnTS(}%a{Kb@Ya$BNfom4lqsr*dm13z3hUK0s*SE9c(vza+*`nvRzYg(#LZ>rIwO z`Rp$T?(ed#eeQ*m=r8zPDjb_#Xg!Oz@l(9v#H5$uiq!D+A`nYU@>|xGnK^6ayEGdmJ&!Hlz#v%djDBUIHByaN-?I9 zlCU@NbC#>SS6n%o>w#5H5M_C7zJ`o((a<_HN8}SlA5lJlUI(yu}bxx5A2>y zR2mbHvUT!^m1^5{VKXT^<4?A?33p%e#LFddHl=~9bo&sQHCu#lbMNk-*Us2eBK%Nz z^2NBh7BbzKUz3M^eg+rmlw69-M`3!^?H-qrm4rs>i?^cn%MZ*kKKhu_nvY5o@l-77 zIzkb-#}SstLuGd|Qj0_Edd=yo6UBghQS=lxuzVnr@Q@MU@%1GPb=EI#U> z@i(9OqBvxY2FRb}Ab&4K{hnPh+1jn#rs(Z#<4k+sDFw;M$RX#y8;N~8D8BQ9wV->v z7Sqaqv+ME8|6<9ac=D|$&lxL$qbugs9y#}$O{sjRAW^j&a@I6Oe|ABomqL0lM%@xc zm3^4TF`x&NKjWG&ANm;O;Ob@B!0o%o^^~RuYT8}m{)hZr>y>8#;&eQ*3jEfSCGJpP zj;bZem*5;lWnEo)jmE0{v{xTXe|g-;GeZq9L^#$$=t#$}Dr)g>&93bOY%kOyPoM$M zas>03LPl7c)>Bf+i1C)@^8AI6B(p8rK8hc;Cco!ylvQ?A>UookWaml>ZN?Yb{L+2q z>dl*B^}}QdpTb`lSb{F^yL4?9q-YmWy`J0sX&yf)rv9=+ndM%hh#&DJojw;-Tfja1 z?gAYiwV?jj^Bdz1K^oAb=3bnpaY~6fRjBM0MYatUlFyxfpry}@KHF&lxkwRUdLO-? zcDw%#D!lAouk=l0DSvJ@ODP%u$QxGc(%;(9Lzm${aB63L5ZK+P?;jgwQSy#fm*YW_ zjxpBV@}x__HAmkuWIpFh2|_R$)9FtEDF6?*Kx*ODBr%WDs-joo2~WD0{g&7H>`7eI zsd^VWzO!Q)8x{_SBhN^4ttdc$ems9JocUXv8kUHe(Py0Q_3E|Caf2i+>^cO|?YO-M zS3`yoUeE9O#t%<4%7U(AO@}7E1p4h5As{@vgR?vKpKeCnUT*zM@}2rT|K28*3iLa9 z^K{ynHoObYfj1mv_CuYc*-jw;JEVul#W=3lLoT9k3U_k#FAb|#0FUP;b;mvZQblw>!acOLCkX+nMp0ROjM zPLk#K-jY#nSm6x}!=>6IX&&?|%h@G6Y)?S^BldagmHSWGtFN`FwcEH8&a{CQlsA$c z^7=!=Enhd}rG^tsA^Dy7`+aNWi>J7Cbj|ict~SV%`pUs(H=8c5O)Y+DWoI&!{bSKp zSDJ5T&<9=hAFrU_hfzmRYhZDs3HoZ?WRDTeyh(UI6Q!7$OR^1sC{ z4WB~}8EJA5uvlu8zJXiIZGMQ))0i7Qbu$u*&kiFs@aMVU!kVNPPN4ZxV#c2*?Tg|i zLU3S40SBgD*O8X4xA{btBrCQ5#L2d-`}emIK-k4qyo!A_a1A%$Pwa2r|DF|E!@YaT z9x9$ozCqdb11J%Tpv+=7_~(-UUq^QSgVL$<&tyGr!bJl!}aaU}7S z`#0*jV0oqO+Yi@WTl*Z*)ANEvh&1#)E+)rhw4}$X9J1Pmr|nO_MANrYrYyvGjTJB#by3S)$1MF7z7bx+eYh$z4NV*Kb!iSOeB$^oSeQIEZJiWH3XnY)Yf%{w*EeD6yTi=EpCCmVN=gi}SK z$-%$HT9*wMw~^5M7UgF#L!z*%ec3$a`-lEUkn>z~F>AtZA8qHHS#G!R+OX_BdCZRb zSnHexJOT&FepQXWe^_Y)p`v{?EqDJ)!`sz*#-aZ)`70wSqjQQ=dH_J~>$d>}b38wC zFQpe*I3H`{W>?g(y=Sv*nh9OLsXg6a0@R!Hk~UxIlAg(6)cf)Sx_B_r_9?zCpUK)^ zHVlpntBxo<9&`rnqoY~*>C%{Ou);Si&}D{S zL!wH3M_;+uONGH>c2%D1csih^Hmq_IhQo1nH5gYhUb%0*o=khEQ}}E6*^BxGQgwO{ z^)xX#1k*tH1P@=hm^JHQEdsUAL4-2zJky7F6ulaemQK=p4UhAhGiI%$^Ui2sJIZ zH6Eq?@Q8w#PhQCAdt8DT{o|MJ@P^3#d$C<#HLA<@silV`-V0xQInLgJXQrTe@vzHx z)H&RA0ro!_L2{=Yzxo%JVy}seIw2QfDL;;u@_V4y&`~~AdIx~hrTLj#lOa)x+IEAb~(hXNXjrbP!zfCKq^SGcnvhzDp4`K0>CMhf45OmYld`it`51vN#f9e6 z5js3CrWsFSeV&$L7f-q~NF{KzzrvdKytSQ7w4hnXQk{YuU5wukiM$PApTXed1}*Nj zcRsDSJMzb(`r@JIDI5{zF<&(9sG}3A22HL<)&xwwd#9qw*_|L$DfX$7z!PV$KJ}n!zduK7LZkq&mwIA1b{R*2+f}WHN1I28-1M^K7 zhRONd-Riq*HrKOG@)FI24)nM`?%s2|{+Uig2Pd(59fD#pUPqEIIE9BFiS#el`3$D2 z)rk8Ao#_@NvC{Ur0|6+hY)Zzl2U@?5$!$J6lQEtB?)w+RBu(I)W;jrw`JhG{f zHc9vabU16A?aT-s<2BwgE2uuEKdRNW)?o`vzUtiqhi$b&nTm|y_z=>-9bpM6|Aib; zZ$ts|^REYFz5D?ZA4O_y&rINmB%bR$485;?6@SL%=b`({EE)DYTsOZCUo0*o@{^>A z_Y66L;r>X2%{;__3zLo!Wq*%2#|JKEFOL$AHa5tAuQ15Ftg`jhoPxu$MQtkHw_O>_9C(VY9sAr? z9wZ*{aeHr~Aj7e*uNZF60Taj(B~Kq7toG~rHJzh`&kVxuzAPJ5z?-YHX@c{a#Hd9* z<^F}`+_I6W%V5W`Kuqmr!!(BDK6sodXXv~nyVS*a_ke|# zq#TyzII}^CdpN906%`V|At+QjnjX11l3)=Vj1xzuT>L;*eC^J#X*z2)N_FG4ti2nM z0{X)tZ;C7OA%p7`lz|V!Kc(kOA}saY)OP*Z3(Ft(ycSesM%)7^?2e&4?r22Gc84kR z8<{^^o%gLfgqNR~-iDpl+`>k*+4@zG+*LoL}X>1E`nTdSNK=S;>i~RwuKeq`e#T zquRUyumsTlkiFOY8#tAE*S#)N=~VPj;-x{s;&y{pCZnnOmlA> zdu*}Nhs2zIkt@)#d5$4zi`o2pYORlK=^II0Z*`s_B6H8q=Vl{2vR%HX=MI%g^?Bab zQlu|IkQ=2%TTvR=x1SjF!bCghal0m8>kuMH?)tP8p6^+F$TQF7gL#skve4Uq%_KC@ z-ilZ1*+}0G4$Q!_AA#RHa#8!c^U}SG%@2R40v$=xawyp5s>xWv9}ad5Mq}`n+t$+{ z+5G9F#V_huC~oirP(~1!Pq&(9tVn|SldBnf=?w)OJRgd6ClbIQ!9NY8{ z$W_Ub;nG*J`lTnHn=M_wU36xQGPT=)o-rcjrd`xPDem^7i2YT{UIoP?=cMgq_msg2 z=h(S<0XF6@lgQo9q{;JXkDmFr|GwRaM22zi=8jcq%_$fA_jhw?b=bzPM+K;%Y8&{1 zypCqt;usbInzku)h;>N^chf$*75Tna-wHP~c$Tb$m2rH8-$UfWbm3RSR3+Zu1d2?@ ze!ffO_I*{d9~(UyxNRR?n1Viv1}fy06~ifaWwe)08c9Sxjfi>n`}RIJBr6zxf44bx zhILlKT2L6%VqCYFxYdGP>ixhM6RkJoVl=p`-kmkDmrQBE?B18ibnzi#y4 z<@1p^+gx7yxIxYv;!07v!~T9A-Sfhpz0teRutX)IBAE6Sv;6SDk(vFjmyn6kHrgiB z?Qz%N73)xK2lS+I_YknkyBTAHDhxVvT z|a)O&CxFaa`p}x#^C)Tu@mexYXJ5i4g4%U<^t;uUQs1r5nm5i_abEj zpH@w)!PtyTKEJ)ng4^e@!&{-t$a$5?6PF2io@7qB{IXd8{e|IBr}e{gx&!UfDUKX_ z$I%Neho7}93@KB~K=iA|5K|YpDUbbkgV%}!N>jfm>@L&}t2452uxH!+x$OD3w`X?p}QPJLJl^j9$duN4Q$>?S^gw?8Il}&i(UDw{M9* z-pA*YlOf9mI`?aG%I_u^m&GODj7Gh`=c6OLjwy)@jHZmqErEY@IP$1-Ov|^Yn_6_b ziS$t1^9WV`v=I~-14vGjG?5&~`Ia~;3fJGWar#{&Dxg1T^$x3AIqJWy)J6Kv zh1Ky`-8lrI3$9o1&-DTX6DYXuZ^?f`Pv^>=SFxb4!>tvZZ-ffp<>#aM($tNeeF|l| zTTpW4(~v$D)UwUF{9yhmHbSEzJ{hTn#$2H(+DbyA8l$`_5Pc-56uE zd)P4x$|`b3KYo7}O?JP3NAbJEPVEIVtFNgog@^PWOqvGV;&u0YG<6K`ES3YL?APwm z4pViQWz{!8wXY8G0QTMocC45v21sRr5KQDSga^$>*DG7n~T;D z`%|Y1pE+0Tac zX6@eS?L*^V7>ZDlKg+SZblUb9z{J6)Fi=C4b5ucCyg&4-(hzayTln=$z9A_<`Jr%- zVJ9JYBwfiYCI7r7G{**IDryb~ zrUkAyEXf3F%AL-^d%XQl=Y&6uxU`k0l+L>8i%+H9PGLm1JH0+; z{Jn%vwHQiHw)a>am?M23ejPy5X-)>e{j7ZGH;&eY_1LC%ckgr)fkpvNa5MWdp7%OP z91s6k^WuT0-)tMPi0Sw8`%}N%tB-P!tR6yYAM6oKrotPdpZ5XN2Z;PifHg-%r)0Sn zUm;{k2HIFJt2~X%pJuBNR~k_>ISS{Ej^^}u74|KK4hb9)uVqXV@N_CXOdGvvk-69& zID@;(VNGYe#uS8y>9ruXvFn6JG_l&tH{)(WE*j>?w?TRyWVA34okgzfUNMxn^?DB& ztYNI+vWaM3E^LRTW?!hST_d^z^v(ClS(-@d)y5gA0hSmAxtgM&gJ?~<-02XHs! zjz8A-vCyp7A!rgH^3Siim_%*27wy-LK?Sk#@?D0enVklRC7@%63W=4o$yGa=Kkn2; za5yb(9jnm21Sv5^2>ys5eyLPrm%H@nSN(Z~8nxQZ$~;!u%_bM=W1F2Ml`pxl@D8DO zUh7u4^x+Va6~X(^vkRb?@MUuv31#_C5AU2JAK=rRsW&aJ-xozfezt27!6z4>e49xEfVAe!g>FO zs#Yh(reV_k!G%MfHHyzGfrcPBumIC6K4-)t7g!5@I`{mu-($g1#`9Oyk*tE%b-lhEV@ZFUcn>V; z>6`pXO0n3GM?s&jn!5e$%YFNP6Pmi|Jg-ciZ))`)y!`808Rzs4 zezok?F0GtgmG|V=oVe)Ig+1vZ-l47S_l3Ci07ca@zR&aXtUXp1bH@t}jWOR;Dif~q z686i!yG*^NpI_aR9s%VY7=@p;-|h{qzVjuN;G0VM$T&)A@U3!$fnko&Om9r_s(koU3rBKSlbxcu7l|mqRvzirF zs~fxs^A?U!6Z`U!LvuaEnhw$FxUSUEL5@Yrgl&C<-wrOW=@B=aT+zjm=}y-Cqj++K zjvopRV7VQ^sf#Zkk$ykql0a*+Wk%njBEiVJAtefqE;hGjJlb0A4wY zQ&fOHSRoB{+3heA2kB}`{i39;UX7*647W#=9~0}wuKcmxXfOQ}v)4w>G#V`Vj_+V` zx1pvy8E@AQucUOFb&74Q=>DC4uV>+i;y|6apBB=I8LAwBTk+KU0L%1!0$a@DCta`n z%{sxzOQ#OvOzk|0*`$&p!V_lU{yxj$GI5dk1oDPg4V19%RbT=Gdf<=emi|R2yz=KWw;rMI z!9JSg;o67*gim{-{4u}l{WhO9GJx%>7J+IOVf*{(E`R(dCA5CaU$OJEB-~HBsZ020 z8|@|Ls~}xzJt>vep&$4e#j9*D$khAC8(q;Qt@ zSvw;xSG1wb9)2d3pt!Ya-5UGd6(c$%E{MAE^I_x#cl|@KDkL1}ZpHV(Zj^O(YXNZs zqn`;m*tVJ&9P4sJKhPwr%&R9LY0}T@R9Cikg-&@;?)ps_9|AW-Jiww${w4b#wnQmO zpKg=%KAc}2`DAcg$%HLF@&KNQh)5d#mG9}7DtUYlwSIzf&bbA`Ivz)QPaELR?@jzw zGg`Azzl}*7B{JZ*XSn8D?7xWol0bA@3qQK{XS6Koq|dBhzZhAo&F6z*=}hE~ZI-6(sXYh7 z@4#WUxSc7ykPRCHO+M=-28kg!75golBTK~1rP;`Ze1@(SzoLH4{>^mJOM6bRYQnD` z2knqp-?~h*N9L??$X(@LI5(%WdwRW^$8ByJ&VP*9b5G|BwP$#{t@wI2dC;r`nR4nmm(1IO6-yZ{oZ$bT@ z=s=5VMwidG-_7TL3?;1|lq`K=p~&4`!Kp;UoDf78eq7A?$2!i4Nc9xmirEQ(iHN1- z{K?CcVm3t0NM|8P%|6Qq$@pF>5!dPcRU}0L3I#8|tFz{%Ri){RL)Uz5%KT}JZvwx-H;C+RGfYkVGiNoZ z1l;15f?*Y|yY|CV@waYLv&y}V&*gQ>wD}vF{m_h`**_1tZNTgob{F~)R`W{_-Nsu% z4uu0BHD6HFu6@#msgigw#sc(!y3KN3+nnZJr}6711F>QfyBNp7udp&!KXJXv20G3#w5=J zs*1v4`33MgXe~*;`?qWn$2M%Xm)HE@P%2q!1tRZrb;?0sDxm-%OB@pe`6Q3OacCZl`5a_^|ih;d2sM`Co!^Cgvck?=yO3s z3rpW$wL}J-_R3pH=jN1p&v$VkDVrruds<$e&$lsxC2|!#VsU++CIpA^dj|@N3myl< zf&a+3Idm?0Ycc5gk27@+;aLYbz9P^1^^a%1Boe_={`LG2$+bnSeP2G`@dTqy=aV@v zK}+N~kons_aZb-Pwyr0U))|s~R6=|dS&^E3mr3{G^^lNjQ7!qoz_AO=zQYK6YJ3{< z4&IpQ@6#dN2B`>=->*egx8)@{x7bEPBVG$QP+kf2OrMqzmAGhR`zv3vEH`!`UdMAY z`<8_?z<&4|x^M!8oN>A5oAg>YY^t2C(52+mg-W&}w?~lA^7D30)C+!7GuBfppdX`W z><-yxn9qI>4N37~OGp6@4&4LTFw56tJTCkIWe`1S?{r?_g{I(6Y%HHf@-(xHi;mt2 zzOh;X{Jrk@DrEZmw~ZVw>Mh}G$mCdgcyj!s7E5^{=(>iYdQ>EM;8OB zaZZ0;KdPm6=5nJ@g?jy@Bcs}$Ff`kQZAEb*dp^7}@^LCGc3-$TI9>8@`)8x!K_$>V zCY+*^cJ0*FW7rL)hFsUw?bzQxGnoq1aZl$Nz7&6wls6NAt-zl2S5&IEM)n%_Y}K?_ z`%qF{E8ALV)sI=?3jvvg?mT$hM< zzR$RE_6)3M8rc4S!l_*kv$Z(Tv)unG&QL5MFd^_1u-&z3g({Z7_T@``VLtJ`s!H$$ ztjO16+T7C%>_D=Uel~!Y*n^!taC#uo-&I^ui6(cxMK}LbV4t41;{`e6*PfWcpVyOu z)&}OaW*N7re~+CSMy%o>!r6Fcb-^-bk6pw!P1e9%w0Y}*yZ2r? zSjASop1R9uX28y{w|o)k$NVKall^gSI~k;rh4k&!>PH@9O$&Gx9t*@7L(x@UH8g@6 z&<2bf{FW5kJgdJGU{pu0pK)wR(nu9XO zy+4PVj~9x1gu61+I7)*czzl9-F-tY=y+`rxD;qldbfBD0cGdiRbXTFFyZhzSmR}sE zxTmguRJi=@%KArpfR^^?M2nJuLXsGJ>1fC1qD_{Lfvk@rgN}8(s_o<5gP-7`DhMSc ziv(c2S$V{bJU^L`$oPh567VWDpzwltb5XzaUC*J zz5PTE=W4&?ZVJ+{-ONaNsGpo3i&-;;<+QI3;|BA^B|5u1DO-GqO$hw;NIsjmeO+Js z9fbs!aQ+Kx|H4L8>h=k{CU`+QPaht#N5Va_@iWa&*uOkwe!nwaI7x|(Lee&eCQY^h zQS6}8npmzU&kB(Ki|((CpYlT%A+(w~W#$Rvur`y~g6d$KX}6zc+F@Z+D`I*CzRR|T z?Xc|xvC=kU|AH+jVfI&wiM7|uZAUGSmO0Z0VNa8YFzq^@*+(iO%bqr?HXXT^{k61# z)F!o$!H!H1H=8Q=Qv}|sDB2KCL3?JRxU(aw35oM-7WSX5uPDAby5o&jnzQ@6zh`_P z2=kpO6(-k?Qj3{G)#6A%>CcRY^c5}rUPbb6axC+)u=Y8_T)p=PvA?Q{Fxg!Od~yMTANztN@#Yyy4`BYywh_nW6Tss}lDqVVh~q5q}L;bO|ov6@E*{E&A$ z?G+7=I(LQ9Sz}X0>R*;7+t2R)+!r5$ZLZeMom=_gnJk2So*C0z>rE>@-7Gm!AW6K; z-|-63yDVe{pA+Zh^wCY;tprfj$NvUW*bf-6IZ6DY<5(JYCH>?RS|nWDYm%D zm$&H$QY}g|Z_~p$sH4zDad4d`KTJJwAFevJbI{l8gGqzKn!uGTr&TA;>o;sEE7xNk zv?^J=)jUcq37oU>IYoyIHgvC79uE@H&ih>FjYn%NiQeEkk;`i2b?wU|E=9DihSuiA zPQ!mkSr4?sX?;KTEVdfE#lGm8@!_k535e1AIFLU=I-eYx-mjiovBB$aXa73p@x?o? z)15wjj7zqOV|FuY0$Mw^Zjy9js>B>Z?b{i5GePndT#hiLZtb?TTasC44`Tj0?19(okM zjT5zy?xs9qc6^nW-^Z1QkR^I3vEzL@*|9ldR#6c!ETh&}dq%{3y`SHt zI{L{QS4LIF$7$U8U|?YcKQOYq++W-4k!?D5q~N4Mv@`HjuK7~GDZ zs^tpDJCnatjn)vob4-CWoK$u0{Q8GXJri;hdJ zd6yIJWN}nU`EVuJIg9Je^sNvf!^_O!rr8guF3aoVYobPEoBhd-OLWY(pB%?NkJaaP zL~`ByO;h(-pwiu^Z&S;kO?ZCU5?~eQ<37Xrn-zQ&`9$XR8TTG3y&}nqjBh(Fw|-^FK7LP zl+#^K-;EiTR8?ix&(;h4WE0r9D_j0>74vnf(p%BCJqN-qgl@^>Tui-OQGCN)aGR+7 z=i+R1DQ@=OAF&Rg#df$PaLv1))F>Cc>(MS3WVIK#RcB12f(B)8?GD%$&%wUD(I^~= zU6H_hZNHY9oEF(@y7~Zzv>dt%&5v)8GaJ6Ng_*gA7hkT`Uv#v%+&8^^$HeWxQ4~8O z+2R^G^7BEipKoGPvF8`{-QNL2PrWiBxF-e7y$jqOS|B1dwCXMWO><7T@>ky6uY+FO zkBqCnCx_K9(ON6zYPr!<;iR26X{CW|_ zPO<6db({P2{iV>E|79%5C(BJxE_W(B8nbTarh{{33v(|Ksb0gK33?QN@Ccl&@`>)> z22vv(4&0FQE2&=Y-$@vv z*XItvXKOIN^vu;@wq1AQh}P*Lf=0=82)hUnA&^Z z>;r+B_I2@7fB?WGMEt07KpJGp#B7cc29kw7(^U%X1 zWgKaoJEHJnaYB;1q*jj@m_hfLJ+e4_+QAw}y#3IasT+=E?!(@n8Lu{dwFf zXGsGa<)-A z?(?fS9yoZ)-4*mZ-7=VakF>!P85ExY16CcVDH8>MW=jFAj~7_xb!*H0gCY%QghK;V z&|zG4_&sv>_T<(uhTz?v+w3MsKapI^Z9clAk=8T^);Fd6ly=Aene8T zWC#Z?s8}Gds}G4+rZ~QJ%3Eu^?o%CHiAHY()VwMc^H+&P!g50P?(_O0>_MBmCbgN@ z0K1rX%&=q=RKv=;Z_MO-KsN+vkUaO5(p=VoM6(Gj-;X?e53{1}y%S;X@z1~K?oWqH zf&OLbQl{Qbid6Au2&7V`S?Y}kC+d%P7t7y8ZUk)tPRBQ#5{_IC`xmj$3Neq`vw;PqiZDZMAeG*TYV%2A&?pbyBXLDW8T@ctX1I)%fQas<$S4?5!EOsN0y`UbHGgz{O|GLDD-K?l4rI=j>q};IPuU6N9!JopY;%Q6zf?gKj_$&J@ypQ-hh@m-z%d&N^jb06vlek zvrO-dF_+Ku2&2`c9d!HPnAa!zz7|shl-k|j;|=&zM4dtM!8bq#=L|T;??Y(i?tI?6 z0#$}Tc71xJUksP3B{{0X53nCyxD;DNj5IjXC+3}>0tJno$fdiKbqax+Cr-WoQn5aY zcN;_rP7TAg1WsEl!p`sP`?Wm(c#DL@Z6i5Yw65rm`!dtnKo!^sKu|r|a6ruV*@b03 z?hV&OwX|OF%_A3GBJV-${w^wGnAqpMIaJ1Ey||mWSL3I4WbBCf_01^53)RpfLCM%V zbyo*skr|lcSlKZQn9yLpNk{I5f+8~g`BKb}d7uRMBO2H5MHjMzoUN5+%X@kY?NUiA zo+be7K$Cd|{*Z=Bd|mO-NpIdgx+%eZp{7H6`~X}4(*Vz*gYk1g8JRjtw@Nr|r=v?U zrAoZxbNW5Po^UvRALe}bj=}l;?)P~VUIBOb>PA=Lu%(fENx!BS7(GKe*C$zfb|B8M)6?EF9w5Oj9d)q>-&a zZ&YnKr)HnupGYh*CVV_Y!Me+gry-n(U#E@9+9M1iWy(y^c{@gYUM(S+_a`YlH$8`J z688UiJ!4!9`2|i}f7wWzxUn2M7MMfU0+f?-Yr0FX#OHe=MFNb@a_DO=(MWIRD{waF6|EJEmUUbM*ijU>2- zf&1FZI=vbC(6Vgh0A~Nbigp(JXe+r%2^saLY7ZI(7DCt)U>e0}Mf&k76P6`^kIC3Q z@1RJR2>wLyHuoDsMTJI0jd0ko!rjJCAWgfQl=z4;B9`KNXL?Pm>aPThFLqV7>rjlw zua;3kQN(xK9Q-|Ex0oG8E&6)MU)zJ3yZ?gUzY?l(j8KZs_B$nYaNrp zc7pA7av6Tag7wVln*qVC0GV($5Sgq`_CAJnzZ-v{kNS~(EuiP?13y9+K7aRG^4%&@ za7MumE0DN-bxb5>*{RPCCA)Bj{R&dE^wp8zRh$#|j&udb_}+e>Aq1%!i0jLFi2^&g z#2#{GV>thHsH~?Kcl%40UBAB&EgvfTm50CAnIq5$O8|ys?`0S6NZY z{bt=40VlT9bcAv2`hFcN zkGqC~Y|J7{vqr(QChzb+K3-tlixmRHNh}lmFG|i4dp@7?pOC&m#^AdVC_E%2_py)8 zCRrfD?-fr>ftA4mu0nH&@bd?~kOU*|S#dlGc5)&J{fF!D9$W8X*Cc`-W76oqs&Mi! zRsR##!MIbmMf|6Zoe@0spxUmofu`1oD8+JfrxN`;t9HJR-|yw80W<=Wj6~mOA#qsr z@?PzGp!Bi(bEv~U7Smhs1=dBWeT5-~8BE4OvYhbo9Fj8Xrs^2|UbmhTpV4I{P;G_k>)VG#AI-SG9d~;!lePL1AUCwke==c;`>EvZo_n zD?7r}SD*JYqDrUGPD=Mj?LYr@reu3Om4Kd@UFnxxV;cg6Ij*7Evm`X&_M`pIZ&1V+>%{2B8mSUOJ`sSC6L~_IBd*u_ zDRcNl5}a3@LHoSA5DgW2S5~@4xc>XTCHFn-#Z$JNOSkH>%@vCrqoH-p>iW!c!7~1a z)3CQ*<`kpPg^%1t!8tvbQ9yd?nji$d4ki%&Db~pUe3c`v$uQpeTPJTwwZR^jSPKamgq`~XYu-58p ziicSc^N7gf^lJ`Z*`MkM1T^TyczoaQ8E}s=b<}DMmFl@!5BJ&%*ZaKOASg5DqqR=n zPd#Zqb#3x4;Tj5*F=QoRYCb(4kNMETQC|FmdD{d=({j+Tb;X;v=7qQSv&aW$O)k%y z`-?{yZT150nruB`XEn(=_;IUOYX#+!2)L~GAN~Rox4K-u0Sjo{;dYB4SlCx5%8mT> zJ4_`?N6k`d4c(K15^vG{j9H;nUO(2aZ|0rosp0&B`7*LiYAFBI@=jUrVxq5#Xnvpm zwo}wZ8PsnoQlL0_-YmLlVWe zkkh^Y$a{7v;4FnMl6ZZw^^g(7dsNm)CD4;&EK{TynSk;jZ;_&Q2 zFA}B!*fGM&HRE-+)|VT_8oHU%@~WdL#X1h)?t$jX&_G{x>X_TN`u{fy#9z7P!Hzkj%cXM+iPSHUR4 z8<@#Dt`oyNK>*lFY&*Elup%0ci?{Q>Oy`J%?~%+`hLGHK12$xm(c@H<;WsC#l^dUd z@4tnPq)pHYIrpgMc(D{!lexq85_XzD+x36&Vznk%a>ez1@d&xp6)9?5|=pb&d?-W zDT=Ef7ZZleTCQ|}wE0lJ8w?3d=$A!FPE{K2bZpWngcC0Heqz@K@cx5&Q!pBWhT!Bp zp4En3?u$5o`#l9|2p93sXx9E6z628AaeWd_%hS-gv+=mv%JRF8@(Wi=4A3V*${zR} z?`J)3gM4e9agoi#q?A{IXs9LV2>QoT< zg6|_Q4jz1c;PC{S^aCko^3{*_YZ9um6eF#G;m-?z<@nL}i}Tm8vEK2aH(kH%iBhx@ za@i5tfp3kf;DQZ!6%es<|s;M`SsGti2GmmI} zg&$}cf|<|{{^k4VF={q+CD4@JGgNl*9p&mOM3@Ys{g;rw>u3!SOi?up*f0} z1BGIMyv_i}Hw*&!W<(^2TFmVCjxy@<(9ZAZOJeKV!d|ZxyTIRT%npbpU;C4*bi6w{ zi@=l=D;S>_dgT3T%_Z@&bf$LRmG!FQS90yz%5}R73L&7gw)vC9NRZsLm1y~K;1Y_f z#POjUrnYk_*<$oRr)aHfaa|_i5XUZUW!aSY41Mu+s|@Kz0OLISn8b^3*s81S|nXV7{w<*F3?W307 zPhyp#c&WrU{>liPu{JwO$!Sk43AYP5ua6ZQJW;v32Yjb60vpTUZPOOE6sj+!XqT-T zLbwQp_SVr1duhHGfY&ZFRlz6FfHvp-F4Yeg#G#p4`R4$POr;;V5eu$`xqOYpZ;t8) z*Gbam->X`MABrh)y$m55xrDHKnm6Pyr$Mg@^4+SgN z_W|^{8;ACvuO@rr?NJR68^TW-^v1+i$PnLvYGbJ6fUhXFdM56btb3RqN9e?`Q2*XJN%J5QNhT&!; zV`U&-3$PcJ5{j;Xv>0eQeN2&iU^9qdK9W*d^;oVyKF(QUBV+m&%WxZ$H|zr1AH3c# z-WG$(yJ{G&6d&W7}00kNZ-D+P1u%ZD77@G-x!3$KS3`=fW1! z0|(DR(IBDEmRr2#arqJI;BW?Z>1s#6YcMEtEWzp65|XK^vl zMxC1>b8oLXDg|Y_?`2Eahwif``mb#(e?VnWQ7cuj*DzD!F-;(w2)ilVSTMcUxD(b5eChN3WX52`}V#%fLZ_hvZ zuZE{cm1UT@*S%wp8ja8;;cwp$UG|!qlV64C@CEke1vmqdUJVK;vVI{GYC*Q?PrP}A z)bCi659VT@?Qd?<-W*VY`aA*ECuERcZZ7Kq`nYc%fjWlpU%V04+0Gn3%+zv9sSoY2 z)FJ0Tb>?j%M<5CQeOpRcGRLM}e@Zp><92!-UFu%Q4YVNOXbMIc!8@u`xI-I**OjFv z0tS(^JJLo1b0g;C^K|@ZvM`LOazLH^+vnqLegkJGr+X3M7+&W;gmTZf#31%oPhIEF zOpr60;x_ohotm1Z(iR%Yu*1#!P}G8@?&~eix(e;+hLzFzNmjygLeNt4%zxVwqKST zxGebK8tezXlJsPm>`{M}{g&0g`3^QTxCGBi$DUj~?Y>*{-LM}_+bd++eNAZ`l++*5 z)8eJuy8K*s-?pWz#P1a)-x==URp~GqCvr+jfLiS0jrG?GT2X~2HY}NH@Huc6OXM3|srd#^NKz5He&YTD1xW?_Q27As$0n)m&zga)#iVCAnGsF3;0(NBj(h>x-oPV`q|hK!1bc|q1+&^_iEf|Xgc&`&LJ&%+ zhPz>L%#`dp^(-t{JRba}-##-=-Y7RKoQ!>j7*GSjJ+9LJ2iB7iLGkZ>65VI`_$^zXW0;r8+riSWbpJ(PiGwy26^_+0QY;>n_2Z<7pXIe@S5L{kh^CQdM zY%bkpe@HXyb0K@PO~QmP{oPODTi!xLX7UZti@e3o!QD?m{FAe7$&WqYRl+bFzJSCq zKfI@UK6X`Z${>@dtQTM%5{Hxoru9X)<18F=>ogUzZv(v%?zg+v+tZ(A)v=!?!{(dvKzD+;L*$UCH*T;2RitC%3G65{8FAq z{u5}rNnVyHPG`Yr9Ks5V*QJ+Ue=5=eJsDd;B-v&is}qGomIe74o}`Sg`os6@Wx6Vd z^;tR#j(43_;sD1H=0kLyUa6c;b?sJk;iT1hDLsXzo%lC756~Eq#A_*wuEf4MBHf!~ zuNm+A-#B}|3pe(jLNW0H*IgOT-a{n#bhPQZp9rx}eB3vH1F1$@K`j>NYqHP!xM(ta zA1ZA&MEgEH4|H)(eI;ultb2cbLw|HX#V+66+y&*+;;-kQEV|L>*ku-bBw5z;DPfG)K3seje6yK#4~koLtJ>oec+(w5-%kVP8v(2p(D zR+IHb9L7VCA``MN1ZxzdnFc>Z@H9ejf%HDNU23kD9|}y}OQhQk!+z^HyYnLVUp!;t z=zIA%JIuP$3Moqp=4_Rzbls&P$-mu8Zgt&}aP}oVwV)C_puieDff>8{;mNNlV_yT9 zXCJa$`6lQPUZ4sN-j@481HKYnH!J)FjkmH9422VLDY%n-&H)%ue}t zB;c^y-SP-8?Eo5yZrXkl&hxf#>oKR3adfuoc;@(1&jIxf&}PsvXtf|0aKAohemoNI z{riIKxt`Wlz)|%x zVxeSA4vmmdhuB-_u|!^~a4`4AlNW}>2VeUhVmwcX#S(jsYp}pVZ%w_wQE_H?5Jzum)-XYjCS&n)+PWePuyr60 zkX2`BT*I5<0_toddY2HY+*uz{~vpJY#rLY_G;2k?s6cv>U4mn zh~-gyC%3zYtn2mA#VGCn0ZygQ>geOhORQtz7|1`QY+1{Wg&Rjnt zy1QS8kVCu1uN&))Uq8DfR@8+8EinoML(O9XBy~2}*bqC@>xaa>TJ`or8zbHBujz_A zW! zUVy0wj`KJxXxgcy`&wic8j7(=tW`-(rOUCpyn^p83l|l5Cb0Z^SmYs&lE4dMY^Y4+oS8Kv;Fxfd zBDCu_g0ip0H}kF9%-6kHA1~zgpz<>T5na`81vOTOMEuB!)C zRS))HFWj$xN+!5>QtgzI;cQ?qIDh>Na@2i0HfZK=K-M}@WeJuL@iM&Ok#06mw9{KM zR4Abp?a3bfu<{rTV32lLuf=BoZr9kmVEOBWwKw`hYpVR|geB_pX3i;`#)&<0a`y{P zb`$i@NT8YF>jT4_W0Mtkxs%`P>wGvZE{;a|cWh!D3}} z7C=Z=%0exGMZ)R!cH@KF!pikb5sE=PDUpKsjrx!z+r zzL1G1$O}@0o2w0o{`b?b>7NA$#p_&rI@qSXdxIUji&ttciANts7bQ~DkAS~pKc+&+ zdsDP8@_09h(cy-L-`PV=c(NN~!blB$de-~Y^wQQ|oS(xfC|gjmi1)g|4cPxBWl*M& zXTkAmm!V0UC_)9)8>~?O~a_J)KL8)qAlNbGpRR(Z$42+IQf3evJ!$T)==oP$AOG~ z?7c~>FlUizyyGj|_6cqO(BRipwM_RVTHooDAzYt#IHW$Ec3h0S&nV6sBMST3X^+Cu z*^1YY>aVi(;`_a7w=G|JxY8ulypX~LxDBlupLGY4xma{8?h+Nw(AOmAbsbfegWdTX zeQo}rbN(d`0UaY-*f-1`$cg@C6@YFJ;ZM=PMHf48`f(5ENhb;Be5#~7#9P6dUF%;P z)`vzyZ(XrInKMaV(4z5tzA5`M&*^LUysvL^^y+bPVAEZ`;lB!Kn_j2(m9XKBP$g^% ztpH+b`tI*j5sGy1-eylun(Q$w$ZenMoz5t+;sn5h_3=x4MWeOwY+#Y&ZZlLzyvfnm z>}W|(jplDea+n;-S{eOC1>ng@1)#7uMJOKKJckb+eD;@Bf=#ws)7Tq1FGuk#B5m+?*;1XY#~8bqC$LV1T0^J{+J#q=TaCnnYRlfJokX zzM}6v{p-Ewob_f;sJUJOH)=vbNqNqW;P2N5_hdzXQR=my!*OP~ftT&M;ln*hNiOo` zd=ES2%+c+sC=Qpm@KfG**@Y!X&l#0l<&?hc3j<)v>T70Q?VH{vhT12rr0Lf}%jr*s zTU)(Vmo6THc+ceEPevb4*SB=c=6fJV#8G{PM)6c$Y*jl1YqqrwF{fAZ5lYDy!`#kJ3_7ln+ zbHhG>Wq#hgK1Jy0KPIlec(?#m#aC*-Vfhl5S9exixH+zoTH33>RyxkPXU6l4foipe7)wovSqsU zd!i%xNF^GvT=;#dIC?k={=UG@2yPa(t%!p6xrt)o9Ds+$Bg~CiK0rJ<0;BrhO%D$j zsk!bJd+Je@PKRT_CdP2&gWSWfEG+TrCC!B5i&F|}Z7O_Ag=34vo__aawrWc+m&Z12 zIg@_@=|ATQ`-qQya^IKOrM!dW7fRNF^(SLlN2bE8?^*c>m5?01ANlWh!UUBLclJhx z?t3Y#(4D+hKOD|jUP2B#ZzQ%YP%uI-HZI_hD&gM+8>0?u)bjvuE-ngf^#>KU8E1F+kOd3Izh3BhI`2H&;k6i{&ebnfK#lmcCc^#k} zP;58GB7MuII*vAcHpM{JLmlzcTpy!EXi?wKM*>~_lXE$|vU%c^15|hwe}pZ}#iq0G zj?|Q397n(DeNWaQU-(9hePni-%FaS*$HyL@c1aq+c8p`Ujv?_e#8dS;b&|TkbhpcI zpB^v1)$d(XB|5z8WxsuK@jR%S_is(t!i^02j_lQknO8>fI-z{`y{o{&Saalryq@Nc zdiyxXLt*7|;7QS8+YiP@+=O1|$5cE)(tq5I!GW<9fWr&PACm+vUi;_nmxCW)9}!{$ zU}Ry}6||%wi1Jv#{dv)>KGm3<3!;9 z7xo3_i1)b3{L>YHfT8KX$P3S$R_@y+cmr`b+)`b5v=X5}%Mn~je;>1LE|V$dghMoR zMK>1vD81xt)gR+bDyq?VK9kZwPoz4L%4ED{+Ngh{0(%W^a$fzpl7HfpE#3Q9BBIE9EfOo9Tb&2zK$2RJ5*P0 z&~xqd7CUsfU1z@K%TS^0m(>v-jGQ$98d})41&npg`r8NTA0Rf(=g$VxOWJRTZ?6#Z z{?%fKtxHaQmbkSyTXP9)lQvycspd~RqC{=&k-`Iov95W_$8QY>M)~#O9>}G9gclXX zCpId_27Hk{8t>X#*n?NG`Tjuidus26Gl<8Fy{gwJ+6jk3Ad-NkdFjyoPK+9 zZ@llm#{i%~93w(a9eZl&@eHvv*Y}?$H#>Tki(tW@@J{8)~ z+_aH${`XiIi2I`xn~}7$!rG;S&->{yyq+UTO0Ya`{e3DzGg7({A3ImA(UoLTNHd&q z^PmXRJ-k52BH|{srPh314M|kJe!o?@&3P>cN8k6gPkKh1meCbo^*Cq7Q5$-4-&p0G zcps?G3Awtn$#R?G`JQ?iM|4V@(Hv5VnI9zTZ|FZCYbH?!Z$Hvind$h}XpbL%lfHn0 zoO4UFePxe#qM+A~G!jPV0*JsV0b#^2>J-nj2iGBv#~oo7PZwLiF?X??tzA0N3_VI{<-6)!e9EIUT`GJKRjM=wPSt-c^IZcjG9I4Lx-qPBr5+cEYM(^d z-Ozv@sm5^s6s6Z5_Al|6g=abP#7g3Xh(fC>F-x6v=HNx=>|;9RPy2NJqc><7U=6p= zOFezeJO|PjJkXqpVq2_sj2fV7x8=C)@fI}f2SZ&vsvuGoaBpn|(+9@cO)TQ}7S z1^i9)kzFJAIR=k^V{6a9i`RZEJlnpcX|s6Gu8P=iUnhsl0mve(LrW)c(~YBs`4-mz ztnaVvba$d^5AG8HcH(8$gma)xbVn3+qwGfMBL*Gbn6e3K6#XSefk#1*Nt9W569hy?0U7-IKGf~Cs&7|0 z3rS{V#EE@i45mT=2QK^=v4^eqzfKA z`PAUcB$ma@PlpFdoK-)65W3Wy-*g*qHU)Apv%JrBKi=)5kb13UB4dV^*gqxYAOg=y zH!Hr-_u%~9YeJ&Ve%tDEVPx$*KlRToEdG3v`yAZOmJyk+N$pIq3+z;ZxxA&vPI4t@ z>R0Q-{)~MP`WZqt#G?2$v)!*~eGfg^3?&U+QO>y8T3$J*cLe%sPgS`#{^6dXDK4&U z*XPw|ItV|v6K5-D3)4ifAovfLrK=p1C^Q%G3 z0a2XK#=Zsm#5s=fOtA+}4!^M;UZMCG&fQ@(8^m&G?s=U|g`5VzhXxHBZ;o`gmN zJg_Su_3O;~iu0?L5Z#iIGea$vMwiW@ zV4U(%Sc8A*r=AWSpDyuq=Ep_D(?qaEiS}a z9c{{tk6JojNXv&rTN);^xbVbH-rqYzKo&nVC;WnI&OYzi98uYp2~rAOqCu~h{#)|$ zPWDGhkvOW~?)ebiDs%CkkH#p<{&kCv%_H4ssfi+xfE2-9bAFGZHyq0S&OqL*~HC? z_Sb0k#R8^%l$Qhr?E(r>pZ8&$Bc%0KHgdqi1Ry;1+q|(Y7}w*e!1w^6VObZb0z#yx z41Uw@@4^EwZ#hfO<%hO$GzKtneGkzi)ezfbmCR(t%kJ+;^Tua#FLS35Yf@E4oU(41 zn=s2Nd#U*Ki-|`ae{r)+Fu7qPVtlvf1wB6}L7+a5;I--G`%Hlu!&EeA9pCCa&uqFi~Y(T8$r`=V}T2TE@(b`7tauAWhb*fxh zdQJnFO=H+5ZE<dOjKkNab- z_n7oHunF+i*L)TQuRY!7_iv^5Ko4z0N*TMS7TTYOQr$=N+jG?2YqTeN3Gsl#A+eGV z{aMsU_x1GB?@+_N^Yw&DR$PbW0gBscdkfZctY=u?z>tQtZ7#MGRe} zRy@P5esj)*{zyUlpDrBia8~T-M6UgWCzaV3`M|#A7C$ae_}#7u1^3trKMwBN^8(6T zbl#(Lk`1gzuW%l4beA8WN7jQ?9jW|SM^9LAV9}uU?f}Xq54|s*hL(hvqm;eOqi)OM za@YlC=vo_>ws(eO^FbSA)xk#|x5_Hv_(%7GvAa)b`-m|FpDGz||0DtI&=C`e-*t@X zL{MpuN_*rd38nc_{y?jM$CAE2=Dx-X>^+VMEA>=Y@8=kKFz=iu=;3P@bB6 zm3KbGl0Io}ntUfOH&EKcezKYVe7l-^$i zA?eZ5`|eYx!}};bAYB~giLjhG++%pp%!}zDf=?JxecZd(W@Qy-G3D zeGV*^F9g-hE)x;&GZ!7%NQYcrRv8Aw+vagWT z(Zv$5bpRr-f)0OiWnZH|mLQFZl;^}f6A1Jaz$3#i4F97@V;Jsp#E7Prw|TP3sH_i+ zZLV|^9FdiQ)2fMvpcz6hhImaX2Os(y6N!rrM`on&*uxS^9({{NO+C_?uR$M8zi#_P zZTi&y@9Bbp{h`mUfCj6m_AVrRy5gt`ja+Vjv2KjzK`NxYoL?FxR7aYa;jd>4jqkxs ztpdsCNevvvXV9mOxT3re+_x0Pwm(%QwZ?B);Np$u(}fQGrxW?K(61Z&=4DX7QrJO2 z53(nM4mPc(!&Oh{AxnF9MCu7bp;`F$kPujVZAYj)36O| z3n%jAaiFi=U3oxa$zDmvPxcK`ye{JsG!|Ig?{^P_r3R!pWG?$grhBf)p%`DgBx@Az-!)b)B(70n8clZt^w)l(Z<0? zF~}bhTB1>wNYzroZnn@I-+M9i15?d-Z%GUQd34=P|Dsi)BOG(GGoSx@TQkN6_ciLr z7A|Z~Y|%&Ip3HzLBySt!FAu%(f}uio($nsgC|5?G2!G#Y4duqdF41CussPB?jo+cv z!l-x=PUXEv%bA-6Jkn+R6$77B>HIv2w{1})e&VeBH#s8PPsL~RT_bJ|!TrbG<;9zz z>rG?822!YY_%$pB7JcUTgX>|h_ISPa3sj6mjs*Q*z^`Z67E7?m1SS(%b$wJGD_Y7o zE_6KP%+&^k4*Pj@+qi5t^YqTxQdgqe%|0=B^6%@FYs{lN8Gn#==ri)?D6Upkas}+* zHi|!`rF41LF%$1Iq91%O74Wi3gHCEC`sDT|JD0(w_B(r)Wyhw$z5%IeYLh-I*myqP zN;=`*Lw4?gp!0sYyh*~-=z;Oh7L&S}(hpbwO9n@S0BKY5VuQcloVC+Dz-^EzpwkFA;d_cl;_fZ@9{I+2^An6+{ezxy7Gq@{+na)c4mHeFN zAwS#Z1-LJ~p2B3^kiiEdd`4*cdBdT3c+4>J>2FA~hWC95>LK__y@JzMCC)u2JB#^= zeDwPa`Fw-j)_Z-7piF^II|^!+yl=t^tLb~w(*Crk8iL!`J>Hp>lTjfz=@mgT!0i{b zcfn2)3U!J6gd%|0?0`Oadq0MyR7{6OcuWD}LnRm9QL1819$6Kz+4$~Np(X6^ z!@VPmfG9|j)<%ijeQ$Ahn%UwVV%kmb#9VXQ!=1Icr-o=(6OBq7UgjS~`bEONoag|* z43x&Ze_x#X>B^l#E_%O#e!#38zskb7wh4+~oe8Wm0%A58E5Y;0t{yMq$7*CD=p#BZ z(JF(_v*Ev>N^NTX)OM{0LTlaiv3nh>(0qs&ba1(e9L?8^FfaSq2o)HB6hBlT_Z_w; zRrlH0Fk3mj`rLXI5ghM_^x0WY#Avw1^eey3?E&4Gkp1>A%O1C8E%pm*czjozMdNHz zOsB*58AJ}SW*6JYrTK(>A=SYJRNn5kcQWx=6F`vPv%T5y1A5pj{CL|J_w}uluYr=! z?ua;LKdln`Lz3{l&@z{(=&Cf?_ZOx!`@LvSKv$V&bTYj+85-rOw89pOl(6X8$pQ~n z`^JyYi}!4Vzu%X%H>WGh;^1EpZ&rj1sbf#B|#r|e9*ptL%#2w!?ZFs3el@EQ=KVpjK*=lItPrwLQ%w#urc3k zr$|bf|LzCO7&FGBb=Hw_o|XIvce8dA>|YL(bozt(J#Kxz^hpTONAnsOHSd|gpcDtH z>>ICbs3+>0ct0c0VsqeAgdeUPy6so?kERMR(3R+ZDy#j39Np=>$9@JDfyeQ|bufI4 zJD?VtLo(X7G+P3emw%t)t~77j z9@3SsY8lujJ0r(t)|mF*@=zN0fvGPqA|;=``k-ApGtr>o!p?h-rO!yNC3;iAJT?xN zjiFyGV;x32HJ=ZocznG1#nS5MkyqGIc%S0A#{1-YG8`#Znm>5~oOwp!(lp@$`)>Ef zkCi+%K^F5pRapV6!S);$d*aI=SoSdW+7vy3g6pa$_JVl^eY}{xhhn&S* zOYil8hbVU>tj`J)A|RXtaers4@^oFwK=du%YJ*MZ0 zd7j&4Kf}7=saP=E&R-5FjCarN8Wcycp+E4uI5>R49PtgL(!>>~utCR0;Pj?ig6zH!24L(q`cS%JH%>$zgvP)6D5%?KPz7l2jV8a@51EbgfFB1HJ99d zTW1+6zgFR{-#|77R4M*IrEz=X+`^-%&W59sEzdqoc&~`uOat{b;QYgwmQg zKFj&%fGi}aF!(mgHBibs<-X10?!HMS*@hgKoN|KxIJ=hB@K@O7^a7_ZLF`=W44p3pF=l_GS4 z&&;pdkADWUtpk}1*M3=@ZkZZB9v-Ah*MXP6APCJKIbQuQR438cx4Rc3AlBz|O+U11 zqn`m#_UAx}Lvjt_z_RZe;_D+bz(Sb=81oKD%j|2TF1;LB4dj(^{ZuctD)tjWE#L5I z05lu3r&(^~EF`Bl<5cS)g~TRJ)jkHiB(wl(Xqd~{*E26y!OQd9$9^TPZ#%LHwTy~% ziA{aAx)f6*oiZ%pn$youUyA#S0P`Uno7u*eV=&?Nr&7Fx!N?Pj5-FSaD3wCsk|Bfk zB>qab^+u*OmU(ggPOspw?h6V23MazcxgBD;^EyQ!WLIs1P(3oXUk9-Dsr_~rNO@mw z?8|aWVOJa$$OYor#Y+_i;sbA`V~?^FZuwHcc*xfLy4Axz9C6dWv^*yfzB9)UalBnW zKXoWC_0w-NmB44jZbQ}doZcVa2j-4|NOK*I7c>{0fBfx+&h0T7t!@8+4e;xl`mSb zZ>U*l4r5STII}iR@A|l9(@lLgr@Jvl%637{A^PepN$33jbz{TLwFV-b7i<}WJu398 zCPB(ek*?>8QR9W+H$XDF#Wo~5DNp9rgl4Cmmf&m_U)vHJ`jOi+EI;|W;^|u(EVdFs zp8a{|<~7(O9=3W|msz7Goe`x^H&tQGm;PfIV;mk@q}v^gcWA`Ql&T0 zHYurtN8}l~=a69z^~lpQkC9=~Rr(Ih^U*w85CVf0NFWN@hX7}UsFjxF`B5E&>ZRKi z_6>*F++O~MmSEo(M*+amOL;)Q-{tby*ZS9!E#%8DLWlDZUqXGVoP{|n>*d$`p@6

>Hbk4x4GM+@s2%|KBz7FV!rGzujD_$ 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%0AoEu)DsPzDw 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 za%0D6E-yc3d^Y#xy@lj!u^DgZeh0lZ zwIFew^@8r#m3JFc8C_V|gB1#Ynezu8VB+zTi}O~pzI}U|r|$5^%Wto{N9QlQ^@vN- zl^riKi8Hdrc(LA&2_J4>Q&>BcvtC~C2Ev}t(JT{XGiGv6Tj~_$yJaAD+GnZG1;P@4 z-@FrdGCuU@<`SpunO6V|_!=w(QER*=nl88!bEOZ4UWu~&0;bJJv-Rxd)w2uX*#<`) z#wAbXtARJ=a8z&dW;tmf|Lgz~#Taj}ph0)joIob8GmI+sIZqRUo69`vpJlECwx!D( zR;#c@LNDB8K@X4#K6y^w=%i8}Rig9dSRH>np>PIkUJzbtBSLifa=5#~K{aLldUceW zSnw4v2loD}1(taq6P*0|4PgvO2klET%)uK^ ze?|qqw8Z8Q74|!)aU>3$qjc;NU0*oU!JJx>fGYP$gTg8>L|>%CiwH2tiiYF$#z*181(OPs3VRxmH z0b`xe3~2Vx*Nw^Hv%0`0Ia+q?~(FKI6Dg={Mz$+ zJ|8>naLs4?(HR8%(f=^H&U4z*D_8T*568RSb-+sn9j;%0 zl$gt|sMp5O8+ugJ-C3emDcOATnz+-t5vl<7LwSFMj)L5)b^+N`PQ2S;oEtWuW^8-p z(YgN=@1RQ6P5Uk7JauetAcTsK-c<@`rDOR+r){DGw;~3O^f(L&2L=#;)Hl_GlqNb& z?NQenv;#OmWG+{1K-RF6sEWFHo2P@T($V&8sw%Eu(@L}2njkC!&*tz$iXxVDj-YGH ztafHPK-I3b2PzlSobOBZi|G;q1R4dihIbAi0j@qvz=HYsMVO9rN!ohD1=kv?{2YaS zA5!T%Z1yob7>pVokcr#ZVu9KW-BYmC0q8o$a52B5SKXP|+hq$& zEd=LOFkNWD_@V&U2c-l+UoMDU06>!$-U@Q%8a2cNuv6?m{9_rFU+D4KCxNeU9KIPl zs2Xf#sPs?w`htqI%}@LOKr4%2Lg92ST=G$$e~xIwW*VlR-YJTim5AzeJOb2@PRiHJ zF?aW`LMW>XZ4zb@VVc*ND@f-VbS@v^P>)aT-m{$+O3t1pn(tTUXKbg3ug}`a4f?5v ze#Br%p-9pT%xbD9ezIXx%{&C7t-HiFmpu-pFZpwssLX_U_WD#yiOOe*}(eHnu{ZYH_iWM zse?PDryEj3s^}9s6s1}-jr+&I^VlMTO?wYo?Qo3>O)Kv=&gk%rSHE(lLK$H0qKEyM|W0m za`Pp9uf6?ci^BcFI_XF9w)VcOM}pjU9Vk+aJ2h?9lUlf*oFnf7{rV@_so9!Lde1Y^ z&OErSyZV;;F#0=rLKEf}`*>|huiDc5RA%%^xD6jod7y})%1*7Di7HX=vl!VotWj{{ zXPkxia5DC!3;tXq4%=nOcGE&p4nL`!3&#gKiC$V_!xVeVSZu?F%N6{ad9VT?mo)2ijvm!$+z3K znk%b1yX=ciQlZGt;GCe1JQPH@8XKlc?KhI;{f)iYg0@?T6q~1is@{}>*;N#}&pwfr z4>momXjn4#81i_ZgFpG9xm?l}ZtUXkIYTXP=JOY{y2t(&kMDfAF)1VMi;x|D*W`WC z--%Raq_EqjB4A2+VSODA$6|MvmA$w6fN&izKRzaE0bfhX9`!bH6`*O=G2tNcr0 zeDGxak(e)Z1J_7^fu#GEenM~;NJND9UV3ii8MaH^RnTv;Z$Nu-JyYKA`#q4_hlMt{ z_;%#4<}X0DYeye`*!Kf9Ds)ZDES6J~F_u#Z_TUkw%e+YF8{6_8M4ewI)BfyTZ~R+4 z(~U5biB5m3IP|4;0aI5foU5z*wiXb2K7{H5sJiDX2~crz_j${=im~C!SE@fGT2`4m zX!a=Ca`kD+!NV3%j+_UJCG(|7>C<|RA*S5rP-RkJ>yk45s@L^CkU-m+*eitvXNCOX z#jevOx#7idZf*1VhQy0($q7~6uu<4#!#D2>dh)A1uY^6O?E=k%%+a@nQXWK@eLH-V z`(JnGr+2t&;9|cnt1J*)=phxLorcr1swe8$@i%}!0dY&PDciq+&<-d7c_I*TYSxTx zOqjPqdUut3Qm7&UHG8)_&b1Ogk8kc8h(~S5cHouE#KAL!wRmWhYCTO;|9;(`WRccZ z!f=pMymAbnC@T=ysbWbMQg9z)q(OlO!OQQ$G0lqC<(pfzvszV8KY!A*;~vlR@VxvE z5L91YGqu}M$rJhqf!ruX;ls!zJiYh*LUgT;v+)LebRRyHq3sLKZ_gR>@tkbZ2pe>{ zjvo7tV!tEDM@8gU;q2I?new>WLA%Y3nH z)id>*!y)M}{P|eyORBEn1=@Aq-wO0fE(8q6!PTZ2T_xwzXVI~{pMA}~nU^u&1L_K)4^S0-oqS>np0)Ro&G5MS}DHZ@3E%B z?bTPXFy}6uFh}T9(tPrceRY@~gQ)+S(V!7zY3m`nv}}&}Gdi6!f#l#FX4bGN!8x@D z&Mo7N)W+$nG@@HlIl}43dtE!dJXnclM!FpCvHXdB0D2`)%t@TWiY70xS8JI5p5K?V zG$c_V6l>^Jz^g1ejp+l0Ahc0FQ_Kz&h>g>K*;KMu7Y1uMzqIJ#AA%SaubS6`IgJT-m=^Fo>bo z=^5!drE->*kr>&K$zfSOTX@RtIZjD^8E)m4e{P44$z_G!?>N5)F6{Bm8m6evtux#h z?~&_BiZs-=&${69RNxUQl*3ty`NsO7HE{HTwZ^%wdFumMT?6As#@~$g&8pvSy=M>3 z_!=tw_^__bK=dS8^wCAk8yqgmsG?;QnNTxOKGI^i73?$n!?>%%kIx7o=x0qmSlhACU^D`Rw-QOLyduHExkLvLu!Hi3q1+){iB4}FpXL8H`clJ&s#!Jb^5_5B`_! zv-}PVv*$8nCRCh-OCN&;7jS}{eSBLoDG|#af8Wjdw7*MW3@l-Iweh+h6DK_rv+rq| zIFK57JzmQ6G~Ay1@FYpwQUaTHBpBD;4?U{T4AEYb;Gs&08NJ@)d)UMOWY!&jfF|1f zVJlnx`&#$UO(v9sNQa&H>3Ij&G+Kr86$Z-ARIBkP+OOIA9o7(1OlcoZ?9mQa4++i2 zZIDf5t{)(zvby5p4mBegJ2R5UVYhU~zxHkJ35Fv_omxy&B0}L5>>m|uy58XT!M56! z#^ToJBy!@P$B;B?ibDpVSk}xDPvEeP9Yg=ENo58(az$*8E?dt@9IUKAi=d-ZTV9K? zA?><+ZFF-Kmfs9Yub11`_|8J0Mcj&7W!>Ki)N+SiP6=TykDL~MEK2{aAGcLn3sW>P(!ChU3P z*P)L4)Z{uxGycLXESI)PUhYr2`fSJ&b9e6f-WQF1&Bq(a%#Gq_WVxcwv)CjKQW(Wr(Ko10u%*#g$I?6(&l&!oMEs+rgwTyd8vm*DiX0*Ri@eMLV1B54lb8;!E2zZ=LjI(Im1BQ`@hOH}P)vt|q6+*@t zJQh7$Z?fGyoyN9)KeOk~%#eS}iTIELER~dENofWVYy@S`&#lptM%`jOWm5nafR11P zDaBJSz8SR4RjF6U0B5wXZmv+q!VM8>G+SwajR3rkC<(4Ap_$`Q_9pP(hQOA$ zzFOCf1`Y%b;2NA0XCdo1&WqUbavLo7eprmf^c%D4weVBh^pY_9%HvM3{;MQpvV~h+ zIeH7eHeq{!p>0$U$}d#HAKZQBg_#>v2{RJ5K(O)dqMMhU4_xQZXz;Zvd}eLHVAsy# zeX)Cpbg5$gB-IJMcyM$AW_oQ258l>~iZ-HPoeL1Ccx3 z7)P^U0X$=z>GJ1G^755?a-N^pZ`w`3Kt4($YPQnyz^JOvA5hfap@L~)V_*Kw51Wi0VFqcF5ysi_#jH28kutX-lM)y z%ZK@?^G@ucf?uyq9{%nG&?ubH)wCGcy8u8I>vLIb(8gV<7k|&wIhP;`(ibPfJK)cO z;rH{dweJ(njdw%VKPkFq&gs4|^jN_R#(}QoHGfBe>TU+d}!Lre9J z5AazNj;&j=7RLB1-uuP_!r89}6rJGfsEqA9GT$FfTqSX)Mu3avEBRg3`tj2G`D!Y$ z>COuGpv!Gjd3$Sqn;>V4(!CUP$m@bwl_;6C*MeU+be?&xH+Ya_LorXnSR5M1E`b=nPm%fIjkNpWIQTfFrM?H#6 zeYbFi=gjb8^yoY@im!Uo3Dx2jMrla(<0}M-;moT?owusXJ14Hgm{G-3)(1(>#U&L# z4?gQm2+$(h#ZuH_;B-2T$tW3*~$xoYVxCM5PbmVm^7(uf%=zC-@#PG=K{B^}>7Q z*&bof{e(4;cB$tObFUOADFDU$cl4Af&XnD ziOXf`W<`Ij+(8l6J7!#BBiMb(li?!jHcsb8-Zf8Wo$*UIvMG zu^32~v;8I+-@n1RkH@{wUGCRfe$VNi<*x)t7VATKGeJp7(z_{EmYo3u$!`j|A1n&X za?>&Dwd(Lios`CR8lHBoNm}B;1csUWRqwM8HO$a!qpu(TtnZ|MzMPv3Vrfb5t$har zrY=8+q0ZS@-jQ{+DvE&*4wJkGV%WNz^5ClXn1^;bf|bz=&#&*Ki8slB*DF_0IPj|J z4seYm`P7rfmC_#mm+5nksSnL}X32b?oZfC(Vn>3zTZ45+fVmqYI}Pg50dhH6XywOl z<^~K9lDSbB)cGFGI^HuQnfiF4Pi;l|`29j(AKyja-$h8Dtm|tUe*B@Ummad`PwO{E zb41y5Osv_n)r8LRRV~k>*^ZOlCouXA@9*lN7~Es~ljcx??6<}rIyvhGjzMB4m2|@sW*UUayzibOEpDokz@wV9DgX4sEw6} z_w9ozmf59-@>tyi-uZ(9Zu6b3Z)!Ze{R>B??>q-~f;$zb^z*hY%8miDJf+L=sX8S5 zjS@?NHz2&^O6CCRuxhd77a9(Rp;sFhAC3aHDZkjhr}!eE5RKBnFk}aS9=uxG9+EG< zzdCjVvNBFe&I+e=(7oUJqoaE#nY83a+u_YSQvA_grm9yvYXBv&H)ngCCIYXsSEr>8 z0$d31n96mwozuJsqb&XDu&#~VeQx4(w6D$%;U%x>@rHxZq5jOSTfbgL`}mWHe(mZ+ zYCqdqXj+k`ASlX66`oIfdhiZJoGlyO<`+DL$rhuX4gjFrzuDL^?GKYwIZ6Xs89%?} z?N3bA172+ZF2-QtmJ#6C?Sp)thyX$`Ux{fC-;F?tgK74_?W%wZb30Aj(Z!5{VhMTt zzNhqyz#4C{bWa;y%dJRb%HHqKr2QVFWBT#@eF!C-cz6!c`^!a_qw)+J%#VN%Y`j35 zv<$vZyU!eE%&2$ei6XOkcsy===l?i@`fdFFA!LNFi$KI^a?UwcK$??9%-+84VjW)X zLwiVsw4wKLk0(QK&_WltIs2vr-RG5C$q@baujMzP|27e>e>+s%c1BGHMhuNEUU19lzO4cKJ&G2zrofwj}CB@1vF&2rk62txCSs<|U=) z350y-XCSR~WeoC}z_13#M}1D0&(15g3IgZ~krBxXu=OyU06SRqk%wsHAv`+dHFBCx zts8C}ZFvPJ2E+lMo`b9bF!Kc)2lGNa-5Y)P-iLs+s^jxWpA9}$et z$Z{SMY^_mmw5=?XzXxmeRkd?~!``pyxZ84|x-W2!vs}!6Pf%zNKD%c!-~~j2ni}NQ zG`IIm%4K`5Im1H_0^jHnkKT0wn@xYQp8KnU>x|IyPq+cUxvSaf;;LJKKAm^C4Y*g3 zFpiVnQ|p{3Bf0|RgE?f_rmu%D^H-gzxnhs!Ws|BOu(fxn-$fOqvSdr$z`Re{J_q}; z?E2N|TnO!A>8<$KWXqYpgmuVSf6l3R{oDO9?(I*cj`P9;3>0LIer}&t^*YzDR>fm* zRq)BFDN^`wY6`^|?vyZFjBJ^jJq>HWIC@S0>iS?ihgX)f?`Px)@q(Hr* zb~@ukULmAag@7s%jtApm7M7sFfa|XLYxI3%85BPe=+6hjr0%?xiRhIoCuLbFF%At+79431Jre|F4Q3D(NV;rD)d8>MIa z6}-@XNyG!p^>AE3xPW>#=@0k*9=|{3FDdd~z?vqfbYC^!5!tN{dN%I{jnJ|yLA4d^ zQ%Ni|F;QPSvH)g^`g9P!q9kA5`Y+Pm@e149ptBKa-1nWmQlDVq!?JI|EJ0^iFOX@y zPgTlw4xCXoGTu1cL)T$t?aO<%~XWsAD6*K?Z#lgrcD%(D;r}k5R z4P1opbAP*!9P;|t+XKKGKWP)(*7O(^ ziUqSq&PXF$HCiK^A3t|T(M#jS@1HArj+FgrFU4B0ytUAzXLhf(sga#}%4du;?Up(# zd;5ON)!A2U!Td-!B7eand0%~ec=d8ldZH&1{P;I@;Sbl+JZ639@y}9xO0Un0no=R_ zhP69yKFj1vdUm@XCJ^m(9A=u4GeM#rACQLMWx>m@7G1LGneX3nq6&*09{blUc$;tR zt7#iY@M|e;XFvPs+1Fl8QxV;O4r6LZ;l|3E)Q(~jx@t|p*5)+m2udT#WX?@q&<4^` zZqy+ib4F{Od_yXLfzg|F;IVXT2_QC;EOv;~|I*^_M1jl}`1&BxTif*OW&8XtM+VV}5GB%Ab}DZ7^q}Z{E1=`;8-#B>~jDq~;Ryz9VYP`Up2v71@7ZxMcN%r_n0mR4K-)9Fz3w zOZdcaQIeL$E1s9^00bz>0$9x6vWY%@-c%OEXrL@WCS%Wqz)6B86x6Q-Tq(ZUh7<7o zpS@Z?KDgCGWxRZs&y({p_Z6glyHNumd`yv#2z!KaxodLo>{;*r`a7t>J|Ai4BP(ff z3M+VAcp2%(=bkS)-PFQvgKx^cks+7*3J&+ymJ63x+T|yvkwy=(YaO#D5U!8R5AOAXPOfa*IEv1}-SHCn8 z)~B)ZjWJ{&69kpr8GEeLjrj$bYTtMric~jB2V7>WpVp^(E7Q;SUtV{)aQ&ad(921n zHZLV_o~d75oUZhA$Trw}(rhL+cK9lN?~`l@_|B+tzG2L~TjW61Pal8AJI~r6ao*2; zxY?hvxzbU^K6`#ClEJwRuzgg%!F>;2dL7`b^jo9~nR*JsaJ(YKE*qgy@ev^Xa~ZM* zdhD%GZ06wwv1+(R^C#Q9;&$q3ll`(&r1F_sQSO zCjzR4=CD4>%r$5ZC?(-HFewSNv=ttEstdLnw!Jo&YKfoNv!OzR2d}7({y>ShI@+*} z?(+j%WqHxmCJ$%#d4h$!v;0(kxSg%_rszt-<%|ZW+_g>MsDWu(qZv{Dgumth;T#$U zDk}Vw>_Li;Um{DD@jpNNjz4Ayd+*wmiNGw%zP5HhYJD6_54~46qths6zrDPelvV;2 ze>L&Hom8*Cg9(9Tuv{4l2m^zuh)X9nZ5x5biEo*NH=t5V#ygyQ=Jq*t>9X%DjF(bT zu(1w|$9+rah9EJXMMckJ+GWr;)=k%V=3;;OUGYdw%bc+gS;TXpoP*ca1-< z8|(nU0mW+iEo&q=4}XcYOsG&Lkz%xGU1?a+r{}{+i_^m!aDb+wpxe5`-A1xoOWYsA zpFujEB-8Dr8^4L$7_S#epG9AfRdP*Q>N~!WH55<9C`U79VhtP7ZJltT_RsU?NHDsc zRWv?AB^pHZVcbP(&*Ep$mF^}kr#qz9F+^8aZhXRXktKniu?_JkE9)LxZ(e!dKQVr+ zG25RtYWPM4gFTjU0RWdnLA51#i?2-Db!W{oUQoPlxU^i!Ow6zoq4VR1@r( z5$nZ4>~t~xS0k>9NWt5&co@UJVO|Ga~KMvMQ?a$ArysK)o)B?BNC&beXLxIZ>JMQJ!G^J8QNWH_uGNh8r@$?r{QSGk{IRD6t)=fE{yL+vI(>Akpb({53>j_lsW6UldO~7ET zr!ID^aLYq}((;it>R;GXFQhQ{@BSq${%I-G?s_D=(oo&VRM;6FOmDtPL=e8eAOyHG zanRmcRLxsY&H-_(;H|jFI=hc#0X_e)n#$DJuTak;0$_Hxy)02k&mYzU{tl){`@l&u z`U-2(a|2rG>;1v%mcat7Sx+-KECeyEN9&!jq}o~!e#!a*S2b0woW(h?$A9=xEw)hum2 zm_)k=K(Yyjob`$^US#1RYQtt-GtJ2NtAAI~)tS$Sp80xtcKtnr?zyi$7!BITY1-@i zs*I&~+CIExx1^i?HR>V+;JfclEt_xPqQWZQch?}9rbYid%%Q7)kz0ipX~eWQ@<;yG zdOnM~6wE;O9V7UTj%Xfk5Haj>&~PN8(~dYI)|O(Y{p!eMG1HN#aB6{DQcg!o*Fy z_u|ShuMjMmkwN`c8>IczKNU5DICw~56>5l?au1Q$!*f-91u+%;wfLGyMnM&gXU`XL zpYy)_@ws0_{79w=Qvdj2^|qW2xruZM>h!216r?NPR`Z7k{^<2NP4TkzLp|;C`iWK? zWr2_0E`mq7|E1(;rb_owi)P9!^EgYWEYE$E9PAL8HaLE+-#5yDPVu<_h&x9Q`H}5w zbAL~ylqL4P&>SQfPTJ@AJ$&94;&x=uwQB?4zj;5`vgo|{{WvnA)9-;MQjhL4vGZ^Y zwpPP>fq^K`sI-sAa#f!sv8~n#|=8{jN8>NsYWuMM*8p-nNGz97?E7b z*IxIx^Mji-VIOHE?W}O%l%6F_WICIDVh@$tXWFR~DW9U)LjP+K5(TErQ zUR_&6*ubJWn5EmTK;iH+aPoKVZTCFLS1Dw2>~g5|$X9=+O4{VsMu4OlI+%J+LX);! zUU^)h4TnR#Iu~FQwjy4c<;f`Z_V_q{)2Ep03u=$2%UB4%Gj+rA z^HxYlRQhzYJrKFHr+x2Cog|F-N$|`Pvxp<9a=U~EmGRU>=$7N33%e{)QD%-SS~-me zidH^q(oSPq3h_&$h}^KZu>TbM74Vl&c07P_q9`F!-P;`g8tEW{=d$f94e~k!_6n&5j zw7~os&p{@@!ywi^6r}gp7$}xbyO*tf|abzOE9q|Ais$Gm5xQaq$>CARI9ctp^A&6Bm6 zWUA~QCtbw02|G-+{7%$mTBX?&#p{#1f(qJyeFTfX;Zk*s?(OEj@2i04H<>cb2`x&i zh%EIEw+0Hm$;(?N#qHc!3DJqi-s2Nglr!{!%!D+VvCrjLP|ogw&)e|zmEWiENq$S6 zX#A^@!l3ehG@aR!s#*|4e~Ec`WDpS$6a<7f1yPWB6u$l@ed0#+>C@dRD8t^htFl%G zHz)NLGoZ4_Js-MmFch`AJ_9tGB%-q!Xf(E%&r^+%v8L^hNJNaP5J(m? zcm9}$l@mzx9;09I&yjLD1Z_09%ik{{M!k92$-Loh08_i(&?l)IX}jQ z8VZvPCZB)E!Y@T1Zl~en9$K-pd8QDaFm{4Q!u-Soy75`}HV=AhX|g!P3A$hRcN|$S zrF_Ki;j>uK3<|I0w}lW6<`FSTVoL05co#C1C}_KjB|hrQd7AuC`>6HOjZ42Sx-NjX zjLviU!bsm`i4-jHoV4>=dA}hP5%OiYf?p>5@+81OJU~O?CL4>n?q-;vyMNDz7#1eo zX)F}FKBey?Ip(X1J>OhN;K)-%%zOn}J709Z^r20&{9Ju!mBZKfe;vn^)abwfu(oX=S8?M>gx?qnq3|O{#;L;566TWa+%@0 zC(};9`zO+N&$aURs{>yz zSV}7(TklcCepn7BT(-n#`0?QrqRh(%N~6q;^R&&KkR1qN+=ma@7f~fpU#cU#^7DQo zZ)hjqmoNOGz3=G|#p*0)c*X%>*yh|m_YZC2pB-i}`=yThMjW*ME!=;BX??cD{EIK@ zeR(k{_!iwOUm~Q#+Ok`wc7rg%zZOzvI|(_QZtZbWzkkFw(V5;+^TLu;x(C0)R!$Ao zR{5#r`>1H+`Yqn~?fuyPyibZG|5;7?H+3Hhu5a3K&Nq5L5eFwUmz))H$wuJtENV=g z_ry4SRYpSLzhw4%wP3aOoT!Q|&cFS`;_1tUy~$RNqqzqIEcEAsnqv7ElX&H z4yBWJ{N7&;3^?e*KJf<3LhSe(ec0I&!+UP(vz|z#iw5xZXkCs5IF_T@K%lKC+R0Vl z?NY2?o$bv_jqu&ph=2c%WR)e(t?bAjw+m%niRW zItT9Fu8bi>7B2gxi!a`L;X9Rx8pg7o#8Td9PsJ3Vzb@D?-R;lWPa6Qb$HNWQNVUc2 zfh9AQc!RX<1k|D&A?Vr<1}$Qg)~1gLUDXZNoA?EzMAj+!0V~w@coQvuH<6dWxm||w z+xupOaPp~2B_u)vF?gS!oWWVkb;zvHF5zJ9Z4x%a|Jgp=4)MO|-rdno>|AXnZwxfN zwf2#gf}`ttVE61FHu4e*`?0K4mpP|haFV<#VvE>T9|r~E&Bv1vPqSp4&weO=0_2j1*BK7rq_P4)SyiU~d|dYQ)8*dCHNRi(B408?Z(1j3@e^HE z&;}?L<>W+&z%Lh~-+&+JosYk0rIY&8Ctnpxb#uk!%a2x~sr>)r$c;|^G`q1$O?6ZYqC z>VE4OaGUS7r=t^aDZH4`n>%ZTs|Rmfj%YuMUia~HxD*f+h{9hIQ-?hB=pNymVLcx9 zl5|~g(p`<5?W?g>To}>BuQ6AP4<--$ByoWuPQ;#`oI_K=A2q`DgFS!a^`qrqPkNQw zpKUwd;%lDATK{KXh?9->A-IjZ9zI>T3<~tft6No8;Y8GR-7b`_|ps>GFbByf5DSauE=l zrSUP`d}=vGFNH;sFzOZ>7`@f z|BBxjS8$yf_DUxdlKM3>o9}JC!;|37Yu>}1l2P>y-qw^1Gd^6s@hy`5$$76sj96P! zxVx(nR~qGpJ-mR`xONW4mrc2s?`+xT3p|D>**k|dwSAR_f1&ubIx^*Vblf+D{+=iF z7$2&M3%XIJpF0y7R`1uP($Mqky;W0vVnEY)oeb%U zrZ0RNioPcqKrmgo{(8W2V67ZqP8NuGm%{r|*LBfu_N%>@eviB6u-!lcK2{3|to>oqlGuvD~fqvMgT`mL? z$KjQrSHXfU+!S1|<_*oPY#Y$+YjL!zy9Wb42W7#efsPvc`oTp2V9kbzWn#_bQMeCx zzehxr=Q?6-7z_)QuF2)9*uV?SlhOlY3f-=uB5T<=&+e!O2Yvg?3O_&px_5Ww82 zQ=cVy?<6B-#VKs5OMPumr#@rqO;l9#7N4XLf$V3$5b0sR!}k?Fv~g=P@^9XC42w5t ztLZQekhMYWdw9cbD#)5b`e})SeEdOw#W8Nx2R)2BH9e#to({? z>W3fcnZ^wgKYg8C0pXgmPe}E%Q^h@I=wC|~-s=yfG?vsQKUY+`0OT1hxUDC_m@ye> zC7PYb7JQFttFI7yXTbCSZjgZBF;-x{T04Lm7SBJYcU8JK+mJCzJ%1li^Jc~p_cz*F zznUv=J-q2@WS;juKM1z--d_qQynsH0e(dqjq1ypcaw8nskHV}6O#j-LzQ%Xu>IdSR zDd4Z;@sx3ERwAjg6S@=Qn|IUC)%&eRlW=nZ*L#L749&WApwY?YFnV2ijbFrre*gB# zZE@&tdd8~YbQVUB!Cx|SB;EkD4B3?&MX)zJa*giSv@w(@8DK=D({H~pA+vyNGYEzM8^arZFip!EJ%8@%*FX<0SVe+R3B-S(=Kk>m% zMQa}3$U^v}#Y1hmYi?yDl=}1FPy1Q-V^|rQu+R3sWAx`0*s9k8ywYz>77jlqsQlG- z{q{urBXdyF?>EYB3$G2q+MznIq)k@?n+7l^+#_-4%lz+7@}3`72wdds8u#usVGrq@ zXSaH~-^1@~)O1EKuLA!EM>(G+=l)v8ea#3WZ3P{`_BwW=i?%F?pf4v7n()w>MK1Zf zvF{^D@?vNCIr`zr%rd8`#W10v%nCro!5|Mke@IU0Lug1-h$?Ocpp_dYESkVwuz%f3?!y4{M@&wDV;LB z8aRHq{4%e-zuV@<`zD-xDjA!-1OM0HWe|8J_JMVl`pRl2eByzK&W0rziZCKf`SpFZjrkGr?Ez zGQ;GU`K0y6%D{Z63z8h=JWf{JljSWr|0H|-Tr*@eHIn+~mHNa9J@r4jB`OJA0JgsU z!WTF`%G~V3R*p6h<0n3u+GNyPCDKuUmw%)A4;_AjgyCCfwVOF<?@Z>Zq4Gpyss)6Xjc{}auhVCqq=Ru7L!+Z@%CYB!McC)O6m zeTHQ)UK1?LBSSB{uo0ZW7qnG#)Y-zaL{7tnjoiClUF>S|#*p@NC_fFMdF780AJLo1 zebTudxi=?%*5++rZiicv{8Xf6pQrfq!R#&iHWC0oSlr~7`gbL9wox)pFK^z0vsiKU z(c=_~oV4dPRsM5I$?#gH?N<;I+sQ4`BOU2NaUKL2w&_Xt@NtU2e5*N(u}PYa+E{&m zuiWDS)B^K%!MFj~>utW)+iyVI$sYI0`$VhRnSA_czjr=HdPfzuX`k=J>8M*$)txmI zl;yEiYUl$=9ldtB6CL@Tg(~YU?iRfMFywrAO80TEp!Ww9XBE;D5inuCXE;Wb)>QSST_$+s;e}g?!M zC_qi~*4HT5KAb=QZf@^fiywH~f75h2`@$KnM8C$Et`M)y+^Kq|xmeiRixfK2MAWe5eB>I4*E zdh~h%`RSfG4WGHNP?4bSON6Bry=3n5Y}g|aon8-HU@pbds{$t|3W<*}e)9WsNUD|m z1i~#UsI8=2Fj%859QPqC0sezaUX^9E7NBC4pus9Uua=!G2-SMSfS|5_^ZKy z^(Y=1eVT{E8BP=4lFm8hO}-O$YXn;K@$f#>SV7Vdc3?YGk@aYknY|B+0?dYt=GrS{ zedMm@^X}>Ab&B-~Hv;6XFFsD`72u3anf(UD5O?PHi0wXAGwQrA7}M^aQ~1lsB6)rZ zkEjr_E-QIwMoKN(M2-?F2sdN*d$>REk!>}}@6FVbwJzUVX;ry4Q#8ia51fBNDXfIo6|+fkUAk5Egh154c<%)Y3HA}_z&okNCWv{$z3E5sd>!@M z2EiRL*7xQ75_2>N+L`l(2n?mTDtKMy+bB?!3$QVoXi|(n9y)gR!^D1M;AqYr(&7bf zyNj)~&Umskc8|O2Otbe8=iVYa1tVLA!&oIJaPT>MuNNSajZfClYXcdFp5;8e-ikXd zDL3)s_|$xI2_9~HsM*WIS3b(-NbxK3aJ!XA zCkj6@Rbm6X1{^FItw%|c2P~tHB*5EG_{VyPNcpNS&cIr0`ZC+X@l!mxK-@ez%dbDe z12A6PQ2WFY01J2~hI4j(0GcHX4tV9)f_>ySoFaJIQjLaW>L)@q2o3`~47#R_gek#ZKH%alEBpUT!v1nPgn z?pXF)qj5?jR4Ep^YbKW_7zS4Y%(;ES07__opZwcdx3LQ}t&WfTd9UrBMK&bdXe?Wl z@f1-5z2DP5{fB50lu$yBPyX|-qSKn2(U#2klkDiQRCM0Ow=kI#q76vh@H8uqW~ahj zXBRUJtKaAtLK2h=%@2D76zkR z))HEnLUaFXCHSDXGqefuSf(??RxdnNwyzc+kK=WUZ=og+YV-@c-yhRFm!pebnf|+- zU$;HI^#f8``~6`V(ryV{=Jh>Q-M)r10W;T?;r{K%{5}*FfjeRq_hW0(iQa?Fzat)j zDjU&@l|O2FiUxkAd+GR^zikreUyvFsUCe|sI1A;z$%U7I1ih|5b9&ksHoI$Y=_Sm% z^r$IUJ zz?JCr51NZ+4GNLc4BwOG5O8^nWhf|n$dpU za0O}RcWTgz^_ihj5WxpO>GwDW|3->fhe-kr3*We2)>4BH_016PEz&KtS*YISbfj^1 z<#R7chi$xmjlpBz>F{oI=xkfZ7;noBn8`c*C1ay#A;WBJIY~<5vq7Z=;i!IT9(%gf zUxO8wqV}`rzafJCT2BZ>-A1X!QO91Fs{{$nKOEkb}-9dqMBqWuo- zRgB#U(y3R7IrHgDv?fJu_2(}zcp2~=KXFJE_pdH_x3177&+3&ci0imP` z-`t(5pmN{hSHoHr1mk6BwaUBO^pn7sFlYta15f8V?K-*IH{@FGzRw2;6Et|8vty=} zVCIRRNSaHc=%kgWK2vZQo%;yBpUm9=@zSMvtQi4Ej>zA09CFJ(Hezp zR5sA*`6`@Uo~P?iH3^UHm(8SiNk5_aJ(!OwdUXAHqfuSpxH%K~R8x8eZj}3xq(PHT zi)N4XeE_B}r{FD{`x&a?+j2$|VP}nrU!iBX-HK{H&L?FbcnkubjKL450Bim~FOGAI z4qEH>FnIrTIEsF%emw3B?DHWjURKz9EUeEX(nQL*RM%3)D+f-1tuVHRuVhuqC>PLN z_#0mB_ofo=_rt#6*Y#&1eUXoXPj|~L+=og38NQKNDuh4EmwZa>@lejswVvns>VHh~ z88GGD{4<7%ra7LdH^}0T^)qh4k;Dc-5pzyYTAyR&O##Z?H_F|fFK$0WFUJ7kM^>xT z@gq&clcSjWd}&NSsd@=q)SIBez@vnO{lqx}UZ8PAnFf9Q$8zJ58_?TrI7ES^&?(>0 zuuy*akLu$k(d$rT8UpdKQui0GOA-YJgDQ;QG~XjaSlP6wed)o$HVXe;0;^3%IdsJ3 zxmRK@?)3yIh@u@}H2l-PMd966pf$QPoyF~&-6!C6L|e6D>hZ`#&JAq67h3pE@?ECQ zV>vMi#Gvy{1q-?)soTKsLq;~>b8Fk-EbW>vEihp${MYFw2cUM{QC-bv2jFsMj9bI| zP+@~P|9CXdO>X~+WBgkbnH(nTxRYY)9#<5vMPquSz9lRN?nRX&5R&r{GC_*qkIE!` zx2-u~flzL@l;&4sPh|hD`~tboXg#}4^F6$g%4%Y6EW2ya^hodD=PPJ~+4I6o^DP0c zRJ-i&z7u#czW-hjQBZFlA_ePtd&N?^2GkNN=IS_Q&`;blc20Cgx6S%t^Ozl8nJ3C; z_|lR}f;M4$+A&*l<2^I!1MQJ0p_`&b;s14xdT*P>-uweD-5ZRf&pl*ISWli3f;MA6CTk6LUZ3&om|VF zvh(X-u2DA9+OMP}Nq<20wf$BVes=Ko6HD5hd_Rb#>WqPzbm4Yv{VIURUJ{h82is#d zGpRYX9U}^E8VQ{NvnAG1mb~4&K!&g^aY^pIoWxxBn%B>Z9zW!EKG{k%8b{Ul2MDow zrFfftI@(k^)_)8ThCTS=o&y|V3D)3lVcsF^jr1>CsR`mYR^bJyl*>FQ@VeM)XX)bo z($zfY=o@P<(Qtmu;rRXFoCK^SYM~A!(J^pxit=2i;V^U3o8#(84-`RP3_XNxe)-c?^P&B{) zDxoT@fcyOV&)7c?Et{9FepU=p`SGt$hkC%O>Ax%SCz@_7@AA07u5f+WMg;xPS`KK= z-09v-(4mGhSJ!VW+>UdVy$vnKeDn$GlG&@Tubct+eK?(U@^-EXZ*Hmqy%D!~h5cTb zBt1znLPXtA3^$aum?CvNG+5qi5;udtI(EY9Ggypjhmtg(%b45m?tzwSeysO20YDc( z=Wglsdia$6Dj%Zz*_ka>b45h*cKM(e9&NL%k-{f}d(cfAKQimTB_R6Q+qiQc(z6CE<3H*y#9ar>z81+T}?DGU%jmUw2a5)(; z0_OyA7v55Z1qr?fEy#3#raZ)5z;px`9>j+mt49UaB{TQYfun4G;`OpSH^>T4>F-In zQaAdpv0r`IY&+N5P1A*eIfR!u_OD!tB8B;Qy^EO%q9tg)&8IN>wRfZ9_58y-?wP{u zl9l~|%aJ^ZOZCZ!CwD+XWxregzO=3omJr~Te}CZ9wxw`17^<_!=kHI<^ScTs;+9-R zi3U2Pda8kLeqg(}8d`8zr+V18G-FY4)eff=_9kyLV;>56o7o@ncvZHaA%9bU6Em-|5imKy!~uj|*acJ8<;K-62lzc6Is^D8Ire+_lgGqyO>icn ztzTew!Qav>+$U^JIv2D4G=^C}j{9orJ2>N|hz9Zp6E`E^dpQk|DUmlFF_^wDOo+xu z5DCwA{47|A+zpi*qdhEm^>mx^^_A`#VJ~^#Uv<6x zD2}q=aKC>J0Bld)3s<*{&7);ZBP2Yd%i>I}#lc@6wsN|HNCD0in z^}>fw3O)h(wHy&oqhnc0*}tB9^!8$3mBV9OmF^8ik%D(a9KQ9uZa@DsYXf)Gxh~+Y zDO3hoj#`+$kcMou=%J6%LkGHR|x4 zfI*NI6cPSnLd9QndpKJk*7&&{ipw_eNDnfb$m+<9O1&<A&c^nu8nFJ1Pr+C%n7L+w&ky96Ce*w7(vrTWF z_EAqoZ9U8~HQcYlIoU%a9!Ep|QTew$ETDf82UGnuuMyT(W#dZi9c>`M-1&olFK2cq z8Q<&^EPQVf!hFBh-{@B2>(zT`KTt*KI~*mky>7ptWqu~CyLi?_m~T8q>KAd_8~wO1 z^ghJGb9xa9df>>Wu}`m%dr0XNfNCxMVmMA{(-A3qRTTT4g?jQ$pwGQKsqq*e`{22n z#uVGpTLY~529*Qsf=b4Xhsg4@Y@D&UQJKH-=upCk`-hbL zmHWQuDy;{lIDPzMSk$YezhxQn*zn+w#m%?+`(Ylsk}Z2_{1r`q1HD>=wt&iJY1U~z z37!a#u-;7@{alpsTr0vdD%D{`clSBNASE+)fRS0tLtH%?GYviLFs$w_b)P^Yl;rD2 zs>t6~j569agd-#49)^hCkK)=LL6*zs&+0p!DK|vN4b(lj4bZ#ak!_gV3H^z=w7ib$ zdc(QbrZQ`eB)jhk%O>>#eynia&&6F_z3<~_K{#pGCG6OHlIShxmJlzm9wx7zvScpY z0z5dxj9TR4)|9`~y2W>US_>KFt~&Y9(QnLH4=n0{OwC7HoRO;>OWup!X&;Y8|8bTt zn@B#fFvjl*7t6x)O1MOF()MV-g89w))112!eCp4N8rPZmBXo_fX7c&IXrcBvM2B*$Rhl_Cp_X^1Nb?$6t@ZvqOpY{VdzO;);I&A&& zxjfJ3nSegi8z*k6U=~_+ca(TCaXU0hHz38;ce3*~@#0I-@PJ$dTbPuZR45?W&!(rz+#CW$$c@~~e z_{*kop*Y3ztO!ueyc0cC9h3)LpT@32H!q0n)GefEVVfb1WsEZ%rKgUDr_|LO88T~9 zC|+Qdn~^ky{<;zxs^nX*$sX>|a%wI9SD#9X9n(X{9e4+jnYc`2I+sueqr>aj$>$dB zp}-@>lK3GU;yhfA_uhIvGKvJccC1K_qJ+?|QI=%KeL{OPdc>Wg6US-rrf6vJ-->yh z2T*c|U+)Izhecg~k^X99XQkUp7*|*#tEK!>$18!f>B|C>3g8RHV|D8f)4|O$`PNpakH;ErT!*J7$47FP^DR7Rl@a@p%8RO z@D_VBv`MYz_wx!A0#3E!2!lu1tEboYwuef5$jq!v-FJb7Te$%BI0x-Q-F)8<-~#?# zL=S_q1}9^s+p{5i?7v65YtP>fQhiGhVixJ?by?+qBJ~${c0h9Pc!daVhfPQK%d56D zafAWD%wJ#3Lel+nGwuK`Ms=Q%$%(XkK8?tJPegjS$Ubx=V-13RuB?}9vu78tYvX|cSaJBgWAiZ z36<>+t%g4(fg!6O(UAFF(miZ?^ZLLpt^bXFu@D)F1^ues4sIM3*;M!}m=hU*C*2`zYXJCff?4EzGl5@;~ zp>4UJ-9|vLHiXY%-e>Ur2_)1~{ps}1IS$I}*l{O6r5WR_YQ zQGXsWa%cyAq(p7l)~{LKNanP$La-XMifhKva>j50G@)RwqN(SWL@({-Yk;oo%uhfA zu=!(FelPF34y_Aiq)2G*Ef=zwA|D*fZhoyEBWKX5OF-5e`-1$AFMbis7YkD-k+93s z-djxP$j)gDb3wmPM|oiZKPSnyP@H>~?x zfmx3o!F-4m$U1e;V53)Qzk}IES%2R0JLLjr{3<>?yn$CjYb$vM&i#-P)1k$u=$Ku`o9L3j@hUJt&%S+F> zhlwkQOunx~_1>QEtTWMyc^mzuJs^T$ev>64#cms(H(4sMPLBrKy#)dl*o-XC1*-}F zB7ngQDaAY0=223X&-gNU>&(R@P~k* zu+&GpG}J=cUmq4$>4hP+Z*MoOkh)Q6Jy|X-;5x)cuL6BCk=&|fy*@&Qr;l9C!LR1Q zxqbgz&X((RA~p!&;OR zyJ^@31CTr;p>HIWo)~l~*?-tQ`Z*w9pH1}-4v@DiX=B#axJ>+!rRUzsTN1za`W~*% zjD68(**I$_oxk?z>TiEyAT$oymEL53=%aBW`K%aZVO3_t+cMC_mlT-9)UC#QKZjO! zi#8_w-5VPy2Kxl@(=EJ#9NjEzb@*|D{o`gY3#gT)a+ajC#@s|e`6_!LC!OpCz=lNk z9u)2&0 z2J>O~M|{3rb1rI@6#$V^(6Jm1J_+fq@ z1CUbqOxWK;d#Ro6+dkKzY6$NgE2fA5A*_sbdZ_HMXZogf^iFe&Q^nP9mAhXbpoN|$ zd$vJrXn+c?!J? zNZ=Oc*qa6JGtID9)%X-rMrhS_NtgKHqhHAjafbqZdS9x^O=+3|*^H)M)V|VDnNEYU zriPe)=CtE17)TRp7e^0CvWNN^GipJ7H#h7mT~Ov0s_vVp2Dnw7NDv;#*YKwAahv<@%w(s_ zOBI`$?O8aD$sA$#+dkiJ;{9=O`)lT3K}!t_{Hca0Ro!or0}7Rs)JA(_qA#`3O#z5@ z$=zu|t4gEZn$X_#LVIgM9%WYd49pH?5c~dc=kM!0V^fUz*E^`#?Av2mLX0huN%8Sy zc8HusN8SgPutjFbmv5_FqZ_bQpFb?Qng!O`aP|XoPy(-h=YO~}@SbnAAo-^+aq3s+ z%xQ;0DZQxwcVr$f@zaXr#VOqION3k&s+j`R4xzZRh9~UBGxxSW7d17%T?@3xC z;?acl@YslC(H?2%BPqVz73uyt+WN~G-F*T-eu#bHNpz+*JDKkH2)>?M`yycEwqIPYyzf8W6mV?nBOc1$ z3vu>xCY-{lO^%fQ68GDlxeaR>o&4E91=8dazBFjU#VL=>#Ku$jlI91`TgQ3 zG|ow+HANPh_AKSS@!@0oN@(*k_p2D_yQA>C&_9wNiuQ5fL#!cQXWEeR{P6v%u&Rn) z0eGseQJ$nuny(HjGE&$bZdW;;=Y{S_qh2_8!Z5k+m${POU!66qFech3XiU$0`th$i z>P@p~?4yZwWQkF`6j;BznCcxGMy%IM`g}f#dF_X2(0f@sQ93~2x)NNgMb29l9a=J- zj!$|Zn~{Jve8zN}9@XQXf?_w%1Sp z$AZRNE5zeuGy}}2gC6|@?|ZgI&yL42IcrheTjdJ;<=fm8Llx9`gs+?KLnulqy*7rXw8jUE4;#2$4C5AUB zBm01a7?u--HsViKKsh;ky{RAf3Aj-Q3+<*mIZ`(YoG#$0kBk+^&^f2pEgM%_ZFW+5tEFa$5>oM)iw6o@&g*E?Z z^zjYc9df(a&DLs*`0|^8w~c1~{iX`T2>J@X;_*a+PPWj|*h376*Rz>@-1nA~TWDwb zazaSzMC%62p&=Fu(RliD7%DOIjSg0?)cQb`85I3hl3vjN zF?=F2(I2k<_Pq^h`_D*U;CH_!$oN(hv(LQfa7G99$#ItQa#^XgEoPq`diI{_fBv_w zKfsWeqM!xC%5SVr*<BcW7&gH#MQGhP_arAd=lo7Aa@f$va~)cScyxk@?Y zZ}G(Bo*5g>0sYwnLStBsh-I^b=D=MZrWI^K z_H{ZCBq54%goKK6d!9C!kI-v0#p+{KTjh+4%aZ9w+b209& zFC03|g~n(4ccYB%1u*bslKdweBu9gs+I^z6VmbW&39I&?ZA$jfCbegdWy5BrA1HAj zy#!o`RSd$R_&>D zC2v|gX+jom;`3Va8M6lTPDi~Rme4u8JVb)>OA_~s_Zfg@>Tv4uo#gwRHDFwLVe;@b z=ltfb!q-#K_-oyNP12mtn&OEafpjOHd5)%=c2@4T?Of+{7PJaCxhAHwrWa?<*67PA zmUF?WD7FU4>NFE6*9Yi6!i$0E=7ruZ?yF=BUG^Ajy0?oDeIgIVMxt+xOc1V*N7hz? z)1^<&*#Q{Tqn~eVOyK1-_TT*#JFevqI@N4_-A?*+yj!(1d!0fUck!+;7?| zIu15`8v{F|KMSXJbfn0hQ71)Ob-t5G$Rh@p2LqW$wVj|o+gGFp&Ripw6Y_bo{; zoM=B!#F(hvlZRtm8~306B5ybOw`CK2Xp{WPbx$wRXY3Zn1R-!6PE6AS*YU+UoTB{f z?RUSuACtym@BPngY02lK*k zDPC|h(PTbO%m&46I$NLqn-$q^(-9(LJ!{fJD6ah3uV<~gS^E^4bhGr5YtnMS_+vF0 z7@1WRB#${VH~wfo%9tvSnXo@sdvJ6KjO7f!Fp$Of8p7aK?~7rVY9e>p@n)f7b`4if z$CG~+knrv2wqNTLiEq76Ww?|ai=%#z@t*gQda_boAYC7B2d^i1apTj3%5|?{kBrSc zPhJUY?4AZ%)HGs?T(UuI)?;8gE`uA+KzG)+y%&e)=$9&;s_&m@oF*YM9~`<-@gz>&5Fu*Ifr+C~Sp_qDB#S?YP;^UYn=~$9igdo`W1IMD zE6y(uBC@`Csrdn*&0;tM0vp)x4)Kyf3_r z4(Lls!=_Z(67NyG;HOK~9`$`t!ISSQx))Yf3#03EI{h4^GIc(bvf^uKr^;IN( zntppJ?9NJ*Ny2f(ET`9H6ZT2uup+kusE8iUIjCI6M!M+vYOvka{ippAqYe# z5iMlIlD|XifsAEbT&&6{^dkX}L775=ukFcNrd9?Q4%_1DB;N{JvDmdZMHt4Evx;gAaSad8D{~?r+=EhL%5SQ1WL|flrED^P#m#!uN&X_8|F}dPx=gT+^oo za!*4hP|NU6xGYF!PNQvMAL1hCN2;EX?^B9Re(RfaE_n{{qX_=D zmWcPNQMYS@Zdp+*O%!kUyZ~L9`~3DXfk)8h%O0Nt#v?zjx2pFbS*_DQZG5}@j*$_6 z@bKYzI1s#F^>B;2EnG?TQt3j92!$W@y?bZs73!Qm`@`%o=vHQ8o>d*|Xu=ih=d&yJ z018RHxr2WDcDEq#kuRAj)hlA-TbFlsADj36n2|tzfoY@CUk+C(PUQx)Dp9buIM?0z zvIv|>>h0+&zgqn`m@1c)U$is^d*E!s)`2Ae-oIa9U-k&eyA-SF0A)!fH@5FG_E%qo z@r{Q!lleqvKSBQ}tg4F=L?>F-ZuOx+^P&n1;PSxa6h$C)ehX;?wf(Kw5()yZAgN-k_d z11CZ|IQzN{3tpu%#2K%`*C1ic`sNd-`spo5zLvV5Be3w(!}abZka(eBJd~d)K5+FZ zze?fhNvNruT#f6homVJ7ekJ{}=vPq~k3E}|oQF>PA-k@^h`K{-=24`x>w7YUfeffo z$|~|I>R6z_G0{K6b3uA>N6eYieM7mT#i<=Dbpp~I!_xE3#a0tKB59h3W z^jzC)Fvtm96WVY?ing5(DVAwh>zMBm#60Vwk~|Tf49|!By=iaaGG56XzDFUt@2Y(I z%$uWJ;%<3EQ@&3>3n|4N+|PRatdi-zm8)HLT#MUIPJuN2^57wmpZMr79-O&T{MmSJ zzw>b)S<}0prFJ zwNl!o01FrQt2Xb2x-EirMWOk|ydi$WbB>QoydiBFx|iY%I^o_~q9tRnj}8yG%sT4O zEMh)y#rb|eC;TybEK%|-l9K_e5pR2D-u5^dB#wszftmcO%m?4(ydWikjMc7E0J{Ri zvZAMhfV5dbxXjP-ykIdktf7V`E6lY3!(6Ltf{rSEZGoOY=*l_ye95-{PNgT=3;cUB zc8>~_=5e-mXrS!=%KE&F0CIsi$=X?aIlk4^+2h|F(awj4sqQ zD3Kg}S1odJ#2Cedx<>tJ-;zT~K%4(Njm7BmSOM!eT0G;R$c!24QB z`dC55IDPKLE?Hj*jwjm!H0y~!fWdo3ft`R@^z!(Rr1RQR6$ql}FOkEeM3pEg!8Z_) zphy<{`g@qW*4!{NiVAdhb=9eTy3Z!hi$m#;wl28+_IF+WUBe~rNt9i}OiC1$AUTY7 zn%+_Vkb%wmEbtdOqUB614{H&#($RWcR~?$PCA-I`Z*o<+vD|)O{hG)7yOPm!jRTJ- zr+^!1Nd!OAeBFVs6OZ6XRDb9*clZq5NJO1>JEXfhRqE08!Hf2|1CXTPcVgd=6B8Tf z`GC_);|k#Q?E(iTB2?+0VhB;1l`dB6IKQJ&CD*Q3^$B0qRs{Ow3+##cCpr4*cV3cTlu*?)GRKWny(-=XjCpfQV)isK_Z`7bYJ8Mf67!{{xk{VeZ{mkQu-}% zSV~~cSi7mF5VOOfHr_JX!`YI9P1D?@_h0P6O$m0cuS9;$r0XS&yoLvtJsd$5kS^P} zkiY)3BpjqjuHZavk*{YBZ_1#EGoeVow#b}fW0v&?SU9Wd1eIN^_7)Czwl>{+%~mi& zrfreAqde>;)Z5hef!B43TgKb*$7gmGy+ku3awOoo1gf`8P%Yl>={LXi$+`?;7c=N+ z+ILkvtfhhWy%WZ>ujxFeZVOOw7vL6#Y#k=cqlZt<)|hIfKYzM`43lHxV~YfABw{Q( zCE3^NqISM4p2MV%o#!q=+te)xk5d~2g?xpP1#RTyI=viqT0YBTmgZfPTrGkr;GJgeZyR~ogMPZ zupoo2I3iYU`*Nyo=23T^!`(5ywvax#Spio-;gq8uNZ#x5p(ZM%wM0 zU+1=xxP6Eh+{HGCR>Yvs01W?Rlpj^;LA`7TzR}QbxSyC?L=9F%o!KT2oqB4Q=#8lH zdfRYOE>Zftp4~a_iKC$hKMfx0y1mZV=@EeO#SF2V2#%TJwb-9sq%rf|w@F$FyTVKa z(sc@j{Dr#f1#33Q8RdJ?f_3^%f+JWYew4ptVm^f?v;KD9TCD&lP)4@b;&Y@C(P@PK zW&A69vR22QcAXCQ)2>FK@}kUk4RBV@ps?AYnvYzr&+U6+zIzatntBpr<3YqfxK=)v z1_s5D-dNQsuEqB8^m-+~;(bd!*gLcK0tHXaJBt0LJC6(0q3jgsmZ6@$6r(Z2QWX1jNAp&TO|uq@%Vz z5|{PSco+4QDff|Miy2PH9K;loRfm4ZWm^BxO&-=(%AJN0>UMjxPU?|2D`7M^(?Q30 z^TYvL*lYF7)bLBetcAkU^((hN)jt|8OyOT{&oeAX_Zqe+qs5uZ@k#8&Qf(wX?(t<| zjj?9*?%%3mW4gvG}-Y`g$@Ro^)8uZu9o-gHLzTo_mpX()s=1!~hHg z1{Ylg(0Sqw2rBid6mI%SL%6-v{<^OI^|%D_Eqs~Lm}N1gEQbmw!|Pdsr-=)jxt zmw3@%ZFco|fOy6#We+diYrng25eRnYAfK+H@huj1p&(fvrGqg^%C+mefdf#2Ja?JB zU2n91AX8yC)sm9T2R9|%iPTbNoNq>U4gYEZ{jg2lf5|~;?6L28##o)a)I-ty~FzPtGwUHXG&Z9Fp_>>B=PSAmS&7H2Bk>YK(C;L zjb^OKX}IlizBGJ zQxhEZ-m6vNJs0oKeD>v?$M;~ZHzg@srVHm^db#%Lg?a5mZ@-Jtbs_|h^JBaaGa(qu z-np&?tb-yv|HSUMhjou&F`rmoHJ8{RQNz_mAA1go+5@Bf@p{Xz?9HX&eE1Hk4G|a` zmA>^sEA6We_or?ijv*Smx`_>M!SNZtE{m$8QQ;Hl{d2@8v4$-|lgyfateKD7lX@b~ zErJVeScT^!9Mj7l+QT0TDZa_%q?SOp=7Xvu6`>8P^W2vyhK7(QdJ1A8C4$X8|KWZt zN)Soe*I_Z8Xs+z&>+rs!&HMQgB#s~8u6&zX&qp5k2F=e_TuDX9pL-NnUN`6Q5-OF= z9us;t(7O1cNpAL2dyjg)_|pzeSN2i~c!$1OkAr>dGLtg(P@L&dEVJdbR@^?w0Ef&( zq#9!)*>1`a&UL%Ls>I$5T-)i6X$DgYy-@!8K;I$3!Ozf>$R{CFw{feRdlJMVa&c@Z zbHd>=qpbxhiL1r-wGCjI%Anfat_GB*Zjuc$s--kZfM-H`=G8LS`$vD1hVuJzQIN<5s{@In$rtM2FiOF#QX|4b(9e~KZ~ z+|hX-b1kGWhW9nQ$Dct@ioP(otKJo~ckL9@^74dWd7u1q-jr zM&S{W^wjAzy6=Nf(|qnsCWjC8#!pQ>pkf`P8QxBc|V4*qAvMdCO2 zW=ZYKdOqhmhc;y%%O`{xc!SDDi_IAoK8!qR)Wp#_+==I`+Y>gi>>^M14PH-P@TqQB z6wu?$p4x5rUcaqU#N*&OFmLJNhwl17KD>?(H98Zn4(O{dk|%-l0_5)e-(U#lEi^<5 zJC`WwuV-SPC|<7)8V-A>ASy$B-}KFe3w*lK^dwQhk~4kEGT8wmk~Y4*Et4#L{~@d^e?-ZE5~?nWdO zhpX!}T)l_DDkg7gU!2{{%=NK10 zmf(Gcv}htLV87hkN1lF&`+0zaD+Av6@nH!hKB-Mt-t&nurSaE?KCtTf8qZuFN;nCZb6-3X|m6+ zmuQ=hs}G($MdOJ0Xw&|IA%Dr9Y?mfY|3yM_ZGUB1)#RHN=z-Uk|t#`};oB-%sS3b`d?;R%DV5QX)Tn zb5*k5oMzGn=1T!>50}=*=s~a|&@3hYErL+>d!0C*tugS}vuK{lUkU--^iDL(uetI2 z2^jb8mG8=ZLB4Cq!mmt@@!dj&w;`AbZVNS3R6oQ>Ud<|3bfQ;Xy$2m|6oeXNMuRzX zHS15XzMHcf7>WDX^qFMQKk&j}BjVFB^Z*AtqtDJ9uRi9R+!iY%%u3dA3*y3NC|g~V z=cjA4^t5e#`{0i9QEFxXas>PqFLl$kX|%-DEV-1!>B##iZmq8Lf|ZlzAD32wI*ffO zU_QYZzL$fOtq}y=__plG=qYBS^qb_LQb69^$u&5Q`viUm8RAp=VfF(u-g{%=cD(Gv z^{=OW9{N_N0@J)t`+emX6_sW`7(r4;QajGf9C=;TQtFeMItuo9Vqp8QVueA+?;>)| z@ep!Pi+FV`^-HH&;D)?E-)Dl}P-+IfX`RM44N3p%kun0N+v4r_0KR4pF{C?QK+t#Y zWmq;?owaJ0ifS{Pp!2-`q&O2c9G8f0qE-6KP@Z*>q+&l&&zx~=OE_S^8MbfqzHJKk zO9vjQwct3>h|nY%M*;%joGFyhxZr>q^ZXUdeg6=h}(U(^BBO z@s6iN)aLt5cO>sUklipkDKZ6gC;Xb{u=2qraPaHTE1HcOX;b&xos^5OrF^;PUtT$M zAPRMk9B7}G+D8_$M^r@?(mM{SBucnB$VPJr%h_u6kJ36x-Y6lI%fTZzhF( zQ$bhQVLQ&83jORaL!1p_l$n-!r}*M)?2k}R7N13f4k;?GvW6&k6=L4Jo~Pged!Fwb z?kdl0x>OQBtkY5Vv$%Oa@6j7Xp2rJrk3&%G@BQ^kP>4wfahM9Dy8SK%X?37t zc8m1RtrZsNg$<;O`{FX5=WTvW^Ckhf8%I9v_w@4~jIa8z$ShvijbwLYc_73d^?m`I zxSCKzd6vfb(yJRE50}5HSk{8;B$4JNcc9!oWc)rG%qYX<{Pa}G(Zm){3iR<49A(@U zl2|k44C??tu6igM!ac~)DsEa6Xr3bO2q9#tdEJ?<`G^-6#U2_;H>SDfFMF@9W>V!b z2r2weaSq(|<{H0uaNt~z6ht0~BlbmHnw0!av`7Pp!)h#HEePI~uW zVRjti&AOb0QW)MwA?|6q&pn?GD$$nLCJSet-RQ%JGK~t+%@DcF{`>$IK??65i`ex& zmES}KEoEPxJN8z9UPv20j9C_-67i17Ujct{2qElRh z`wQYjLKdMzGmkU6a{-gUf!q^nWXI*os%-@GkmYJyZXg#qO+6GIn=jHy+AHRw+7Emu zdz{{ialaM}$JuSx0A-th0eG&(HJ1NoLy~O#W03nN^C*LlZ*-~EiRUE}lf{!?Eq_-Y zm7|)s$7yXRJp|Wg)2fI&?Ds((biV}wrB;HS-bSIT|1s#=$tiAdjURtjWGkGJHLF4T zl$8`Ojjzppy=NDpV7jW}-@SrG9ziX8PgXR6tPYeo5|XPf*}*@Uwq6hJvt~~7W&zZ@ zoZdwa+slgHGf>wHCK2s4Uky??`H*8ZmWf6L(GAvRX*hNtAe=))@HsPN zX?A5n0;LeW5CQVz2Vyh!ng8I)k~ENuw|3nt!DJ%+K;ybU>hKD_wD*b1Noo4BL5GuF z-tDwrPmde=nxAa}(XGbnu)#i=rUxx7jpOH6O@~9^bnR0Am!4~fOZh$HYpzQnS z#6$Xx-i#o-n~a?Ej&Q$ZSPei8R2;=VjikWQlV~lz`ny)|vb6Zo@}5`r69OgKMBO+E4R<5x*x217BGHt+LLilanaS9~$D?m;&wqhG+>ot2ds(&MB z#Dd4PlaJ(fxlUV_c#yQ}>R!H%GngRgPWWSWRe0?8O)sw&EbOhjjfO6ntxo$)QpOp{ zwq~co3!I1>OJ6pV#Z9}9QTx8(`iMbaZx}#PNcA$*{_3|B)?L4HeG_ESzUGJ;VeHVJ z@32}$61(WZVSX%c`^Rq-G$ze$g#bsNu7>Q>E@NKkLJ2Of=LL9{J^q%D8W7#1QM)Xc z1h71>kZV9USM(W8eccY^mlwyPZ%r@uvIyx~O%_Qsr5NE4%@kR$WdoV4-f6!#@#S@9 zn-UD@q#+BY!chL+Q?lJpT=$}9v2mwYk!z*(g6Ox+-Skb%wE#ptV4Xa9Q$H3fr{{2U zB6#U_=qVKj`isQs+GuW<`;r1(t05`(H@Vi>kOt%BX>vF2)+=2t=1o95;hh?e{RgUR>H!M>Px?{6LZp2i?sb zQF<#mw)%Ggk4U21NEa?TtVH4ms^FtCYPB91$1rn0(unG>-7={2s{Gv!ZAWA+k?u)P zsBH|f>q5v(4ltM$I}!jAN8WMVg-ciL+lG~V#6{2RxaeyPG!Sy+x?u;yZ|s|Dzu>bd zC~EIvln%+X7-CGeO^%+D@(ixEW;p`ic-#z79NxR-pCnZs9Ksxg<~y8^9dUdjSLDz2 zj<&qb^y9_)&w`mQPv1*CN)7JL1L^U?X<@s*k!wIkt-7=qqDrZYnjAe4VMacb!s>yP z?)`ieUGlI+NecPwXr|xaPi?5#{fjQqLF)Kqe!cJe z+QQ7{Yo4#^WiK+v&zZag?ajnYvT8aujYn5u@TiFmWVA|RuPRwfd?89}8Ix4Tw00|P z(01@#=tbB5;-K#s-2w~(+w@R6k;YqH)8lC8@vTFbWdBHpC)$ z2)=^D*Xbes68j6g)Tj64M;RqVZ^X44|M3gqefeDcbb>yzDo$l@RC?e6^ny+=3}-Df zIwZ=dBL#)-PBiry6D82DqgVC`oQHN`Pp1L1LZ$>hp6z9llBLB2x;b`ECL;RU#L8u zLqn6Gd7ZDjlw3nZg}=?$_0NPW9j?^jwKtU&3l()e*%>g@!^cH8OY=9iwFlAh@dHo+ zlIXx{hBx zFabX=lmHq`)9cen)cOW#s-Hg|W$wx7Ha;dn%i-1Z`r=rJqL@m>4RDCkL}fu@ENF3J zSiBzK+OCMXvce20r3>g2@Fa~Ejc6pdxmYg9;8FsUUni z26K3t1X*tNw?12QeDgOkPcAofA8Yp21-&5_=8dn4?d>D zC*Ci|{t@HQ>C^KQMTX6m-V2_{^(7}!;Xb6w^^3b~PiSlWAI|G>if95-@O!|MhuQ5r zTMSO^bB_kS!vOU#lenZ+f`5B-OXa zB`*%tfc}NZM*q^L6!L>P&d;+z!9+JqER=>9gtQe$e#)qz{F=wMqz-Eqx$0TYHi@~# zwpB?VNMFrRTCAsYex4HXZr9dnKik2(dE8w?`<&88dc8xqb$p*MHaX4&Srp((UC!-98%lXX-U> zpfh4@j6FfuGTda*yarZE1i4-djl&f1Q=Mfs~ZpMfu*spt8O$KE-xY_*{L*Ml?uYpa;0;&AMM;m-cyQg>n9H z&~PS1anH}^G}`o~W8id;V^hSag2H}gv)L%}|5_I(f!>DJkNe6`;tqIDWbb(f9S}s@!8dN z9=#aU>|N72O$uvMP=&uq)QYl(N1SyMVYxEX5x{5a8!7|Mu+X(Ooi*cmg3TCTy%sbA zhrC)l_6KA?T-1=S1vhNc$GPxVS8=X@9FZT<_FZ$oQSPdI0~^)1T#*VzTSfsp5t8Fj ztzByV8DM7vAzUdZJ5}1Ojt=nqnm?sgf2^g8F}K0~?#271eCd%fZJkzz;zroO*?)-e zcTa_oL4j0u)edv6X5oHE!vc_JlfaC-$WGJPOywyRCd=2CcAE^Kz?<&78yZNOR?TKt zBY!Ib!!BE)X8PXgY6rpn@fCi}PC^+j++e@&O_#t!IoOx>BK7y!{6v8ObPM(sBFW4v z-R{wwh)y9VajDJ8;%kZ8iS{8$f>u8z|K|vDfbFCCPH#7jApxkFORMEKhC242uPm;r ze1S^W6was7QYv0AGez`2uKY!0uOkN-$ z36+1EF`^`CeMfE4{IOc3o`3}`a~^LMgi2|2kvN-CZJ)wXnAg5_(x2Y0k`x$%s>cfy zRS41f;3rYW`2ZG@ra5WAzlo?2q5$O*@n&n2K`jXU^_l zfUZw(bW0Dt1@K-cB24CucWa@hR5cbymRDQZGnK|rC9-s%8lb~K}d-Ap> z;|a!k7?Jn+GwLJLl!jz+++Tdp)QaJ)J44fYHVw0O9%QG-oM&Ano1ZLU)%H1HMY}?L z6{KIH0$p58Xqy3%F}i+_^TCa*PsVVKvp*2mRyvh0mHw+$w7<5SI9cuZ{i-I?k|e#b z-|X0~!Q2>iQaP5a@%`K+-#ijOA@Rz{Oy0(0xLk$b`!J{tQz|#%v$*tjc=TIuKNy^4 z&6!8De%}<>G{~~sr;)a4<^Ta+duR0E6Z46};|~t!8W=P3ZgS}P2l~#pXNf*+ zS=hU5Z1E4cj@xnl6g*fzz0IOpS4&x({$a357K!!epiwg718s7Lz=a6pIa@%RoLxqE zRsER%01BFnkZnJYOL9$l_4IzOr6FVn0ZiRsHXr3S9^mn~y4QSJefuyf%!zPk*sfkq zC}Cc`R%|NW(2#toDWd%qjhv!hkMrEph>gj;7@pc?%HI6aLR?T-{n+Q!#Y5E3O}C%R z_j-D0E%GqD_x>qZE5mMxdc2VqK+7|Z!`hZq+#CWBsy(*;Vmq!4uP6N956|<<^MXU> z-Dj@&1frO(Cie(F+kbE?sI;QRyB26)MImek^5ZhuYM4Mekz_4 zujjj}xp*E@%y|!)`^8df0*|4YBx$qyF$_f>wcAts-Qwq_q^4KqCv;y8*C@-I?*937 zy97dUG&C<>(S*xjlF)uI5vO>*q2h@Didv#(#$(^0>dr)#pGYtWex6D&vx1(zCO?`_`ZG8xBaYeaw@r3Gs-y2LgZ~I%}D4Cd; zp?J>P-SysiXdEunB#x(GU`J%zp63dqLQ2lRQ|TO|_O>q!_H(Ytf#67=f$|2ch8Dl8 z3~l_J@Op%2G@SpayWWfhpI=VZQFtiL~B?{8J4BlU9&RZ`%iJDHXqnNmf5tDT-EzK0|5+onXk_ZZ!|A8GBZ z^w#Gvou;{2T2kqnQFt4iZfhze1R)go_k=(0B@4}@A;jyNLxboDQoXNxCA>66x zoCT+v#*&~V79U=i({sP+_OZWybQgKYzsgl%T>#_y9PcDtB_yRXTJLvPBk^P2-`+*; zAC&j%MkB!Lfp%IPV0vaJ7!mgK{=U}Nt8&-V^&4Pd?KAoDqfBHw6s&;eLF4z@HW+LE zJdUZ!7jVUehDMc-K)eWmC9Ly%dk;yO{2j?l>1LTe!Th6YO#~h(D(b`;sAULQYTWh+ zN;SvtO~IxL+%#v+*3dix83yk27UQ>fqqh%)fPD#NuyFgjn54$y`pkf2b0%Q>jVcUk zT)!`4r1*1Ykqw->HPYok8cy$eb?<(}?@(PrwGcaQ4W7?UxV?#!@Y-$9f!JHSabMlwe_#7_)7A0W@A1(r*%UeI_@{_mkJoH&Qjek3FWCtu6g zak@17grKDtZfZaDbDYu7zvw}mmHCMH2TVRkhrh&pYPrg~eNWJYXVOMm;9cuf_3O~$ z2)2lB_eP41sI<Ka3b=mv75EY*`%ds0UkqL--HKz%?;Qbl`=|!TE4?iIRbBYLW-zJT>l>Vx) z5I(b1KWN}^TgrYECBZMzd-48N=xgoe&}BezkaXJ05BuEWM5bC{Qr2qGn@FYRGag3O z+rvYbG#pNONZs}T1YcQro5qB_$pgil=W`z9KepZ9#ggY<@dQQnMAt_K21pNolbJfF z>ra`lgsK_~b>b`{pw498rbxW4w+HtS#&Ss;xd_gJ`EA=^doI9Lhw16Z?cq*?XI&5N zr&RAT(LyrwxWx}>@+k_SQfTJc0wh!<{a)x1xWN$zyw~gSh{52Mzc)@@8Y>Km!-ptQ zF`Uak&DnUo&BK)QI4@eE9yQ2k3g;@of54Fr^QJ6r;aw^m+B>?zSWp7mlx~{R`1|}_mdv15$u#RGFSt%Q z{2pZfKo&>4-vi;v&0k4v#vQ41xQu|qKAIF1w_jfT9vDm#2y8miy_?~E7v#33r}&yD ztfMqjAWLz5s~Jx*%5n>n2{wBfgKXEms4Z2noi{3^=;x%E;KCWL$)4k^vd;AV1w{PD z9@i^_ph4QS=BNL?G?g^ANV(8X0KjmU)d#c=@khOcm*WSPMEi38_a%kb2>obgzgZvu zYi6N1VKPGuch~^XA1hfgFYa;+sQ%2&luqSUYP|4D5d8L<^drSb3L(6cu7UnIUFpKg z#1Or~uA3C*2|7ZAB#$i`Z&E4t`yK*{{`DwcBsW-VQ(O}NY5t@Q~x~Sm6*2BrLKNY z(3o{D+q-t8*bR}_0rBCHCvx%!T4uj^Ggz=3%V+-D*Ym7tHQ{wdn! ze*IMnwP@$Q1YX>p%kv^ATT-ONd{C7Z4w&cg(nMG*FrsPg;Wpk?hPRk*U2Z$67pgXW zHiglPLLZ=}5%mdavg%?Tb~?hpy^&;)o%hhT!%YUk8O?SMBHlX*1nxGm$&e< zguTcQ;<8uuhw)vaO;`z_=sz*nWcCKEI6YnV8|I6q@MJ^;Bk#8-GIdo?;Xig(_e$!`;BApO)cJG2G}Z|y*5=?$=hr8D z24W!p#yajBA{h{bXfHm%aj1KFuIXQSwUgisC!h~;k*{fzj?|~~swDyxG)B%@&fCG|!k>Bpe2yZazYGu8swl zdi3)i;*|_DKSh+B)V{do<=rB^yY>2|oW4eP;{J%`$)HxaZ4AQ(0hYnNCM!S2aTSdw zya1_=%5Le54p!wtgPV)0_xZg5a<40EryHxN5~I+Z@eZCTrS7pu5O1}4&j$zP{+kbz zN~UVjSavTJCE@pX&IQ-=>~;c7^)#QTMa%P_xml9^0k$?Pj&O(Fyz;$_)^`Pq;!dHw zyuy?Aal6syJ&4dPo(>D9sZVX;N}rcFJlbqB$9#n@VEsWGP(Lz>)@)>P0DX4YcZ%M2 z;&y_|LHN4uTd8U}6EMSeT$lY?bsY>CeQp;JYSlea$jIzN?H%L1tc#g>50{lp9(i0( zoM(3^eSJ3k8oQ7i92M|^mKaGsRk!nA-tW$iQLl#=F!QbRJY0VJ#HcQ4zP1LNe@4YG+`=+P!dOuU&sasv`0eD|A7pn4;q8^lw#De)dOmmR|- z&&^eWceGC=sYffE`A4bvHGh7`Fnv##%4e(PBF68*d{qZuKCBz_< z0)m)foeR7T9DMCn5%rt%E!}d%<59ZDq{Czf=2+T$9Dd(7NEx1W9exjvYU=ju($-2O zQm7s1sTXM?7N{{xQAz$%FvLBrkJHSs^`!7SG2b?hNxAKH+ z5_yJ_(_Sy|`Qt&o=a@z`IlHnn{)GqD>}UJ6<(@9V_pB#Ma{a#Vb|bLPqMncLb>$rN zCKJ1XyC!e1iBwnh9Pa1`U>N^4nOT_G=VOj7$KlQeA7>5WJhq1zFA7uSK5d=h|ETSE zDD9w972hw#JP97!MvgfN-!8m6>3Yu9%4v@!yfNwb#mE1hFLsz0DVe|`gn zKi4JJBBz-tcrNa_up$7J{sQHeuxY>Ah|n%_|D$f?EX+>%I6NZ2O;-s(~4nqj$q ztsd;<)3H3?uj(phwRaFk>F>?|El&B5;42ZFTW<#)`&+Mx(;iGm%@2bK}dP=a9lt6@;SpOKZT?$C_ zvwgf)cez=?y8bZ_9v)4&h!PjaY_r&5^OE&_j_H23?`;+PLMA5Nm^HQyjxB!c_TG?|NDJ}he&cMe zb_S!F3lGO{a*|T~h`P0$Exh4zDBspW%EzwwB**WevYvm^B7QZSc7zx7K|ytSzp6F) znE4`tncf~9T$+7!Su1CBv;)_$>u<#TByn^)7FE>K%6Rq>aY&H4a!sKO>ZJxLinSTk zo}Sd4?90ZBXU+4V)T_)sj21G8;0ppaEu$5!s33~Jpr83{%VDKsL-+PGZoQ5pKnDG5 ztcfI!=LZ{hmozQ(@@!AsjRjf3vwK}3+pO20XdnO#G@qZ8d^UF3{b}B1(^{$@ig*d( zj9Hd>IA>S-sr#^V(Ucw2bm?N6WqVC4;%1+*m!ovqADz^EoxHXB0pc3$60J1zF_lgYd??qK5=#9{JNdP z@V3ugFWri{Wdj?;=;Q>_6)u|8+WbM~J-yMxvx@Hr;lv*?(yR2s!4p)wY~k4xOxc2M znEh#vf!KB-+TtB0V`a;+np64fX5s3pkC?Z9ySKE2!e8bJ`b2KS3bN{LW-s*RdmdF9 ze!vseu$pDSLJ;=#5vMjH$CX`>KogBNt@JQG;^TDsfN2q(j^tzgb zU7cw6g)rDBW(duh>*J@-FPrHfK7G1c71k=e2%}yI`7rn>H7JdIWxQ__4_Ujw1DE}| zu&{Oa+1*lqln!%JB*9U#M4g-dn9vYb_x)rL{?{@8FijViIht2@@lyX%`}<%;u`EDe zy%4p13~SLA3J^&#a+xu0Qa&YbV z*C`#@Vx8vKgAWg?S0mn8#_>zw07uu`SmP-56660);KP0&0SEtg?%aoMw}05m>*eN; zP6?4DMfzy{sL1mDJ-$^b#(vAD=rGG_5iOd@?fH?bfjQoRhB%jV4or}DMl(r}L~0`u z?DqH>y11`}cKOKEJdIRDje1HpOzw+a4Ga5M@d;Jw(7D@Sp z!P|t!(V>u6oX)2hqTezMTs?!j3dT`t?@q=gNw1YIUtDf%?$;~(QWW@=5b2e;Y zd9vS(<20VD(?>Im7a(uwJi^Zy!n|BWLfH2G9t2vRR2k0hx(MgU$3>+(Yt{)LDwJF9 zGfey?Vc!f`{7LmfdHSk$p}x*e(V}gAKMN~tA-;7XXUDN$(f0q~z=o8p|A}?bfP)i`#sLU2Udc{TQ?7!mwQkJ4$;3*pMc)(D;w3Oo z1T*K&e#ys6EpNGG>f%F-z&zI6upcsxza{!QDfL|4e zoOsDuy*OBbB=!D6O@{_@$DwIX(m#9X3whlh(_Qp-4*L}(!x+(l7I1M|Hy)el`M&=B zZi)iFf&4z~Ynv4PJ%bPL{Ufk%&zwG}a>#7XOX$tJ5FBK5aGmu1sQ4qo2#ZU#;lIN|rtdgPHaM`CX| z;X35KRT|FZ^^u`4ZPS=)0U|~q=$KLVJ9_zy<*R-nv(l5Z88vVn8`%1|Iw*YdD)rDp|r8Zv^|+y1z-=+_or5nFXYswe=d z#U~l}GUKeG9g0b@QW!H z@l8sfx9$C~j?KL#kLODv;?zqNaHvXsOCreY&OQCN9Y|_a73FfjAGGXzcIj8S@!PZe zcw|9;_&qILenEYNgGMj*a|aB!b~1J30>THwn|LRmXX(Jn@}}$V=;`OToMoTWO*(8} zety%^L2wiRZ*wP}Zav3m@--lx;{c6Eba3}L{*}Dx$B8Cp_E|q-m&>Lf%Yc6?hmCwE zu}$2lB5s3LjSWl4jUZ?p#bB(mcLIjEWQRCV(HH2T>*Lo*!07aVPjGdQBbS9YO1As< z7<>xAy#t&$sJOpz_C@z7bJD`XAg>5urIB4u)+w5{9`T0)3^63q5n5y4YW^t6W~NH_ zQ07b6e)p~6URv3lTk4^y63R%+&BXe2*w76Gla)~ifbDgDk@m86#W(ow@1!@>YZQ;k zhwsYJmb{<7K%9CTq!mWWERsNPST!hU+_h+N%jE-iVKIAMOX#YdvF+W$;|TSM3}fck z(IVb7vYb<~Siv<%KK)F)*;)7q?X#b5FgE~7V44*Q@AN#-;FoXTw}PZ8D1tZqEyuGR zwD!p$zS<+S$LsyqR4|9~ih?y$C%84_qkem1R-DifjX7ERQcuZSrU!#!qL`}NPdjn) z>2sz?{BoP-YeFZA8NLE5WdXlGmoTbO!!G+4Nfm}|P`y=>cCW1Va@LQUJF|XhJq=K_ zudm!9uK~#<)&Tsaq4{dEXJlH)~E1g7Ne<oCf* zeQO{=QPIG#Z(o^mNrbGsKk3NE;amC4j`Forh|D>FFy2RhZFj%$5N@=0uOyqo8z!`N zar}Zbhs)^!)0H$}Id4zNYo8J}ON^Nm;YWf!8ak0+kgi>?W;dTKT|(>kyE$Ot)L3-# zZ$$O7pE;!Nz))DC>ay^jM3sqrh^}%W7mzS8BN@hdzrhtFa=AUZlNb9vw%=&d@H?=V zF^BQ!OLdV6()P0vZ?2kdATlvslXn$b2Oct`l(c=A&A2b3R8VL6d0?4ng5@H^vRCEG zX6z8L57-}y4Q31pW$3eUnfzm4-+zXbUutvP*KB-U&zTNUDWp4maC*G<;L%PncALwK zjHN@P^jW8_XKOgF#PG4hZcJ%hgN#^yM^6=3AQZ7@gv^nEVa$W1tK-FPT_1fv;tv)u z*q3C3ybzvTpnx^%xUy$|U$gL)$G5mf(%rW9cbRT| z;D^9C%${#in2ixhvn5IGkbI9rCiLN2fR*yi4Z6uq^Ec5UUAPeX~Ei zhLF2n>Dhk)anSr?*mhN`_5HGw0dY5Qawp8pQuzF~=sIfRjdXn1U`vF%+CAmMounaU za^%KwvQg3dFs8U$Ke2wYD`Wdk=V+?tFmz4NR2m}eRCl?oxaL9Gk5x+wo8sRUf~WxW)IT} zd)-^b`xx?Cc>fwq@-SyEK9}KfV&uy)i`>nq?*P#Dl*XQRqP2Dzx@N!DJF zi}78_CymN&1r46Z`@4Sj?^DV{p~c1fTsA|hS9Fh9xvp^h`nX@vo1Wz7mii_k%_^Em znM1HIHsg~~;daPf{reRKhV zERFf9JE=vn-;71$7Mk*2M{m+zSMi7se6k2X#jd#ac0mDLVm`0OiQQ*`O_{sIaCr89 zwVD@RR08ABWPcx)-;0ck&j2z7Wkq;EJdUK6ljO=JgBR5 zyg^x{zSd)yiS0hRxJv%1@t#9jkd!DQq>gpjc7Gc!B#v!Zd$hFKP_=Go%72XK@dNMG z*3jV=CW6enb@p{&wf15^JG>rW;^FzjuA6KP27=IREsjAnheR;0;OB>jwE1zb!}>>8 z)fOepwLECupQFE_yZ`Hx*KYETF*kpQ!HtP1WK&oE;u#UMKfMXEJz4RMQd3al01ZZq z$y}J3v)fn5$X*TrmvyQ5H{kF2QGy8 zi<)nmsGw^BtM0CA(VqK9zx?9k#Yvc$ILcLLGga3&d%WJ3_oV^^UT$(fAx=ksip3KZ z8K*(j*Q}tt$=)LfcvxoON1i)=Pe~M4rs$wGuws91JMrnJ!Scv~Ig0NFf8SU&{a_RM zn&lpaGfUxO7l&An+Q)@^1dJo$e(+Ks!ikh}{&(ItuysPl4}~_j)C(8E_L<(cX;ZV@ zvAX_wU$6F^(FJ;cFObYRs{>(V@L=hhaI2Qi5Czi>5N#}B?#a4V&?X%v#8!PndSuF!lO6c6ayxv4~x@5E6 z4$4EeJJHrp^TGz2I2%`U?#i)omr>nE3ct@5-%rkfR)46Ad;#V_J{^Z?BVi)|W-1*g z@GJZrd_>Q+UxgG&FV>d{6G0_I$V3k?c#n(&HyT4_mp@<-`a6qk{Aph>=uY-6+?$$+ z(zf_wvtWJ=9|(;0msTtF^V`>%=LAs5v9WG-R9tKB!i3^|lWOUD1BMG9)&?M;J?Yj* z7n@rnoX=0MJS=JsJ^$J%@a!nE^H>*=7&$e1t9+_tecQo@cGEJ*+%eKFBj_;e^ymjj zL=s<{@Tzf+t;rv~eSF-Td)#`(em&4rDv;lgaXvh8k+tDG9IwG&OyD@rXA*P;&9SqA z{^Qp$ZW@wJ5=SPdO9!Hk$YIkp`FxBvT%@B7{r;g(0Ej9)V;p8Cc;snCOx9s2jB88v zVva4Jq90z_KGPM}`KQh2XMxSPdZF_QJ#v^bHR?r)Bb{bv{*u{0<5iKHJMZ(4xC94} ztkz2n`qBQ#i>Pd!&nfL26ox3#4OHTZ??aST*Jp?Ry~-55v&OYlMe+FP*OzCnCC%MB z!p6iyYnVqe6eueCK;&+1{I;vdqnLA>*c!-Uw;@KK9K$$6cGemfQ@-`@>ewzwCeQM| zbi=)Xt)8b;G;zt^=J$TRY)OimCw|wLY-_wjFPV-JU`#ZnB0K(rR?CY{Zyp%b_%9UB zv)~T%VQfjrB;$IUbq4xo?guZL?H%D?1t6N!$OW#7B%nxWb@V;2`}t#{BNEh6EI@0> z!^c&1Khh!4ZJ2+e?nA7F_7?Tn$;mdS=lqjieNndyhn|om!no3m*FGh8%IUPPs%4G8 zo=e`}Ow(BN0~W@MOys5-oS&wHJ%(ZDr{G!l+A1IfW%* zG)#4Fe`q)jpRLVU8_+lv7D%c`+ve+4%+Z`R*U zun7*Nm;)jWfRjJ`vIt`AbPkc9>wMumuA;I%uHx}$yk7$CPEUU9vHEWdLjCFzq_}+F zw|^vE*OsD66#XSK_$VMj5Ri;-D1snJ5(!^Fo1V4i&YfjY@(3)`7Laz zxRjrYIeJg{vOgklRD$!YCJSPgEG3X(ukEN!*gW*i_}6CaM?1N+oY(py-+uM^AfM~(HX6b1;qX|5#s2aIaa)!5RQPpQ`4m^v1SHu zV+%cZ@N4~(4tX$O#+zZr-lpmPdBPe9Hca&OaX;R-L4S1o_c zI0vOVWbyPY`gps?F`P;$)>~scFzLzV1npZesMaQ*XpC zGB{_{b+W3b&HDGemUBa^fxD)rWad}6jHCxh#3Y-VJ~vef2qy$k2U9ejqq006hPs^R zCW_u~~167ir!hIAgGFlNIZNwZ?y@a}w%CfXZxB0kO#Rk(%4d99Ai zxBkUId-+@Qgl{GI13}t8CkFLEz0gWXq}(1G@Gyeh>lrbe_C+r%$wT>umt>R%qmvEi zKmZA;5g)Y_jI$9EpC0}%zdFHmz+9H*gRz2f*c}?MW`50>Ko!1Fx9<{`4to$J@)-V@ zxJI2V0CDw&m6N?aTGrqKJc1AeurZA|_^{S5mL8>_OFs75FC}0`kU6IAv7w1<><8Qu z*BBDw>)*l~n^1(A$j@$RZ~LsR<jjgM$P_du zhc~CVJygBedbb#kmkg}p1_CY%K(?kb>~}#wJ;6QvjbDgOe8T<}WT^ZooatQgzj2=c zhBd$|{COifNZQcsX<(Ef4u74v=@*e7cemnnt& z>9zd>ifp?95`6Cr1jV4dFjq)3O>?Ff-{%n6_iOyqxM=(h!qim;If8fhXZ;!<;G7?G{&@?7j@Mx#ls(>=Egyns(qUvb zyw3%@uLRr*Y5iQD?=nw_-Xj^f*ir+!4(?&rQ~MUay6RBT`3B@@k+nvtaE-4g4(ys! z0GFEs&P!#lm|jlpnPxyHfT__Te=8${{l^*^%im;f3nQ z9ys|q5-4r%S#w^Ht4FthV|~x`<_~L5@h+4>$uoJGMs^RhxC?D!A|*C(r$n5^u=iP~7@4+6k=uC0?zGB?Qo1r`|q^fFa5oeb# zx5ibZEsk0jRwX-{u|5i03ZayU7*v@J<#b42KsR5%zlq;250g9{;V$Yd`+Iy0JoLw& zHEany2e9+5yTtqN)%4g2&+POl#S8n3eg{eYToJ9HjUVUVa?a?0>T46)_olkvZ#g$KhuV{6JI4= zVzAOk6egEoFZmDs72k=i^)XU}o<(u~h@hB!Wlhx^;p>(c zPItF*rL5`z8P%P+qs?w#Cori%TrK(V;p{D(<;EY+kl%}A85Z|h{GH*-q&mX8@E2Ak(OJ!tP7FRmb}q$OiBSBE* zm+ZI?_*3G_=Z|?UwnKCox9C9fE;G9*lYXRb%diO$4-!B>C;H(;6UV%c*U;mMrEm7a zSlJuzw(m`X#cT6&b-vx6v;8@J!*X5TD9EQL^27TfixR-2^WCzLy`y8jFXh85y-nNF zpK$2}`E%sZc4IDqQP@;u`LNdh_FtsE8*Il5QY>LQe|cQ*Yt-_DbNIYJ&KGz7)D(gO zVq0G~Q}=dJT6XWn`#YfCL|&4x_54PLw1X@^e5%eMqz`no3bg>idm~;@^3R+8*b59N zaVHoEki1X#BR3t{;lpNimwBgVaq!V?SfyB)l+DW=R-aVm67yk9cpEekxa51L9_=P+ z1;hUms$D09k}yLkK`KtBoHs+s5V5%KFTVoIVUmIvD1PkO=WTA;^Sz6o(874;PcwsQ zIbObf%Z*J=zkYWC+?N5z{@%5xKQOx36}rev`bc))ZCn?NCN|HD59QOK- zjv{jT8NlxoVx#8p_eRW{h#bd;qIS}5BFO?bYad=QbbK3sua~is))Q|bgkr1_UtQzE zL0q*n8UHp#Iv}j`d~*HQ#GMbYoe@!n%RetlKX&w=$Ic7(uJu3_VR9mOiP4}!n{_lv zzHDv>?<;TV1bDyEuww1a<&F4y?CnZQb4Ys}ndhePO|;lW81!tl(fAC4+aITBA7afY z-SaW6;jK$DjAG$`+S`e>L~WeMjfPR@5LHn1!=_=(eQ(M2L+>*;m+4uMi#6*MgXrZI zi^)(tpik&8_=o-UOBhqeeA23=&C8npbzK@CEU&lnikYId-^-Q1&~t0=cjuYSP4|GQ zm8izVl3>9T-@#fz1qkfYD5Gz2K29ix+tD1eIF);5)V=HvKvT}4B>|A+Y4jUBqdr7J zxdbo%83CF;_!0liqIsV{ovR9v0Vs!QXj<9%@rr}?%rc_@E$Gq#dhE+`Q#_a%#3S>Q zppl2emd}^y&K>s*KH5G1Ad9n1yY80=?q^)Go*;FYTSTiqP>_$l9r5o8-1JD#`fpST zqo?Tx*hzVQVumt>m7>LYyfv&BYn6y@^9iEhE~S*m3xFO$aR1zgRY><;qJzz(Pe^}$ z`{ahqCx@NeF_?hjCU4u;tX|ps`G;9tD}hjxLERAS?<>o*P56Dm$#J)pbjI=WPZkgq z+V=Y-7qTPx@1M`pq>e@v!gwk1{0V&a%SVT5Eu7ds(N6J_lDucH=d`A({c>MM+s#*W zKwcz_AlHC;sUN?Tzi|FWV*G$qOIR#Ot`B$GetqOSR+uJN%(wq4)ChWsXIc{iYX)jRHsm>6}&(~<;IGDop(E9oHI`(y`t*JskzjSUJkkOCD z#c4Mah?@`*Q_q(mK5#F103E?^J%Y&-N>8JH+aiXbcy7P@GMDO$cRQqM>-6kvb5*BJ zN;*Ec8@<*X;DwR|)RX@74!M%+LjwpK5vrwBZ-DhQ4*7g9KoDR*K|ftQj~dvzpt|>Z zuuX=Kelnplb&e^-or6@(a~if-@0N|L+Rk?7y2$jr=4^>{h|17~7FP+q;Cj#ro;m?x zFVrJ6T&^4O%xk!V-@R^uBle(m0azOf3)&^b*GF2VnYq0_=0Zx|lBI+cwB?B^snh_q z>SbSiHj!^&`Q! z-LJOU6t(2PzKKrtzGU5&qLQzTMP8+EcN9)d$EG7ROZUv?^@H+@R{}{o2?iuPp2&oa z%lieF128DGz)C*kJ(s>#AQ+Ij*Bf0guAhV;`4z0xs-LIq*HmmsUJa7dP)7pXA+}&l zW=ZX5c~h`YiNi9cgfn^)0MNsDybeoRz&o#a_)QbkXWC#so`ID1q(LjZ#jVv! zcMFu;nNWU@+snNyf7eRnQRchnb@ai^w`fCImPPyhq=seqZGZ9ev3cGRsi6Xo?+`u& z4{v9K!`iQI8oG5naZ5^x60Qrv5D6Dc~D=GlT0c4UGL=ly`&Fj zPWP05CKjKltR16<5P{ci?L=g!0$>ypL~N~@<0kh|n&qgH=oqXw#u!5caEpoQ(hv$7u^gH}Jmzb<>WBReS0%$o8!-KOF= zlt}sTT|ZO!qdJW@6H_TF7W?@2S@(1_^ zk|uv6FG+#|(a$e+vJPYBf>NVpP;y#h;&QsSBBU5Y2!K~X*S+H+KA0;#m2LLQp5v%E0~AX7IQ?!>2{%qYc0(5G=|j+&BLn_&mP%Id zfdVH9$)7mM9NN>muf6rbkIDO3$;>o-6#B&32aq^!*3L=0U)F8U!bOkrr+&{nsa_9n zrx}`SAEjqQ2jd5vLojNV@v|GNHy~6F)|E;Z_K@l-U0g239;-FX8&Rm3YuFxtI4ZD^ zZbPh7f*~N{f8&OuXTj(}BMVd#-^&jfkU~N7g)?qkKKCX8f1BP#KP}MnG=i?*&ql3t z6j(p`_u(YoCr7hGHcEJor19q2 zU4sMZMpkJd+`{kqfM-Szx`Sf~u%zYhj0VWoAH)|-R0jK-tSx;6sQD+DU*GkadR{(q zLJnfRq!Hs^bSffUP&E147&sD3s&XyrjskK;hC@bp@)X~;=13G;zl17rBroUgK@36q z+MjG1oZ&I|6(Dla{`&eJ z@T2h*#(i+b8beR8<9-~e(tb%`!}>XQRf^W#*G6m-eWrq#{~{!T{9iPm5#@Q z^D577Yk^g~zjR_O9xmMDSq>lYcHXm}QYhBSs(Bpdz!{ix%F9aPOELvIAf6aR0O{q~ zyjkaI-u9(y9G~iZjOJD>cZ8^jke(SlefYj!y==H4=SzQMO?`*Z7=3|C?^0xJKsPcK z-d3Bia+Nve4VSpecg#bY331+@kzh{20G?^ z`TQ`jqARpc5R7=q?Q8ESWdJd8g-Rg-xW(-wlW;BVa}D;;zVc;jGSkzp?qVCMd8$7* z5;6+d>XRew7x?H|2a`($VN}$fvc^ap$i9Ud6QaYK60ByW&-FZ+ZJ+;n7h2njc}*L1Mzy$eEVD3;|{ zdfsJrmC3e)CW+XzN$o%}QH2YDzoWez-;PUaZLO|DU(h>V4#a+wp3kK;@p8o-(eB@` zj{&>ppTq6&oi17Lgx07y3ac!ullGe-S4Qco2H<-^mHLb9 zsOO2Q_Vc~BqW@d2`(z9qkb_WNtEAX3uUw)D+SwowT6Updhs%#i3_jdf+v8kuTT1LT z?fw#d?rFPzZ}(lMMqEu8&K<39SAU*DoK?(^hiRD)JD48{sh7wb60~@QmvlaVkr})C zvd{edK5_0Z;Y)&PU@Np5+#=shCMlHtxM}l6-$wocJ4l#VL%MyHsr=aQZ;A++oa^!9 zJ?MiXdq2i5jr49sRB&u(84j@)+$;C@;Rph$UPrIs-2cEh*SzHObe9|$XR)va;Yl9# z$;@{D;#wY!;Clv+_e%%-{kO0BG3B`^58KWC1zjT`1A|e&D-FspkTmWf6@6^T|K&g% zVzk77Mx(Ql&QiyZu`|7gP?Wd%%u_3(0YFia4|$m>hg@^HA-`CU#Oa!UsyU{!St^Rt z5kA%nc5)zbTNI^|GyW(yzSKalG3s$O=X|Vy?~z|O+Ij^RxR#qa@1j;>7@NPJ9_F2? zJt`sr(EF@?@Ah6ecw6t+@xfu$_)gRwOtO1rKs?OuV?uyv9p362f)^fMTLn&d_?yUF zDMJC#HcuzxCW*6b+7Zwk zsv#I>^aUNNlW=AjmlL8*qU&Q0`{?(BfuO?b+*g}Ed8IB?FBFoK-I_v~fX)1#Zo7~#v}4E@e@ zAB<&u7d(jl-4W<=q@$U+XCHDVPNUA4>gj0;#YI~ma1A~&daBb0X@RuoEj*Joh+z8= zxRLma=BC~@zpjdUieD$^q{-l?%mK?y2GGpJVMIuajX(brkX>Z)I_ zEzZ}vuekkM_Pykn{5-=iyNVM?M|FT)2W+dLUy_i0OgzhZWA?&}XG~|M^UC&jc0V0V zWuF|(8=~l;^OCURAQWgt%lW=bW0LP;@}kGwaR5g0$+L&_0jAn&_#q`IeKf=C^inDA z9pcyKBXnZZK12!fRv&~O!y#0HE3ZKE&^9U{P!FK@phIRJ*V;_#Pp3co67-q%v*myG+XRmzyv|~k)Zw9EI8_wZ6H9-NGi{!^UIav8u&vMS zlN==jR^`|7vA-cd!m?cNT>_NWd#~i?ERwqLdeekwR4MjZYyA{fM&|Fa5E<@@X;3*! z;-N)=s`@G?sM6??H#(6kzlr(r%_L%zzcuzoMBMz9eQub#%dZ4SJ4~)HL0ud(TFy?S z!jX#YTCGf@$6hHXRJzwWH_xIVn4&kt`t(&nyS6T7 z4;@Esf4*HLjQ5;Agdh2{-#&#~zA@*yGYfrF>S0Mv^DZ_Pl4j6K^^Xcnr5uB=THdJv zwHBb1_PU)OhqBP1oVCE)Jh)D&2`6^!DjJe~hw62dBLXO(vu7U5CQPbxosMr8$F#O{ z*X?0K_rAbRKI2_9Z11nnZ}y;U?mn%zW!Mp2!RU@vg2^k+M*LpOJE`1))yilZvUsWe z24v5C`Lq0>Zx?yfVJTo_-=3dpv9T@kB&`>`i>O3=C@6o#^3lmo7o}O1YqNtTGx4Yx zo)wEuC6^F7@gkQHtlQP%QYhr$3Ph%?gx4}iOBkk0stcfdy{)f=2giE)EF~ah;-1~w z{;WHPJ(eW=0QPB~4KGgUSc{pyRlm2SsPL=r1?#PW+Z4(q^MXa$!>u|PIT*PoqAP*c zn|5|r-$`*-Ai`Q@{(SEy9^Sd{`};{aiu|QOc~`#tTw_QB75V;xZhmM8D2trVb-0gn z8`@MUq+{&_%d(=s*Gsun5DXO8>L%?gbvL(<=7G=R(xB;Kqyo?m&yYUFXTJwRWVBu& z8bNQgQ%r4R+C&cAtN{ge;=&do_k$ZpK!sbSna%H`=!~+&g1;ZSkP}EbKY{L9Uk;DA zS7Z+)Aw}O>%tUgRLn$t89#fB7;8`#@caDefOx@Kf;%rQ)8hI`=Cx8E3TF> zMaR~XjMKHO!1->iOdZd!(CPQy=q2$xN*Y-3t_b2}$M$U_;QJUbuGvv)!SC}@3#PB< zZ-+X(X4jK%mZ7oE5m?2aNTyPV;d8ac&*QfXA>)cxbrS+B`Dv!3j2${2K>J2bJZFSa`5asbqHF>NV(u%N-2!3ySUd2 z#Gfz7yF=NGte@LjamS!$$W0@r>h=SUNiW(<bg4qtNdCYz!nZCU5?bnmu9d+~dD7^BUoP$M)ep!P; z`{{@Gm^sD5`AHIFW_j^m^FT*eyivXo95y;QIY-b}J%xaDS~ndnM<8AQteeFh;_p&= z3`x59UOBsbogU5MGQMXNGcE*G*9op!(R}_|H3<=YpqtCjFjjDqFLw&_I5{k+=w1=%EcapPmn32QPtG11C}5fiTwq|X z(`8U>W~S?3jJzd_85|)!x$Q5!1D1^?@%aKS+-`c#=9=w-{X03-r+>{0 z!Uk1N=0E%<>{xrOI+#=pgDQTpO1zBo!J>a7Gsi<1ykJDlvJE)uv~%GBusY*Q+1orP z&_a=(rqspg=^>4q3ZBXzLk2sz zIxznH!JzV#lJjM2yEn@BUd^6f+XYOeMkM#F%KrLoqK?tF+LdnG^fua<$_z=8PC&ikF3Iuf<5W#mzy zA9IJ@zPDz~W;h8+KrZa_Qcp}pP7{K3eh%+_)FGM@BXP2L0h=3Ll%4#@jr*M%zTfaY zfJZZ zuHMi6BLT5T^$a>kRfr}+2l0$Oy2yfS&bmNZXMfb3fykA*8~i~Y2FDkcdHr5^?s%(> zBP=pNOY?CD73UjjR^Uis!p&d>b2Hf7Z}X`=z+)FSMy;=RTj|{p#yKa5g*f>#|Hggr z4Fn)GRun#^&uGe^;v5Cvd1e4`RJNEEd?El!LqO>m`Oa(_n zhAdV76P&wfgXy`V9>X#>-!C`q(CkH6?!OH=txDUeX$}l<3LUX6|J~rJdLI>gARgZ- zOL%XLBP-nFUJ0foa50CGV6`MxFCds+y-(!nJr+Lkb$wu22E~~yOPcF3?iG!k;OD(K z3apy2MYumI=SIiUX_u&1$Xc=NKKDaVD8AmqoMFl`-N$EZz5MUt&5GOr#o-un7IUfab}E zZsy)iVPP@Q4)*#pTZl()a3%f4uNyJ8&7a4DRdqI3R*-Csm;v;eHx7&cL^X5ZTdM0n zg+5-KT?>sRmvlG{_>o1S{KDX|{W)(j@ zzxA&v6gPxK_7(tp5RbvHDLH}h!-7BeloGZ?Xf)b(A1Ou(S0N^NeU6bY1$((vtm$qH z9kKJE3F%HSY*6dpK8qiRRvdv&U$(cb-mP|jelA%AOZX5W(iP6(GhH9Ft>ZGqKZN83 z>h5>P$#4f0y5+tF5Q6EexqaYRQmLO$3ZWxXjP2!1xsOBm^Ck;^FX=(v=jI%H;cicR zxYO1}dT}3zDykCRcu&$nl6>t>)1bEuXUz;W5wMh46Ez3YavZ4xDdILiB_&rwZb!l7 z5i{zth__aJP=qs`av-Tx1sOHHGJAF)Kg)#OD=_CtKXGIJu4bg^^zal2bU-Rpm!@YR z-i zSlBe^`H`vwEhIkoAIr*oEmb)Wyq!Y0h4?H9Q*-N0;@{iGiOIp)EnKEzx_URqWN0Vl z4?*(OUJ3+Ivt1B*7X?r(LJY6sshVl#?CcXb_d3oOQYZvJFoC*CI(Iv@_wZuJcVl0R zTJa1%+_8iDn#!54g*qNnw!PF~%{egzP$Wl0JY=hC@s0&lq&~}I{#J+PXD6XPkiq-g zGTx`4A@EFa$9k_oDQ$nrhsrqJugUw5PKz&2X)J(xFIN{JKY0l0M`>6ZM%F;kQOZ%Q zRn9v1l2JpbGUIgmPaOIw%t2SgOa?dHkWR4;U7dy|l1`1L1AOuzgw?*~b{S!}ntJbp zyN1UEl?^`bE&lobY+5iN``;m7Oyfc)CI!vdnbOJh>rDQvp^v9|PwAvP^Lyj-Js z8vDffgy%AS`|`&7c_GHeube=#py!?qK0SLb-p2vJ?vudo(?ucw(7%s}68}!)xV==` zi_s3u5HYg?{$sP`*P9OSU%Cplo?c|O=YnVag|iU8@c{!Q4qu6uz?OG}f#;S@N7^U2 zE1D>3WalohU%c60;ayUJL5{C9r=vUDMKqmj3Myml>ldmW49IC@aYxxp^5fL;?@N4| zwhp+0p%x~(ZXd9(JU2z~y6yE5;{5l9D#9slc_@ob1cJ)z)f8r5f%Zr0ObF%nzaL7e{!oEVC_=uZrNv59B<^lolDd}bbt0zy867Y zv0Gdb-Y6T{k;5J_Ayrf$cRrVgr)wRgvW||8`Z1J@lP!fiP`uL?ke_P-Xl`U3G!qzw zOUG&n$CH_zKO{@{D+On(352YD`4EXO*elINSF+IoMOS<-Y&Dyq=fDS>zg}^;ePHc3 z98;0_edZ zYJZ&sMZU-D1id4}C(ZN9wI1qEPaH|?uMp#-4yn@QMh&0t8F8KqcdSR0F@OYwNfdI$ z{bzCQsZWBYk#EJS!0K#%krQ9!`q`;w$G$Mzl~49qO)!DvdklG?-5eTt^NDreNOAxt z_lNW>Znl3g%Xuz}AxO?qvyqbVVC&OLg#+Z_a6-SpH8=NWn=vZs_&MQ!ltsXy@~A%N z+n*ZS?;RYs(>xgaW9RmJHC?1GC_cvEW=dc{jQ_TA$A0Tuh+6KYB=3H%)p2k3BXvPN zsBQh9N~fn@`z?3pxWV8wzf8YTILb^-m z{GB6mG+v0Inu)7*je`Pzyih;2=_3{&{79~M>v1^$nSeQGXbdN3Hy#%H1pf)YxSWU> zrVl`teuBfyT=qTkn4+^%Oz~dO(#W zM;o}j+Rg7EkT72$p}1)uAAj@MvwQ3T!E29>hrJTmb1#hMZ#o#N3Ih^SKjc(sWPKiS zRMhx;7?A=^yl5=1c`l(0{AC{wd()+DxNXn<}}|~D?z*)6lyWR zrq>jmBze%T-&=2Lq)D`Z&FcDT-sf4VSi*K6uAkSwd_GoL_!hSV!JPz(hHXL#sMUi4 zw!V%>@O1mXQe47!%gVuWglF*`ZcTn>;+ZGL%^0CMX|-}n^(^$YErSzAuLR#`D~A|` z;z|1~qNB!3`l8jqOlUgBZ#CPazhdJDO?tV;SHN$Cb*0IXdRcq2Iel?@sVum`Yx8v^ zL-?_^mI_V<-EV%3%YNd&19V|CM4ahpJ@0&Ph13?Dh6alsHoug=!!*}ba&(uu=wHsh z%!tu_s=D9NDP59!5rY$w#zV3PnG^QwQZ#Bj!UI8$uKbz#rTN0agK>PxK(*={q!*4* z17_~(^JX-jJF4?`%OT_ZBCq7)`7iZd-8v{daQhW*mqmWq<{EQ`S}F!V921n1bk-8P~-2(pl>jh{{-1VQAufPZE678yUBE4xC-X%ZMZ1rzJH^vnRQaG3HEA|BIm762H z^%G4S>BMvN&WJqf2PeoW6Tec z7S)7~KJ1XUz>g*NO!av2QxV!Xa^QR~@oQylvsSaO^X@$Jcgt$T}c?t$ix3LE=v zc67teJY5JSuc&38SIWUTpY@{NJ=qiy9t$vl0|-xs;{WHCGJwln*)@13a9PpE*|lNq z`MT1-SEN2(ate*4rO4dEE)X;@5pgKZf6@$6oEHfS5sL zUHqGLE5I;)r#z%s7mq%a)H&e6;Ae;S_|_{e-y;4qYyKL*6cs`%9v+ZV>*ixVboYWk z-}q425|bv~j=7+z89jmGJ|5kxCcvnkbUXqbB*JSI=5!P9021I_l*c(r&c#>#RFHS^ z9k+I>?|T08l04D@4uC&x4615GWa`gd_SIb#bGg}LwfYO)oMs39oeqZlRSk$pC(!A( z4JUpK&Ml;<9wqlKv=~p7_v!3w(Hx(caNLmgJ+Z9aZRGV%?CG;W?vywPz;sje|G+a8 z_RzHtKj0K(e}b%{R^B*=E7T@Eh0e9n36hcQSb*GqB17@_?Q?1Sw-}x7qtWQ0aRU~) zP+W+?-8rc7qN8ZT&@zCt;h&PVDltQ+PyB~oAB6LJAFO6vo_5tPR{68kg*2AsQFG0S zZgjte>Lq#USB-f$)#LS!65&4Q#n6o3LwMT7foS%4FrL|cpBF!b-?r?v73@7=-PP)W z&U{jhokQpmKLoF0k0ligpNRHyYwli4Wb&_GC_lbZ0Ah1rz5fW$^_MVG?_`)klxenY zA3;iTF0Y)XU1UWa`dgw~T_c57n()pG68mzQTOU%DB26h2qlt95P};`b{+YXQ-2 z5~Mu<*lvC8$0N8i)6)T9)L>z@k}`F*eC`1ZB~`nv8Un^||!$1R! zkauBWx&}5<;>y=I7JifE>0wac&vRc&9y^p*8OPv!>(TZrqxVT+Z%I$>_w|yV#;RZx zSG3eZA0)9guCeSB@1mLfg>9C);*25Q^A0+rr@CTpQoPCj)uT^B|D&O8DCGWd%g>Tr z`}yYE)gRH1T%?RE{uA&dYq!2Gg4Yl)0oE(n>M-^;d)>>lywX#FS{ z*K3gpKHar|3C3{(e~G%$tR55x+=UP=(<2 z#G1Stc$>H}rMhO)1KoiYih;>scHg4g-}Mqoz%m3+_bEbg1s!?~9^BmR?-Ttb((urS z2QHix{Pw8Dmf1w<#%)=iSByBtYgUd^Ug($;Q#s{s{H;{S_}>m_G*~RUC3AgMz1(dZ}h?EOY`8J za^FhG;l~<_Nlh9=gXmsNue$=D7SP47{YE28-9(w~dVhQewNl#jl?7J9IJ@c5ry0n6 zmUbziYDzvR5>ijFJKO$fO<^t9Z^+8rq@=Db$1_p`Y2vv&-@mf^mrzH%d2o46QW@X# zgsQX-r3$D8cX{2o#2(<+XARwUx6dD^M7gC-yzb_nT88a@e;uyhw%l*0g~tWz%AY*_ zRf3-^C>|;CkdY_iVu46I@45W?`^0c%4zRT0rb&RM{+L; zDjY}fGgOfEzZES<$knaYsVWow6@N7=MwT!QclI!R4?ZM!@*0d1Sf=muCSeRb6#_8> z($Db@@F6odu0_0 zdgY`b@U3`*u(SQ>Rrj*kEmgvt)~^Pr>ql><&K(GW<)>GHYIL4(v4C} zL_5$)FAQKvyw6_T*(JyihNewiVr@co6a`3!@ZsAwpSWCjLd{o8);(tOj&jLo+u`>* zC|vq-F2$Yg45qWry7oSx)u@JQmO?QDV%-e5+H|4-qG%6rTqRNQy4Zzdqa_h|pZm1+ zNXTl$(W1)H5OIh|F$a9OhGy#zy#y>+IAAaEA%*Z-{7n0m98q4ofI4sOj5(z_y|P)p zQlYwUa00dTdXKO$LhCi9&mj1}f;RukYm~7}TVar+oWEdoRvduXJU3zBSzvq7_i<%x z9RaEy=U3kpk54Nn^e@$ae_r(`FIfdz@%C@a6`r$y^06!RwTCTpB->-|fvg@Zvl}4& zY5mlyxfBmSrhI=tAhfxjnW=#;CTR1?21YczpTW*#aK<|EdzJhJt#44(Aaup2qyX#S z1Bm%b1K}nOsF;>f#%uDq!|+YmY2Fv~)Y&Ka%f5X|^vsJX4ougvkQ{%88bX53Q$tD< zf}Jyz;Mn!nzq@vuofyi%KbC)Jnw;u)7=s;Ljtc+;x))e$?y9}~V$(-p>djA@EhaZU zqYHWc1aP$VE;)c$u-UHUACjP7{`mkoJmU&NcP*$r!MrXUtx5X=n~=A|Iz5M5>8qk0 zR$lf^O6~+SG@z2e*DK6}wfz^5;_RY2&1xFcaKu8zH2X*}?gc!a@ZiPdl4=YS=a|ow z1@;~MMH|Gg*MGV+tPjThc=)!*LHpdbIu33(yOv&{C%U>(8Q0%@GG_Z=8dv?o*sL12 z%0(8gE2^d$eeghp5U|&t@e%ThX9AFP|NYwAu_7!bIDGW6E-uV-m$3&0?^EVR67q(7 zCe;JLINd%jtMplEK4&2oN=Q}!ySpYOyiCdiE=b4E3lTw~oD!JFr|^mlSQvR`%Aan? zqh8VVg%$nShOhzZ583^(IK|JhG^K2r!&~HSx7Xi(EPlu65#O8r4&*x;!AwYf5ao zRNrnseC?^dqM{Pf*9hU$`E(?uH!H!-++Z#JJ;lML-cD)eQJVY}^y^GKsT&V%wU|v& zm(1@*%JM(;tE=`ewK;9O3;@}L%ljPLUqwd0c2axmnOF+Y<>ljUURM=whX-RrcQXYl zorJy07ROsLdT%0ZqMv?TlrwqdDbS-WAkGT+J|yqJ>@ zqj(2XDu2$^Jsn{^5|7xz(;hs7vfAkLpDImy=}B!CUsbbv+G=(t$GiFX^@#aqr0!#6 zeqVz*!ALWr&PW6L+eatng8nX*>nf#M=FS465Tl2rnTeLX_?{0&nE6=W3L7hg$ggcO z+`h3wa>kQHL*VhTMZZ)is!I!@&hKnKRX)+sPxjV7?^g4b0>@SM#BU+9;|tDpPkEj` zc_nY3tl+5Tex_m!Wu2;#W=1>7GNC%B2Hb0|NEBFV`gJy31v=K*^{Rx>cY`B|>EP0_ z&)ac+X9`ulX6F~a9?LzWrv9^3vDyMg&wN?=4yAgJ(&y=G>+2fKA0{Yd2duW~UUCT8q_e+W zw!;A;t*|w%x$c);g|Eh6`s=uwpZanfQZIKvRd%fz=Y*j?E<6vHFU0VH_9$tL> zSqP=@kMO8_ah1)34A$$5!K0PIos4Jl9=AMtzM$u3c%Qw9t{lP}i`mJfygiO@&LJ6f zjq4gkJc;vO|5ZfIl?eX~2b>8S`q-$~4Hu9Ibzf=g_sKi7*8+Am_-O}y^T5vmJ`mOX#^)+Zp+W(O?~ut`!*J*<0O@WM#j`^cISSjefQo{vMY#!;@; z&#|hqK3Je|sX-)oYFsmZ0emVomh^fkFi(^{FEQ?i*8Ngv^HmMkr?GvRMcu$PkKGmW z16`(3J@KQ2%bf(i^5Y)@U`}qY$1{E+bXjeixOdC9afteQ^%FH0mWA0W>wbNFk0(k! z9xWnE0*dS|hppKlp@Txczhz4m-uv~l9A~~JzhcEhEPdQQ9xnvXsd>x+)8|kO$9;+9 z#N!b>>lDQ47hJDIFn~O;@+W-v=2X~*n$j&@?|e0%-RICWCzw-@uj-?AKB(_LROj+F z`eUq1r?lQI!Sm%fv<5-##9%vjP zg=CoijC@X>=ehBF4lOsjBCHngj}!A~p#T+-;y;qkYfDWqio&l%FP9Vn1*wAK9Ux6b zniP5ZY$j`EO)^FSDgWu;7R|3AfD+E8Qu&3tN3q_bf-sQII)q7q?sWnQ6EI&MAYP&6 zs%Njn)qZ4AHg{#ga37-Cm#o18$NEw;P{KRk^OO;C1tr*Hb>heB^(~*cU&CuXf6C0c zitfvVQG`wpG8oPh8~%O{^_;bfFMa=5b0z3EVfR|h;xTHcPxzR!>-gF)QWaP~35Mb2 z@!SgoS47Hn_hZ1ge%T%XnTa1)j{E%e9$^m(eMq;7^bX$|dSvokATr%^ZYgz0Z3Hj= zjw#)r30nBtoKpR0592cZqflPk@iqGFVB7mTVoUI98`7)>+0Aefp$JP1ZM{EwoAykbq0;lsOd2f*jOGuM(53 zSFtXb-pSDYaeN2O7k+$ztP8SvpSP9&mEW@@kEOC=zK>8_+_++vVez$*_Zcl(L%11Y5;Kf-hOi(iivgie6>U}MLy6%Mt_<3lYP~E zILX#+plRaBZ^kq)bP>+o>=KTCM!}|oN}OWxhwKAe9~yFz7u_A zLme{rz#>+a6ogxR8w;)D*8*)N{QaIzNR~A5$~(WmBJtUn+}s%*&a;m-v1E8)wQ`(K zySWrFOu`E~^ueGz{(vt`Z<(;$3p+R`Kg=pY>Dlm+Auofu|CMUtU;?5ypeV+z+HSkD zJ*s?fEr`cgBA9BLUdH(95?F&}7HPx~eo$~$PrsKmynBh!bK8=j$U*iB;546OuORyQ z5Z|6=wu+uZLa^8m@gwyOVtDUbATQSmI(GYmU!pvKzlgDa#T>Q3SanOvoTOA#SaDra z+Rw{#NxGDThM`np!}*B?E`S*lATG_E6Sr3>s8Da?pgfa`^a#D)nUxe!#+TSbbhGx zK{ck_x;`&$0?;Za{$Ah2VRugye`@LZ+U&D=4Jz`PVzwIrD-ir^19!bPKTWKG;z{p1^2jqZ(%j=;+ zzs>qNagO9O&>Ta*vIECnbM56%Sj|?IU;JRc?{EZe@_dSY-2_sBHh;_?!ySV(`f0(= z(TM9GFxwy0m-Sv90^IxZPyQVg33d2HYN(7ch?Z4`@T@5`_nFRENjw8fa)^b$!)!C@ZgO zN5p!kHJxbd_QT5ZGHqDap-F9Q|`AqGW-$HMzAT_9)NB-@-ITQri_Y-!1 zU%K0(T&SXASc8;?#_`5Lfu3tZDAZ4wqbB0quzFgFJ;^Ucc~CrtD#<;mnjL~E-vs(% z5|a~T{u}37%k$66sl6w2D4%G=T!8fe|BFAN9l`@lRgJy?{_J}`L+B*72u{Bb5XU4P z&q1}WKKd>ZzXeR<*Dj{p@jh~YN`{7r9sN%Nr8O~rth=J;zmpGCSfh6||Eh^M?@arn z57mVRNDU%6=5N@9cU2iKDCl5wt+$y#0H`6Ai)*P@j>mO}%MzWax@QrA#diwRs(nWzHXkr1yC zpinO}jY7l6b=%}C7(CvROE&Y0l3o^GZx){7XLUM(p@nC#3W0OjV`9AP0bfh7J$6eu-bDMl zr}CQInW6Rf*%ay-=uvXqT?OtickEJr!)x;Z8BKb@4+i4vboDoPS?Z>Q4yW&3mm+G= zNP5F`CE6h`;#XFU@yB`F^4lF`$RVl3URo|aAu*5o(=rW{Cl2TSbG`4TKUl#-Jpa%u zsfUNs37v`w4Z&Q(o_{O4UsPX9cd?nx+O7T}azgkKxPfzP4q>;=8o5AO{DP-lnA zf1B))xLIhEamwh{-Dj|&W5|>6kF(DCm65vUDU=&Gasdeu2)c}GN+?t}k7Ta{DC>e2 z#ig`=+uimEc-i|I$3bd^=tWKkWqJ3U>}E1*CQ$mLovU2lJh?w?-SuVK zADnypp^XnT-Q0sSR(p9P=)Ado4~8U2%5=h=BG>PQ{>)5&N{ys@9rp8fz|0yvR=ImT zr68c!?OpRLR25G9gZ%}@agQ?HNg_Yc>!Pfq8J4y(qr!K3NiyaY3IkR5C`;6=-6ejZ zaTU|Zt??#5VeP{b5> z1;OXGHurW989ejMa>3dqV`mzoaOs7NyF-sGs1A4aMb0TWoX~Sd=ubt!&fS>bzM}k* zrSNy-ewSjFrH!q|iT1ccGdAf<$6R6VmiHd%&;Ef6TXVpJR$;& z;@Sb&ua&%x9l5W&EIQac3{u>!_SRC=>Bb3}YgvyAKVB+10(og|3i< z1V#y^aygypd!ROUU6FM0F3PA~xh^7sgUF?r$UP}wUl2z2E~hg@R3|uOvbTR7f+vz4 zC?((Sc{ni7;msXBz>dc=3SRot<+#Eid9va7qRQF1urEg?K8X=NVR93+c*{=3vaNMZ z=6_XAk6x$Bw|>+-R;LGJvhvy9=OhfYzC%bJ@#BzzN7+iyGqE+Ia7ouP5$kmG(Yoz8#@vyfmgvVA2#x1W)iKkt&W z`W{ss5AC+K@1uF0iC+M$h?cT|;S(hQnTh^a_ z0zzMq@?C&q#VA}IDB$>0%!c3 zUnY{byox^)G2aK~V-d9PqHZ+`$CvAe=lp_>rb=^&Msx&X-Z`*-&v-zg=EVYN9AOOTV;3NE5-y*XChBck8?`FS(q6{8h1 zbq&f|yiT?u9CJJv+8!)PrTCa%-fz|Zp!&D7a-6FT&nSdpL)UmMwJKaaE4@~q^>p1I zYj(QskN6trdf}hmDEXRE*h}vtZ$0XtPXP7|Aq#BU8izLx&}Wp1@CsBuj%WA1e;w#nzf#FLb+9hg z{_c1o{?2AxIF=9q>tA_s=S>YY_Tpf{1Ji=&T--p+QXqI7 zUuXNi8?DM*;;m08cWbX-wS}~%zyU9FyF0N>U&hOoyZJ$j>wx!)RdIu+;WPIPPQ0p& zZ)13H^g1J}xmN+%uA`JImDw3RKhT&aW_3XG;^x;`{Mx=KEVrlI=@nI?yypqL2%S`% zHq^bm3}Sd-z7@XPq?qs>IAZEOJs}ZpVv=~0ulJTXgW7@aoN!yFGdzj^Fc`b0O9!V%3keIX4JIuidP|T zAMzQoh&bd=O@E2(oV4I6 z-Don3E&w@3v!0=b+Uspc{v!~QX9uVRE1HoRgn(=zVcd*2ve}HbY}t z5nby0YDd^B+1KQ%PmvBiy?(Z-!5&{4^ki+ykDyCJcGIe4Si$_iRezb8)<*S7?M>a~ct()bd z1>cUOdpoTH&|`)xQb2Db`T}tc-jF`gLV!@eJkc0y#X)Ii-PHgy46V=zXG0?6v|T(q zJ7G{o19AfVN%=tK7RL_D?lI7}k4N7hTaIQuz_5RRmXmTyC2MZK zvM+9j=M}pVZ+&1$F0I!q8MHHZ*Y_JkG9n#P7|%q)=rg z_4pVKea!}C!Skz$1(?#xlt+}Fz190EyJeXK%AB3%?RX>UDQJ%il8l(y_yq;Fb|4E# zjU65(GvpW2)~(gFR61V)^M^A07eS-@ZTg*6C?oJ9o+4 zcldI})-K;@3Prc5X40El zZ^%T!kZA8I)0-3(mxxM8SzYuB)5s7Kx-BxJMf}gm0|H0xFyEpN@Q=@H+Oq1eORx<# zDH7x?HHO@;zz^T2sgT9FvDhvb$MWJKS9!6nxnO>+(7lUxf>A%od_hf~myAotTpn`L zI6tx_o_f{MA&D_PLm_kfZ`nFvZ1FS?--A*nwzp73AyW^?8#L_SbJD==}!&ZCX1qCHaA3Byj4 z_J3nRXSMi!P5UGJjkzhl2;|d)F5}hp^;scbTunO@|3!~OTc5L1Y)^Wr5?aU=U++8Z zR`)dCA1Tb6ic7hDqoq#M)cl>Vx0%{rQ|EJ;!`$mzPqH<&;zppU3UmVb+P6o`0Fx*> zJlI)2SfXe{sEgr{V9yM&=%Q}qbBY`pphC(4i@K}@EiOS?-aC4_=Oz6x(FK>iG4n9<7V{$0@NkTv&`NV^_+x?S2z>qX|IsBO?q^!ALc0myH z_ZgWy7n^V>C|l)E-27Jp3lbQbJyW&c7kg%tbNBs2#1)*R;Jn%fP2Q z*M^vM*}MHwZoG#vtak(AZzb2l360dAuRhFXZ7hha(z7~$y837EN2XGaWd?z;1fBb~ z7i6O}VgZ5}02H2@?oRW79+G#pl6@R)yv{*nk?oh=F3Zdx*sJAVxa@Jc*4nubBmAwp zjhJE}Yt1MHt9ofF3G`TO6^DSI#gu^s(=+I<&@>tfl&bGm$)pP|y0&{j7L{@)iaxv7iVn&pMnd{8ECwXzUas6fbkaR~C0;p=Ob>G);yjW-* z5FuC!YfAh?&$vQztVGYPr@WbFJWIGDvQOm=kz-(colgVhV=4j>$R7FeXEB2n1QGhw z7F6|=%^R9EOIx)=IT8@TSH?aTSaLfWvzss7a&UUfA&rK1LHV{`}Wcy zRDQ8<@4JF}WT9g5d!NgM<5n67>umh}3b<_mO0x80L$W(*z zi%@`A0Y-yoXf=FK;i)KowfoMC24!>7HSJsPLdO&~PgVY8tLoqOz?vv4%js*7C$!cP z&v`_d){lnS*R!3rh-u@OG=KEjRvfeeWS9@1Cy$tL8SbZ}PCY)=zEmHslk+twA8ZbI zHg|iO;WY#o6CHOU`x=Jyii-R9>bL0mN#c`|%Qx_Dm{#QCg>e}aQ^plE-7DsKCJ3kOtQ z?~j>ZII4JazL3GVY0P{oq>?C(w@BQr0X~hS(tzEA;j?Up>)UIA7hAj_{};YZe%kTw zQKl708MNb~^`R{Nm1pQhRHZ&Rm+PKh68R_l{ynzGOm_3xJJI%qr!FFKmwwY&H$zX{ zIH!x=cK&n9s?5gbXNVTVpnh3Kh&WgidOQ)=MvGtCiQVHE?uyopxhg!qp3J+Y7~g*< zR&PH{Xlg-lp#+@;>*sqz9lWW|Z@_C!%1%Y(eTXJ{Z0iS=U;Ev1Ex_nOq=0#XkKh?(rV8lz# z@k9$0P?QhN%*6jycXUZ|}!=_@r z`YG&HM5^8wi+zQ*5UgoGO=}kN-W(1?usbZD&+?!wBAX@b6g9 zhC`L#FH#qyS-@^@@f;62ggrr#?RaXr*oX{VgVCR6mG<<>gNw=|{O}>z?9;Iv`;AH&6Pi)aUT?E6R9M0C?uL zxQFw0!L!nPe#}XZNO`{*&+*>`QE=&?w(;~GM*98@15ll_3_otx(QE1Ol|~$ZzpdP7pJ?-cw7;*h7wvgJ zKepDo_r_zq!6;wk`{`8~ML_5eSvYbh>wpzs>vFriyODs&;OV7667N8ASEv_r2k-W2 z$4NY*3Unl5iDOc_-9AhtlffD_r;xhlOcy{Zcd>tKhj@21$W>=N@YW5EzOca-bB9bknot| z3yDFn9Dae;{)FQwi%(xL&N{<3$uNBz=_2QqWqfEwEW?VbOO^W!6u%hH3BK;#_~Yhs1;3nl($G4 zs=b1Ec}S1)XGUv!ZGy{v1hp@mp~Z}Cx-S@q3eOihPc5i`SmnSrH37x8XE1+V>hNZ- zonAKJP#N5>pWldPHn#}d?)xm=ZC}9-?d}WJLvwzvUHh?L4m7`ug}>ctN%B<1YnY1n zQmmsgM#25>i+W{e_F%KNEuX|@3`%IP|4yGv?yFP^)(W^apjFQ&Xdk@e^dyhO@J9h!Zjjc_Wo$9^QByM76MCtPMkq#prhQud0~=_f@T zM!uX-pNKZ)!hPK})s*w;%wFQ>(Kq!&o13l@9BoCpU1i!#jD0>uhU^@EULRGQ86u6= zKKv$dBYq~$aFkG`=W&23TMo6NJ5eOO+Sj5XJ4dL&COer9{{)}WGPT1uv|C4)Wj_-{&b>9LP?kqgZNr%)a zl<4NPnwbU7YMZu&-LmcusUhe0PFZ{Qn>G-w9tpP?-!S?jssqG+-P8}r3E^A*GH0f; zvfX0g6$Fpb~80%9y|pp}CQR|=EPdG5VMYI+Z1`JZRs1+&lJq6^{t*?z8Yf70b?nKnqUYj7I@)+2k7pdW}=(yndzp zy+kSs9gw-Yo|CXe7KReV#F5$gM*I#HP3^95y+;7M15;j)$5!~N!^`pBdF@mOsC4*K zZIs5E>^C@>)GV)V&18c83s~p=?R>w!qcbA)qJuWC87uZ*D^(_O0=8^VPu9%My*c^w z8uMbc<(aD~%f8p`#0b&#?DLU- z)cyDSi`U|ju1Iv8Y34pasa^H3**dR4Lj-f{&TEFJ_YM(@>fPD*%+e5SRRXs=Tu-~@ zjyERITs}-lo_RU(QMZfRG3&DmFjja5aTm!)QbpW=-t-Zb!kSToa27h}>c%hq^2aloFATJ3Svv{te&QI!B$OM+{5;)fr`$ky;q=ItW`KoR3}h>#A-8Vj1mxm zPvDYd(j388G(Rq@W8$62wxZ-2#Btw3^!RV5@0tCmMMbaeJElBeXnAMtal-|}Z6PXn zM*KJlFJ%ShzpS&TQ|&o?=$aUenMiS;)vws0Q9l`eSH{lk1ckXnc#OR8TVE1nbjvR6 zJD^1-waeDy+xJ+WpKDuE`k9Ch;RPoV@m#a0HUS+v^1(lLIHR_K1oZ6n<1KFo6e4$j zoqj?JLC=SIrM|_oDxWWL@!sEnQOW&z46OBI{@(1$HR$-7-+8m$=8+4Z`vPV#E5PIH zB4HU?y-aJY#ckAYMy#a*&5rXKMM!l9pc+RLejg)bclXO`e7G~7IcmT2C1y;|aOWU* zR)@(Xc2QJ*&{}r1xN^fjm$p1X`_>IQeN#Z&VQY2XzMHBPSm=)NZboh znQq@1g>NSN)vG7vK!x;I&A~&R)IAjxeV65GhJY4VF+QZt>V-*S{6|$MlV`r8zn~$`Jk+#-%~V}-)<(r zfAoghI&6l(HyWNV*K0-L4CM)vTTSWWzGVlE)6X`yO^6RB{tKe=iY_T+yv<;)(G0ofYdni9$_i};DY6bvwmgb2%Wp7cB$JsM+Z(nqqyA`o7mCeZdWkYb>t;=`U-(IU$ zw7P?9kGMuhQk<`^SFrDIUtPIyd}bt`d^8EQLKt;jYeMVjZH>`I2vib0LT1@TWn|{? zOwJ#}V0bqG0^uB{AtA~TeaUaFWeA%c=cqs=&QF};ZCU$qK9w)TGK7&yS z`U4c7_!h0x%7MG+W{&aK=Bz4aA!-oQ1oNnS@yYsTkf)e{qNI{Z^UIKz|$=4r#Ggc<5lPcWsQB`ieZ31Yr4 z9&5S(tgI%fho2}t!1co*=WLg=UNC+%y5)s{npPoBDQ;Ub@#fIPYs4Cd)ALZO}8t%1M1u(bZW z?8M2txeziAdDa#=xtyO$m!wb=Gct&__TS0WoY(ZCqg{>o}}<6u&Hni zP`~yAKRkrDgI;@Yq>dBj93SP2aKDgj#cvmo6e&ju)S?GRMtDNvRJsm@oQtt-wUX|) z^WnPq%WpY7S+VO6mz(pxa(vniW>y43tslNtEG-_YXN&a5M8;vspfy3$j~jLQ?CYBb z*GCKc9PQPd0jEyOa#n%fBXk+s`k4pI0Bwn*Xa!E-AbTu9>@HF6IdefPoYCB8d;%M- z1!jwaXg1uXg#`}iha{tVfl{C&uDN^rg`^Zlk(O=b?psp?F&I{`zD4bH_Aq(C$Ru9g zu0>P3?fI_ruFS(+18{Q!G6FU00S8Ld6*_A~-v`=3RM~yKFC6-!?AC2mLvU*C!A<_? zYX^IG3ij26%qPJ;&9(0K9M=gb=Yd#I&QO8Ce{M{Aw0T)2p;`cp2U3xmQxu;=8Stz4 zAbusFDtJwT1p9Yh=-rV zw;4txNN9l$^@fB5W^&J_Z48$rl{&kZRB?;$^>HDtR@x^5$H z-3F6PManEWq&Luo;{m|qOP;Z zJ*p=b_g>)%79O{RGZ=Ee0Tv%NpwXhw=$}D!q1p)YZnhDnqs8DevKhVgya5d?`WzVw z*RC2f>fMLa3%v1UMH0A66>ZQhpaGlf_mSDVWrhayeZmT)5OHdNG+sH5jpqg|(?hJ{ zs>O!j-WNTh>)fQl?GlmBc-8W|mWnz|Rw2aWPzxr?728QnxrmVI~JI8qQ>?gM%|DtpxTo3!3C`^VK0n|;a{mIKLg69> z`g6#@&s#5jyyv^-P`XI)cxymT8q-EXd z3^P~MMYnD}s9q7v#Vk~w&bF-H4$Lp#>3oncRrCQqx7?x(90F5Lo!}Vo*XFAw%_tVK zska@LxhEiE)@i6Hq#UbGHs80QCfyKFiJ1V6=U|`mP;099LB722X$%Q>)|o0_rNi}G ztalbi{v8b638!te!!`yuI6^CL9}#b&SOb4wyg!X2K&)}se01CISjaaOHN(Dj1 zxAS&Ct~w_zx#TupK%E$h1(%mUz6_{pN%6~E7564=>%d>_l|Qu+Avh)k%I-+;AL|eN zTY0-ZF|1+m8-&)be9iUf0lS$x1?_T-ZUp0U^`gtLr@F+LiBRveGB`!DTP!osM45sf2#`Q)eL(&T#G*YdUr>$)ct$!_~3 zKP=z;^a|F-Bw@E?be`fZA6jra1ooo|ZxxzfpVvwf`cGXF+0LKJ{H%FOK{`MKK4mb& z^)<$ipCZp=i0SDleVvxfGxRyGdw0;qqZx)gT zUkJj#4;&*tf4e94Iap7$*XGb2k1TYQwIM-nHSpzBhwxJC_C<`sXCb^J#qYK|vOxrp zF&ZN>nNc1GYVRS_1+AeQdVr$FZCP-Hn38cs|Q^=tu?Q8w>WZaFJ>$Ja6zfjZ; zN3xC|h4(z`i75*A5tIdYs83hR&hLh+1{h+G{;#-lD6LaD#{l+~3 zHx3D!t~@{NM;PeWyX98x0VPN7b=OB3NU1;Yj{ub=#Ox?xL^D*lbm^AydRdnlAWPH(T7G2XS7)AW?Q zg#)W{(7i zYj`SW>j!#8a?H+LJE-@$OnZUbs-ihRu8|NolnZaIqXf6Xq@!^*Zf3DLOIDn2RgaYh zO*2r{%cswWNJa9}{fec$DErd*i4PbJeuc@OA-ws+34RF@(tf3Mzx^ca{#Aw+Ue~`0 zkQ4H^(m%&$6B6%&nQ^;H6@k+9X1$$b42G(X>Mxe-a%nHOD06R-aW_!#!;qSaLSKqX zOtl`E`5H(dR*2}^3)U@$nHGm8^{ffcB1zL{{cUkXO+ZqRJ3R+>x-nVBv;a@yVDw=@ zGoLHgUk*o#7dRqkFa6`e#YqS8=sgqucFT}C@O2TY4FP`u@P6tb*tbhL``$pke}fAd zNlrq4zl1eT-oVVM2KU`!stv79@3(W9B>hT?TH;TASjJ(G)sO1A1S4=m=?p=(jC zMQ^nMc+1l^vkQ)eW&~6k9D&6&K_g%g4KDb)XH2edQ?v#Wp|i{LtCxRn_Ho;ief&ua z6a0|TPqO@;*Qh_S*$Wv!!~JsBk0{AmLwfM^txpK1=-RM(P^dt&e>d6(MdhIX!V~5EG^d^?`#1|P^WhUGKYB8P4?Xyw zY$s0FMu$UFn%-_le&cxtUQZw6eF3`UVZ`?A5VHY){W-WS$*qBkpdQbTvb~c9YOwah zc*$nJ`)im{u;Jt`tSjkl5^-s`%J27?@|RTV8E+&D3|}P43+@CYzSM6-ok1DwZ4lr) zh`c#}1BbSX8EfY3x}e)h3P@e--W{f4IIV)dIVW^WkwPv+S-kPlU5N!?;S^f!_rndh zOgBKb2AxFTZi!7X5O0p%Kzah7fB7>=;$M%IR5}(fD%z){Y7CrhNcy$keZaHsY?t6} z5wkU@-HqP@QOC;}?fbSu4k2L7&a7N659)cT1pZ}yB~m~KTf-uIePk|!95cCF#!l-e zCXG+35l$h&ZG`hyFOc_qAHFVGr^?5?@hz}RxRYcN3gtT+dsjBnE}^`qbiT*ZoEPJY zC`p=15)7ZKem8t^CEtGo7IcuwZ>QBgTFmm z6KDUgg9;K@T_;4JB77@1`Z)4^ez>XHa>6}k=jwnE7H$b98yDb0gXK7WQ9qQ?DI$Y$ z@a!!!%DO~$iS>99^iN z`uoI1(bOSUFRr!h8TPl6Z9)yU1b3DkNlBV&zid?{NQM8LgaZ)p{>9jR4cIkc(3>aX zkoH#|@RC-eDm4UeZeM4$JLUQ3bTFmQFW%RFk3Zh_+LKa9EOmLk!tjhXL(M<^(zeI{ zALftW{T2i=+D-z}Fuf^e{&f9ngqf?{v9><<%R~K&9W+;@eS`Pq>)f{6dDho7?xq_U zPldTVWAl+X9CMs%>Mg&gi;^BcWOx$UvlO?b6ebM>%cnQrV?~nb7`lPwkGY@jv%?zM z3t27n1`E$~Z(4)b{qiG)nL~y)>Imk)wVzby*XhzW{+@dohT!W=0?pPk4q67J3iU)< zyul-ibw=SIgVO2n*39Mum4Nd~SWoZ;ZV&IFHvahEbhf<zd7z+dW?JQz_d83+#T^$t%UxLRVT<&t{qjV)a{# zsIqU1^Zb5Gx%pc`DT)qJP0-p*n(z6f-u3(YcD@j4exIO%?mK99QeT!b3kQp3R`DX{ z^m1Oq$K3Ei^?7I=34S3nl2N)-7#Nwm@oW}z?e<0!W7_@I^=Nw`(DOC~qtZiX2RzynKoR?+L#H@x{FKAI&&t2R8bAsQ@Ya%O<&7_A|?e zW{`~k(!ZN_3)XbD&?%44pZdqkyV!q(NECALiu{p_7j%=x@ao+%zbnZp;)m~>K=0!B+H-qA(k4vF?AD7IUW5_> z_2PK>soW!Tu-zm6`4LDcH-7t>D{1k=;Pv)&PiIYqhKsCRRj5~KjaCdxnYv%|i?vn` z=l5TK(`s{>jwBvl3VzE1_BuXY4jGRZtQO2AVH}Sw=5cCH~e@$ zY38n2j*nenb%<$iUN3Lg=*{^R^Pph5Zb9CRXkWH`33s+OUB`{ka`U**`-{8Rd*)pq zeUzTmQTdOuNQtlV0t$H-8re`e+txzX@6gek$Kt!qAORk9;o$rJWxJfep9`a$pB9AP z(DZWN!z=FyA3OMd9$Ph=G;+45^F$GqHi$m5Ui%u-q|POSktt#b>P09Fye$E&l=k#+ z=606R8Y*>5vxq;U-75lsuAiCre&1qLw(Y=LQ-neF_mvAXNx8KzZk&jx@0~yW@3GMm z>Zpk`WbEa#18UFz%x%M;euKb>e#A4b)Tq}8ZBRUw=Cw3x9%jgCMI{P)ceb8IYpI{D z5>;(1M4y%1qYoXJ{em3$r21uCq92DC0tqKILAbTYVK0*YJdl-#m!(lxazqYle5d_} zCRmWE`JOFu8kW7yQO>$w$8(k5yI!~|#{w#xFC#~`M~%p1XKK;Y$_ed!NlCK4ALRBZ z^3D6*k~a|tpqV$C1bPKar^XIAAlf^S#9>EaYcbM?aVTpgDS%yT19^YEhA7w}t!Ghc z@*eNCB2oeosyV&tNAtl3O{&lnU^McQgt0*612`%1$!nu`Z*aBq{_g41hJV2yw_UR4z2Q(z>&Wk)m_dDS_$7X;3Y!+|HxkBNK+UuZ_0(8OdG@woH{YZx{k+3lun8>W)dZG@^EsSPmk)?04uF6vDg|9`Zya&J?tP#5lVk`^ULwxNQiQmnmx`}e^PskBkV zi&n9(U!q-qrbEcXSiQ4u^`dKp{_p$oMxFPo_Ixdevo>*LJm@_lrzbtU%TMl0*Z!kg}vAyk_F-M`b! z9O|I0VIls8>Ckp@>giVa^sw^pdymyh{w5aySkBkqq%QTvd?2r(V9*RGrKbf-T(liO zS;vOFU>@7E_N+IHOn+na%OA)zVrV1>8{;UtS1W`itJv$&NAIoUZ=uWM2;xBW*9ko5j|9hgtvWgMjl^FgAYRH-P6d&|34dBMJXJ9qf$ z`1|sJG>VQCEg3-ZL$pB0FvLl8(IP z23O8Fx$@i~Ew;)`gG}b8IJSQVIDI{oMfOlRPZ;c>v;J<%}k?kXLt?h38 z3xuiTB&U+F=dh_S8r9yr^T)AqBR(%kPhx-l0nT?O=jN4nyZAr_3x(2%nQxr?8v541 zeAUvU3GF5l0&VcCYX3=g+i^AkGKj6|hl9G``|scye5Uv1VR%?puHRay+FQLNW{j0|Rs&&Ux3oDr&7X=-zr zKoZxooz~I0rqP5XhHQ&|&+LY7n7;%j_pifdNc);q%ocHLp>_Rl*ou+Uk@^tKLHm$`Hm;4t)Wo`h^ z?R>fjqk#-ROrQB-@kVm{eCY9T9=Yp}N>3YcbY91=H_D#NP+`3r-joSvL4tntoeE2= zz#24?q9YsmQh_>ggKIkZFXGzuy-f~%*l)%$geL3x@^r3)vM)Ml9>&k>RCljfaVpn; zl9$Liz%{_u*2DEH+9Tt*0&KL|E*E_tGSGl;6Que005|!^;@Y7-BxK{j)8+h9@U4J6 zFWxnu-#H-##~Pwn_Yd9h$G-4tiL@6KYS0UQaCQe-wvP38toNmhm7Zqurt}A+XxFxS zkOJXu)|YQZO_|DB9>NR*PDj$RC*^tCzQ#tDK5`se!`_7HfZ3EMb=ta>1-Vg~@HA+) zYoWcy{_M}{N1`~v+CxPZ8INeFKXsg^su4Zs%qUr_BnGh`XoDI`IAlQNZ9K~p{Agd zSmC~#kK*s4>kh)>q(5u}hlG*AO(NF#srvZkYIztQ`~xd7L|?|+YU7cDf#ay`gFx~G z=T=so;hk(V=9aDJ{D(*N77Um_4o8Q+N-Y{3yrsxeQC*JEzVwq8xq67}$PPu`Uf|P( z(v6`o(3f4G!|_Pa(6=CuS?T(Q{`+uGSJ#5OdhmE*kbkv2)=v||$6=P$5NIY^6u1Sk zIX&1t9JF(qz+Wfw=Ap-aL)EBieqtAXI+^nIk6mix3wF{IST87`Cf~Q*%BTCvB&o!f zv(ge;yHCuCowsbViF`oT%$6B&!gX+D{YWW~;x>GOawzif!L|O$H6t0VD;2veQlMBq ze-HLRl~Sk$7d*nG;oUllCed4#=z#|{l9dzBk28n%I`(|tqq65SpWnB?#nn%5 z|2Vp?B}IWK`b#MJQIH%&GQ1H43MX$+KjI=0wX`lfW1yZ2!9 z_pNiTp8T$Ed!#6U0meuWRfIfJTD3RjRD7t62daji-i31Gzpop4G5M_Z?%VO2_6yNg zh|FnJ?FYzA-7nwLOTpW=<5pV0RtI)(LKyQG}@S!>M>Gf~WajN7}V}+&=37 zhc((6@_k)}L@W!3%_|5ikW6~bF?0p!lfYrkTQv3C5RaQ}gFDjRyUfh)47qyep&NsL z|9Z~fcOlbJc;NVW)pawvT5%BetuGIE)N|Q`@*0}cYZ*Ro_{QGe`%?Ce^N%vdY^|7c z{wXe`lb(?;#IHT7>e`Ro`qzKOE^{6=a#W$R%^o2F)bkgs8wDR*ojRZBuCJqiLSs;O zAvz3#*$u7a!I&Q*WXVqRIiH=?wO|(9YS=nahx_g zz)|=T>GN*2x2MYz3<t*j2IoZt)V;{hLK>CeQ%Gl~fc*?z{&e(&MF@;8UX~$e6`RY*eV*p2 zPKK#xuD3U<+Rif-4s3g;&qBSBN_T=>`^$c6A7*<0{4|wpm}wv0Xe;k5QJE~{mvJD| z3+;<_c@vaJ2k)0(64@bDHQeW-6m>ZykZqF2T-vMM_|TG{PCsG$_iJtyfJWT)=gssS zff0001$7BPrAq|leSmFbU8VnM_~J-& zH2g#5_f@mM-zS`tZ)^5J&vmrj{r<)7-_Lv~KKm(KWDgsrPKCPGgA=t+^G{n<(xD7Fqm=65H(0fj|%YZ1&SMv8z-8J$u zFAr9|??<^d)_oHPo82dWS%wkJwGbZT=aSOy=MBHQ_EYy-uj%8<0c&)IG*|7v!Sgcg zr!kIgyaH{A9SPHNas9hE`$z`CbG&k&Thzt`r~xR!&wV{YJAu<4Uqud3;IY&qM$3FV zorWuMN+*djzPKvFe}px)wjQ)F4QZ#FDjpS7C;Mk{vPM7JKeFSGCf30MR8Qy|>$dZ`EU9m3K=Qs24w6P?#9>j|w2g6nV73=vEfwYASf%m?ocD{CpP|HWDQ`@AQNAM@&xao92jYZgb% zP|gqdCG|E6O3Xe1a4KN#ckPqpc%s0$9s2(b`nf;q&OcA`9YREpgTY=BSG%X!1nSLc z(Qzat;;!$h@wboAxv0tPhD_D;laoIDy4HS3Y~?`X`xMm|wz51#-62Z}KZ*JJe)Amr=>`@IEK9`ZQl z+Fpg2q)cQD8dl?EY8+c1@DXEHPBbaQ0T#k=-_ktZZd_A(-PMclaJB*t zq(aXsBZde0xsK2En{DUlLe-M~Sh5M;9&NxBOKHwb=Ip^YeH%Q2y}f_m*L?dedHa$f ze44aOX;ec}2hO7z&&NY|rRM4SBAT#3RsPG%{ue4{EMn6Mbz-AN_@*alEo#$!vt~!) z`66;<<0qDPbZK$i)bSkT;8Qsb)914T^%T5_KW>ki(aD(5{Ha+dd1N`~tH(P1_*XVx zO>A;e83`#->z$P{@W(wT&3K7D?a{$`P_Enp7qu_iF#ct2+k2!z4l4l6T?5+Vi#c`-_rS6S)cIt~&a_+U@XZjzIEzE!P2<9Ewsq&%1=#RxG^X zX;gwKaQ`#v?)Ti!9kt(wkD-JpA7-L%X4t_RzHqQ#o7-iUuIo?YsPSPZ>LsrSG2Mgx z>T?g2t8Uu$(ytE%o@e{Sx_$572^th1Z+`M(ydxb19yf?k&C}ES9*#cIz?>H^w2ixQ zCnF8nGpg69-@;_4p;vl#*)u!r6UzfDG2_GCQWzk`*6lCF*+vk~cR%Keh1K0IqXW#$ zC%I$r2|oB8{}l_YtH+B}`E&hE=R>||5um6k6NY2cX=%;D1Ljp+L*(#g+?k$6LyU1dwhn{Fb&vDV;ytLF21KB<;MC~s*; z?a5!;E+w=CBky1K&NeWCD{g}lkD_=z`Vq`rda&Ig z+`(Sec*|R6qI7oXOmXnFpWSW$h~RUcaOd(mg91g|QvpHUQ{Ud77Xjflt%dq@JMN1!wU6S!*eLRj2Yd#MoJ>ZBV{G(2Z^La7%?SSw?5Xs(U z8{#-d=l2;#q3CJNdjIoHF5jb%;gIVV+`sKuzVM!}N2p{Sbdzu~`QYuIvAP-MKsH|2 z!)-6MVV5T-(6ckDwby@YGHmXURMgM~W0aZ|LPQeLGByEf5W>1qMk+J%vqu0b|5NN1 zRjrx27G--CACq!mt}nq?=13G9Q@_6Vg92yEdJKM?OUZY03EGT@!HHFFVnK!(670uUE{)#0a`iaHP3S`RG5}v*bI0>@M zS%;NiwNQVVFV}pVCRY9NxJ|yRZPQCPQ>Q$H3>a{O*gdNg>?>OU&E~_4omhx)Tb$BO z6NEEiFHOzJ4j8G#zqNZ)Uo6U-_Sv_vroca6#9I7O_al6>Z~I5umfQRQokpE?aogU5*N+Bat}B z>9W~)Yv^hokYfnfW}lJ=FbwnAt5BW5z!0d<{R~m>C!ra6`U%x@4*pDg>4chP$$ku` zMHJ}8f9?b6en4gUlei|ICRz%;3gc8yO;jC=rU)-HJaC9x?O-vKN7C6x9i1}-eN+Pr zRMgpmUby&J9*2i>eqFAjm4=BFaqkgRocA%>4$L*7oHWgCKl`16SRt_j`El`~I!KeYk6K2w{mdAP!xgU{IKU29rY2xJ6^ zbEKJ%|6W%QAc(`I;s0ya7Odx0PC?! z{P<)Rd9@}8VLk?)KAD?rat}rnKG~DGdYq_z(JRON(MtPIdV)doj=X@q`sePIdlHiV zc`_2U{X)hQ&h+~_vY=^RF{P$4^+}RhEZGLIj^y17hz=Z+isj+I_O-wZ;f=li2ApBl zJsPg;`66`FtL<0&nvlqdmRmNNkgkCc`Od0+Y9-Y4im3A;F?stA&4>f+O_9YT%?(TfkK4s2beyT8OT=iB7YfP+-0v~?EGg{CgX){AqPKlmR^?_Hq3jd*#0l}zI)~Z2X@1_qhuEW zOL|4%>i8HxLX%J&S{h_!uy5;DQhpXa8DS!SCY-d`12mL9%7vVIa9_(;xeYK=ylxp0 zKR6bqs4z$L!XVi8G~;3W3p_o3ZRdYFe@F1r82WLK z-yu-0oI`TMy|{J@tn>T%yq%oN-NgdD{aYNV z*R6(mqGhm8X{^H779nvwNX%|~F{g?Dx}+m3CQB8UFsJ}=VYurrI}$Lk;ZUqqZFqk$D>UM;rrK~P5;q0EwLzjfR=z%3b)Ygpwb!L?j$lQtpxdO zoUZ&s{pnBjnTbyh>+ zVmT-w4o(z=AYT=cPk(q!iLTt*88)J?XDe-w!xf&S$|odMLV6`<>3Wdk2AfRbL-fWKc31e_?{Utr+iW%&nmG-}Srd$g~0XT-G9 zuCOV;tQ@rq*(C0|`QD_xOAIkkLz7Hi# zsZ0jwnK@oEf^b2u#P(w%;Vc6-6?+j;eX%NCU7rFm_Kd@a-AD?PkE2QMb+pRQ?3ez# zoBq)Sy;>R{7r=CWC%R+$%kb9chXK2qfqCBO59n@>JUOV13Y<2KDDMt?!7mm*?k!u^ zeO3J6^gdK0_29m+el*pD>@S?P;}b|%*H^%58C{qIOGU@9Uza_pT*o3*Otb@V=PQ)@ z&Hlq}f1fG%=y8?X`y$9y$v#E%v*hk6-3JrhJ>!3IG{e+Bc+Mp46KBfDA&#wSuvzKk2FXUP_*HKCA!8E=^cYaa!P?Occ+E<{w zqT1hur_C;EAdJ%hR-u6VYwzm$LNoQw>Agxu$L8KYujDgcLD@h7;Q=|W;Tl&ZDE}*p zWTcY-LEs#U^!1!9_r_t2zmAXt*EGFTjCw0RQ+r1F;qAi*&@{?R2yi#)Hf(Wv+}|#B zccjA|dL|`NXEjWPnWIXOo|9$P)=9;lEZbYW*Ks*vm?VAML+6I)`V(hD=7%{D&tH73 zmACM!{q?MT9(#ffr&e-U+(m!5yNG}+Pu^C&6$m`f)v0a%XQrpGZjWz+Vce2XI&#O) zREY=Ms0;bflUQYwF^uPaAC1Slp#HUM@R;L*%RS5WhclVG=r$1Pt`5HqZl2Ah2YR8*6pyJ2#z@M0xA`W`e|MFPC=Dz9 z_>h9Msk+&u3hf|ae%_r4WIOqZdS2}#7M-JN6%Ygg2oqCFH(pmEEO8IRw3SrH$kV@` z2}^WHKYu-DDKdd(X79#koO4mb9tGPEnBw*_&IvrLPrQBAyi_=$7lSsBdVbwfe!i@xV`+i;%jQO{gN-7#i>(~>U(XUz zvL#nYGZ$Q_-%eVZ^~NgX*X7pwb$}xTX&p>`?gm+^?O5Ym-TadGxV@JuD6P( zc6xQ(UNu8C@J7a}#dl~aUE1}sR@@7QC+F#1-|VGtxFyHzC>yuq0E=yJ{P=Y7k-UFD z?LAe}up|nXlD|O>-dlr0$`&|5&OLhtNswYI$I%~b<_C}aN%E~^PG5IL4zmps_DdOt z>V;@O;SKWCD#HO3J}w{q{fR$a2wkr$97kUJx7!D3y&eqUE8!IeArM>^$LvnbhlL*e z>I$iG4rAx`?LdD=X~%ypq#5V65DrhmsD584JHw#4R}TAKjhqGz-D|Er*d1#qr=AzN zQqJogme+lP-SDsc_V$@0B_DvWhxUru@^=Ksy;SL|80=A?_v#*KcqzB#nwJ^_H9Y~H zzS675=5(*1BtP;)BD}ym|3Um%1@Sn!w^QY-(AfEn{o|D+imZxjS!D-UwYs--5tVaq zOv#xC$jjZc$S{UQl>EBq8hm!A|2)*Oa*=a||0orrVo15~dFQY{e==+aXxhVo))N@i z9kHA?zl*=%(+g^ajyg{2IX>I(ZTaHx`Tg1*V5)f1ugs;qRCo=AzJq!yQ(XyYFzpA; z4sK@_Lgj~~b;*5xG~OZ`B4^c_`C@18)a4D8gbMxkv}#w8l!JJ{e(f(Dp$i6V(Zl&d zlU+9Z1?!)MdwZdP^^2;SC?3IP7j|}bp31pPR$B3XCy*yD=gj-|G-ocKn{a+b!hJbI z<$%;|3lJMmBQ+2n`AW(Klp8dZIlI$?oZG-msBu8S>+!`*FZ93T`=%~?=;1?e@*S2X zP%*mw-B)2~(V6}t@ z`%7RPC!izV&6;GpG&XC0?Ca$K-?cC^b@HGKfSP^^9ks+#9W2&aQ=FkK&-Fn;#X{x5 zsm=OLpOxU=;yL>cJO?v803v@D6?FdI_uSWqLX`DN%oe35IdY$u5Sa(v_W2~fu;|{r zyh|r?!>Yb>#Xg(YV8d+pi-)H00sRUGS}R+aSS4vx?@OYLBeWook%P{tFz%O933J-2 zsA3f;i_eP!O8H}fxUqbNSxyq%k>VzU(Dh{%rfEA10|F^b({lVwiTIL#&6f_Vr!%Sr zu>R~&bfK+1uu$LHDTQN#B~$(|hZAGJgL$!jqLq*UF5m!@Sb-n>o~{h5n@aEI`5a_k zl5Ma&lC4jzJ46)(@oGP%DlzTFX}E)aOxTM}MCvU%3zt@N_v~kz4|zDj{+E8 zol-+bWI#z&w!sdeKkGhruLn4y;@Uw<3?CwFj|z{j@2MPL^nwzfnmH(|CtOw;)a$VE zv-pvKA`v;sO$Yy~uq)idpCsJ!BICx#80y0&0=yGjMr^>X$02*8$#vk5ZuY+sACSui ze2TFv=LVTtdP{GHIDX)NQ#)K19SQe^%}X=Fj$cvw(jTb?@=O3q#jKSZ5uD&7ut;=y@KcX=`<%(91xGE1pNOi(;`#pzCN$29 zpNiFHj}5*|hk+vOLmGby%Q)R4^wBR=TWDG?S&Po&{G_hu`X6}93aaQ>#d9xNwDwT|!clBw(L3>9BBJxL%?mF8X zc1tfk1Q4QDPUdWj;sZZkY4WnyLSl~DCwOI(_DS76mc(Nn^taYhNbH19joHzB1<~TB z(E3mnH5MDsy1}SMV?1`e`BMH?lAi?=uY4AGPC@!2$oa|)hv?CRZm8dt)jS2} z9=TBX;?cWN zte~;#^YbHeH*?0zFG8RSet0DVfGmeLBwv@|LC4e^x)=ic+QS*JrE6xdM&a-JE%?-# zVrat~9zZBuT2ox(Sa&8Mu^tH9FM6us4K}zr*mTUj7KoG`p#XhkU)@S|p&kKhw^7in z8RPEAZz!_g;5Ks(wxpuNQ-TEQ$KC9(h*H2${zcz0ZPpNq2d#62_#lj5lVhND+!B!Ib%Rete?a45t0R|G(EMo63W9YiRKVC@m;)!bWjT(2*7s! zX6I13JcuuI0~LmsQGPg+4H+NYH=}ABX6<87oMwB!TH{B@fB>vhb)QK93U2+BK?YWg zPBsJm?(Z`bR#O33&WNg9>!?-6VSa_MA<3&F%kZF}IP5WCqdI@VS7?eAcN!G1k{~pD zJV)|z0t`nGd}>x+8hSXUL&KhfZLVl8ThM+vU<}21V*_z^?|Vk_3oG1*SzJG=FYYXm z$!_F}WVau}hqbfcHAM?wl&%Jc2_*9ZBkUOnX${G^%)nTbSBgsH_7a3(ZpwMhhVRte z)kyPR8!-T(WHnW&y|4R4(OLUdkTyzXXm{H!i6&CH-;lNpg%u038J!$a;VNMqDR?W`3-xfAeSxp^Z|2ORCr2@DV36MlH*J zx}|}k3YeG;4o}0z3_}+OHG$nPXqo{*&H}?EJlH zh-BvCSU`L7VAJwF?}g@Kf#J6*U$Ro(`v`^%5OR@LVfv2>7tL(8w;YN^9R!70cC(g# zxBG-b(6znf@y`j%aa-z4*%f7BB@Cj(rZx`w3JGm)0wg!Zi;9(;s;&+RAt4-mK;XZ8 zJq;s`T7UMhkQ*D+U|!}-G&7>Mhk^!~qdgXCS1OnNpnxKVi?hSTZ(_){(=Gi{d}-3p z;DI+=F`Z1`A4=ZniMc(lcL;*gf~!GY92l9pirlOpngy7c2Gz)qqJV- z294@KTz=MJ*=NXz&aYe`q{SXE%+tcADju+j2}gsc+eFY`vw|{G8Fz``uN_Z$6s9Ml zcw_aHNBmfX;4*h%>i0r~Q9ru{X9m}LLRc$I_;(o&Xddp7RJ*B$YzIH84qs3mF01Bo zV|42zCgeguZ13Zn=R*;1cg8iWXUL~UOu*b})E6)lj?ufRe{2rj%pQ$t$UYf^tAkX6 zd)o5>*rCQM?si8wAx-yhgVA@nY=!1a-x?ZKY>ov&n2CqLI7z#Gzm>w?wnKjT+0_+t z&=r3%P<)`Ahji6%2PLvBI?CO9eG2_(o`#({0Yd&C^?s>ZX?$j-C>W8g@$@yl(v-WBgNL+NXMrh|{Q? z0!FLehhn(bYO9&x8G>mKzQZ&$Up4!OMH3m)JbK?Mh11ZH;+BL3<@nqUpQ z5Bd*nd2d(9QU_+q!sAAMx430e$hOq~{7!5ll;Y?^;RXfK^kDvbE0>c9GJptaPG3GI zKc2WV*l;Vn2~j2Z+Ali~IrtUA-dSvYpBDC-wnI+igX8qH4giJcYGPoV ze&h@OM-d6Ixp?bq@XSs4ZWZLveuPZLdwAvN58G0eSU({TZ6f>Z(}4nW10;^X7E}F*RHfn3 zCi8peJDExW+~F|!&n;NXgio$@^@6Z@(XSLcEw(l&&na|nDo3XE7md#Ae)Qs1KWg9g za#cV3m^GQlO;T(mJa-Xt=d2|C+xdMeE6Osifxx>8Sl`#)`cri{ZHvDA>Ur9&oaBAl zS{Nd}SEc>A8x^hnF7dOAiMVs{mYN=f4&9Bu5avd>i}*Hq&!qT<-s*#m(_I0jgfdpr z^`RFPaK@#FG0dm-n-=n?CdaY3`9t!48o+>tUIA%ed8?^A*$@)S#@!G0DA$HLp1n`P(m}NvWmI52 zD<|%kHf%~SyXE}=D(jbVq%1h!#?dQtoGgo!ofr!czW57avGlpe0FS1QejA;#)$Vg} zDL=PjY^T}rwYuMaP5qLVO$3+VZN>uO__8(Z6|A>yT^@>|Gr<8BTUw%i3Dg+Sh2nuN zYMf!-XW%`Ky+Tu|P_NLwA*K)XWIcuG__O3%&$HJ7J_TDKSho6@%)&oLic4y-3NL>_^bHjDB(IgdVk;C5oRxBw-N^w}D6~tBba`L&^D8_ReCg^24Y?2nB5v{+FDT*2S%hX35cD6T8XTz-UF9WqBD-wf@l5{`E8n=QH9OA93VN^i#wGm$LvuwPv4$1Ae= z=a2m{HH*@v11xa@a-ZMc3h*NK-FW!tjLGSn=V2%P(7;059&m+=&G^%v3(AbwhmVHM zA8?!1U)eXT-cJ;JH#Vr|ZhPrU+6~u)3%FE19-$Z?#v(<+EjTvTtW;w(fi&2fvTEp= z21WA6RUzE8`k5j2J)b{~IV#JAz1ez5Ut;AyOTjxGwb`#E@?j3ZcVMSRfUSI{_4MGR zII}MFK08Z*)dmV9yLk@!0d;Te6|c5=_310_vPQ5TY;cDYC~LEoxKCetFrAHe6Gg9( z**^J?pBKF&Grs#AxS>c(kP{{5L#hD7z5sy0-q8E{4OU4QukF3juJXzW^;RXbTn9xg z<>%}tf7^4iwx>jow8a^8R0#*#;d$i;1>pxxKXG`*q%NzE_7V07Td!}(=FiU@*JYrx zMBMNBJ!e6oRSfs*5mW-ZtWFgZa0Hta!2m-B=*j)Jb?o9A^9VCJI0wa&R;cZjDZWcq z{2Lgo$LIAzuvjGX&BgpA1Sbwxnv{Jv0H^5zwxt~Hw%>Ap(Aj=U zoEKxxau)tnV3`L$)yqfx<6zOT|IEgON(x0!z_x-O*hp{=+x&qRFX3^%o;HP;O0lV% zkb^$%o~v~C_xEvd2>T_09j0v+pTa615E7S3aH3gDG#}<+3@vlRLN81&a`0Wq z(XrHz4fh$?`RS~83iy4598?rFZ{9I$QQQz1=zbctIu0L7sGb_UXSP1sAwEJEScbD~ z=KlG@AiA~7-q+&LHF25G?;Gw;f3F1{X<}<4SQ5t@mBeW&IYIPm!y0mX`#em&&U@Oa zRmdcUPIE|B-1`)o_&D!~dU+9UVUFH(%ew$57yE5NLlyHGq=LWBteN@RanGKV=XT~D z6!DZ2=x zah;2U{XuvK1Pz@OcU0W!TcBND&QHBo=hvCK(8-r?GuF$$`{c+qM01E0o6|{XD$6-w zd@`@NC0l6$DspEorm@^K3N=U>mhM#?83wci3-q4U+Ntucei-! zQ_I*&+XZG_ks-zeragEDTpjv;>!5`gv^$z!a6FqT+0tWSJvR|&k!Ps-dnom6rW@%U zKgQ-<=q)+$$F8ng1a7f=;GVt_Qkp`2jp7jB)?JYK$=c^Ep$g1uUzoM*XdU7Gsy>Bt z#dr}QZ)8`uJ9!;(APk!&$i(s+9LP>Wc=plbuWROvR^OMzC#sesAXB?9&glJ|YpFL=Zdt0#U6j zvHy%bM+Pl;;!z=llq`B?m-{vbdU{oX2#&6O-yJ@nTn0hpl%tL$K2UY{tbG&?4i-%q z6xXWQi-N-MqS>X)iuX_Bz0@48N;W(k@y_p7v-{cAx0$=@!tpozV>XmTC8_TRGRYC< zKHT+m&aaDNQn@&CsO4O`CAG?`W z4$J{)t1$KiWQGkDP!2iUPBwVI(dCgUga)uVK~QO8#%5^aE<%_w)b?g#cvfla-^4Lb$m2J@ckro3*i7AqbTv6!=dNd{nFlSEsF~D6 zoy)RTm)<=$@-M1Q9V`wKA!vA_6vHx>^|QE77i0+*tbQ}2H&>|$)&R`PJ^0cI^y5p& z;@4*_Qfr66rg1g8Ym&SlU?o>rW0ot3mu&-Ea%#=nrCzP%rC(pVZwptah>z zXtKsZ`S89dXO^0HgWtymW+nM2pEdL9&Fj}cJ!}T#(MFW6xzNAo*Gqi`aplV5RHqX2 zAWqLqyJRsG^7zE}bOv`McjcLZ88NA*>yIk#5fP|U7e*C7E~0%cf6hKI-g@wP15QOj z5MD}>J)AX3|8_J4UwnLU&3ye)V3vjF!M4s)MrgGB%l4HsfWG%%+pVG<`3i+#-lf^)Q7_?;DCla~qPrA5e56)>z@S%fBiy z^3DO&#-@eoHC4z>b>}8k4o8!rDX)s@Q#MCG3J@n2XUc1w8i>}Ejq%u|Ni0E{g18Cg z1s9nr`3sOm@09~Syx=_cF|IJ`v-M%b8OQ&i5x;+h zC|`)%^UOrXnn;6L9CR4dI7Z%ZfS*k75`veNz3sU!@@iZ*IiC5Kd!HcXT)jl4`W#{y zKsVAFpKtTsfEM2EQh1maZ@2MtnDK$0##EB|7x*Q^mf*m<3H=(tfGaO>E_GS!tN)BP z{HCY$8Xd2P|MLcGQ!LEZQDHo1z9#Rq3X0GWe@BQv`4?kOME{sAh_?OFt;w_B`}dUR zM#hHgA*wc0)BCP+R*LsALFdTY;t<1HUMIIr-^W609fC<-V4W5udUOY_m+y&-ZsRwr zyy3-sfL+VC?Z$;<84CyGJyow$b>-Cw^cx`3ts{AsB0kc;Lr;(>1^+(XrOf3^e}JoL zW%+;+Hun=`Fs+xl;HAto}p{}ePeDt1&e#9LiM$IVy05h%)t%@14_rjfyur( zTrRL`2|0a=fudc^307AhDI8xRzF{OYTpXcK-=D6|rC=@$M^Zj{^pbwA=5T5qUmP@t zNR7;5TbWbpO0aW0CEw$06fi?HESGp6LT?REeoPNH-$C>jlrYRo-TK5HQj+sS?X!u- zwG-8saY4leU&vi2KX0yjp@gcZsoqS}sp!*?AbF^;@Tq|hycul)C@Zn)y7V;TllWv1 zD*?EKLQuqId9=2=oQ$V{lGeV}J78%iwt_PEFJUd~e2iAdPro3U=gI1#XR$LmaN zKIZ7P%zKe685Z{Wu=YwbDD>|=u4vmmCjA$XzE4LIxAGqIJU949OSNjZ{rGNQO5x|# z8bqP#sl^TxS@p+uRn&=8nu|RBD1%-vhF06ArX^zZnr#oAdll`YOJ@`{a$OQqYr!*qn-aZ$K{2amHK8Zu-FNC7LO0*i`Xi_?izK;(hu2CAR_5 zsIcJ|qd76>zDHam$mD;~=O2dg%T~>6L0?9&%CHYGwaB~!@i$)|RSu$y7vq+bbAbqV zdl%Bh=AkRX*~aAviu09~{g?8uh%GhTuRLmJlo6GwFK=&uffZyZKy-M4>2bs;&aqyz z(P6MY$?V;wi7z!lg`3x;Vl#fId0dXP+CkcD&ozT|QCi|qIAUT4(04v+?) zOh7M)@!TqR1IVg9d~QiFV*Q7ZqKDCu>HEPl#)19qAilk%%~Dn7^tHG~SK(^w?>Lzk z^kiA~m3G$o7J0pKR^okn&yih2LRPRDnd)3PXO6G5Jy5wm5bjclXCNtIUqZ^ zkHP;x;o7mM6Kp*`@8crt_%j zOr$*sp2VgCInYZ~f?|zGUs6|dl#U%k>4py8OWL|&!92O={0gM!ibbGSD(&}k1uSD{ zwm-&Zp_JDo?B0x1m@MsaKUm=L#S@A~x#SfC1pOo^RG+Uwi4HFH{z-lo| zb@KCUN2}t8{VV3|mtKN{*dNU8z5u(db}y@+Zp&#VO5K7}IeV>fl=rJ;FHjt-?qEcz zD656EcrLO>f1(q%U*G-P@wcbU2yIMLs$#z43RQ%M3bVC^?9S_VgMtqS7$+24lA3~NP1uG-=qqr3;+~ld^htJo zOIgI%7@P(Gp(N-X;9AI^&kS^x`OW&eFWiMK(j3glHzA1A-RV%qrT*Yd|h7~;Aiy!Uj^=MxQ+$BO|xdPxj_No#mz8J?C zs9-LC7yMac@iv|K5L@Oh+f{Vd?M1OGbc6Sw1V0)-sHC0+_rV>=kjap-6wa9$ARy2t zz#0z^^rcS$dQixA{A=`%Q2bbRD*=%|f|qfK-7EzcLr&mc_7b$G7&bQ!P62HJOJ^-3 ztl`9@2Q1E!KwI7A`t1R-;a*Ai-A|jJylXEx%&-c_%q1Kk#(b)ymiXD0!{ujYgDcB^ z6|D82i86~ny-ijy4K5HiJAEaFAML~AiY*@91M1kH(kkzHV^lSb3Od;1$21=beZDi+)Ckw^#?`8@hv0i6%VOGt z82)L*O|>7?!3-Y6dcZIeY~%TQP@mu7>wK5$B(zoz-6CvOwdz^Ux`cRrV^1e;cxlGJ zDXnlE31JXkMZF1al1Xn=2%*$c>CQ6pC|*q`XZ@(nvxc=%G$ zj44r4xc??;4-C5B$9>iN9C&U5S?a91as1@j;e3$E2sR=g3qo(|i%*`JlXnT18*DqK zyV{=~6uhPgoxPb0WFxh!dr;vki#?U%F}e{e)xc3Z&BuF9lj$MKh^VxiH2I2xX11SJ zJKI}T{5tf6L$xJ&(=N1z(Eos&Pc{$5w=V9k&hW3ozPqIAKCG1Yv&rIF zA5@ozgM_1x=?>13OWBp^*fBd1)1Yy~ z?Y(xs3Oj^?sLyu;CsWm0z?P2Jte}+_oALMrwzrt9)k#@7*a>%x<1NX!7JgJO(vzVv zy!mQ!KWuTnh0k;Ey?=Kw^+6oTrpIQT2NX?@ZsxEl`n5W7aG-4|H_3cd;{A+4;0#6c zQt*u^K3>tX5BY!EpxmDD?)_Fb%m`N7OZi;tUqU;z2LnpU`>=X_%@(F^U+Ae*+6BE^ zT-YD%zCO=nH%Jrs@n0Y|nD&%%{uJ`R#c?ZLClyS%P0*m)b8S^tll(xv{a%~;JDVvD z#-PbRj&N^`{99L4I0Xnp-eH%d}15e$X|YVL38~5CwDo05t_3O z%^g!F=?^=p=i-baM36@dQ<@Z`vCntK2WmnJ3In(~s7p`?F1|`I{JweDI8ZK_l?rU= zyK){6R+U!o<6g3i(JVMRXL^k-DU~ueK@cbupmSZ=;dU~t?)dy_Vu&2uhqGM%SXe?K z4~ElslJa|!)I};TbQqmAD)kFp+{65t^kCS0b1C<__IK)Wl8u#kMfY4^9az*jZD^8F zTqiH++wNzwrE@ehkJHT?4^BsDPJx|QwF@lu^|&A*7PQ_}iBT51=;>x(oDzX}KgpkV zls@jK(^QrFy|m9Xs?S!Nl2Z}~^yZA#GwNo#0%4I6L{?aL?8RdGvbJjP8E`t4{G{8&c>JtR z4m($2HE!|+*B5P(J?sOhxw!@D7Eog>(7cAPo`PDE9>U$dp*F!`t#0xXzU+{b#>Oc36pN_hX^&<`Xu-!N95mt;*r&^e6QvF^D5ZM?2yQ zY0u**ry}8;b_)L+_B8lST%R9_i_R3fynUXIIug%@qrIm<(}t5NpcvW%_sA*du-|v= z3UjIuu*9#Z0z|$a5*!5gvr3*WX?3^a>R%o0^dXc*N~%59yJoa-jP-I)txO&I#cVx% zUNKQ{tx4#Q5_0Xpy^a5*(-*&k6AFxBne?A}C5v$3?yo7{T9G(wS0X$41%tlXkY)l#P`YnSk1|$jEJOF+ z&Ns7C<|Mmpo2ND0dK*rXpnjej3qQ=9%A4gUMfG}KxyY7CsXSCssO_U1YmA(kFt`j_ zI-NcQy-lMhL#y5Gs2Nv3MAJIP^ zP&_b)B6>(&OkYWe=l26IK=^FxTRZfZ{PhT(`Az1B_x&DE5*Zc%z{qwxv0gL;FEj%t z?ML&9IlP4KgzB*JL6PVP<7iu=t8nBc#%Y07G#6 zJ|BdvfZdsN^QJmF+&A$0ijUN2p(cAHq2(#^|L-IaR%^CoNY8!Sd(bBfO}DImCt@6RH#)^1}#0J+z{>`i(-4xcjq>$(;wbNxLJbQsow zX^}{q3&_P-_wf4|_aPCDeMr})BduNhU9i3{xWw?NbKc$RJIZtSk+}EasC|B%GKaQt zbo`Wc%64RzZ?Um}Yu%-1b3Y#!|MFul&ND2!a0Z8sbYUFK2irN?U|NZf`6wU$bZ!sn z*ZxsgY(LqP9rJBJu5@|~HWo$AA$`aEk*GK|aXGO_Or1|t5ACYoVaDr}XJ}*r}ewO#amx?IfQR1`N^Er^tmp5QjdKYtd6kuK!k~ z3(ij)xwh$o-0*UT@y_2j6Xl!Go0bFyv<~!eaT5jxnTQEZt%ajkz2;kMWD>|gAYi=e z9(9w+)t`0wb@ z1tNvR3b6aIw@fK(Bnq4^U)UcQdoQ^@OUv3Z-0KqGq`(BWi$=A*&(Zc}oiEnsG$_q+ zYW7H90agDRW0|6z`<6sJ=TC<}N3Xy+`rWaortTJ$kWJDiL19x8W!zwD^l#^jbi_jL z!MvY&McVwGHiQHhfl{gcecK+l?&=!G-C;1nJ(WyAU$LQN7p_i62ZSkH$Z1l3DTZ+z=qK{$8|%I4Nr|&oyhBiAlb~3sBWE0zK(-&S%bS zph+~YPA?x|wIchcljg8iy%9?&GcF}?wp3qbI`Y>r@!k0$)aOtF;M#B z+4H~U_kGejz8|BoJd>&&?2({EQ*a8J3%&E;O#BtyBNXj%(U}9RM(B5GWW3`QhdXuM z4q{F1QG0@B`FVZ(bv7yIN=Pn;p~{wKNCfJDe4o_}`-{n| zUpr_@fdS24(c$$lIwA!wZ@&{J7&wAL4{WDQjnbj5|KfcXOxbv|-Xr8_aln(K#-5|K zR7kZWXa1oDg!>ksF3?k}!kH(zc}n14b`9afd4)T^VtT z-LH8T{P&VDwmDj}WAFPXuk`~(T#fnN*s~FHUuItl4FmEJQef%SogvwU3uzb*ag=5K z>hpdK_ubrw`1h(1`CVA?Yis{p(S!3ep~Q$M731a5CCAVsgs9G8UYyk`9?;!bheCP2=U_!@v9U*RjrW=TI=@$s=R&`JyS_{b zv-^|ZN2{)n?oEFyzG!a7!;%WElIYcafE2h3j4idnPlP3C&m*3Sl-|B>U-Lby`kHyB zG^UId2d4*1?mTq7eQ+FrC&kOqTXf}q3|=bh)!T||*J{XkH-`{gSFR@NPv}F|i-(>K zDn-`MFYNq^3|g~reg?2l@m`*DWynxz)@!0p2#z#(rDGdb@S}(&{rYa6&j*nh1oXW< zpU^YIPs1o-yC9ruHm=`&kIUb|#{krve&8r!>n-iLA3DjF8dS`XlCw4gLfvbwFX z)D+L;v-_PqIcg7}WLyCXyF5z3q3YR&+pR=|Jh*y@UuWk}hMRvO^|eM1&d}Ii`?Ny9 zwHQvYHs@PbF3QV~hX+kg$`fxKI+uF~vOQ{fm^j~*bt^@>+T`8vgP!X|Q>N{aUSHR< z$>POdGaA34|~08=48wge3Um{NGY$`N5PwY z6{W-YCF=YAuh*cArC-0#wF^uq-8lut#OW`=cR^{(qoMVcA@9qzI^WcwD`EGR-1Lx< zoYPOTwPLx6$sQ~x*3~2y=a&u;3GA`SqlgZL@bq#hz?x9Rle?legau z?IYa-^11%}oUPy2rMEF-sMP06@ zMKi5<&=X~G1E3#j$+zFPxO?qgbHkE?2GBtc9i6qKf5%qveMeG!pN79$%e2pR-B7ts zkPGT}Ex50ORf4q1$)bT!LH-;v8-+!mFOPkS%K2}rrSyfM%RO4wqa$9egvP^s5&JN- zog@@b&>`?xx!k`pq7^(El~!=|NN5ZGNN2gC-ywRFF5&?STiHxG4Q}4|Wxp7E`vS5P zQ>U$cABUB-5k#LqC07q{$9_Wyhn@w}yw@=dSiZgUYe&#tPKQ5*-!j{m_>AEY-s?zk zhpJHqoU-h2*;N=^Up*hU$NjOJjeTD=!L>AuaCjHkx=@}g+GgA zx1u!?$sfq)trURR6gGfx6~>qKw(r%zT2=|wKi-sR`NLO+-`NwL1-Isax$1a$QFfuR zN3!@}?A!KZT{$aS$#EtnELtC3GQ6H?N?rEgCxqPOI*n15KTe~mRf9zjgW$e3WYfMm z{r-70k63=k&&hOKDk-hg#N?9IVB|KrYSfvx;lJ)L{-5M~fM@N!mSVS7;`N~|-c#y- zSYKDqXQ$remcQQ7=L!?rv|Z^A=S3D$EVdM?Chde91(XvGSI>N2;qr%gZy!JoIt$ZW zujjc*|4tw4~;&}MU4?H~{zNuU$3Jj`=Kl7pJ_cS#-r5wb!iX+xdevOk# zG*E9KUFwfj)N#cOORgt7*MF{JcKeu}m6myXPIRq3J#2n~4IDNqatM$0ayMiH6vDAS zFX`i!w^CUqKIa%_OXE0tQqh>gDN&z!B~o8Sxu`U#K7fn7wT-*va4A>9{>|1gt5?&n zTfg|UTeXuE+YaQWyGu*$Evds+{OiBm19MLB&?z{eg+nzK9iaq<#ob z52?h6s)!Lk;`&1W?g5Q5R<`=G3atpUcqe`VUlAI$X2_{ygx9Xm$X{;(nz5sMRDlaG zIe2z-;(ahBu`p&t<$C-SSnoUia~NL2X~Try4W@}2g>gpLF3h^4Jq6^Y4|jMRFoIJj zlkR%Zd}he6z6@6w`=0JGuJeb99{{Xl0Cc#8l?#2G)!Q`Q>llr1aJea$2 zMzD4G`d-1=UHv+HlDMQI?KNjwGIbXA$mmIwiP%Bn{P*@Dxft81@ZHPF6m)8nzVm}T zXmtEV8$aB7-+LtRj2v}&i5+Nk#rrLd2lW}ibH#ljpC(g6UV%yCO}%?PLWYy=bA((0 z@QGEEGD+_!;tCF*awH-8ad*Nz0)T=k8}oNBLx4es{M>QnC1kVwGk;@n0+AW04zAcy zGz#(kiFq3|j2KjQJxwR|yQi-f>s}^G?cf8;o>b7<;MBHXQg`csPL|ClG5(4NUbs5` z`EHTf1v~hRwQ&4s`DD@iq(ymD=(iGq4)d)M?D(~^}6&3A#J$nrlEZ6p*-xxw=O&;E-&psA1ACZ~- zJ22)>3o(P9e~y$&vIvBg$%TE~1$jv2F-+yv*2JqXu4wm(^`A)oQQqK=9xyMlLN=ir zHuOD*#e43|l<=Z+peA;(30XKI0bv3ANw!Y6q1$mwuGM{6PYR9gbFOwQi!UU?9Z4|t zg(iAt@lD+=)$gE-SM3U&*W)++W)JlYvJGB{Pg5LAxG$_`_+h%&sYNUQM$%q)$Hj!* z?LrX*@8Vc^4IW*#>%A?D)25@$ z$(0lOKH@cJ-(D-Ey9I5=0aS8yiW1Jcha%-ydf_VCGq7cup4gF?mMo}89P^^5%zlvW z*0hlXDY$%NuF~7yueIgG|M;$rE?@E{ATcScM_+iMGa*)3##aeMr!SO?_H#^s$X~=# zt1K!7TJGawB&qn7iQw1Lgx|T*iP=g{RHBkGf_1D8sJ9^jjK-iA3jG;^xZBg7kS=%6)MR&7V2&EX&Zh3-bgXa}OT>iA9_G39=v_{#@~<)8{{d3w zA`=YXqL+4?H=8o@@-rX}lr=He!5HMdW+ALDIl0(_0O3x~UW|-DDc;QOW6@Q!| zcPDe$oIN5vC*}aX(+CG|SGtS0Ph+`$6i$kTE-WU%ogrNsZO@%z6)Ql~4+_~`>+|Tu z<)7gLS=T)|bE4P%b=t4{S^M=eMXXoLrf03ZJnV!%XiTf4b zd%eA~Nih<#;kh0p0IT!%ejiy1y+jQ03JJD!H^&gTkwzBm0N(_&c+@TUC!)2|5X--K zgA@^y(D^=CKeqvln2%|Cd<#yhoO|lFh}WB%MUJ+S73Nym{V}!)c7Q z-<5wULW-|+!=HGcW&f9oc z&vQMo`t@n=U#?MK>3$nlMlgDEydMeN`tA~+Kf$k9@i4w0mC1V+S*;1%$zZMOIJ=|z z-WMHSHuARu$Vh9yhKt?BNC}v?ch)1s5oc7s^845MO}xD4TlN@4K8+05zrGr`&1N1@ zWg?6L08}$N`Y%e*qCxWTECqNlah+TG->W0PbN7=UfS!&vk?D)diQV4EM{Tdo3AJ$QRL=_faj?Pa?CzJcno=kj*C-e5A(Ktc@lhF{;_`KH zb4d#NK-N2QV@cQ(#Dwl@XUa>J;n3%(HV+kEK2Tnb%)|z4{$gv{fa#w}6M$HMZ<=F) zm0?i$95~|5GzqV#@Asy>C6Z`HJE~7G_$}i=Ce|tz4bFq~C14;-oJU4bXxfP~so+ye`^vOI!L$~yX#aXE`O`W>r;uLB7)gip7l?GR^?G0?*q~Eeb?Xlb!C5!o7GKbJOUEw3R=PsE^T0{U4JhU)9I4PU=lNVbe z@pw!V35OirXs&%iwv+z+OiS@~{+Jh92&_b#6%a~#@;)V3UCW~J$oq%`{ik1)g6HFa z6&pTo^d4hy*w9@FyvQsk=xg%z@-E+4kaAG6T@OFyG93tj3k5 zY^$h!@~@7+WP7_0Sr=3;5YK|tlrAva$q09PX$n7W%5&p z<(nj;(Vk(O3kZzk0{!6m1V^EGj}pDtJ{TIK`#OdejbF8=%1+(g zFRm*z-`U-rG{L*YHEY` z1+iK($p|fMSkz6Ps+h5kb*(|UU{%w&$6?iZKFjbBcY7f9jt-y1D8ev_2YJellY&`{ zQ1-1259LY~Yu2ld7)7NXQ(q%JPWST)A6_dd&ve#d(2$0syq*26C{yhWM_XaIxFYh5 z_@EXFh3#nu^ZxsD4?_HF6J5e5@}-bKy$xgYWF?wR7$!Pc3LnU}mtZV}(L?E07Ja91 z-@v<~EVc*dzMpG6(!(2lZvV_ev=E8{h)kIxZxLdS(n`M8n#B<|uZ^HS#6_RvTk6y^rgmnm7PQ0jnij&8Z>(Q5? zPO`2!1IhG0+`uBJa)gfhE*ctEH*0W9qy(TU(OA&J@7F$b-08LtvLj?YAM<);+O>x> zDToxDXYX&Xm1PMhWX&{M2Y@QeRgM-85pUu1#aSjX$std&_&D+vfrm z!?FHuheNPQ_d-7`N~^VVy(Gr_%V~|_-+=!6=oX;s8-^u?q;5n%IWD|8qQ<@qWcd)* z@3A+X*QgIl+6&HR-rcx9m?ta+&SO9t1Vw*gP9Q1WDfTS3sJYj>C1Eva-pJQsUePi0 z&&~vJ-u2uZP2)A1sttErbb@^sTZ7zNTf&>j1dbqB#n8cRjh&t9NMet)Wq39`nzb+A z@fR;Xn4mRG;JZ*#AZHj{R4Y{%( zP5G(nBCgiQ=*QraQ?4Wf55WFW1FwI_{I2|@7kNLlCQ=pIdaR;1bp$DOKX)eb*me%M z8BJf@OjYs%Yhr|;oFiKj`9}91cZikKP%vjaPwJ&t~xtt<<=#} z3jbPEA~s;z({6(pLJ>c<)N9N!NiN9@6$<6rJ6rfk~qUN+ zsM1Uy;{{96 z029DDH~WB%!3H>h!KEAHTRY}5@TD|cachN^#?zGbWj>G(Ob`+YiaF@vjj6KG*GI%Y zK_L?be?B5b1n9ONcgSyyuRJpP^^RD?Vf%!tY}+Trg{C}W0{CNuAx>2BzfaDRaoPr~ z6;M<2DG_q+_pMbvc=@qtdzQvOp-0*t%#f34*J$bs7Whi#k8wfVZ)%UcgykENY**FXo>$M^s>__B*eMBbCo}{R- zo6=1R^uY2yF^K9Ljz_R?`I;5MOERDWBi9Po`q42qXC%of=~q>pkcEXG1(|6`$)LY+8{clJ5x);kY|)%eRyEOgQyF`wAw z`JPc<~6reQ(x5~{(#q{%xlCsK7|8_v?>2+i)YP|MKjYX#U)}hQUm&>KeNlBWo zS(ZS*`0N<99`|96%ieNY{O8zzZtss?6qulR z?<|G;axR!CeIK2#xA#7U?c(&Ye~BM?Ik~3lsw?q1wgg8e9O1f4%+QOpl;y1jJ&`%)wBAC_sT7iOKI+tt_)roN7%-9ncMm4;>MNKPg?cqSeowP z$D+a$O#QZTjmF7D&IyPweTkbZ=a)Yf+R-{h_22n>{>bAcJkI8`<$CL*f1qW6 z?My+d9-SnMfm#IK$9U>YsBge+-hVW$7djr|I`}17TK5Cb&f=))v}Q8um~-eQ;3{F? z+)aI8Pt?{tdIDN4`6FqHk+n_jEz^@nY!vKL*y@&Y zzvk(N-n8!1#raPNVZBJo9^zY>^85XbUHD?eQlO`zQw=*01+aFto`$QNC<x(>)EAd63ixVSS+vqdND; zkAU4)o)UN&#JLS`+cjBOtDoqeuO^PaX>j!hR=fwp&))X6v#V!UySjUMVBRM#BQjDe ze$I9n)%!b7Tt2Tl^7Br_X0?7ZuP$B=xjuV)GW%I>&iyNQ?rr?_u)DzCrT1{IItO;~ zMt*ys;UKu4)>j5P7PlYSM?o@kk9R8Lf@IsTsU)?kaZpk~QG)bZvch4%EbTPBdGf&Tm~09&|z$yR#BPf{D6V!;;>+Vfv9 zGO{Z)b!+ngwVk}YNtP1fKUV6*9XzcJ+fa)hnM4*HE7%TyJXM7L`t{<3QaE}zhhs+3 zBZ*cHGkqT4GE=^EemNkQR4$(<=xFDY0NaFfxf4Ff`Y*VCB*?9mtJ2S+_4xVwZDt~Zlu&m+pZWN!`x{Jf z9}zX?zxnHhx?#InNv^>!%xvTrFX{8ZTr~9%mCW3?+;2>s+K*@-9zwO%e=n@{pePxaF68owr1tdfbyBaiAsNtdD|_oa z`G<&Nto$&Br{kF4jUxE%yDY$%P!_VY^%Z9J0C z`^iglVv>E+CE8i`yk z48OZB=_O8|sEg9ol#niWx0b?SP)zA(97|;TyWiiLa`$_6-;eGW5_5GvFMAY(AA`6) z9P^H*9P_T;FLae9_j@bF`tn0oJ-_Q&;Pv`}=I+-1^6!b{S>otJ%~<8i@C01;d4!|N zG80IYrT6#MRgzacf0&^1?ss(w53gLE|Hze3fL~oH_N{Ktvb%OU*epJ=G4a2XLG^T0 z-bqM(ewh7_uKw7MEJQ)PQg8Ym#+7if#y^$O!>drmT&jR*vy9)5eR*Ez=w(KC-Z?+$ z`BZW3*pRak2iw~P1sCu7*@8ZVuTNP^SaJ#BMLI@89Eq)#^Q>Oq7_IrFsAbOJ1lZ3! zCI`f`ut`&I)jlIUjV9_xF0IDxdE4OA2Cuw|oR8+$&`d@Qr%!QAF!(g&$}Yj1d= z^<;PMs|3j1B%l1iv5vbUEPy!-yO}A z;tBaQz-9LCy7u|UFh}#{L9!7-{MFV6y9vIC)YY$;cdIWF;(;Q40D8x#PRz<}|8mE$ zL2tjt@1wx;OPtSd;Pz+jPhbcJ1lS~Xc|U_H;@)n1-dchs8H;w-{X7|@3B1XVWq$Dr zOeCJ6ME1C{km{9Q8826pF2dr&>e6?5sZk5&v_0?5`%?Z^kVMD_c8HqC7Fb)T}wN_>g|_&SKM=I&1qFkX}x zwlvC5x!x3;Snt(msfQNpji(9QJ>zYeBqN>&BvTD?v>kf7Swovk)L}mpIk)`)yB!y4 zzEs})I00GzJ&R-YsbcBYUK8nTfpMLvRasxucK6{Z(l5z^lpbw-6V%b#y3 z7f|4Ic2vC*7%BossioaFQk58zq?g~&8;NoYw1Ng0OoLnN^@e5w-^BveR$L{-c`Nilx^Ds6jM*=pXdVWO0D{Kka$6T&(w<#utBc%0d>=6=( zE1y#mXs4i9o+=cmlQ;@23OM|6a5&N%oEc!&ATW-E_28Fn~33;}L`5LD5(51wDGvwA&Sa4!) z2d*;Cjxm9=8l6w~>AWu4aJdrK^k>{Ew}1NW)}qq@TfYh;tAFv)mW7P2620+U`4F8U z1P;20oDdg?1PPgTV*UFAk|+Ym3JYyWrz25Xuf*BI6Tly6WCx{^{-8f8*ZCVD_}8+( zcgAAxiDK@$VfIV$TTD5ewSVnXSp2M-&VK0_`hPu#(!Q?T&l>E2gP{u@$Te{FO45Nt z`t5pzg+a7l3ZEXSspUQWHla zPWKQ4ZY~7t$p^(QQv_qXX=}GyI0n-1F!CYD4~faE?CYK1%aiWBT6r8nWV|+s!qTYs zj*Qx8rn$!r+*DuE_C>(70iEtdW*!(68ao-*^Cxbn`e^*EKdPhdn??2FU%7$SabwbX z?RXrL6huTqyIr7%to6pT=K}>()*Eg3AGssHZW8)Iraiu|t(i8$GS4v?9)C>3k}P1V z%>+PB$ZXP^A>5NK5SD!;5uGaBsjY|bfm>L)tE*kSk9vnhRu-AlQ6oMP{8ccFNr~UU zmk(%_Hn>;fVGe^uvXb@%~IbOeeCl^RV@R=L@8#`L-tvldRK2KKJYLWC74JEW}YI_9dw2_V|rPX&Cxu|8hD=^(z-ON3g(@3$um_sL4a>ak^I z?fjx9!eSmT);d^OB;z zE0p=O_?U$6&WIt13v|jD36#&KL?3?zor@FSfuM+(3DHs!L@wtGSIv691R?+C$$48KL}~0=o@FPHWF>` zQXA9v7YAjJN#5^+>t!^fCXtTc?q&$fm<%agEmYX)9jVkY>D}KB#w@33EIk(3b_SLQ zS+&(!<&1s@GwQ*uqYrH17QVPZ;jzSyQEV^Cne`dTV`RDg5(x)?=f97$i$ZGnIv!q`5z!LX1#$BfP2XaLVq!jQT9IH*JG*4dD zqQ|0m48zwt1J+kk#=LEWQf+0)Hr2;iILqqK^YwtF#&Fngb^KWVRGw$#isnIo`s=%Q z(()_A2rPrFDUj(Ud1!|(L|!kP=61@-EnBbRkKEA0kB;_u{X{t+P&ivZ?lmwRfl}vm zcJA`_y3x^>OimHAkDvMP(++7)o?mVRlcwFiyvrk6A01Lq^!!>lM$fk^%8JM0mK@rn z4jB~oPiyv>#;p?J(f+i9`~A(iLz&DcGp0kdJ*qmfJc=2XNAtd9=K`zwd&6LZ^??gx zQm9%VN_M9W#>IEK=N`vqDLh<@kHPAA84S$LwoKly+E^Y>a%8_rKnVL>N}rGdccRtC z3?_vb*)RL?3Rr!ETS^RkB1Gi@UA18r4dm^ueKe4$dwb@R+Z-o%5xl$Z&w%8Ew2jvg z+S8;eiZZOneHfxINFWP4RU7|A75oF*AEXf4hd(QOs*-&ZcjB7SZ2kcyfyz(Q;*`fv z4)Yw87}Nq)Jp=CTIu)F=sz<-h=@@y%K1T1yte|dZGcSi>Ev^k+yv4IQ45vry4vH>7 z>Mhl`s6cap=$De1(`!T(1`vk(O_UZ~7r4@V{`ii8^0v60&vDQ0v)mgLSAYMvpZx%2 ziw}V)6FI{yQK2JnrE#UMJdOH^mV`fFkjNvRVK7_FB;y?AF z0XgRe7Y4V&1n<`T6?ha}c7U|R@62y*Sc0@fDsgK5OLOy4>`Evld%`#x><9f7pl6hz z4%B|%99!uEIka@}#3|gfpcjw18%mGLaSOw2BtL%v5N}QJdxS_Jb(LzX+1yd#@J(k$ zx|Bku0>3BF&%<*AB915-zrVV_*dgxDg{$TVb5MjYtkJt6Xo=WHxi1K62sN-vD=>Ae zQNQ4T0anni&;C1xlhJC;!_$vVLndM1s&!}ts8Q^D=L_@HY?Q4{nf~;yoNtQnsRa9L zK^n+p+;c}zrPgG|dqP(15Fw6V_5k{!q+{J3e^s}%1xt9;)F$mK72y~4`{w9)qQNl$ z(`ygu93Uw;>A+uaQ9M0>?FREkK_eRG9z8a*G_tg;25^I>TGI-BCgkbM5BP~q7$=8< z2`Jm9;q5#WtvQolSXzjYcWS_s;22 zyMcTge-i1_XnEZ(a3OH}SN+U~{Y2uw^cSqmNgci%z>gaa$`SjkXT+Z&0W{4Jjokd` zpi$(G>BPdFyd;w6HfTs^d%52x#&$A)jNWgNxM7z*sN&8-4VNoCnA6DKpR~LYF;Uqc zjnIGVtt9WmG=bI$+FXtUOPaUSbw6hbnXq|yZcd3!Q|nrYNcE8#e_52$br1=DFehOO zSMJ>Jsz|NROh>${pH}Y8I)xq->O`vxS|mL5r#A`rQID+iCSxGe0%Odoba1+iltuRe z7uq}3x>@tqj@tGv`Mb_2#A{qBDhbkukt1>E}E_ z0mFP%8rv`Vqa+`YVSAV)*f+nQ%Z|*1)JL(33fP#(b&YJAv4pGWk z1%cUnFvH>fl`#4)01FBGN*iV6=S35vCHh?L^jrqX^vP;4l9u+?V0x6|i)V$2dTrq* zvZ|YkMpeA6ddVa@a7(zRK9)1|SBD0-{eA`(u1WReW@8-yF}8aOI4m1)CuT3KY|Ldu&y7I{kgN^cJaO;b2Z^ig&aO(4<*&d=}rGa^llYJMe4<0{_n}k^qrNg>H$8K z?n<_Od=0hvvVQyO!gvjO7;Ew|M&CubxvyD(m&bA+ZnAiSYzQ0YOUr^%aMQ+GE$5)U zKu!5gryBrhSyx#x8+tQX zlt`$;X!7P|%<-di$0KL0OK^SBx_^hS@?AS0fT^~&OFlB7P!-!>83k0V_b1QZR{Irz zR5+qt0$-vR47H(-FZ9OVVYnzEV=g#M`58%&N#uCH);pXFd2}CKvJWrXs>_k|-bSd! z@$mCI=SmAdxC1k%-$oMaMgMdxS1~N~XOwN?J&F`T4bVw>`Uu8Pq<8d=2W+bsRe)*+Q{gP=7=V^vemuk?a%SaUrC~gU#v25 zA#hq=z;oE&X9C--3oQMj`*!775t7|@pS?0zgc%>~t*g%9ebJzFj{W zeOxcqZUg3G@x8B8@c&mr52z|`G!O4;LFFG@R+O52rrWIBYuQY!LV-6r&ul&hvdv6;wAk7Tn1t+Y}cS2 zKe^`}kKd6df1kPdbT)%Ht6(Q&mPGs2O z%HW0kyTDi*4|wksyplJx(iO+I6sml18~b#;SP}yAC6>4hym+COpVUR?*XORJ#`%Z2 zL)@CkyOJZ)wFU*8=^za3o;|$F+IKI#!MfI*#`p}Q0l=vwn|ncr=g0zQCnFzd2rzJRWx4o^k39N9}#^h zfE$!Ud@k89gXAZUuCmlXgDT-m05b0NB&`rSa3n;em_r6-iwdL~Ad!gp9Ntg|jr~Z{@@GeS(Dgr7mKFG*tG<-fZtQHRzZ>6K5~iT>+b#_xR^h`?(2M zK0E(CQt4H}6Xi$`kVyrWwyqa`GoT`A#siV;t8HkBBFWfI`4kQ1YI9F0Zl~N{kCdS^ z=W2gRN_8b`S>yjE7Q4@rCu}GkC9yW%Cgt<6#ALsa=yy#yA{yFw#k;7acGm5}X%~}( zV{n%vB_NGMGZspND6FXs$6x;Zj@LneJC7ME=@n@WS0j&bay%So=P&>yP|62-}%$LH>iSdJwkfM@o*W zaXX*9`y?9&DwVt2<#zYu{=+rLl8T$eUAkjEsZt&-whZ3uJJE`L=HN||oNw8Y3Pu(E zo$tog3~i{5%e17{bO%zoGKC5gq#dq$WbiV2nJ*>zgBdc4O$?bu#JgtBTi@%i5v%N@ zS|bDPb)_bvS$|`zkarH%qby09uM)uPPM}3|EVdl9eqmIVuFEBH7tEv@TE>Ong^aU; zsAa#r(|mqER2}NQ`+n}|g#{`8j(%frJFMQ}UYtLgAYqfV@+8lptfG6dwnfDogIFtIE2ly6`SPo!v^pZVWv>L`b-nC_vch_;o&rXrr*-Z zBp9*GAA&v5KNF=Y@xgPtf?ygD_oamg( zx&87}K8!l-QAZ?lZ=1LYWRlTNpA_qMlDR2!m^IlP-*$#mvlfNfFRBHRt}kf)1r@B* zK2yKL6IT#Vw#}QX2n0#}!eEIsK(k&_bZ<0V9r0qJHe#>b^`B>sd3J*fl^49H?8cRU zLwix2-U-E#SPgnGr4XL1qw&)f<+wmay9^bJB@Fpu?x?xCwr3E(BS0R~b~ML*6qZ4| z;VsY~h{ufN0w@iMlnXIH8_V^Bbv>H$MF^rf)EejsyjAn`S6I807TWT)w&QZCGaEA3 zKIh`f>-QG!4em`ipU2a|=G~Lpv6>wMW^zR`2eZ9&cV*-mrSHM2^u|5Djp6>#jskiu zqQmoatCcn1(0Xd<0&pJmP2Bbz+MOpa`EgL>?6=*G13LS$XSv4Bo~?%KAREk5lxTVN z%P;c=rKm-%le7F{V&M z8un{cIkrbqi%Lg=a&pUa;WPwZ@GY<$Wr(MPweVduE*GT<;=mI$^ZmOf zazV9M2+ObI0V!>Thkmqb-yDPD=IOJ-<*1Zb@%V1g2=AbVq-!t^U`p!6G$5h;!W*BP zBGnXdKB=BcaIB!ou<}3Gw$)q z7qGjq^~*&=AsCd`*C?ne804{NE>`OrbqHgv9>z>kX=^rKnZP<>pWs}{**hYoA8FwK zcp@LCpIu#y`WwD2(ea3LjSxjDe^_xT56W4hVt-%$5f=?pO8DG0C2a%Vvm>WGcmp@| z5%`;^Pc?NAenxQM{l>V3@MSCokF<#1P2`(fUkM0oXpw)eYPQWK^OaHj#D*wNTcw2N z9_fDFTK(|@?<^jj!t%VGi!P|f_eH7Y@(ieNxP2lnIS1znwpZV0EFuJR>~MnZSNuZO z9jVrob1E3X=FeBQc4&3i_V`@({C$G5fS5LVjBE-Gd+ySf-UOLjSzZiwCw~=sO|SlZ z``AYf-WI8o1efAf_fr;l5r}0~gJ_rRCerD#xcLHq}N+ zl|VymeS>LT7Ag1sm&os|^X*rP(MhV9Ib1KlQt)#(OkcHaA{%rv!V#2z;I9Dl7t7FI zzayK9RtE~-b?^b9ZV}U*?qAGIrD>2~OOUU!%K6yFMMq`}`(h#^rYzxXe86q-h}J#k z@)zm+@wv$msH9yDOT&_*bABYe?Nvxt90_#c^qH>?BXx{P>>c!cpUdF?{OvCUS|O4C zHJVZH!!x!qq%9dvUl3j;zboPJ&gsJQ z^lRFpp4*iuUSyS@G{`pZYN-*9II=Eil{aIBdVGPYPPL*^E{R_I3kX{cYXH9H7g zt8GeUotOPYyQ7<)cx(Q&`Fw5f-(T&@F7d`+B+;ljT9yqF!3>xrV?OnmyZ3MTu*v~I%LPv^!o9VbVldIpmV@Ea1r9H~- zlljq*xW7;8W6~>pf>d}P!Qo4WILg;(OY&c`UB1msTxF;8We9tj^su;KO&6W;IadY< zw#=)h$o*iZpUu+O$J4l^o1Hn5s-z1{WS3Az)GaArx}_VxmJFh`hi0u0jPT<6(GLxx zfd@bm8kQQW2XDlSGZoDO=t4O`JjIr~X_N>3YN%T(~ zgzJ$wIc29mzGn*7?EBo(bP3*!AGT}`XD6rl%D}4Ca#@26%ueUHUn*mZNN+f5^yi=D z0_d4=G!WDKg>`e-j<&fXWti)&$MvXqv?|r;J(-I2JXyjic)CujM0qdTfZq+*eR)|) z#qWsO{wC>J$6k)i^^KyC#b4{oK8kzZa)l!+{L2s8D{()>CAO!0kVpno0Nx%!dXRl+ z)~wO%!-QWn87FYLl7Xka-psXxhGI1pbiLV0Ai-s9)WWK>p4zZS!e&f>t_$3i_uu z@EHAy%||qhzI5}ZGhRg2GR;0U;U~zQ;R|Gxi9or(zC=$okv4iois7`;g5vc$rhG4-?HQ?mXo9lS zG-j47vyl^^3`pu`H(Y-Jn$~jk&BDML$sera_dYqL#c>osen4K(D%Q{22q|6NSAUpO zB;sfs9|t&to89@+OVow?z(8$ZM-<{Gv8H4`4|j9cD)qT8XYn;`6M-=0F*r;-8d6kB zvp+uufK`X+xqfwr+U81Zvl@1l)HO{6*EyG5C;}b&=$6L4SIu{0Fr~2vR1L}KTs`=7 zzvgGMODXl4-XJd7Ly4xx^vl85HZTN+o~>DjK$I*u;fU7LYG z?^pkP3C}?9lB0JF`N*-PHiUyuixXWZpJa=2j0;M37o=FkeGYFu*tjk;J}Ce)!2lQ8j6>3|Np)ne2dT`+ZaZKJ$2jsE#^D?HhjD=bCxh~ zb2IzuH&2r%PGA(KP(k=cOugUEd-PZJQ$*8`!(qu9XpQ7hh8Okb9hYu{dE=>+9tS^t z&UOga+P<~Fi~4fD(=cMeS2}kBuH9l>RV27=&^|8L19d=8dfDIl8b9x*vzM#NED7-| zc%BO?s)}p3PS9qr*Egxwdic4KYkj)R>|dezc-}wQC^GEv`#%qK< z)1jj|>QDV{ADeADG)QqO8bmJk&12BbyvbV!+P=dDR+fL~N#A#0m>TCfeJLBvIL*f| zZQz9+8ZST!zaVq41!~ChxZg+CenvlKQ|-N3?zX32Mzt?!>l?t+hdwI)vB-12&LrJk z{I`B-*lbHJi~L;n3)1r6DM@;0d83fE*OR(33~V2NFF5m9^PTvxDu0iD59{7Aar-`| zS7Yu6g-C)onFMI+#FtkiRv%oh=Z+r#7eD<A;9C$Kwi--~nXfK8ujYYniGMSCU)2%vmjS<1+-2v15I z|52ENez$DNwD7B0cky$-Shni4mNI%NkkPaE;jfkH*pncPgrU>lseMl7e$QYYVqEXi zZz7rPo>gC=gj}|=9FEcy-=Q{M3i;qej)H^kBA)*8)<%weXVdq4v!9B`^x4nehxTp! zh2BDIvKp&C!(q)i=A1w>X@qILq=xRP+1~-ED)wlwNhG@m2Tkml^~a%RW6Zm?0m|v} zBy4>*#%Luo_UB9swdE8W<`mbx;6aWcy%J+K_&#P_Wn3N_El`t_4D0Sm(#h;hkH%!hd_eHQt$FdN~qzmAXyS* z-Ut#v&QGsnG2T~c#nV6qO>XMD&6{Z3K<0deyu$b% zFQGPGVl(;LM32Poyz3F&;+)1Fc`G|u7+%5eH$ETp>j z_i=)Qg~ca=`!jye^{y`>thuBXI!j>kf?YA~-hfKjp37!=UB~aI-?zT}2^b6h1}qsm zTP3%1Z1$_z%v)hc_@Pe}!m^01#bKrO-K}YW%9? zKwz+Q$PD>$8cQr@i849spOkxI_;-1t*%I?3LV|ZOf&XqWvB>fe~ zbBbE1zF%)Y>1g`^ZysKq4V8ox+g-@rdk1~Q1R1tTbzJk)8-P=fB7Au~d787LO8QC8c<+0!FrCY?1M*jxJHI?+w*gX`j{9Jr7ef>1lSNIQ8vSJx z(5K8Y`D|u#J2U$ZM%vcfL>m)mvN!ti>skCE*^T#7LWgW%v0%B17$|9{8-#F=@QfZe*eT2HDgaYbHs{01lQiJl5PhWly)3!H9Lar& z*YXTdKe&BM(J_MkkQk91)CCT_&|V;#1_mwcE8h_&g8Evu+w_e%MO`|c2f`{eDL>C6 z4L=eG-|m67tgiTAHcWo)cSxQ#c(2x-ReZ9r{WI-m0FqtV;QmY4;)8KhG*s63txdnZ z^pGm}u{%gvp|6q7ZVmO_v(oBif;QsqkqFA;FH?G4kHsPZn3^VeP0ytpZlWYqOU(Sl zy{cvJvv36N96cph@fz1TALTdGwsC7rH^Fgs9JR<}JWe!GU9a4D9x}O(T$tG7f%wA` zQQ5nj%uS5Dp_M8#MKf~6l?VoOd?4Ai=76Gik}joycl=nMNgvxvGUw&b)*23b-f#?A ze2U_~U-s?GeXds`RuUIVvL{>orq57&HTs`yl5^;JWM4?a?j*4NLY-H6W^+yZL|EbP zO(3_Hb#0a=SY3#UQu}70gkXR)T)C(E8$pFl^i@f>fS%q>n-m(l0I+(4P&*z5(}7ao z!tB?hDmSBtEnLw@u9vFsGcOa#TYkb=Jz<=dXiF%u=` z>qut)fzm-{nW2~b3+b0Ttai&2njifKN}@VC zGiUP(Rz9^Lz$#Oe3tH%0kOLh$8CJ>o9drM&reSZaHn;|4{{rRnWzx_4bOjXdWpbBN z|Lseblb%sqUD)4afJ(~m8ntCRFwZp%PKKzAE{soz&UL(NJ7@P6NmK|hPuNOQx*|tV zsu#H}Jp1t`2miwR*@pB;kYT|3qL+&H0omp~=fn(TK#+0Y&cnm@Ua@GDy1oG``5#<( zz{7+K6=|2Z_xXCJY#3ssR})02{q(BbxLDaq-HUwinY(kijT4vAbRmiFs95fx`5eN` zx6SS_?y-qJj|pyMIE?Ztpj*2dls)2X7or#q9uZbK{d3R;u ziRspFw3fSHV5--i6+>*7;;Zw+rhRJ`7Y~8GZ=l)wJ2t{i%xKf#bv%0>XCfly0p(xssz39?H!W<9pCmJ2bcRiMXLVx$r-!4q0FSa)h?e0yY+ zFENa#kTQp!$ZQW~^ywBSwE2pjJTGB78rNDX@|dOIU3@{5Z8Gkn4b5Wn;B0Umat`8V z-_4H3?JHi3Gw^H3m2ph`Gkyp~2`b6^ayA(nXGS?+)K8DUr8Kq1CA!HoM2Eg)@mmdu zCJJd^2*U4SdXspAv+fUJ%~$ue^HnrXq`pok$dwI=lB*3(JgNlTs4PgnAEnM|qNSrqKBH8sPU2D6VzHw~sOaEZ`56&ImR|id6r~3>51>YlCFfHa5miM<{oEZ&W z6q;*)nSQ=~(nrQi{!2rA6GsKDG+&ipp)o;mfnzBf`gl1;VTlhrpZoPRu;By!%Dj9U z&{j6|f`sjTeTbu(_Xue_2TZEhT04Ab^iXt2Jd+|hfgi8UZ@m9|y*}W$5!CYLxPcX< ze|C>iD>6>Un#?AE)f&Z$6{hy41PaLOlGN3rwTDLg`z03h1DH`_gAM1ooDz75em{<9 z$+H2d;>Jv$!2J@M;j(+23{P$vA^jFlBPa(qln3LyYsXC zfGOm+Y!}(}*COCY32YNZhsI;fEhg?Hv`QQH5^M4hP4Q7;A%4d5>mzax9n+jjI)#`@ z1AdJOH7-7QgW{GKPi9((#3D^L?8#-}^Klg?MD#*^`%H&soA%VhU4E@Ofg=)^U?{&8EFM z*9Qetm{F}(O62|ebP2jJDv5EO4C^f{7a`;3nTwDTE6t1MiZs5Bfod)c<8V&#k;Oe( z#-FvgxUue}2RQ3qp3kc>@G|V=>{0om#mz$+rEz3XN6yM%{rCA?;)_wyeg~NJ33b^L3#?8DO;pf~M8YV9mnLE|jm`45l0#Qh4*4AGX#G= z77S&7zk8B-$fup#fFANR97H&i?EuAKD-k? zaHxATz_@LYZM;DTq^BNKlZE&lMyc4J6by^_i#*h)b2$320$BHZJDbWLO}62@cN4T@ zZOTGaAF?A!o*T-(mEy12Pk$RmKucibC5?7(^bNMHtcOTJH+Go{UJ+Bm%d(uD_U z=?v;&wrsEJn#Yw?)sV;EMM{+yG3mx0tRG;o%h&=y2YR*Ol*G&ZYhNjlzVc*&PlY&7^i*A#?L2{jv+hV>@OU?h?hVbDt$_6`qVH}Nbd| z3vvo4oju7Tz8>b9z;hqDhjAk1t$@oZyc??lf*xLQjezs`nnJ_WbG?4I_c~|TyHuI& zT?||6r#!E)VTbQ9-scrEnO-|WhaxbeG&KnQQ#Fp2ci^88$$#$W>C#B~37Tf?Cwn{8 z>n1V1P?^8Jb=^Cr%h<-rp>AcM-{@&IXkln_`rD)sm+Q}XIWS(@CC2$b5@ELhq@lya zA@^>$=aS}o_I$Lp)F_&>!%e>m#gjBk#Qyh9~tz}C94&yl6*O4 z-Cy3*#{;e*WYx~m$;A&w`}&meyos5EIjH8n^{$5k+~XD37|naf*8fXSsa}Q@q|)9 zJx5r`igx?JE|pdlh3Vc&e;GErp|k#By$bL0;tt2Bw|L`0(gIfTW?h2Gu)+w3fVO&N zI-r<3dfTl3jxpHE!gCI8oi_)ME+@&o!90Fph%2m9ZhevRc7K-5drR`QT)T+a3aIRR z!k+jzn4Rn^b@pK~1Iwxo=q_~C6>Eli$-alSdZH+jNp$?l))e>wf1ryx$D#xH*$28U zcCW4Vem$<#M_pf0Lgz8{6|~`XlW`ytv-Ibs%3LdC?N>2(4($!2w*$y zH?~Snx9dFbF``?e^43i>wC@QAuG#Cuek`Bv zKBdx7QM*5gaz88&3La04yUMmBt>*PE#43`B4vL4EVWDJaf6!V~(T4tMdU^JP+DQf| zAhgjTn9VrfL&nW|61w4o!qOS=8jyb17Anc@>THujsdkU#s*5krHXXapt+I55c+m3~ z6w$G%@6Y$=t^ERxSU#J6Xd82c-ohiASm_&e;Qj=tG-C zBmJ`f>1ga?YQa@I18`^CG(r|lk+*Sc4gNtcm?{$Hri{EqBf++kfP_!qeCF+TMl> z&z44pCq$APkC!zPT+q-o#>BmG=dfGny1F zTMJw;xkr9iHcNdnv*S_>r9A&l2f#C}<`l>|<>HV?$9AVjFec*B5yK0a)I;iPkcAwC?w^FnlIac&Gm*X1aL14zmL&HJjZ@GP;**JuEY4uJ> zHALt`B$yu;;qWZ^a9=K%!p~;_m=6`@9@9@G^hjRqX#mbuj_48W1@$Ra`Ni!JWX zjEskzX=qRWr~5y}J9co*!^(2b`mRJRTJR z80$r4PR9LWcpL#yv-XDl`3;^ze4NZ-OOmB0)A_#4fH5V+o+F~uZ}-5v&fxkacHx}G z=~MU<@4jot6kgww@sKGoT~?T3#y=YvIDNj{2Tj1uZB_u)KWP2+OI#B z)<=-@EPI{R62L^^%n7Q&O1vaUZFhD&`m#^qnv1w6v3_|HsF(9X;nk``>VAzOu~irmG( z%;iJIvjzKCy`D!ZPd&}I=kKSWpH^J$7;j8+hc+0%Rsp$tFsp*~s zSgLk7iYYcQrGRKpn{~c$6{|3-U`#lvGv6-5UV5I5gUrH7BMdY1VomyTonN=&=@}lb zXA*w+pYk98B5Cy=#z)V>I?~sx(Z;_t4oNTAUf$65Xp(%6d0l3g;Hq~Ud$<+)ZjK?} zAslvCWbhn9N=*;_6}~4SD)wca&Cgc$P8K0~1+t9LvM{rws}6^Zxf{Uu$GXd8gei&x z%6x3q?U0-kFbQw$sc#t^x z>NC)IKO=N-+OB<2gDtt!J#h9Ytu9Q}!VBZ3$8ilqJi|OJ!O~7JaEZk1lOJYObq0IF) zy=RjBt|v%!RmI(GpIaTZJY~g&V79kgQaR~-eT$a^0|`#q>#m>^9Yt}z|NaU3e89(l zU`O}&ZTt9I>u=HiYr($BpIBA zG0uEHD1rlffUBG?Yqp?Q`;ZeF1!FQPM;K%mt2GZCMHXO&q5dCtQX*t#Ht*oiigK_w z4$bF1q$YD+70rP-C6UO&-0)BJ|80Ljto-XoX)g*B0}59kES{LA+y`lDtOK`YM!I4F z;w|7_$dcLH{t9}uUT~J4ZwH(4`Wd^Q_x?cvGItK|XbUvYgPYON-DJ|D zcNxr^Ufkd3p30J%={_YObP^C}Wki>FwYnX%+`Z;lS0Y2yQooZ)mE}9=Dh){x#^;_1 zqLra0(^CSv8}RC+hX~=Jb4ec;-NeDO+-{bC&)n;2)|C1Li#%v2(GBR@_e00lhoE_{uk4Fs3768OmMzb# z0sk_bU4>pzA*WZHyCa)OF22PWWqIQynX}QV?q6nr@o`cl=sr&qByYSHkU8%l%s2Rn zAFI#d{S52lk1i%oTt=vie!z>hwlMXi>~Kes5B1q=WQ`B;*z2nh8sB}BbsSdTRRcf4 ztn#j)u<4PCfbhUE?EO|LglK~Q1`;9I6M#c5zaFF9?SO2tF^l{H_|_!7#nfb%CD9)H zOD^-VwbqcDu$3!0v8?7?1eB%Th#kdyzkpBoI}?0p^0_u&N-ID1r?!qpTh~YSdJ!D@ z$H%%wNfvTOC4^Y?)mA;;R9}9sDCZ!2D}{Rcc?5h3sn7C#LGQI2OK3Lx9h?=~6FSr~ z>k1GlW<~j~B^TSk8FfO$;xn?h}+f*Em_-2o4F6wW9fi~^$Gfsb!<&M|sXY1n$;$=7% zbdX5VdjTLIl>4!L@ZX*xZvKyW>O%q97y0$N`AT_Dq1wi}lDnrFh62RJHHD(J0-Is~ zWe=r3iU4XnVMV~+VT0%MIehT^z;twF7S`oaQZD=Xjy7~T3DWBX<2k?C=Y)Z};65DU zff~6J!ee=Lj@lUcg@?gx8gmV!XEWLShP_`fWzle9u8stQ;nqL+u;?4GG8F#19^N@a zC+&B#+!5mp(B_Jx+~uIMlu*fI+xsaW5x*u;S9TRMs_`6}G&D^S;t z@_Ol+2KIQOgRhCFNYphOk8&}FdkU#!q!N8BpP5UL3a`*7I=${^;{CcmfZR&B?_Omw zDDdH#zD=$(FO8~4cZqj}z?S63-K5P{7@yMfhbGk0~>)SfR(*2QYpCUipk!Svobzx_bsxM_R%*nY8XTJe5XMX0MBxZVSq z7ypR(>L^RQtDtBD7-%hE!e>hx!_?`u2xn`FYeQPg;>JMx%uU^d^wGUZ;-0`to*GGM~g{m*-%sP zBG#t620DiP$LahanA;P+W6%lRzgcZC)Z4FQTZr6qPrPq+rh3-^NUJmQ7(Y0Lo_D|X z%Cmu?^>L%(az+1s}_0%LDwtJLAX`XK~^HNCum4au_LF=7;?Yu@(d%rsFHstMkP_y3kp2o3u?p zXkS~}YOot&Z+{o8lVA9=58H?E-S<>PUy&wI5nAuk5p6^~%RgKud?q%2Xv{sh)r+-t z-`868D%P;`>|Sj|uf^U+YLl2e>U-LHfIXG7QG?4KPq30=QK3UURH0VA6PUe$a$w69 zGf(A$LGL7VCj|B!S8+ZlE;_Y&eR)ZTC^Mf0-Y4`rx2fnX@9zmx^>{MKY4f&QT8R6>N3e~NS>*igHK2xM zTTlEGdXnozU~(PTiizevE}JU0W|w;A`~ z`-n!70 z3tafV7q~w~ssLF_7T!r_>0~K)y`hzzUH$Z1LV#cUDdX$dvUkTi`TVSG!1H?iVQgR2 zQ7Od7@ti>hEsfx;w7>h;Hl5dvKBxBe7_vj@|ZQvCVW}%AVXeCby>zGw?7rb zw9qL+kH1uTaEJphmdmhbRQ`e5ZHc}0`i<5etmH8$*~1DLKJ0YxxK)RFZ_SD^G=$`j z>}9Y=KlYhJR1l7uwerK=3#uiEl^YtQ+2>|a$Il)*ZX56Mu>I@~ZXJ+&lxQpsPSVdq z3WKstT(5M$a@W}uJuzXf0bU|Yq7U0;Kx#xV@HNxeE-41r-V>C?2|D5MW<#r8xPCT!T>%}klvk%om>aVnoFR>JqH1xMH?>XlwS z-rvjZ4hZsrRyHjQ)pJS7?lsL|GRv?FB`dzu#HTA9(pgpE+d|I*p8eg z=kr1P5o$FGlNnsYxHf2*6ra~zccYCR=(~)G-trW|fBgYE2fqZ_f&Wu;sH8VJeaeiv zeITNAU5YQFg948bQQqP>3*&kE9eR9YFMi0{1`|^*keIDl-9y>mC=iDiC@KOgO!9hu zI`3P4;4tX?h$IO1M~L4MXj#zZ=wGU34|Yz3J5B*1qkG11Ff-=cW6w|XSC=xs7D`;( z{hiQSEwDF=U@s(4k?7XjPFbqgRJpiw|L8vlh(FSSnLxP%eAaRqrw}kPnS#U{=6xXX zS)Fiu95tH}r!IoyrjwlD=I6ShUWrd_$)#iB*9E!h>+?P$r4_vs8qw48wGXAVv3&l4 zF{JQZR2*8b!#z1u!t3Jh`yvEYMSk>KXxLpJv~^w2!mw0Znbvzi6dUxo!Tc1xd&S`YFpv58Wqw3`eqdm&UMO z(tHt8t4x-quV|r#va_FL2G-&&fJI*v{f-tBp%4U(vHeajd&ki|xYKd06w}`4_m+X9 zRaoPA32xQC?^l`)ho%Dr1A!#l*%YvWSOZ0l>=|vB)G@&&ex}>a*SxlHtnB-E-S?Ou zp14;uY9AWrb^=YLr1?94>GX5EsU>u^d001J^UKOK2Fn*~xGUR%GtgS)=W;&$UY{${ zBK!(}f(GnfiI5(j+cLzOv03Vod@jHbey!^Z9%mlz>jS9{=wgx5SQXvRDSY*eDQj5! z3qPO@eZA+n`!!uui@f!kiyW)V+4v2PN&;sWY^c#s7w2n+7~PXR#{qHBySXVVBr>z;TQts# zj@I(Rd|(ee%%a_Z?5%&c?+Rlm=H zwz5?fP>q6gd88)k^H^ba;y062mWYQ*pleb5Uoe|50f8 znZTX8&e99vWuQh`<>ub!>ehQ@IBsvX`Mjxz;$S<6eL9uWU7>9#m#FH#iK}F6_*EY~P&0OKAaRfQbLXzsb zPI1AL@C0zP8Z#@>FqD4nxlM-?c{=JDLbND57OYn9)N_!?!?~GF<74hO?XzO7oy){O zpyGI#jE4w9-RVp`; z3k0$ZqeyBWHWV4;mg8sr8du){;A1hTA3DW=Xt=x&;9HX4N&MYVe|?v3o~pz6gQWk1 zfoI5Lc_E5A7-O3cCuhRhq1a}S?vtAilLr(xZCo5>bl5F`Z}fBHZY;c9?$W;QU9D4( zPxcBmc^Je2bVp*$fIV0I>gVzylKWlCRi!}Nr{qv+$i$h7FNt;9_gy?zJd1ksh9!EP z3+Nfc55^eJf?QzZJMHfe;jzQpt((h*!!0fPK=mI~#ve-Kl`|jFh@X;oN~o%%GV5YY z)li)rNY1`bd(X%5P86JkpoiBwjXM4#cw%U*Q19b24ECVbbKK1BjgD(L>}67R4OQ!e z(<`!ZP3>u(tA3j|ZT79qAS+^Z8?=!>} zSpSBmsYtA%6uqEq=}~0(EU><-C3>{{Ez$11pS)mx#CG#tZWE-0n<_q5U--f*ZDFTp z^`zW)eV|`^`W2KHk;Y9ex@RNzBFLoNr^a~J>y=ekyW9dhXZOk}%((D*y_#}*&M(3v-zYH%y={?dZ4Qi$(#(bXGy^fe^tRX7fWtJWsbZ-eWsU z_9l;~_*j_Ak=oBI_!9JfyPHt&W|VvQY4Uc@vV^4FW204RN6VdGSD6NGwk`~Qv-rKG zFdwC{{xI_4_GM4}dUnRV@|ML>G?Th_n1EdOv?XAmdIN2`8*^~qvCaH^!bkv^bD*EzshG#u0v|nA0UV>=YbzY6TT7(e3ML($UyMk$`wF?ype(lH^My z2VL#$>*JslPiw-!I`p4XcA7LlenX5_F<&T{M6ebui-)$c@x@>pPv@c&qj~P@EB_1! zHI4#F>ZDhOP*Z;0F_aJQwb?&MORjqUY0KtCafS(VaX(@P0FynQ&Iav`wg&WF zyr(6B|5f+Ao9fy(6Z<_>POd}q#^wZm)3p474t9>AfGUf-CX(!W!Jvoe^*GXny`cF*x zYzn}Gu3EaaIMVWNp~gWUHpV*snN;pl(n_PgfYf??;jemvZ5hMFR%|Ahy;yZ%ABUqQ zvo2;Q)Fa`rO<5Cjc4T86K=T2xBcGivNU3sL+TJs1`XrFbMy1h^RMS#Te z4CTEGtzKVu3n)+duRErPdqHvj;eTTKxSkZ-0Q%okU|-2xT-|=1JIR58M`fTQT7hsz zQ6?!( zemRK*L^AUDZ-|5u#ZR*RyJoF<9h&v{&F1gXD}!oMCCKq#rs1}(uflN=HWVVMZl94p zUL>>Rh1{QnYV*&8m-|X6p;xsYbq{BtuTb^DGT{hcu;eXgwUY-*ERXec|NJ&3boLl> zPv-TjY{4?vd6V{=}0KKCR?oak!&P^=$n-ovM{Tyd6E#z$DhgMmt888-ngA)3hX&UC~qU|)5SrS2W zD<10S4*q>NWEa2801T`Q#>Wl|?Eyl?ekbmY0PCX{v2ubYR-CSL9MX)aA2vB~oexb8 zALUeMj9FEjPX5gPPb2R_p*x+@?NU&B$^)$Wh;d*l(X3hJn_ftPPQe`fRkJ4+IM*8d z^X3Q5gon4b5LSHSLs@O~>=m@x0|mAHLwU(henOnfL4REyWsMm|Wy(DF_~RqwD$~Wz zC>ZS-w%>32K8MGKWY@uk6C~-bV#@T}dp@#b#p|C5Zy!I`N3Onq8m>g`x)mx~`OG?h zrOm8Qx^gD1nsTd$)r@3c80mvM)yvq>F5R*KRDs+l)E=4ag zkcCuUJ`bkwcy3tMgm!Ct>=W$o5WKvB0gtIa;)JOB&f|4JXL?LP zw46;Rv%8x=x%Y|p>2Z8_*4Lpq`&wyEP^NJArOCIAjO&?V$0n`-OXxi+9st z*cMSP$%pV6?5qT`qhjh=<69@`y|&l#9}J6fsPY?!C=1u@2N*zd1+eT-+MHG`CG91M zd!Z#FrDhb44)9(^_`R!k=~vq77m`3kLn=W7yg6@q_ho-4s#EQ&b934T{S_fr!^55= zA~7KUQnIDFLG$84EAKBo=#MASfQ;S>;Q6BG1>PkEl3C94BL^d}2}-llryCo~JO+yPFzNsFJUBG-&MZ+!B)Vg@)i9B&SGS zC_cnGyW(?j`eyOLJGqafC!(Jzp}>cDTMiLRvm-Gs`<^C-87SV0RAh^aQ)Q>kt@^|@ zv@$)-++Ne%+0(V(1H|pOZ_Vd)k+mOYuvGGu_6YkuJK1Wf>jA3I571M|kscmW1HIKR4T?s;r@A63j@c^;x@Cv6DG&YG04)}tSnjj? zu!-R27n^#_l*tZx0~sEE&|_u4(NFUxS;^>;&nGH%xrqdmG0^7~pC|NQNAqq-!lidOl-D$-v% z?$qJ^AP&5a@E5Ytx=?}O zRdoAM{wU&kSb_W~*#=@s;{vDAku}-h9Q)8osr>H~stV3Xu{IisvNv<7eS($_HY0#e z>4a%WNIU<*O>VuLVa1B~<U5Byd7lCj@IBv{)19#_x> zHVchhgSrD8uqGm~VFsq0-FSJu$?6^@!vi+HE`F7{j8H4y{Wx<=xZ*S^uDvzWhIB0F z9?!H+&7%r~T-PfHm~h|X?@0i&&$__4NIRcaR^6(@2SXx)_%)_%m=3h_?yirqu(sKi zbutgxz2phtF79HTHNu7Ce)FiIGl0*68Ni`>Rj}KxeR5On#QIYv;U9?%s+$l^!PRGO zj`d{9%6QSFrR7b6QS;sotw#-~&>^qf3?A&8F}`gSwnURJx3k|^Tn$Lr!@Nk>ecyi{ zK6k0S<@#$`Onzs|Kev`jS1Vg+hV@JC7{(M!OTORtx}Jy0 zwfg(jND>~DFapt)wZ!xt9Kbk!d^MdDi3sn0G5KXQyUl$!G0~E=CRQ7i@oQcaU8zR_ zRO}f{_>Jqf>oz+K-tt9e^fl(jqti25-PLeU43<2m(8SFm!COs(-lNvye-?^c`lTvE ztFB=)2Fc1Cmt0_v6|fNAcEc=cITSZ7TvoeorsTLS$gJ{+PDo z&?EfVg%4#lr3}D&wzoOA&)>i9qxH z{KkywM&of8+jDKx31O&shRP}p9*QvmgGOVtd;*$d zp~x34Pu<7zkUEG5?j-qHS+Ibu2R?i`{lf4Zq7nF3A46HBezo@F?GBm~=#L(crQ_d2 zot2hJ{Dw>j2#@iki8+TC__IxV8eMMdXPf+byjIQi_Joq?YYs?V}~x=q%XPNG@XjEXjn!xW}Z$IEr^bkZFK>c3gCNg*UIF3TxFQYxAl#97Y~rfycp zUp=7l0SP^8<``JF3BNx^H6&AoN&NeK@Eo1 z%ltC_p%sYlxKKhzIQu#<61i8pQZ6rg@lC9#+NqaHb9K9@%+CV&&;gW3$`c%h)%zhY zmF`b^2E7L{blPv$Hl?IrW)NiYn@_qaeKkCf>Gz!0(%yEQUJs)r3gyGy!owX|qu$K? z_)_o?;B5H68Nz(%{S#(G=qJw~*mJ;|g!h1##OEice&ihXt)I?1DpnhzS0`jsG>i_u zuL}|(+2TeHDIGLW?<5z6Y=0g7J$ahc)b}`Ddw5IKMM1chKf07=n0ei8q^ycS#_)tA zmhy+_B(4l)2D>`E4x#Jo{OfwSfxqy5=1-zNRk>LzCb=9wXO5|25Werr{7blJqPY!QTxLD=k8Ka z?YKDv{rSRghDsld_b@`?=vIkwz;{vVKy7N0d3cieq>OnSvm0#=u&!-s9&{i87>LN7 zWd!3e{sf-Ro$w;{`Rs!n-;Lq{n|mJk7u8WvXN%iQqthXCO|2hnbB6frVW7B2%4E;i zFA9I01tz*&p46Wsw_|^}&~?=2T$_xOyG^zvv@N8KMvF7~z^Fxyo=}n=?Ds_A9YleI z1>@%z6R}{H%6k$>zkPgiE!-S3ksSbSAx+Ef-^&lH*&lys?kya|)IgN$vMBpS_f}AtZ(3E+1Vx^f>qX z5zLwXDzGVY$k#$o!SsR2gQLJrAvoL`-3OG}@(UQ8R^@5+(!<;HK`phx(SK7!+j9Xp zhUgj?M&)v`rIZotd;jzPkEa77D-1|-l78nG^@R~G z4qar5GM)4XA)I9B-BRrHX1*>r=03wDrgoFu9Q)P~X|MvG`jplVd(I;$ud^@S!>z8k z%-x=X=;4y^xe9M*+bJ~29^KBV_g+z!{0i^4wBCAJ02LaV5Wqpdvtd^K6`pa#-z!S{ zFw34d8nTm&=j0eE?&;p-&tI}>o>2TX!5Ck8GyNv6q0*yANcV%ZoUy|vjt;0+r0K z0RRTk_TvA10$9DlO-#g@aux0x-4V;xe}N$iWZs>|;M8CBl_y7jnBIAgZ;S+hvbO78pa-}xlfd!RZP=msxrvImb&7v#cHIm&&1&bhe6olY+c2l-Oftm-m3(&wfPiX5-6&dbrZb)==nfK9T0@Imt z-?Z*FDR|LYn!4*VvQ;{V(Q~auTB#f;_T+wI0b^SevW6e!fKiCh6cNB|VNguH8qmRW}e-E*v{`Y#{5*94*M#Oc)FJc`!Ck#KMAq(;X&Z zGKxB|p9ACjNl@R2D|8KkUoGA5hz}_GAX7t0tOqD6A3r^sDo2=9pQOo?wCM*IgI_10Pyg49agI0(_^{Tvi{hp}rES|0C(Vwp7)EDEdpF z#77ZH0wP)8K#~MOqVV-+(PxYv_x7%c@*?K7Huc> z9~DP&#rVCY#9mFwff3JSe&1>1G6dtmBduZ`#0dO`(t#tDADkY>+!NAmFS#whc*)l@ ztM9`v`TC`Prhk3XuXZDQS~Wa;A4Y*y!#vPfFQ(N0WE90q=*8bZNouSMNZB-99%;kb z7eu?+1-4*M80Ez#@xFvq7?|VZ*X_QkQwwv*Q+D>gm6j>f6^Xtm@+snEk*SQf!{zun z!j%9QfZ4Kt1GiU;mg)L|9L#*V`>70=NPYimPF?!I!nKs5>$b(3`|L|n1GqOdM~jHD zp9pzQ|DG3vYSFKPh#f)rh?8hH+-ZA!8dr-x%HGpxEZy(r7U9MED}pdK9}xg_#P?87 z333p}(Mzf0$<6CDI*ILv zrdQS*24_|ZCXTxf2z4|?JIPb!61PEdY`UT=%h_fJ=LaO0(MZnOhKW>)mz}F0_*}^P zMUHSSAE~Qx(K|qLh@~Nfy`!I%;L-Iark63Gt>pPgwN+J)SMl<@t!|>Bk-wFEXIysB zj1WH#Mxr--`B-SZBi08=7}unSo7b^3Chx-d(Z*c8xo=l8d$riErN+#awoEy6sX#DU z+ed~&LxPKpn{{6cBb>tNXI`uIpbN%|e5C}g0w>cqAfv@O7tAb8Xs)8(G9}m;wo-dp zOX?>=ds$4+&E|Sq zvTKe!s8QJw2fHYsOFT2lm|q}27PzA`&OYh81G**s-~2jXh2N3T-q9_%#p~14t}KP= z3A@89^Kn0vAa%hczi!_vbZGdPN=lf9VCvK18eVyQX;6Z_B0v2riDp^)nymdC)=oxD z=y2xJVXw;T)$fg7vShG61yQ>NksV}SM4CXnGJ&PEvzZ57RPQP3fH;LmaESHky=NhW zuvWW}kwl7DF9$LFrRKGu4Iq=0idhMEa*=lweuG~#pHNSD7Jij5v*tymq-D7y;{E6lkKm_HS1ss zuX_x%|CY4KvDcr&3B@)C?k&_EWqjL{xGh>)Jqhl{m%Ig6y1v!CNE&BFe$XLYU!9(x zHmp+8ffcfwcckzY^2a@lCHJA{RWFpM_OHcB`EtEZ&81_@6FmWg$iX+DGMkp=JW33J zj61#kAMvZsW1-re%bJ&0q-9vdg8ad3 zm&Lpo1(qTyLuKN$Wj&hH6+*Apv{LBVy(n@b8l=&G@tjis7KNTs>%>yQ!MC7xi)!nw zzxvoqQc<_QUaQ^C9?fv#*~;CxwzWk&5frU4Q*3ZNR+UQOr_u?O8w?(BMd8?Y)brD8 zO=M9|`3*K7VSYRe&6`3&a73w5BbWSnV=T-5)NH5ZRmb~sw)_A$?QTtiyHU-kYEx7Qwf(6OT zxg;nVtiYh#Pjg+vk10=g`yi8dn%*OV1&~$_a@84LxeLfUWG$NcRi+N70D&lx#E;U4 zyJ^bqycLOd<^jRA&|E1YKifB)$3$D8p_RKUy4U|qq($?c>J?r4JnE>gAg=Z-a)L?p zJU8V(5(pxmvl#PMoH_q(FuoE`1g;GF`zW9Gz`b~1gsi{`L>SNTI{pfW2Yir%9s4=r#VKub?$l<0)zA7x7)iU8NeC_2 z{p*e)o?Mz^uw+{#X8?Jq$*r^LyevA1Ig4%o2;YYu0@K=f*GtUCu%U9nk)L(>2)`ALG5b*O{Kl^vr?h@V~W8dL|uzi0ScQ>A0nO*+GA1gSti@ zHuwH65HV{nztU{d3eYQ*T|VM9g9ut@dw}vU@9JmmWfd^o>nnQb_nxJhMeb}KfqY=M zTOq5IIL=mX{Pm%sZSGl9fTXRLKx4hJxL?QW0{(Tvr3Xr_T@c~J0a%Gz2C*5?mUfO`Ttz>`u9l2$G0Qr6Y1{R zfS#!Zr1}glgI98cBN-0R=6ftHa^o^J&iZhK-^GnX%`X+*ELot8d%X8EU?<6kaeZw% zNA1Dpo}cQm?Y+F$xfcmDUYp-$+j|hqA?G!~F!=eAHxrU{I{dLd3YFYUq<`huSNQ&H zk%y{|rKGp5R2=IrbzZhF$&u{v^+KQaLm2)^RsMK#(6#4^MlvDSP?Kbv=hy8*&kKA{ zl)N$aihh-BgEVb+P7~P)6@AqW_BhzVZXvja$Iv5P4OTfVeA~kgn{NSeyR?QbE7ke; zeZ@EB!*6d<`xpoDLlPrG5DJHK;5d%^ss_cCeoA8Hhy3L_tq@zPO$q}}S$GQ1Jw(34 zl+bd&io~5wm~#5|Z1nG9T#qBxTMru)4NHc7tk;?KxPtg3x5|7icv5_TjVEU#+O2wv3|!n1%dY z2!-l_yyI>q6}+#D(^Cf6o-p`O@>5pZY)6}aATVY6eo()FGd4g4K7~$-C+dxl__QA$-T4;(r1?w!8gzhc@!<$^xw{5UaJ)dO+}QHv z!&7AQeu)k|$eXLppy5jGO{oHaUU(JiU;V>s~ph4FxCC`4Z#PDJf=HJywlGk{STjSyA zxgNQjrN6ddOC%HXNhb2D}Z7-z< z<_A@;kmg(D2P!B`wphng=~!sF!wGJRxlCV~s5gIkp{FHbCA17H;}?vv_J z-rItXYQ&E?xazNnzR2lY=Hr-RQ3Fxw^Ly>V&b~1TVRZ>Vdx#sTf;5AYv7Hapb_sw{ zde&Nhv%$9L#TEMwRo}F~Q@b;QCv(JuH|JP#Nyq#5ePMY1?jU;=g{2%XRwNrekIslz z>|D1d?a!?~snfo!*c;$O<>AwQV^0=bp0(q0HC$NHA5oXyyRrE6cSgFVI1(>M-k z>>#%PdMQN~mEcub>DQq+Sf`Rn&U+In}3@U>XOpg4ZK~+ z@73##Gi{P&mywC!#Oiz|)^5F#u%Fu&F^32Sg6XC3+O)<+UU6PERXH98sAQ<2nbArq zK2FD9WxYNW`%xYp5CuS{s4rQfmEO zwIYr4?5V1Z7cWpBdk;JBE%~hC4}r*Rxck?Ws!^QEjtj9wo_hXVpPlRY0M4jxtO|8^ zsqVkYm);BdDNany*?Y(+YtMM~5U9@kF6Lp26o8b#f5B;sS{Y&%yH0eA_Nph=1po{m zKmREj3x#a1e>*U~zH>ABd>M1t`BadAzS=uT!r~o$g$#PPE=P^dv&XK!k__uPA8wD{ zVej%)`;#XE#;pX!x4n>$Cin#jB?rp(Jvcn7GTis{n-jJV&{k|n?s<>1?4j^rFdv6E zzrI{uts)fR7T#Xk&tO^tih0{={MLGG)FV3Sv5(FC04LOQ?eG)z<*BKw3CNH8Xg=!0ix9?1%hNhbK3L_q z%xh3F-Pd_`o}V)CKR^``zQzp3sbNzYiZrS##Dw7AhqZs!mXKlaR-QienykU<<4i7H zcxq405QSjPdNbI|^t-WxUXS(1Wsjlj?Jcp@;Qnfh^>1`z?i-v+uJWn8JvY@%kQ)a4 z1aw*NA)~+!2(8b2hRf%Ecweu9%`3i00+oK`d0ilziUzju%|Y=X!7W`;qa@9576%6- zm13vT6asXReFd7s^8CElCre8uN8ZzwLraLPNmy?xGOuOvq=$1{FW$q{?$haNGicsU z5fob^pXFjG+AH`%{NAD^ZNd{OhOTn^Z&JTTy*C$K^Uf2H%mB}tdx*y!Hd(vG^YUKe z_^DXDa%CrrI_ER9hT_Pm-SabDF0b^@-iP7BGSQqHb9`%PJxhj9nHH_uxzcsf%j8QQ zkdYfxmf^MY>tIVuQgaK$noLH~qzN7r+UnWU5D`ZcEa1c8#0F{mYnkgYbS}bsow&^n zP9*rQ#SQ(@8$k6eU>INHwOQK14@m%L>_<85^H3w7%Z#v7=gaT3N0Mll71!h5eMD$- z?3`?68LB_%CZ%(Z?;XJc{4`QOcrd+}Ej+?2uH}2KfRr)I;#WTQPn)Q?dTFvF2y!{I zW&?Id2{&`s@NND0;h7qc;y;v`h8yHC(gH)yv#eW}Tar6;<~GU{2)+P7ff%j*^Ol!IYWeDTA>5>e^Y#ZQC#yZcL!S3AL)BA;sD85IQ?}0L)Z74`W^$4hEE<-)c#3?P z>vuMy*7lKzbY8@3->6^w!P+-)I+eau$-ZV77HdIt{M`O=lAFt<~>(@2jr{fmh zH>C@_oBj;04elj)dcOk8JW zBNXTP+cC9ZI^!ik4>Oq zWnB^Bj&Pv7_-Hs#;HBu$sgEhfgm>t!i>s8(-rX%(1Z58U96rH9*{`q~3TN^(V)Ciy zA9tiP)a~~h0iRgHqnfWej#~E>Hlm1MzVRB@8cz~UM9mBjLmu37m-+~sh6UyxyMpKa z6^aEuPdp)T^jBWM;{(jPU*f3^~e%haWa|W%bD!yiT(^Is1OYr z$6Wp5p&Q#I)!kb*yL`S?XD2;L!RGOQ7WaTG#@Gai zdc8@*4A8=P56G(ex(7P|ny;89QU}+vjD>8Fcu5!HmRjBbNLqF{|8!yh`&+GyI|x_WjY>jT1#`_`CgA5CCRL-@YL3CLCOzN}<@25!r@{ou%- z=+ATx;8>8bF%N<@`HkTGjEBzMjdvYFS^N4}hg-G)t-*p3c#^97Az(U=t%xC%4Bl9BBj*G_2DlWb$hB zJ_}TQWxtR1FfQMskSF8tgkJ&seiY+IHa;cz=-B5yE|}%);MY*?;_20Uf^bkul8fDa zUdsDhlP~^wJ3HYmai|)IX2JT&meZZ5pR8OiaO(ZioC{u{idMUsw{GPsKUtP}**8l% zEJV6{>Ik}hc(3N_7~Ypleu4t7(fGWE8%fooCT_gr)kseA8qOYNFwUKS z?O64d?1OdCp=ldrj6hDb9p#S_if^qYypp|&Eo^+PO3fYh1474Nm)`y= z(7y-x6_@~>S%N7=k2QqYucx;Sv^jb<>l9`xJu@LBqzvy`x=qM&71r$f-_uyYjMTaM zBA5*d@o4VS@5#>cv@idWb7YE_%ABI$Z{Sa}GL_$I?8Ebx-4)|;rD#(bPUzQvbb>$w zra`~AKq^0Ji-(U)h^q(yg|+=h(dZ*W#=}h^N(D5;2&%0^u#7+z)CE2Yg13fmkdqer zq2%XTFjw_N7Q~}&ir^!}PuI-3`<>s{azO)4(m%mg^PmL>5zJD_n(>6sIdV-4MBzv@P=*7F2-?B6o{oNWFMCFd$<+b07$ z158Qcjr~w^*qi7MaeQU2&DB>LO+RegNp?j=|0wLstVVM>p`h*Ui_Ml3dAtuomk5i| zV0wU%OsiFg{=4Tis(NRywkJjw^)SgnY@{%tR~L+{QMpf zpJD+!Rxi&4ntNxYNhWDgY~bU7OA3|gGQlUj+?=!f1DuBH`80gV1mnD_g)8@T=Gqt; z=rzxhwI9+W_{7*;eNM0(YP=Yfg9@v&cvtt$lSl*1eE&1 z!QXKEPNv0K{L0JQ)I^{4S?se*@8qCUn*B)7Gs)8}SaO1T|Lw?1dK%6Ip3xOO+I7Qf zx}pZzy-7cM)-|faWW0`z`?%jv>#eou2m4sA?zo?}pLYfjr*eDb?t616DiqV|Acuv0 zxVwl?_^)~QNtz$<<^2xmDHx)|6$u=xbGpj`B;XJkpwonYG`v6`<*Gt*d|7?RTK$*o zK0YPZjbD6UwuxBVg`k|@g^Bjw$jKfx8Qwp}yst3{G$4BtQ6Mty(bYacL15dS;VivtkL zHl7dRrtrP(C#88{K8A%!xepKba@(GUe%#~Zb;-unuuPzy3uF{eU0VzdnE&p>!e8+- za`gSXagTX8)u!?8=M?)BlsN3~e(dbOS`|90AC8twAHTT3D)481j>hm_U_Kh3={ouC zRz#AhxbRKA^KgRIpV4rakrQ5t?wPmwcS>(eAsMIC5^pFOy{2iPzOVEHWFJpFqWyKE zS-z&3`)z!D=2cNY4-(9CjsD#~`|5^>M%!4U1^m9%O6y##!LYXG=Ttnvl4Pzoc(->4 zExE_MZOTKk+}|fSsefqtsLllqraPlNsbEiTrfuYLQhI;ZvJ9*4Kd zYqesfZzbD5;9I)fDFjCM%AdEPoi7%V~oJs}KNVJ-iIVd>jbGt^`C|$YVil>f^S@nn3p62k2m;K1dU zdFQU+&y4$V<5iA)=57FhM|%qb;#0*!e4>3WK7DCy_*n1gTzmR@yCA$f~iA> zL2|q&?k3z?F~cqiB;ENKnP+l%&9sU?<3~Zihy|2r2MezcOr$8p)k4@XO$B+w@4T>m zjED*TYz42Wr}*WXiFyZVPqgpNYRK<>^`yOf*SI!M-9EyxEzkXrCQC1_au>8 z+YHYXekN0dzp<$hUr!+puvIxZS?!oxkcD_uYul@zCikEmwSeu~# zqT{pJj%W&WZPn_khL0{PiU5T=2kka4O4NJ%q~YG}^)b@sKCge@fEdt>x4+-l>!yH$ zPSVV$16A_fpZl|Q0X5TnMS2vm!*(-hmHCu|x-F?&T+TB#TznWMrRoH?g|pkeuu@6U z?qn`KN$CVxMlDA>P@n{c>)S2eh2B!kwK zHy~gaarR)t3gaxWeUVf4(UF+-Hq06SL}D=UBYHM-Hx4NJ&nQup#VDRmBl&e!p8(i& z#U*yq*!tj1x&1A~gS*dvgVLf*?rDnH;x}l>7wfoB-Z1=rmP0C$Wo;?uvd9z9#zONW zbCP&~1n|j9d5>|9nY}IXFKPFbKiOYcoJmlRQEu-Ym$veixqE(c zd56Am7SwhSP#$yoZHSJM_FhAj)diZ>M)d?cqe2kFyjL}g&EoA(4LZC4Ecp%5tKDa) z>AgOlJRLpVWPoslV2y$29Dz9?ZDY3FaVT3$PBY1!>pt80Hqq|UD_lE!|Fz@`)aw8_ zWjm91-i26-5m3B z4_zb#ZUA_!x`;}J7lWF;tnJ2jV%+*58)Y$NT)rF8lH1^Ms7VzPKm)@cg`ZDt%7a_od9a>cdx3m&>igR{@|6Zp4q8 zCe}z}87lepg0>N19MuNqZLG$A?~>7Z(_Bl>HqzGv+o#zr({HkS9=>vW0DW3MxPBQn zk0&y3+*bnI8kZKav>FIJ1murJp!W8+NrLA-J|sXHU(s0=Lz;*4fsP3Q!)6|fjkNFj ztNr^~?EdnkpTn>30d&iA>chxgIATJ zOP~Q%LNKm+O3E23^U!*|Mf)a$Jh9>VJf9>W<})iTT+hA zsb`6Ycu%UpA~G28uI+v*m~`{SB~;?|$LI4oTZeV=ESHK`gD}5lFn0F)UX6E8L(|Bf z`Vx>c@v?V?2m=4Go=p7mmy7G&(81)piVa;Zv4@9iGpzf|SjCfnfd#2(ta#~ z&8}|8yshqJ;2pmLmCLqsZbkdSA|G)>ma-2|)hxLt<^6K;#-AU@3M3Yr>|I|$7iXxf z1n2J0k2(YygCyGI%4ag3tF3(N>eZE*1K!Q8nrr5|kJ*vjK$aBm7Ggl@lf3IfFg8os zn`fkJ$ae=6eUH>fcqnZqCV3q^hm6e6xyiw{q~ zp3^)@rk>vFlUMV=Vsqi|r$D@skFfqMVmyJaOAKP~&$ea{&D-}h{8Z+vDtrapr`#G9 z6N6g#SZ{0HR$Tg8*i#MnEHv--C0}JDk^*LSVZUGu`xNwQ z;9}he z?o;LCk_S_ih7Nmg$#}LSF7Lc8?(%^}4ylTK#*lqx*6~qV5>Y*7bU!dwiNqZ_pEt zfqPIproym==BAb=HcPbYW>`ee?)NJoZxYd zyL1pZp17{)xun+bc%1E7RSaC?{9Yqs2DlIu8H5$_IeFTX_!;L29B!0tQ&}n*D*VUF>f*m&p(;xo3mg=1P&Pfz+N{aBlfka~M_%AyROKvY zFygt<2r2-~@X{qA$aeUQpd`;j5;4S43AE|BAc+RS3g2hxSVXa6&>;oNcQ=`!I5L~0 zZfG8Qi=ZREd~_;amNeSB)Qg)!eUY(QT#(Q@@hprxztP-OR^9ICY5@#K;(o?~S(1Ub zDvg@C9n?4}(Bk*FqVi1QFEjn^9S>wIcm(8=Lx`UCIwV%cmfEy%& zh%$!N8PEDL&ySv6d^}IMTt8yC?=w;odBaze@63zI~1Tpd&{)E^qcU;hb3*CbVD46^M~g~`@#elvU#{F!oi2o^D#VR zfkHt^+_$rJB^_fsTyDf{D&Qh*3F9Pu*9+a^0UIEGtR= z?z?sTJ=fkz9!K%_7<3#9CF`;VNi?R?L=ty#Z|rP?DQ-d*9^582hF-i?;pebMdOaK~ zn@hN~)vTZj_IH-U+>7fj0Bgh`VqD4cC4|3$CTZOdfk80HyL?kWUhw{`MZ9(81tlHN z_@c?T;6-O9lLemIofZx2~obn_E@7ah<`hG`+0hllV=l43pa)Rz<)FC z<50FKIo0%dpmBUe(P>{w?Rp=;RXj6lF6iA$^dL*m zJwQ)x=hI$wOjPM}Wok`{j7AI>(n3 z6Y0s3E;v(pOh>mDI5s+4d13(rzy29fzat_|MNlrVjf`dORG)D&PbL_Kyo(n!4NVru z_WQ?hB-;dsRR2OJA4#IT%v8LO9;asvIPKv#R2+O=-b0bKC#yF6H14_7VV;V)d&1w> zgpSBy5A?1B-0K($o3-$EyyFpwBj#&scx_zQ!|1$?x!;k5%|^K78l!L^tfqG5<*0#t`3w z%Dqcw4{_DfWTN8C*k&AfxW^}UA}qAhe4}9BmK&DEZ!)DN0^P%*i(x2fR+?nGZ7Ns%fn6 zOXP;vU6j(GF6KQH0EXQ9{Kc!okIs{BbU2jF$Ac{uy{|?-JJ7%V15dy{3~(Q`2G`o( zS{LO$1aga3Oqp^QGhIJ-%t0~wGjnHe&s*ES3H=Gd-X5-1^f4me_Z{smdFJkPVAY;A zpO#I0zytujk2dY5M_8vLw1q6+GO$*sFpi8|GOyR+$5y9JF9azOZSdWGMsPm9gy_mP z&Yr!z$}w8vbQ4gfk|ap~wYrC{Ci48SuAta2c{x?5io@3;aPbGU8=(f~W$89=B+Z^MVcO9dMEYNcihC82!HJnwLB{9{*Zi*~cljm|W6`%j9A^05YMl$;v_92RGwE#J=(l#eb@bYi3^}{{v41USqU+>q(7{UI!pdsyLZWe-*HfeCpRU*1>20LE9aWEZ6{pJdiz1C_5P-*%j(B{fp zm3!0;puUQ|Q9uaXF}Y;OxBrYQqA2aUXBvCU-`5IfL`ww~N?A2;?``e>7V{fA)@uHN z${8O0ocC8Q1pQzSE~1cKK+UYy%7_KqayUstyeFsKS`=mL4h84}_S0eQy z0XzZJx~d{!iM&*^4~CL}Wbz^JUJ4M&Hs`4yv>(l!s0pZ?$9t<&w2^5M{kx&@L3`?Y zFOlJp+NDjL00FyfZW@;!4+F~hJ9R;M0afp-#V7^{7fOM#L3fj+eWm@~Y(>mIlR|va zS0r5Ei0#&M5xqEcgTYYYj$9w{h0&iPr8ck#(Orl8CJcgM&Hdbmm{s-wfHyx)-M2mb zAXU62APGDU-Kw$KM&;Kv6nT1zcV#;E0f@IShhJikEWR=^En zY_vuwLhSi6+*7muX*SQW0O&gO&qE{1r_>1zvcB@`z2w~93|}wV{E3fewU3>_ho99_ zv(tsCrbVEh=#mIzT6@Ba4)$UfSRh^E55iDOXXqjH=1g-wK#w|NO{b+XNw3jw>?P)-2Aburz%+_V>I|!a= z&xfF>2!>vLT+_SPe~)`J9V7q@hLeyXwq(Tp41Gp#eMZwFth56hHa5*NethWfp}r*M zDKyV+W(nBnn(|taO+XFdYTPdpppcX^N*d~mR)?)$N`~@|^B>6I$2c0i*Sk+64=krw znFLgQuQ<0m?@!&WbzIk%*K_)Ue`-I1zX1Bt99!vqy51jA`?r{I zlJ+@EImDaKzn}RxP)BPIot}<%f*Vdub7D&+|7pdGS!K{Fwue1hvn;ZM3xRl$N0GQ~ z2K+^Zp?Q>m7Tq_|Ib=$p#{M2dE7~n&jh}sU&28HF@bM6ML;WPr=ze`NgcG8}1hNdg zqW!?6Cg-m+Y(mp<&)We);;<>6;Mno8cRYa)Q5COe!CF75qlnCGz|@OD0`i0QGJ3CH zK1-DvvdOQK0SwTvMoOvbLT|mA`%Agdw1A%%sRHc%ApI&|!);^!z-;IVm6|uc4rxq% zy=ybTTVEQMW?7n#sHH!dOFIlV*~(Wdxg0!S@*%u zUO_eik%qfwo3SIz5{$zB&<&a z1AfZuRK4i49Y({xV5MhpU#^H7_Fc;(ejfp54KB3gVR%d+w8pK*MgP9G7jPk$=%!d! zTm8i2Q#OyVqlY^YTp7xAK9QW2tKb7}m)6I*I_IYA5dr2^;$5@{$!nhl{rXntIMKuO zg2q-jUAErEz4%uZ2=VHD!~t;(Q7>ci2Em#nw#00iqy+1b@%}x~TO$WgP8B({AYVOR zeGu=iqL*{U2THq71iT%nKC*tvgbjebpZI);7&N}ieW@^jMHUEk0{oSZnSOVnH~+H7 z$x%um88ebP-Ou93TmTt6!T9Jn>&4v|n|lE9R`GocU5OUvxq7{SsA#0=LYEPs8t7w( z-Nd)U6Ker?qd~So?wYK*X-iKXq#ZchKq0T5JZMS~qDZuMm5CqM2=+aT^>Rs>*S$>E z5t-?Cb;=0zX+j+^ar@iR#Xw6|YVCv*v`7O!{`OD;IUtA zRfH5P15@dU^G~YCg&a|uj zGua)ADdbd1U%w~k6sqyz!2I;=b)$}%STwLu84fUuXN&qwp}Qs;#{TX>=jX4#{UpL6 z0Xcu)E^*mopM!cVMW3R%L-O%*+#q5GX74jse6~{z5uRb`#(EFY9W2A-V{`Tm9PJ!x zIopy|4~AGAe0SW(@^)9#BNd>V0W_}AE+{*20#feD{p`%u2!#dm;NkZxo>%}@!ySjg zWvSK6g1`Z%`ZMK}uok)R*5VgFbxWCGAtN4Ui$2u9g-S9Uo$^F*a;7=Ej3z}tl5>7- z4KH9E;`i+i2N)k+g4e!B?R78bHCO)es?go}@L0Cf6q-{k4#Mqu$@eeHGlD?fQVze? zX3FvopTL`H-^DDx@<54wDqB?Et-SkQrXy(D38rbZe)4l_8+g8n-PaA+%Q|eq0lBeR!bTsu398boEByX@++|M2@)W|*_@~w@2_k=SP zf;bX0dJHLbi8@Q#iW|CoDx?V1wWbv6lV=JWK5L z?cp@P7#iC6t8O#h`gB_LOJrxVgsofXGMt$%AzbI?6Grj({hC35_iGzD){qmwVA*0R zm;CwUKc6=%bn5mu3P$=;_nE=h+1tLp&5D0ffc0Oo_ujty>0YN^)wyFVcWyHsXvYj9ZCq_t}^>qGB-Ds~iIz~YbgW=Mp%OzH~21VfC-HD#PO7gYE zK=-to)t+Fm_+kX_d=XmtDKeH^l#|94#Z612I_yUe2Q=KFyzk=(1ql7r*1ooSqt{?`uQ(-D`hPTb(}RZ#G`P6B6Lj4|zLb zv8kjfBi+RNf5RmhMw|&`g4D-_xGfa4JM5rWz>sFl( zKDqs9YC8fS^&GCoY}@A?hgFBy_ko0~ZMVdKvO3zYt$RPmcM|5T zppD{5pknDhSMhljRJ841#60jJ?Q-o)NFN#96dq68ydCEx{FdzROe@<<`DxUbigfF* zgTg#k(lPJaH2?Xv$;Q+MjTObHDMX(3qNcQ?B0D}+tj{h5$DXW`9o#0v{*WI7(+KtqQx%a*>q)pzCR`9u#oZ`mZ}uinJz zfitC^HO1N@-N@<_I`;LsC zOPXkJUOEoKp)0wmxELun(s%jwr;pPzb@SYa}wh9Gr%1u2Iv3-#|N2NN7!$QiQG7d{H% z@II&N&@O@gY9E>MTA%)S6nMrYSYWhq2dRR=`f@smujCPIa`|16OU9vZxIa#`ILU*! zP~M46%vO9r#CY*yh?d?xQSy8^8!xf#OPellV?g!qKm# z%>co0@4Zksf3YiskUG40(cXK5{;Tlq2`+SM+Le-y`qyuK)Evx;Q>b=-Fdl8|XwoXAcdE+5&9` zC`w|3z-4`fi@ao<&pvrFOQ;70O)t5sc z=~ouSAk8k(`DeZJI7sSSLs80M(5PYne@n8q=Rx#aHgqhqnel|fhrw}3LI;vFA@7A> z9UA}1_!PI{iE8J^=OhiAJxRN>CP0cs2*p2_DX=|sd?kbH6@owPutMSy??Vf1obxCh zpj8as;Ec|{6ZcX(vL7Jt^RNN6sydt^^3~O}1sl|qy1lVD-mePpvrlhdkaeE9`>;=0 z4%V-2>>?Uqbxu;mdCC0Siojo74J-2`1#)M2fm6^E3P%u0ief zWn|yp$=uL_#3Ct%OC8cH0aPJ~5jL!|)0Rys|Q_e0AGJs$D zs%z=;BddY{zkMn+LHL<&(=N!qP;eN6QYwV3rVY?`|5@VascT+^F`m;~G-l9PZTWmG zX!W4dH}O6$o#QbsuNwF9d^x>W`6{0&m^lKq_XU+bWC%uO2^AL6#JrHt*H=l-HKJ#9 z!bd34;(W^{0tCvZdyOW;c17a&aJv7LJ(sq=&aARf{_WRYKPZa6Z^ieEw<+5s4%dJc zk)(h@w%ZM6?W{lcD6D@dv_Rxd_1ZUt6LX$c!TfM+2X>0e-3~#Nt|_`E)a`5TlV5SF zKKkr&NF+z#1cC?62>Tv30uwf@c(JH}g#*F8#7F1o@3{$$6{k9(uzio)E}lAbD==WE zM5Mk-=KZMs%qKX~bx<~#69nK*Iqle?qc5aG^ZSeS`bDj2V>)~>Rf(_Ai*ye5xmb84 z%c?PPXj}3hNoUrbs1^m`zr;K|ih#%@BBO7pfQ&MO{`xM`YvuOsPK+@Ehkf?0`YIM~ z{deP({cTf9CfJ)D!i`vi zP0mpBrO-W4G>yR7`IeN__3D!8zVXuG{d4+oAWh?w|0>&3SO-B|B&NJ#H{%DbFJa&5 z9~aFT6eO?Dw;AHo?@!HG7h#>55M$Fa2c{_B?;wu)FS^&!GJX^CZ~v7#Pjpgd1xg=g ze99@RVTZ;lBpFc6|Hh4N>%$M)a7NQVH_LpQ4ur zAbX4$tZQ{RVl2NucG$c}crpYs>tDl?h-N52vv#zleU%@@i2h?d2a84{!I((*>lI)4 zv8&e0G!Ho1t|-MlQ@!j@_D2_1vuriwau65>AvW}YYAO(`kxKjuM z%TKpmIUB>;)(up3V_1s4IO`z0wNNcUK@SZ6IiY+AFmiE_TuQ zvJnt#5yH_1ef(?8EXbpCB)O=H>vb5=?tee|hxhwvBVI}BEE#Ht-675S%%zXZawWOV zb?(|T&MFlDkbpF~3nXlHzJZ|mdhl*Eea2-GNWcQl2boG zc4sTyQSSuF)C%j-;N6Mwp6}yLm4!4^8FX>`Rf2?(5vuW|juj`*tPEFwp6o z$B!H)(LOr!8$@c6@VoMX-Ur~P6`&M3E5laPj(Ap{m?afg8!u%@z=9YaP%@@rx{dJQ@ihfm5f9Sk;(&%r)${g{d_Jh92bTnaqsm^K( zksY2yM~?(KY`3?cXj32WdPT{k_A&<2eLDMm>|@+8{uI2UKSgwAsQH-tItr_sgWdkQ zfoa0ejdwDhZ03*;TQ3IuZ6NJ_@}joy+o!ogG!-zNcX79*n|7nEzO zJVAHRQjwdC=KKDvbf~D`h&UMT9F^2_%AM7VFmx+M=6-GByrJ!-NT#@GEGt#_{=5q%=@ zAeOGV(hu(mx-eUqy|<#`!KzJKuW(MfKnsZrffr!MmU591#;#%0rM{eE>-&l6n)F-V z>Q=au*Rp9!@(uxnXlAkTXG}UePO!{(w36Ox$z5u?&tGfodSp%C6?V7*+DD8(`gub} z(yPE(tm;r)74Vp6Tat6Z69d^~I`r_W&)NqJ`~A(7sXkq9S0R7rfX=J$QBdbWG}AzF zQ~}wxkxV}vvp~fBHR@i65-X~@BOWCoz#!+=W^}+2K=tOY>0_P=J3S$&hoTfD1koTu z)$hObj=HKw=mI@($dDrao)!+p6M7?-ue0?ruh-UwcjvD4T#J=SG9T$Ukc-#v)v5b{ z260@z^5;TUC3}ZoEEwDMd&5|&+rC(EEwVGr>GIod`{K}RN9dYij^eE2Gor8AzSfa5 z+JNSzJ7CFewYR*7sj6DyiOOAje=7{Ik-ay4PTQh|A9{+euh+3vbsB@~{brr@7x4%0 z@}FF_69?e{YZI38cYjX>>#aJfx{d#x8E?micfUtHDE3G-|tMc)_zTm*TmN^ zvULeX`C%y7<>Bd`TSc0$1j4q9yv+4Nt|u~oqF?TJY|xv-{pnEVuR{~IsM1e1m|ZS! zG6U%#p7DjIG@iqDB;G!&tE8UH8Hifs{MlyPj&3X5+)*MmYhxo8$!(eIKT9EU7T&A$ z;?c*)79CcAKGUu2KG4+L=6j8RvGCRNEVA|g4vu>24hMvSA)hY#KC(;uJUz_4hA7*M z^V_l$5oD*8XZjll@a0~KycZjZouW!&i#wz}3Gj1TNW_q3pE~?*8{NX6Zx{>OkB9;`{Q9l zbWb2VRz7L)xaq6#1YLI!#Sf8W<$S*0H3(}FPtQZA75TX&K2jd(qV27;Pyl7JYrQW> z9%{fJ)RpjkQz@*5r^pV!@(*Eth{dxrsk;;VE$lE&M&FL!z$oG_+W|_CImd1@KGbZx z=e_w;UmY;?r`QV#!DMFr+PlBi~ zw_&^3<93^9bLsf~gtdb&VZec$Tg{mV!qX6Ft+wS`LC7v9H{d7`{diqP>lR0Njr&gbfD9O3S>(H($WPT2fp$7qiV0989Mk@HXbw#-g_nOxKHaeqpryF+}wU z5iBS|_TuE%fQ*nI%|}Ruk^m;<@zzWCPIo~D)AsqyjdrTR%*JC}gds*&@LJn{Dwv`Pz$0X#$(kDMc8 z-{P>@xQg=c^+xSqzs@a3-3{ibz19j}oNSXDHf>`T;dAN?(75dOhbl}?_>|YqN(5j8 z=S%Y51ZgJDoKB}dagWCm7nNvzh~bl#oF2a$Xb@P#B@m+Z;?w4TI@Zksp+M#5yxznW zdQ&UZ#Uk1F!ATDzw^qmp`|N#AgfONwHh714oRmc4%=IGyBr2PsZknllnaQE&07&{J z&W*HKP-t{sxwQzBq)SwsWOsb+KikoIyi6DVg99BVSdtHDj#R_b`(C9V4z`LEhlN01 z8LW~e4T&7>ys8*mO7fS14Id5MsI%`Mm2dUewsbS>_ex94)bpMSe(8AX;zFlXlt+X^ zF$W0o_RGvt8_bw~=`bIEQiy)X*U4K)FkgQ6JMMFHHPojhqgboBN;P?)0`@stNAacO zLXwyOCtF)plGtKdyR`mmiMocSgW0(*en1*~|?jRzZc5p59cgNV4pkF|Z z11HOM9QXTsMGo)m6G{70)Nt@XoCQTc9M7$JKuE@AuUwKZS&ui#+{pF3Qy;=?BQ{VC=3}XCpeQeC;>p9c8U9*6a*%@w#?GNg@b28v4ugegTrKG@V8PQL%eGLW(vjAv8>#I#a&L zkJ=%M3vimR0yi}&DW-a%l;C?Un5PU0v^l&HQ4uS)GU$#OBI0+z*k9LoL?=ta_~yK?TX5#@r~G@rpXQ#Uoi_G$s*kIKf8!(iRf~HViG2S?7+S}I z|4XA8sqix-JljO?2NgWz7oQYv+uR1@@Zm%GBkR?o^AdiZ%4m)@+4Us1mGwIobt-($ zZsdz`$Y*T$OMcr|0u7WRJ6tG!iz)QD^ zET$uPoORXfE&H&?Uv<^bp}chS6-qqj!{1{Tys4Qb$KFBXfFit1;FU^WQ2C&%drfbA z74C=45<2wlZzKntnM#pd{;uwba2xxC)>Fmor_q9#$ z(ULoQN~Iu(o4@*r_l-L%(=Qik!U_W>l$S>F@o>+%mU&Sfa}=!y%NNHa|2RnPiMZmO z)Gy>M`VqF1dfx4u#5u!3k&YQDf7Y|L-&3GzAwm`q(RX%Z&W~R%K#bl}0(#C8+TA|` z`RRw=xZQs7hmPoFC`n2@+y(eHqF=YBX;yKPgK0i@MP8&sm-(^T8#F<{$B$MY?pc=y zq+-h}WI31VQXZv~cTcSo&J<|gPpQ)P^n;c3_jP3=F#f#P>+wC!Q3SoN zA2UBs!6;bv$^qqz_N^!HxUjJGj)xEFXWiLEWdZQ3SvlVhr@(wU`xz40H4#Qv->%sw z5vbf20l|fd0BpPkLQnD1t~L|y_rNX+xFfgX)~izYTmN#_tBbpt+RgDaXHD>1qk#qL zARL2sx%>1So2pl*{2>*%V?Q6zm|%_IGX}&4PNh<0S{fBz9c>FC7tPz8Usqwh|E$&T z2jGy|uh@OXz7MoznTuLDyhT$emp-45HYtCv=W5p1O-dk4n;!b>DU`-%&{e^z`5377 zk&o2nLXk(0k`0}IgSL=J_7nC>GaD+?W`FQW4Bb zM(};S8cpB392`j-_mx{&qTa7J4-nvwhUEI0nalL|ITk;0TaJ1-Jvbvz%KQS@-geqI z5(h(g9wU(!^;V)m{63~hcfL_9y`QkgdU<>b7)!BW?gfbPx?J1mNV&hyZE&Zo zxi-!*;KTPM+5QUqjw1QwUJBj?zK!z9kQf=Yx2l{1%@ZxUT@kBb|b=f(@3FB8dzUtHO$xplD<7pgAY zt_$;wB3@GWvE%kz>y2i{?NUeA8GB=ccm^qEaFX?W!-U(ME3u=Mp`7KM_NV&Lzh8Bx zmG5sW&uesVi3wY#^tZZh$$H9@K^{n{T3VUy#S%Uyn{~PFVU4%F$1b(z6{F;H)rPGC zpYmj+k~&;6qQuY!3sbLe#_>)xHI@+ouSRRg+$xDYSzeoo2uCYR`U zsg5BL@zLO>vXt=lNK^Jr4KtzRlK2P!3->}F)wKpPiP%@wLEc}}i5u}!*5l`PT&+)@ zJ^iHPAedjy(nC-<2NghFxm}`htC6Fv@!E6v+>B;zL=-+s6uL{+*zsw{iG-k;9179V>4L3<4%fKqori90A%}>ywzqx~NhgshiB!u9PyYOn}^q>r9vU!P+r_Bx(s z{Iilp#?(TNbOlvZ(MCRp&SPNnH6cpVUQ?TG>Niz_Jc*H2lmh1-9eJmO*?kKu-0 zlV^*-96uqBF6~j?>&7|(&DOWaPLq@N_l@g`>jm$k^y@$LKyv8Ru9%$l^0PpmqDQQE zOe4NL0OkGOw#I#YnV5JLclfDv*`3cXOW0*e zl97PgGKI&%5z9H?&FJ9v1;nM+<+|^^_=h4;NQGn{r|R8$h&9~HT(Bs&5c*hJtlL+f zIlk#tw4X1E@>ZIAOzzeCw5WxOMa4en2HY((&3`{&(_(A9ZYPJ5Vb6P)_X)Xv#{9ea zld4MBqT^2I_s5i=wapQ}h)7h7G^Fl##cm!X&5LI1mDkw>W8h}GuSG-|FY|LQ?%;Bx zPd!WYUfx3GEbeK>(xX7!5mM%U034g~eIbPJDp@q|e#AJ37WaTnEk^UAML`Rlw!ZQe zm*m4x?IB^=7s6{gIR1ygOHLIX8uc^zeb6hjo*w}Ty;=t+xil@!F(SgJRcOD3u}YXOf53nvG9+!91J3dl#$* z>e-fk0s+(~r*>WVHQqO4!d~-pNH2Yc!d{q&MJveLaXkH^oEpmui);3EztEfT4Patc zgS5dOB6$6r?_$S>*G#$2qiz{*`~A86BTxc}3^H{?5owPp0|G$vKN|YqE*0r_?Lxi# zooPd|XUD+%!AL^HnAB%)OfAk8X&0QlT0NKAd|x*Q4lp{^Fk%?SQppzj3wA%!8Z%G~#ag6I1F zou@<>cw&f7>3cMrP(xGhqm_gY?YmP?VEm@;-#7TnsZ6!`vsXyHA)okwh6uObOWf4- z0KJi(0|XedQLrZ5)Scd78T zRxm!FZ{9_$HN=zY-%SPEjk+OI83Tbn+Zw5O`nT4I7Zq^qd_Q13qNsigJ9-BjT2+d%0s=Op zd@$?%U{WPsT3VS~(4|0`P7}ocVA5C|R^L_B^Y437F zhD&iDEo|;d=-)Y-J~JV&^tF1vp2)Qp2VHupDze&->GsW33vd+S)xIt%e_9*<)fNu~ zD2pZCb^Ck8g9zcgjmI*r_;vlFIAEgnO`dkMtN+Z4>PmM#OPgGQ#%@Kv_7 zb>9`wFIPMs-%XhX*aDn)dmEm~4V!L?Idu|lN9yxcJ%Ad*-z48XOYo%4%Gv3oM^f!4 zvNEMtV=-{%iz%>QDZN(@Ppsu&=uSGyaim(f#;W#5^@m1I+n3k@X?8wb`#Wv=i(B~p zT!(i3D)}pnAp0Jaw@xT8EP@$iQ;fu>G4g|rs^Q=T}LX{uhFHTCn1vNBe&m=h<(Ki^Q`X?IA8Aq zM^)6cQI{XD+^Uj=O+F$oARMX*`TLzn#=gWPE)^}7O60eW;mz~yiI_>MKyY{(_c-8L z)i$f7Ef`>EHs)tRl7%Qe>7RV2z6f68?Tk7oGM}&_M;xg#LB<1f?XoM+EnbyNe7Ky* z+Qyj~SFCl|FDFf};)1vbUxShlS2!r{sa62T78KJq73Ma&0W|J)oZ)blA%T2+1 zDb2j*_pp0{5Jhi*ltEWqS*H6z2&2AV`+@e|2ddIQ)nDQ8)$a%Gb5R=q1efx9nLJ<| zZZX@i1WC4d+~}U@`h4;%{<})2}9$IVOQU@Nb;zVtQh; zRcKsxoKr0-q5YBO%EQKRh9uT14exEn)TPi*fDFAf-5-+^nLK`+vtPs!gqdG5?CYr> zs4HR?P8s_m%$I#SJRh;ukyPFAQI*tSe3Z&!Ff}vzIq2*Dq(A(H@-piEJp@ffc7yS9 z>E>LY-p&n~?v&0}=lvOsAOY{*5pNJzEQ(((`8m}=#GVFhC=nv;rU*SOX(W6LLf9K+0TGHWKdr|LFYJAB}k*knM+tV;foNQx_kP;|c5n2{=dd91;a#!qDR zap7s}w;=KHDc5il9cVCobL9ak<+V?{hbkE)Mw`W9R*vpgo)UfilYf!e+^0A+SY-Q7;r?(X6pPv9+V0i82m}W2aCgkj;Qzh@X zB8d}{wHo*x<53DEI{w?9@ubdG^9%0zz8a1*nb6-M-F{%hN?P4em4a140fUGO_7pPe z$^qOC$NU|Uz+&;tK4-D^_bcIZ%=kj3I0&`>ZD6i;*sqvy6P($HwqehH+y{01AS8^DO$&o{>D0fvF zgAVjd;X;p|;o<=)RQ zz9cd7(a8IGL2kX*9OdU**B{HA0D>A7A*)0eayxA$ly3mk4S?t@Dhrs_j`@g`dO+Vh5l5xh7|9`NUfG3UK__d(wF z0%1Ni?YYpYy+2m^NvPyizRzR$au|1ug8I?H=d^t zH*UJxdYi7|A^iS+7r#eHEC0HM>=>8m2dMewTC%Iau}v3f{SS9m^}QUnx0z3`o zxJ{kp&a8f8G27TMpmoLKv7lv@Z%p;Zra!m>0ex1h!qw^CvxlMt>6Q?=Hh#Xb628CO zJ#=wpsqq2EQJr2eqwtHlm>PP5p5gI_w-!H^8x4eQYf{ zK$)p$fI z^rWH=RE|qts^9P*;*^jI5_o_*%CZOynfe%QT>_jg52gmTw9?7f`79!@D*hh6y1%Vv zETNfa#Ny<5KW$oRM*KOT+aTQMtw-_Iy)fAX6nmXyE?8u;@M-SpjMONFp5;z#dl!h`;GL-sgC71$@<^QeFJ`#HVc-hW5pF?;wY z8$!h8h{!fwrWrpV$@ZzA{Zp1J3zas2D&ctAAkFXttWyY1`cWLBT9 zDwAYZ4%lOj@f8^AkMSvSqpYAyBczN|%BL7~uTCgPQDY zhRu74uF_N_J?0DZdctL{p8lrX4-Y03MlbKe=uYj5lF6}^1o~vBjVon3*7j{%A45}N z;<0)QzwI5S-~0{@wW9@BoCx7#u(WkGemtRs>x+plV??aK&&bxyyFRIebh|ZqC2*gh zWl@|`KA6Phv@ZTdw|}xM=PgpDg;Zb_TL^=50ha56y~*jh;$W(g*7A|jI>tIPzNTFU zg4EAmvcXr!8gQfsOl1{Vy>f3GaN|Re+~a*D5qkO*L;4CWgu1eoS1Z_qoO$FTL{su3 zw#(Tab#F zu*2JVLcouv{X};XXZr@u(+cL|uv)RV;Cm>$o#qGXvkUXdt=^ zJ2ZOIBvC(>iO5g2yT8D|bHS#4mzpx~`>8lOgZK0vz*s&}4Aid(Kp!`GvQGE8 zzGay=uT~P@MCJHvLb5C4eY&z=uxH+%*lPn1K3hM+12IEj$eY^!r2s|?G3$TfQFmV>Bu7!0_{JIsH!3 z{dGIoo%P&raQH~>@LNB@%nswPHf+3}rQAwvL7e(r{H|9-C$9wMRM~c7z9jpkNg|Z# zUvL}kUGHbzxaCAe8frH6p}sV7gpZ~=5p7OBThlbTg@K;%Sg`OfB1$uTK2V&2I!+>? zy*z6YqGl~(9$(hy)-y!smbt6hmvTvwx%i#nV&g4T9qIxlbY37!8ZSfD`Du}1uxDTl zmmOB7d=d|NTQ^0%O56JtOL7~K#f#6tUmvd25$UYfh8$C(#S$UQ z1zlXS@W*}enkH>DHCM>$Ur`t)leP17$loLC5LU;2ml(Rz9|Q>dD)$0&pO`>v&DIJ_AR8=*WAS(2wrd(yS)wze$F} zbNY5;+i|GwRMJevY%GF-3Q?bV7t6ZAo$}cVN(tRO^x&37i4`Iq^%y?9;I;ED0O)T=uUT$A+6Zv7>Yf0w}9;Zr&S1Bt@ljKYV z!h8LL)(lFngT@A&UO&2ezmhfOn1cS4%3J^%!(iSw;o97{1QZtQ-n`K`k;bQsSO`1L z$77T244~JeeeJuYL?vP$>NE$kri#2`p~fdEljCvXY@rnWG?g_FHWI2_nvYx^s zXo+IvRYHWaQfdjRdKt#EeC`FMP>`yCmQ)J_a>sw6pU@sABQo`GpNgG6F@P9fGTkV!E2K)ea{qmz={6uFHoZNopD6v@Fh&(3y+^fjJ_c!s!YV$O=3>yt zq!RA#Tq>`wh7Gr=_gFr37mkdX-u7AvlRiS6G{RiL5zN%3*z$uF@K-GX3F+kN2{piB z{duT2PrLE0`#VPdJ6nGA${Ff>aE6beH=07r;>dpwAU{efMg@&$$=QQ+E#`T{L`)*C z9&Q;#*52U^+1H*13IVd)XglYg#|$*Gs-=d)wvv7Am&Wl+UE5F}8%C7ad+l`sTy381 z<>>KMyg1UdLTze(YC0@S>S8w_UD%>lBLkQm73>b{(0ADg#_(ZKOs4s=QxG9!{ZBZ2 zK_yz(zbK=~#TQn)mZkLAkWT2d&X0M>k7wMaN@_;Keca_Lz|fp*lV}JEa@Gr19Auk` zH8~fb>oeX@^5|Da)1aAiba)+#G8LG+5njx*!y{m;%J&Ph{iuiZa22Kf`4Z+hpF{7V z!@0(+nk3ZNJj7D;qEfpoMTAd`{`GM{gh#3Wq~Z3FyFcRUhO9(b`il&yE+`uV{^L!#ul-Q119(*0afBwi*nY9S3iux^GLF{Z~4AY-ENpcV34JJwT3)cnxQH z9ATCrMg(X_?$P8wZz*}~A;bH9a$P!zS}zv;@QkZ{Ugq~;CA=bM{Me2xIe*KK4Xl*W zuEC0W+8~ZEWkm95as6#NfSt{+R`#`zYAIaEs>o`Da2P*fdP)Pb0_9>2>6?9Tsl~+5 zA)~rqXcUQu>U}2s5>VmJLS>7ni*+3YPT!kTc9xhM{mYO%jfkWEuTlRTEFMAj&j1zp z{Rlq;#Tp;KgBcl=!h?FFe^&(~>8Zx}ZhMzcQB&I7Y%61*UI)LraTz>xNlbia_gLrp;0^UrK%8)5# z#3y@e8Tl2Q9f`yGS>0nkx4;q_OWXV~4GmmE&S9bWf_KMt_}&`5zz^X1&l`PyJ2j8Y zXI-wQ^gGO?odn@=!QqSXtcWH@v-u-#@_to3Ck%nz1SE^Yr|gis_7G?8;hJ#Z?Y{;p zwIJ6GX0G<-;fj28*woTnvBo#&`HNHj%hTX=LOUgXEIiDvguxMXNOL__Y^vL4%x@@8 zrr+w}E}=-z2hhmUGk5`-q(mJ^libv3FNXqjrMchG4_0;jS1{O}`x`0U`)}L}%86U$ zN~Ropgx(yb2q?6_yMd(;9rP#OYU%60m?Kf~NR{=`UNyFT+wZmNAzpAstA{5$ybuqC zM=}J>n2qTd_UG8|Tc3AiL|`Ikd42;P9*yN&kVK>rAXuGOry!WDYmY1mDYM>;eT^w3 z3iL*mQQ(Ad`Hk``IIqe{(1d;n;n?3U*!F(%;XBo)55gdMb067$!sVY6o0unHjf-{)ydX`n!eT zSx?mc?6)%8KU8I(&wQWOjiCwxDk1_-JN+!Ec|1Jv{$7*t9)-{1!64}X;h)D#kl5JK zinILHTD5xL#_+bTUyIs*Rmm_ACn$`yfGPK$YArq9wW>PW!esSep4j+$Z|UbfZ_RE%AK?ZNNq5yYuoa76;eO7OM}<1|3-1qb&8CsuPYJjq zUms%-Y2waFW97-;rVxwL`m@ksD36B(jBvl|r;FV{m2*P~SgF)?afy6i3*CIZz!!W6 zSJH|CSWuCm#AC ze*~(%0Ky02!};gq&+_D)zV3xrw489=tR9hAu)gD!*qheNXh$3)>=qxj7S0L(Ys;{; zl>2W*`G@&{r%+6n`fOy&aP@w0(|u>ytC&1km^Z1C6!EU<_jq}Fryu!2vZZnp zQ6FY|{Dj(wfTTGXvhONtOgDOSx)#7w-VW)PT@DWlq?uksQDDIbaJZw{^4;Y?ZG9-q zlU6>yQp{_Uc)z=WDeP70NkQnrDOTlf`CX&%>TPI(5Zk-PRo09fr$7Dn*jYO45Q=;m z^!?ecH5%}CL43q{nSlxv^W!1j_dHhfK$~54Y%5SM^--PSg@G#SD$;Q*S|98w<**Kh zIyLwq<4%y+E{yU{GrHNgY7H7O=N3D!XPaJ5!M=4VT~klBiZOmkn1Dp~GeO#AjdB+e z6O8zRAN58WS88Q+0x}qo!Ja}MzhnM=V$j@ketsJs75iuY9T=CoV7R;A@QY0$s;Hq) zU?E4-`+=>r+PC41a+O?W{3C82cbAEdIag;L+Xg^Y^ovacRd$KH9(PJMU*; z1^jt&*U~rKeTjprQZ+tJT0r6IbJIZYOL2W5pf~sm_4!iYk*O0a#~H*&d?f|)@RpBH z?Nk(K;qPlNeslE;%*2J_VSFiaRIbwbjG%3?u&aDT zd&6k2Dx^X1GXJ2|cVw6exm!Q>vt)ne>CFhgj)f_7?|LQXs`xwu1^lI6{;;|07T0a* zB7IYw9Uv2ed2@DhYNydmK#nP3&(Qvb0aLS%3RL&OGp}at=xYVQjD2 zQ6P2pO6fqCy9XxME|l1Q_H_>$I;|5d(i~W)Xq|#tb6r*1as;Uw^9EZC(j%QhTkhE7*fcD<=zlQly+ub|c`qUuWUMRsRb_yLy^A8fgfZ)4Wqjab0bKV-2pxc**pc4 z$R5ZO`A)s|C_Vq!!GQ4JVUO3hlm(X#d&S*ZjJg&oJUxOzYh0adVM|)wJkDGfxCM)+lC|0;i)a{%8 zh%6#wd+x2`*%P9t8Pqtq?`2PIj z2>bH>BM21S&}_l^6dX=Be$BkMYR6Yc3EuLfaAaw}>nacE+9Y95_mXHecv|_JVR#m) zYV`YpMYMC~fIi@ty$^&0jQcp$A%o>Z)$gbACBdj0xO_*b)9K4o?0$6 zp&rMBA+b}Wrfuhsr+u3+G0`I`T@?4|jWe*CY4+{S&K&Ds%(UDus}VDa{S?;v*0D;& zxMe_q{%jiOgDMk;%N)L>YhbJ&UUXVzgG2vFQnj1EPV2s>W8XAQZnT1a<+*iy>D&_d zMJ$>6puhDk-5C^%{bE2@_IDP2C7Xpn+|OL}S$& z`7OB#=)DJ6xNv1(N)L5R@-}tn5oU5c;xRVqPOfR@_uSuCY6N9goP+#1!cb(|cWS4H z9~}XvAB9-m)1@73!kT6^X3JL>`z#BqAHGetqUV)SAHZlqXu@@?ubNZRVM{NK9(;^= z2!Dzu9t4p0jsrn(Y`2ryz@U44QpMwHVP)m^5y=d79SVAU?HA7W%cJ?Id89NHr+p`B zwe66ZC9eqVj7D?^>rkc8_qr%ghOhp;DJDy-SqvSmvVxkF^?m|8BsP`_pkFdBeAd=S$7!{DXZC*Pq%X-joat;=lXU znzrssUaN|{3*5en1ZR|4pW@EPs5Z*#DIKZ(Vo8?n;$F3Y0+3qf;n=>H*Flx9eCM_C z8$|{$pjzkV*?^`Ys!dLNdA@H15GI`v;^tyPhS{XcaQ=!$Ds$|4PHdmZx4~33N9Z{k z^IBQCA4Eg$g#;jU97Xk9e567mVJ*Mv-W^`uT6hk?|A|o_mG|JwQ_*K8>t&aqQ?7|L z<>TYldo(V;rk2DhS;r^S?8``tIYSP*Kb_@*G~Zj1I_h7f4z%Y;VYVrgO7HB7>tWxZ z@ZcF^J!U2qf!+DZLFW@Ef|Nd5B$a-NPhCn)eJ%F;&jCs)7v1U{>>=X2L<#xc7v6NC zMp?+7uY)%J@hDiDs(%dLkA`GFP-OPa%fH?9=+(#9KJT5NRc;p#X}*z(+6&h9^ORkz z=wn`>fo%}du6xG<9x-Kmz_iirx7;zU?6Ll9s~mA-1gB3WLzxLg+mN0eQyl-1bY0tu zYD@H&$l*~$Knap0y$OP%AUXNb0T|uGlit$5QaM&QK2(OJ5V1$mqWOo? z87qE2XBjNfIn|ID4f|NVWRUdC;SDM0_Xtt<=^e}xcVB6sM>~KmiB8J=+Jmp56nA?z z$cKoouOKn>p;7uF$---{I(s8o5vMEUr4?}JyZaT&F88Dtf195DKF8s@XZZ%y1kC>8 zbid>nYxehg7tBPXiGqFN*GmoaJwA7Qtk?y+riMFO7a9WP~D0BuU}i+{xl>fij z&-0$&8KQfLKm~m#{MuMAxRL{4-fAttryD*Fb7BZUi@Mz@{6!zgZW_i8#ClUEP7S?e zRQ)`fSS2ak9Ktl>G>l>3DU1G?F659K>4g=*O)EX3MVB3$3F&O*-|PoxxBN}`^x_*^ zh&#sG+e%uj^aT0XS7_(>aB89qz-q?t4afzWi!01_AzDFSv=7PLuABdJ^77amPA4H{ z)a!G-tmvstPvp9}`MrN3Zu{l=ds4h2^65rwNu|a_Jz+9jUF5cA-W)Ur>El~N{7_m5 z<$@SI$G;8m8>QM8n+oq?ti!Z*ls@J~MbQ@#SrnC!x+K2a-6_?MWDH8BD%5EIZ9?l8 z3FcL0+-Nued@@qLl1jcuH3lvMpNEmK_dlAXaOzdS1CQu*kZUHLf2DVMM)Xs!O8ZG2>q5-}$d1bPj6=SaK+%KM%wyXkU@!)6Vpb zTNEQ*^U^^F!P%3{j<{d@v`V)7w!w*E@ZBe`aW?Z1fSf*YqG!D~>lCPhkM;NQ@f?ww zE9gF`Pplal`h7*NO#S%9Iv>os=b@dckbCHe#niTp-1TsiWaw%f_esp?M4ryA)n@oF z>@VKiuVY>7H*UyJloBHp9j>iesV6hRwp?hM57Cmaj3px0+b08TupTdgifUz#rQ&2x zy?#G@sQUw-VDeNL|7hYsQiV9I$WWTL3avd+WFK=8d1m%WjpSHr{%RjoL-CiV{Eqre zifcrDmdR{)YPSXZ9IUDQPr3|zLx6O7TbJJVFO2;j1@6a&wbbzZsfET?6GU?i%iPy* zUF-9Cpc%P`v7Gxff7`Plr?dIM68I=DfI`5CwE=*^KPGbiocKKlKkZq-?BzMxH;(QY z7ao6KhdMk$mSuHG826T!0+xA@suXy3}KBI&4&Csfy@vwYPtB31`-mW4EMN<<({p9-P@f_hGK zBD#EVs!`3Xf7^T5en#_na;chXKN{zl9DWc7xwFJR<)d5;hW;EA&kV#(d`djKEVe{$T-H#wvNzuIW zQ@Cd)c%8oV`gNoF@Y>^jr3b<3rcx(O{FxYX$-2+x9(k-fdnsYddNGR6!(Ko4KLP2G z0saG#M#WOMpvjxL!kkHdy7b|#o{qQ)%AO+HOzNL+K!TBh&*BZNX1@ML8VY};h9E}Y zhWtv0dgiRSCAZ#fi|gloVfsS)0=vM3CnvrK%>itYOufI0yM(ryDHa$1Mi zG8+e4yWKT=pAi`^I>@}FeV|;}ddi94ujlu^p_y?dAFcR|4VlfDg`HFW8@}TGK^aA< zydx8gLpw)$Z~;6XSW4-574$49c*|gDtvlBrX)lpW7WMqJ)qS$zm!m%3!S_{xmws%S zZUgnL7fTEqP#Y_=))-X=8{FJEHH39$xiGtE#(cQHiPmhz*B6X6LA9>s&&@wNtr9o7 zatEUCRjOao<@`};0gC~Axy?I7E=h9@tYh}@#hq@Ay8P(KeMimV>E;zA;0OCASP4qG z_inJDs?p2IKBi&LWM|<YVJONx(g@9_Eq20lBWoi z+(LhKXvU_QOeG3zFwQGJ!G_ucij_*Dngt7#VJ7^nqjn(tDRM1+_(+lxsD5uO<0rO% zFJiGI=XRAP`2eCU`4f2@6uyxfPU!%sezlLYU@H!C(@?D4FDCouHvA4A`bQdny5*WR z>r-KEr$R=vaX$gNeB82p?Ow0jQ}M4Ho_s|&d%9Kh6T=(KR~J82N%7b6y4wsZ#_4QO z$%XU3=vzZ>(55pbr0L+@t05r1|s|+B5rw9wpsc zl6hD2Qp~72_B0h>^qC*O!;UbNMaxfpuc`2mZ{{ciF2fbjM;3Fs4ULsCvll@PV_!ZDGsC5m_JOew&h{j%u3$Ewm{VF_mx`X6h*NlU!>7>Aj(UORt z#Y+M)*Lo|Qw2@N`Au7|o7=jl8@-y=k2~?m;`mbJ0*WV61VPRo#4o8SRJl89EaeCQX z`}0ck%bq8qH~2gb2R&W`Y%3a|7vHVgLDk0CaoiH69q&z~^}>fvWN>)pbGGLa?s&Vj zTf$FK_*&kH!yx`C7f5ecV%tCRB4_vT#hcOFisaE)Fx&hYX%b8t<#Bf{j53kID_UB}6cyn)di9b^deQ zXW|$1A8-aACxxmitO+wjm=B~LR{52Lp&-?LmA%=3b_e`{m*soy`4ugDh~aM?)$?3= zy`4*v^GEF$ioxK^jx)`8pP8nR`dQSe?iNX#)CHeubKajb~|(iibBEcLXTwQHJu}&;VfPr2 zR7L#e8k)`J@+Ce4tYd3R(7c1)by7Fn&1zioG-})XTLb_S6HDx0SkF~}J?d8Sr8ZA` zZAknsK}h)EebtNYmeboNz27-EW~_QPF3Z&-q9Pc?#;D~*CDSJ^uu zL}+TT)oXMh9V~alMz(LF5EohT+7l0&+oY+NvPGGlnf#j9x9Ur%wXn=Z^NJnSw zI#1Mw(&OjD|8WfHG1jUQY9!0fV*yBIfAaQUR6$g`p|4|b$x7yZd$*4zlpb*Ot8Xv< zW>T}@&MFqg-)OoaQP_Rw|n1@$Z zfsifz7tB6oEmFM`d5fLgk4qAnA2d0!^X0z5$5YKaGkN)8zPKgXv>gke)A1{N# zTzpioSLax_-14&SlB+<>t@)L}0}~sXOb2zM)W_$>z>?@v;JH0~D)n;F>E!~o$ zqH*dgbP%92a%{ijcr{*h?0=`FWZbftfFwUaNB!_N-kLZQ`!Kyy$UX&@-)QM|Iz{QZ z+Mh`9tI-jCog~|3f}!|UG+IC{H+5sRuYm{l2_e`soe>mTYT6jKvSER!Iz%eJ|Fn<# zS?B!`JKWFx^ioD>TNz&v(y?}bGJBq42GS3HvFGlO<4J$2DA+{9Japib8!Q-`%!RxG zvfkxskPL2gF~FY40Tr;fJ72y6{(6csMc(dcr3BMedvt#f=g*7m$U*AuCr9?$Gk5n9y*>pHdxrW0 z={8RT9xqr~Ysir&NbCEt^sdeJQC@AtlbwB-O&n{HE^36hOlBMx2nyOoBBZ0qYM*V9 zioe{zNd9l;Dr3DJLY;W2Z|^u8QobMU1=cX`Ja#_jp2ljuLsY!<)`fq7Qgj(RrhE-KQb!Coa8pC7&&% zRiL1S_a0{TNa_e6TyQxY$&Xr~`CnE!)!(0Tse)?{(;)Lq6))jXmwSE-7py(&$N%~5 zDZ;x~;Q=w$Ps}i}HNP%Sz-;>zy+!+pFHIgx;%z1ytiK*ghQewI?^!~swU^BYMe_SP zP1chTOb>QlK+Lq!uOzLTtEmsFx~Mw&*3_stZ>JTZ>uXn(Cr_@<#jeH^@x9wI0Cp4Uzkrao#zSkZ_%hA|vxOewnJ7#EBbt zwycN()3%bne?}Za?IJXKu%}NKYQ91W7osKZQ0oLJ7^Pe~(DnaOBvY^yDw~n%eF=9X zUvPgZuv2&#w^fK`kMuL2ju3M=KJk}1@_SIVb$!5v%EqJB^4Vo6@t%H3GQ-#raT27V zGi?dV2a#S-IC92jg#dfrUXAi(-qd6`_Pn$|AjkrOQ7(y$ZXVNg^b56M-{a#MZ5}(vh;~v}ah_2Z4nc_2WfK=F6U(fSTg<_t!-{ax)z1M-(({K}d zqZovf>l&8v2*^PkHOf+jMXgTR!WCUW4SeoDwHRL`e~S04Ui;ukU}9(TUJU<&^8IGf z?H^ENUY~<>Uppuew)wsyJRAyNDIkb1^gP3|ms@<6ZtPW!AdcpruK>^BT7x>I2(wfa zcBFZV<=P9(e~;S0;}Cy~is15N_Y5bz~X)QZic(;F!804-5B zghV}lL-Mp(#dY_v zz?CBe{74#cTS>iGw62T^)kRaK12M%t|lOG;UkC zB(SkQkd#d6)>{<9hf41m0e`058#wDDI|Rm)!Ov7+0eLC>w%0^1X24^bhdu@9QdFN) ztOu6OQvlrC_2pEyuw8%S&P)5O(~(KDpUPd<(!F&A$7?TQVe0mQlTc??V#U;9CJ4a} z6bwLsQQ;TSQxWf>Yrr`Eee6y%^X8BAVi%oNE-BZB9P2`B%JQO@PWESAL@xJb%a^{H zci}xq_DEWPkX7Bj&KCUEZh;(A8Td>GX>7X(cLfo{`bHvj=sASRA<|MSYsFXlH8rV@<&qA4`tv zkEC1q?zT#UUltgmh0r@?+K{b7YQq{fKq@V z7ZDoIvggkYC3VH9Yvux%qY#t88L-mj@c4vu|Fxf0x)!dH_P+oW!*p@s{L zz%18&Me3GI&G^{a@sB@zf+G7HsL@A;@C25|Nvf_=jxZtJ`E9f6Jonb81WhM9n|hM@ zT2CYvZ@DiAV_3jHYXNG( z-?~Cl(q10*Ctz<}kRD$g{R3Njoz@_Ud)X;%)|G$l{YLc5eBjL2`y=Aq7zIXRs+`Rv z_G}xc)hhG9Ij4Y%jmde%uM^|xdfS7dw_^=2HDiT0l4xlr2?lBVZSI=|dk4lD>=-K5-~ zll(iq(1oqG#B(1N`^`?xc}}+ndPI(|eva1Z1NC0;Carw}PazRtUK92-HDD(^j7Fc6~pGTEkq4@-fUA@`NL$`z`mes2{|_lRObIhnb#Tgjhvd!J%F4hnG5&>aK)7L9bjm;Zpsw+d3|{7u|$q&%m0PdYv{oiMD6 z&xvlwCi>*2Llj5ZeH|4N>ZkMDV}992LJJlIGZscHNgm7auz3i$(o`)~g{rd`xc- zDA%EY!r1+d+f#;u(Yvy-zJ)|}kxwa|Q@%XA4i?ljqZqiGZVq(Vwta1(xPm#2@8|t; zP~G#)Pq!O^0yXg_c!-yrQy`kFYC12MC4&xYTS3T1%l983>)GKXZcH^dE1i_y{-n22 zK{PFrk7Hx$z!zO!@pnw7;TpuS0iDZtvf)_bN&GVodYOsUvX^on0m~)c$a{CVcyJCf zx0uOZ6vt*#2!*ZEjozIp&AnpfJA43b&Nlo)7+dA9Q0J77xj`(`>Fp#jor!yD#qPC! zIWKnY+w-5z0B?X^tdj8WQn>d;&&bgv|7CKg-T-Rq8X=r7D&g*3}X3#bVr(3sxUqeX3!d zagZ8gCN@bzPZIlC2{Q(U?yJ%2 z8kuLe>NFBNy=~Pr#drCx>@h*p*#)`!u*=6tjuTM#*8cG`_}3w=@_#TvQdkoTlBE&KpmDQb{KB=kR0VWVjR)+MtI!3=oN| zQk*G`fX4WwJx-&)LF4*Z1k1UnfpQ~WkdS0R+%b!$lrN>_o%SVOs2)H0Z&coUsS7Xt z7CvW&6`()B#r%zW<54Z*0~93KO-%!+%&uY2!>c9P)8W{61@P<)@BQ$JclcU`>#$bu zS8zODD(fCj{3Xl8V|wo=P_}&7JI9;_FSw)A^uPHE4koefx_y>&h-_)kwmhr=p(`KV z`m>$Yul(-bzHSHl$tLC_5xrZ<4(8|U!{7H4jw=4MV<9=@>%|1-LJfD(yAK`iJoJ6DY#7wN6aXe9gBFp6G-Ez2wn zBPDwqQY+qr22Nah8i1)D-j{uqlnTQ1yy9V(pw{GfAK_3G&p(cF?l;$>HbR{{@^+Ry z8>$oUz%3F}S}K2kB&$9i08>az=ej?RFLEr3JrIA*pxN$Kaa-o#hhzx?e)-p(IQuy3 zB7ZFmELDBg3D*aMdsSA~6!Pf=_2RLqVtkI(C%-xQk8NyWNUp5^Ml}fC#!m(kSpjDF zaU!l2IqyZ~w0ZK!!z))UECZBLpE37b5AdxI%?LDy1Xgim4G9TP(n|ld(Q%h{4Z7wJO8k#%j-~4~%@&kME*CQEK7bzo&C(hUSIl z#H)9@)5D;!%zWg@4EUQJPzcp+|AWvGUiF0l7?LiQLIO38>s~Z=R~k_C|9Y2@>+x(# zw!v;l^>ks7OR|HSlmIKV{iqX5UEU6+H2lF>(rSa{GCo+?Z@VVDhhB>cOFJPr4N{iL zJ`QLfs?$X1zFg(C^}ZAP(eG!o9aiR8hmH`1#6~v`a1P3rgs( zC1xq9a|G~2RiB|G{uJNN=k-%|Tc@|6p*M1)9jZ@4(gnX~qzkAqd|;~)?@6g}SUH&J zknx1qe>FVVTMG6puhiTRUXCp6 z{mM!i>)Z=)GUw}kG3z703xp^WbD=1DUN$QMI|*-uT?`AcjCOxTg~c_JEyHK_Ho}-) zwhzo91(=nB6>;3h&lmquwidXC7bLi~v>mmf2CMs{U3FP6+W0iq!=Z~5W3n`X2*2q! z&xqv3ww6e=(009CZ)+D3ak$bW(SDq6_4akgTCqN6PwCuPn2?O0E`#{j(k;eN-MAsj zf8XyX7dB26(UrJHRlN^{kEVYsE{tEq3mQ?9|e0pWyiI4-s9!q`| zPhZHuelN|#s=ne9UJLI;+Iku*RB_YCm}5hzS@fsTF%t4Ra9;JQ&)*U`JP0C$Xv3jqB^3U&B+zUQrFPf{g@89?r=foAE^(t9EQkps0old54(ZMfH$$C6N z{s8AA_UZi@>TQ=2pSGp&Gn0}pRL1VZo=pwqNg-^smSD*Lg8|lWgaboswKyD0Ie*yD z&)_?J&55G3VfU)g+Vr31`MNys!xtp}$PZ8iO8G|{l`(^Dl>}SD=d|jXp+q{NGW?ALXWxU*u-N#|5L#*uOq@G`9 zG0>aT;R>3|^FW!HBRcdk_ zynjnc{b*~IX@YS++nT2WJjNOLcdkAU-Rs8GP8_)dD3ssVSe&yAM3hu4PUH}0S!cR@ zbdHw%7*U;keIUm*i|6tyFV5phwoE)kHXInwKjHc!hf}d{O}Uhz$W7-{tSKgA8b>X&Pu7&t#8e zu|B%#v(+X2`8mvgqH|bGLRms{BrZBte))%GumVWYGwZei_cXr3Gk2Mc*vPLNr&||h zdho$WQlFWQ!Lf$7ZDq%fwXc>=8gbwStIs&zLVF{-#N&&)Lba-3_gt@7W?hoxv+Ii} zIR%%n*9vI-j#NRto$reZtVlAz-l=UmbPxXNGOQ=vhi@ZA-67O`Hs z!tBEpQZS~_dIpU}WB0*&Feh5P*=X9GA;uXjMRo^JexHw@=dS}!sm(tQ-0WS1A~hP% z6!;sX{hamfL)J&bRZ=vO9sSp-DSnLq1I^%Zf1jo*RW;I!&A8TnI;e*;87i5bA|J0y3fK%~^mnT;CrAN`;?^ z=&mTQ<`RY59c?)eg6c&Hf5w+QdMmpwuJdD6Wj(l zLdNZ36~>{-bNg8DUn(Bwymo%4>pN*0U82+K6}rsp84XRA^!wGgo}T75Fn1OFo)ABH zy_eAzln~dvh)Y2)&R>^aM`MMMEe5JtL-C=&kyXLTkYkf z=?R1`0oKu^Y6{)4k>k2Az^9?W4nW4iV@U94VX*9Sr-7n}n-9CTTW%HD}P?G^9`kVj||bC+4L2UNMUFv0Yv zqr1l)0r^s_-tTsmHE_X|?< z_x0l*KlVNg8GFEMNn5@sX0p5sPlNz-$HFd)SHG6 z$KlCYi>CPpxOw&LW*g(ChFRx6XGaUPufgV2zYkOTtUYUaK zujwI@53Ydk4ynu=b?B?Oxx+~1&hdLjnpx*u#*IT|9sddAp8UfYQKn5dnDdktq@X>y z+b?KTS~vC%@P;^j^22w+TcE>q0aRg$;2O%oYT$Y%>eOyO5k;1vy|w4CI)yZJDh#O5 z29n?9>QA`$dn07Nc@FkGJfoj|Cglmb+x(*pIebLF5UZpOMkwKf)aHWu(_F9(K3OIf z^^dw5aqZ$NN@R$@VbeT6G=O z3{=kYeRv1`an*k>F{^F>891`QSwiu_BrC{8esNb+F5am_8D$FtIzj9lQ}KtxEnOSU z6UHfJ7c4lgbQ8Vu^$pfmycFM!SzUih@K9Ay>O4xms2$CH^ltK8Luvu2WAVw+R$7D) zVtShwUj+kqFPNe=ahK&Qk0ql5So@L5j@g|rNLL{t`|kR4Nc;jrUaTj*->)OE`C=oJ z*?h>EPkF0H?4yOr7v_+Mxo+KW%M?6D${i)5v?w?lY6)8S)(-3&c3#EuITeQnj|gJA z!$i3%LPBrccM==+%4}DK;bpGII)?%oe7ZyN?g1B>JsIj?nFZ_eCTcGhW^aCi*kE^U zQu&T4ym}hbpQ^}W{>ZfYl5x{qLlVpeR08%n0kC@SOT8o@k&TC`pr$`?Qy6+EL!K^8 zmUwmC*v(Wh3a%p%@H@KaE|21b}dOUOuXH zEHCW#H7VC?=c;Veo1;J95TQrx4qrLQG&zcC0R+dem`TGZWUSfM?f!^P2Qu+$q)NzdKs zN9fmPKAt3?m=3IbG+-S3^D~?GzK0BRh@z*x-(mNC+J$}IY=xfGL&yOSOl-td-S=Ba z1ZZR7-^-DClBch@!p*_Xr3swxKn9+qPL7@LyiYo`|370(|e% z{T)JEdWS=msb#?hQgbFT-!-G5RVFS*-xc~^JnP7(XWZ-Udb{86+KR@l`=}k@fjg2q zyc{{xM3r_POQa)NQJTRTUA1q26jJZ%Tb#$Y@%@?YZ{y83^zXHEyvLSeCuCxCan16* z33NG(7d9gYKDIIt`odRn#b{7=k6|c;wA;eEf8Cppey+da^R z*3@jWiOP52+v)Gp&gEyiiB)CYoLYaU*`S74+xE9R+Fz79G0a6#!sloHTtCdK^-pu| z0N8%t2OzX}FixaBX?}RGfsl9&f+sW{0vcmeF{LkMewD`qQu*^;ya38B>%ZWXLQ~?) z+~H;bdOq7c?`MQEuv9O=O+#|#gJ(`5_RK410nP0fvNyB)(i3B&z9o1-$iQhH)o`RC?7U|q zzLN+C2TU>ZcWJ>X^O@SkMACKT!KjH_5sT|r+S7UiVUtw48wt?(ao%UBwVYzGv4}R@ z-1lg*yC)O7Q^B4CQ z?^Q~15cb6|ns#Tey*b}by4@H?IMRX!Ux|gZwZDc%Z*MaB*nhBOGO_&z5@!M8j)QTs z@5)Vltz$x*+NM}b?F}sn2J4u5Q7uB`r(f;fuGIB?M>~6M>V6}o@an*0ROw6-iiz*a z#cxW}NxI&|eHlcOx9q$pDYXmLH)6S5slq>#0o(`amZ+2JO0Hnk-)T*My9~DbbR))z z^m{m8zG`DN@zIJ+p5s^pB%TP_&2jVLyf2yiAr8M~Rhbuq9Q|OfqO_3R!QV6Su!Spd zN6*oPvszd&Lf~@0)u36m#0hlYJ?$N+qBkxTHDtlsemXbi$5mAH{xhJ1Et6{cppJFU z=MU&79^Y%1Ul+5BfI@(10osMn)tXPJK)!_sXB!Vliy1fGvQvzW{@CFJ(qk|#QEH$yRrpm9r@gTp9 z(PVFvkR*{fX1Dw-kI`$q$@Y<*7&x7Z(A7I#b^e!KP@(%<4)x$|WR=BX>NqJ9DmFQ_ z0l8y<+<(6w)r77D_A@X!)TrSV0nNEkq(b)U>a@AXtDh^h0L0_ug{!Z&#sTQ|n+(VX zw@!uOjEk$M)JHFbqnDmpShiZ08*n1e`OLKEyuxbc8;R94Ak|Y5!J^>t4!5zulOg1 z_NMBe)5V0Us^j>MEoZr@ZSf}$IoqX=)SI*e)3;X@Rtr9hEcCMv$9Xi=QpSI>z zHNbTXh8q-ed!~fMtXr8a8RoCQ`UxNbhGo_6V2Uow^XQdA|&)1MJ>WFz)Z;q(w@^B%BI zg(To|eed4_d$6S%rsf=VJ9KOxk?`$dR9k~H`dI* z>sILx>=9+)gS?uKv%aJ;wiO|0V5mOme$jJ~Wd1vK%mQu2R-)yKlgW%CX5Jx~eo#DA zWCc7GE(6ibPL|VZQi+%QkMg+b=g{-dANvPML({xo*TM1;+1BILTd~G&ho(G3zhq?( zSdK|YF<2qV_<6szO=4jHSHwf(>)T5GhKMEBx;nLz?q}2SBF}rGMqLz3fHJ~nuCWac z>1-}?aHd%Lbvu6tAo1Ye_1)0axSJy$8|-zve+sHoTxlRz~7Gh2&5^%i+Pu-RKk zsoppeZH&EnORoCzcz=51=_en8_?6C(Mj_90>&W8#CV=y;oriWVBG?=F&(gItD#=o? zF(1c^Qrw1?)y~zKZ^FCvtvlfoy&ype^9&RrgnbnP6bVz5R1gGX{!9igI9jeTbl>Ql z!G{s2;13bZ7{~9+G|s>6D}7$g*p^MFi$6vMAn?$@HCqL3;{Yo}i0)89KP{%bi&oPp zf2)Ika!dQ0+M%^Vw`9aFaag>rkPU0@sZeAK7OI1O80A+1P;UAR{N2qhhDX;+r0_|efA!oUS?m@@+e>5;Gd7?(mZqUV_6G5U7PtHei^J*M4((5eU%Q{e(jhm$PJWs&jzsn`DcAH zI(oF2u@}Ur%%nh2hzw)N_owYd_=7wJY}@-O=xZNH)kBYisIooRm3hdn+Bzpw7!{K7 zfL{@RLk@sr5Hf0a_R+Avht2P&JKoBX6OQ*3M)QTD?rWom73x2Midv9#5{W%lXdNF8 ze2j+{3!g5`l9%LQ{&Y_uK1Eo)eQz;fIWJhwDI?3@p>RtN9vp}tTEu?VkWlg{iCCBV zaGwjP4fR~8Qw%O+wN!(5)T(B@*=`MR;tBdWNvO4aM;&ecIuRr^Q$v2R?-SVnZ+0r) zhCS)mq_2f_d2y|r2gkH<@8;%UUe6iwJ)xk`-Dsf9>+1YkH@E$ogY0P!Z*(J{Y(1u1 zdWjz)nI%H%>7;B}#ICGH@-SvC7y~|x-0j@D4qf|OxyEm^`quQ4xJ8PB49x97!O*V) zwc^T-+~6l*`MPJe!#)vB z-@M7`_yNJtPsV)ScI#nwR5khd*$$l< z6rI3m%aeQPh9|Cx!s7{)*kX~7_35yxFR%Ezw2QQ{2rocSkh%FecF?7|nrhftsCm2L zRXB{#s@_I`NRaR-B(&~;)2vW&9(}vn@pO><3`!8MT9-a^C&&~WojeFno&LBhTV|hmx9mpe{%}_poXi(66zcF(>2AVpef9*iL|F@-Ubs~N^ zPIY*tHo&u5EVI*##r;yO>GoS2f3>~2`>2Hkr&F$jRwoHl1QKoT@0Cm50C!#5lt@wP zlMF7tHRF&kO~i;7_!+$)hGTom#kmx}Ulmt7<4ijDA6i5PYzFrnmh6Vt{MN{N9duv} zax&*1M2y8}BHY~iGD|98q71vxQ$4d5cq%1~X;R(OPeRuvfDqiaD(%e=2B`99zwMh} zi6TWD2d{P^Z9~Zmj4R2^hg*1_D!JK8}0h+%7RU>5_V$ZS+wakC&aqe&w$l=WZpM zFol0i+w>iIpBGW2!J+sOmK4KHc!;PwN77Z&1igri!_bSe*P}RdB*wqD-`_fj+?uz1GDz8 zZl+81bfd|{6HOVMouTO%9~2E6UCGkM@9-@cHeg3AcR$!;wk-l->?$?842r_q^s$dt z_;x^#!Xr*k>T!=E%mP=hTIg`k5Hz%Axo?y7?5@TMS7Po+_imZ$*Q5E(O;}utIy(%Z z#bh;8Uxx6B&b6@hUyb{k_i(+G@;xhqE@2_|RzMTYxS9H7!&mT?=yQkq_6@tGhVfWm z$mx^W&eVmZTweHnEZ{sxhk@cwLu!YMR7Yq=X!nhVHJGjSmYvEv1f@D1S+07st>fhf zBnsr$?Zj3N{GJCl!JBEDk5TGu4UJ1ZuOA8RdC`sXE%5#FvI>vqx9_JG+Z+{WXN9Z#S=eth9J+WU)Pary*gA;;Y_#!i zD;BbSSlT{5vFvc}=B)3iM^07IUe%aXvGvsqSPd@k;((vzHl4n4F?A9dnTx4DiORD4}}I{)g44B_)eF!xkG zmjNp?>=fAUA1+$0l*%YtoVj#rJ)@2kge-{$kiTyzy4;6~EI8$l6G|t+ItH%j*Rpa0 z2*BQBcdKtf*`Cuogi;w{Q>(*z+yfD)^783$&WbOP2QGiIMA);SE1uYce0b{$4fQpr*w_G1b1M)~IgE^sF2duaob zL5tkt{kmC%m81b1rc!&b&ZluTnR>5}0;t?bo5{VkJH3@xpXFRq1jcf(xCEk++Z&4( zEtAd|fGnSy0GghzAUL3IJL5s4*xuTcGUkG#yBTTR}+4usZ% z<#dyrlP7-{@J((5+d4y5=mYj?d@`?*9 z9H0dajhdacuIKg*%?1@B4jk7;0?du5;I=-V17D2aCqqNT(>N+p{ui<1pkprGGp?~)5-J^1>T|FTi%@o~soXC<+EJ%5&dEgMilzyQP z)9R#*QyJFhH$n!;<8}OaDDJy?!@;#NceB&HS3Tq(p@~Kx9=^_*N0dc&;ofJd(*VzR z&9=HG`|T7%F@5f(>whGj*_NV85Ji7UW_T22Qs!CSK$%en1<|kXL-ksV04Wc_{<=){O_C z4}ssmBQJv^iLVFN1!zB|ebTK^(>RzDTl7sbv4?PGzunTzpMznxs#~2*cYjT+i?Hhx zKl{)}#*#8-OY|(hP#0LC>=R4bPI0$rXc==f)ZgK@k{%CVIEIp!Xvx@|ZJfhA#4#MwekGV7* ze!n1e$N#R;JuMXg3!8g{jBHLbbJeu^_xy#A^BGtgyUm*`v&zKao-aT7a!RJoa8dA= zPa||KZE!)6?5CoD0}?C_AB`vTc+-g?^6-R^zV8zdn&D92DVN$LV3mOfuCSfk zf>WKqS3>HLq8@&y1FCpQ1fz1rbl1}9tLq;XO0}Ie4fh-Q*oUrJS4V|5-#uK!@fP}M zR(Ib&xldTa)iiG5M2^1zA?Bh_`~f*zt(p=$WhFHE8cn6UPVNg%D{o2 z-bk9(S(?~ZSnhA$T(iq8t)E9;c0+XhwYG9TRfc(jRpJHrKxPILIzy)uyRr6#HU~<6 zOH4YP_PxEK#}{I#d{~mgEg+<>cr1*k)^DxD?QU0+%Ho@z5J&-gA~u&Q+*62bkA(*X zLj2mF7hFeu&bV-`1Y%#`MQrSE`xU(ZJnZnX4N;GO_rCOYyFe_@=ujg3M>;)L{B_j# zD6JlZ33{F($CRE-1Eh&0nt0c!F4wWI3u_XK>-fGs!G%Oj^VVr97yNT4 zf`AH{MSLxzdqKRIHT*i#6v5l6ZIhc`zkiF6Txk&y2E5%qhZH3HXY_)okRXJ5AEs>8 zEZoh2D&FCMGA^KN<+P~)P^;+BUBviDg2FDU?wHb|e zsbL+$$URZ(ZwwNeR39+mo_-H8McCe|J#{5O8hi|Vcna?^priY;Z^3Z>4lli`w<0(* z8-nOOQ&G4B)a3M=&6q_m@SandAZF|y!ziP5|&jJ)SmV$=v= zP5VtyUj6ERSv&528e8AV_vrc#xaHEb-y5e-%*zI3_--;$V-zY|?(yGaZr0`N%Q?o+ ze!DG|Y{OdX2WgPY#9e-KKYRv>o%E5v7W>=pQ=;+ASwUwLyX-53^#l4O)G%l9<_ z6Y?&r0vbd-eIL;Hu|DJ7w205#G~rXjX;9GgHz!?VocCLLyCk!|c5SWDgg-0_e1t(D z>NV6E$jhsp_-^P@yYor8L1+8WS%DlnpDNHqZKQ6MC0z`CfMkz8twM*z)eOz&`Agl| zE?(|v!QnMl9M~L$!M+#ApbbUCGT|nAEcX~Fx{u6H51MAr!|ZqDRP<7fT;Oa_XQodP zo$RVUIGH$uyJfI~PwXh^GuW{`Z|t!ParcTX-HPWNl3-9+KBA9D9vgefd6<3ge>FC* z-(*z?ZaJ~P#mS_c`~kh{t8(|XQZuP0*?@B0p3x;Si*w24cLTjtL)gU!V5SpgYrl*~ z0I-CYudpnn^Jj9`w#Nb6fzG|EEEfT!lU`_p^TR3ohEhroeE}CjppLUF5!*s|93NJy zkWV+_-Mf(sCR!5nK%&Bl65d_)c0_Pm-X7em54|0I4$trFA6pXofbS3sLOfP}_zvtH}dsfa69xw;-;9 zvYUFNn;#d}8ff-+KfSxzC2UP=T<)>fJtR=T06kC7+kSo@I+teIf1ig1S7g7duxW@+ zzfiatzg}I-o)RIOuR%q0d?M~C z6(EOdntET{{NHT_WITMe@MkO1=5~X7=rjHtA4ACid7mieKF)_f6`Q2)U%LrIli&rX zEDi~E5}_8x1x%xT#nPS@wQq@Uzk4&(km>Y3n1XH=C))+!@@Z zgTR}XiI-R(Ka1`^9wvI&prLmo*FW5|CMNOXZ+GXrU+X{=aNbUt(cAsU-#5w?@#&{f zb?@ux%#+ao56c!zqUW;jrQR?S*h34f5YoZY{O(0*u43nW0{jNPGRP2s~1NPwlVCxhlGWwnUnMFc*{_ft3}wJ3YC3#7IEw=sddDJS5UR!W z=Z9i6;aeV}g9cK_^t8#xIaHNjZLez3LB$MWtAZkVOUnmT_$c~ryn!^;nmZ-e^oJWJ zi}oP}-`7kB{XgZ9)A!S$d-7E+UnYOLE`r@3-&_k@^Xp)Ei*+p?H7Em=pg*=B%6*5P zf_63I_S1B1%UTcLwve7+0FS;&Gv3OL)^UHpcSVikQvX1SvY%;5xHX?`v!B8Hm?3xT z_jg60Zbu~E67o`2{2T76Y}m0&WFG54k=jnr<3-R;l0bt%53UX}Y`_6qvgKPKG|sb_ z9>~*kJ?t4C5jm|4E+g`RIxK{jy(Qb!%T_b^Nfhx4@ z!6R!Ou;73fI_}AWBijGJ9)G)wz&lgkyF;!JC@7CA_BGGmU$98U9tzZV^dtIkb2#!+ zOL~eQ^JL-BM0`6`g58|W0uv>UBZzqjIpodl>$$vE7$Tk=|HAd$j1 zc%b(e-UL{5B6y3wp7@6@ozy57uKgIJwm2jeH;!X>U# z7%Fl@s_n;8lSdtIw~4pk3?ArNpflQeb^O9#ZHTBr2qNs&U!IQ&DHuzaxed>hCPS5< z4W@kY(}e?2zoiA_J?j!nV{zT09s4d?*(W26{EAIt8N7VSmnXuy`8Um&698 z=A%28ggZktcNX@q2Tv>z4rW-b-({QKv_L3kRUbibclRkWw=3w{M{ovNxn%iN>d7mulw8@=+%S?sp!58fgz8N`~6V!#BE>H=EQPm9zJuM zdsF@SI~Z_w`*Kb@=Kr+|1wYc~>OK^v`69 zO!Be)eaRbE)!+xRN-D6-MSb6Cd5NvNa*tjPpCl_B-VX9|r40rKvq|D#X#niax1hXr z&C@^#KV`3r`*4}m|FGQs8t$vl>wSy>FZww1hIQ_n#*2Ze{9XfCo6iRznOwKbk7&4r)-YWyN3A(9!}@3kj7dw z(i0t5r*6NCmQ7y1GiIj!WPA*da_5RV6*nzlIb%@F%6qRyyo_GQyy5hGvTKd-z0qyPFsU_occ7TN(CF zfQ_gD^vRPsC$8;ZH)S!65}nOatdXSFUH5h11qHB69ACxpikn$EY7eT!t)`X*b!(IA zlH2b7T^o+x-p^bLP2+}=kNk{FCAPl@AN|q*K=VuQCAu$QFMkrbCYx;aIomW2IEM-P zkp(~6N33`_G4hM`vf)de_QA1I zHqPSZY8;+e9DbVntU4}6uWQRPcq@#gt@I)epQ=x0{G zt`sVyeJ_8{8u|)c+P#cK&mbK>dDstTiuC5>_Cl?jQ8tHj`x_uAJ-jo-ZsG?}vV9=` z=9fqxN!&wtFk(Jng@&(gy3HG88ps?p@dIh0t&oIbFpq&LlBLfdX_cA2pr_geG^a&S zCvN5B+`6Y@+BY^&1}}t9;SPq)_pp^O7)gG^?_eK1yA-R*J=mi$x$??C*bre*F%xr5 z`dW*SH&`1Y-_PB?l8&)|?Om4%Rd#_*JNE(^MVbbP3!*=Vh^`BVy?*|p%H~u{r&D5& zOMCuXh5dc+<6o**HOtL2Xy}Wh_rEus2>Ps~qh|_JvG&frDPoWIiaUd+7xjxm`&gSZ z*tv^`h2!*N?oW+n;!HFq-N0~v+9@0?%@N1(v)_!k)^7M`b8#POCfkr73{(1`6bVm z^0zo@_7j6Lw__ok=#GU!F~^}tn&>;cm!_XO7`SA&DH)Bjr#|`jT4*TN+*Li|-~2wr z783EvwmU{D%6P4(19HpAbqYT;Ggi^QgiyR+JU8j^*PR~ms~`xoZf#HUhR)CvZ_AnF z@P|dFPImV!P_X00@o?zH`mC`2_3kosPU&()DVOhElV0znG%0tK;l8kMJ7>nY_N z)^`u*v7b7s6aEh7;35CC2Fcph@6;;8Szwmqj0VZmgxwSSQlT?L8!?`Wx()IsiIh|5 z+=!#QaG?dv9w-7m_9OiqqENkKr+9Y(iw?d->Kxx<8J<}Bj-25tKG`nIA*1e60VR8KxGjSlvKPve zA-a$G#Z!3M*>%>URrtN_&Hb2N9)Jo{Z}qM`6#twmW1|U8Y|mEnwpl8*EHT*31;J0+ zm5K%^tc|>NNP9)NA}%2am0tZyYbYa3*yR3DpDKogxbA_9h(>XT%b?`Hh;sOBkj@`p zopv=IE=)Tmz9d6Q?~W8^_x^WS^^+2#oc> z-pu%O4Sg^UZ4HwL2HfX1W|%Ous|>x3>0~^lIE;~AQ-`vNpcmt`nCShWkGm-E%#I^!HhPUxRE|u9WPzJR=wN+M|N!gd0MsW7?YIr`7tV zGOzh!_r#=0v&{X#zhxineDeZ@;mptW6;3|NGD#71#H2fqW>}Fpxy0AzZdMI z$j^Kf9m*%5j*k-@7b%AQdUf_8v(BJkQFWjfHbN;-y%EI&YAO|dg!H$*w@?4AjaGOm zgMEyqWrcf6cc+mP;i0@=2KSzIkLz`l_YFEy^5Gs!?Vsx~zM9|R#Rw^X4(aU8p0&@u zY`y3Uu8@d2&>}H3n@BO2SB{b1R~eRL9mwFbWX;jfsQfXwJYn-k!sX8>mo1&ofBb5MVj`$nm5*_71HEq%kd1@bmT0LKwX2BRp|ZWXy7CH=W#!6fxYH9+Y_Kwx{@e#{?WgNR< zY@6eTvj>w9EhBk>ym!H7yp;tV9g5+GOAZV^_>sjXtyhz@oZ+qUA3dTg%jF489|bN9 z)mthQaMD3Yr_9J4Xy`$voj@JpD3v%i57h65T6wgEcSK8nCVklQ+2#7XA?OlecXq{8 zCf@gH|JQxs&Bz?`G$&#G?XtGk7t5ub-Yu(3Nrnkt1P_5e32%&oQ<+??pg$x>e<$6a z+hA3S`qS+DEj@ar!4;MxsyVi`!cMIv^j8Wt7l3j@@g~}qfR5F~b@w;YH zeSJ}upX{65{`uDusVo^S_2!eljn);;OJxO>-&I&dH1(d*)+2ix0e<^38v?s%NXP8a zBIo4dkH0DkHe^tu;}Nffm_5{>gyV#GY3mNAt;83pW^c`6tHgRDJ~?I;yJ539J;es8 z5;si&PE8(`*j3y2O?><;uiO4&NcUBuG5hT7pL61Rbk^*vpPA;B=zMN~b&wneVz_lT zliW{jm%S{@NI07q9>oiLomMH9yMIt<UwB=zDsL~594DOCf%WjWLnTn0Ig2Kuh6=f zBNQl0YJ8g}?T^Lnga(Mku}%qhsR3+Lk7OHRDNv-7r<;%Bn;dV!9BxWGr=zeE zecU6;n!iLZ%Z^DRP)tg)*Z22l+NXv#Hl83*4Y;9>zhvkUzW`+~k6NfBU& zYX&wPmb5ow4<^FsAc^%X8%K?%sGs~eaN_kZ=~P_oYfn1T^GCg(dONHcTJNEvnyu@w zs*OmHz~1q%%TwsV*brj4Ytct{G$r%)!=)F4@2gSreAI?w;nnlQ)*x$izlaOKhuzOL zAe-=Qzt=tjJY@{Qtxn*i{K89t2S5kuKGUiE&;NAqo^;>1#*oD=%X|KcFswe-_ugq4 zQUgL2FzdIM?iV1QismQ2wQ&A<8Og>Lg=HkMy8XqU{8~4s55=@Go+)>Kjhe^x8`k_& zyL|z9)7xS`#6PcJf?iM~v~9zV<(yOS@79m-K|7m`&p5z`(wEF6`pX>zOwpdWBd2lTTcobEGwg|TOR&iA$CIM34c zLmT?*m|M3n&ExL87owD>wJ@6f-acvvKOG^<-NGIz*~f-nHuVkBin1M}E_&>9YTqo! z+8#Uq@q&IehV|JxQI6pa$QUdY* zLLfRy9zN$I_!3zw17(f_nr0vIt>BRRWd3Iz%Ht)T3#a8(gFA-fpvzQ>rr?uWl{|)I zQa||p^s{HlrCizg%aj*p@^$B+GrmZE+-Q>@G-+Q0>v4fK2u;>kJ!5IDS!77c_He~h z?gS?r(cxC?Cp$lbq+%TFL_25FZGL)qOv0d5TElnL58AQk>r8DUb8^ljJ}Hoabd0qe zC&ps-jgKXW-1F$Ps1i@-iakzewWR#Cb6kEO=rL?=ip3B=FYgQpTS;PY{gMv>T4c{3 zHh5Mv5m8Rz=cKhX?djCTQM~#$TGAk~&rqCa=ZGlYMCqa^lM@S)nQD&Hq8GPh&cPA++So=A`zI64H~h_@NZ*1# zg>zaZdhs)q{Y$a%!9F~dnkg{3uJ`X9C6s3iHg-At_neDxww7P(I z#xlvz#ISxRee+x224-)s$IKH~BE)X@r!DkjP zJNA!Gc&!(iBpr{zvR~o-df?=(7JS^^2%S zK}?#A{S;&mn=o;-tM7xo-ltx;?ei{8dhHpMwQ-4G(;L_lN0_t`!uU1lQN;el0|Q>s z>ZBBelF0Wys^dBa&1t==W9E!U7}Mrag&`t3>8ahnY`(OEb#wNK+xrTrK1oiqmpK%A z8DUyA+5QR?z=bJ!Q7&Rf zX9RD!M8KeOD9+Zr9|66UiFK--?Xr1QNf}HdrIQ()LAIkIiE$>vE9{bgKA#=&F1}`~ zmV2tZ{-u>#xzSVJIbVO5gkU)|_O>DV#{<8**)o;us3B6b%G-dU`pnl;loYwzdlv~S0#BvF_3EkU1<*xRUM zvubN3b;JB}h{G0bs{3x+XtO@7auxZ^>A6E56fI5Pno);v3yk-LG^<*^<9HZS$8{FK zio#i82W&if%EVt^$>Bkm)aH~IEII%{o@JRkuC&*BJUQKm5E=IIY@iLsbDjsR(&Dwd-h_t8sAljT6sd#TrMWF(Nzxn= zPj-iIDb^Z!6~8SP>@VB5%+KWKq3bXRREP(aH@6P}*!LdXC$VsLcFxA3RwuGsU$9fo zzoqre$%RJokMTY=`Pec6X7fj&bt}m0kSatS<>q%8@j-XkQto_ZMZQI0{g`M2m;~-f z9fq~BUhXiw?EB*DWzBur_BR?X?zD)DP2sf-H%&#|9F6jlW9gIkm+-^`Wt_>;2_s=~e z@{1gypAY;AHyRo0Reo;vd9BBfO%BE>I)N^d2$;iREp#|#H5{DMnm_L$5ox~tGiy|l zp6oZw_8Z3a$9*%s;-_usy0hX!w{HG%_3`)X`Pk|wHLF%~RexB@qjCB;3$@h~$^W^? zitlp#{e(+Hj>{F2azSH=AZy^!@Ueg6l?Gx)-1G!mL#BDL%>F%a+{15{esz2EzI)wC zgwh=eh0YzgYk@GYTCZ7EgjYk`Soid|X97!kte&d!&DQ-iDF`Q`HNdaHENi)c!@LAr zHF*^JbAe7F`Atl`X%nc!>|?j0wS_JH z@wYzF^MH?|S+6(i53G1OY$?r$A68{I;|L#i)3=vP!+y%)@e*8dVzK!6(;9}vm`VQ6 zLs#eF<$;r-9rzgybT=C_VOgV)1%p)tQF3N~supEcnw<&sXb5<>^7EDSrJK$l>ug7Y zC@?GSKS%@^Yj%?l{qG<(HPPM(VHrLt*Ztys+L+q6zBWB`SpQt}(&L^|?7fnIm67^6 zLV@^cPT;JYaV(T~_X4nNEIa}Tj=t7`CI+n&ob4TynfAQvjs1i}yD$@vZ*0R1JdY0~ zND^*VZ7NlsM-($Z7W}N)@PSrtrs^paz|rFipjRLKt|IAJGB8B#!I6BlhX(9-AEVS0 zOh9c9!Txfi&G&jczq)+^ zNZ~$tLgn49&Fp*%isATpyDqGXwv+j@*=epv%=lk?#dl1?NlhHi0A}+JPOlg?4y?sX zLwC?2B!xegHb#nRynTVj&-`It2i&va{74)XrM2F4wk`1_KZHxgw)1(!>1rv=IlKLe zXJ}rV;`NzIqPdKn$<+M!C!(Zz4OBcaO}x4RR}(#Lzv|*v%X-yW_A=v7wXnW={Zcx2 z`g0whuo}DCShs{>>6wt|UrBVk zvxlp5hMN7nEy<_e3hb*$BkdDQ@pEX&4jyor&bIGHaz$6Sl6LfrA98+=$OH94LBi;p z6db8L^9tv2Jo>F@zm&bh^P(`n3jmqFDkWcW?6p2hP7W&UwR_iN(Pfgp}; zMY>0-{)M{d2iMM_*Z!dZ4R{IsJ#2a@UzZZH$OQxRathQF{HJYuJh8C~&&s(tZp6AI zyjs_0r#`%TgNLEPhSPee&;fH^hmRjc(3l{q%-=;kua4T_&5hG}xm|7TQ@>w(R*Gzs zk$A=p3~eZLhCp&elL}fhHMS%PjB!ON07yS4M6Sp$sl@jC63P3vdM8(>-`G3NdTD9r zBXav&=PKdzKG=TX*#&o4$;xSUi#w7!)i?7C5-_}Q<0tqB4u>}=(tF0n0`7XTjFdCE z=_Rhr5n;EOB;V8?-{$k@23~Tv)2}vq3k+M?E2c#e;FK&s#tUv8p8%9Ewj?VS!HmZ6u`Auht8I9}|(PStY zIH;9*QMZH*gfu-_Fb=+V&{H}(IZ`TNlUig zDe{l%$T#CFF;K0}opicgRz?2pcIcpqme}y2v(nUvwT?!pI91y-=zZxrCweNZGMzFL zk$jcAga?&ZweL*eGzBoKvYyW-IIj5~gu3*{@y?V?oQ&&lhIS0giYU4K*rLf)M1W1H zW&c@J?s>wQ1^USV_c~wRM+eTB7n3QsXYZfj0e4y7Y2!ThFiYE)CPuF^-cCuMmME#& zAO74F&ahdGVG%Q@5+BbmSse+B#Xm;MdzlOAQ+xs2=<2El-=zMNn;iEES^&+})z9zW z1Xjg{2hJczJeap`MUMc|ecoPw2&Lfb(d8~0N+F(~!8~~hBeG+RUu}=h$&58Ax3%6k^uGty1c;_AIpF|5P9T1oYu{t4FntV!^dy)Uj5hA5kLE z_;R33l6gFP_YnvJG#1R|MxA1o{8S#As&7=cL8tz{V&b)64lm7r+>xW5+tIL<5A(Dz z&n_0<;J#Oxj(Ov}9noRO?E7An1bQ_It$kg%seMY}G5mUn9U8YSA#bPoj__M#k3Ip| zOi7=G8(otfzxHh7vyaYbKkssYH~M3%H&~09&vNOut+Aj>IZa4-wNAqYX=$K^oEr*y z9+BWOx~uc0Zp$50Zy8k-f383Kd>DQ~2zOp8Tt0K>#bhpQPau}KN`$T&zA{0gAZp@K zB+M5F<+zzA~zAh*2gY= zMH|!B5g5LEvx$h?2jtot)mG-qDIS-b1EFHQ$KZ5I$=fQgUj-9s8v^W9%yK2Zn$URn zcY|5a!ydsB4i(~ErV1BRR9@k|L7?OCzB%~UpsqPqoX>s|@v)0^Ua&=6v$TTKkdH@7<%NCpE}fIFn>SqC|-o z`UnjRQ1bUMM74G;mEs*ksk=c52uw;KXaIKt58gz6l1yd@a)Xd=CrCUP{n z5$n7Yb56Bz_l^)bdTpxPA_v~a5rHlDUT2>bly;@XwvSw#-*eboOUePwmbHJsC12R2 zc_ruubIK#SLy`KDJVCI_9xd6k$A`idzn^4sR)*$N7B* zL2pB;(^gbi{J%@3eS~Bm+v4-mTmhXTCBu?h7|fExHVe`9VLQL`q&>8XaKFk22 zQ4TN8Q=0?aay}tMlnM&8?M2@wjT`%bDa(G>OMZ3q8!;*N1pt(#Y4c2p^Wx;=cV|Ck zKQy}!ic3_=%u%5VSMiytZ0$up!|i2QY%1O(?~o6J`arxDglMDkroT8EpJAe)>iEa^ zpG%Gh(qjAWCDWFw0G`CFm|t`u1k?G#>r`0K)U-U|ndm6paTx6lZh$z0l+X;~fgf7C zZu#|9yh4ANZ&>5@f$BG{^S}zCz=+if&3cLKCo8<-?{l@$=AKB@lD?H6BR688v0Xt7 zZ5FIiMjZZp94#D$4y;AdFhB1+!&ruUy6*xIE`b@2Q~5@E33C7bob*@u=*ZM@h<(Lo zm*;6)isve$$M1FrLk-+*f!ZFcf}2fLLvLS;jC@!&1{*RtINW*aPN7X4f6ZhjT*=`I z82hthg`GihD=*;)cZ`xiEXGD2jYSmxK=JJvy>0Z59!bgbs(rbW!%yKBW_f`?DhZ$a zv;o!|pYYu&HJ(Fg1c+yn&6>O58kU9F3~<9UX7;gLnB`s{a^t5m>Z6lN-dUiZuR*o9 z%BfP*ALGk{RuLvSC4N?!G0L0F(Lkxz9O=`&f9uZ{5@=et#*ga|#F;Ev;Abg52{|dx zeTc}DiyJ?TSMm;}V{(kQRlTv#9yx{#u$B|VSPyFQ4%wV+ zKANr9FKkptbeh0gW+_*Q0sVv1&`dW+hWdNlSSn`$KhCdR8(x1&NadFAiwyIzOgMY< zaGA$Z2futhf;|dSfawj-@`q3&6C&{KTI79^#);l(b)>8{96b|TxJ5ki`JQQp80#zh z<@0lHmU)=|mb{oBTP}zXP@fqjvS6GTr6V6q+;kND1&>5yUvd`$%r=!;t(SAQCwL z{YmQ*pCVgm;YvXSU;;qc-4xIDD2FJGJ#xRrsH)rW};x8SVd zK))w~l2i1w@53EzV`sH|^yKq?b&`43eU5PpQ2d_vR)N}bS97@N0K1saD z=iVfqLI1e2P2HomsaRl?tUk8XyAgg8e`vEK)rHp=M#R)*LmvlWak=)~$42U04PN~b%vy_REmB^!yWNgJ)#7~FNz{8Hd0qFl zUWAWcrrmGSzFN(%8El?(BIoMJ=b*%2LrH5L8{5qLjK zuer1h`dQTqzMKeK1UeIDpNb3;3z_nIrSTn)mp4HWWmS!;{k$<|_j-$758%r)t15IC z3C#wkVxMlHEnig7ie4o(TBd&Uefh)2X|P!ggD(3^VvD{X#!Iq?OFe2Yss4(*Z(BQA zb0K-CNzl_w#6#o&nrAuYBVq^av-ve_M}J=s80}e*&qR&NnNWfd>(U6VP6En&e7sN> z)Xn*+sH!@E^_icGEV++S{8atjyiSipL!TbRzz1ErU?tsxUK2ow^n|m=>Kwi)X@Ctr zT;ap^Xurp)7`6TTH%;*if>wMM2^z>pX2KDP8%ed_mf5chcLlL)$)5+fJylXIZP}R` zK4(X>zBk6bol9}Dq1?u+4jGIdeCU8@{(9OkH{XI7)~gab=X?hmu>5117LLN}vwO8- z&K9zHcYI`wMs2TLgF!TlouO;tp}d#v0idhrU23wGf|Fjj6(qX3M$PKJA@;T;+Y==P zuokB{I@)xFp|EGt-U40xDK`+$w)zF=p3Hs8OA@n(yldXl^bGQph_H5BCiGun4ouYL zR6Bc4-@hrMzg~TaXpU&>$dIDxzRMMDSOcmNM$#I4l9F8-V88lb@9*sq$M9gOpGXa@ z4qU(o=CE?_SLoHaPHqN%E9HWu5=-XP%1xs7f%fm_@l8}~KVO5beer)$(LV2^TS@(1 z{}mbMi==@AZmCd~eeghzM9k$=M$>w|ug&iRyh~z1{z#MTPstv3hzYw5Z_2n{(0Qk% z*8|dfSqo|Cbsw_&j=4;rYmkAK5)(47h{tBbwm1@(ql8U`&vnp*}J8$t`{bss~W}5(@1h(p+^Q7 z(l?I)i3%2Ok+P2kGl`i#c}y{ni#pNv!)F2+xodGSmF*V6M%BudW0gx2|J!5wC&%I% zdPOZAHaOS9mCBhS_`!_MhF(#zele}i8c7!y2DC1C0obvNEDEri4L#7X*Q{aknExmv zN15Lr!Jl5Ytp9l1u}A&fId#)BKi`J4ZeC$o{gYt6{d?AcJk!jn3a`M`e9}+QpLJ1& z74o`A(b@?D?v#(Q^U{pxScSb@1bUnN=KTZz^#1Ky^^qUvS6=D%X5$HYV^w)=H!HE{Hf8W>K6wk`ipiq(e zCnbwlv@-=HOb7JlEZSWXi-(&LIJH;lS{&cUB)fJT zcfAmnB#;5=}C`c-NGWn&u%_fZ zz-H;bUq}0@`Z)>v>(PrZ;T_IIpCL2g=oeeB)M;!kc>e*G3Igbsh$ihn-^2DR;40}Y zqAa*1R2=M9oKN0|Cv7PoME59aNQ{s?^C&ym~I+dOt0vfe23dHI|?$U z2mIT)`&1o4VUlwYq!fm=@)ykL+cG;Edh+oMmtop5M=00?>9`z2VU23!07Sx@58zA> z0i0M0Cb_+*D>(}9S%t8@z2KW1P@)N%LRp?i~AmmQB8;jZjNl<@Xx06-1BQcnh$X zUM;G+M|gSQy+x1uZW1Eh@L^S|tjJEi+xB^BxT48?(X%zN`Qz8w@Z z8EK4%HCGgUIxv)0T>KCsWzrXk00P#1$pHEGSOnM9$U?Lb3s(5`F&LD0@T)+#xO@fc z9=Cu7)$LsZ5UMy`>9c*YrYkew9_JIha^@a}cPPl}pM7bIuHWq5+4<3;!hCMH!6BrKzaM^bjKtHmqZp1y3{HF9V>KIg)-@w45Q z6*Biqi_RzR$B)4f0xXS_(6GPD&wUyk%X6S-SV^{J=rh+7VS#n$?@6~8G+dv`{Uc65 zd}WUFC3R;`e(1(Nr*~EwKBOQ)qx@PNxBOWjbeNG%Cid2AmYqBB-{1Fd%lG(U4Qkj7 z%9fhR=_$_jL~)`u-IqbeQob zx7`~&fV}s>&ucN~ChcBHpM3pz9a)+&CfNqSygm9z{5yYk??L=Mr64txy}r3$^iH3B zYTCHDe_EtnjSl;&V2m4$FX9#wnPoS7lshE&k96vFIAJ=+6-|07HE@Mj{(4w<2brwc)J;Y9|9Z0R`J%#~WdH`LC=`sZ=DIgRGID z=KI%ewnlG38ShX}_qo9_PjTIvFsPOIbI=~o&pkd#AHuPp z-g_K{AcIv;Z~n`^Ajql?dnmP~W^e4$_gYBF9Q)B+B{}$ zcKdZIW&ed)fx*HnA5|J=2vOcDcgWT+6DRlGvR*=SUmqXIczU(`>vg}c-TR~=dg@0a z$ltHM7>g95?(8A2({;EeWr`-j(Hnj348R#yF7>uiB3hMe<6uy+#;!UKOpiwF`vh)i z_0MKX_Vnj8m~?^4Lg^M^%x>c1yH)ob-)dfY{^7=V&LD8)96;0-{`M(faGa0pW%Y2K z-mr%O<|UN`-0T5QynI^I&Oq=z9@e3?5B-r-$@kUT9x-0WQ*f>v5fhQKlmZ(}#>dln z`mG4z(QvBUtPzKHdfcE`(Vib>vfl4mG4V$@%OTbp(mp0I)Q)1i9QUM#l83saM`BrE zkqTLK?CeMK$vn&lZh~LQi2U2vQXk*j*`=o|9H~wKst}Z+*XsjH2+!03FpOXZ)$VsW z4EX#9vWcJ2WA`BIDf*DsYfGaspPM`RW}BD~X3N00jE;>&NMaYp^w zDdeOLcEY)bd;h9mY3t#5PyWCK`^-sL{>UT_799mU2iyT8jb<(PtOlf+^6H2(vJ?4N zuNeS(#f_vyoaI1%($M{F$vYMD$6Cj1r6fOXKgb6ouH4rX8Pcv-Z%!G(mo@x~IMBbh zvwzOhLdjzkAWKvAOK(ELr0;E4`W=8tpoZ~S|1ME=k&`nTE~_CI8oU1nP4*bcTe?qq z@Z@fl545M$Pu+eNsP+;6p?oFL46<0h6rqhxP*OFhNb0R$bQOAMX~qqD=jC&R9{8=! zJzuH(l0Je|I>XY>k3`dAqObfmy}%nGTIb_) zwnBI++zm3Zm_SL1Gmhbo1NXT<4XZc|>>HiUB03<$d;MhT2KXu(y@XfUY*O`i)2%(l ziXuF24G>6Pn{(#R_QJMPm^Y@2MFC!@l2(3Hg!UX6;6Q1P~5^c>I(a`?{aUL@vS4c-qb zOeEgF(-7Xk9Pke`8DhJvxUqe^`m}o3?`PpUE(yyApN_V?=gsv7d#&#K!ethh&2hk(%wvkFWzpKpjs!BC>_+BuS)scmK{mk4mpsVXaD; z%~89|_4r514?h0>xEI&SU)ZnUsQZBhRI61Fn7aCx5z%M#WF}i&sqxl5R7TAAFh=EZ z{APj7oBAOhVIM&mm_JB#8-jqGK2E-00}zj+?I<#iB%Y6;zU3H#=O%6!VW8Eh# zoU*~{)yrNb)jW@$^BtbE%N%4ngSk$GhQ7^SW86Ep904x9c>Ln3AB1M*d}T08T;d|M zh->@%fvf6w6axQ-Pp)U?P?m`*4k%w6B;QV5*as{{nJ!bK3t2bWR z7veCcNZ%V&q$QsqOq^_wqk#cZ2J~kB02G&pZ$VoJ5SMn-GbQOjz03PrYD%Lf1bZ5xQ7L* z$}PN4Fi-6T@sF;lFZjXXPF_whKG&5D?i(4Rr-whIU~=401^N#DuO`A;H8qe6aw_cm@d(L6LC z^Y|UwSC(x6Ia0u3?t2k#|EvteD(9?qgCSC~Jg)GjGmwR{EN{GpQZ7qaveXQu)DTt~Q957}StQY0+*+1nS zVq7FO7WXSc;*41ark41q_-Ro$QNITjJ4nr!={S4-WACfOqq^39iQ(=fgoI{r8y9Fv z#%GVaq2um8Xz;cK!r%l7lmIR6p~c-TEf(C}E%<#m=Y01$hxR=8eE;9)31QDDqi9b z=m{dKRPGBvf)VgZNGyc`a4i|ALJ`EG@LgdpK#_XTIf_$Q9FCI>z~yXKnD6D1MbK>L zq?$M~IYp?q>f{zK4rnLA^MQCjz~E2=MlFlVvLrcJnqO>m*d;my8&;retpnyTv(`pn zsu(V+OJfc3jV>{`G%-6+4N7rzY@8C(gRx`~GvzF*$$%pRL%GA~7b+8Qn2JnL7^zXx z{0K3EuCb66;Nody2v4v=d}>e=!qe;)hF1@*;!Rx4TE@z{FvWE5O95T6HFk>rQvuY@Vp&JTSGD?7u;R7 z#A;+yfNvVQQv^}XuhvH%mYBlo#axcWO`G~*);I(Q1noR&* z&{l>R{iDO>#aoO){Ff$12MXE8NyJrjsH=r87zBVwpoiJW<2ca!5&@Qm%cci)OV&UK zuTHMwLionR(vg@DyW@gK;Ubv8zo*y~K1f3b0E*fxw9A7U8N#+R#bP{E)7tqeDiz|2 zepID!#acg`ML{SMi{0pk5@!l@WtoXkdf^TM`Z({OYCfoj_c@PMcanukhrO?d6kXRfBJ|`x`W1}LHSQXIA`RLh?@R=N^j~A1L zsWwW89>qeJR1_*zjU2aKOcv`Mcmy8;!gfYD5cb4;7JXbAU#!d)qY#%8cgw8N7DUSAkD`+$e>;i^U6Q)4QhOb~mLcj@4 zp=#+?3RpZ!Jk+EDEP88dO#@s;!hh1f9s3 zj~O6ylWL>F9u-otet<`#hw)x18vysBN~?rLvCi*~ZcmWZ zlD=?=F!%v$m})XP5eopjXq-xl7{O^ZREUMrEI0wQsycW`ASCm%n0g_L>*WM&sIv+z zF%G7klmwpzplc8*-HoL{Xh0Sx$IV<1TgUT5^F8Xp`r;9QqD@MfcqfM{7sU}W)~oWw zP-DiSChD{SpkRQ;wW!Ar9F;PLM#rPF!yKKSBKG0zG@%ZFl_{th%3!-pwg8#0HrxCV zWRgNxP*O_A3YbbI6%csg<2)p2|2LcBL`@<_v%A5I!h$ctfOI_IXhQ~|e~{Av$r3;S;p}2?1&}mS z6S+=>fuVx}C96juLgSTAAY_66l4=qed{+kQ0clAADkN*HlmHcH`N9GcgbPdb3n!kG z#sWpfAwqANN$IpnA+l>HQcYC4%Nd3!I$j(}645~e7_=wgphiqiv&7>?EMd5B4pB@3 zfMN9N%MbKyGraJnKx?Y^x)?w_5~X=GW_!X&2;k#1R5A$&)I&!TT!Ij|h^go?N-*1u zG~gtnCFCI>#MU4pdx8RpqhDG!&~uTcV}XY$^m?fz$ORLEOds6^2Llwzx+759ZcmV` zBwAQyNBayIj(||+M7O6&N+rb|5Oh~c<34yCjZ^6me_;aFtt|>46!{Y6RHJtgwxE7G z_zMisu~uHfM<$?ChsD$BR-+RaqASfj1_|8(B(f_)h5U?GkIpMXmPoZpqlJ%8z|c6T zb3=ph5*I>030_o$H(2ac8qEzMi;!FCcN1ChsFWOsR~d0Ajz0(Oqyds0D#Qi>{)5^+a~HU&HDPP#A}H0&}o#DM@0b z6U?#z3>{rftjkFw@zHw`z&{oZ0z)()f2Gh|U(jB{CLDQY!x1I` zVM=ZT7B{OD388y|sz`FBN(y=(apIRHhsk5uOsJSfI7}!#qA>A1tQ1G^G4L=LhDpGV zqALPFv@kl+UY3*+lv+s+Dvv5hLk(0^l&n#$TsaP9DMDzm^356hqzl%v!nLw}d#!(b3PV@`D z1KkX&=SxH$T@y3jOGy%vv?x|@q_Al|1tAd!)OV{JLIWh|8l$s$L?}j8Vv|N#2u6fu zb;B$(5WR#b5wTPjbOqrLKp)JZ34%c+>7|GP+=&ZMku6j&gj#fL)V!m}X=vQmX%&l6 zOBY@Ozr7ThH6r8?h?H0o7zKhRpM{JtfWDq9(2D@oQR6jM1-=lSVkN2It0^R@ z7M`L3Tmqol!xcyo0+C7}(Ug*do-b$@HibZIP9~VK1Qk8`;O9&4DoYG4=scic*Jh3QEEe@tIM`RCKP36|n1VCJNwhQjA7RQYws!*g_gy2_X~?T9v^EFmI_jslqul z94U~*@C{Zd%#7;n5IBnmL^gEs=?YXTLUu9LuZ#Gtads4IP2hBK7$L_M)ke|XZpI=e zC>#etV`$Om(Y0~KfFLObkzxY~3N-rr0Z!mc35gp38=_dhEW#6qf#B1sbwE!kPA7;` z_2{hesfYu{$nf(3r6YvOu9q6oO8F*U)GmSoF)PzdOE{CnxJ*t?veDUy0e7X;84(bv z5LOaLkcf&C_7k~5UlNsaKs%4C!6HwXVoD}d&%sl46(PhI>R2pP#e1=Q3aSr)-d$>m zqmmH!${@=MsTMXs;~TtC4^CE7fX^w4BLv)PQ6xa6#(6}$Qx_By%wfcACM6s|bYM}# zd-1^TN+D~29h;Qo0wqJp0bQ*E3Xqxx&42&{8ybMs>=KgG#HP?BUU zli}k4{RfaEjTGooBbc-vgo+BZMH)%c%rrCl_lT8*QcMA^ zr_O8jQV3=$6BRDN_=4Yjp@gp{a9zPDUoJLTwQj2BOW!3y%8UEmNsv~Cg)HWv%AXL4 zP?3ND-3nYjkttSjsCI`ND3au^1Qgh_Vu>VEMdLHY5yh8en;?c(FzOv@m542hgQE5e z9T7uP995ty$xm0ZX_mN1ZSnBIW3nmbKED$57hv}IpxzHMw6uUNPE%?9@SG=TMObPf z&S2MRbYZeuFV>@iB7kTG0r&(2mVnxd$AXI$Rl1;VlkbzU&!S3wawWR= zB@!Hp=E2aCIK%)s7L;0eOjq2ah5}~~RTbqaxNM4&BH@u#dS^^0AxEVGCctyc_!5-G znq$Ss0J`0!0~#X_RgU#3`Cc%76b7r15XQUXWVJx4)FzmIzX2d)osO^*0=qaI7VGu< zh0dfV9OP+((A^Q|0ozpovJ$drkYO-r%;@&ug@ZUf4F_eYUY0CqaY;xLmBjo7cgdnA zaTz3;M6IwYCGupDg*ADTS}Vt>v_!mOm73uKfNqT^ z+%A&aN7ovea&N>U58G987M|jcN9bSHg9NM^daRKQB`!>(P$wiN1w^+Fa8ZDg6RNVD zCYlH6wE^Hx$1;koQL~nA?GvLg+aL5pG zL%fCA6fJE#N_olOe^3S`{Ej^mOd9*<@XLp6`y z%)~>NpulHvCGB>JJ%}YyWPu>rfTd~;z+^^2OiY9gq4#Kl!FKZeLW@VL0yHTp76b_* zc|;{s2v!Ina@ov6mV&~T;p}3YQ=@cvwPGFu8Jj5G95M%GL_L=84&xX=H|=q&Wdggw z6Xx;+fN-Hf%uFmdNmP?$A`PfdRSahn3IbT@$rR8;sACnfn|&I#BoJW}u>q)l6osMo z*(H-3wLl*)iwpR?5DOZ%DPkSM<^w|*V)gp*WPq&EibKpOQ3CjAaEn$%hD&0tbazxs zk;U(#3Xggv{h18^L2uVY)4%000*)*F#gV z0ly12GuA<)8Y6OO`jpF6Q8gSdjD*V%u^S7VahyOnZX>WmPQNrNX8}bI7Qg|>SRqpi zp_8aU%fUj@U1p@JBz`KOxT>5{76-4!LHK|H)E6uu6$9dR6BIOlIVFS^j+$pQgkw&Q zU5~Cb*k~MyEDWtl(ge@rlL`Ur-G;#^Lv?n_{bZz5{(RuwuR50-)rJ~BCP_XGWDwHfW7-XD)3-l2K@ZQLAQXG1m z@G1hG2Jp8O1DNDo{eV>@GTLiCzhBq5-%$ub(nErP-iPn;-mamXTFj4wt| z*~GGja!aeassBjfl&0pHI=&3`aAIJ6|>+o*a&$S8D@y)Fe9 zqvjyp4TKNSP%0jXlTYT7%hZ*t%euW$`4`~__ z&uGI(BTA?|ap7ahm{H7NqFa`ur21@hA44wHn1nK>0=oX88v>x0X>KZ2s`HBzOxOe= z3ON#pay>Xa36ZIkGQ3|v@(1xMwb=u(O}4N~jpG2Ig3YVp5@u15Pl_7?D6+ zYJnM1i2_VFMF)lGJeM$NwTI#w9viCdh|nk}r5mFClk;nq2Lq3fMa4L+M^I8 zvRgD_MF8o*Fi-j6g>g~P!wneQNnkI`3rKcpJK6*WCTDa zB1-v`0CbLW$v&f2=tZLm3JZzn(?z{eLzv41kB`H4xad%NF9AjXT>$4LdKe3^)(iN^mE{Fiox3n<;uB z;y`2G+7OF{T0B^fLW|R}X*dba7;y;28k!C83A}(?L$;6&@B)>M;h{rOt3C$Uqv)_` zoFGMLA-cp&8=T`X5)LB_S+)>0s7pj-06!e(Q5~o~t>Qw>5sN@KI;_wH15bGPzEDih z2dj*u5-NZ$P96yZN*Yarg$Ex^u!L5&#bN8gLG0teBLr7BKgA1B*Rv^Gdw*>rHytoh~oCpMpQ4)|@XjmeP9)vD=94QPiphi(J zVT)R*MCfHvD2%`mBaujj0*)A(z-j1GLOC<^IhYeb>MRTxEeG zqj0$cfTC>H%M?n92@8H2&CGP;aeRYaE!0P#!WrG#8d4NCu>tD`vEc-bOgbV92Gw?% z)fWk9>2|-9E8_Y&HmGhkkSIx;KN$z88*CW3l?V!LFa&SH%X}ogP34OQBUVV*coPIB zDG-VSg>*C_498?qg35vuJ9V&bhzpGApiL9UGSt4HmG2CIwZ!p7bUe2c653IkH!8CP z!)lcuCWzy=C=)SBBuT{u;#MOej^o=R(4`eLaBWT%)$d_KfhUp(nxRS%A9F_}PPy8M z1kEsHk1NEDasx`fM@;ZIu<%(hQeuK(VmT7%_K=#XKGa>7iTr$o3l)fP4RmktJ7Tf< zbpi&oHsI_)aue48_8Bh$nPOYW#RY~%dI0q@B+%nTwn>PxG9qv!stxl-a2m)222U0C=hk|9c`hett=LP7xq|+BsnDIido`7J{RbVGc8~g18lSE?*bcv2ZvNfR~7IOp_SlP%W}pTq>ptLppe+ ziAqqJMM1Ab04I;q@7IZ9YKp{eV}t=)3bK4+0u+ErsDv+x0uF#e`66VV3fiK?Toy^e z4gp7;iw#%;BnihWRHy;#Qy`SmB?&VYYS5sYTkK}3?N}(TNm_M64JD}N;z?#+0-`_+ zfdzU-9Zmqej54(*$VJmadLNH3$>r3r*--;xg6xnwKq3&-kfioY`8EX+ad;&}n56*lssY9UFb^;p;1xq<8t|L~ zJWE6z{!-~D(eqgvKAESp0VgdCJOsg8bn_~Bz=n-8Sk2HZgieT_FJu7S5|HO5JYo^q z7|;sw39Q)35mT6O>f1a#1_#LKsnC*ba76?fvH zFe;lZrXh+v@FDVKj3+|eY{+}S4R8!%4V1xU=0Ar1hKQG|$Bdg4+5Tck3B z;9)V*1(gs`^<#4xk}(-vFpUW@lZ+L+MIIB8ZU{jwi4F?}H1r8_Wi&H3F4Ka*s#!h> z-etAGA%u=ofF2ZJipoev3Ll6|905AstPo+@K?9gQBDx}uBgQ;7F4o|-nT=*dEWttV zJA#wgIdTtTLeE?_7Mgv7Q0>8|n%}Cngkh^0Fy#X5E7y=J%;6aoD!~z;e}>OPgnzaA9$B9La{)trV-i@ zY!WpWJ=xaY*X3G2R&9W0b{SrgR9OX~gilTKYK$70MQJbw zp|vn>5?j?m)bLe7gNX_t1HABT!XGxWab7%4Z%PJqP|k;=)0kLam@5vOB9;&ya=P%H zdVJ7;ctEQ$)u>gYR{+_Ol}FKIEzq?sgscUYBCzU6077B(7;JbF8DRnCg#n^V9H%SH z5CB(wfGKe*xY~dzig2L`5zyd>V3Z+va!4ws#pvt+Hi!=giHtBskHhkb#sJF@mdd$i zZ4B}mfP#Y;2O&mE@eyK7rW95DVj_hoqeR$7JzdIT+kHx!G7eab0lFFR+2UlZ+%8YJ zToR{}1*p(sCKA&Vu|a{_Op^KO5_BQ~*+rO$YRGP*8lYUDN(~@kq9!avRt&Jq;}M|% zIOsTHu!%SfXwWA_^)iT00i~84{1_lxun7G;tdWGJMfoCUkP%h*#X%Cq3lky&oJ)-w z(%e2j0-0Ek(klrA`i{uJG2!WEHx?1c_))Hy%V9APs*vg?L+TuACIdPe8E}a3B8L~K zUkFAgf(-$37#X2rB`j@Rkgx~<2-6+)`6wc+25V5WO>PPiZ`HDB5tal;73kyv57h|G z_9~wY018PF9o|L@`|&bpzSjhzvVdB^0^W!MDM5*cBZHi>iY4>0VgO%-cAr2?Dm!jOmloo$j95TI<_7shg4oK!Ng*>v zCkMn*uZL>~E-I47qaxbvP|gFvPZF6xj{3q@DHN9e|DQ%VSU63Q>1>*lx&#eKl(2*FacwWqjbn zONqJtRrC6Ox-)l(&$F%5y@%}^w`|fPElrnc;Yy`#4>YJn56nCjn0-oSU_D!US0H84 zvjUcBfi&f7QP$qH%(l_=^E1W0FWpNClgGu|C|C{&0YZd)R7MFMV zly>!z;(zgl(!u@eVoNvlASJs0uWnQrNUNDzQeA6gh2(!T!eURCokf+K{=B*NznYH! znF8#-tk%3a*Yj#z?)%@(<3HcHX>pAVHX4@vz2)to&?)sYP8+(p>1aEQP)h)K0~FJv|E)| zre~~}v90pfTxQb)pJH#%->gUrB267Gv1}*P3 z{ip7s?MLf;7~9a-?ZC&S!_q(8&Hb%MFqH8ZMY7Y}0yfmTzPih;{&xHBEN>ZapN{BN zIR?zi%E5BeX##c8ZeCyaO-vZ`b`kO54a%<{+d3ZXLGC?R)&&2&%$&|H%S_!zmdPZt z^g`8AS25;62IoxGesxusUxY>Wn~(PtV}A3VU)@fM@9UrDee@(hhqr9owG8RH0k3%Eua7}i zHfgNCvE%(P*ZZZ#n4&G$iYhx!D64}hIoSMAV4AqBq(*CAeiu*o)N1OaobhUL_AD|Y zI(>O&k^Faw{%ZM@S(zPiYYJYsIbDhw^8UT#&9Ryb{-hR{cLSu|$}#U3UCa8*T}GS1 zoNkf5VEqRjbuOA-Ru6MJgYrsyifUn&%(gp5H)%YsX}iN?0{E$i%pWdH=rEnLamj-I zQeV-s636n5^$t;N6R)hgTsrO8$3MBN-aeT6Ecj~NH(kCtys7bN{Y>ZVd}^IehxYxs ze{~zz)fE%_uOFG2>Yx4X^KNCLWqF#*%g4?&4>EOMq4=~sAeud{eE+tyuVa-flzn#8 zU!3#ZI#G5CrZqZ0((e1O)noKqI835jZTq_|`HR^9LpPA~c&Y7q-ybgT!S4HzFhkd4 z{i2K_SN@+j_V7C|9bSJtabo$#4PCl4Pp2KCzJFI#d9K@qQ8yY1l*@yvF8 z$B)iT4L>*z^J%*LYY}PQ5+=WH;n2&y|6ZUcbz4I!xRAZ)$o@K*#ik=Q@_5fn=r@LB z-V1NiJ9*iY%VkJG?UDI8&)Y<5+c25L*UxwTTt(y7N?{&O9Z*V%P7w3OH{r}XvpKBB!%SsLH))ag3f}&BglHbL7oXVmFe>^EW z)S~^0J3mYtdnQ{(9J;0mQJkb6ImdZ%>TVCAb;iZp>4>ATv${S%#oT!7!j!pV)m4LL zX8wrDn7*k4?en&^D;r@*-o1m?y9+++TJ6%+!552i z=Y{1}n>S3swWaaqm{ZYj9v$wxbLx-ZjG<3BwQ#|+Ra={wQw@e1PMvE-=^ZX7EXu~0eoViEFuf_*D&wj5i%epg{(e}U^&YY=jht5+Jd|TfB$@^P3KN)wnIp|oK-n5{& z;2t~Gviw>gxbC+&ulC_9Ct6p84)<-+bBN9GAg^OZ`CsH&hzD8kcs}FSqraYd=t2k^ z6gO#rY&>M{JGmTp(Mqhz{@IlGOP%SQt2>-c=7rPGKYgy7m&`vz-_rHx&ZFvgo~ru% z_(fsauj-V{SMsV+ZA=@};EBWzZ|yPxO7GL7EUxPE3m)-mcv$Q#(lt}ti z8lU+W`509jTl#X;n&%6?{>wjY*tj8!GubW38CQA8S}g3CW25EqDr;|eUR?grPMO}I zQI`jkRlWg-?}e3R%JjFK4vQ;qFQ_`V{@L+P7szK`*T%f{E4RJny>H@f%6Y!9-0eSH zD|P=Eziw4W`JT)!@>BtjnHsxn?2P?B9>3pwPERss+nV{q+Rgh~T03qBo37dCHqYvI z`FrDf&G$v*(m!h#ybTyfUKZwed0B9wMh^pKUYkfwhkDuPo~LqaEp9t1|5DF8>v?C! zmsW}wUMm&%-sFBLb31PSx`|UO#d)~2@~OgeXw8O)lT0O?oXh0(^Ya#~3rojLs$A<7 zGmtgBi5v0{ZCl&}+1Q7Ebz&n7!b4hPcADD`p7%sm6+Zo#edxEF(`MKE)^eqGVRfrX z?i=%ad@a7h0jLH2c>SGue{Zip+?jrYRI04sbi~Jc|PZ9LtSLhF{6`|Eel>$Lm) zU47E1{E^Z9JGvjCU@YlK)2cSUd+x*bsYR95doG824}NsMSGTjYwmd#inLItXGk?{x$I_wakbzTs{dS4+u1Nmu{GdK> z{(1lko1)TtX!K3be~{iD#dorK&dTreDsFFhUU1aRFS{ATj8WK$7#gow+PHird)=`7 zw8i?`hbAYEm`m5C%{wKbzxJ$n)R-r4%5z>EpE<>hP*~--Ctc3GoSeUT8FVG zuas?F@=?IqG*jK7kMU$#Vb$HDl(I`nL(H(xM3}}igD_8Kd@U*Kz#M<};_ro|s5n=8 z^|zWSeWd$~s-eu(l&d9sQ z%^VWu?U7|!sm4rKmZ^K!)AuJ#@hqI$uw2hf-JCX;Bd>=knS_D6>T=_Qy~53Gnt}AW zn%AP&?5}Ta(`?i+nV72e9~_gNubb5_d~)@`!nZXSg_YW>(9OXgsq0?GIvnF1Z(q8< zVC9tMGi#Ove(j0HeoyaPTUMW8FC(`3}(@gFsUY)OwTGSQ_cZa@JU)|(ga4hn^iSyFFfk)dNE+{dJDQGHyzX{&-5+HYSH>6H{yIb<7L}rN8P{(8y%b3YyD~R*EX9-*`p?w* z!Te#)h77jcK|H>$_qb@oDGi%+Y2av(-4HYTPIKO}U%qt@C*6LXHehU<&ihov^J(?N z;p^p-GUwA4{;)}&wamF@U24y**rw}MwyxEEo}aS}8|7S;mlNr;CT%i&&l(VAh&O6W~YoJjqejnn=gA-Hu7rM+It!= zJhMHwOHnp2h5x48!m{jp>m58iz0E!^#ck_ogwmQkOLtnp;n`QG6zZ66Pb z_g1S$E_(ftV>1*C|9JQK<_`m}u3c3(XlO@%SUjnp^oJJj_zxCNO;2w|YUd}zWJ;F} z)DZ6%NO!bqGG)lG9cz9cz~XO7(rL+UrB)3yz=ZSeJ7r{2xQx9gSDKeb@S)}OX_6!CrM zR*!r#|1$AeU*gtpz8?C5ozbSSvVG_;i2q^m;Q7PgXY7@AoOp8)Q~Y}ghG%YKzqJFy zEGTo9P24;&xtX&aYCgVGZ>sz2PZ7Q()$`7WU)H~?JYST`EXQBCt?Z?|_$u|=8xaD_>ydGAoVAsZKpM#&WwK|8^zu8CTC~sHU~Oh z(Ag&sTw3~|G_+*(p}^%ezObdK3o-Sk- zTQ7{B-}nC0vRWi{xMJ7FzLRcWjxOlkET^oQa?$Xk$67tDI-m97$e|*Gzs2yNuhXh( zSM7>G4RT?POp$bB%U@2-uT=rA25ZR(_qd6=|ttK4R%U zcqmg|P-?!K10KlrL0!Mzok9zG560bo$sb2%>$o38nB~uR8MfQ?M$Z(AQ z_Li+n`ez6ElymRKm9NSl-{{e%mh-<$Hg+A!t$sJJ$L6=P5_*PGRd~BTX;0R$bJ~aF z3AD_PJ4ZShxE*PoHdb5@t?p4{U)`R+@Ax6_;!I|jwI}NgURNTTy>#>2qEzv!jRlAx zHC-0wFD)+DK8}AFhpB@(os&{7X^*VJd}mwI-mxRSr-517@O{O;dP~1DHH+``f>7HF z%FQPK5?A@x%Qcs>p3j#oFgL%@dRN;X_uAYV+9#EF{&v4o^Xoa`w|{0&DL;LHX1~*T zTz2u9+Lx%NlS8-2t>z1Nx2RN|6|AUPG;G9ixGSu*M@ z{XYn^t^L!v>BySxO?ZsLzN~^`43$;P$scqAS4wPt^Q3OTkCzuTX~_O4gTJI+hKR{~`0dS-(e-K$+mkwcbk32Qsi8x=^%>vu#&>t? z8%+x^ZgUGpi+AJ>=P!58$U{;gUY}_z2U)TQJ~#BzrG5>z?DS~nffzVw#&fxX0!#&#dTA`%vPIpE9 z`5zwqRDHgn$mW*%Th!+?T!|ERU6yscB$v1Bu6IMD4GT}`lzsI6KUdI)zPsE0=BZI{ zu1wj}Y;ujP(_{I{w4*~=%jz%hzF~UnQwR6|{H~Uf%Gq#_TW;*p)HJN~VOkwb*6`@O z%+v}n6ze^>l2JZ#*{RY@jSJyVzISzK{=Mselr7zRr<8(xJ-p_v1tW_w!+ZX#WdDoF zwxa#q7|HkawBEyGR-t+qup7t@ZqS1ugo<&ow5$OtXFNI(|nd zTJz-(rbw&{vKzFwEq;Z(A1oiHORU^PZUyIMYHiE?yr;EmhqHP7#r4hS<_QFgE0*!KA+Wc9%t*9j0tN&CDae(3AY5U1RW>cRM3LQ-*w%W z{jq9y%jC%>$M#w!W7)+~OX9VeryB2GQ^$9)aBr(O1IEt(meA2=F!{0)!+Uq0nPXz`gLAWYoyFt~ctgRKnT4zV9#1$3f8WRoe_?|1H_X zEvM!;3Orxc1JzeY|X?PM>)Lth*m{_y4V#xpN3@PB;N^7Qq_Mpe<>7s^U2aVzGga*+P? zoQ3;(-fzffYNZx1^Ejz(9ZGNJ%&olJJZ0Y8QV8v1zp^w095<5 z#GhMbf3a22Q=s?|=IKy~$}Ey(^A3|S?c?4Ch~eg%%PrT|uG#9R&29f!l5yway2fw% z<`%T#)*ii)rySY7$4Ywp=g27On*~4fM@}scmeox0*D^`c)}2?5TbJ0-@aULzA6x(M z!>m4($v;Ylw9d_Gc`c)`=hf}cdrw=|zU%K}YN#@2H?BNbB(JJVIwSvn^ajkn{rQ`Y zQ!u*4A7*X>Yb&=_r{zs}sRx_zM^{CaZSLHz99RD1`BLKSPZ#68zFwcF-O*sxjKLS@ z{zZrXW9gdF7rYHkzjoxHIz6p)ibvlqlh1sxp+#p;b#bF}~+qM z0|e}cYipddWH;_I_*jjnGZ)vCyzX}{m^t;y*q*Cc*r&!Zn;uH+yVF_^*uVVE{P9n6 z<-2@&4-ec~-D`JNj$uIUTf49Q=Em3TsTfplY2L5n3gUC|^t?SYFb(lhPdxpn=Toc7 zdvw_rXmfr>^;%Exo4lpjk)vmy4BE@KZIXVv#+8z1f*euP!al7&-&wa3S;ISr?s7odi zT6&85-Y;s}0$Xl5r*Bi-W$?a5mj2<-buYd-=YBb@;FlQ<)&z1E7_U6M**~jl!_{$< zTN+mE;jZRCJvispgjC~`GJS=z-}!OnMd`?mOA8chj_<-W++Qo@EU1D&)x`-#sVOZN z$El^nce7TT^6$MJw)r>8*Q)H{Q`8=PI=PhcFIxUzF0n1Lev;%P&wG~?$(s}PqtoAC zOhD!*4Z}e_nlhJzRl-%!THo*J}+9lOkX*yT-x&a^jA(`jihyq3b`WVr^ z9lXngug7Kvp}&6TuWSF0;q_UtbA4UR>Fg<(3Cc!icoRC-e>q_s#?kn&8e{1+#lqdR z_*vPt#$w;`>vuX$TXSNorMf!r_SJD6+V`$$`en_i)1uMZbB|7{W{n*&TsHAdZVLnb zj*~UILw(LM?WyStDhg|viZ?L|TW;t>yp@~cnexNcryKOBe&%V|E%adUG|s}xOpg&W z;S~PZwVA%N@$$+^FNPOR*fqWGTJoB%j&D!7mArIh(ShX+3X`|4;P>ywEFrHG?cebI zw9VxO7v>5wknerG^l3zHNxSpWkrUky&ZQNqn!QLBzB@Jf`tEwYUbc$;DdS#SQs$jA ztJUG-@xA*WaUFUvdk9QnA|Lr#F?Hc2URduf$ z%|6p-{FD9};(HjXaxA?zzVO4f^}Y9-FUEH@@5BvT-LatvL0~)GMRfu{tuo z{WJ6Q@2#Ko4yW}E`X}U9v>k9MxB7POvCW@8H?9A=)Yda>1 zo~D*Gro+BV=m^{WWA{8S?#S8&Ref05gmXuC9;&Cg{;;Cr>h%lE4-ZcS9<|%wF!#4R zO?dp%n7}kLMzwrn%O#%1yyVMM+-KKY?TC*VCJ@v+vuePPjD=W7;hug&Oc0D&*}P)W zzdJwJ0BYw`PmIzq{$ekF32GLvY>AHC^2gv3AFnR)=b~|I7pMIMyY=0}?d%VK;C8ke zer0sG&zC2S%K9PMntn6w=}$AeZ2dfKAhFHW*}G;}S8W`&`Qx=r`CX-|j+?$G8oSyd)U|q-ypIIT9@rM0x;}TlYfZB^cZf*NIP56&_5$cQ2oR~&<({a(caU&Y^PhXi)m=Z1D zFzlDUzaG8!L*9uc(_R#p_itT24x{_Mr8>Kr2$`B2dy4B_Fl#@Y}fIh zIHT~C4lWJrh&p(-6+_17p z-eY9Jt{gC&Q@@mKC}7L7dCz4z>)Z6C%~=1b-tlh&b=7yU&HH_L+G`MyG+8JoBiZ@22;!=YJd- zt=;5Y(6_&5YT1+``F9gBSN826zuqk9cBMtrddlUFd_*a4lUU!5mtMZp9x5(Bn>IaS*zVUaLA*ve~9}u zcrxV5`=NUj!@m1eeItJA$AQy^U!L}S)yx6WHpgjq+OE)VtQ*W-ojkq#!~4;rM^`_e zx#Qsz%iHI-X7wHRdtpWYJDTm!TMWICbLHuU+{mA@&G(j+b$oP%*o7=R|jH`R3 zwsG{rUvi7rAG`n^d6gYI9gK}$W$xJS!_^vfUz9bTmG)>LS&fkED~<-EaA79Om9xkecgTpZN{e>&9XZp|RY}eob-rI!Rw)lc~%ds7=w>=rw=t<(l5OM>cV$(7xKlW}B!}{@!u#8; zmLqz+dUZUuy;RgKBY?z=DYGf&@Jv#Z8L2c6V;(doUNr#Be)L(N-K)2cZoy7jp~{9d=;TJ7)K zCz4bp!Tf^C!{=6RY_Ma<_jY*Sc=lbZqb210Aqq ztwZmP!>d%!8+U8Xb64apm!d$4{Od_?i7<_MNG(G3O`aIrg7@vE4#Edr`4q^m-`?VT0bgeJ??!lnX_YWNXe)fuP ztG71wC64s_a3VN}U_0*a|9<(PkIoTCzk7Xd&xMb7xrMvC4SLI;JL1#Z>OYtEJ$>%+ zp9;yo3zuJ$R}9$Fa!~c|R{6U+{?=0mhxT*X)q4MCtklTrSdM0PpRaxT^Iu*0FE3q_ zD1JR6uWf8}jhe-o6E=)fR~@k5Uv#*BN?+s9+c%5WyxyL^TbPNY7rYw$L*W!6rhV@D zjvoGg$KI|*qZ;4YmMFNqE>!RM=I)cXoYl|z&@~g8S|~ZL#A@C9N8Psah!&)Uw$HgA z3v8roH+-#&Y>I}iAwN_4QQtew|;$;d`+D;q3mb|kr+`gsKT>g#=3 znWW{!>{YnOq}{<`b8gU z?e_0F_gQ!B%K8dqav4Uva~^YL1v5%!6!vceI4XY?F!KWFBd zmHo!kLbr?31x-IqIlErO3@-aaQkV<2U!#w@#pmx1`uu88PDS_k^8)+Z4F9w2;hRH} z;gxxJmKJ{Of_bPIM7bO(-ThB0{o!Mzv&7*iCMl;*aZs)dT|dHCaVh%Z&WhDj zC4Jjy1`XTzS*4$bv10^}7p-5ve(k)8v8g!!`7<37p*NRe2jE5bDspnEN!YbdQ!}@g zpIWxJsOe|RS7i=sOi)U&!SrpXfgS!13Afa7MH)to3*FY6AZb=26!*7#~&#PLFQC>fMF>Nta1`?_61zKCj10?RiSQI|I*;?>GPW z!fA~HHwEcKZ<1=hxG;WjTmOZr$Eu&7n7L@knp|4Hadk)wy05q};e4p&wdb+45kulN z?p&fyC~iM`C*pSe0r@0zN!^0e7p6=MO=vcH@2o0mpI)~P9DWNHz}@BtnoeNs>C|V_ z%67cp{oNod-!N5Lx?;rpiV=Ix?)da-KRa*4hi98Vy?gNS$)NXDXP-WsJYwkH28UiZ zZJO$EjCbd!A*&j_nAotVC6+qV!J$rdNc+WdWJU?qO3v@#GiM-W?_W%ng|56iQ}LlA zp0jHBr9~OYlVMMW1P*nWIgvUIN)qh9z5D&c^CQnz#kRTjk}E4Qk7S@wt1eExI^^rk zHVNHqcXUtr|7o+GPA_YKnY|ge?pOup^qgTBAEp?iYr1C2J-Z?QNpE`{3}TUbO1!+F zxB&%|hHc7`SMFQ+vf|NJ9M_vM|pzUz=Su)@{KO03nozV&Cyy#utu z+?^|b6x8;lEslTJzm#hn-*^lzI^q;#=$(~2NoRZPs(9RRa1+LbXBo(=qpEGWzxLfN z`iA@c#*(6@)Ap{$7h|rh0&ilUDr2_uHs+V|%2VFUe~wU4pH1)J?ovvmQtuv^-JpK` z>S0f|zxNhyU$MRXBTrvyezfJu_Ra7VXDGSd(5Lja{+(&RsFxQEoas+ZuX{5WQJCt4^phzxCI;FcC1f{!E zqy+?|rQgX`_w&f!_j`YTzvFoSpmVLc=Dg;JbDU#bvlK>$QdPx%)=z{7=z08@qx^1%kdwNEsQpZm$#xROxGb+q^p)ooR`>{hBPg^ zC?(cy2oy=p(@5tPsh9U}Xk_)-V(-^-!IL?skH^41omxTota<`#4){zOzWNtS1Uz5U z{4dT+UiMqrpKsTkr!M^H;9gR1IU9d{2?mdkjg7rvCXt4LMx=!HBRf2bii*4obqE7B zn%p@jO7wRZW_3W20k0p6LE${>HZ}8HMz3b?VG8&*oqYEA$d!6FmScZ)x^CxqQPi<~ zTU~U(>>A*BJ1YW|{{aG1T7WjC=r#YqOs=QA8jMh|h2T??h>@>YX-WB)OvbY#L&_}3 zp0f(?P{5}m!0U#i>Q;u=D~kQD1uXgWTyoo4eQ*|GNQjHh6#I}@YmSUu)q;WLmK_(H zvW@3m44>^)Fv0~$zX*HdXY>lbI<=*2K5iz}Z@otO=Q9yAl%{P{qS7CWbG8 zkC%7KWzJ&3W2RPMJYZh3h6qm@b}1hXa7#1mV@etS;a#8W^P($|=Z;fqJ3;gJ0J-Y8 zba5j0&}QGuf%d|8P}+;m)3^2udVcRk!;&Y_djyO_dxW8}R? zt-awg>5+)Ck53Cl0S%N|)6VC7*5MPL`j1C2CKLvU0b~N`L3B($vRAnTJ2p*EcFag7 zWMnsUY-fjb~=geY7Sb=wm+dDm5rHy#8 zC1K8T^>Vm~r2`L@s~rph^cAH^S_y}th zyB$(PzHDp+dA@TkNm>p-}W=kC|k+q#?3~QY;bCRI+5a2|@)2 zktBw}B*m4Fui)%}6(qcA3GXC95X~}Dp(xUWSN;k1AAs zkBZ$wYl|;W7AOGUDe(!Vnyvov;LGh^5}H>xF=^@X_lLh#ajOIE`#1P(ug1aWZ#}mZ zXh^|Qd-pmEML~v{Am8KJ@n`J$kK6jgEuMWho;C5*203+GS^@2F_G)>qpBG;!xM8J@ zO8#i0#6Th|zrWDv^}ze3-D{X;nCJcbX=LJ}D7@;DlpFr8_+_xW4%?50-8nX*L zO!MF_NX+o}P!4a>2h#hAS+m{OS~x(yVcbWP!nP?_81hW07LQ~Y5>8_>$Q9wd_laOx zoZ>8EL0>Yp2;j-5p59TIzVH#Q3tlH3TO+=QJ?hQaF;5Y0(Chn@ad>(|!)&-78r+5h zvEGQUb2~cs4}ujhqG1}tRQ3U$%(7uQ?)jB_LPs&^_}x~(+?KUl-{Ve>>L|5L0KJB; zStfq~)D3>za{Su+YkJTUkW55fYx=2=45{cFS5b6(08z<_ij>-T^(Ld}5CXt8yk-5& z2xJizj-r1{BabL=>Ln530R(?mq<+^+M4m0pFNNY5*k72Q`}Ken+kX41~(Y!f+; z1uulaPgirb6;&r&Q!UR|ewG!75otzpWKh!EN?8qshSl*VopcaN)I3<%Z@7cWLIMAc zPeqnpHUde7Xr|{ytw0FZ>yW@vQ@TW{+%v41JCdu4s&aP%FJ4!7sTxo>W+hFv|gahIiC+eN%sFKVjY<$BwyS!h+>MT=^jFJBu<KP~sspYo?3KA`F)P;z-p_`mDo@7zVC%T2FR6)0G!IQn~oiDNKH1 zxLdQ}9U=Kp^LerhK1<_wvFn4yAc~!P;^p!}rzQ*DDij5-voS@*#u}(rof1 z@uFDu%QIeYlSED-b1HO*P$g~%g>+A#=ZbqdG|R{*B*iSqG7p7zcQ|CQ*`1nPb3X8` z9pcsJaRjPKs>}(MJ3)8kiIYhcrB#@DV!H08XCZYXD9UH%!#&{=HNZ1c6;oY(V1(tA z$o$z+hyUs&#h3gB=4Njx%nYbrbf8&Ui6WxPcu>lw)f14#*i;>dXEb62>kM z)TgBBxNS@CgwOM+K>ui$%yr5z^s(zj+&?CNXo_zz@nrgY&ws$gN5!pXBrw>=U0UNQ zppi8eBbCD%*If9534QJz&|!!$5|Ncot@}(nQ>q#Q${S``k!m#+1)nc!(&`EWk+fh3MWx( zhlVODA%F?n+AIWLjHW05h-*4`*p6bi|6qqW9QRQ=ZJ2Ki{ymZ+iZvAzxaR9_W;Gkm z#>IB;56+fQCtzZZuNzpM-Tk2r!VYsO9f5(*LkOhV5NS#01Z+VYGWusQJ8BrUjhL>k zu5p-Ef&RfW1;K!M*V!Tm%t?J8!7#yNjq3&u0*_&lU8UCWkG0cZf^Dz}}Mu1CHkdq+J@^ys0|7-=-_}s!F{2!~JIyL|{qw?Sbf@SAjgPib9;WGkT4d z_X>c{QAtHh0H;5Boy>Ro5Z%_1fgjqV2#yaFSghfH790PbuP{dG;{p1bKZINL2Kt+5 zqb)CsVT-|b(?eWGQK6pW2~mOJ^oxmy$N`?j1CZJ15p@zuuzCSzz8jJ$8$Yz4647rELL92sjzel;#;X}pb6Q*xxEggO z&iB@x-AjgEFT>L$PsVOb5DSHkm*RWtByxaEtg8d}`(Cy@QSRQF3p*DruMi>tjsU-jQ0^S4ZX@-pai=10p^Bo|X0%$Wm~^{7oM0oK6`Lz~B=b^!4qwzp+x9Idkxacpk$jqS-dqTF+G#Pxk z81kh3C7Q-__|T;gQJwP^6qcrr3_H3Y(EW(9nY7KxReu$#>>~7Q>>s77mtkNNaK98P z#K^!@Pn)YRx=!giXGo-L76*{#snb%;5kIEU=K~m-m-9e{cQ)%G#)uf$coL}V1Ouu4 zO)&VB;;}Q$Q&h?9_05>#pvBGE*tYKwF*((T_{*dBd? z&-SV1M+ZZIIw&m5D7RXtsK1LF%!~BqhcrJ712?13HM1K|RpN_OBZAOJ_yxLX7K?{H z#otcha6TYhmhuInJYMcZp|tTSS6*IDG3iNr%WcJj{xLjk~F(HUeMG9V1cr5 zpqymk{LA%ZZ(R-mZ_Y&{=iDBT(mgPs}t;_M5*3wsd|_`6f5aMhZ5mlfbp#iv;r& z=)GP$2`@lN3JH~YKK8y>!BECub|1C}+F$QCTo2mq7=+46Rm-&og6rCV z=`M_%BuCW1z`%~nN^*~HWwikQMGmglEYl|B{9`)38w^Ov#66*r;5HZdIX_BIHS|(V zVOejKX~e!Myg0yq6CJW21|JDF;c$mj=hA>@|9TIigmv~^+0`U5HqtCUX1*jN;ei3x z%gG?=>WaJfAA+%c;Vw=bm0SJd+Z2V{DT}f=cczr+RrRUJ=sG zl3095QAGW*AK8j+F2Z9g!J4$o3*dJv_DktSI6$|%TiJ^}BOS+XYN4b`&r`?4qodOY zHs?DHtT%+M@seq3Gw^pWz_#6bZZ-V@D~et8pBUYWcGG5sw%n6>JB9pZb6*hfx)5QK zsdR-k=hBb5Yv45Dg+ijkYT#Iued4+4~8**uPQQ>z2JpU+8h+MTi;9VcMx~3jTNBqaP zzkO&KIRseHRc6@EsJ!pNCLdW<&Y~)|}sEX5ZAAhT}{;SWN5I7Nx*fG{o2;`!`q#TvF z6b-~Ootk%YYQ3O_N^>F1Bt4DBQygelpvhhV=n33Yv=~L0 zIAQPB-H;Xt%2}41N!6Yxtq)O^6R?-@d@Dm@ibnNGP|Px9O8OpyFMQCFhMy#4`=G+& zAW|pFnic(NdC|2XJ2vb2hlA!SC7WhSlvb3W>ZPq~uIEpEgkB!pe!fRlH<{baV5-}{ z@8D4Ck1Bg@5ZB^J!3O&hj`{FCv#_XO(egb=GfmTj9Hj|R2;5hZ^HO;#oh(vkW7LFK zFYa`IhX>FpP*&B7i8r^Bb$nT7#6YDX?CgjmJ9S))&-k&-1f5eJ71yv@LPGV0y$K2J zwp`Uv%s93S@#ivfY}mO2%d0Ys4nkqGqN~p|&mD~J5gK2{RXz^2Rmk7XT)C75L8|#v zpjphqJhuOceor zv@8GumUq7s=N@nc)}lxITY=+8^r%oMy5k}@Tt-$@&>-Db#?0%uOO|k_EHeDt?Rv(x zR!m70Z{s@Bz=RzD`d$_+d)@BWXq~v(j-yI>F6>V%`a8t@jflXQ7JPvhyukKM z*zAgiQ&dQ%)vT~adOpm2tRW9b{}>0BjtY|)&5kuuJ~{?zlT2qTMnp$d(wyF#oQd4b z9JW+frbtw~-eENY)-zNe0-amS%)+QPGQI1$CMF3A#P1iWfLsnfIoc0`4IT+rNmR^n zCT8tHgsoU_Xz;WW2U%8e<;zva+%sdz`5e1q*H1_xO>Ap4@?yJyr`$#+JZ$&&QVL-8 z6Hs+?6xRPt_OGY{te$$ecU2V%yi_AhwxJSTS}n8BJR~q{C@5wG95LaGalypCz>pPH z>gszY&2`F&&bS&a-`UoU%*~um`?4uz#6idnEOjg=ceF(qL%-i*2KV%X8JpC^B#{ko z^cau+cBA(u&}10RLHRzN$`~6AS@M@?e@Z1xsHT-&>6fJ5CapEel;juvv`$v!DRHJ} zNN=hLoIX{_K^0s1_OcW025orFKT8}_2|~&K@oqi0}dSo>J{HuBfGi1Lz|G8lEp~ExQw~jgtD+wIu1g&4&qbFE&x!`=w@iytBVQa?= zocnH7`mGS?6%`kndF_6b1-)gG7}WB1h#k;*%(#H zAL^znq`rdHS%wL=z_SH{d8ZXX4J+m>PuhSj8!n=j<^JI{6<9!Xtfqm(vwvkXz^ZCo z==AeqA_w|u1BJ}@(pur3gur{$#3k`j{J@w+`Hz}8=`h)yxr0{;B~^Xx?^t# zX43#6;7Fle9_@idgXpSSMx)^!!mpx_lY-18k$RY^apM*OD78h)EQIgJ?uu*3CC1%P zc$8J}j@yj|mi}8&Eew%-#~12sWtR+6~X`hdvPoBTKFehm2zm<&xa2C|r1 ziF$WuIqo?a-pj~(oz_C)zuNhL1jHa|-c8|~{*>VCEY%lRe02%SzdposcJXzkXw~)I z=z;=8Yj*@c&sP}(hTHp6iq?!E%Y?U<<>afM$?p`=aa7%9@l|_}mDY_^1GZiTd%hnX zcC9Kg^sIs8ZvIfOTC$=@#GoajjWN*XwNDLtHBdz4#e=i$B(H^7XxY38z+EhjFUW(Le;wNB1g5Ki~Cw6v$=W3d7^hsCvoT zm*B%=t(U&O*E=*h`F8%852dTB`x{R*Qmo<8eoLm0xuBl`wT`k_XP>%JN28b0y!mj| zA6ss$2vU*2$_aa>I3lt}3}DCX z^CLsDAqg6wtBJmzw=kA@e}R148&RNSi8c(xbyvSY$X-W@cIA7p9e`c0 zJ{NqIepfc}K>1KL<%7Y3v3aT+oMS(GndN-byNOB)*rsEljytC7rp~Ldxn9Kyl(xCv z$2{K&Czx7Lh#7}R%F$+?C%;N^{L#|lgCm-Yg@BZi$=o({)|sY7kY44aL=~};lvSHW zX>kArZv+3BfHnZrT`T}9l^ZPzp9TI5BhWk+fXS&`!+*c}_YNUf>6`5>oR`)^fwgrL zs81)`IoTwcC2`}@R1r`lxxjcQ!YDSYap`uSBnZd6%=??}yS58TuO+`a9(T(quzu_o z9+m#K_W@?HKV<*4V~NPZzJ5BRH*UkWD-CLZ-hF50_Jrb~vQZW((6@JJhlm=ND|qjw z$KHH)BvM+3b`5?;^T)hKoF7LjJs@9i<8W&~yxTN52UV*<9G1ZpeLGENw!QGZkNxD~ z0vD1)B{?PEW2=ch5!^Njg|ec{Ejq+9DG)4t zYzqjqwtXt1Qv6D3FXOh*3=&ZQBGOOy67;XOdKcAN82WPeGqAGKoq8l1yzrhrkE@=! z^fl}uNB--@G@HA+GCpBx4FvC-6vWEvk(+v1L}7!OO_d}t7dKG66KaC{6+r>wq~UQ} z)SarkTWW$Kj#ZdIP5n;A8F^vny(yRBpa@L#v-*^e2`(o_ak}zPii?Oy)L100>k}VW zyrewK_bQd+PxrdIOZeiOS|N%19gm$O3hCf2LqxbkrfdC`{4K?)<#BT*r^l6>wuO2J z;Dqem5YYzIYRku76MKqv4;gkG;KxsM?+b=jG44n`AN72vO!Bm!x01lE(^#fh3I;Z3 z#gDYs30^8}AO75UM?v6XfsTvh$?!w#xzhWevVz6dugv4?5;4K_cppw>)rqCcpSGWM zfLpbY;+i+qLFkZ7I7lbOMA(5ar_Z?;;R~972(lIaW)B}fK`cFtKaKhC2wW{`a0Se5 zRt08NF4EfULON^iA}3Q!XRG49@dM@tv|XuHCJ}RaJz5js9R}O!2KWfy>%2A@uR>l+ z^2>OpF?Y$h(mp?oU)dh5p1x4{vGDZz)#iTAP|>xYF2N;V8<*MDS@u=hZ3KA%;-saogRlRgY4$@usiV@dzu=;X2ZrO0mLA z>QVTFG5d!(rkaBc99chI)V=)<0IlTKwefEA@@)Rjb$AOW^KP;zwj>A)g)`lKrFl$O z8KSI)#+><0tXUD2xdOh8PO*pFG&;6A8js6FWQqh1Oi2&@_=dgFM0?`wav)~AD=Y{s z6IOgt@AW;`X5M3GU0|@EVr02!ke(#FXP+X^^^;B&r&rce{vw8B8FUu>KeW zV#tg8Cc$erLk*PIK31C`qI`k@p^4y#5m9~^{&*eadj}5rfBvlG-hpP3>S|;M{PFS6 z6C!5eybxf(#v*TBe!S7T-a-cR3cxzyVJ2`8CEhk6PNwS`fdb;OwKvi`40z`ZxOtyt zZTkCr^p8_?GP$Bl4A6>fy&y%5Br8_7ijfsM%sZu?R6e~12OWx&Dqb)r1hQ##b*8rOmEa=52zAv8;h zJe6VtiW-hjsHK|ciUk7ZU!n%JIU;Fi3FI`UJnbG%voF;gkbXPY^X%iI+Q-$H63+b6 z3OyFLsugEOTuU_#@47iv$4W_D*9k}%oYR3uEA2|$Ywg|IojMyPPTXf2$%%GrN>bTkGp(N-Cg+((uwk7Y^BBnEnysWCtIqeH zx#lD5XJpQ|^|H6JOHH-$uPV~Pe@X``iVce3kRF;t{1>s^fjXmx2+<2gm{gl+ z>0a%N%B&i%Z)snBbV?J?JYXUwff1Lq7;&Wa@z8>e+bO|AvM?f?kvKNPYKKS|>G_ng z3l*D_1CQ8*Kp{wV?0qR?M(OGNTwfoJ(EvLoxSQIIDR}kKHROY$#-jAcvq3V49>c3C z-cOwD93FDjUqR9=Fr-?1)kbF{f?dc&ji1hQb-&!e`9+D$|iyaH5tOnnpBM-*M5xZd5N` z6#wkv!br{PzMNbclk&Ild2y*dOj2kT<;h?;3e}$vbx0)wdLsq@Z_2$(f?7yHAzi+y z52%)5jF+l_9fmizL7ZP!|G;G^&MG3$|?%-qOO)k57LLM%a z%^rE0D1$H&>x5B7kByOASEp$kB()Zk+XeEPOv6}e$-WQ3t)l0J@~!6!}irBJF4 zMh@H+enGgBp*J*vn0U2&Fs^f}Y-fIK$~+)(W@aXOy*Fy`nHfTAU#!iCYO|^ziK=SA z%e*vD<5^^taOy3eJ(?<9lWggc38E);?pdfE`G%Wwaq$pA+^n}c*Yi|Djg~gvYH7_} zOj!-ss_9AJj)U1i*~0ne>oGE+D;@UF-cdb302)cV^7vx*zoO5L7^bO3K=ch0{+9nh z$s5p=mQE`XfsJeCW>P6jf${`(a5rF;7MKf_NH7829qVdq?E|D#_OyhA)%-$2GZ&6v z2Bwx4d5oNmSX?zLCuzLZt?sSEt_2O+xL#*^%LqoFEL60&xadf$$VlUxcF~ioidHfe zo&oRGG`dN>Tl9ejI>(0j?c}(pc%hO;&@6+uGg?}z$|{yNE%=TrGN_4i)40|Ly>@UA zYARfex=P1SVlgoU+R2d_N);}N+89CV!?_!6xZkk5*>IC*%O(0^oyt%W6(dm?soeq1 zs{|k1ddk3H!1vS3NBVGXnaa%}C=#$WOuw?&)IfVF;cSTS=AO zLM#DA+s0SYF>iv@3QbPVDnJI5K^CG}5i@>rmNr(=v$|;$YiT{f1*;)Xi~0*z`>j;z zG-wqT%^d6I_G@K1x_~VxSCkXsio9Q<^{nizec}Uia%vi88PI|C^->x?J4(nt>PjN{ zUXYhA8h}6@97yI^+iN;6?HwTIUB!h2ylF;xF-^+m12t-3LO-HCti3=$|BVhys+eK- z#{J$0Ezh+*esn$6lSnGFg=|wY!9jSB1_Qcp8UOuqKm?+Q>#ny9_R29sxMV zn`|~)jbByC)w>;%TlHQdAm9^fb(Lm%Y8$YWl2|RT&^qa1k+}>%KQXHm8iN%M^zgB4MV>S> zpSMqC81PW|S6!<#UE)0?Gcl?v;Z<~W7~<-JQ0S|W!eoDRB^hJ%rWps-A5VH%MVKT{ zeum^_wkuy;*=Da@(#CDpUuz4K_4X0o7Q&RWuLz7eE;Qr8Z4v>vM_|3ki3n`tl?eu8 znu!Z$FxlP*l7j|yHCRq(rqlf#6lxcAFt1p@R-NVhe1-y`DiGBPRz(enz7fjsD8(1m+c^qeLq? zbfHuQ+i-39c$+z+og2>irKKVt@LS-ZzCFFYcww)`zuCq1ZY%5Qr6gR6BKX@l*2~7y z6<&Cj2OKOndJJ}6zy|!cC9*hZ=iN>I08$`G*2vTZPmQJoAEgI z>v{`qmizFn)9n?nXj+~=?E$P}Y^ru9e`eXC1}WSmAkzrLR)VT5LM>nFL_}GEYMZ-G z)~Eg*1|*NziR^zfbC9p^B?2;d+6O)U?w_Ck6*^k6a0xxyt_w9gtF76K+>NxWU3MdI z-?%Q67ioj&S(0$jr3zcaIc+`SvM{vVfLDT~n(E|)3q%~ zRAOSl+a?`6#10OCJ`vBwUu@i%DBHhj8bRTJmHMgt!?KcQNiyTXBV zbWICM+ErW)XR+ye?7jQuVV;Y83#|VuYkeo8EF}fTk!I6O;Jh2pxskO4&0^sMKah4z zY*n25M3x-gmzosW>?c500t}r*f&)K4xPy-zC`W|Ez-ns4rn=X38>NKQQfIJ zewsxpy}3kA;6qZ?gd zs1X^=2tA^&)=Yut!0BUxll3I<_70Kmi=-V4NJoQ54)DPBff$erMu|Utm#_^E9v1k0 ziQVN-^8a&i=cpn4W>D2eyugi#v|Qu2)nOP$Tv3||H@VxR_!gct<2-94OczK8ALQ~Pf#c|PC;Y$rCjf$qkaq7I9Osb(VZ|{%! zMP6eAy+%$uY)>&4)5El#r+bRSJ0E%%Pgpohm+uNcWVn^Fb-e?^Q^+veqdz75i@(L= zOdaN)Heq~zAk9YmE@C*r05-N3tU(f|DN4+EjiY>F1qUVHglA8}W&|L~%n7;2Fxi%mZbQTEKE;39<)R zHX}rRmB3$Iu=n;7(@Zs(P2qY-NQc#vxycE6|w_}DE`g7 zq4$wP&NmwMq_(Ykt6#HM6C|MQyu%8c7GgfGFmWe3a&^W$J9JM$!T#i;8~jmOA$hj? z(?ZEf!>7%S?bn>Vn=gC0tlrkwLYHfjWuD#3@>Y++fLvlb!2M|eB4KD)(mi_!X70Cy z^4DP{c}6K7m&z2o{*psfagK#8p#c7pyK*iX%i5W~}u z?wOWk){b%Ph_ZlG$wppJTeemX^9=mQ>pJAJb8dh$J*CcEjp`Qat(4Krk zNOLcsS9>ci-qf)n2Sq||+2fxMe}gF1Snpo6F8k}z0_g(ndf?CT6!PE2kxrF; z)crobHMYMGHE;0PD%MZz7kSbJZdTV&-FN@r)%{yZ&>g^jU(ozI1T6zcZ1R2RzrX$u zKkgz1uC7^u`wK`!b^spNGhbzTJHfwgH_im0h>z^hU#cPkj-nlmZ2zh5KYk}N0hoVJ z!uvF=pT_K{4oGCDn3-Mt|Kc*hsc8*>wWXl^@_?=z91X#7y7yl^q8yOE@&pq?z)#6W zGyoEDbhC;7Z_1tr2>YJwFLj7?07s@t?@0bu&mT|px2Z;O0#`3Lqo?~>6@$*<0TOAj z>h1e4^8d;Ll+vEV{n8E_a74fSaqj;vj+I1^zvrf7OJD z8=!0foL^56;Q$;F(XJu>`xE_r1(Q(V>V=x9sG@%j3*-h!WOZkTjs3sKzaEGLOYy(p z4;pe4Xn7uU{{e^pyaLDyz*N(IWkuwlu2shfNW^V2HvU$*^|m^ObbSF=ga74^|IgL_ zpR4`Dw*H^1{TT!Pf9+~rTF`ssKEhU3nU8)e8bpGSy)CGhsETK5Y%%te82k?&irl2D z*x5@@ew{9@3Pgu|N1Y&`K;!EDmD#H-qx%ZS@NY0|1)=ou8q&f+{7w38Zh<%(FfB;$ zR2}l0scZw6eu0ZcSPw@A%~~L`zyMm8aDj?fX=_hx z+JNWc+q>cIcm4-{;|YG8FKU}!(Gb<%gJ#`NWBW}Loq=fb5eM2jg!dI0tn2iVl2}(y z$eHpT?{EGw6y8dG?VTWkt$+fDd_Tb#XbEjH?ns*tC;1=T%%V|@-yP=8QIOwWa`D82 zX1O%pnIr$pCZOpcfC$kQvN=6Tdwvrmh<*=B#OOwBPD@Nc6+c`ADBe%SSs(uD8Ee6 zQ5!h6En%$?2hGAS-GkInxH(tHND2PFeQN}Pxi$LNJ}GkAi0HN`KeWi3LW`Q;v{M`r8H4Zq6N}K!Jng z%{u%dr`0$>0?|O7X#hWRb7Pz6`@da-_l9kB61>}>j4%a8P;MdT>&DahFvgz=NNF;__hy-i5U3)!pw`IXx?~I+6^-1`x2Q4e zj;;emLWE<(pFv1*(;|aa6O7t0McZLXoDjlqrV3ZKmCi4^|lr>Llhv$MNHuIJwp zhx4is;P?!C`&D(6(i_$rqar;_wTE(Qc%N%06KUQ@ys6qP0b||)oo~6sDs1)`*jDuTzjn8pfRoY#G^&zWL@SZE7`S4s_{r4~TaILMLIlQb3 zYp@Tlp7DZZM85v)v#l!V-mX%`!AZ|5tUsFKA)3iO4K^Ni-(8J!9`B~jcR&0}i6gyf zGXUg0$L}5kl|GX^zzmsm346pqQV0{Kpzc+B^Y#ol8)X%`)ZX`JYp=|m{o3=0`L~0C{&EXi=znsH`(~iLkINH3 zU`Fw3*K7V;ZY?NZi`7Xu&bLzdKRe5^4Q>yG*D#Ki95W1evBg#4wLWaoMd zqQbmkZ((7*9DNVnb^%BvqJXB*S&=AD4X-jmzX|>Q}H=pIT&bZIsPboH0O_L-p!3x z*it0y-5AEVE?^`0GJL?v9qo+i$05$;Wwu4a`2asEf&vzf zC=1-y!-$o~y4G(|IjeI;*47iwN_SF+bA1};vnC7{w9B_^9a4@`Y~mb*tjJ}wwT@K9 zqx#h5NPios2n&$EKJ`)s3Z4H7rL6|=u>AeTnaWz}@n(U79rYIT;rSBIubJ0X)SQ@6 zH9YnOaLLu`Z@9>J%BtPB5>EI`?x( zU0*k!eeo)g8OhZ51X^d3RX`j5llr6Mw5hrFbXg935saOx&)`^md=%WjnFUFWD+ATJu?8AVtlu%zujM{o~Ei zNzP8Q%!%$E5`b-t_s3P#a}ZL!Ed$;Zzg${KsJ+CPcqxeB1*pB4MfjMGC>$1ys#;W& zg71A*moc1+aXxOrcX|@1ImvRigr>V6MKv}zWuW=aR*5FfgirdVm(b*Xz@%7<1Dew6M_sq5N``<{)vl~WM-jvzgt=3v#JlOjITf_GnpUUb0&BA4EFLuG8 zvaM@#m&axKr_%uh8@UyO+hyhFB|kE+JWi4)tZJIL#51{x;s6bWKpM0@km0!3A3}o) zhlZRmKbJJHTqXyGl4tTSc=nzpp3Yx1l`zi=CGFK0^IY*TGCA*?#%+~8^RXG{T>UOy zX*tbi({j>$Hm<6!U6NWgNq%N~B_JoXB%SQmTlAMM24;Qq8GSj-=CTvc#@KsU8Ai}B zujSly1U}{Wjy>P}_SIa4*D)*m>Vzo%xK3T z^r<~RR`BM+?wQN(R_K|x%UQeFY-s;z$uZOL&a&|=+&jDZ1iOUG-8r?Q%7WIN>COgfpnXbn~Wn$%tQke%w zp-vu-cWuB?1Cg=N>X&SDA*cVuex54GcW zWX(wUD#(&~>yf-6pVbvrsiyX&m|hCFzGcS4Ky=w0C}WZ7 z)cdYY=CyO0TywczRP!}5ugqp^$J010u%tzF-Rg22=<(vdVt$MU2>ym{K}pzvi32c8 zM7M~tY0Bi;e%JS7mTJ3xyK&tTPRoJD=9*FY#xu_6VRSAVE09lomN^ek1u#y<4g2k^ z%j@S8ifjHxC|_NGtiEq{{Ezmp3kBD-r=!0`t#nXI_hgB?faa2WRVZN&SdR2$+s|xn z+oZk8Y~*tZH`=Z-wbu3>w^^I5k<*%iU15%~3lZ54NqpJD6fUj5de?3(V^&SOwee$+ z%xBntQpdE3W4n%^at~h{Oe%f$VuDHcsv^Z-p6n#SaeaQ~wAKF%9elYlroUOVo>P!p zC|lEbn9m>;@|EeNg4b>nT2MUZHz-uqCcW3$p>3UKF(_zvndbr8h?=f&nJ$ykEQ#M< zb`|^)L5{vO*zo0;zw$gi$R&k)EAQHJCO${IMSpKfxUf_u;|M4VQQVMIEPzaWi~{OR z{`3)VL`INP6_%f(sxBV&m_TJ|!4;gdv~St31H#JTa>5phG=vwbq^VEk5!xOwo9|nt zFO(?0G8i!s(iUIUBOtA9!S_6Sv$SCKX>i_oiIeOl_q;nv0U9&XPtx3d6BX2~`%nLq z)D6<0;F3{`fCw%IhKSCMF$SL}n0?k`3+o(tWmQ&R9@&K#+O1-I*snm_WJnq9T=iZm=U#n=ZEL^DEe^k^l zFwt)So2PxPP2CC+mfLRJaTDehOKrJ~#p`*znDj$r1mJT8ktBs19rxA@FAo}L! zg{#$)ne7O1500;l5gZ5I*Izp-1}cji_V;`&KO&OQ=wL#@SEe^P%j27D4+R~xCmBDFi^{D)(%+{@;VSYSK-KcyS9W}!4S1^2z zGrX_(GYY1j#iD7zBm(x}U-N4s**7-M0_^AQ!e9L4uc~3IE0AGW*O=gjh|It%0~`9W zNH5C-R~i~ZReMM3OON`sDg+a!vu$)K+GTY4EKZEJ{C7M{#ETY7@np}kyIYE7mapiM zlK`OA64dOK5O90?4yW0Y0PJQoj zt`>U~wn$_uC6~8XYiT|kC6Z=af9KTiFvICHa@CnSWEImC;ADAKBfY*;Q-a6CHro@w zy}A^xezjL?+w?_XOMzS7N6Fad`@OB_qnF*z(9HsIWlt~RRL3&!{ltnwD}Ngs_syM# z!c-p~i}F>+P5D{v77C{;1irOKG(MRZ)-&kt7i%O%3%f7R1-%43)Y#)DB}&Qp*+doQ2}NzI0TQfFZHlGl`Ii9pzm(u>^H-o%`A;SfiV=ZX9JJV& z#`kgApv5A%Oj@D4A7`2cAhl2`w_vjidMC zhh6>h61^H^_FGxbK+85O0|RrFH@6|U0&hBqU9ZMFd>3>WluDKvZq{E}Pd)$m06j)U zjR8p8hAF#s+|G6y%r`P5)CjT)u1{G3^5JzgK`Q9F%n_rey3x0lou5|wp9ZJzThA04+$Yex-|Is{r%!mk$egOwYFA|a)yBHYW6xSOCd~}`ATsNKQXpa_Umd3AM9T^a_Se<$RczFy;{#a% zXdbZZ5$2v3$e^LPR$yr_jc?^M)qtl0wgpbxRCXL2b`>N=Vb#;FJjo;8+PGhV46kwn zIsD;pu8@Xm&hE4~|7>iJ>roc5bi(-#KVT<`hX6B|y5k-GyBC0A41efsnf7bW^VCeT zli8NhFKzyqV~yd$BT(9uLb;mHGcySumnh3c7>xwvjuC5Khv`Q%#X+PQ4Xh0+GWbkG zxpG{?CB=ZB-R__d^UDfF0k?fDI{FWmX?Gla$8Ol;J%{zuXPY*VrBxG6;y2(%}B4Sc@kyc^O{ zIbJ?~rYDyWQL;xR=>A+(guMmWD{4kjtAn-A>1(|)L)FRJX+Apqq1kqRWk@f`p9(AV z$xTwXd8w{nX8V5i$GfSC;Y0cH7ynDY>Xc595Wq8HRSez1|aD%yWlue$4nBRz|qT&i8hB2?K&ynFh-7q_d!t|`l=`hK(pR0R$~ z(Rh_mEOh#0ONMr>m*IEL@|iZlrp}G`t3kp4;q0r!qU^S}Vdz%6b3hRZDUlo{N9k^m z?hXMdQ4u7D5hVqYZlpmJ~B)4Kympb zweF6A%EYPldQ#ESx49TPryT!i31yrV54Yv2N8|bip7VOv`V0w*VwXn5qV1=ur{VL_ z>z@2n69J*9l)lSnOHab>LX+F%yim?bP#c9$9UFTZY7YS%OQ$K$H#^2Py4o*G^gS&e z0de|^(lXng(j@P+pUM|l{*YG3Qyc%Lof}>WM@Z*}zG>$~4l*;l0)s+i_(PDgmqtk* zi4&OwhIEUP6}EZ!tw}CV8%lu-u;!w9tyzO$QK+(P%nJ)z+@CVcL!cMc!ml^y`ss8y z;xM(=16FoWO+WT{UVKw>%KGB2*UzzWwFF{C_obEwRsOSlZSH)gpI-LMOsaVrN4NXh z^4BZcna<|WaUi+49+=3}&%&4fkJ~Dz$G0k~c>HHr*8OKdy2VR&Nh9nVvGsJ1d)=AA z$g!(O{=It&pcv@ag_k7E+U%E(zBBsjj&Ib&%~kbIxy;EZ`Jdk7TJUIHm@Ic&Rd=je zcdDJ+zA9-|D1SLGoNDT55YVkuWz&;-K3F?kr*d%?IUwl!M#*EiylDK@(Q?!J?*z01 zR3RTu70l!RH}%TjRd>|Y{lIi#o2#gMGvV7}Y^8o+SLkR`er@ zkmHA|>xrgkewCE$YbAx!>eSTUkeQ7|MP-=xs8<9bh4 z*|uzGYc1D%kJW9@<6@Pn0AU7yC2NyC%Xl%X`dkaU;}$Oi`=L_HVXv9ci?xx&>Tkr_ zI2^<%hAj9CiXN;L`Y*wueB_s1MY)LJNgg}ikgCyKf5wjFrtnm@QQL`Ta-$bj#&hho z*$no4=}#oJjdnxHK81Ep>sKL80}LG=@Wknrk>!JqK#^3tLc_R#U{r+bnF>r5`h`bz zrF_N|SeMLGwY$3~_L(O0swmC<}TWC$xGt!+6vQ!!z z*Q;E}M8ZAqhkF(qHTF+#3x%c3kjNA&S1n15NAMbGYQ*UtWmxl2r^UQguGcIR?=x^^ zgxKQ&#g=pCS6-glU9K>`YhC`eww;U_BJq)O|L4Y*JYZG{?cI4%m zZTH@L4G&$N#~t(oZmh6deyMt;*xS?T!mDSoaYW!~GQaaWo5%KNrke@0DOckm!^2}) z0xoTjmukmZLf3woq*^)7cKt46AoKue%su-fV-6lAIS0z3RLdZLsL?cj-^<(etY@nP-`p z9_(6*`lZ$v@W6N4=1q7@9>D*V$Y!7lH?^`fBEqGS23rg*f(ES|1L$vRZLza==L2P$XK zGS8#(xhW?pL z4SSVC6uEYTHz$An@TidpA$$J4DVF*-q0amo=&R+*#6h-E?-kC^XNE+2FJ7_iP{I-MTUj! zK)Qt7%ivx!I)(6UGmpPBo_y;p2)tvkx4t^7R#f8Z*Yy4`&k=pzglq5c%w2!;Ll&rx z{k6(JCJza){$`{Zih^Qu(#xuuKAJpj1nFV-{L`_?r|Vu18sy&9^lQ7H!?FZUbRLBy z9%#L`3K+^Gp~CXLpmb^T%-+)bxJPocLKIqPw;o6k5<%Ym;a?Qtzl&&1!;oA|Ut>QyRanIUMJ25hQe)3jDVT6UEA{E;}SG&i3eukHIlBq-fE1&4Ha{Nryow!rac`4)W-W}4TipjYbmt07OW;;1)2?mlCZ^pBSWm8^5Q zt022svwsyQs6|0EdD*Qmpn+L>A7pp^aF?9!U)~y#(P=H?I7mlhmiT2RJ)0^8gWQTj@Yo8!aUO z>Hw$#(pXW!KboT;VzBS@YV!pBVs2}Uaof4l)^DZ!@v!|;$mU%o8yly5D-Qx9K*4dv z3feyFIpx@j$M;U%yJLiqylUt=6)rsKJ)d{RFoLMjksR6VKG(&y{T#Ww;MLMF{P`rd zMFKl}cY?S+aOma`HpJJ@vL`LG99`g_0&E0e1e5h1ay$cEwmKfv(LgN=@UUZBN7Ee+ z){_G}ON;3iU*(sc1gbUpMhne9U!wdQcXpi}v&nva968}4z3I2%D*7wqO=02Jt{6aAeiRZM8d*=Rnkeu#2~f*_ z$6fYS9wa69Rno+LUmC?_v1D7|;jW@6rVLgJR0v67;4b-JB(J%2V6$6tYw}XP-pMa_ z`Q6D*aK;u^BKMRcU&r%sN!`H%x)M6=&xIs4T{r_`4#_vjsP#9abqmkCv>ldc_x#!( zLzJw6=o%RAGABhUMsluSx*JHGp;MqR@V46AA+Zj=S#h;jyp z4EGct>BxBeDo-@dCIc5ONZI;G|McCqgvdH~uhZVV)!}V7qBP#9S(>Y&)xv}IO${(j z!&LGOc0+ZEMZp|pSji{-?F)D(r(fbzszTPe5c{t?T55lN;O{Cj%6*GoIo4gd{KofR zrTM0(oOeG6F!>n1Jz?~BKeaGG{&+8;MMm=EX|Meagy71;#I?WrCp#mnU9tc-Ae?>;$mNDD+v!Kh@VaJ&)8cAbx1l_9F5JbyCzX zo1Hv_{@Abw4}V%_lw&Q~u|aK*HVIoVb^M?9kqht- z*QRr-1pd^efZF!vt?xqp%LBx52UDj~eK7T>J6U^|*3%WXOL2vXCt9y1jV3tu?hase zMBKG~&@hCT+vqsy3t7#V?r)H4A4yfo>Bq@mE3d9$cTD-W2K>_jh=@cX+u`p=wr8Dg zM(4-3Bu*L{M>yGO6~dW5WbruEn+R-=|De(oeWpMr?^DPd8Gqzp5Y@5nZBVr(doaY( z;c)$EM<`uud^oF0r=YWy{UgWUu5%9Py?P+pf7u&!Pig$ccUIB4r744}Y*K|a$(T1= zhCF*p69Pxvea?s6487uKATx8uOd^@PT6P|m&tJ#!VB(ScO@E>Vr-80)TblxbG8twA zOmJWcQI%O`n*k%-LseXU+mNJ(%$!pTpYAEu&PnB0bht#PG?+FARiA<<1~W;T$5)Ou ztjqsnwgJr*59bN6PZdtIc9@ z>+iA9-+xjG>poQjH+xu-@+#8g?vkz!SytHYSup=gF75yH9tS&+D+nV5eRSWFyV)*F zJ)K_m=%-K^dr~dmVHRI5QdLT1(k&9Zap_LK&_`7Javqf|RGTWvs155c}EbTpm9wUkq0{N?WCh{7yGe zruTsaMPM`jCa}RQN-}XM3M~~s9sXFxsNZLufI$S6*achnb*m6&T~aXrkhuGO z#6&r-w010UtMZ@93``i+(Bm)kM#yx6O- zXb{u`J+6MVN@ff8!ur1f)^P2rX!z%2Mv0_Zn0lM``1EPg0gHj7^?Le4qrXrR;qM%P z_m7vJ;6|s220m|avgx0A z*&tP}LMQU~I)fYm2p#oWy-AO5fDZ=1Q1x=MN3T79IDQ8&vvBn9_Wlr@(b(lQD5NrE zn{HQ?^4Vn}$f4)2aOJ(s<{rJ~rZ-;s7nDTd$x$e(ooEP^9sb8&sS9vJiT;(;m226L z&=!9NlmZ;ZEuNaH!5XLXWtO*6M~UH9JljV1^ttiZBF7q*-wC^5|2<4P4uo2|*{>!7 zsU%n6K%n^7&Iw~jzg2I1`O}mw7zUgKEVTkG^_yK)7RdwV)x1>gmG(^nq2EN%X+ko$ zPU7FAxxd@W)J^XFNnv|Um~%yWRX%I#=yIPZ*&(snxG^Z8!aA&5jCn6O zLo86O5KvO93ETGMN=di=7VPi-gw7T%OJ!V(Vw3`e$VK+Hy&kiuY}(qU28W`ZUgTe^ zOs83Ma4ws$jj;Htz!AHD7(SF|>$vIcTNm|rLnC1#03n09f9i991qNsAu*)W@su!?1 z>t*paY=1ro1iH##K$u($*2wf6=+&@`z`J5qBLhCiqJMi^RBPkWa4ZcAq6-p+jSQD? z+7znO_ih~iK$ksoB$gSBjbw};%~?;$9XNgKRL{o_HXBtqyCfvM`r5a0Y|A_N9{Ruf zz_682$awHiImCxXSbw(`#Vt?2imvSjjf_;v2dH!RALsYqbxcwoO_!mfk3S)XGYAFh zk9=@WJhyeX{Kqj#0JE>D%KCvD>_Dj?h$z4RI5TeI@SIqM_9sCq> z|LV*OW*8TADc1s&9HduxS-) zz2(xKo>VHQb4~c#B7j1f=qA)WeW6`8_v2mD_t9Kr|1P|%V6si&_2ybGIx!sdIa z`um+G{Q5)LzgBs=ni{uSwmtS6lDUAV$1!Rb&3ke8zkU>#&rYwL#Qo1Yolxs6Jg^YP zwfGEUMHO#zF^1`it{S#St|S_6rEwC0nBfbSTBMxbIq7>c_hl7Pe(_UW!efljUwh;O z7RZcyMcqmNst@B@7^5WG`bSkQhV@%zwxF6)$S!LQw*$ylj#5y{>hqo7f5$%wh0!>1 zNR&e}%8s~(P=TP3BEP(#;>zcc;0vg({>Apa0in>%O)r5QqQ`|$V9x!q-nZ~r%Xhzv z!{}sT?fDWvaQ>)fq}J5~TD_(I{J4U+UI{<3)pL1myVJI=i>Nz~Gvu%CIX`bWxV!#s z=)!w@(;KGz&p<^#=;7t`l=-9M(qXoJ0RPk)N4^?Sv!m7v$CsZAZoXi>Mja06GkGsep52vv zoq8AS>E$^a8Ytr5LhWgAzK`)+{{G>!Amv(tPuw{;KxNh|uqOrUjoCU4eI3D}hB|3{ zSdYpb{L0ZNnQKoy==ty4L}1P+v=Au##}I4+Ug;5S;73$kDN32pEqlShlkG7WB`fMa zO{zs%b1GKfHWK*MJ+i@&bPx~hXO0{LZo*Bp2I^3t1#dXOo?7fjx^6;4Z*<5`tX5!e})iYu*ll!Rnf~SHQ9?5+@!Id#_ zGQ(74%$eaz)Vf-jZgHq!k*gxFi^GI<)muCHw|;;RFBA)PivLGu57^BThe7OH8wa&C z#=v}d;IX%v0osBe184^!eJ@_4D;dp}s~`AO14w`tNPuE}PWsI{LQ{ijn7e0Wy^-md zV)IJCk>Ux1?_Bcrv7E8OyY@P{!lvn)V`CWb`Q%9Wi5ov?AUB-3pkPG^y2#1Fn%;pU zaj0=1j|8BAlnAP|=u=_unMqlUzuKM@m-|Tw*_(Vc{t>p!q?>oZHHr6r+O^-r#I~24 zchLR`5Wx+=fzGm()lZlhJE=-PGV?U{067h40F}M8@^{$V9HYJXzQ46ha$~Wp1DCnP z3G;Al_L--<`BpfX6-2QBr*5FH{6Dt_UxIS0vW4VC(T}~gxi+2Ej-v~_>2VJ@s*UyH z$>#?NTktUY&`I6&V*6*J0aa#3NK;T@p9wg!kMyMl=T+bJc^3{V|J zf`+xLcOGGbQZ~yVzY?@_dj9v!6d?) ztD=0>Yvn%%E^zM?ozHt^6lunI&vOF6zBer$746ec;^nCrHS+*1c~*GVOJ^@w%#oA2 ztq&#^w5OI&(p)s7yTbfGR~Fs-K&s&>g_#}6F4rdP&bfM*T z)n8j-1#@dSkl-|so!PDwNeIZB8sVbuMmTWPP|Lc5byDjrmtGWD$&-sD*rONq>>+($ z?RRD5)OA*DU{avt8TLqk3>WHOa`OXMs-dG}*ZUuLTw`?trQG8`cIO!9=V~z{C;S>L zwuE$-y)cpDjM;g41la496CeyCuj$rizyVKzHm`~K64jnH$b|MMuLpcm$3y{W$<27I zmFFC__AALwbNrfe?Mp}D9|PMYyd%#K#Osay+RJIXOehCkKa;QafAb>&Y21jiA5RUC z!-Plwlhh%G+&kp`fcGL-wg{}suuhsK03LVQPelIi1yIP6R_CDyd<%C~LH7&JJ2;qb51FaM zSKdV1<3Se(^Z02n`F}H!CV!NN4UmV6MT3f%<~#eXBS+Dt!$rGCE`H_5W(>ruO@;Uc zg%ff*)gy^*Uk2nI}8(v{jseAmrwynBj~uA8r=ZU2BinPYT}SeG9VTUjurQWt;!)c8Tw&A z;k_yDx8FQ!-n%Izcrk4oth=GEdV!Y79&LOdCWa>P7RPf>US1SQWpWRL8V2J%kOtGw z5B;VH?w!CiZn-l?*n{HEOa3DmvnL91poSi#QG-2eTq=Ju55UJJBsm%De^d%5D0CiA zbe_!eePT$=P-P#ZJf1I;iPhcxn7AQLj^G`RC$Qz(jW&A-eEK$tK0}Q01?vGx`fGpX zi}i_F?Q3?*o3{W#nES4AtC$T@zBLkr|FQt6Bg^M~MSAq>3Ue%|k{G!HJHld(>&UnK ztmIaq4X(kYqt1!O^qRxjr%yap^Ku2NZuXV-0^^mQB+wHKwMnt``$s)Cn)ZB&{6iJ; zI=T#rlqX3CJ8P%0Z5^!ycu>pvJXJCXYD{uR@c)Xj15&R&+y)eMr+9IZUzRdxY@=7@ zmX*v_p8hO@>Z&uYlEyJ^)FiN%ejl7c5&3xXP(38&Nj7|TP)fe4lCFAr&~CFXOvPmI zuAQ;@K+u};G8LJE{_-Oj`oFavHJ}S%KeZz2ri!fA$Z-5}OTAo4y@@PyXOpaUw5dm+ z3>NBOWaC-G0I*G}NzMppS=AlSt9L!Qx$ZwEHRaUr$U97O^W0)h(kh$PC_tvBLN;kM zj~nS*WXl(KYt|2hf%tH;>$*2UKpMsqyDJOI11N4m@{hXi0CfH5y5KmPCTGuTKks(Y zkinh-j$!nP>Dk1^caJkL_uyrz5b9`<(?`KGc{g2++Y#f6{PbhUcaPl+Gl1lW#JF@w zs;4|9!Kr#SV3PBBpo)o;71m3jVm?Rn`*=~;HVoD%$tJXtFRX7n3#~?9Dfjq&Fj3~w zb~gYn)wUD@4-_wbFpxC@raf$$1g%~RmuVR&sMR+VXa@&p~s!f^jxzB>auDeci$iq>DHcjoB@~N^RoDe;Obr?PyLhzbIku38bSTDcx4~A>)LciC0^N++a zs1f2*Cu|Q8zg--rw3nYSOdmEq#Pa8e+FjeWCVumcv%a!Gn|sz}Y-4y8_>o~wsk=;L z;OQ?9PX*4>01a$wQ!G^`Z(4!{(h&ZGQ^Ty!junP#p;2ew-Rudf9K?PMPcBI$`D`D4 z$rI&va_Xog9ndEE*XR@tYLw@?HnuEtHVV--)cpzRn=%JOHJX<)*~c=fRg0faeVi7r zW_9$;G-ob*5p?p-Q7i0`yB&Z`*A&`HM(s%-mu*JL$q#%y_S3e~# zG{N_KJ>#afQD*JZE8@mnxeB7u19qZ;u3?V~qo0EXDr;*vZ=UpSg9|BoJ8D=Ua1;R* z{`$>z7>pDZ)iC~~*{Fk(?k^g8n+K3j5AX0gz#0A8<1lQu&-A_v5s$~*B6Lzm?%D*H zA3CWZ`o%+G%&Q~;tGV=@h|KbC;kuP>Gh4rCA_A3U12>Q(tJx0X|?M!R&_xyYCL(V}hV7f#&D z+mjk5U2;_}T7P zFMMeIVD*ElBHawC^ZY@|P1@q|F`bOp`FHzgGuamI_;p%;xzB97DGQVii-d!n*;D{! z9K6(jG!D@DNv`piF=LHoq@LHv0dH)Ze`ho}YBX0Nj!CWPrKy5IT(N5PI8Ja!RNUKT zFh0|1nRYV_pbv1N!~*L2Jws!orI)ZnybLiE{1~h4a+no9ND!TrDsz3Wr8GLPN*xvqFy-5)32PX2l#{BLcAOA@3;`saHRVn*4?{0Oc z#OW`DZx=eA>>UQI%p*$5D~UZ>jWkpoF`);8?N;ZtxC))e*ZLs}=;|Nnuy7SVZr%sa z@6cqv4nzJju}~mQKR16ppL#FkxTN^$7nOLPqR4c%Uz+OF|D8R{F;j zg7-C;)nG{7RaJRmj>C?&C|Z&t|5EHwedL?T!|vDkE|WAhtzB$$97yO?Ba#xGgPHS` zFM|!SuV&88D54w8&VBHTSawY}FxRYQqyKt!u8qt7$9TbKK^ZU>JOzGR_ZS-W4^*5m zu$?d9w_ckzP;f-QPYU4*78L8s!WIfgANZ{-QF`on1E-YVc)sh_e0yO{d3SD)JB$-c z6~R3_VZKqlS@)EDxl^t-Fy^qa?JflA`}CE7XD~QxyM=aVAgNa}=ny2UTG%Oge2^YK zlvIIKlF>vr=>DkJppgCXI!>f+`6mj`t}ygB-6FRL2720C7S!}y>_jCcR0*n5;%k2N zOI`N@+GITB0YS=yRZ7wS48JEt(VIYiVOAS)?XJf~x&vW=emw2XFrbLnND<^ml^hru zuwo6=nMo`Ew=+ZFGQ&mU?A7=x%BlIuvVS56)+QNm=N5)^`+f1R#Dub2YxLb#;{t*j zME0S9-Lx|Uwd?#~8k3&^BT+@A$OxNB=i*wHuiG_r=oQHmDjfrixV z-qCYs*b*yYNUac(X?*1*CjzA*Iih>9>W|GT*0DH_tAI~Phz`$ka^{!A-^T}!5104> zEU1Vf5{gnXl&g(1Q5%e5biWgiTyX4Dig;gUfy$L0-*-rx1Qgoq2sVyXocP_g|Zx6!#gD_)Y{BMGgjorV9-!3D@88 z5y^R&W_}?*|MKg7IOnt+OnoK* z3hdQ9RxTqI;(m30b4l{hMzzhVEAa)mAv$O}Y{aT3h2fX4^LFEhJW+=rJOz9%wRYnF zp%TF!*hnj>UnJsZb7C~vw%ac8=KHViAG>@Zt2eKa@OTS!z{V6$p|iK?;As_}!rIB5 zED9u~9@Ny3zV7?Bn;EcO3gEs@5^wm*0Ts~^Nq`|=uRqC7!&YG&3yC%$mftSGV|!@9 zwZ+5mGL?!b_$#SF6Ux^IT?Zu_4h}L-ohBTp(tA;gfh?uIb^63=m`CExm4zrLP4BX|O2M1=nHAaP~vA_77&E8zkrXRkd76uHYU5`!{U%o71S(c$@Y)QviB zQ}4BY7g>D>9<8hU{Xp?MHW1PTHk22exsHhaK%`{#CJ*)%)X%um02{B~hu74!4SDFL zJ`z{Z@zipo2u#Ep?yQSFP<{k_+;x`!;m9rU5zw3fyVbNNc`!f%Q}=z&>ck6_-r(yX zH8^>p+JS<{C>1D>84M<0@x)&+xJ{ju`nvx%9kGbf&!4@oI8^KeNSbLeAxJYV9{<)b zo1#2d;Yvbqzui%+6l~g3o@=V>u4H1vYK#LJ}7X_q4-OW2Yrq|vE#Jh4PdDni} z^n2I-dZG`nVAgN?eYl=?*DEJo-W8O*2*AnrwF$<+)Zcz4ie{X65x17F_C}5mnMS&t zL+34wZ~18dqpS!jXr+NgyX>h}m1~=R+qL}VVCWocMWCI+&9m%DQvTwGwATph)?bE!4qv6A z+QkQOi31hZQz2e@!my0s(L*$~!}4-74QVpN+7z{C;7HVF@z)B_kU7vNr!Ak(i)b*R zSa<~B=T$oM2d}`{QYc~~GTfr>(jCrUj=eu_9VM^VfYa`zmbzAFxtM;nVq@l1)rTNS zD<|7skQB#LO_yN_pIqsFO~tZR9;C&EDAnQI&WGOF%j~^{4iBSB4a#V?R}}acfPn15h=9Ud=v!Xl*OIq*OnGP!9lS>DCTzn<7T7>G1Cm}sDCQjje!Ibq|jDnVh z;F5n4MlJRVBN0Vc#m{lg(ArZuLDBa%hdDXUj?%BcV-eGcLT`p+C1O@oo zx{vjK(MO3#8h$U?cM^x>cgL9v$1psU-;1P~J%DG|*1VeYGhBI=HCoj35 z%&BVacSC)eR}Y^)6*nU-Xicg(0nQ1g1n^B@YD~-EO#~ma?Z|plXR7z@PHoKOeQVPu zpI-qb8~4DUHMb%Ezht|zh#%3>)3P#=tbD6LynSawI7%o~Br7_W&mS5xX`t6>GdDMr z^-|8k*$(b^0QBwb+6&KKa5rulw0fZF2_`+%lqL8&UP&n36`b+Ytffm>nij-saL9aM zYx1XG3GrKQ9M_UUbnZfBo39WJw9&bi1etna_%rTt;^?fenZAT{5Cu{`r0h|5M?9v{ zfN9le#DSkCHpvEpI<(o-LeIj6G4B5Td!@H;c6|D15`d1qxM;38eMz018V$);x~A^J z$=Hs-n)ARc?kCJAtsCxgEVJ(6V9uq31F?BGW`+oXND%!@4~A^-tp3$>U%WPu>RpwP z%=W8Qw)i7yL?BsE&annFy5W+@Eit-c;-nz+4WFzY9zuY+ZgK%%J8EYkh=mWuSC~s; z#4xxrU8W$a!xh=N-lQG>>@A1WL!kWGg+0LX!$#t*euHR~!uF#;NQt`!rMQBI`P9L0{WKstmI>G!pTLr066^R-1&mj~Y@gyc<0 zkr|cbbTy+`BAx2IS9;iMK{%~NHxXKUdww&G1qTfxrjI)G_Uk%XdRkDjMuRq*hu%?$ zxIa%Hew&V}ls)o(ANl+=FFTcT z^tR8F~jFdItb&4=z>xi2AFP;8^jcPtTJWa1-=L$grnr7 z@R!+2__e9*nFN#E3=f`-AXkaUnV+dkLwdS~B&;7-7$f#4-2a5!Qr;q>Tf0VRz$Q;4=zS({RO?&5qY7$yX3H*!l7D zBdXfEuiUYtzkXtidVo$Y5`pIdyROrAPcY^r_d@puGpCwZd6^LeiA;Crw+3O?x1tLT zNnDv%?KLZ0r=yMa1UmCNxoJbD@AJFZ>$iDv9>USXEnc2+EY0P`+{+4vgQI$h2+GKC zuup{I;X^SMNL|iDm!Aze;~L(d#cLWRK+Cm$e@$Oii$Pc)6Z+!qO$!_lfk&d`0ES29 z(g+9*>KtgON@KwQjC!ZEX(9$DG=am?jR*uO!+P7wSE#UVmYc)IiRi;8EU~6xMoOzi z6{O2z85hhv`Sd`(UTk-fL8m=}-)Z2~6Z?&w5s!nD&DY0OH{8tew%{=JXIRS5PJq;D zHE~UG6EU^aRoDAIJ-(8xD?2A}$Sn>jx`}PmJbA0&2P6RlpW2X66>HnvA<$X)PHQ#Q zZT=b77>8Vj2mPMl1$%0=%CJXrwa}nPNVU!`g>sevd}erm{XCZaLLsB|&vMv<$~zAjO zmBqs~15A+(`DQZNWezI6oup6qsx3%o=R^g9s;|If~yY z$CsBAk%pn)}VwwY6X7<>mc8z&K-H&ZVAI=XW&-KuSEUZWcu6 zM37?P7f?oYe3!L-S2%Faw6XZald3HXJ5c7^cqYc^tM0{tGk(Ln$k~}jwDc+%R|3dk^3Uxyv8D1B9ojJ>AsOG_1sddYIeS2U2S|RxU~TB zIJjH9H({&+9~<5zKPMG4{49S4`z>^a1<&}no!}JL29FX?@g3nim7)5J=7~A8@}TFK zY0w}jQ~ZL&FKUafBslyB3w|X{M=TVb32u73B=%*@&MSDYCsu7n2%PpdII}T^ctH=$ zCN#`i29GGAs@wENo;_@3%>#%+9svSe=$@r{EW9C zEzHys;r~hlA`h$L^?Sf$$?#{I+yFkA@r@!jQrLMa;*)tBhpYhjhE+i60X|d-J(QJ> zSzXVo&FI8zm!g8ccpJMRZ=DdQLI<(?m1J||wDxlU9uu*y=x3>K`_~CW=-h_=o+4zX17tiV}e_9yf2&hy02=Mx#e>~ifgNT}uF7UvRA`O`NP=1y$wk~S6nXJQF ziCgB^j^DtLb-&&mJ=xFFfe5nyg2Ws>s8kqVz(Q6RNcW51L_lvwa#I_RF};bV3B417 z{qg6=rfyHZm^nOt88z7#K~RmO+#YJ+SYm`S<$wwsU+M-!1J|bsFbP21BB~sTJJWy7-*VQ0@MJargFIvGf88NEZSdeR`$Zv#-Vc7}ozT zJ18;`BCeE1m3kLnWRdej&vCDRv$eU&XjSrKZ1U716sVSa`Tt~A$PQTl@y`4w*ZI~A z8<3T#TV%l%f}iWke_8mu7l6z3Ei_$lTvgsHyGD4}z3x-!{N6=Fze4~3sDod{_}TG( zejISe?ftrawAmxZu@ZjsPVywvaR)A*Wq=b%(|`RsTEPPf>al{55oMlCYRP%)x?v;o zDl=)=e6GaF0MUApT6rFwkt=|-bv_TJi&Ny!e# z+|_#q#Z!GHO~yVxmOkGSTIbaq(lMn7H_OgM+URgNVT}{NEH%9FLY&CEQmt{ zf}q4klg~1ODd8Y2gcMDIfk;6-l9my8jIx3fW#J-0NH7Wo(Tn zSW2+vXEgws8I;VE_3u#V`x3?2M2K*>Q-J+wY&Lhx!qm+Ul;S->%;a#q`7HtLOs^Ev zI>m=Wu*+bHy$>jk442{|Jh=H5GtXnZYqpwB%GqIupEFY~oH!TYrh=bm!szhR+j$O~N1uUeY8P00|CMdbuEH-=q zs~qZzAxdgLQ%fA_EI}~$iDc;7tCx#CHgaa)2KQXws7m3LbvAfse zmjLd}f+rYCgMX{zj0WBmQBhuQI@1)KQ(UZ)XbiqpvP*nL&S!*<&Js!CJ$+UoN>x%4 zKEL^p_{#%KVJ0*3uMGDeP-lJ^OWHoU&fgJd+hL$#XTjsr!uOIaTy%OeutZPZHR=dL z5B^VRgAPpuj)I$?A%dJh-y=#$%xk7F^U*KU&t%&-%Oxr3UP zrU{Mk7s3vHO{I|A9l!V(^0FR04$`u^ru$~i?E$*{Rk9>C!r(dbqggCDCCiQP#GhNj z9sGnXWM9gU5Q;HI;}CTz*?3l_ZT)(@;Vd38=@{DAI|1S0oC&8u3K8&_D`Wj=w^-t) zv5xiF<6^my*XGJ*iKKEOU7U%SuzcoBdg&v$klWOoY?$nRE~7}ze@#y@L~FYpAp=AD zgp#AfmuwSw-U0QMB<+L1A;V9PU;9_D4@kVfLGYHPqfsXk@^lq#u)T~>w(%pid^^9Y zKJHI3v|iJ9TauzU-bz2DE04dCW`US{^BOvQ){E#ul8pRk$x|9}x)JlSa@*E#vBUaA z1$7iTC#(>6LXkBN(+P&4%)O&W8^YX>Z8yr=Dxe6Oe0xtXi zmSb9V?T}$!tyxa_<~d>%rwJm&!@LPW8cx%2$j94B?cvbQ@{`0z7*pfliKuf&=auNM z>8ch=pufg5j`(>jZ?mi= z^1079&3^k??oL&yz1ebDKQu#0x3J+*UJ)0$CzXXIV}bUtG`{03mACL!dtCaf%5Jm;uE1Mwb&SABUp9D|9s)0zo?VPAS z6oyo5=zs6T`1AAY4)GVWBl7otCAs>z=+>G5GBS7vq&M9X z55En_1#c5=I2ZBaG(xnmD08L<>y1pf=aN~be#o=G5tY;s)_GQZ$)qsE8OuwAk%# zabZkwF$m&jVqi4F)B}q(vsU-Em%lJxVl>#>!uKiR2^YJRGpTdodWq$V7)U!iyWT42 z>5P1N0FT+T@!-Mn6gR(DnkyRf(1*7#_xDk1xz~M;OV3hrA(>LV#Q;-}TTbI=KKb#Y z<5euXtD&&w*AvV4yzw=fQA1)9y7d|_9%Wd~H90q|^A!N*$GzQlCXhF@83XDw!Sl4n zobK}S60-4DM4#mwgs!xPqIQeYHikJYLIz2Ams+s(!$ZPRMvCyCZJXnU=ht9JSv6C4 zu{$5jdAr3fJm|&Ds2v!Igoi>LV$k7_ZOmEcNkLqWafQc5gyi{@QR~StvhSqM#MVg> zorkTfPSA>%62`H9!TO+$(=b&{lj>hj>o>W@HjhcqPXDI4#j*7R4NXe3A*6`(3i+Yx zs=ITn*Fvq=>}_PftE>}+KOM-C;BQ>Eo|_Z)c8;)iA!XRdYo%_3`iqYb%a&+4s!d6-uIk{N^g)yQ4W2i1CRFbRYO&5|Eg`L zqbP**Z*io{ppp}|ftMht&1~BumC_t?G)Xlx@WXHGi_y^p*{@TKqschrW!3pwRrSH4 z7{@O2yo{nmMy@>F*M@3?G zJjIOuz=Lt;EjnvW-_PNDWnY|m_l>Cmc2a+lYr=>16#}0#3$tP6LZJDNrHMwbec_@Q zda}4#73pwaxeG(--G{0h+@))IRWeDzzu>JR=)1VjRfb=16L)aX%pfu7LpJY;c>Pi} zblK&+$#q+N&Mt#lMX+yCo`)EnJ28A{$nTTIH+_eqLfQJ(G&}wcbxMzD?5;U}ehDyE zZ}DnFA#tHzlJ}B(hTTM%z5B(3pl>lD_K!|yW8Xwczr#X!5K&saXtw-f6YS|enH-d{ z#g^c}43B*>TJqFKHM>R$=NbkDA8r1)aJ48lp?RD;5|yUuib89~eTBidn7+$q&HTxPl%Z z2Uw%uxWIFfNnsDG(hl0bpwe9*flb-MuGYVlb}GIGEJhZbrXNJ4{{y4jiVtPDJjQtC zrfM|4zdFFeXq2>)v~sB;b-`OO`Q%z&HAa2CC557#_WfnD<=XB(&5L`3!@L;hv1J^9 zh8FHRVQ>C6LQjk}-$riU8bOC_m|FZEH$SMM((*(WsPG2y-C}7DONFtL#~4v!TOv7j zXR=y*7P$5x-!CCm!%=6p#NYpz_Ffmk1R}y3N6q-cMM#6iNAT!t7f^eL4q1dm-L$0^5 z$BTe8fZChzW!(OYNml9I^j$D^V4Iw-HPClUz+u89vS+xk?NHiNq<4ZaUxIF8o)q_O z)zc&>op%D=XnZv$58kx~3aGLOdgv>PtayGFHCD?Hs&TU4CX*I3vULg!S6!P|IT735P~eM(im zn`lB^yq*`ZK)W&#$JACA$3(Icc=EPtE}YAm=!yT&`YSWQkP{nAFSY&4v#RBBT$#qAH&>t?# z@$?gt!c;Z)JF8Hjh7BEl-Lddkw4%Ie_wYeUBpu7<6b86bBFB%we?@gA1m`}J6yusK z75?141|Q!O8;xKnI-R30;m_k6K{z#c_;DjJ(U;dn`Bq33G%oQP)`d!j1kekGo>(k6 z%sj^ldK~AiQdSkc#62EVuM#Z8y|aX`^)NWNDum*_z5W6fuW9n8=$)l!J{`&Z@vi}M`$(DWA1*c*)n_tjo0==|zv%kQu(+ab zO%%lmPVnGT5D4z>TEPhr+%>pEa0u>&1oz-haCdiim!QEN&dS$&@9um1oS*Qco~pIR z9P-MTK#N=)hjPuY4v1x$>uH9X3TsFY^k49nwN}@(aPUJ3({v`U7nxg01#2+&g*{mj zk|bRzC-bQZ&61dO!|A>hV8)sh6un;@29f^>5pKn?Yh@JWF{(ja@Aq z0GEh>zAaNIkf6!$np()90)diG0XbTU05`^`tP-J z{XubzU^T%_x!_Oq7ABp;g8bEGM)dV(>ImPSeuBlf19A6E5m$;B?Y)t$} zzK*DmHZDg)w#V_?$NqNkd++*;714V6uP0F{kz_Ixc3Mh)UG;~q-B&UDw+#>VN@ZW!!Wt&Cr_{ckY*Y+j_Zi@FRz7j#MsImH2r z69LY{d9n1b7(CbVccOFzDCsv`1~)$ED0A*3=mzH-U8z5zTS>%lv$&r&;I1)R!CaXc zRe(a|#2yCH{TZhQXdSDqq^bS~(~SHVmysx%!z4g@+@oL_13+q{cwq2cbdE5?NwkiT zDvxd_^SP&BYW>@tU?PpB2dHhd0brFbmKHwTMm=3!Wp?P^V7DxBG^vC7*wR1QJ6;Qj>zIr1y5xXSMGmkAO0Zc~|W+e{|xC?@g& zvam^ZPk2s0eZ$M65ObQ!lz@r6f(R2LlWSsvft9S_smZ0g9cywSi&j(6#YE5J&?}P8 zWkx(szz)q-h#Ub;@yC9MvJ?V?(p+q5=7`C8XfGBd30u|-qYIhr^&`~nD=AN_wq9{P zDOoq~{H#+gmSm%}Mpzb(Te1sh42csQ(qKOxOqwl`p;hIT(ypNR#)ofNGCmyowW z&5KgF!dC!cCe#TmUXbu$1vmf%cN|n9HV^(_&IVU+PNqgP3hU2zo08sn*s1zSt5v}- ze2uGo>b~yq{V}IRV^xh$t!?a8vmUF#p4tBPB9MEAt0xTCE&oJACc*(2(8INL zg1=*FPPS15Sjj1Io`7jZ%6oRI3UqncJBLk*evcAETr{F{sumFRG)hrNUS;dLol$V%W`M&E3yY#j zK`eC4C%ztPSW0dYJkVmKU}ic^bTghsf4XKf9L=|J2fKnob%e6w%D(A3tE%qZO6AQC8sBp$p{YFZnKSvz*=k&Z1qu4*L;_Mp?WLvGuJn|e}2J5^l>&&{>1*P6tF|YIqegGDPG%|;0 zAfK9Ghpox{ge#d&4Q{lH^V^6S>O0+Wj9UO096&`wG6XX%tbD?!+}>WC%8cS%_|hGlMqB5>wUuDe3xRjypH1JI<4B77eP0MFpe zCH*gQGhZY|8Ax6C;(w-ixyY>hS{XzBF5o^*ov5-Js|X9+WEfH?0!#5ozIL>cRN57> z59_7#aA3G89ECUq<7US&I%_@Mw?%Eh0H1A@%!FqI4Uu~@vVst_!OP@AY-ntfX~#@p zVy`bpn0HD_E5aR3_gxE7!TU$xc^Q9q+;>S7;6)rwNYa91SuyseqI6%q!a=-u;?i@v z1@rEHPh7z3D9{I^8emc{KWpp82ji}!Yqa&uo!(cR-Dgfb#@*!u)6B(L_`0AFaqR9s zDeUOd!gRn_q33t{w(Br+MuF0Z%k*L-?7pj(p_|i@mZI1LReq4xs1LYvIB`eCF9=sOntki@W?t1c>_QJ_ zjOlXzGrxMiRp*qy(3fztL)@O@7{EHx>h-X;4JaPOJOxFVKQp}8g7+7@l4)P?S{ZVWd8#I}-Lk|Dn)$bZ5_g z)Y3MkZf`zBv_Cr*+DY*_ktq79i+t01l`Dk4tzp=Y%K6f2v-Y*~X9H}Mb{nBHELE8P zacYB3+WyvL8qXv$3y}e1B84^;)J04?Zn8T!xxwqLnTb@17qQCDfT$rTPkTJ9b2G)y zJK3_Dl6;7RF7Tgn^Z!qK2n@8Z_5y9UP_{lTxjR=p1}6Mk_wlSezV<$oNTix|7;fzy z{F`nanOvALnL@Nag;*B;e)(|WX(ls(`jW=|lWe`3x_YkHz8ns7a*Y0RU)zmft@2R) z;r7vmJ9&2T^78T_Lh5RoA1EH4+9_Wo9r+#>JW|5bpUATNq;_9q4XsYPyEu)xBB2ZY ztM-vyj_Hqe=~A(ApZZ628@KK~Bp4CkHXtt=FYM<#kB68xH$eY{qg`f^@bzCssVLvldBh>80+cxShc&@d3hkQPAE7nJO?MV+iMP3El{ zCo}|uzcXn9&vaNN79h?!NG_s79&`5H(JKdMGfsxm2s$0F62<6y4_X6M{PN~+?P?5S zS^D~|jESVqa@IycK7l2!ohMuA;`(T7um>rIY6!^~7Wp5-@a5G;i|eUI_wDMc2su)p zC^nEJsTd68A8pidy_&fO4ffUYfa-X%_}D8SV5r?H0G z5b^o>z45)A>CX?gL~&7w3JjeQRz4w;D_LO%s^@>i0Jx(%=~i7d<>}LI1AYMKk5?6n z;oph6F7U{T!f5r-FNVh}7!Wn$WD5YX`(=SN2B@| z8ht}uPPJNk(AlyV2y%XNmNn5dEz1W?VY-n;Zszb_BGZCDguuwpbh&VYz#-_|HJk?a>gcb3BlL6Z z>d~;A59JU8trKMA?r1*KH0Ox2IdXxez)f{?PZzt#SCh03gP)_TZE3j#bzVmS5no;+{0tvF1yXD23NzLkmOqg_#-{zKc)HRL>AWm8pfyg|+OyQS zGc4*gVL;c+6gykULw4g5)%aYDwfF>LSJawra9G6-hJkP`)Ek~`v?C5IN4#YQj3=t(U0EV`yDb`wjw)II!=Ly5vu}B#bn|JKLMExO<>(9SL zhj2P->9-oE`LP@KrpOjpOR0nC+J@})hks*M5UQk@&>83wc-*NF?^(@HhKX#?ITYOCO%0X87q%aIi0?FlzfdFb z6>G<4`;mw%C6k8i?fv3{(F|*|ypl(YpL*WrJpm3Ip^N z*dvaAhvtlx7WIP1$}M>=me4fxNuI+eP7ALGvL;9fJH8f7p|Q;?s*+@p5qt(A)HH(7Hw&t zw~dp$J6%Z;tkbi5Tp;LuxJ!xEGsLHz-A$s^!}6wJpI?M0jKd@u>KNE1D_TqpfxOihN8PUzYzI+SO5NHx9Gm%U})0HoEL%B62Ov8mzb2 z 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

+jWpUxN}PZs$9 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

dx0^U4bP#Q`E4KKMo|3nN5JgL*oxv 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

rI9QfdZ65+~61o@na(j(?#LV*o=Rr?_ZU&@JC@Q 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%0AZd71BGbgWH@E=6ApU&c7!W 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 `GtnceYuCt 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

uN+V_{IEK6er>E;fdHFa^=1%L^ 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Π(Ta}%@$H($qZ|wD!7gF6a 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%0A42!eauak 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

`z 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 z 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 ft-w0Fc4|+{?c6=+*xMNF$8n diff --git a/assets/Submission-Flow-Diagram.png b/assets/Submission-Flow-Diagram.png new file mode 100644 index 0000000000000000000000000000000000000000..21c8e169847309f08491c600172f3e6854fd4913 GIT binary patch literal 31741 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 + + + + \ No newline at end of file diff --git a/enki-problems/common.props b/enki-problems/common.props new file mode 100644 index 0000000..7e89c3a --- /dev/null +++ b/enki-problems/common.props @@ -0,0 +1,19 @@ + + + latest + 1.0.0 + $(NoWarn);CS1591 + app + + + + + $(NoWarn);0436 + + + + + + + + \ No newline at end of file diff --git a/enki-problems/global.json b/enki-problems/global.json new file mode 100644 index 0000000..7cd6a1f --- /dev/null +++ b/enki-problems/global.json @@ -0,0 +1,7 @@ +{ + "sdk": { + "version": "7.0.0", + "rollForward": "latestMajor", + "allowPrerelease": true + } +} \ No newline at end of file diff --git a/enki-problems/src/EnkiProblems.Application.Contracts/DaprMetadata.cs b/enki-problems/src/EnkiProblems.Application.Contracts/DaprMetadata.cs new file mode 100644 index 0000000..0418a06 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Application.Contracts/DaprMetadata.cs @@ -0,0 +1,6 @@ +namespace EnkiProblems; + +public class DaprMetadata +{ + public Grpc.Core.Metadata HermesContext { get; set; } +} diff --git a/enki-problems/src/EnkiProblems.Application.Contracts/EnkiProblems.Application.Contracts.csproj b/enki-problems/src/EnkiProblems.Application.Contracts/EnkiProblems.Application.Contracts.csproj new file mode 100644 index 0000000..721a7a6 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Application.Contracts/EnkiProblems.Application.Contracts.csproj @@ -0,0 +1,36 @@ + + + + + + net7.0 + enable + EnkiProblems + + + + + + + + + + + + + + + + all + runtime; build; native; contentfiles; analyzers; buildtransitive + + + + + + + + + + + diff --git a/enki-problems/src/EnkiProblems.Application.Contracts/EnkiProblemsApplicationContractsModule.cs b/enki-problems/src/EnkiProblems.Application.Contracts/EnkiProblemsApplicationContractsModule.cs new file mode 100644 index 0000000..f847ebb --- /dev/null +++ b/enki-problems/src/EnkiProblems.Application.Contracts/EnkiProblemsApplicationContractsModule.cs @@ -0,0 +1,28 @@ +using Volo.Abp.Account; +using Volo.Abp.FeatureManagement; +using Volo.Abp.Identity; +using Volo.Abp.Modularity; +using Volo.Abp.ObjectExtending; +using Volo.Abp.PermissionManagement; +using Volo.Abp.SettingManagement; +using Volo.Abp.TenantManagement; + +namespace EnkiProblems; + +[DependsOn( + typeof(EnkiProblemsDomainSharedModule), + typeof(AbpAccountApplicationContractsModule), + typeof(AbpFeatureManagementApplicationContractsModule), + typeof(AbpIdentityApplicationContractsModule), + typeof(AbpPermissionManagementApplicationContractsModule), + typeof(AbpSettingManagementApplicationContractsModule), + typeof(AbpTenantManagementApplicationContractsModule), + typeof(AbpObjectExtendingModule) +)] +public class EnkiProblemsApplicationContractsModule : AbpModule +{ + public override void PreConfigureServices(ServiceConfigurationContext context) + { + EnkiProblemsDtoExtensions.Configure(); + } +} diff --git a/enki-problems/src/EnkiProblems.Application.Contracts/EnkiProblemsDtoExtensions.cs b/enki-problems/src/EnkiProblems.Application.Contracts/EnkiProblemsDtoExtensions.cs new file mode 100644 index 0000000..92a2719 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Application.Contracts/EnkiProblemsDtoExtensions.cs @@ -0,0 +1,25 @@ +using Volo.Abp.Threading; + +namespace EnkiProblems; + +public static class EnkiProblemsDtoExtensions +{ + private static readonly OneTimeRunner OneTimeRunner = new OneTimeRunner(); + + public static void Configure() + { + OneTimeRunner.Run(() => { + /* You can add extension properties to DTOs + * defined in the depended modules. + * + * Example: + * + * ObjectExtensionManager.Instance + * .AddOrUpdateProperty("Title"); + * + * See the documentation for more: + * https://docs.abp.io/en/abp/latest/Object-Extensions + */ + }); + } +} diff --git a/enki-problems/src/EnkiProblems.Application.Contracts/Permissions/EnkiProblemsPermissionDefinitionProvider.cs b/enki-problems/src/EnkiProblems.Application.Contracts/Permissions/EnkiProblemsPermissionDefinitionProvider.cs new file mode 100644 index 0000000..cd73b6f --- /dev/null +++ b/enki-problems/src/EnkiProblems.Application.Contracts/Permissions/EnkiProblemsPermissionDefinitionProvider.cs @@ -0,0 +1,20 @@ +using EnkiProblems.Localization; +using Volo.Abp.Authorization.Permissions; +using Volo.Abp.Localization; + +namespace EnkiProblems.Permissions; + +public class EnkiProblemsPermissionDefinitionProvider : PermissionDefinitionProvider +{ + public override void Define(IPermissionDefinitionContext context) + { + var myGroup = context.AddGroup(EnkiProblemsPermissions.GroupName); + //Define your own permissions here. Example: + //myGroup.AddPermission(EnkiProblemsPermissions.MyPermission1, L("Permission:MyPermission1")); + } + + private static LocalizableString L(string name) + { + return LocalizableString.Create(name); + } +} diff --git a/enki-problems/src/EnkiProblems.Application.Contracts/Permissions/EnkiProblemsPermissions.cs b/enki-problems/src/EnkiProblems.Application.Contracts/Permissions/EnkiProblemsPermissions.cs new file mode 100644 index 0000000..44c616f --- /dev/null +++ b/enki-problems/src/EnkiProblems.Application.Contracts/Permissions/EnkiProblemsPermissions.cs @@ -0,0 +1,9 @@ +namespace EnkiProblems.Permissions; + +public static class EnkiProblemsPermissions +{ + public const string GroupName = "EnkiProblems"; + + //Add your own permission names. Example: + //public const string MyPermission1 = GroupName + ".MyPermission1"; +} diff --git a/enki-problems/src/EnkiProblems.Application.Contracts/Problems/CreateProblemDto.cs b/enki-problems/src/EnkiProblems.Application.Contracts/Problems/CreateProblemDto.cs new file mode 100644 index 0000000..93482e5 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Application.Contracts/Problems/CreateProblemDto.cs @@ -0,0 +1,56 @@ +using System.ComponentModel.DataAnnotations; + +namespace EnkiProblems.Problems; + +public class CreateProblemDto +{ + [Required] + [StringLength( + EnkiProblemsConsts.MaxNameLength, + MinimumLength = EnkiProblemsConsts.MinNameLength + )] + public string Name { get; set; } + + [Required] + [StringLength( + EnkiProblemsConsts.MaxBriefLength, + MinimumLength = EnkiProblemsConsts.MinBriefLength + )] + public string Brief { get; set; } + + [Required] + [StringLength( + EnkiProblemsConsts.MaxDescriptionLength, + MinimumLength = EnkiProblemsConsts.MinDescriptionLength + )] + public string Description { get; set; } + + [Required] + [StringLength( + EnkiProblemsConsts.MaxSourceNameLength, + MinimumLength = EnkiProblemsConsts.MinSourceNameLength + )] + public string SourceName { get; set; } + + [Required] + [StringLength( + EnkiProblemsConsts.MaxAuthorNameLength, + MinimumLength = EnkiProblemsConsts.MinAuthorNameLength + )] + public string AuthorName { get; set; } + + [Required] + public decimal Time { get; set; } + + [Required] + public decimal TotalMemory { get; set; } + + [Required] + public decimal StackMemory { get; set; } + + [Required] + public IoTypeEnum IoType { get; set; } + + [Required] + public DifficultyEnum Difficulty { get; set; } +} diff --git a/enki-problems/src/EnkiProblems.Application.Contracts/Problems/CreateTestDto.cs b/enki-problems/src/EnkiProblems.Application.Contracts/Problems/CreateTestDto.cs new file mode 100644 index 0000000..c2b34c1 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Application.Contracts/Problems/CreateTestDto.cs @@ -0,0 +1,14 @@ +using System.ComponentModel.DataAnnotations; +using Volo.Abp.Content; + +namespace EnkiProblems.Problems; + +public class CreateTestDto +{ + [Required] + [Range(EnkiProblemsConsts.MinScore, EnkiProblemsConsts.MaxScore)] + public int Score { get; set; } + + [Required] + public IRemoteStreamContent ArchiveFile { get; set; } +} diff --git a/enki-problems/src/EnkiProblems.Application.Contracts/Problems/Events/ProblemEvalMetadataUpsertedEvent.cs b/enki-problems/src/EnkiProblems.Application.Contracts/Problems/Events/ProblemEvalMetadataUpsertedEvent.cs new file mode 100644 index 0000000..4c840d6 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Application.Contracts/Problems/Events/ProblemEvalMetadataUpsertedEvent.cs @@ -0,0 +1,24 @@ +using System; +using System.Collections.Generic; +using Volo.Abp.Application.Dtos; + +namespace EnkiProblems.Problems.Events; + +public class ProblemEvalMetadataUpsertedEvent : EntityDto +{ + public string Name { get; set; } + + public Guid ProposerId { get; set; } + + public bool IsPublished { get; set; } + + public decimal Time { get; set; } + + public decimal TotalMemory { get; set; } + + public decimal StackMemory { get; set; } + + public IoTypeEnum IoType { get; set; } + + public IEnumerable Tests { get; set; } +} diff --git a/enki-problems/src/EnkiProblems.Application.Contracts/Problems/Events/TestDeletedEvent.cs b/enki-problems/src/EnkiProblems.Application.Contracts/Problems/Events/TestDeletedEvent.cs new file mode 100644 index 0000000..359fbbb --- /dev/null +++ b/enki-problems/src/EnkiProblems.Application.Contracts/Problems/Events/TestDeletedEvent.cs @@ -0,0 +1,9 @@ +using System; +using Volo.Abp.Application.Dtos; + +namespace EnkiProblems.Problems.Events; + +public class TestDeletedEvent : EntityDto +{ + public Guid ProblemId { get; set; } +} diff --git a/enki-problems/src/EnkiProblems.Application.Contracts/Problems/Events/TestUpsertedEvent.cs b/enki-problems/src/EnkiProblems.Application.Contracts/Problems/Events/TestUpsertedEvent.cs new file mode 100644 index 0000000..9071bb2 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Application.Contracts/Problems/Events/TestUpsertedEvent.cs @@ -0,0 +1,13 @@ +using System; +using Volo.Abp.Application.Dtos; + +namespace EnkiProblems.Problems.Events; + +public class TestUpsertedEvent : EntityDto +{ + public Guid ProblemId { get; set; } + + public string InputDownloadUrl { get; set; } + + public string OutputDownloadUrl { get; set; } +} diff --git a/enki-problems/src/EnkiProblems.Application.Contracts/Problems/GetProblemByIdDto.cs b/enki-problems/src/EnkiProblems.Application.Contracts/Problems/GetProblemByIdDto.cs new file mode 100644 index 0000000..553b33d --- /dev/null +++ b/enki-problems/src/EnkiProblems.Application.Contracts/Problems/GetProblemByIdDto.cs @@ -0,0 +1,10 @@ +using System; +using System.ComponentModel.DataAnnotations; + +namespace EnkiProblems.Problems; + +public class GetProblemByIdDto +{ + [Required] + public Guid ProblemId { get; set; } +} diff --git a/enki-problems/src/EnkiProblems.Application.Contracts/Problems/IProblemAppService.cs b/enki-problems/src/EnkiProblems.Application.Contracts/Problems/IProblemAppService.cs new file mode 100644 index 0000000..6d1f003 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Application.Contracts/Problems/IProblemAppService.cs @@ -0,0 +1,31 @@ +using System; +using System.Threading.Tasks; +using Volo.Abp.Application.Dtos; +using Volo.Abp.Application.Services; + +namespace EnkiProblems.Problems; + +public interface IProblemAppService : IApplicationService +{ + Task CreateAsync(CreateProblemDto input); + + Task> GetListAsync(ProblemListFilterDto input); + + Task> GetListUnpublishedAsync(ProblemListFilterDto input); + + Task GetAsync(Guid id); + + Task GetUnpublishedAsync(Guid id); + + Task UpdateAsync(Guid id, UpdateProblemDto input); + + Task DeleteAsync(Guid id); + + Task CreateTestAsync(Guid id, CreateTestDto input); + + Task UpdateTestAsync(Guid id, int testId, UpdateTestDto input); + + Task DeleteTestAsync(Guid id, int testId); + + Task GetEvalMetadataAsync(Guid id); +} diff --git a/enki-problems/src/EnkiProblems.Application.Contracts/Problems/ProblemDto.cs b/enki-problems/src/EnkiProblems.Application.Contracts/Problems/ProblemDto.cs new file mode 100644 index 0000000..5695725 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Application.Contracts/Problems/ProblemDto.cs @@ -0,0 +1,35 @@ +using System; +using Volo.Abp.Application.Dtos; + +namespace EnkiProblems.Problems; + +public class ProblemDto : EntityDto +{ + public string Name { get; set; } + + public string Brief { get; set; } + + public string Description { get; set; } + + public bool IsPublished { get; set; } + + public string SourceName { get; set; } + + public string AuthorName { get; set; } + + public decimal Time { get; set; } + + public decimal TotalMemory { get; set; } + + public decimal StackMemory { get; set; } + + public Guid ProposerId { get; set; } + + public DateTime CreationDate { get; set; } + + public DateTime? PublishingDate { get; set; } + + public IoTypeEnum IoType { get; set; } + + public DifficultyEnum Difficulty { get; set; } +} diff --git a/enki-problems/src/EnkiProblems.Application.Contracts/Problems/ProblemEvalMetadataDto.cs b/enki-problems/src/EnkiProblems.Application.Contracts/Problems/ProblemEvalMetadataDto.cs new file mode 100644 index 0000000..efa04cc --- /dev/null +++ b/enki-problems/src/EnkiProblems.Application.Contracts/Problems/ProblemEvalMetadataDto.cs @@ -0,0 +1,24 @@ +using System; +using System.Collections.Generic; +using Volo.Abp.Application.Dtos; + +namespace EnkiProblems.Problems; + +public class ProblemEvalMetadataDto : EntityDto +{ + public string Name { get; set; } + + public Guid ProposerId { get; set; } + + public bool IsPublished { get; set; } + + public decimal Time { get; set; } + + public decimal TotalMemory { get; set; } + + public decimal StackMemory { get; set; } + + public IoTypeEnum IoType { get; set; } + + public IEnumerable Tests { get; set; } +} diff --git a/enki-problems/src/EnkiProblems.Application.Contracts/Problems/ProblemListFilterDto.cs b/enki-problems/src/EnkiProblems.Application.Contracts/Problems/ProblemListFilterDto.cs new file mode 100644 index 0000000..9f38aa9 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Application.Contracts/Problems/ProblemListFilterDto.cs @@ -0,0 +1,15 @@ +using System; +using Volo.Abp.Application.Dtos; + +namespace EnkiProblems.Problems; + +public class ProblemListFilterDto : PagedAndSortedResultRequestDto +{ + public string? Name { get; set; } + + public Guid? ProposerId { get; set; } + + public IoTypeEnum? IoType { get; set; } + + public DifficultyEnum? Difficulty { get; set; } +} diff --git a/enki-problems/src/EnkiProblems.Application.Contracts/Problems/ProblemWithTestsDto.cs b/enki-problems/src/EnkiProblems.Application.Contracts/Problems/ProblemWithTestsDto.cs new file mode 100644 index 0000000..4ecb8a5 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Application.Contracts/Problems/ProblemWithTestsDto.cs @@ -0,0 +1,38 @@ +using System; +using System.Collections.Generic; +using Volo.Abp.Application.Dtos; + +namespace EnkiProblems.Problems; + +public class ProblemWithTestsDto : EntityDto +{ + public string Name { get; set; } + + public string Brief { get; set; } + + public string Description { get; set; } + + public bool IsPublished { get; set; } + + public string SourceName { get; set; } + + public string AuthorName { get; set; } + + public decimal Time { get; set; } + + public decimal TotalMemory { get; set; } + + public decimal StackMemory { get; set; } + + public Guid ProposerId { get; set; } + + public DateTime CreationDate { get; set; } + + public DateTime? PublishingDate { get; set; } + + public IoTypeEnum IoType { get; set; } + + public DifficultyEnum Difficulty { get; set; } + + public IEnumerable Tests { get; set; } +} diff --git a/enki-problems/src/EnkiProblems.Application.Contracts/Problems/TestDto.cs b/enki-problems/src/EnkiProblems.Application.Contracts/Problems/TestDto.cs new file mode 100644 index 0000000..59b00d5 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Application.Contracts/Problems/TestDto.cs @@ -0,0 +1,12 @@ +using Volo.Abp.Application.Dtos; + +namespace EnkiProblems.Problems; + +public class TestDto : EntityDto +{ + public int Score { get; set; } + + public string InputDownloadUrl { get; set; } + + public string OutputDownloadUrl { get; set; } +} diff --git a/enki-problems/src/EnkiProblems.Application.Contracts/Problems/Tests/DownloadTestStreamDto.cs b/enki-problems/src/EnkiProblems.Application.Contracts/Problems/Tests/DownloadTestStreamDto.cs new file mode 100644 index 0000000..44c62c0 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Application.Contracts/Problems/Tests/DownloadTestStreamDto.cs @@ -0,0 +1,11 @@ +using Asgard.Hermes; + +namespace EnkiProblems.Problems.Tests; + +public class DownloadTestStreamDto +{ + public string ProblemId { get; set; } + public string TestId { get; set; } + public StatusCode StatusCode { get; set; } + public byte[] TestArchiveBytes { get; set; } +} diff --git a/enki-problems/src/EnkiProblems.Application.Contracts/Problems/Tests/Grpc/hermes.proto b/enki-problems/src/EnkiProblems.Application.Contracts/Problems/Tests/Grpc/hermes.proto new file mode 100644 index 0000000..b9bdc39 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Application.Contracts/Problems/Tests/Grpc/hermes.proto @@ -0,0 +1,87 @@ +syntax = "proto3"; + +option java_multiple_files = true; +option csharp_namespace = "Asgard.Hermes"; +option java_package = "com.asgard.hermes"; +option java_outer_classname = "HermesTests"; +option objc_class_prefix = "Hermes"; + +package asgard.hermes; + +// gRPC Upload request and response messages +message UploadRequest { + oneof packet { + Metadata metadata = 1; + Chunk chunk = 2; + } +} + +message UploadResponse { + StatusResponse status = 1; +} + +// gRPC Download request and response messages +message DownloadRequest { + string problem_id = 1; + string test_id = 2; +} + +message DownloadResponse { + oneof packet { + Metadata metadata = 1; + Chunk chunk = 2; + StatusResponse status = 3; + } +} + +// gRPC GetDownloadLinkForTest request and response messages +message GetDownloadLinkForTestRequest { + string problem_id = 1; + string test_id = 2; +} + +message GetDownloadLinkForTestResponse { + string input_link = 1; + string output_link = 2; + StatusResponse status = 3; +} + +// gRPC DeleteTest request and response messages +message DeleteTestRequest { + string problem_id = 1; + string test_id = 2; +} + +message DeleteTestResponse { + StatusResponse status = 1; +} + +// Hermes Service +service HermesTestsService { + rpc UploadTest(stream UploadRequest) returns (UploadResponse) {} + rpc DownloadTest(DownloadRequest) returns (stream DownloadResponse) {} + rpc GetDownloadLinkForTest(GetDownloadLinkForTestRequest) returns (GetDownloadLinkForTestResponse) {} + rpc DeleteTest(DeleteTestRequest) returns (DeleteTestResponse) {} +} + +// core messages +message Metadata { + string problem_id = 1; + string test_id = 2; + int32 test_size = 3; +} + +message Chunk { + bytes data = 1; +} + +message StatusResponse { + string message = 1; + StatusCode code = 2; +} + +enum StatusCode { + Ok = 0; + Failed = 1; + Unknown = 2; +} diff --git a/enki-problems/src/EnkiProblems.Application.Contracts/Problems/Tests/ITestService.cs b/enki-problems/src/EnkiProblems.Application.Contracts/Problems/Tests/ITestService.cs new file mode 100644 index 0000000..d0eee9b --- /dev/null +++ b/enki-problems/src/EnkiProblems.Application.Contracts/Problems/Tests/ITestService.cs @@ -0,0 +1,14 @@ +using System.Threading.Tasks; +using Asgard.Hermes; + +namespace EnkiProblems.Problems.Tests; + +public interface ITestService +{ + Task UploadTestAsync(UploadTestStreamDto input); + Task DownloadTestAsync(DownloadRequest input); + Task DeleteTestAsync(DeleteTestRequest input); + Task GetDownloadLinkForTestAsync( + GetDownloadLinkForTestRequest input + ); +} diff --git a/enki-problems/src/EnkiProblems.Application.Contracts/Problems/Tests/UploadTestStreamDto.cs b/enki-problems/src/EnkiProblems.Application.Contracts/Problems/Tests/UploadTestStreamDto.cs new file mode 100644 index 0000000..991fa51 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Application.Contracts/Problems/Tests/UploadTestStreamDto.cs @@ -0,0 +1,8 @@ +namespace EnkiProblems.Problems.Tests; + +public class UploadTestStreamDto +{ + public string ProblemId { get; set; } + public string TestId { get; set; } + public byte[] TestArchiveBytes { get; set; } +} diff --git a/enki-problems/src/EnkiProblems.Application.Contracts/Problems/UpdateProblemDto.cs b/enki-problems/src/EnkiProblems.Application.Contracts/Problems/UpdateProblemDto.cs new file mode 100644 index 0000000..7a84b63 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Application.Contracts/Problems/UpdateProblemDto.cs @@ -0,0 +1,48 @@ +using System.ComponentModel.DataAnnotations; + +namespace EnkiProblems.Problems; + +public class UpdateProblemDto +{ + [StringLength( + EnkiProblemsConsts.MaxNameLength, + MinimumLength = EnkiProblemsConsts.MinNameLength + )] + public string? Name { get; set; } + + [StringLength( + EnkiProblemsConsts.MaxBriefLength, + MinimumLength = EnkiProblemsConsts.MinBriefLength + )] + public string? Brief { get; set; } + + [StringLength( + EnkiProblemsConsts.MaxDescriptionLength, + MinimumLength = EnkiProblemsConsts.MinDescriptionLength + )] + public string? Description { get; set; } + + [StringLength( + EnkiProblemsConsts.MaxSourceNameLength, + MinimumLength = EnkiProblemsConsts.MinSourceNameLength + )] + public string? SourceName { get; set; } + + [StringLength( + EnkiProblemsConsts.MaxAuthorNameLength, + MinimumLength = EnkiProblemsConsts.MinAuthorNameLength + )] + public string? AuthorName { get; set; } + + public decimal? Time { get; set; } + + public decimal? TotalMemory { get; set; } + + public decimal? StackMemory { get; set; } + + public IoTypeEnum? IoType { get; set; } + + public DifficultyEnum? Difficulty { get; set; } + + public bool? IsPublished { get; set; } +} diff --git a/enki-problems/src/EnkiProblems.Application.Contracts/Problems/UpdateTestDto.cs b/enki-problems/src/EnkiProblems.Application.Contracts/Problems/UpdateTestDto.cs new file mode 100644 index 0000000..18c44b8 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Application.Contracts/Problems/UpdateTestDto.cs @@ -0,0 +1,12 @@ +using System.ComponentModel.DataAnnotations; +using Volo.Abp.Content; + +namespace EnkiProblems.Problems; + +public class UpdateTestDto +{ + [Range(EnkiProblemsConsts.MinScore, EnkiProblemsConsts.MaxScore)] + public int? Score { get; set; } + + public IRemoteStreamContent? ArchiveFile { get; set; } +} diff --git a/enki-problems/src/EnkiProblems.Application/EnkiProblems.Application.csproj b/enki-problems/src/EnkiProblems.Application/EnkiProblems.Application.csproj new file mode 100644 index 0000000..72d4f33 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Application/EnkiProblems.Application.csproj @@ -0,0 +1,27 @@ + + + + + + net7.0 + enable + EnkiProblems + + + + + + + + + + + + + + + + + + + diff --git a/enki-problems/src/EnkiProblems.Application/EnkiProblemsAppService.cs b/enki-problems/src/EnkiProblems.Application/EnkiProblemsAppService.cs new file mode 100644 index 0000000..67374a1 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Application/EnkiProblemsAppService.cs @@ -0,0 +1,14 @@ +using EnkiProblems.Localization; +using Volo.Abp.Application.Services; + +namespace EnkiProblems; + +/* Inherit your application services from this class. + */ +public abstract class EnkiProblemsAppService : ApplicationService +{ + protected EnkiProblemsAppService() + { + LocalizationResource = typeof(EnkiProblemsResource); + } +} diff --git a/enki-problems/src/EnkiProblems.Application/EnkiProblemsApplicationAutoMapperProfile.cs b/enki-problems/src/EnkiProblems.Application/EnkiProblemsApplicationAutoMapperProfile.cs new file mode 100644 index 0000000..86864cc --- /dev/null +++ b/enki-problems/src/EnkiProblems.Application/EnkiProblemsApplicationAutoMapperProfile.cs @@ -0,0 +1,13 @@ +using AutoMapper; + +namespace EnkiProblems; + +public class EnkiProblemsApplicationAutoMapperProfile : Profile +{ + public EnkiProblemsApplicationAutoMapperProfile() + { + /* You can configure your AutoMapper mapping configuration here. + * Alternatively, you can split your mapping configurations + * into multiple profile classes for a better organization. */ + } +} diff --git a/enki-problems/src/EnkiProblems.Application/EnkiProblemsApplicationModule.cs b/enki-problems/src/EnkiProblems.Application/EnkiProblemsApplicationModule.cs new file mode 100644 index 0000000..ae9f02d --- /dev/null +++ b/enki-problems/src/EnkiProblems.Application/EnkiProblemsApplicationModule.cs @@ -0,0 +1,31 @@ +using Volo.Abp.Account; +using Volo.Abp.AutoMapper; +using Volo.Abp.FeatureManagement; +using Volo.Abp.Identity; +using Volo.Abp.Modularity; +using Volo.Abp.PermissionManagement; +using Volo.Abp.SettingManagement; +using Volo.Abp.TenantManagement; + +namespace EnkiProblems; + +[DependsOn( + typeof(EnkiProblemsDomainModule), + typeof(AbpAccountApplicationModule), + typeof(EnkiProblemsApplicationContractsModule), + typeof(AbpIdentityApplicationModule), + typeof(AbpPermissionManagementApplicationModule), + typeof(AbpTenantManagementApplicationModule), + typeof(AbpFeatureManagementApplicationModule), + typeof(AbpSettingManagementApplicationModule) +)] +public class EnkiProblemsApplicationModule : AbpModule +{ + public override void ConfigureServices(ServiceConfigurationContext context) + { + Configure(options => + { + options.AddMaps(); + }); + } +} diff --git a/enki-problems/src/EnkiProblems.Application/Problems/ProblemAppService.cs b/enki-problems/src/EnkiProblems.Application/Problems/ProblemAppService.cs new file mode 100644 index 0000000..f31de36 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Application/Problems/ProblemAppService.cs @@ -0,0 +1,676 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Threading.Tasks; +using Asgard.Hermes; +using Dapr.Client; +using EnkiProblems.Problems.Events; +using EnkiProblems.Problems.Tests; +using Microsoft.AspNetCore.Authorization; +using Microsoft.Extensions.Logging; +using Volo.Abp; +using Volo.Abp.Application.Dtos; +using Volo.Abp.Authorization; +using Volo.Abp.Domain.Repositories; + +namespace EnkiProblems.Problems; + +public class ProblemAppService : EnkiProblemsAppService, IProblemAppService +{ + private readonly ProblemManager _problemManager; + private readonly IRepository _problemRepository; + private readonly ITestService _testService; + private readonly DaprClient _daprClient; + private readonly ILogger _logger; + + public ProblemAppService( + ProblemManager problemManager, + IRepository problemRepository, + ITestService testService, + DaprClient daprClient, + ILogger logger + ) + { + _problemManager = problemManager; + _problemRepository = problemRepository; + _testService = testService; + _daprClient = daprClient; + _logger = logger; + } + + [Authorize] + public async Task CreateAsync(CreateProblemDto input) + { + _logger.LogInformation("Creating problem {Name}", input.Name); + + // TODO: convert to permission + if (CurrentUser.Roles.All(r => r != EnkiProblemsConsts.ProposerRoleName)) + { + _logger.LogError("User {UserId} is not allowed to create problems", CurrentUser.Id); + throw new AbpAuthorizationException( + EnkiProblemsDomainErrorCodes.NotAllowedToCreateProblem + ); + } + + var problem = await _problemManager.CreateAsync( + input.Name, + input.Brief, + input.Description, + input.SourceName, + input.AuthorName, + (Guid)CurrentUser.Id, + input.Time, + input.TotalMemory, + input.StackMemory, + input.IoType, + input.Difficulty + ); + + problem = await _problemRepository.InsertAsync(problem); + + var problemEvalMetadataUpsertedEvent = ObjectMapper.Map< + Problem, + ProblemEvalMetadataUpsertedEvent + >(problem); + + await _daprClient.PublishEventAsync( + EnkiProblemsConsts.PubSubName, + EnkiProblemsConsts.ProblemEvalMetadataUpsertedTopic, + problemEvalMetadataUpsertedEvent + ); + + return ObjectMapper.Map(problem); + } + + [Authorize] + public async Task> GetListAsync(ProblemListFilterDto input) + { + _logger.LogInformation("Getting problems list"); + + var problemQueryable = await _problemRepository.GetQueryableAsync(); + + problemQueryable = problemQueryable.Where(p => p.IsPublished); + + if (!string.IsNullOrEmpty(input.Name)) + { + problemQueryable = problemQueryable.Where(p => p.Name.Contains(input.Name)); + } + + if (input.ProposerId is not null) + { + problemQueryable = problemQueryable.Where(p => p.ProposerId == input.ProposerId); + } + + if (input.IoType is not null) + { + problemQueryable = problemQueryable.Where(p => p.IoType == input.IoType); + } + + if (input.Difficulty is not null) + { + problemQueryable = problemQueryable.Where(p => p.Difficulty == input.Difficulty); + } + + var totalCount = await AsyncExecuter.CountAsync(problemQueryable); + problemQueryable = problemQueryable.PageBy(input).OrderBy(p => p.CreationDate); + + var problems = await AsyncExecuter.ToListAsync(problemQueryable); + + return new PagedResultDto( + totalCount, + ObjectMapper.Map, List>(problems) + ); + } + + [Authorize] + public async Task> GetListUnpublishedAsync( + ProblemListFilterDto input + ) + { + _logger.LogInformation( + "Getting unpublished problems list for user {UserId}", + CurrentUser.Id + ); + + // TODO: convert to permission + if (CurrentUser.Roles.All(r => r != EnkiProblemsConsts.ProposerRoleName)) + { + _logger.LogError( + "User {UserId} is not allowed to view unpublished problems", + CurrentUser.Id + ); + throw new AbpAuthorizationException( + EnkiProblemsDomainErrorCodes.NotAllowedToViewUnpublishedProblems + ); + } + + var problemQueryable = await _problemRepository.GetQueryableAsync(); + + problemQueryable = problemQueryable.Where(p => + !p.IsPublished && p.ProposerId == CurrentUser.Id + ); + + if (!string.IsNullOrEmpty(input.Name)) + { + problemQueryable = problemQueryable.Where(p => p.Name.Contains(input.Name)); + } + + if (input.ProposerId is not null) + { + problemQueryable = problemQueryable.Where(p => p.ProposerId == input.ProposerId); + } + + if (input.IoType is not null) + { + problemQueryable = problemQueryable.Where(p => p.IoType == input.IoType); + } + + if (input.Difficulty is not null) + { + problemQueryable = problemQueryable.Where(p => p.Difficulty == input.Difficulty); + } + + var totalCount = await AsyncExecuter.CountAsync(problemQueryable); + problemQueryable = problemQueryable.PageBy(input).OrderBy(p => p.CreationDate); + + var problems = await AsyncExecuter.ToListAsync(problemQueryable); + + return new PagedResultDto( + totalCount, + ObjectMapper.Map, List>(problems) + ); + } + + [Authorize] + public async Task GetAsync(Guid id) + { + _logger.LogInformation("Getting problem {ProblemId}", id); + + var problem = await _problemRepository.GetAsync(id); + + if (!problem.IsPublished) + { + _logger.LogError("Problem {ProblemId} is not published", id); + throw new AbpAuthorizationException( + EnkiProblemsDomainErrorCodes.NotAllowedToViewUnpublishedProblems + ); + } + + return ObjectMapper.Map(problem); + } + + [Authorize] + public async Task GetUnpublishedAsync(Guid id) + { + _logger.LogInformation("Getting problem {ProblemId} for user {UserId}", id, CurrentUser.Id); + + var problem = await _problemRepository.GetAsync(id); + + // TODO: convert to permission + if (CurrentUser.Roles.All(r => r != EnkiProblemsConsts.ProposerRoleName)) + { + _logger.LogError( + "User {UserId} is not allowed to view unpublished problems", + CurrentUser.Id + ); + throw new AbpAuthorizationException( + EnkiProblemsDomainErrorCodes.NotAllowedToViewUnpublishedProblems + ); + } + + if (!problem.IsPublished && problem.ProposerId != CurrentUser.Id) + { + _logger.LogError( + "Problem {ProblemId} is not published and does not belong to user {UserId}", + id, + CurrentUser.Id + ); + throw new AbpAuthorizationException( + EnkiProblemsDomainErrorCodes.UnpublishedProblemNotBelongingToCurrentUser + ); + } + + return ObjectMapper.Map(problem); + } + + [Authorize] + public async Task UpdateAsync(Guid id, UpdateProblemDto input) + { + _logger.LogInformation("Updating problem {ProblemId}", id); + + var problem = await _problemRepository.GetAsync(id); + + // TODO: convert to permission + if (CurrentUser.Roles.All(r => r != EnkiProblemsConsts.ProposerRoleName)) + { + _logger.LogError("User {UserId} is not allowed to edit problems", CurrentUser.Id); + throw new AbpAuthorizationException( + EnkiProblemsDomainErrorCodes.NotAllowedToEditProblem + ); + } + + if (problem.ProposerId != CurrentUser.Id) + { + _logger.LogError( + "Problem {ProblemId} does not belong to user {UserId}", + id, + CurrentUser.Id + ); + throw new AbpAuthorizationException( + EnkiProblemsDomainErrorCodes.UnpublishedProblemNotBelongingToCurrentUser + ); + } + + var updatedProblem = await _problemManager.UpdateAsync( + problem, + input.Name, + input.Brief, + input.Description, + input.SourceName, + input.AuthorName, + input.Time, + input.TotalMemory, + input.StackMemory, + input.IoType, + input.Difficulty, + input.IsPublished + ); + + updatedProblem = await _problemRepository.UpdateAsync(updatedProblem); + + var problemEvalMetadataUpsertedEvent = ObjectMapper.Map< + Problem, + ProblemEvalMetadataUpsertedEvent + >(updatedProblem); + _logger.LogInformation( + "Publishing ProblemEvalMetadataUpsertedEvent for problem {ProblemId}: {Event}", + id, + problemEvalMetadataUpsertedEvent + ); + + await _daprClient.PublishEventAsync( + EnkiProblemsConsts.PubSubName, + EnkiProblemsConsts.ProblemEvalMetadataUpsertedTopic, + problemEvalMetadataUpsertedEvent + ); + + return ObjectMapper.Map(updatedProblem); + } + + [Authorize] + public async Task DeleteAsync(Guid id) + { + _logger.LogInformation("Deleting problem {ProblemId}", id); + + var problem = await _problemRepository.GetAsync(id); + + if (problem is null) + { + _logger.LogError("Problem {ProblemId} not found", id); + throw new BusinessException( + EnkiProblemsDomainErrorCodes.ProblemNotFound, + $"Problem {id} not found." + ); + } + + // TODO: convert to permission + if ( + problem.IsPublished && CurrentUser.Roles.All(r => r != EnkiProblemsConsts.AdminRoleName) + ) + { + _logger.LogError( + "User {UserId} is not allowed to delete problem {ProblemId}", + CurrentUser.Id, + id + ); + throw new AbpAuthorizationException( + EnkiProblemsDomainErrorCodes.NotAllowedToDeletePublishedProblem + ); + } + + // TODO: convert to permission + if ( + CurrentUser.Roles.All(r => r != EnkiProblemsConsts.AdminRoleName) + && CurrentUser.Id != id + ) + { + _logger.LogError( + "User {UserId} is not allowed to delete problem {ProblemId}", + CurrentUser.Id, + id + ); + throw new AbpAuthorizationException( + EnkiProblemsDomainErrorCodes.ProblemCannotBeDeleted + ); + } + + var problemTests = problem.Tests.ToList(); + + foreach (var problemTest in problemTests) + { + var deleteResponse = await _testService.DeleteTestAsync( + new DeleteTestRequest + { + ProblemId = id.ToString(), + TestId = problemTest.Id.ToString() + } + ); + + if (deleteResponse.Status.Code != StatusCode.Ok) + { + _logger.LogError( + "Test delete failed with status code {StatusCode}: {StatusMessage}", + deleteResponse.Status.Code, + deleteResponse.Status.Message + ); + throw new BusinessException( + EnkiProblemsDomainErrorCodes.TestDeleteFailed, + $"Test delete failed with status code {deleteResponse.Status.Code}: {deleteResponse.Status.Message}." + ) + .WithData("id", problem.Id) + .WithData("testId", problemTest.Id); + } + + problem = _problemManager.RemoveTest(problem, problemTest.Id); + } + + await _problemRepository.DeleteAsync(problem); + } + + [Authorize] + public async Task CreateTestAsync(Guid id, CreateTestDto input) + { + _logger.LogInformation("Creating test for problem {ProblemId}", id); + + // TODO: convert to permission + if (CurrentUser.Roles.All(r => r != EnkiProblemsConsts.ProposerRoleName)) + { + _logger.LogError("User {UserId} is not allowed to edit problems", CurrentUser.Id); + throw new AbpAuthorizationException( + EnkiProblemsDomainErrorCodes.NotAllowedToEditProblem + ); + } + + var problem = await _problemRepository.GetAsync(id); + + if (problem.IsPublished) + { + _logger.LogError("Problem {ProblemId} is published and cannot be edited", id); + throw new BusinessException( + EnkiProblemsDomainErrorCodes.NotAllowedToEditPublishedProblem + ); + } + + if (problem.ProposerId != CurrentUser.Id) + { + _logger.LogError( + "Problem {ProblemId} does not belong to user {UserId}", + id, + CurrentUser.Id + ); + throw new AbpAuthorizationException( + EnkiProblemsDomainErrorCodes.UnpublishedProblemNotBelongingToCurrentUser + ); + } + + var testId = problem.GetFirstAvailableTestId(); + var uploadResponse = await _testService.UploadTestAsync( + new UploadTestStreamDto + { + ProblemId = id.ToString(), + TestArchiveBytes = await input.ArchiveFile.GetStream().GetAllBytesAsync(), + TestId = testId.ToString() + } + ); + + if (uploadResponse.Status.Code != StatusCode.Ok) + { + _logger.LogError( + "Test upload failed with status code {StatusCode}: {StatusMessage}", + uploadResponse.Status.Code, + uploadResponse.Status.Message + ); + throw new BusinessException( + EnkiProblemsDomainErrorCodes.TestUploadFailed, + $"Test upload failed with status code {uploadResponse.Status.Code}: {uploadResponse.Status.Message}." + ) + .WithData("id", problem.Id) + .WithData("testId", testId); + } + + var getDownloadUrlsResponse = await _testService.GetDownloadLinkForTestAsync( + new GetDownloadLinkForTestRequest + { + TestId = testId.ToString(), + ProblemId = id.ToString() + } + ); + + if (getDownloadUrlsResponse.Status.Code != StatusCode.Ok) + { + _logger.LogError( + "Test download url retrieval failed with status code {StatusCode}: {StatusMessage}", + getDownloadUrlsResponse.Status.Code, + getDownloadUrlsResponse.Status.Message + ); + throw new BusinessException( + EnkiProblemsDomainErrorCodes.TestDownloadUrlRetrievalFailed, + $"Test download url retrieval failed with status code {getDownloadUrlsResponse.Status.Code}: {getDownloadUrlsResponse.Status.Message}." + ) + .WithData("id", problem.Id) + .WithData("testId", testId); + } + + var updatedProblem = _problemManager.AddTest( + problem, + testId, + input.Score, + getDownloadUrlsResponse.InputLink, + getDownloadUrlsResponse.OutputLink + ); + await _problemRepository.UpdateAsync(updatedProblem); + + await _daprClient.PublishEventAsync( + EnkiProblemsConsts.PubSubName, + EnkiProblemsConsts.TestUpsertedTopic, + new TestUpsertedEvent + { + Id = testId, + ProblemId = id, + InputDownloadUrl = getDownloadUrlsResponse.InputLink, + OutputDownloadUrl = getDownloadUrlsResponse.OutputLink, + } + ); + + return ObjectMapper.Map(updatedProblem); + } + + [Authorize] + public async Task UpdateTestAsync(Guid id, int testId, UpdateTestDto input) + { + _logger.LogInformation("Updating test {TestId} for problem {ProblemId}", testId, id); + + // TODO: convert to permission + if (CurrentUser.Roles.All(r => r != EnkiProblemsConsts.ProposerRoleName)) + { + _logger.LogError("User {UserId} is not allowed to edit problems", CurrentUser.Id); + throw new AbpAuthorizationException( + EnkiProblemsDomainErrorCodes.NotAllowedToEditProblem + ); + } + + var problem = await _problemRepository.GetAsync(id); + + if (problem.IsPublished) + { + _logger.LogError("Problem {ProblemId} is published and cannot be edited", id); + throw new BusinessException( + EnkiProblemsDomainErrorCodes.NotAllowedToEditPublishedProblem + ); + } + + if (problem.ProposerId != CurrentUser.Id) + { + _logger.LogError( + "Problem {ProblemId} does not belong to user {UserId}", + id, + CurrentUser.Id + ); + throw new AbpAuthorizationException( + EnkiProblemsDomainErrorCodes.UnpublishedProblemNotBelongingToCurrentUser + ); + } + + if (input.ArchiveFile is not null) + { + var uploadResponse = await _testService.UploadTestAsync( + new UploadTestStreamDto + { + ProblemId = id.ToString(), + TestArchiveBytes = await input.ArchiveFile.GetStream().GetAllBytesAsync(), + TestId = testId.ToString() + } + ); + + if (uploadResponse.Status.Code != StatusCode.Ok) + { + _logger.LogError( + "Test upload failed with status code {StatusCode}: {StatusMessage}", + uploadResponse.Status.Code, + uploadResponse.Status.Message + ); + throw new BusinessException( + EnkiProblemsDomainErrorCodes.TestUploadFailed, + $"Test upload failed with status code {uploadResponse.Status.Code}: {uploadResponse.Status.Message}." + ) + .WithData("id", problem.Id) + .WithData("testId", testId); + } + } + + var getDownloadUrlsResponse = await _testService.GetDownloadLinkForTestAsync( + new GetDownloadLinkForTestRequest + { + TestId = testId.ToString(), + ProblemId = id.ToString() + } + ); + + if (getDownloadUrlsResponse.Status.Code != StatusCode.Ok) + { + _logger.LogError( + "Test download url retrieval failed with status code {StatusCode}: {StatusMessage}", + getDownloadUrlsResponse.Status.Code, + getDownloadUrlsResponse.Status.Message + ); + throw new BusinessException( + EnkiProblemsDomainErrorCodes.TestDownloadUrlRetrievalFailed, + $"Test download url retrieval failed with status code {getDownloadUrlsResponse.Status.Code}: {getDownloadUrlsResponse.Status.Message}." + ) + .WithData("id", problem.Id) + .WithData("testId", testId); + } + + _problemManager.UpdateTest( + problem, + testId, + input.Score, + getDownloadUrlsResponse.InputLink, + getDownloadUrlsResponse.OutputLink + ); + + await _problemRepository.UpdateAsync(problem); + + await _daprClient.PublishEventAsync( + EnkiProblemsConsts.PubSubName, + EnkiProblemsConsts.TestUpsertedTopic, + new TestUpsertedEvent + { + Id = testId, + ProblemId = id, + InputDownloadUrl = getDownloadUrlsResponse.InputLink, + OutputDownloadUrl = getDownloadUrlsResponse.OutputLink, + } + ); + + return ObjectMapper.Map(problem); + } + + [Authorize] + public async Task DeleteTestAsync(Guid id, int testId) + { + _logger.LogInformation("Deleting test {TestId} for problem {ProblemId}", testId, id); + + // TODO: convert to permission + if (CurrentUser.Roles.All(r => r != EnkiProblemsConsts.ProposerRoleName)) + { + _logger.LogError("User {UserId} is not allowed to edit problems", CurrentUser.Id); + throw new AbpAuthorizationException( + EnkiProblemsDomainErrorCodes.NotAllowedToEditProblem + ); + } + + var problem = await _problemRepository.GetAsync(id); + + if (problem.IsPublished) + { + _logger.LogError("Problem {ProblemId} is published and cannot be edited", id); + throw new BusinessException( + EnkiProblemsDomainErrorCodes.NotAllowedToEditPublishedProblem + ); + } + + if (problem.ProposerId != CurrentUser.Id) + { + _logger.LogError( + "Problem {ProblemId} does not belong to user {UserId}", + id, + CurrentUser.Id + ); + throw new AbpAuthorizationException( + EnkiProblemsDomainErrorCodes.UnpublishedProblemNotBelongingToCurrentUser + ); + } + + var deleteResponse = await _testService.DeleteTestAsync( + new DeleteTestRequest { ProblemId = id.ToString(), TestId = testId.ToString() } + ); + + if (deleteResponse.Status.Code != StatusCode.Ok) + { + _logger.LogError( + "Test delete failed with status code {StatusCode}: {StatusMessage}", + deleteResponse.Status.Code, + deleteResponse.Status.Message + ); + throw new BusinessException( + EnkiProblemsDomainErrorCodes.TestDeleteFailed, + $"Test delete failed with status code {deleteResponse.Status.Code}: {deleteResponse.Status.Message}." + ) + .WithData("id", problem.Id) + .WithData("testId", testId); + } + + var updatedProblem = _problemManager.RemoveTest(problem, testId); + + await _problemRepository.UpdateAsync(updatedProblem); + + await _daprClient.PublishEventAsync( + EnkiProblemsConsts.PubSubName, + EnkiProblemsConsts.TestDeletedTopic, + new TestDeletedEvent { Id = testId, ProblemId = id, } + ); + + return ObjectMapper.Map(updatedProblem); + } + + public async Task GetEvalMetadataAsync(Guid id) + { + _logger.LogInformation("Getting eval metadata for problem {ProblemId}", id); + + var problem = await _problemRepository.GetAsync(id); + + return ObjectMapper.Map(problem); + } +} diff --git a/enki-problems/src/EnkiProblems.Application/Problems/ProblemToProblemDtoProfile.cs b/enki-problems/src/EnkiProblems.Application/Problems/ProblemToProblemDtoProfile.cs new file mode 100644 index 0000000..9ae7fd0 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Application/Problems/ProblemToProblemDtoProfile.cs @@ -0,0 +1,16 @@ +using AutoMapper; + +namespace EnkiProblems.Problems; + +public class ProblemToProblemDtoProfile : Profile +{ + public ProblemToProblemDtoProfile() + { + CreateMap() + .ForMember(dest => dest.SourceName, opt => opt.MapFrom(src => src.Origin.SourceName)) + .ForMember(dest => dest.AuthorName, opt => opt.MapFrom(src => src.Origin.AuthorName)) + .ForMember(dest => dest.Time, opt => opt.MapFrom(src => src.Limit.Time)) + .ForMember(dest => dest.TotalMemory, opt => opt.MapFrom(src => src.Limit.TotalMemory)) + .ForMember(dest => dest.StackMemory, opt => opt.MapFrom(src => src.Limit.StackMemory)); + } +} diff --git a/enki-problems/src/EnkiProblems.Application/Problems/ProblemToProblemEvalMetadataDtoProfile.cs b/enki-problems/src/EnkiProblems.Application/Problems/ProblemToProblemEvalMetadataDtoProfile.cs new file mode 100644 index 0000000..576b1e7 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Application/Problems/ProblemToProblemEvalMetadataDtoProfile.cs @@ -0,0 +1,19 @@ +using AutoMapper; + +namespace EnkiProblems.Problems; + +public class ProblemToProblemEvalMetadataDtoProfile : Profile +{ + public ProblemToProblemEvalMetadataDtoProfile() + { + CreateMap() + .ForMember(dest => dest.Name, opt => opt.MapFrom(src => src.Name)) + .ForMember(dest => dest.ProposerId, opt => opt.MapFrom(src => src.ProposerId)) + .ForMember(dest => dest.IsPublished, opt => opt.MapFrom(src => src.IsPublished)) + .ForMember(dest => dest.Time, opt => opt.MapFrom(src => src.Limit.Time)) + .ForMember(dest => dest.TotalMemory, opt => opt.MapFrom(src => src.Limit.TotalMemory)) + .ForMember(dest => dest.StackMemory, opt => opt.MapFrom(src => src.Limit.StackMemory)) + .ForMember(dest => dest.IoType, opt => opt.MapFrom(src => src.IoType)) + .ForMember(dest => dest.Tests, opt => opt.MapFrom(src => src.Tests)); + } +} diff --git a/enki-problems/src/EnkiProblems.Application/Problems/ProblemToProblemEvalMetadataUpsertedEventProfile.cs b/enki-problems/src/EnkiProblems.Application/Problems/ProblemToProblemEvalMetadataUpsertedEventProfile.cs new file mode 100644 index 0000000..dab33fc --- /dev/null +++ b/enki-problems/src/EnkiProblems.Application/Problems/ProblemToProblemEvalMetadataUpsertedEventProfile.cs @@ -0,0 +1,20 @@ +using AutoMapper; +using EnkiProblems.Problems.Events; + +namespace EnkiProblems.Problems; + +public class ProblemToProblemEvalMetadataUpsertedEventProfile : Profile +{ + public ProblemToProblemEvalMetadataUpsertedEventProfile() + { + CreateMap() + .ForMember(dest => dest.Name, opt => opt.MapFrom(src => src.Name)) + .ForMember(dest => dest.ProposerId, opt => opt.MapFrom(src => src.ProposerId)) + .ForMember(dest => dest.IsPublished, opt => opt.MapFrom(src => src.IsPublished)) + .ForMember(dest => dest.Time, opt => opt.MapFrom(src => src.Limit.Time)) + .ForMember(dest => dest.TotalMemory, opt => opt.MapFrom(src => src.Limit.TotalMemory)) + .ForMember(dest => dest.StackMemory, opt => opt.MapFrom(src => src.Limit.StackMemory)) + .ForMember(dest => dest.IoType, opt => opt.MapFrom(src => src.IoType)) + .ForMember(dest => dest.Tests, opt => opt.MapFrom(src => src.Tests)); + } +} diff --git a/enki-problems/src/EnkiProblems.Application/Problems/ProblemToProblemWithTestsDtoProfile.cs b/enki-problems/src/EnkiProblems.Application/Problems/ProblemToProblemWithTestsDtoProfile.cs new file mode 100644 index 0000000..9e6b65f --- /dev/null +++ b/enki-problems/src/EnkiProblems.Application/Problems/ProblemToProblemWithTestsDtoProfile.cs @@ -0,0 +1,17 @@ +using AutoMapper; + +namespace EnkiProblems.Problems; + +public class ProblemToProblemWithTestsDtoProfile : Profile +{ + public ProblemToProblemWithTestsDtoProfile() + { + CreateMap() + .ForMember(dest => dest.SourceName, opt => opt.MapFrom(src => src.Origin.SourceName)) + .ForMember(dest => dest.AuthorName, opt => opt.MapFrom(src => src.Origin.AuthorName)) + .ForMember(dest => dest.Time, opt => opt.MapFrom(src => src.Limit.Time)) + .ForMember(dest => dest.TotalMemory, opt => opt.MapFrom(src => src.Limit.TotalMemory)) + .ForMember(dest => dest.StackMemory, opt => opt.MapFrom(src => src.Limit.StackMemory)) + .ForMember(dest => dest.Tests, opt => opt.MapFrom(src => src.Tests)); + } +} diff --git a/enki-problems/src/EnkiProblems.Application/Problems/Tests/HermesTestsGrpcService.cs b/enki-problems/src/EnkiProblems.Application/Problems/Tests/HermesTestsGrpcService.cs new file mode 100644 index 0000000..e53f1e4 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Application/Problems/Tests/HermesTestsGrpcService.cs @@ -0,0 +1,145 @@ +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Asgard.Hermes; +using Google.Protobuf; +using Microsoft.Extensions.Logging; +using Volo.Abp; + +namespace EnkiProblems.Problems.Tests; + +public class HermesTestsGrpcService : ITestService +{ + private readonly HermesTestsService.HermesTestsServiceClient _grpcClient; + private readonly DaprMetadata _metadata; + private readonly ILogger _logger; + + public HermesTestsGrpcService( + HermesTestsService.HermesTestsServiceClient grpcClient, + DaprMetadata metadata, + ILogger logger + ) + { + _grpcClient = grpcClient; + _metadata = metadata; + _logger = logger; + } + + public async Task UploadTestAsync(UploadTestStreamDto input) + { + _logger.LogInformation( + "Uploading test {TestId} for problem {ProblemId} with size {TestSize}", + input.TestId, + input.ProblemId, + input.TestArchiveBytes.Length + ); + + using var call = _grpcClient.UploadTest(_metadata.HermesContext); + + var uploadMetadata = new Metadata + { + ProblemId = input.ProblemId, + TestId = input.TestId, + TestSize = input.TestArchiveBytes.Length + }; + + await call.RequestStream.WriteAsync(new UploadRequest { Metadata = uploadMetadata }); + + foreach (var chunk in input.TestArchiveBytes.Chunk(EnkiProblemsConsts.TestChunkSize)) + { + await call.RequestStream.WriteAsync( + new UploadRequest { Chunk = new() { Data = ByteString.CopyFrom(chunk) } } + ); + } + + await call.RequestStream.CompleteAsync(); + return await call; + } + + public async Task DownloadTestAsync(DownloadRequest input) + { + _logger.LogInformation( + "Downloading test {TestId} for problem {ProblemId}", + input.TestId, + input.ProblemId + ); + + using var call = _grpcClient.DownloadTest(input, _metadata.HermesContext); + + var metadata = new Metadata(); + var statusCode = StatusCode.Unknown; + var dataStream = new MemoryStream(); + + var ctk = new CancellationToken(); + var readBytes = 0; + + while (await call.ResponseStream.MoveNext(ctk)) + { + var res = call.ResponseStream.Current; + + switch (res.PacketCase) + { + case DownloadResponse.PacketOneofCase.Metadata: + metadata = res.Metadata; + break; + case DownloadResponse.PacketOneofCase.Status: + statusCode = res.Status.Code; + break; + case DownloadResponse.PacketOneofCase.Chunk: + await dataStream.WriteAsync(res.Chunk.Data.ToByteArray(), ctk); + readBytes += res.Chunk.Data.Length; + + if (readBytes == metadata.TestSize) + { + goto response; + } + break; + case DownloadResponse.PacketOneofCase.None: + break; + default: + _logger.LogError( + "Unknown packet type: {PacketType} for test {TestId} of problem {ProblemId}", + res.PacketCase, + metadata.TestId, + metadata.ProblemId + ); + throw new BusinessException( + EnkiProblemsDomainErrorCodes.DownloadTestArchiveError, + $"Unknown packet type: {res.PacketCase} for test {metadata.TestId} of problem {metadata.ProblemId}" + ); + } + } + + response: + return new DownloadTestStreamDto + { + ProblemId = metadata.ProblemId, + TestId = metadata.TestId, + StatusCode = statusCode, + TestArchiveBytes = dataStream.ToArray() + }; + } + + public async Task DeleteTestAsync(DeleteTestRequest input) + { + _logger.LogInformation( + "Deleting test {TestId} for problem {ProblemId}", + input.TestId, + input.ProblemId + ); + return await _grpcClient.DeleteTestAsync(input, _metadata.HermesContext); + } + + public async Task GetDownloadLinkForTestAsync( + GetDownloadLinkForTestRequest input + ) + { + _logger.LogInformation( + "Getting download link for test {TestId} for problem {ProblemId}", + input.TestId, + input.ProblemId + ); + return await _grpcClient.GetDownloadLinkForTestAsync(input, _metadata.HermesContext); + } +} diff --git a/enki-problems/src/EnkiProblems.Application/Problems/Tests/TestToTestDtoProfile.cs b/enki-problems/src/EnkiProblems.Application/Problems/Tests/TestToTestDtoProfile.cs new file mode 100644 index 0000000..d702963 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Application/Problems/Tests/TestToTestDtoProfile.cs @@ -0,0 +1,20 @@ +using AutoMapper; + +namespace EnkiProblems.Problems.Tests; + +public class TestToTestDtoProfile : Profile +{ + public TestToTestDtoProfile() + { + CreateMap() + .ForMember(dest => dest.Score, opt => opt.MapFrom(src => src.Score)) + .ForMember( + dest => dest.InputDownloadUrl, + opt => opt.MapFrom(src => src.InputDownloadUrl) + ) + .ForMember( + dest => dest.OutputDownloadUrl, + opt => opt.MapFrom(src => src.OutputDownloadUrl) + ); + } +} diff --git a/enki-problems/src/EnkiProblems.Application/Properties/AssemblyInfo.cs b/enki-problems/src/EnkiProblems.Application/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..e7b249c --- /dev/null +++ b/enki-problems/src/EnkiProblems.Application/Properties/AssemblyInfo.cs @@ -0,0 +1,3 @@ +using System.Runtime.CompilerServices; + +[assembly: InternalsVisibleToAttribute("EnkiProblems.Application.Tests")] diff --git a/enki-problems/src/EnkiProblems.Domain.Shared/EnkiProblems.Domain.Shared.csproj b/enki-problems/src/EnkiProblems.Domain.Shared/EnkiProblems.Domain.Shared.csproj new file mode 100644 index 0000000..984db00 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain.Shared/EnkiProblems.Domain.Shared.csproj @@ -0,0 +1,33 @@ + + + + + + net7.0 + enable + EnkiProblems + true + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/enki-problems/src/EnkiProblems.Domain.Shared/EnkiProblemsDomainErrorCodes.cs b/enki-problems/src/EnkiProblems.Domain.Shared/EnkiProblemsDomainErrorCodes.cs new file mode 100644 index 0000000..28feea1 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain.Shared/EnkiProblemsDomainErrorCodes.cs @@ -0,0 +1,48 @@ +namespace EnkiProblems; + +public static class EnkiProblemsDomainErrorCodes +{ + public const string ProblemNameAlreadyExists = "EnkiProblems:ProblemNameAlreadyExists"; + + public const string TotalMemoryLessThanStackMemory = + "EnkiProblems:TotalMemoryLessThanStackMemory"; + + public const string NotAllowedToCreateProblem = "EnkiProblems:NotAllowedToCreateProblem"; + + public const string NotAllowedToViewUnpublishedProblems = + "EnkiProblems:NotAllowedToViewUnpublishedProblems"; + + public const string NotAllowedToEditProblem = "EnkiProblems:NotAllowedToEditProblem"; + + public const string NotAllowedToEditPublishedProblem = + "EnkiProblems:NotAllowedToEditPublishedProblem"; + + public const string NotAllowedToDeletePublishedProblem = + "EnkiProblems:NotAllowedToDeletePublishedProblem"; + + public const string UnpublishedProblemNotBelongingToCurrentUser = + "EnkiProblems:UnpublishedProblemNotBelongingToCurrentUser"; + + public const string ProblemNotFound = "EnkiProblems:ProblemNotFound"; + + public const string TestNotFound = "EnkiProblems:TestNotFound"; + + public const string NumberOfTestsExceedsLimit = "EnkiProblems:NumberOfTestsExceedsLimit"; + + public const string TestUploadFailed = "EnkiProblems:TestUploadFailed"; + + public const string TestDeleteFailed = "EnkiProblems:TestDeleteFailed"; + + public const string DownloadTestArchiveError = "EnkiProblems:DownloadTestArchiveError"; + + public const string TotalScoreExceeded = "EnkiProblems:TotalScoreExceeded"; + + public const string NumberOfTestsExceeded = "EnkiProblems:NumberOfTestsExceeded"; + + public const string TestDownloadUrlRetrievalFailed = + "EnkiProblems:TestDownloadUrlRetrievalFailed"; + + public const string ProblemCannotBePublished = "EnkiProblems:ProblemCannotBePublished"; + + public const string ProblemCannotBeDeleted = "EnkiProblems:ProblemCannotBeDeleted"; +} diff --git a/enki-problems/src/EnkiProblems.Domain.Shared/EnkiProblemsDomainSharedModule.cs b/enki-problems/src/EnkiProblems.Domain.Shared/EnkiProblemsDomainSharedModule.cs new file mode 100644 index 0000000..42365b9 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain.Shared/EnkiProblemsDomainSharedModule.cs @@ -0,0 +1,58 @@ +using EnkiProblems.Localization; +using Volo.Abp.AuditLogging; +using Volo.Abp.BackgroundJobs; +using Volo.Abp.FeatureManagement; +using Volo.Abp.Identity; +using Volo.Abp.Localization; +using Volo.Abp.Localization.ExceptionHandling; +using Volo.Abp.Modularity; +using Volo.Abp.OpenIddict; +using Volo.Abp.PermissionManagement; +using Volo.Abp.SettingManagement; +using Volo.Abp.TenantManagement; +using Volo.Abp.Validation.Localization; +using Volo.Abp.VirtualFileSystem; + +namespace EnkiProblems; + +[DependsOn( + typeof(AbpAuditLoggingDomainSharedModule), + typeof(AbpBackgroundJobsDomainSharedModule), + typeof(AbpFeatureManagementDomainSharedModule), + typeof(AbpIdentityDomainSharedModule), + typeof(AbpOpenIddictDomainSharedModule), + typeof(AbpPermissionManagementDomainSharedModule), + typeof(AbpSettingManagementDomainSharedModule), + typeof(AbpTenantManagementDomainSharedModule) +)] +public class EnkiProblemsDomainSharedModule : AbpModule +{ + public override void PreConfigureServices(ServiceConfigurationContext context) + { + EnkiProblemsGlobalFeatureConfigurator.Configure(); + EnkiProblemsModuleExtensionConfigurator.Configure(); + } + + public override void ConfigureServices(ServiceConfigurationContext context) + { + Configure(options => + { + options.FileSets.AddEmbedded(); + }); + + Configure(options => + { + options + .Resources.Add("en") + .AddBaseTypes(typeof(AbpValidationResource)) + .AddVirtualJson("/Localization/EnkiProblems"); + + options.DefaultResourceType = typeof(EnkiProblemsResource); + }); + + Configure(options => + { + options.MapCodeNamespace("EnkiProblems", typeof(EnkiProblemsResource)); + }); + } +} diff --git a/enki-problems/src/EnkiProblems.Domain.Shared/EnkiProblemsGlobalFeatureConfigurator.cs b/enki-problems/src/EnkiProblems.Domain.Shared/EnkiProblemsGlobalFeatureConfigurator.cs new file mode 100644 index 0000000..ca53885 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain.Shared/EnkiProblemsGlobalFeatureConfigurator.cs @@ -0,0 +1,21 @@ +using Volo.Abp.Threading; + +namespace EnkiProblems; + +public static class EnkiProblemsGlobalFeatureConfigurator +{ + private static readonly OneTimeRunner OneTimeRunner = new OneTimeRunner(); + + public static void Configure() + { + OneTimeRunner.Run(() => { + /* You can configure (enable/disable) global features of the used modules here. + * + * YOU CAN SAFELY DELETE THIS CLASS AND REMOVE ITS USAGES IF YOU DON'T NEED TO IT! + * + * Please refer to the documentation to lear more about the Global Features System: + * https://docs.abp.io/en/abp/latest/Global-Features + */ + }); + } +} diff --git a/enki-problems/src/EnkiProblems.Domain.Shared/EnkiProblemsModuleExtensionConfigurator.cs b/enki-problems/src/EnkiProblems.Domain.Shared/EnkiProblemsModuleExtensionConfigurator.cs new file mode 100644 index 0000000..0c2c6e2 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain.Shared/EnkiProblemsModuleExtensionConfigurator.cs @@ -0,0 +1,70 @@ +using Volo.Abp.Threading; + +namespace EnkiProblems; + +public static class EnkiProblemsModuleExtensionConfigurator +{ + private static readonly OneTimeRunner OneTimeRunner = new OneTimeRunner(); + + public static void Configure() + { + OneTimeRunner.Run(() => + { + ConfigureExistingProperties(); + ConfigureExtraProperties(); + }); + } + + private static void ConfigureExistingProperties() + { + /* You can change max lengths for properties of the + * entities defined in the modules used by your application. + * + * Example: Change user and role name max lengths + + IdentityUserConsts.MaxNameLength = 99; + IdentityRoleConsts.MaxNameLength = 99; + + * Notice: It is not suggested to change property lengths + * unless you really need it. Go with the standard values wherever possible. + * + * If you are using EF Core, you will need to run the add-migration command after your changes. + */ + } + + private static void ConfigureExtraProperties() + { + /* You can configure extra properties for the + * entities defined in the modules used by your application. + * + * This class can be used to define these extra properties + * with a high level, easy to use API. + * + * Example: Add a new property to the user entity of the identity module + + ObjectExtensionManager.Instance.Modules() + .ConfigureIdentity(identity => + { + identity.ConfigureUser(user => + { + user.AddOrUpdateProperty( //property type: string + "SocialSecurityNumber", //property name + property => + { + //validation rules + property.Attributes.Add(new RequiredAttribute()); + property.Attributes.Add(new StringLengthAttribute(64) {MinimumLength = 4}); + + property.Configuration[IdentityModuleExtensionConsts.ConfigurationNames.AllowUserToEdit] = true; + + //...other configurations for this property + } + ); + }); + }); + + * See the documentation for more: + * https://docs.abp.io/en/abp/latest/Module-Entity-Extensions + */ + } +} diff --git a/enki-problems/src/EnkiProblems.Domain.Shared/Helpers/FormFileExtension.cs b/enki-problems/src/EnkiProblems.Domain.Shared/Helpers/FormFileExtension.cs new file mode 100644 index 0000000..c5b12ef --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain.Shared/Helpers/FormFileExtension.cs @@ -0,0 +1,14 @@ +using System.IO; +using Microsoft.AspNetCore.Http; + +namespace EnkiProblems.Helpers; + +public static class FormFileExtension +{ + public static byte[] GetBytes(this IFormFile formFile) + { + using var memoryStream = new MemoryStream(); + formFile.OpenReadStream().CopyTo(memoryStream); + return memoryStream.ToArray(); + } +} diff --git a/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/ar.json b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/ar.json new file mode 100644 index 0000000..96bbf80 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/ar.json @@ -0,0 +1,8 @@ +{ + "culture": "ar", + "texts": { + "Menu:Home": "الرئيسية", + "Menu:Home": "الصفحة الرئيسية", + "LongWelcomeMessage": "مرحبا بكم في التطبيق. هذا مشروع بدء تشغيل يعتمد على إطار عمل ABP. لمزيد من المعلومات ، يرجى زيارة abp.io." + } +} diff --git a/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/cs.json b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/cs.json new file mode 100644 index 0000000..5a0bbf6 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/cs.json @@ -0,0 +1,8 @@ +{ + "culture": "cs", + "texts": { + "Menu:Home": "Úvod", + "Welcome": "Vítejte", + "LongWelcomeMessage": "Vítejte v aplikaci. Toto je startovací projekt založený na ABP frameworku. Pro více informací, navštivte abp.io." + } +} diff --git a/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/de.json b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/de.json new file mode 100644 index 0000000..831493b --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/de.json @@ -0,0 +1,8 @@ +{ + "culture": "de", + "texts": { + "Menu:Home": "Home", + "Welcome": "Willkommen", + "LongWelcomeMessage": "Willkommen bei der Anwendung. Dies ist ein Startup-Projekt, das auf dem ABP-Framework basiert. Weitere Informationen finden Sie unter abp.io." + } +} \ No newline at end of file diff --git a/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/en-GB.json b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/en-GB.json new file mode 100644 index 0000000..d2ca079 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/en-GB.json @@ -0,0 +1,8 @@ +{ + "culture": "en-GB", + "texts": { + "Menu:Home": "Home", + "Welcome": "Welcome", + "LongWelcomeMessage": "Welcome to the application. This is a startup project based on the ABP framework. For more information, visit abp.io." + } +} \ No newline at end of file diff --git a/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/en.json b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/en.json new file mode 100644 index 0000000..71555f5 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/en.json @@ -0,0 +1,27 @@ +{ + "culture": "en", + "texts": { + "Menu:Home": "Home", + "Welcome": "Welcome", + "LongWelcomeMessage": "Welcome to the application. This is a startup project based on the ABP framework. For more information, visit abp.io.", + "EnkiProblems:ProblemNameAlreadyExists": "A problem with the same name already exists.", + "EnkiProblems:TotalMemoryLessThanStackMemory": "Total memory must be greater than stack memory.", + "EnkiProblems:NotAllowedToCreateProblem": "You are not allowed to create a problem.", + "EnkiProblems:NotAllowedToViewUnpublishedProblems": "You are not allowed to view unpublished problems.", + "EnkiProblems:NotAllowedToEditProblem": "You are not allowed to edit this problem.", + "EnkiProblems:NotAllowedToEditPublishedProblem": "A published problem cannot be updated.", + "EnkiProblems:UnpublishedProblemNotBelongingToCurrentUser": "You are not the proposer of this unpublished problem.", + "EnkiProblems:ProblemNotFound": "Problem not found.", + "EnkiProblems:TestNotFound": "Test not found.", + "EnkiProblems:NumberOfTestsExceedsLimit": "The number of tests exceeds the allowed limit.", + "EnkiProblems:TestUploadFailed": "The uploading process for the current test failed.", + "EnkiProblems:TestDeleteFailed": "The deleting process for the current test failed.", + "EnkiProblems:DownloadTestArchiveError": "Download failed for test archive.", + "EnkiProblems:TotalScoreExceeded": "The total score of the problem tests cannot exceed the predefined limit.", + "EnkiProblems:NumberOfTestExceeded": "The number of tests cannot exceed the predefined limit.", + "EnkiProblems:TestDownloadUrlRetrievalFailed": "The download URL for the current test could not be retrieved.", + "EnkiProblems:ProblemCannotBePublished": "The problem cannot be published.", + "EnkiProblems:ProblemCannotBeDeleted": "The problem cannot be deleted due to lack of permissions or not existing in the system.", + "EnkiProblems:NotAllowedToDeletePublishedProblem": "A published problem cannot be deleted unless you are admin." + } +} diff --git a/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/es.json b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/es.json new file mode 100644 index 0000000..31b4b59 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/es.json @@ -0,0 +1,8 @@ +{ + "culture": "es", + "texts": { + "Menu:Home": "Inicio", + "Welcome": "Bienvenido", + "LongWelcomeMessage": "Bienvenido a la aplicación, este es un proyecto base basado en el framework ABP. Para más información, visita abp.io." + } +} \ No newline at end of file diff --git a/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/fi.json b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/fi.json new file mode 100644 index 0000000..a318859 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/fi.json @@ -0,0 +1,8 @@ +{ + "culture": "fi", + "texts": { + "Menu:Home": "Koti", + "Welcome": "Tervetuloa", + "LongWelcomeMessage": "Tervetuloa sovellukseen. Tämä on ABP-kehykseen perustuva käynnistysprojekti. Lisätietoja on osoitteessa abp.io." + } +} \ No newline at end of file diff --git a/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/fr.json b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/fr.json new file mode 100644 index 0000000..e76eac0 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/fr.json @@ -0,0 +1,8 @@ +{ + "culture": "fr", + "texts": { + "Menu:Home": "Accueil", + "Welcome": "Bienvenue", + "LongWelcomeMessage": "Bienvenue dans l'application. Il s'agit d'un projet de démarrage basé sur le framework ABP. Pour plus d'informations, visitez abp.io." + } +} \ No newline at end of file diff --git a/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/hi.json b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/hi.json new file mode 100644 index 0000000..a1676bf --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/hi.json @@ -0,0 +1,8 @@ +{ + "culture": "hi", + "texts": { + "Menu:Home": "घर", + "Welcome": "स्वागत हे", + "LongWelcomeMessage": "आवेदन करने के लिए आपका स्वागत है। यह एबीपी ढांचे पर आधारित एक स्टार्टअप परियोजना है। अधिक जानकारी के लिए, abp.io पर जाएं।" + } +} \ No newline at end of file diff --git a/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/hr.json b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/hr.json new file mode 100644 index 0000000..fa8efab --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/hr.json @@ -0,0 +1,8 @@ +{ + "culture": "hr", + "texts": { + "Menu:Home": "Početna", + "Welcome": "Dobrodošli", + "LongWelcomeMessage": "Dobrodošli u aplikaciju. Ovo je startup projekt temeljen na ABP framework-u. Za više informacija posjetite abp.io." + } +} diff --git a/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/hu.json b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/hu.json new file mode 100644 index 0000000..c7b6a33 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/hu.json @@ -0,0 +1,8 @@ +{ + "culture": "hu", + "texts": { + "Menu:Home": "Kezdőlap", + "Welcome": "Üdvözlöm", + "LongWelcomeMessage": "Üdvözöljük az alkalmazásban. Ez egy ABP keretrendszeren alapuló startup projekt. További információkért látogasson el az abp.io oldalra." + } +} \ No newline at end of file diff --git a/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/is.json b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/is.json new file mode 100644 index 0000000..190df90 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/is.json @@ -0,0 +1,8 @@ +{ + "culture": "is", + "texts": { + "Menu:Home": "Heim", + "Welcome": "Velkomin", + "LongWelcomeMessage": "Verið velkomin í forritið. Þetta er startup verkefni sem byggir á ABP. Nánari upplýsingar er að finna á abp.io." + } +} \ No newline at end of file diff --git a/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/it.json b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/it.json new file mode 100644 index 0000000..82ce42b --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/it.json @@ -0,0 +1,8 @@ +{ + "culture": "it", + "texts": { + "Menu:Home": "Home", + "Welcome": "Benvenuto", + "LongWelcomeMessage": "Benvenuto nell'applicazione. Questo è un progetto di avvio basato sul framework ABP. Per ulteriori informazioni, visita abp.io." + } +} \ No newline at end of file diff --git a/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/nl.json b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/nl.json new file mode 100644 index 0000000..9ba8da4 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/nl.json @@ -0,0 +1,8 @@ +{ + "culture": "nl", + "texts": { + "Menu:Home": "Home", + "Welcome": "Welkom", + "LongWelcomeMessage": "Welkom bij de applicatie. Dit is een startup-project gebaseerd op het ABP-framework. Bezoek abp.io voor meer informatie." + } +} \ No newline at end of file diff --git a/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/pl-PL.json b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/pl-PL.json new file mode 100644 index 0000000..33412f3 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/pl-PL.json @@ -0,0 +1,8 @@ +{ + "culture": "pl-PL", + "texts": { + "Menu:Home": "Home", + "Welcome": "Witaj", + "LongWelcomeMessage": "Witaj w aplikacji. To jest inicjalny projekt bazujący na ABP framework. Po więcej informacji odwiedź stronę abp.io." + } +} \ No newline at end of file diff --git a/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/pt-BR.json b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/pt-BR.json new file mode 100644 index 0000000..8c818a0 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/pt-BR.json @@ -0,0 +1,8 @@ +{ + "culture": "pt-BR", + "texts": { + "Menu:Home": "Principal", + "Welcome": "Seja bem-vindo!", + "LongWelcomeMessage": "Bem-vindo a esta aplicação. Este é um projeto inicial baseado no ABP framework. Para mais informações, visite abp.io." + } +} \ No newline at end of file diff --git a/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/ro-RO.json b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/ro-RO.json new file mode 100644 index 0000000..1fe5601 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/ro-RO.json @@ -0,0 +1,8 @@ +{ + "culture": "ro-RO", + "texts": { + "Menu:Home": "Acasă", + "Welcome": "Bun venit", + "LongWelcomeMessage": "Bun venit la aplicaţie. Acesta este un proiect de pornire bazat pe framework-ul ABP. Pentru mai multe informaţii, vizitaţi, visit abp.io." + } +} \ No newline at end of file diff --git a/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/ru.json b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/ru.json new file mode 100644 index 0000000..8464e44 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/ru.json @@ -0,0 +1,8 @@ +{ + "culture": "ru", + "texts": { + "Menu:Home": "Главная", + "Welcome": "Добро пожаловать", + "LongWelcomeMessage": "Добро пожаловать в приложение. Этот запущенный проект основан на фреймворке ABP. Для получения дополнительной информации посетите сайт abp.io." + } +} diff --git a/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/sk.json b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/sk.json new file mode 100644 index 0000000..4f35aaf --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/sk.json @@ -0,0 +1,8 @@ +{ + "culture": "sk", + "texts": { + "Menu:Home": "Domov", + "Welcome": "Vitajte", + "LongWelcomeMessage": "Vitajte v aplikácii. Toto je štartovací projekt založený na ABP frameworku. Viac informácií nájdete na stránke abp.io." + } +} \ No newline at end of file diff --git a/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/sl.json b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/sl.json new file mode 100644 index 0000000..a066ef2 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/sl.json @@ -0,0 +1,8 @@ +{ + "culture": "sl", + "texts": { + "Menu:Home": "Domov", + "Welcome": "Dobrodošli", + "LongWelcomeMessage": "Dobrodošli v aplikaciji. To je začetni projekt na osnovi okolja ABP. Za več informacij obiščite abp.io." + } +} diff --git a/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/tr.json b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/tr.json new file mode 100644 index 0000000..2cc911e --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/tr.json @@ -0,0 +1,8 @@ +{ + "culture": "tr", + "texts": { + "Menu:Home": "Ana sayfa", + "Welcome": "Hoşgeldiniz", + "LongWelcomeMessage": "Uygulamaya hoşgeldiniz. Bu, ABP framework'ü üzerine bina edilmiş bir başlangıç projesidir. Daha fazla bilgi için abp.io adresini ziyaret edebilirsiniz." + } +} \ No newline at end of file diff --git a/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/vi.json b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/vi.json new file mode 100644 index 0000000..c115a35 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/vi.json @@ -0,0 +1,8 @@ +{ + "culture": "vi", + "texts": { + "Menu:Home": "Trang chủ", + "Welcome": "Chào mừng bạn", + "LongWelcomeMessage": "Chào mừng bạn đến ứng dụng. Đây là một dự án khởi nghiệp dựa trên khung ABP. Để biết thêm thông tin, hãy truy cập abp.io." + } +} diff --git a/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/zh-Hans.json b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/zh-Hans.json new file mode 100644 index 0000000..23790bd --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/zh-Hans.json @@ -0,0 +1,8 @@ +{ + "culture": "zh-Hans", + "texts": { + "Menu:Home": "首页", + "Welcome": "欢迎", + "LongWelcomeMessage": "欢迎来到该应用程序. 这是一个基于ABP框架的启动项目. 有关更多信息, 请访问 abp.io." + } + } \ No newline at end of file diff --git a/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/zh-Hant.json b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/zh-Hant.json new file mode 100644 index 0000000..31e0ab5 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblems/zh-Hant.json @@ -0,0 +1,8 @@ +{ + "culture": "zh-Hant", + "texts": { + "Menu:Home": "首頁", + "Welcome": "歡迎", + "LongWelcomeMessage": "歡迎來到此應用程式. 這是一個基於ABP框架的起始專案. 有關更多訊息, 請瀏覽 abp.io." + } + } \ No newline at end of file diff --git a/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblemsResource.cs b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblemsResource.cs new file mode 100644 index 0000000..98c3ceb --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain.Shared/Localization/EnkiProblemsResource.cs @@ -0,0 +1,6 @@ +using Volo.Abp.Localization; + +namespace EnkiProblems.Localization; + +[LocalizationResourceName("EnkiProblems")] +public class EnkiProblemsResource { } diff --git a/enki-problems/src/EnkiProblems.Domain.Shared/MultiTenancy/MultiTenancyConsts.cs b/enki-problems/src/EnkiProblems.Domain.Shared/MultiTenancy/MultiTenancyConsts.cs new file mode 100644 index 0000000..897d306 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain.Shared/MultiTenancy/MultiTenancyConsts.cs @@ -0,0 +1,10 @@ +namespace EnkiProblems.MultiTenancy; + +public static class MultiTenancyConsts +{ + /* Enable/disable multi-tenancy easily in a single point. + * If you will never need to multi-tenancy, you can remove + * related modules and code parts, including this file. + */ + public const bool IsEnabled = true; +} diff --git a/enki-problems/src/EnkiProblems.Domain.Shared/Problems/DifficultyEnum.cs b/enki-problems/src/EnkiProblems.Domain.Shared/Problems/DifficultyEnum.cs new file mode 100644 index 0000000..1e40f9a --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain.Shared/Problems/DifficultyEnum.cs @@ -0,0 +1,9 @@ +namespace EnkiProblems.Problems; + +public enum DifficultyEnum +{ + Easy, + Medium, + Hard, + Olympiad +} diff --git a/enki-problems/src/EnkiProblems.Domain.Shared/Problems/IoTypeEnum.cs b/enki-problems/src/EnkiProblems.Domain.Shared/Problems/IoTypeEnum.cs new file mode 100644 index 0000000..63910db --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain.Shared/Problems/IoTypeEnum.cs @@ -0,0 +1,7 @@ +namespace EnkiProblems.Problems; + +public enum IoTypeEnum +{ + Standard, + File +} diff --git a/enki-problems/src/EnkiProblems.Domain/Data/EnkiProblemsDbMigrationService.cs b/enki-problems/src/EnkiProblems.Domain/Data/EnkiProblemsDbMigrationService.cs new file mode 100644 index 0000000..7d8b1d9 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain/Data/EnkiProblemsDbMigrationService.cs @@ -0,0 +1,110 @@ +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Microsoft.Extensions.Logging.Abstractions; +using Volo.Abp.Data; +using Volo.Abp.DependencyInjection; +using Volo.Abp.Identity; +using Volo.Abp.MultiTenancy; +using Volo.Abp.TenantManagement; + +namespace EnkiProblems.Data; + +public class EnkiProblemsDbMigrationService : ITransientDependency +{ + public ILogger Logger { get; set; } + + private readonly IDataSeeder _dataSeeder; + private readonly IEnumerable _dbSchemaMigrators; + private readonly ITenantRepository _tenantRepository; + private readonly ICurrentTenant _currentTenant; + + public EnkiProblemsDbMigrationService( + IDataSeeder dataSeeder, + IEnumerable dbSchemaMigrators, + ITenantRepository tenantRepository, + ICurrentTenant currentTenant + ) + { + _dataSeeder = dataSeeder; + _dbSchemaMigrators = dbSchemaMigrators; + _tenantRepository = tenantRepository; + _currentTenant = currentTenant; + + Logger = NullLogger.Instance; + } + + public async Task MigrateAsync() + { + Logger.LogInformation("Started database migrations..."); + + await MigrateDatabaseSchemaAsync(); + await SeedDataAsync(); + + Logger.LogInformation($"Successfully completed host database migrations."); + + var tenants = await _tenantRepository.GetListAsync(includeDetails: true); + + var migratedDatabaseSchemas = new HashSet(); + foreach (var tenant in tenants) + { + using (_currentTenant.Change(tenant.Id)) + { + if (tenant.ConnectionStrings.Any()) + { + var tenantConnectionStrings = tenant + .ConnectionStrings.Select(x => x.Value) + .ToList(); + + if (!migratedDatabaseSchemas.IsSupersetOf(tenantConnectionStrings)) + { + await MigrateDatabaseSchemaAsync(tenant); + + migratedDatabaseSchemas.AddIfNotContains(tenantConnectionStrings); + } + } + + await SeedDataAsync(tenant); + } + + Logger.LogInformation( + $"Successfully completed {tenant.Name} tenant database migrations." + ); + } + + Logger.LogInformation("Successfully completed all database migrations."); + Logger.LogInformation("You can safely end this process..."); + } + + private async Task MigrateDatabaseSchemaAsync(Tenant? tenant = null) + { + Logger.LogInformation( + $"Migrating schema for {(tenant == null ? "host" : tenant.Name + " tenant")} database..." + ); + + foreach (var migrator in _dbSchemaMigrators) + { + await migrator.MigrateAsync(); + } + } + + private async Task SeedDataAsync(Tenant? tenant = null) + { + Logger.LogInformation( + $"Executing {(tenant == null ? "host" : tenant.Name + " tenant")} database seed..." + ); + + await _dataSeeder.SeedAsync( + new DataSeedContext(tenant?.Id) + .WithProperty( + IdentityDataSeedContributor.AdminEmailPropertyName, + IdentityDataSeedContributor.AdminEmailDefaultValue + ) + .WithProperty( + IdentityDataSeedContributor.AdminPasswordPropertyName, + IdentityDataSeedContributor.AdminPasswordDefaultValue + ) + ); + } +} diff --git a/enki-problems/src/EnkiProblems.Domain/Data/IEnkiProblemsDbSchemaMigrator.cs b/enki-problems/src/EnkiProblems.Domain/Data/IEnkiProblemsDbSchemaMigrator.cs new file mode 100644 index 0000000..6ebdea0 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain/Data/IEnkiProblemsDbSchemaMigrator.cs @@ -0,0 +1,8 @@ +using System.Threading.Tasks; + +namespace EnkiProblems.Data; + +public interface IEnkiProblemsDbSchemaMigrator +{ + Task MigrateAsync(); +} diff --git a/enki-problems/src/EnkiProblems.Domain/Data/NullEnkiProblemsDbSchemaMigrator.cs b/enki-problems/src/EnkiProblems.Domain/Data/NullEnkiProblemsDbSchemaMigrator.cs new file mode 100644 index 0000000..1470c1f --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain/Data/NullEnkiProblemsDbSchemaMigrator.cs @@ -0,0 +1,15 @@ +using System.Threading.Tasks; +using Volo.Abp.DependencyInjection; + +namespace EnkiProblems.Data; + +/* This is used if database provider does't define + * IEnkiProblemsDbSchemaMigrator implementation. + */ +public class NullEnkiProblemsDbSchemaMigrator : IEnkiProblemsDbSchemaMigrator, ITransientDependency +{ + public Task MigrateAsync() + { + return Task.CompletedTask; + } +} diff --git a/enki-problems/src/EnkiProblems.Domain/EnkiProblems.Domain.csproj b/enki-problems/src/EnkiProblems.Domain/EnkiProblems.Domain.csproj new file mode 100644 index 0000000..97947ea --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain/EnkiProblems.Domain.csproj @@ -0,0 +1,28 @@ + + + + + + net7.0 + enable + EnkiProblems + + + + + + + + + + + + + + + + + + + + diff --git a/enki-problems/src/EnkiProblems.Domain/EnkiProblemsConsts.cs b/enki-problems/src/EnkiProblems.Domain/EnkiProblemsConsts.cs new file mode 100644 index 0000000..ff6274c --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain/EnkiProblemsConsts.cs @@ -0,0 +1,70 @@ +namespace EnkiProblems; + +public static class EnkiProblemsConsts +{ + public const string DbTablePrefix = "App"; + + public const string DbSchema = null; + + public const string StateStoreName = "statestore"; + + public const string PubSubName = "pubsub"; + + public const string ProblemEvalMetadataUpsertedTopic = "problem-eval-metadata-upserted"; + + public const string ProblemEvalMetadataDeletedTopic = "problem-eval-metadata-deleted"; + + public const string TestUpsertedTopic = "test-upserted"; + + public const string TestDeletedTopic = "test-deleted"; + + public const string TestInputSuffix = "input"; + + public const string TestOutputSuffix = "output"; + + public const string ProposerRoleName = "Proposer"; + + public const string AdminRoleName = "Admin"; + + public const int MaxNameLength = 128; + + public const int MinNameLength = 2; + + public const int MaxBriefLength = 256; + + public const int MinBriefLength = 4; + + public const int MaxDescriptionLength = 4096; + + public const int MinDescriptionLength = 16; + + public const int MaxSourceNameLength = 128; + + public const int MinSourceNameLength = 2; + + public const int MaxAuthorNameLength = 128; + + public const int MinAuthorNameLength = 2; + + public const decimal MaxTimeLimit = 5m; + + public const decimal MinTimeLimit = 0.1m; + + public const decimal MaxTotalMemoryLimit = 512m; + + public const decimal MinTotalMemoryLimit = 0.1m; + + public const decimal MaxStackMemoryLimit = 64m; + + public const decimal MinStackMemoryLimit = 0.1m; + + public const int MaxNumberOfTests = 20; + + public const int MinScore = 0; + + public const int MaxScore = 100; + + public const int MaxTotalScore = 100; + + public const int TestChunkSize = 5000; +} diff --git a/enki-problems/src/EnkiProblems.Domain/EnkiProblemsDomainModule.cs b/enki-problems/src/EnkiProblems.Domain/EnkiProblemsDomainModule.cs new file mode 100644 index 0000000..444dff6 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain/EnkiProblemsDomainModule.cs @@ -0,0 +1,68 @@ +using EnkiProblems.MultiTenancy; +using Microsoft.Extensions.DependencyInjection; +using Microsoft.Extensions.DependencyInjection.Extensions; +using Volo.Abp.AuditLogging; +using Volo.Abp.BackgroundJobs; +using Volo.Abp.Emailing; +using Volo.Abp.FeatureManagement; +using Volo.Abp.Identity; +using Volo.Abp.Localization; +using Volo.Abp.Modularity; +using Volo.Abp.MultiTenancy; +using Volo.Abp.OpenIddict; +using Volo.Abp.PermissionManagement.Identity; +using Volo.Abp.PermissionManagement.OpenIddict; +using Volo.Abp.SettingManagement; +using Volo.Abp.TenantManagement; + +namespace EnkiProblems; + +[DependsOn( + typeof(EnkiProblemsDomainSharedModule), + typeof(AbpAuditLoggingDomainModule), + typeof(AbpBackgroundJobsDomainModule), + typeof(AbpFeatureManagementDomainModule), + typeof(AbpIdentityDomainModule), + typeof(AbpOpenIddictDomainModule), + typeof(AbpPermissionManagementDomainOpenIddictModule), + typeof(AbpPermissionManagementDomainIdentityModule), + typeof(AbpSettingManagementDomainModule), + typeof(AbpTenantManagementDomainModule), + typeof(AbpEmailingModule) +)] +public class EnkiProblemsDomainModule : AbpModule +{ + public override void ConfigureServices(ServiceConfigurationContext context) + { + Configure(options => + { + options.Languages.Add(new LanguageInfo("ar", "ar", "العربية", "ae")); + options.Languages.Add(new LanguageInfo("cs", "cs", "Čeština")); + options.Languages.Add(new LanguageInfo("en", "en", "English", "gb")); + options.Languages.Add(new LanguageInfo("en-GB", "en-GB", "English (UK)")); + options.Languages.Add(new LanguageInfo("hu", "hu", "Magyar")); + options.Languages.Add(new LanguageInfo("hr", "hr", "Croatian")); + options.Languages.Add(new LanguageInfo("fi", "fi", "Finnish", "fi")); + options.Languages.Add(new LanguageInfo("fr", "fr", "Français", "fr")); + options.Languages.Add(new LanguageInfo("hi", "hi", "Hindi", "in")); + options.Languages.Add(new LanguageInfo("it", "it", "Italiano", "it")); + options.Languages.Add(new LanguageInfo("pt-BR", "pt-BR", "Português")); + options.Languages.Add(new LanguageInfo("ru", "ru", "Русский", "ru")); + options.Languages.Add(new LanguageInfo("sk", "sk", "Slovak", "sk")); + options.Languages.Add(new LanguageInfo("tr", "tr", "Türkçe", "tr")); + options.Languages.Add(new LanguageInfo("zh-Hans", "zh-Hans", "简体中文")); + options.Languages.Add(new LanguageInfo("zh-Hant", "zh-Hant", "繁體中文")); + options.Languages.Add(new LanguageInfo("de-DE", "de-DE", "Deutsch", "de")); + options.Languages.Add(new LanguageInfo("es", "es", "Español")); + }); + + Configure(options => + { + options.IsEnabled = MultiTenancyConsts.IsEnabled; + }); + +#if DEBUG + context.Services.Replace(ServiceDescriptor.Singleton()); +#endif + } +} diff --git a/enki-problems/src/EnkiProblems.Domain/Labels/Label.cs b/enki-problems/src/EnkiProblems.Domain/Labels/Label.cs new file mode 100644 index 0000000..5153761 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain/Labels/Label.cs @@ -0,0 +1,9 @@ +using System; +using Volo.Abp.Domain.Entities.Auditing; + +namespace EnkiProblems.Labels; + +public class Label : FullAuditedAggregateRoot +{ + public string Name { get; set; } +} diff --git a/enki-problems/src/EnkiProblems.Domain/OpenIddict/OpenIddictDataSeedContributor.cs b/enki-problems/src/EnkiProblems.Domain/OpenIddict/OpenIddictDataSeedContributor.cs new file mode 100644 index 0000000..ce74ef1 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain/OpenIddict/OpenIddictDataSeedContributor.cs @@ -0,0 +1,490 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; +using JetBrains.Annotations; +using Microsoft.Extensions.Configuration; +using Microsoft.Extensions.Localization; +using OpenIddict.Abstractions; +using Volo.Abp; +using Volo.Abp.Authorization.Permissions; +using Volo.Abp.Data; +using Volo.Abp.DependencyInjection; +using Volo.Abp.OpenIddict.Applications; +using Volo.Abp.PermissionManagement; +using Volo.Abp.Uow; + +namespace EnkiProblems.OpenIddict; + +/* Creates initial data that is needed to property run the application + * and make client-to-server communication possible. + */ +public class OpenIddictDataSeedContributor : IDataSeedContributor, ITransientDependency +{ + private readonly IConfiguration _configuration; + private readonly IAbpApplicationManager _applicationManager; + private readonly IOpenIddictScopeManager _scopeManager; + private readonly IPermissionDataSeeder _permissionDataSeeder; + private readonly IStringLocalizer L; + + public OpenIddictDataSeedContributor( + IConfiguration configuration, + IAbpApplicationManager applicationManager, + IOpenIddictScopeManager scopeManager, + IPermissionDataSeeder permissionDataSeeder, + IStringLocalizer l + ) + { + _configuration = configuration; + _applicationManager = applicationManager; + _scopeManager = scopeManager; + _permissionDataSeeder = permissionDataSeeder; + L = l; + } + + [UnitOfWork] + public virtual async Task SeedAsync(DataSeedContext context) + { + await CreateScopesAsync(); + await CreateApplicationsAsync(); + } + + private async Task CreateScopesAsync() + { + if (await _scopeManager.FindByNameAsync("EnkiProblems") == null) + { + await _scopeManager.CreateAsync( + new OpenIddictScopeDescriptor + { + Name = "EnkiProblems", + DisplayName = "EnkiProblems API", + Resources = { "EnkiProblems" } + } + ); + } + } + + private async Task CreateApplicationsAsync() + { + var commonScopes = new List + { + OpenIddictConstants.Permissions.Scopes.Address, + OpenIddictConstants.Permissions.Scopes.Email, + OpenIddictConstants.Permissions.Scopes.Phone, + OpenIddictConstants.Permissions.Scopes.Profile, + OpenIddictConstants.Permissions.Scopes.Roles, + "EnkiProblems" + }; + + var configurationSection = _configuration.GetSection("OpenIddict:Applications"); + + //Web Client + var webClientId = configurationSection["EnkiProblems_Web:ClientId"]; + if (!webClientId.IsNullOrWhiteSpace()) + { + var webClientRootUrl = configurationSection["EnkiProblems_Web:RootUrl"] + .EnsureEndsWith('/'); + + /* EnkiProblems_Web client is only needed if you created a tiered + * solution. Otherwise, you can delete this client. */ + await CreateApplicationAsync( + name: webClientId!, + type: OpenIddictConstants.ClientTypes.Confidential, + consentType: OpenIddictConstants.ConsentTypes.Implicit, + displayName: "Web Application", + secret: configurationSection["EnkiProblems_Web:ClientSecret"] ?? "1q2w3e*", + grantTypes: new List //Hybrid flow + { + OpenIddictConstants.GrantTypes.AuthorizationCode, + OpenIddictConstants.GrantTypes.Implicit + }, + scopes: commonScopes, + redirectUri: $"{webClientRootUrl}signin-oidc", + clientUri: webClientRootUrl, + postLogoutRedirectUri: $"{webClientRootUrl}signout-callback-oidc" + ); + } + + //Console Test / Angular Client + var consoleAndAngularClientId = configurationSection["EnkiProblems_App:ClientId"]; + if (!consoleAndAngularClientId.IsNullOrWhiteSpace()) + { + var consoleAndAngularClientRootUrl = configurationSection["EnkiProblems_App:RootUrl"] + ?.TrimEnd('/'); + await CreateApplicationAsync( + name: consoleAndAngularClientId!, + type: OpenIddictConstants.ClientTypes.Public, + consentType: OpenIddictConstants.ConsentTypes.Implicit, + displayName: "Console Test / Angular Application", + secret: null, + grantTypes: new List + { + OpenIddictConstants.GrantTypes.AuthorizationCode, + OpenIddictConstants.GrantTypes.Password, + OpenIddictConstants.GrantTypes.ClientCredentials, + OpenIddictConstants.GrantTypes.RefreshToken + }, + scopes: commonScopes, + redirectUri: consoleAndAngularClientRootUrl, + clientUri: consoleAndAngularClientRootUrl, + postLogoutRedirectUri: consoleAndAngularClientRootUrl + ); + } + + // Blazor Client + var blazorClientId = configurationSection["EnkiProblems_Blazor:ClientId"]; + if (!blazorClientId.IsNullOrWhiteSpace()) + { + var blazorRootUrl = configurationSection["EnkiProblems_Blazor:RootUrl"]?.TrimEnd('/'); + + await CreateApplicationAsync( + name: blazorClientId!, + type: OpenIddictConstants.ClientTypes.Public, + consentType: OpenIddictConstants.ConsentTypes.Implicit, + displayName: "Blazor Application", + secret: null, + grantTypes: new List { OpenIddictConstants.GrantTypes.AuthorizationCode, }, + scopes: commonScopes, + redirectUri: $"{blazorRootUrl}/authentication/login-callback", + clientUri: blazorRootUrl, + postLogoutRedirectUri: $"{blazorRootUrl}/authentication/logout-callback" + ); + } + + // Blazor Server Tiered Client + var blazorServerTieredClientId = configurationSection[ + "EnkiProblems_BlazorServerTiered:ClientId" + ]; + if (!blazorServerTieredClientId.IsNullOrWhiteSpace()) + { + var blazorServerTieredRootUrl = configurationSection[ + "EnkiProblems_BlazorServerTiered:RootUrl" + ] + .EnsureEndsWith('/'); + + await CreateApplicationAsync( + name: blazorServerTieredClientId!, + type: OpenIddictConstants.ClientTypes.Confidential, + consentType: OpenIddictConstants.ConsentTypes.Implicit, + displayName: "Blazor Server Application", + secret: configurationSection["EnkiProblems_BlazorServerTiered:ClientSecret"] + ?? "1q2w3e*", + grantTypes: new List //Hybrid flow + { + OpenIddictConstants.GrantTypes.AuthorizationCode, + OpenIddictConstants.GrantTypes.Implicit + }, + scopes: commonScopes, + redirectUri: $"{blazorServerTieredRootUrl}signin-oidc", + clientUri: blazorServerTieredRootUrl, + postLogoutRedirectUri: $"{blazorServerTieredRootUrl}signout-callback-oidc" + ); + } + + // Swagger Client + var swaggerClientId = configurationSection["EnkiProblems_Swagger:ClientId"]; + if (!swaggerClientId.IsNullOrWhiteSpace()) + { + var swaggerRootUrl = configurationSection["EnkiProblems_Swagger:RootUrl"]?.TrimEnd('/'); + + await CreateApplicationAsync( + name: swaggerClientId!, + type: OpenIddictConstants.ClientTypes.Public, + consentType: OpenIddictConstants.ConsentTypes.Implicit, + displayName: "Swagger Application", + secret: null, + grantTypes: new List { OpenIddictConstants.GrantTypes.AuthorizationCode, }, + scopes: commonScopes, + redirectUri: $"{swaggerRootUrl}/swagger/oauth2-redirect.html", + clientUri: swaggerRootUrl + ); + } + } + + private async Task CreateApplicationAsync( + [NotNull] string name, + [NotNull] string type, + [NotNull] string consentType, + string displayName, + string? secret, + List grantTypes, + List scopes, + string? clientUri = null, + string? redirectUri = null, + string? postLogoutRedirectUri = null, + List? permissions = null + ) + { + if ( + !string.IsNullOrEmpty(secret) + && string.Equals( + type, + OpenIddictConstants.ClientTypes.Public, + StringComparison.OrdinalIgnoreCase + ) + ) + { + throw new BusinessException(L["NoClientSecretCanBeSetForPublicApplications"]); + } + + if ( + string.IsNullOrEmpty(secret) + && string.Equals( + type, + OpenIddictConstants.ClientTypes.Confidential, + StringComparison.OrdinalIgnoreCase + ) + ) + { + throw new BusinessException(L["TheClientSecretIsRequiredForConfidentialApplications"]); + } + + if ( + !string.IsNullOrEmpty(name) + && await _applicationManager.FindByClientIdAsync(name) != null + ) + { + return; + //throw new BusinessException(L["TheClientIdentifierIsAlreadyTakenByAnotherApplication"]); + } + + var client = await _applicationManager.FindByClientIdAsync(name); + if (client == null) + { + var application = new AbpApplicationDescriptor + { + ClientId = name, + Type = type, + ClientSecret = secret, + ConsentType = consentType, + DisplayName = displayName, + ClientUri = clientUri, + }; + + Check.NotNullOrEmpty(grantTypes, nameof(grantTypes)); + Check.NotNullOrEmpty(scopes, nameof(scopes)); + + if ( + new[] + { + OpenIddictConstants.GrantTypes.AuthorizationCode, + OpenIddictConstants.GrantTypes.Implicit + }.All(grantTypes.Contains) + ) + { + application.Permissions.Add( + OpenIddictConstants.Permissions.ResponseTypes.CodeIdToken + ); + + if ( + string.Equals( + type, + OpenIddictConstants.ClientTypes.Public, + StringComparison.OrdinalIgnoreCase + ) + ) + { + application.Permissions.Add( + OpenIddictConstants.Permissions.ResponseTypes.CodeIdTokenToken + ); + application.Permissions.Add( + OpenIddictConstants.Permissions.ResponseTypes.CodeToken + ); + } + } + + if (!redirectUri.IsNullOrWhiteSpace() || !postLogoutRedirectUri.IsNullOrWhiteSpace()) + { + application.Permissions.Add(OpenIddictConstants.Permissions.Endpoints.Logout); + } + + var buildInGrantTypes = new[] + { + OpenIddictConstants.GrantTypes.Implicit, + OpenIddictConstants.GrantTypes.Password, + OpenIddictConstants.GrantTypes.AuthorizationCode, + OpenIddictConstants.GrantTypes.ClientCredentials, + OpenIddictConstants.GrantTypes.DeviceCode, + OpenIddictConstants.GrantTypes.RefreshToken + }; + + foreach (var grantType in grantTypes) + { + if (grantType == OpenIddictConstants.GrantTypes.AuthorizationCode) + { + application.Permissions.Add( + OpenIddictConstants.Permissions.GrantTypes.AuthorizationCode + ); + application.Permissions.Add(OpenIddictConstants.Permissions.ResponseTypes.Code); + } + + if ( + grantType == OpenIddictConstants.GrantTypes.AuthorizationCode + || grantType == OpenIddictConstants.GrantTypes.Implicit + ) + { + application.Permissions.Add( + OpenIddictConstants.Permissions.Endpoints.Authorization + ); + } + + if ( + grantType == OpenIddictConstants.GrantTypes.AuthorizationCode + || grantType == OpenIddictConstants.GrantTypes.ClientCredentials + || grantType == OpenIddictConstants.GrantTypes.Password + || grantType == OpenIddictConstants.GrantTypes.RefreshToken + || grantType == OpenIddictConstants.GrantTypes.DeviceCode + ) + { + application.Permissions.Add(OpenIddictConstants.Permissions.Endpoints.Token); + application.Permissions.Add( + OpenIddictConstants.Permissions.Endpoints.Revocation + ); + application.Permissions.Add( + OpenIddictConstants.Permissions.Endpoints.Introspection + ); + } + + if (grantType == OpenIddictConstants.GrantTypes.ClientCredentials) + { + application.Permissions.Add( + OpenIddictConstants.Permissions.GrantTypes.ClientCredentials + ); + } + + if (grantType == OpenIddictConstants.GrantTypes.Implicit) + { + application.Permissions.Add( + OpenIddictConstants.Permissions.GrantTypes.Implicit + ); + } + + if (grantType == OpenIddictConstants.GrantTypes.Password) + { + application.Permissions.Add( + OpenIddictConstants.Permissions.GrantTypes.Password + ); + } + + if (grantType == OpenIddictConstants.GrantTypes.RefreshToken) + { + application.Permissions.Add( + OpenIddictConstants.Permissions.GrantTypes.RefreshToken + ); + } + + if (grantType == OpenIddictConstants.GrantTypes.DeviceCode) + { + application.Permissions.Add( + OpenIddictConstants.Permissions.GrantTypes.DeviceCode + ); + application.Permissions.Add(OpenIddictConstants.Permissions.Endpoints.Device); + } + + if (grantType == OpenIddictConstants.GrantTypes.Implicit) + { + application.Permissions.Add( + OpenIddictConstants.Permissions.ResponseTypes.IdToken + ); + if ( + string.Equals( + type, + OpenIddictConstants.ClientTypes.Public, + StringComparison.OrdinalIgnoreCase + ) + ) + { + application.Permissions.Add( + OpenIddictConstants.Permissions.ResponseTypes.IdTokenToken + ); + application.Permissions.Add( + OpenIddictConstants.Permissions.ResponseTypes.Token + ); + } + } + + if (!buildInGrantTypes.Contains(grantType)) + { + application.Permissions.Add( + OpenIddictConstants.Permissions.Prefixes.GrantType + grantType + ); + } + } + + var buildInScopes = new[] + { + OpenIddictConstants.Permissions.Scopes.Address, + OpenIddictConstants.Permissions.Scopes.Email, + OpenIddictConstants.Permissions.Scopes.Phone, + OpenIddictConstants.Permissions.Scopes.Profile, + OpenIddictConstants.Permissions.Scopes.Roles + }; + + foreach (var scope in scopes) + { + if (buildInScopes.Contains(scope)) + { + application.Permissions.Add(scope); + } + else + { + application.Permissions.Add( + OpenIddictConstants.Permissions.Prefixes.Scope + scope + ); + } + } + + if (redirectUri != null) + { + if (!redirectUri.IsNullOrEmpty()) + { + if ( + !Uri.TryCreate(redirectUri, UriKind.Absolute, out var uri) + || !uri.IsWellFormedOriginalString() + ) + { + throw new BusinessException(L["InvalidRedirectUri", redirectUri]); + } + + if (application.RedirectUris.All(x => x != uri)) + { + application.RedirectUris.Add(uri); + } + } + } + + if (postLogoutRedirectUri != null) + { + if (!postLogoutRedirectUri.IsNullOrEmpty()) + { + if ( + !Uri.TryCreate(postLogoutRedirectUri, UriKind.Absolute, out var uri) + || !uri.IsWellFormedOriginalString() + ) + { + throw new BusinessException( + L["InvalidPostLogoutRedirectUri", postLogoutRedirectUri] + ); + } + + if (application.PostLogoutRedirectUris.All(x => x != uri)) + { + application.PostLogoutRedirectUris.Add(uri); + } + } + } + + if (permissions != null) + { + await _permissionDataSeeder.SeedAsync( + ClientPermissionValueProvider.ProviderName, + name, + permissions, + null + ); + } + + await _applicationManager.CreateAsync(application); + } + } +} diff --git a/enki-problems/src/EnkiProblems.Domain/Problems/Limit.cs b/enki-problems/src/EnkiProblems.Domain/Problems/Limit.cs new file mode 100644 index 0000000..954f787 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain/Problems/Limit.cs @@ -0,0 +1,109 @@ +using System; +using System.Collections.Generic; +using Volo.Abp; +using Volo.Abp.Domain.Values; + +namespace EnkiProblems.Problems; + +public class Limit : ValueObject +{ + public Guid ProblemId { get; private set; } + + public decimal Time { get; private set; } + + public decimal TotalMemory { get; private set; } + + public decimal StackMemory { get; private set; } + + private Limit() { } + + internal Limit(Guid problemId, decimal time, decimal totalMemory, decimal stackMemory) + { + ProblemId = problemId; + SetTime(time); + SetMemory(totalMemory, stackMemory); + } + + internal Limit SetTime(decimal time) + { + Time = Check.Range( + time, + nameof(time), + EnkiProblemsConsts.MinTimeLimit, + EnkiProblemsConsts.MaxTimeLimit + ); + return this; + } + + internal Limit SetMemory(decimal totalMemory, decimal stackMemory) + { + if (totalMemory < stackMemory) + { + throw new BusinessException( + EnkiProblemsDomainErrorCodes.TotalMemoryLessThanStackMemory + ); + } + + TotalMemory = Check.Range( + totalMemory, + nameof(totalMemory), + EnkiProblemsConsts.MinTotalMemoryLimit, + EnkiProblemsConsts.MaxTotalMemoryLimit + ); + + StackMemory = Check.Range( + stackMemory, + nameof(stackMemory), + EnkiProblemsConsts.MinStackMemoryLimit, + EnkiProblemsConsts.MaxStackMemoryLimit + ); + + return this; + } + + internal Limit SetTotalMemory(decimal totalMemory) + { + if (totalMemory < StackMemory) + { + throw new BusinessException( + EnkiProblemsDomainErrorCodes.TotalMemoryLessThanStackMemory + ); + } + + TotalMemory = Check.Range( + totalMemory, + nameof(totalMemory), + EnkiProblemsConsts.MinTotalMemoryLimit, + EnkiProblemsConsts.MaxTotalMemoryLimit + ); + + return this; + } + + internal Limit SetStackMemory(decimal stackMemory) + { + if (TotalMemory < stackMemory) + { + throw new BusinessException( + EnkiProblemsDomainErrorCodes.TotalMemoryLessThanStackMemory + ); + } + + StackMemory = Check.Range( + stackMemory, + nameof(stackMemory), + EnkiProblemsConsts.MinStackMemoryLimit, + EnkiProblemsConsts.MaxStackMemoryLimit + ); + + return this; + } + + protected override IEnumerable GetAtomicValues() + { + yield return ProblemId; + yield return Time; + yield return TotalMemory; + yield return StackMemory; + } +} diff --git a/enki-problems/src/EnkiProblems.Domain/Problems/Origin.cs b/enki-problems/src/EnkiProblems.Domain/Problems/Origin.cs new file mode 100644 index 0000000..886116d --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain/Problems/Origin.cs @@ -0,0 +1,53 @@ +using System; +using System.Collections.Generic; +using Volo.Abp; +using Volo.Abp.Domain.Values; + +namespace EnkiProblems.Problems; + +public class Origin : ValueObject +{ + public Guid ProblemId { get; private set; } + + public string SourceName { get; private set; } + + public string AuthorName { get; private set; } + + private Origin() { } + + internal Origin(Guid problemId, string sourceName, string authorName) + { + ProblemId = problemId; + SetSourceName(sourceName); + SetAuthorName(authorName); + } + + internal Origin SetSourceName(string sourceName) + { + SourceName = Check.NotNullOrWhiteSpace( + sourceName, + nameof(sourceName), + EnkiProblemsConsts.MaxSourceNameLength, + EnkiProblemsConsts.MinSourceNameLength + ); + return this; + } + + internal Origin SetAuthorName(string authorName) + { + AuthorName = Check.NotNullOrWhiteSpace( + authorName, + nameof(authorName), + EnkiProblemsConsts.MaxAuthorNameLength, + EnkiProblemsConsts.MinAuthorNameLength + ); + return this; + } + + protected override IEnumerable GetAtomicValues() + { + yield return ProblemId; + yield return SourceName; + yield return AuthorName; + } +} diff --git a/enki-problems/src/EnkiProblems.Domain/Problems/Problem.cs b/enki-problems/src/EnkiProblems.Domain/Problems/Problem.cs new file mode 100644 index 0000000..0090200 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain/Problems/Problem.cs @@ -0,0 +1,326 @@ +using System; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using Volo.Abp; +using Volo.Abp.Domain.Entities.Auditing; + +namespace EnkiProblems.Problems; + +public class Problem : FullAuditedAggregateRoot +{ + public string Name { get; private set; } + + public string Brief { get; private set; } + + public string Description { get; private set; } + + public bool IsPublished { get; private set; } + + public Origin Origin { get; private set; } + + public Guid ProposerId { get; private set; } + + public Limit Limit { get; private set; } + + public DateTime CreationDate { get; private set; } + + public DateTime? PublishingDate { get; private set; } + + public IoTypeEnum IoType { get; private set; } + + public DifficultyEnum Difficulty { get; private set; } + + public ICollection Tests { get; private set; } + + public ICollection Labels { get; private set; } + + private Problem() { } + + internal Problem( + Guid id, + string name, + string brief, + string description, + string sourceName, + string authorName, + Guid proposerId, + decimal timeLimit, + decimal totalMemoryLimit, + decimal stackMemoryLimit, + IoTypeEnum ioType, + DifficultyEnum difficulty + ) + : base(id) + { + SetName(name); + SetBrief(brief); + SetDescription(description); + SetOrigin(sourceName, authorName); + SetLimit(timeLimit, totalMemoryLimit, stackMemoryLimit); + + IoType = ioType; + Difficulty = difficulty; + ProposerId = proposerId; + + IsPublished = false; + CreationDate = DateTime.Now; + + Tests = new Collection(); + Labels = new Collection(); + } + + internal Problem( + Guid id, + string name, + string brief, + string description, + string sourceName, + string authorName, + Guid proposerId, + decimal timeLimit, + decimal totalMemoryLimit, + decimal stackMemoryLimit, + IoTypeEnum ioType, + DifficultyEnum difficulty, + IEnumerable tests + ) + : base(id) + { + SetName(name); + SetBrief(brief); + SetDescription(description); + SetOrigin(sourceName, authorName); + SetLimit(timeLimit, totalMemoryLimit, stackMemoryLimit); + + IoType = ioType; + Difficulty = difficulty; + ProposerId = proposerId; + + IsPublished = false; + CreationDate = DateTime.Now; + + Tests = tests.ToList(); + Labels = new Collection(); + } + + internal Problem SetName(string name) + { + Name = Check.NotNullOrWhiteSpace( + name, + nameof(name), + EnkiProblemsConsts.MaxNameLength, + EnkiProblemsConsts.MinNameLength + ); + return this; + } + + internal Problem SetBrief(string brief) + { + Brief = Check.NotNullOrWhiteSpace( + brief, + nameof(brief), + EnkiProblemsConsts.MaxBriefLength, + EnkiProblemsConsts.MinBriefLength + ); + return this; + } + + internal Problem SetDescription(string description) + { + Description = Check.NotNullOrWhiteSpace( + description, + nameof(description), + EnkiProblemsConsts.MaxDescriptionLength, + EnkiProblemsConsts.MinDescriptionLength + ); + return this; + } + + internal Problem SetOrigin(string sourceName, string authorName) + { + Origin = new Origin(Id, sourceName, authorName); + return this; + } + + internal Problem SetSourceName(string sourceName) + { + Origin.SetSourceName(sourceName); + return this; + } + + internal Problem SetAuthorName(string authorName) + { + Origin.SetAuthorName(authorName); + return this; + } + + internal Problem SetLimit(decimal timeLimit, decimal totalMemoryLimit, decimal stackMemoryLimit) + { + Limit = new Limit(Id, timeLimit, totalMemoryLimit, stackMemoryLimit); + return this; + } + + internal Problem SetTime(decimal timeLimit) + { + Limit.SetTime(timeLimit); + return this; + } + + internal Problem SetTotalMemory(decimal totalMemory) + { + Limit.SetTotalMemory(totalMemory); + return this; + } + + internal Problem SetStackMemory(decimal stackMemory) + { + Limit.SetStackMemory(stackMemory); + return this; + } + + internal Problem SetIoType(IoTypeEnum ioType) + { + IoType = ioType; + return this; + } + + internal Problem SetDifficulty(DifficultyEnum difficulty) + { + Difficulty = difficulty; + return this; + } + + internal Problem SetPublished(bool isPublished) + { + IsPublished = isPublished; + return this; + } + + internal Problem AddTest( + int testId, + int score, + string inputDownloadUrl, + string outputDownloadUrl + ) + { + if (testId > EnkiProblemsConsts.MaxNumberOfTests) + { + throw new BusinessException( + EnkiProblemsDomainErrorCodes.NumberOfTestsExceedsLimit, + $"The number of tests exceeds the limit of {EnkiProblemsConsts.MaxNumberOfTests}." + ).WithData("problemId", Id); + } + var currentTotalScore = Tests.Sum(t => t.Score); + if (currentTotalScore + score > EnkiProblemsConsts.MaxTotalScore) + { + throw new BusinessException(EnkiProblemsDomainErrorCodes.TotalScoreExceeded) + .WithData("totalScore", currentTotalScore + score) + .WithData("testId", testId) + .WithData("problemId", Id); + } + + Tests.Add(new Test(testId, Id, score, inputDownloadUrl, outputDownloadUrl)); + Tests = Tests.OrderBy(t => t.Id).ToList(); + + return this; + } + + internal Problem RemoveTest(int testId) + { + var test = Tests.SingleOrDefault(t => t.Id == testId); + if (test is null) + { + throw new BusinessException(EnkiProblemsDomainErrorCodes.TestNotFound).WithData( + "testId", + testId + ); + } + + Tests.Remove(test); + Tests = Tests.OrderBy(t => t.Id).ToList(); + + return this; + } + + internal Problem UpdateTest( + int testId, + int? score, + string? inputDownloadUrl, + string? outputDownloadUrl + ) + { + var test = Tests.SingleOrDefault(t => t.Id == testId); + if (test is null) + { + throw new BusinessException(EnkiProblemsDomainErrorCodes.TestNotFound) + .WithData("testId", testId) + .WithData("problemId", Id); + } + + var currentTotalScore = Tests.Sum(t => t.Score); + if (currentTotalScore - test.Score + score > EnkiProblemsConsts.MaxTotalScore) + { + throw new BusinessException(EnkiProblemsDomainErrorCodes.TotalScoreExceeded) + .WithData("totalScore", currentTotalScore - test.Score + score) + .WithData("testId", testId) + .WithData("problemId", Id); + } + + if (score is not null) + { + test.SetScore((int)score); + } + + if (inputDownloadUrl is not null && outputDownloadUrl is not null) + { + test.SetDownloadUrls(inputDownloadUrl, outputDownloadUrl); + } + + return this; + } + + internal Problem Publish() + { + if (!CanPublish()) + { + throw new BusinessException( + EnkiProblemsDomainErrorCodes.ProblemCannotBePublished + ).WithData("problemId", Id); + } + + IsPublished = true; + PublishingDate = DateTime.Now; + return this; + } + + internal Problem Unpublish() + { + IsPublished = false; + return this; + } + + private bool CanPublish() + { + return !IsPublished + && Tests.Count > 0 + && Tests.Sum(t => t.Score) == EnkiProblemsConsts.MaxTotalScore; + } + + public int GetFirstAvailableTestId() + { + var testIds = Tests.Select(t => t.Id).ToList(); + for (var i = 1; i <= EnkiProblemsConsts.MaxNumberOfTests; i++) + { + if (!testIds.Contains(i)) + { + return i; + } + } + + throw new BusinessException( + EnkiProblemsDomainErrorCodes.NumberOfTestsExceedsLimit, + $"The number of tests exceeds the limit of {EnkiProblemsConsts.MaxNumberOfTests}." + ).WithData("problemId", Id); + } +} diff --git a/enki-problems/src/EnkiProblems.Domain/Problems/ProblemLabel.cs b/enki-problems/src/EnkiProblems.Domain/Problems/ProblemLabel.cs new file mode 100644 index 0000000..c79c43a --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain/Problems/ProblemLabel.cs @@ -0,0 +1,26 @@ +using System; +using System.Collections.Generic; +using Volo.Abp.Domain.Values; + +namespace EnkiProblems.Problems; + +public class ProblemLabel : ValueObject +{ + public Guid ProblemId { get; private set; } + + public Guid LabelId { get; private set; } + + private ProblemLabel() { } + + internal ProblemLabel(Guid problemId, Guid labelId) + { + ProblemId = problemId; + LabelId = labelId; + } + + protected override IEnumerable GetAtomicValues() + { + yield return ProblemId; + yield return LabelId; + } +} diff --git a/enki-problems/src/EnkiProblems.Domain/Problems/ProblemManager.cs b/enki-problems/src/EnkiProblems.Domain/Problems/ProblemManager.cs new file mode 100644 index 0000000..07b2b9b --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain/Problems/ProblemManager.cs @@ -0,0 +1,197 @@ +using System; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using Volo.Abp; +using Volo.Abp.Domain.Repositories; +using Volo.Abp.Domain.Services; + +namespace EnkiProblems.Problems; + +public class ProblemManager : DomainService +{ + private readonly IRepository _problemRepository; + private readonly ILogger _logger; + + public ProblemManager( + IRepository problemRepository, + ILogger logger + ) + { + _problemRepository = problemRepository; + _logger = logger; + } + + public async Task CreateAsync( + string name, + string brief, + string description, + string sourceName, + string authorName, + Guid proposerId, + decimal timeLimit, + decimal totalMemoryLimit, + decimal stackMemoryLimit, + IoTypeEnum ioType, + DifficultyEnum difficulty + ) + { + _logger.LogInformation("Creating problem {Name}", name); + + var problem = await _problemRepository.FirstOrDefaultAsync(p => p.Name == name); + if (problem is not null) + { + _logger.LogError("Problem {Name} already exists", name); + throw new BusinessException(EnkiProblemsDomainErrorCodes.ProblemNameAlreadyExists); + } + + return new Problem( + GuidGenerator.Create(), + name, + brief, + description, + sourceName, + authorName, + proposerId, + timeLimit, + totalMemoryLimit, + stackMemoryLimit, + ioType, + difficulty + ); + } + + public async Task UpdateAsync( + Problem problem, + string? name, + string? brief, + string? description, + string? sourceName, + string? authorName, + decimal? timeLimit, + decimal? totalMemoryLimit, + decimal? stackMemoryLimit, + IoTypeEnum? ioType, + DifficultyEnum? difficulty, + bool? isPublished + ) + { + _logger.LogInformation("Updating problem {Name}", problem.Name); + + if (problem.IsPublished && !(isPublished is not null && !isPublished.Value)) + { + _logger.LogError("Problem {Name} is published and cannot be edited", problem.Name); + throw new BusinessException( + EnkiProblemsDomainErrorCodes.NotAllowedToEditPublishedProblem + ); + } + + var oldProblem = await _problemRepository.FirstOrDefaultAsync(p => + p.Name == name && p.Id != problem.Id + ); + if (oldProblem is not null) + { + _logger.LogError("Problem {Name} already exists", name); + throw new BusinessException(EnkiProblemsDomainErrorCodes.ProblemNameAlreadyExists); + } + + if (name is not null) + { + problem.SetName(name); + } + + if (brief is not null) + { + problem.SetBrief(brief); + } + + if (description is not null) + { + problem.SetDescription(description); + } + + if (sourceName is not null) + { + problem.SetSourceName(sourceName); + } + + if (authorName is not null) + { + problem.SetAuthorName(authorName); + } + + if (timeLimit is not null) + { + problem.SetTime((decimal)timeLimit); + } + + if (totalMemoryLimit is not null) + { + problem.SetTotalMemory((decimal)totalMemoryLimit); + } + + if (stackMemoryLimit is not null) + { + problem.SetStackMemory((decimal)stackMemoryLimit); + } + + if (ioType is not null) + { + problem.SetIoType((IoTypeEnum)ioType); + } + + if (difficulty is not null) + { + problem.SetDifficulty((DifficultyEnum)difficulty); + } + + switch (isPublished) + { + case null: + return problem; + case true: + problem.Publish(); + break; + default: + problem.Unpublish(); + break; + } + + return problem; + } + + public Problem AddTest( + Problem problem, + int testId, + int testScore, + string inputDownloadUrl, + string outputDownloadUrl + ) + { + _logger.LogInformation("Adding test {TestId} to problem {Name}", testId, problem.Name); + return problem.AddTest(testId, testScore, inputDownloadUrl, outputDownloadUrl); + } + + public Problem UpdateTest( + Problem problem, + int testId, + int? testScore, + string? inputDownloadUrl, + string? outputDownloadUrl + ) + { + _logger.LogInformation("Updating test {TestId} of problem {Name}", testId, problem.Name); + return problem.UpdateTest(testId, testScore, inputDownloadUrl, outputDownloadUrl); + } + + public Problem RemoveTest(Problem problem, int testId) + { + _logger.LogInformation("Removing test {TestId} from problem {Name}", testId, problem.Name); + return problem.RemoveTest(testId); + } + + public Problem Publish(Problem problem) + { + _logger.LogInformation("Publishing problem {Name}", problem.Name); + return problem.Publish(); + } +} diff --git a/enki-problems/src/EnkiProblems.Domain/Problems/Test.cs b/enki-problems/src/EnkiProblems.Domain/Problems/Test.cs new file mode 100644 index 0000000..2d46989 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain/Problems/Test.cs @@ -0,0 +1,67 @@ +using System; +using Volo.Abp; +using Volo.Abp.Domain.Entities.Auditing; + +namespace EnkiProblems.Problems; + +public class Test : FullAuditedEntity +{ + public Guid ProblemId { get; private set; } + + public int Score { get; private set; } + + public string InputDownloadUrl { get; private set; } + + public string OutputDownloadUrl { get; private set; } + + private Test() { } + + internal Test( + int id, + Guid problemId, + int score, + string inputDownloadUrl, + string outputDownloadUrl + ) + : base(id) + { + ProblemId = problemId; + SetScore(score); + SetDownloadUrls(inputDownloadUrl, outputDownloadUrl); + } + + internal Test SetScore(int score) + { + Score = Check.Range( + score, + nameof(score), + EnkiProblemsConsts.MinScore, + EnkiProblemsConsts.MaxScore + ); + return this; + } + + internal Test SetDownloadUrls(string inputDownloadUrl, string outputDownloadUrl) + { + InputDownloadUrl = Check.NotNullOrEmpty(inputDownloadUrl, nameof(inputDownloadUrl)); + OutputDownloadUrl = Check.NotNullOrEmpty(outputDownloadUrl, nameof(outputDownloadUrl)); + + if (!Uri.IsWellFormedUriString(InputDownloadUrl, UriKind.Absolute)) + { + throw new ArgumentException( + "Input download URL is not a valid absolute URL.", + nameof(inputDownloadUrl) + ); + } + + if (!Uri.IsWellFormedUriString(OutputDownloadUrl, UriKind.Absolute)) + { + throw new ArgumentException( + "Output download URL is not a valid absolute URL.", + nameof(outputDownloadUrl) + ); + } + + return this; + } +} diff --git a/enki-problems/src/EnkiProblems.Domain/Properties/AssemblyInfo.cs b/enki-problems/src/EnkiProblems.Domain/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..b456600 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain/Properties/AssemblyInfo.cs @@ -0,0 +1,4 @@ +using System.Runtime.CompilerServices; + +[assembly: InternalsVisibleToAttribute("EnkiProblems.Domain.Tests")] +[assembly: InternalsVisibleToAttribute("EnkiProblems.TestBase")] diff --git a/enki-problems/src/EnkiProblems.Domain/Settings/EnkiProblemsSettingDefinitionProvider.cs b/enki-problems/src/EnkiProblems.Domain/Settings/EnkiProblemsSettingDefinitionProvider.cs new file mode 100644 index 0000000..347ece6 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain/Settings/EnkiProblemsSettingDefinitionProvider.cs @@ -0,0 +1,12 @@ +using Volo.Abp.Settings; + +namespace EnkiProblems.Settings; + +public class EnkiProblemsSettingDefinitionProvider : SettingDefinitionProvider +{ + public override void Define(ISettingDefinitionContext context) + { + //Define your own settings here. Example: + //context.Add(new SettingDefinition(EnkiProblemsSettings.MySetting1)); + } +} diff --git a/enki-problems/src/EnkiProblems.Domain/Settings/EnkiProblemsSettings.cs b/enki-problems/src/EnkiProblems.Domain/Settings/EnkiProblemsSettings.cs new file mode 100644 index 0000000..74a5ab3 --- /dev/null +++ b/enki-problems/src/EnkiProblems.Domain/Settings/EnkiProblemsSettings.cs @@ -0,0 +1,9 @@ +namespace EnkiProblems.Settings; + +public static class EnkiProblemsSettings +{ + private const string Prefix = "EnkiProblems"; + + //Add your own setting names here. Example: + //public const string MySetting1 = Prefix + ".MySetting1"; +} diff --git a/enki-problems/src/EnkiProblems.HttpApi.Host/Controllers/HomeController.cs b/enki-problems/src/EnkiProblems.HttpApi.Host/Controllers/HomeController.cs new file mode 100644 index 0000000..3a3955f --- /dev/null +++ b/enki-problems/src/EnkiProblems.HttpApi.Host/Controllers/HomeController.cs @@ -0,0 +1,12 @@ +using Microsoft.AspNetCore.Mvc; +using Volo.Abp.AspNetCore.Mvc; + +namespace EnkiProblems.Controllers; + +public class HomeController : AbpController +{ + public ActionResult Index() + { + return Redirect("~/swagger"); + } +} diff --git a/enki-problems/src/EnkiProblems.HttpApi.Host/EnkiProblems.HttpApi.Host.csproj b/enki-problems/src/EnkiProblems.HttpApi.Host/EnkiProblems.HttpApi.Host.csproj new file mode 100644 index 0000000..d1f2f2b --- /dev/null +++ b/enki-problems/src/EnkiProblems.HttpApi.Host/EnkiProblems.HttpApi.Host.csproj @@ -0,0 +1,42 @@ + + + + + + net7.0 + enable + EnkiProblems + true + EnkiProblems-4681b4fd-151f-4221-84a4-929d86723e4c + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/enki-problems/src/EnkiProblems.HttpApi.Host/EnkiProblemsHttpApiHostModule.cs b/enki-problems/src/EnkiProblems.HttpApi.Host/EnkiProblemsHttpApiHostModule.cs new file mode 100644 index 0000000..abf1e18 --- /dev/null +++ b/enki-problems/src/EnkiProblems.HttpApi.Host/EnkiProblemsHttpApiHostModule.cs @@ -0,0 +1,302 @@ +using System; +using System.Linq; +using System.Text; +using Asgard.Hermes; +using EnkiProblems.MongoDB; +using EnkiProblems.MultiTenancy; +using EnkiProblems.Problems; +using EnkiProblems.Problems.Tests; +using Grpc.Net.Client; +using Medallion.Threading; +using Medallion.Threading.Redis; +using Microsoft.AspNetCore.Authentication.JwtBearer; +using Microsoft.AspNetCore.Builder; +using Microsoft.AspNetCore.Cors; +using Microsoft.AspNetCore.DataProtection; +using Microsoft.AspNetCore.Hosting; +using Microsoft.Extensions.Configuration; +using Microsoft.Extensions.DependencyInjection; +using Microsoft.Extensions.Hosting; +using Microsoft.Extensions.Logging; +using Microsoft.IdentityModel.Tokens; +using Microsoft.OpenApi.Models; +using StackExchange.Redis; +using Volo.Abp; +using Volo.Abp.AspNetCore.Mvc; +using Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy; +using Volo.Abp.AspNetCore.Serilog; +using Volo.Abp.Autofac; +using Volo.Abp.Caching; +using Volo.Abp.Caching.StackExchangeRedis; +using Volo.Abp.DistributedLocking; +using Volo.Abp.Modularity; +using Volo.Abp.Swashbuckle; + +namespace EnkiProblems; + +[DependsOn( + typeof(EnkiProblemsHttpApiModule), + typeof(AbpAutofacModule), + typeof(AbpCachingStackExchangeRedisModule), + typeof(AbpDistributedLockingModule), + typeof(AbpAspNetCoreMvcUiMultiTenancyModule), + typeof(EnkiProblemsApplicationModule), + typeof(EnkiProblemsMongoDbModule), + typeof(AbpAspNetCoreSerilogModule), + typeof(AbpSwashbuckleModule) +)] +public class EnkiProblemsHttpApiHostModule : AbpModule +{ + public override void ConfigureServices(ServiceConfigurationContext context) + { + var configuration = context.Services.GetConfiguration(); + var hostingEnvironment = context.Services.GetHostingEnvironment(); + + ConfigureLogger(context, configuration); + ConfigureHttpClient(context, configuration); + ConfigureDapr(context, configuration); + ConfigureHermesTestsGrpcClient(context, configuration); + ConfigureConventionalControllers(); + ConfigureAuthentication(context, configuration); + ConfigureCache(configuration); + ConfigureDataProtection(context, configuration, hostingEnvironment); + ConfigureDistributedLocking(context, configuration); + ConfigureCors(context, configuration); + ConfigureSwaggerServices(context, configuration); + } + + private void ConfigureLogger(ServiceConfigurationContext context, IConfiguration configuration) + { + context.Services.AddLogging(config => + { + config.AddConfiguration(configuration.GetSection("Logging")); + config.AddConsole(); + config.AddDebug(); + }); + } + + private void ConfigureHttpClient( + ServiceConfigurationContext context, + IConfiguration configuration + ) + { + context.Services.AddHttpClient(); + } + + private void ConfigureDapr(ServiceConfigurationContext context, IConfiguration configuration) + { + var hermesAppId = configuration["Dapr:HermesAppId"]; + var address = configuration["Dapr:GrpcEndpoint"]; + + context + .Services.AddSingleton(_ => + new() { HermesContext = new() { { "dapr-app-id", hermesAppId! } } } + ) + .AddDaprClient(options => + { + options.UseJsonSerializationOptions(new() { PropertyNameCaseInsensitive = true }); + options.UseGrpcEndpoint(address); + }); + } + + private void ConfigureHermesTestsGrpcClient( + ServiceConfigurationContext context, + IConfiguration configuration + ) + { + var address = configuration["Dapr:GrpcEndpoint"]; + var channel = GrpcChannel.ForAddress(address!); + + context.Services.AddSingleton(_ => + new(channel) + ); + context.Services.AddScoped(); + } + + private void ConfigureCache(IConfiguration configuration) + { + Configure(options => + { + options.KeyPrefix = "EnkiProblems:"; + }); + } + + private void ConfigureConventionalControllers() + { + Configure(options => + { + options.ConventionalControllers.FormBodyBindingIgnoredTypes.Add(typeof(CreateTestDto)); + options.ConventionalControllers.FormBodyBindingIgnoredTypes.Add(typeof(UpdateTestDto)); + options.ConventionalControllers.Create( + typeof(EnkiProblemsApplicationModule).Assembly, + opts => + { + opts.RootPath = "enki"; + } + ); + }); + } + + private void ConfigureAuthentication( + ServiceConfigurationContext context, + IConfiguration configuration + ) + { + context + .Services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme) + .AddJwtBearer(options => + { + options.TokenValidationParameters = new TokenValidationParameters + { + IssuerSigningKey = new SymmetricSecurityKey( + Encoding.UTF8.GetBytes(configuration["AuthServer:SecurityKey"]!) + ), + ValidateIssuerSigningKey = false, + ValidateIssuer = false, + ValidateAudience = false, + ValidateLifetime = true, + ClockSkew = TimeSpan.Zero + }; + }); + } + + private static void ConfigureSwaggerServices( + ServiceConfigurationContext context, + IConfiguration configuration + ) + { + context.Services.AddAbpSwaggerGen(options => + { + options.SwaggerDoc( + "v1", + new OpenApiInfo { Title = "EnkiProblems API", Version = "v1" } + ); + options.DocInclusionPredicate((docName, description) => true); + options.CustomSchemaIds(type => type.FullName); + options.AddSecurityDefinition( + "Bearer", + new OpenApiSecurityScheme + { + Description = + "JWT Authorization header using the Bearer scheme. Example: \"Authorization: Bearer {token}\"", + Name = "Authorization", + In = ParameterLocation.Header, + Type = SecuritySchemeType.ApiKey + } + ); + options.AddSecurityRequirement( + new OpenApiSecurityRequirement + { + { + new OpenApiSecurityScheme + { + Reference = new OpenApiReference + { + Type = ReferenceType.SecurityScheme, + Id = "Bearer" + } + }, + Array.Empty() + } + } + ); + }); + } + + private void ConfigureDataProtection( + ServiceConfigurationContext context, + IConfiguration configuration, + IWebHostEnvironment hostingEnvironment + ) + { + var dataProtectionBuilder = context + .Services.AddDataProtection() + .SetApplicationName("EnkiProblems"); + if (!hostingEnvironment.IsDevelopment()) + { + var redis = ConnectionMultiplexer.Connect(configuration["Redis:Configuration"]); + dataProtectionBuilder.PersistKeysToStackExchangeRedis( + redis, + "EnkiProblems-Protection-Keys" + ); + } + } + + private void ConfigureDistributedLocking( + ServiceConfigurationContext context, + IConfiguration configuration + ) + { + context.Services.AddSingleton(sp => + { + var connection = ConnectionMultiplexer.Connect(configuration["Redis:Configuration"]); + return new RedisDistributedSynchronizationProvider(connection.GetDatabase()); + }); + } + + private void ConfigureCors(ServiceConfigurationContext context, IConfiguration configuration) + { + context.Services.AddCors(options => + { + options.AddDefaultPolicy(builder => + { + builder + .WithOrigins( + configuration["AllowedOrigins"] + ?.Split(";", StringSplitOptions.RemoveEmptyEntries) + .Select(o => o.RemovePostFix("/")) + .ToArray() ?? Array.Empty() + ) + .WithAbpExposedHeaders() + .SetIsOriginAllowedToAllowWildcardSubdomains() + .AllowAnyHeader() + .AllowAnyMethod() + .AllowCredentials(); + }); + }); + } + + public override void OnApplicationInitialization(ApplicationInitializationContext context) + { + var app = context.GetApplicationBuilder(); + var env = context.GetEnvironment(); + + if (env.IsDevelopment()) + { + app.UseDeveloperExceptionPage(); + } + + app.UseAbpRequestLocalization(); + app.UseCorrelationId(); + app.UseStaticFiles(); + app.UseRouting(); + app.UseCloudEvents(); + app.UseCors(); + app.UseAuthentication(); + + if (MultiTenancyConsts.IsEnabled) + { + app.UseMultiTenancy(); + } + + app.UseAuthorization(); + + app.UseSwagger(); + app.UseAbpSwaggerUI(options => + { + options.SwaggerEndpoint("/swagger/v1/swagger.json", "EnkiProblems API"); + + var configuration = context.GetConfiguration(); + options.OAuthClientId(configuration["AuthServer:SwaggerClientId"]); + options.OAuthScopes("EnkiProblems"); + }); + + app.UseAuditing(); + app.UseAbpSerilogEnrichers(); + app.UseUnitOfWork(); + app.UseConfiguredEndpoints(options => + { + options.MapSubscribeHandler(); + }); + } +} diff --git a/enki-problems/src/EnkiProblems.HttpApi.Host/Program.cs b/enki-problems/src/EnkiProblems.HttpApi.Host/Program.cs new file mode 100644 index 0000000..ae6e138 --- /dev/null +++ b/enki-problems/src/EnkiProblems.HttpApi.Host/Program.cs @@ -0,0 +1,54 @@ +using System; +using System.Threading.Tasks; +using Microsoft.AspNetCore.Builder; +using Microsoft.Extensions.DependencyInjection; +using Microsoft.Extensions.Hosting; +using Serilog; +using Serilog.Events; + +namespace EnkiProblems; + +public class Program +{ + public static async Task Main(string[] args) + { + Log.Logger = new LoggerConfiguration() +#if DEBUG + .MinimumLevel.Debug() +#else + .MinimumLevel.Information() +#endif + .MinimumLevel.Override("Microsoft", LogEventLevel.Information) + .MinimumLevel.Override("Microsoft.EntityFrameworkCore", LogEventLevel.Warning) + .Enrich.FromLogContext() + .WriteTo.Async(c => c.File("Logs/logs.txt")) + .WriteTo.Async(c => c.Console()) + .CreateLogger(); + + try + { + Log.Information("Starting EnkiProblems.HttpApi.Host."); + var builder = WebApplication.CreateBuilder(args); + builder.Host.AddAppSettingsSecretsJson().UseAutofac().UseSerilog(); + await builder.AddApplicationAsync(); + var app = builder.Build(); + await app.InitializeApplicationAsync(); + await app.RunAsync(); + return 0; + } + catch (Exception ex) + { + if (ex is HostAbortedException) + { + throw; + } + + Log.Fatal(ex, "Host terminated unexpectedly!"); + return 1; + } + finally + { + Log.CloseAndFlush(); + } + } +} diff --git a/enki-problems/src/EnkiProblems.HttpApi.Host/Properties/launchSettings.json b/enki-problems/src/EnkiProblems.HttpApi.Host/Properties/launchSettings.json new file mode 100644 index 0000000..07e6240 --- /dev/null +++ b/enki-problems/src/EnkiProblems.HttpApi.Host/Properties/launchSettings.json @@ -0,0 +1,27 @@ +{ + "iisSettings": { + "windowsAuthentication": false, + "anonymousAuthentication": true, + "iisExpress": { + "applicationUrl": "https://localhost:44364", + "sslPort": 44364 + } + }, + "profiles": { + "IIS Express": { + "commandName": "IISExpress", + "launchBrowser": true, + "environmentVariables": { + "ASPNETCORE_ENVIRONMENT": "Development" + } + }, + "EnkiProblems.HttpApi.Host": { + "commandName": "Project", + "launchBrowser": true, + "applicationUrl": "http://localhost:5211", + "environmentVariables": { + "ASPNETCORE_ENVIRONMENT": "Development" + } + } + } +} \ No newline at end of file diff --git a/enki-problems/src/EnkiProblems.HttpApi.Host/appsettings.Development.json b/enki-problems/src/EnkiProblems.HttpApi.Host/appsettings.Development.json new file mode 100644 index 0000000..2c63c08 --- /dev/null +++ b/enki-problems/src/EnkiProblems.HttpApi.Host/appsettings.Development.json @@ -0,0 +1,2 @@ +{ +} diff --git a/enki-problems/src/EnkiProblems.HttpApi.Host/appsettings.json b/enki-problems/src/EnkiProblems.HttpApi.Host/appsettings.json new file mode 100644 index 0000000..ceb63f9 --- /dev/null +++ b/enki-problems/src/EnkiProblems.HttpApi.Host/appsettings.json @@ -0,0 +1,12 @@ +{ + "StringEncryption": { + "DefaultPassPhrase": "RYmDWRHmUFRiEIvJ" + }, + "Logging": { + "LogLevel": { + "Default": "Information", + "Microsoft.AspNetCore": "Warning", + "Microsoft.AspNetCore.Diagnostics.ExceptionHandlerMiddleware": "None" + } + } +} diff --git a/enki-problems/src/EnkiProblems.HttpApi.Host/appsettings.secrets.json b/enki-problems/src/EnkiProblems.HttpApi.Host/appsettings.secrets.json new file mode 100644 index 0000000..7a73a41 --- /dev/null +++ b/enki-problems/src/EnkiProblems.HttpApi.Host/appsettings.secrets.json @@ -0,0 +1,2 @@ +{ +} \ No newline at end of file diff --git a/enki-problems/src/EnkiProblems.HttpApi.Host/web.config b/enki-problems/src/EnkiProblems.HttpApi.Host/web.config new file mode 100644 index 0000000..32c3896 --- /dev/null +++ b/enki-problems/src/EnkiProblems.HttpApi.Host/web.config @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/enki-problems/src/EnkiProblems.HttpApi/Controllers/EnkiProblemsController.cs b/enki-problems/src/EnkiProblems.HttpApi/Controllers/EnkiProblemsController.cs new file mode 100644 index 0000000..bca3e7e --- /dev/null +++ b/enki-problems/src/EnkiProblems.HttpApi/Controllers/EnkiProblemsController.cs @@ -0,0 +1,14 @@ +using EnkiProblems.Localization; +using Volo.Abp.AspNetCore.Mvc; + +namespace EnkiProblems.Controllers; + +/* Inherit your controllers from this class. + */ +public abstract class EnkiProblemsController : AbpControllerBase +{ + protected EnkiProblemsController() + { + LocalizationResource = typeof(EnkiProblemsResource); + } +} diff --git a/enki-problems/src/EnkiProblems.HttpApi/Controllers/ProblemSubscriberController.cs b/enki-problems/src/EnkiProblems.HttpApi/Controllers/ProblemSubscriberController.cs new file mode 100644 index 0000000..4bbc1c3 --- /dev/null +++ b/enki-problems/src/EnkiProblems.HttpApi/Controllers/ProblemSubscriberController.cs @@ -0,0 +1,108 @@ +using System.Net; +using System.Net.Http; +using System.Threading.Tasks; +using Dapr; +using Dapr.Client; +using EnkiProblems.Problems.Events; +using Microsoft.AspNetCore.Mvc; +using Microsoft.Extensions.Logging; + +namespace EnkiProblems.Controllers; + +public class ProblemSubscriberController : EnkiProblemsController +{ + private readonly HttpClient _httpClient; + private readonly DaprClient _daprClient; + private readonly ILogger _logger; + + public ProblemSubscriberController( + HttpClient httpClient, + DaprClient daprClient, + ILogger logger + ) + { + _httpClient = httpClient; + _daprClient = daprClient; + _logger = logger; + } + + [Topic(EnkiProblemsConsts.PubSubName, EnkiProblemsConsts.TestUpsertedTopic)] + [HttpPost(EnkiProblemsConsts.TestUpsertedTopic)] + public async Task HandleTestUpsertedAsync([FromBody] TestUpsertedEvent @event) + { + _logger.LogInformation("Received TestUpsertedEvent: {TestUpsertedEvent}", @event); + + // download input/output files locally from the URLs in the event + // and persist them to the dapr statestore + + var inputResponse = await _httpClient.GetAsync(@event.InputDownloadUrl); + var outputResponse = await _httpClient.GetAsync(@event.OutputDownloadUrl); + + if (inputResponse.StatusCode != HttpStatusCode.OK) + { + _logger.LogError( + "Failed to download input file from {InputDownloadUrl}", + @event.InputDownloadUrl + ); + return BadRequest(); + } + + if (outputResponse.StatusCode != HttpStatusCode.OK) + { + _logger.LogError( + "Failed to download output file from {OutputDownloadUrl}", + @event.OutputDownloadUrl + ); + return BadRequest(); + } + + var inputContent = await inputResponse.Content.ReadAsStringAsync(); + + await _daprClient.DeleteStateAsync( + EnkiProblemsConsts.StateStoreName, + $"{@event.ProblemId}-{@event.Id}-{EnkiProblemsConsts.TestInputSuffix}" + ); + + await _daprClient.SaveStateAsync( + EnkiProblemsConsts.StateStoreName, + $"{@event.ProblemId}-{@event.Id}-{EnkiProblemsConsts.TestInputSuffix}", + inputContent + ); + + var outputContent = await outputResponse.Content.ReadAsStringAsync(); + + await _daprClient.DeleteStateAsync( + EnkiProblemsConsts.StateStoreName, + $"{@event.ProblemId}-{@event.Id}-{EnkiProblemsConsts.TestOutputSuffix}" + ); + + await _daprClient.SaveStateAsync( + EnkiProblemsConsts.StateStoreName, + $"{@event.ProblemId}-{@event.Id}-{EnkiProblemsConsts.TestOutputSuffix}", + outputContent + ); + + return Ok(); + } + + [Topic(EnkiProblemsConsts.PubSubName, EnkiProblemsConsts.TestDeletedTopic)] + [HttpPost(EnkiProblemsConsts.TestDeletedTopic)] + public async Task HandleTestDeletedAsync([FromBody] TestDeletedEvent @event) + { + _logger.LogInformation("Received TestDeletedEvent: {TestDeletedEvent}", @event); + + // delete the input/output files from the dapr statestore + + await _daprClient.DeleteStateAsync( + EnkiProblemsConsts.StateStoreName, + $"{@event.ProblemId}-{@event.Id}-{EnkiProblemsConsts.TestInputSuffix}" + ); + + await _daprClient.DeleteStateAsync( + EnkiProblemsConsts.StateStoreName, + $"{@event.ProblemId}-{@event.Id}-{EnkiProblemsConsts.TestOutputSuffix}" + ); + + return Ok(); + } +} diff --git a/enki-problems/src/EnkiProblems.HttpApi/EnkiProblems.HttpApi.csproj b/enki-problems/src/EnkiProblems.HttpApi/EnkiProblems.HttpApi.csproj new file mode 100644 index 0000000..319950f --- /dev/null +++ b/enki-problems/src/EnkiProblems.HttpApi/EnkiProblems.HttpApi.csproj @@ -0,0 +1,26 @@ + + + + + + net7.0 + enable + EnkiProblems + + + + + + + + + + + + + + + + + + diff --git a/enki-problems/src/EnkiProblems.HttpApi/EnkiProblemsHttpApiModule.cs b/enki-problems/src/EnkiProblems.HttpApi/EnkiProblemsHttpApiModule.cs new file mode 100644 index 0000000..5019894 --- /dev/null +++ b/enki-problems/src/EnkiProblems.HttpApi/EnkiProblemsHttpApiModule.cs @@ -0,0 +1,37 @@ +using EnkiProblems.Localization; +using Localization.Resources.AbpUi; +using Volo.Abp.Account; +using Volo.Abp.FeatureManagement; +using Volo.Abp.Identity; +using Volo.Abp.Localization; +using Volo.Abp.Modularity; +using Volo.Abp.PermissionManagement.HttpApi; +using Volo.Abp.SettingManagement; +using Volo.Abp.TenantManagement; + +namespace EnkiProblems; + +[DependsOn( + typeof(EnkiProblemsApplicationContractsModule), + typeof(AbpAccountHttpApiModule), + typeof(AbpIdentityHttpApiModule), + typeof(AbpPermissionManagementHttpApiModule), + typeof(AbpTenantManagementHttpApiModule), + typeof(AbpFeatureManagementHttpApiModule), + typeof(AbpSettingManagementHttpApiModule) +)] +public class EnkiProblemsHttpApiModule : AbpModule +{ + public override void ConfigureServices(ServiceConfigurationContext context) + { + ConfigureLocalization(); + } + + private void ConfigureLocalization() + { + Configure(options => + { + options.Resources.Get().AddBaseTypes(typeof(AbpUiResource)); + }); + } +} diff --git a/enki-problems/src/EnkiProblems.MongoDB/EnkiProblems.MongoDB.csproj b/enki-problems/src/EnkiProblems.MongoDB/EnkiProblems.MongoDB.csproj new file mode 100644 index 0000000..238c999 --- /dev/null +++ b/enki-problems/src/EnkiProblems.MongoDB/EnkiProblems.MongoDB.csproj @@ -0,0 +1,23 @@ + + + + + + net7.0 + enable + EnkiProblems + + + + + + + + + + + + + + + diff --git a/enki-problems/src/EnkiProblems.MongoDB/MongoDb/EnkiProblemsMongoDbContext.cs b/enki-problems/src/EnkiProblems.MongoDB/MongoDb/EnkiProblemsMongoDbContext.cs new file mode 100644 index 0000000..d2bd838 --- /dev/null +++ b/enki-problems/src/EnkiProblems.MongoDB/MongoDb/EnkiProblemsMongoDbContext.cs @@ -0,0 +1,26 @@ +using EnkiProblems.Problems; +using MongoDB.Driver; +using Volo.Abp.Data; +using Volo.Abp.MongoDB; + +namespace EnkiProblems.MongoDB; + +[ConnectionStringName("Default")] +public class EnkiProblemsMongoDbContext : AbpMongoDbContext +{ + /* Add mongo collections here. Example: + * public IMongoCollection Questions => Collection(); + */ + + public IMongoCollection Problems => Collection(); + + protected override void CreateModel(IMongoModelBuilder modelBuilder) + { + base.CreateModel(modelBuilder); + + modelBuilder.Entity(b => + { + b.CollectionName = "Problems"; + }); + } +} diff --git a/enki-problems/src/EnkiProblems.MongoDB/MongoDb/EnkiProblemsMongoDbModule.cs b/enki-problems/src/EnkiProblems.MongoDB/MongoDb/EnkiProblemsMongoDbModule.cs new file mode 100644 index 0000000..74341a8 --- /dev/null +++ b/enki-problems/src/EnkiProblems.MongoDB/MongoDb/EnkiProblemsMongoDbModule.cs @@ -0,0 +1,40 @@ +using Microsoft.Extensions.DependencyInjection; +using Volo.Abp.AuditLogging.MongoDB; +using Volo.Abp.BackgroundJobs.MongoDB; +using Volo.Abp.FeatureManagement.MongoDB; +using Volo.Abp.Identity.MongoDB; +using Volo.Abp.Modularity; +using Volo.Abp.OpenIddict.MongoDB; +using Volo.Abp.PermissionManagement.MongoDB; +using Volo.Abp.SettingManagement.MongoDB; +using Volo.Abp.TenantManagement.MongoDB; +using Volo.Abp.Uow; + +namespace EnkiProblems.MongoDB; + +[DependsOn( + typeof(EnkiProblemsDomainModule), + typeof(AbpPermissionManagementMongoDbModule), + typeof(AbpSettingManagementMongoDbModule), + typeof(AbpIdentityMongoDbModule), + typeof(AbpOpenIddictMongoDbModule), + typeof(AbpBackgroundJobsMongoDbModule), + typeof(AbpAuditLoggingMongoDbModule), + typeof(AbpTenantManagementMongoDbModule), + typeof(AbpFeatureManagementMongoDbModule) +)] +public class EnkiProblemsMongoDbModule : AbpModule +{ + public override void ConfigureServices(ServiceConfigurationContext context) + { + context.Services.AddMongoDbContext(options => + { + options.AddDefaultRepositories(); + }); + + Configure(options => + { + options.TransactionBehavior = UnitOfWorkTransactionBehavior.Disabled; + }); + } +} diff --git a/enki-problems/src/EnkiProblems.MongoDB/MongoDb/MongoDbEnkiProblemsDbSchemaMigrator.cs b/enki-problems/src/EnkiProblems.MongoDB/MongoDb/MongoDbEnkiProblemsDbSchemaMigrator.cs new file mode 100644 index 0000000..fc9b362 --- /dev/null +++ b/enki-problems/src/EnkiProblems.MongoDB/MongoDb/MongoDbEnkiProblemsDbSchemaMigrator.cs @@ -0,0 +1,48 @@ +using System; +using System.Threading.Tasks; +using EnkiProblems.Data; +using Microsoft.Extensions.DependencyInjection; +using MongoDB.Driver; +using Volo.Abp.Data; +using Volo.Abp.DependencyInjection; +using Volo.Abp.MongoDB; + +namespace EnkiProblems.MongoDB; + +public class MongoDbEnkiProblemsDbSchemaMigrator + : IEnkiProblemsDbSchemaMigrator, + ITransientDependency +{ + private readonly IServiceProvider _serviceProvider; + + public MongoDbEnkiProblemsDbSchemaMigrator(IServiceProvider serviceProvider) + { + _serviceProvider = serviceProvider; + } + + public async Task MigrateAsync() + { + var dbContexts = _serviceProvider.GetServices(); + var connectionStringResolver = + _serviceProvider.GetRequiredService(); + + foreach (var dbContext in dbContexts) + { + var connectionString = await connectionStringResolver.ResolveAsync( + ConnectionStringNameAttribute.GetConnStringName(dbContext.GetType()) + ); + var mongoUrl = new MongoUrl(connectionString); + var databaseName = mongoUrl.DatabaseName; + var client = new MongoClient(mongoUrl); + + if (databaseName.IsNullOrWhiteSpace()) + { + databaseName = ConnectionStringNameAttribute.GetConnStringName(dbContext.GetType()); + } + + (dbContext as AbpMongoDbContext)?.InitializeCollections( + client.GetDatabase(databaseName) + ); + } + } +} diff --git a/enki-problems/src/EnkiProblems.MongoDB/Properties/AssemblyInfo.cs b/enki-problems/src/EnkiProblems.MongoDB/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..e5fdf5a --- /dev/null +++ b/enki-problems/src/EnkiProblems.MongoDB/Properties/AssemblyInfo.cs @@ -0,0 +1,3 @@ +using System.Runtime.CompilerServices; + +[assembly: InternalsVisibleToAttribute("EnkiProblems.MongoDB.Tests")] diff --git a/enki-problems/test/EnkiProblems.Application.Tests/EnkiProblems.Application.Tests.csproj b/enki-problems/test/EnkiProblems.Application.Tests/EnkiProblems.Application.Tests.csproj new file mode 100644 index 0000000..b0abb50 --- /dev/null +++ b/enki-problems/test/EnkiProblems.Application.Tests/EnkiProblems.Application.Tests.csproj @@ -0,0 +1,21 @@ + + + + + + net7.0 + enable + EnkiProblems + + + + + + + + + + + + + diff --git a/enki-problems/test/EnkiProblems.Application.Tests/EnkiProblemsApplicationCollection.cs b/enki-problems/test/EnkiProblems.Application.Tests/EnkiProblemsApplicationCollection.cs new file mode 100644 index 0000000..8556b97 --- /dev/null +++ b/enki-problems/test/EnkiProblems.Application.Tests/EnkiProblemsApplicationCollection.cs @@ -0,0 +1,7 @@ +using EnkiProblems.MongoDB; +using Xunit; + +namespace EnkiProblems; + +[CollectionDefinition(EnkiProblemsTestConsts.CollectionDefinitionName)] +public class EnkiProblemsApplicationCollection : EnkiProblemsMongoDbCollectionFixtureBase { } diff --git a/enki-problems/test/EnkiProblems.Application.Tests/EnkiProblemsApplicationTestBase.cs b/enki-problems/test/EnkiProblems.Application.Tests/EnkiProblemsApplicationTestBase.cs new file mode 100644 index 0000000..4a4ee7b --- /dev/null +++ b/enki-problems/test/EnkiProblems.Application.Tests/EnkiProblemsApplicationTestBase.cs @@ -0,0 +1,4 @@ +namespace EnkiProblems; + +public abstract class EnkiProblemsApplicationTestBase + : EnkiProblemsTestBase { } diff --git a/enki-problems/test/EnkiProblems.Application.Tests/EnkiProblemsApplicationTestModule.cs b/enki-problems/test/EnkiProblems.Application.Tests/EnkiProblemsApplicationTestModule.cs new file mode 100644 index 0000000..0ff90a9 --- /dev/null +++ b/enki-problems/test/EnkiProblems.Application.Tests/EnkiProblemsApplicationTestModule.cs @@ -0,0 +1,6 @@ +using Volo.Abp.Modularity; + +namespace EnkiProblems; + +[DependsOn(typeof(EnkiProblemsApplicationModule), typeof(EnkiProblemsDomainTestModule))] +public class EnkiProblemsApplicationTestModule : AbpModule { } diff --git a/enki-problems/test/EnkiProblems.Application.Tests/Problems/ProblemAppServiceTests.cs b/enki-problems/test/EnkiProblems.Application.Tests/Problems/ProblemAppServiceTests.cs new file mode 100644 index 0000000..32217c9 --- /dev/null +++ b/enki-problems/test/EnkiProblems.Application.Tests/Problems/ProblemAppServiceTests.cs @@ -0,0 +1,1122 @@ +using System; +using System.IO; +using System.Linq; +using System.Threading.Tasks; +using Asgard.Hermes; +using Dapr.Client; +using EnkiProblems.Problems.Tests; +using Microsoft.Extensions.DependencyInjection; +using NSubstitute; +using Shouldly; +using Volo.Abp; +using Volo.Abp.Authorization; +using Volo.Abp.Content; +using Volo.Abp.Domain.Entities; +using Volo.Abp.Domain.Repositories; +using Volo.Abp.Users; +using Xunit; + +namespace EnkiProblems.Problems; + +[Collection(EnkiProblemsTestConsts.CollectionDefinitionName)] +public class ProblemAppServiceTests : EnkiProblemsApplicationTestBase +{ + private readonly IProblemAppService _problemAppService; + private readonly ProblemManager _problemManager; + private readonly IRepository _problemRepository; + private readonly EnkiProblemsTestData _testData; + private ICurrentUser _currentUser; + private ITestService _testService; + private DaprClient _daprClient; + + public ProblemAppServiceTests() + { + _problemAppService = GetRequiredService(); + _problemManager = GetRequiredService(); + _problemRepository = GetRequiredService>(); + _testData = GetRequiredService(); + } + + protected override void AfterAddApplication(IServiceCollection services) + { + _currentUser = Substitute.For(); + services.AddSingleton(_currentUser); + + _testService = Substitute.For(); + services.AddSingleton(_testService); + + _daprClient = Substitute.For(); + services.AddSingleton(_daprClient); + } + + #region CreateAsync + [Fact] + public async Task Should_Create_A_New_Valid_Problem_When_Current_User_Is_Proposer() + { + Login(_testData.ProposerUserId1, _testData.ProposerUserRoles); + + var problemDto = await _problemAppService.CreateAsync( + new CreateProblemDto + { + Name = _testData.ProblemName2, + Brief = _testData.ProblemBrief2, + Description = _testData.ProblemDescription2, + SourceName = _testData.ProblemSourceName2, + AuthorName = _testData.ProblemAuthorName2, + Time = _testData.ProblemTimeLimit2, + StackMemory = _testData.ProblemStackMemoryLimit2, + TotalMemory = _testData.ProblemTotalMemoryLimit2, + IoType = _testData.ProblemIoType2, + Difficulty = _testData.ProblemDifficulty2, + } + ); + + problemDto.ShouldNotBeNull(); + problemDto.Id.ShouldNotBe(Guid.Empty); + problemDto.Name.ShouldBe(_testData.ProblemName2); + problemDto.Brief.ShouldBe(_testData.ProblemBrief2); + problemDto.Description.ShouldBe(_testData.ProblemDescription2); + problemDto.SourceName.ShouldBe(_testData.ProblemSourceName2); + problemDto.AuthorName.ShouldBe(_testData.ProblemAuthorName2); + problemDto.Time.ShouldBe(_testData.ProblemTimeLimit2); + problemDto.StackMemory.ShouldBe(_testData.ProblemStackMemoryLimit2); + problemDto.TotalMemory.ShouldBe(_testData.ProblemTotalMemoryLimit2); + problemDto.IoType.ShouldBe(_testData.ProblemIoType2); + problemDto.Difficulty.ShouldBe(_testData.ProblemDifficulty2); + problemDto.IsPublished.ShouldBeFalse(); + problemDto.CreationDate.ShouldBeGreaterThan(DateTime.Now.AddMinutes(-1)); + } + + [Fact] + public async Task Should_Not_Create_A_New_Valid_Problem_When_Current_User_Is_Not_Proposer() + { + Login(_testData.NormalUserId, _testData.NormalUserRoles); + + await Assert.ThrowsAsync(async () => + { + await _problemAppService.CreateAsync( + new CreateProblemDto + { + Name = _testData.ProblemName2, + Brief = _testData.ProblemBrief2, + Description = _testData.ProblemDescription2, + SourceName = _testData.ProblemSourceName2, + AuthorName = _testData.ProblemAuthorName2, + Time = _testData.ProblemTimeLimit2, + StackMemory = _testData.ProblemStackMemoryLimit2, + TotalMemory = _testData.ProblemTotalMemoryLimit2, + IoType = _testData.ProblemIoType2, + Difficulty = _testData.ProblemDifficulty2 + } + ); + }); + } + #endregion + + #region GetListAsync + [Fact] + public async Task Should_Not_List_Unpublished_Problems_When_Current_User_Is_Anonymous() + { + var problemListDto = await _problemAppService.GetListAsync(new ProblemListFilterDto()); + + problemListDto.TotalCount.ShouldBe(0); + } + + [Fact] + public async Task Should_List_Published_Problems_When_Current_User_Is_Anonymous() + { + await PublishProblemAsync(_testData.ProblemId1); + + var problemListDto = await _problemAppService.GetListAsync(new ProblemListFilterDto()); + + problemListDto.TotalCount.ShouldBe(1); + problemListDto.Items.ShouldContain(p => + p.Name == _testData.ProblemName1 + && p.ProposerId == _testData.ProposerUserId1 + && p.IsPublished == true + ); + } + #endregion + + #region GetListUnpublishedAsync + [Fact] + public async Task Should_List_Unpublished_Problems_Only_For_Current_User_When_Current_User_Is_Proposer() + { + Login(_testData.ProposerUserId1, _testData.ProposerUserRoles); + + var problemListDto = await _problemAppService.GetListUnpublishedAsync( + new ProblemListFilterDto() + ); + + problemListDto.TotalCount.ShouldBe(1); + problemListDto.Items.ShouldContain(p => + p.Name == _testData.ProblemName1 + && p.ProposerId == _testData.ProposerUserId1 + && p.IsPublished == false + ); + + problemListDto + .Items[0] + .Tests.ShouldContain(t => + t.Score == _testData.TestScore1 + && t.InputDownloadUrl == _testData.TestInputLink1 + && t.OutputDownloadUrl == _testData.TestOutputLink1 + ); + } + + [Fact] + public async Task Should_Not_List_Unpublished_Problems_When_Current_User_Is_Not_Proposer() + { + Login(_testData.NormalUserId, _testData.NormalUserRoles); + + await Assert.ThrowsAsync(async () => + { + await _problemAppService.GetListUnpublishedAsync(new ProblemListFilterDto()); + }); + } + #endregion + + #region GetAsync + [Fact] + public async Task Should_Get_Published_Problem_When_Current_User_Is_Anonymous() + { + await PublishProblemAsync(_testData.ProblemId1); + + var problemDto = await _problemAppService.GetAsync(_testData.ProblemId1); + + problemDto.ShouldNotBeNull(); + problemDto.Id.ShouldBe(_testData.ProblemId1); + problemDto.Name.ShouldBe(_testData.ProblemName1); + } + + [Fact] + public async Task Should_Not_Get_Unpublished_Problem_When_Current_User_Is_Anonymous() + { + await Assert.ThrowsAsync(async () => + { + await _problemAppService.GetAsync(_testData.ProblemId1); + }); + } + + [Fact] + public async Task Should_Not_Get_Not_Existing_Problem_When_Current_User_Is_Anonymous() + { + await Assert.ThrowsAsync(async () => + { + await _problemAppService.GetAsync(Guid.NewGuid()); + }); + } + #endregion + + #region GetUnpublishedAsync + [Fact] + public async Task Should_Get_Published_Problem_When_Current_User_Is_Proposer_And_Owner() + { + await PublishProblemAsync(_testData.ProblemId1); + + Login(_testData.ProposerUserId1, _testData.ProposerUserRoles); + + var problemDto = await _problemAppService.GetUnpublishedAsync(_testData.ProblemId1); + + problemDto.ShouldNotBeNull(); + problemDto.Id.ShouldBe(_testData.ProblemId1); + problemDto.Name.ShouldBe(_testData.ProblemName1); + problemDto.Tests.ShouldContain(t => + t.Score == _testData.TestScore1 + && t.InputDownloadUrl == _testData.TestInputLink1 + && t.OutputDownloadUrl == _testData.TestOutputLink1 + ); + } + + [Fact] + public async Task Should_Get_Unpublished_Problem_When_Current_User_Is_Proposer_And_Owner() + { + Login(_testData.ProposerUserId1, _testData.ProposerUserRoles); + + var problemDto = await _problemAppService.GetUnpublishedAsync(_testData.ProblemId1); + + problemDto.ShouldNotBeNull(); + problemDto.Id.ShouldBe(_testData.ProblemId1); + problemDto.Name.ShouldBe(_testData.ProblemName1); + problemDto.Tests.ShouldContain(t => + t.Score == _testData.TestScore1 + && t.InputDownloadUrl == _testData.TestInputLink1 + && t.OutputDownloadUrl == _testData.TestOutputLink1 + ); + } + + [Fact] + public async Task Should_Not_Get_Unpublished_Problem_When_Current_User_Is_Proposer_And_Not_Owner() + { + Login(_testData.ProposerUserId1, _testData.ProposerUserRoles); + + await Assert.ThrowsAsync(async () => + { + await _problemAppService.GetUnpublishedAsync(_testData.ProblemId3); + }); + } + + [Fact] + public async Task Should_Not_Get_Not_Existing_Problem_When_Current_User_Is_Proposer() + { + Login(_testData.ProposerUserId1, _testData.ProposerUserRoles); + + await Assert.ThrowsAsync(async () => + { + await _problemAppService.GetUnpublishedAsync(Guid.NewGuid()); + }); + } + + [Fact] + public async Task Should_Not_Get_Published_Problem_When_Current_User_Is_Not_Proposer() + { + Login(_testData.NormalUserId, _testData.NormalUserRoles); + + await Assert.ThrowsAsync(async () => + { + await _problemAppService.GetUnpublishedAsync(_testData.ProblemId1); + }); + } + #endregion + + #region UpdateAsync + [Fact] + public async Task Should_Update_Unpublished_Problem_When_Current_User_Is_Proposer_And_Owner() + { + Login(_testData.ProposerUserId1, _testData.ProposerUserRoles); + + var problemDto = await _problemAppService.UpdateAsync( + _testData.ProblemId1, + new UpdateProblemDto + { + Name = _testData.ProblemName2, + Brief = _testData.ProblemBrief2, + Description = _testData.ProblemDescription2, + SourceName = _testData.ProblemSourceName2, + AuthorName = _testData.ProblemAuthorName2, + Time = _testData.ProblemTimeLimit2, + StackMemory = _testData.ProblemStackMemoryLimit2, + TotalMemory = _testData.ProblemTotalMemoryLimit2, + IoType = _testData.ProblemIoType2, + Difficulty = _testData.ProblemDifficulty2 + } + ); + + problemDto.ShouldNotBeNull(); + problemDto.Id.ShouldBe(_testData.ProblemId1); + problemDto.Name.ShouldBe(_testData.ProblemName2); + problemDto.Brief.ShouldBe(_testData.ProblemBrief2); + problemDto.Description.ShouldBe(_testData.ProblemDescription2); + problemDto.SourceName.ShouldBe(_testData.ProblemSourceName2); + problemDto.AuthorName.ShouldBe(_testData.ProblemAuthorName2); + problemDto.Time.ShouldBe(_testData.ProblemTimeLimit2); + problemDto.StackMemory.ShouldBe(_testData.ProblemStackMemoryLimit2); + problemDto.TotalMemory.ShouldBe(_testData.ProblemTotalMemoryLimit2); + problemDto.IoType.ShouldBe(_testData.ProblemIoType2); + problemDto.Difficulty.ShouldBe(_testData.ProblemDifficulty2); + problemDto.IsPublished.ShouldBeFalse(); + } + + [Fact] + public async Task Should_Not_Update_Unpublished_Problem_When_Current_User_Is_Proposer_And_Not_Owner() + { + Login(_testData.ProposerUserId1, _testData.ProposerUserRoles); + + await Assert.ThrowsAsync(async () => + { + await _problemAppService.UpdateAsync( + _testData.ProblemId3, + new UpdateProblemDto + { + Name = _testData.ProblemName2, + Brief = _testData.ProblemBrief2, + Description = _testData.ProblemDescription2, + SourceName = _testData.ProblemSourceName2, + AuthorName = _testData.ProblemAuthorName2, + Time = _testData.ProblemTimeLimit2, + StackMemory = _testData.ProblemStackMemoryLimit2, + TotalMemory = _testData.ProblemTotalMemoryLimit2, + IoType = _testData.ProblemIoType2, + Difficulty = _testData.ProblemDifficulty2 + } + ); + }); + } + + [Fact] + public async Task Should_Not_Update_Published_Problem_When_Current_User_Is_Proposer() + { + await PublishProblemAsync(_testData.ProblemId1); + + Login(_testData.ProposerUserId1, _testData.ProposerUserRoles); + + await Assert.ThrowsAsync(async () => + { + await _problemAppService.UpdateAsync( + _testData.ProblemId1, + new UpdateProblemDto + { + Name = _testData.ProblemName2, + Brief = _testData.ProblemBrief2, + Description = _testData.ProblemDescription2, + SourceName = _testData.ProblemSourceName2, + AuthorName = _testData.ProblemAuthorName2, + Time = _testData.ProblemTimeLimit2, + StackMemory = _testData.ProblemStackMemoryLimit2, + TotalMemory = _testData.ProblemTotalMemoryLimit2, + IoType = _testData.ProblemIoType2, + Difficulty = _testData.ProblemDifficulty2 + } + ); + }); + } + + [Fact] + public async Task Should_Update_Published_Problem_When_Current_User_Is_Proposer_And_Owner_And_Problem_Is_About_To_Be_Unpublished() + { + await PublishProblemAsync(_testData.ProblemId1); + + Login(_testData.ProposerUserId1, _testData.ProposerUserRoles); + + var problemDto = await _problemAppService.UpdateAsync( + _testData.ProblemId1, + new UpdateProblemDto { IsPublished = false } + ); + + problemDto.ShouldNotBeNull(); + problemDto.Id.ShouldBe(_testData.ProblemId1); + problemDto.IsPublished.ShouldBeFalse(); + } + + [Fact] + public async Task Should_Not_Update_Unpublished_Problem_When_Current_User_Is_Not_Proposer() + { + Login(_testData.NormalUserId, _testData.NormalUserRoles); + + await Assert.ThrowsAsync(async () => + { + await _problemAppService.UpdateAsync( + _testData.ProblemId1, + new UpdateProblemDto + { + Name = _testData.ProblemName2, + Brief = _testData.ProblemBrief2, + Description = _testData.ProblemDescription2, + SourceName = _testData.ProblemSourceName2, + AuthorName = _testData.ProblemAuthorName2, + Time = _testData.ProblemTimeLimit2, + StackMemory = _testData.ProblemStackMemoryLimit2, + TotalMemory = _testData.ProblemTotalMemoryLimit2, + IoType = _testData.ProblemIoType2, + Difficulty = _testData.ProblemDifficulty2 + } + ); + }); + } + #endregion + + #region CreateTestAsync + [Fact] + public async Task Should_Create_Test_When_Current_User_Is_Proposer_And_Owner() + { + Login(_testData.ProblemProposerId3, _testData.ProposerUserRoles); + + _testService + .UploadTestAsync(Arg.Any()) + .Returns( + new UploadResponse + { + Status = new StatusResponse + { + Code = StatusCode.Ok, + Message = "Successful upload" + } + } + ); + + _testService + .GetDownloadLinkForTestAsync(Arg.Any()) + .Returns( + new GetDownloadLinkForTestResponse + { + Status = new StatusResponse + { + Code = StatusCode.Ok, + Message = "Successful download link retrieval" + }, + InputLink = _testData.TestInputLink1, + OutputLink = _testData.TestOutputLink1 + } + ); + + var stubTestArchiveFile = new RemoteStreamContent( + new MemoryStream(_testData.TestArchiveBytes1) + ); + + var problem = await _problemAppService.CreateTestAsync( + _testData.ProblemId3, + new CreateTestDto { Score = _testData.TestScore1, ArchiveFile = stubTestArchiveFile } + ); + + problem.ShouldNotBeNull(); + problem.Tests.Count().ShouldBe(1); + problem.Tests.ShouldContain(t => t.Id == _testData.TestId1); + } + + [Fact] + public async Task Should_Not_Create_Test_When_User_Is_Anonymous() + { + Login(_testData.NormalUserId, _testData.NormalUserRoles); + + var stubTestArchiveFile = new RemoteStreamContent( + new MemoryStream(_testData.TestArchiveBytes1) + ); + + await Assert.ThrowsAsync(async () => + { + await _problemAppService.CreateTestAsync( + _testData.ProblemId1, + new CreateTestDto + { + Score = _testData.TestScore1, + ArchiveFile = stubTestArchiveFile + } + ); + }); + } + + [Fact] + public async Task Should_Not_Create_Test_When_User_Is_Not_Owner() + { + Login(_testData.ProposerUserId2, _testData.ProposerUserRoles); + + var stubTestArchiveFile = new RemoteStreamContent( + new MemoryStream(_testData.TestArchiveBytes1) + ); + + await Assert.ThrowsAsync(async () => + { + await _problemAppService.CreateTestAsync( + _testData.ProblemId1, + new CreateTestDto + { + Score = _testData.TestScore1, + ArchiveFile = stubTestArchiveFile + } + ); + }); + } + + [Fact] + public async Task Should_Not_Create_Test_For_Non_Existing_Problem() + { + Login(_testData.ProposerUserId1, _testData.ProposerUserRoles); + + var stubTestArchiveFile = new RemoteStreamContent( + new MemoryStream(_testData.TestArchiveBytes1) + ); + + await Assert.ThrowsAsync(async () => + { + await _problemAppService.CreateTestAsync( + Guid.NewGuid(), + new CreateTestDto + { + Score = _testData.TestScore1, + ArchiveFile = stubTestArchiveFile + } + ); + }); + } + + [Fact] + public async Task Should_Not_Create_Test_For_Published_Problem() + { + await PublishProblemAsync(_testData.ProblemId1); + + Login(_testData.ProposerUserId1, _testData.ProposerUserRoles); + + _testService + .UploadTestAsync(Arg.Any()) + .Returns( + new UploadResponse + { + Status = new StatusResponse + { + Code = StatusCode.Ok, + Message = "Successful upload" + } + } + ); + + _testService + .GetDownloadLinkForTestAsync(Arg.Any()) + .Returns( + new GetDownloadLinkForTestResponse + { + Status = new StatusResponse + { + Code = StatusCode.Ok, + Message = "Successful download link retrieval" + }, + InputLink = _testData.TestInputLink1, + OutputLink = _testData.TestOutputLink1 + } + ); + + var stubTestArchiveFile = new RemoteStreamContent( + new MemoryStream(_testData.TestArchiveBytes1) + ); + + await Assert.ThrowsAsync(async () => + { + await _problemAppService.CreateTestAsync( + _testData.ProblemId1, + new CreateTestDto + { + Score = _testData.TestScore1, + ArchiveFile = stubTestArchiveFile + } + ); + }); + } + + [Fact] + public async Task Should_Not_Create_Test_When_Upload_Failed() + { + Login(_testData.ProposerUserId1, _testData.ProposerUserRoles); + + _testService + .UploadTestAsync(Arg.Any()) + .Returns( + new UploadResponse + { + Status = new StatusResponse + { + Code = StatusCode.Failed, + Message = "Upload failed" + } + } + ); + + var stubTestArchiveFile = new RemoteStreamContent( + new MemoryStream(_testData.TestArchiveBytes1) + ); + + await Assert.ThrowsAsync(async () => + { + await _problemAppService.CreateTestAsync( + _testData.ProblemId1, + new CreateTestDto + { + Score = _testData.TestScore1, + ArchiveFile = stubTestArchiveFile + } + ); + }); + } + + [Fact] + public async Task Should_Not_Create_Test_When_Get_Download_Urls_Failed() + { + Login(_testData.ProposerUserId1, _testData.ProposerUserRoles); + + _testService + .UploadTestAsync(Arg.Any()) + .Returns( + new UploadResponse + { + Status = new StatusResponse + { + Code = StatusCode.Ok, + Message = "Successful upload" + } + } + ); + + _testService + .GetDownloadLinkForTestAsync(Arg.Any()) + .Returns( + new GetDownloadLinkForTestResponse + { + Status = new StatusResponse + { + Code = StatusCode.Failed, + Message = "Download link retrieval failed" + }, + InputLink = string.Empty, + OutputLink = string.Empty + } + ); + + var stubTestArchiveFile = new RemoteStreamContent( + new MemoryStream(_testData.TestArchiveBytes1) + ); + + await Assert.ThrowsAsync(async () => + { + await _problemAppService.CreateTestAsync( + _testData.ProblemId1, + new CreateTestDto + { + Score = _testData.TestScore1, + ArchiveFile = stubTestArchiveFile + } + ); + }); + } + #endregion + + #region UpdateTestAsync + [Fact] + public async Task Should_Update_Test_When_Current_User_Is_Proposer_And_Owner() + { + Login(_testData.ProposerUserId1, _testData.ProposerUserRoles); + + _testService + .UploadTestAsync(Arg.Any()) + .Returns( + new UploadResponse + { + Status = new StatusResponse + { + Code = StatusCode.Ok, + Message = "Successful upload" + } + } + ); + + _testService + .GetDownloadLinkForTestAsync(Arg.Any()) + .Returns( + new GetDownloadLinkForTestResponse + { + Status = new StatusResponse + { + Code = StatusCode.Ok, + Message = "Successful download link retrieval" + }, + InputLink = _testData.TestInputLink1, + OutputLink = _testData.TestOutputLink1 + } + ); + + var stubTestArchiveFile = new RemoteStreamContent( + new MemoryStream(_testData.TestArchiveBytes1) + ); + + var problem = await _problemAppService.UpdateTestAsync( + _testData.ProblemId1, + _testData.TestId1, + new UpdateTestDto { Score = _testData.TestScore2, ArchiveFile = stubTestArchiveFile } + ); + + problem.ShouldNotBeNull(); + problem.Tests.Count().ShouldBe(1); + problem.Tests.ShouldContain(t => t.Id == _testData.TestId1); + problem.Tests.First().Score.ShouldBe(_testData.TestScore2); + } + + [Fact] + public async Task Should_Update_Test_When_Only_Score_Is_Provided() + { + Login(_testData.ProposerUserId1, _testData.ProposerUserRoles); + + _testService + .UploadTestAsync(Arg.Any()) + .Returns( + new UploadResponse + { + Status = new StatusResponse + { + Code = StatusCode.Ok, + Message = "Successful upload" + } + } + ); + + _testService + .GetDownloadLinkForTestAsync(Arg.Any()) + .Returns( + new GetDownloadLinkForTestResponse + { + Status = new StatusResponse + { + Code = StatusCode.Ok, + Message = "Successful download link retrieval" + }, + InputLink = _testData.TestInputLink1, + OutputLink = _testData.TestOutputLink1 + } + ); + + var problem = await _problemAppService.UpdateTestAsync( + _testData.ProblemId1, + _testData.TestId1, + new UpdateTestDto { Score = _testData.TestScore2 } + ); + + problem.ShouldNotBeNull(); + problem.Tests.Count().ShouldBe(1); + problem.Tests.ShouldContain(t => t.Id == _testData.TestId1); + problem.Tests.First().Score.ShouldBe(_testData.TestScore2); + } + + [Fact] + public async Task Should_Not_Update_Test_When_User_Is_Anonymous() + { + Login(_testData.NormalUserId, _testData.NormalUserRoles); + + var stubTestArchiveFile = new RemoteStreamContent( + new MemoryStream(_testData.TestArchiveBytes1) + ); + + await Assert.ThrowsAsync(async () => + { + await _problemAppService.UpdateTestAsync( + _testData.ProblemId1, + _testData.TestId1, + new UpdateTestDto + { + Score = _testData.TestScore2, + ArchiveFile = stubTestArchiveFile + } + ); + }); + } + + [Fact] + public async Task Should_Not_Update_Test_When_User_Is_Not_Owner() + { + Login(_testData.ProposerUserId2, _testData.ProposerUserRoles); + + var stubTestArchiveFile = new RemoteStreamContent( + new MemoryStream(_testData.TestArchiveBytes1) + ); + + await Assert.ThrowsAsync(async () => + { + await _problemAppService.UpdateTestAsync( + _testData.ProblemId1, + _testData.TestId1, + new UpdateTestDto + { + Score = _testData.TestScore2, + ArchiveFile = stubTestArchiveFile + } + ); + }); + } + + [Fact] + public async Task Should_Not_Update_Test_For_Non_Existing_Problem() + { + Login(_testData.ProposerUserId1, _testData.ProposerUserRoles); + + var stubTestArchiveFile = new RemoteStreamContent( + new MemoryStream(_testData.TestArchiveBytes1) + ); + + await Assert.ThrowsAsync(async () => + { + await _problemAppService.UpdateTestAsync( + Guid.NewGuid(), + _testData.TestId1, + new UpdateTestDto + { + Score = _testData.TestScore2, + ArchiveFile = stubTestArchiveFile + } + ); + }); + } + + [Fact] + public async Task Should_Not_Update_Test_For_Published_Problem() + { + await PublishProblemAsync(_testData.ProblemId1); + + Login(_testData.ProposerUserId1, _testData.ProposerUserRoles); + + _testService + .UploadTestAsync(Arg.Any()) + .Returns( + new UploadResponse + { + Status = new StatusResponse + { + Code = StatusCode.Ok, + Message = "Successful upload" + } + } + ); + + _testService + .GetDownloadLinkForTestAsync(Arg.Any()) + .Returns( + new GetDownloadLinkForTestResponse + { + Status = new StatusResponse + { + Code = StatusCode.Ok, + Message = "Successful download link retrieval" + }, + InputLink = _testData.TestInputLink1, + OutputLink = _testData.TestOutputLink1 + } + ); + + var stubTestArchiveFile = new RemoteStreamContent( + new MemoryStream(_testData.TestArchiveBytes1) + ); + + await Assert.ThrowsAsync(async () => + { + await _problemAppService.UpdateTestAsync( + _testData.ProblemId1, + _testData.TestId1, + new UpdateTestDto + { + Score = _testData.TestScore1, + ArchiveFile = stubTestArchiveFile + } + ); + }); + } + + [Fact] + public async Task Should_Not_Add_Test_When_Upload_Failed() + { + Login(_testData.ProposerUserId1, _testData.ProposerUserRoles); + + _testService + .UploadTestAsync(Arg.Any()) + .Returns( + new UploadResponse + { + Status = new StatusResponse + { + Code = StatusCode.Failed, + Message = "Upload failed" + } + } + ); + + var stubTestArchiveFile = new RemoteStreamContent( + new MemoryStream(_testData.TestArchiveBytes1) + ); + + await Assert.ThrowsAsync(async () => + { + await _problemAppService.UpdateTestAsync( + _testData.ProblemId1, + _testData.TestId1, + new UpdateTestDto + { + Score = _testData.TestScore2, + ArchiveFile = stubTestArchiveFile + } + ); + }); + } + + [Fact] + public async Task Should_Not_Update_Test_When_Get_Download_Urls_Failed() + { + Login(_testData.ProposerUserId1, _testData.ProposerUserRoles); + + _testService + .UploadTestAsync(Arg.Any()) + .Returns( + new UploadResponse + { + Status = new StatusResponse + { + Code = StatusCode.Ok, + Message = "Successful upload" + } + } + ); + + _testService + .GetDownloadLinkForTestAsync(Arg.Any()) + .Returns( + new GetDownloadLinkForTestResponse + { + Status = new StatusResponse + { + Code = StatusCode.Failed, + Message = "Download link retrieval failed" + }, + InputLink = string.Empty, + OutputLink = string.Empty + } + ); + + var stubTestArchiveFile = new RemoteStreamContent( + new MemoryStream(_testData.TestArchiveBytes1) + ); + + await Assert.ThrowsAsync(async () => + { + await _problemAppService.UpdateTestAsync( + _testData.ProblemId1, + _testData.TestId1, + new UpdateTestDto + { + Score = _testData.TestScore2, + ArchiveFile = stubTestArchiveFile + } + ); + }); + } + #endregion + + #region DeleteTestAsync + [Fact] + public async Task Should_Delete_Test_When_User_Is_Proposer_And_Owner() + { + Login(_testData.ProposerUserId1, _testData.ProposerUserRoles); + + _testService + .DeleteTestAsync(Arg.Any()) + .Returns( + new DeleteTestResponse + { + Status = new StatusResponse + { + Code = StatusCode.Ok, + Message = "Successful delete" + } + } + ); + + var problem = await _problemAppService.DeleteTestAsync( + _testData.ProblemId1, + _testData.TestId1 + ); + + problem.ShouldNotBeNull(); + problem.Tests.ShouldNotContain(t => t.Id == _testData.TestId1); + } + + [Fact] + public async Task Should_Not_Delete_Test_When_User_Is_Anonymous() + { + Login(_testData.NormalUserId, _testData.NormalUserRoles); + + await Assert.ThrowsAsync(async () => + { + await _problemAppService.DeleteTestAsync(_testData.ProblemId1, _testData.TestId1); + }); + } + + [Fact] + public async Task Should_Not_Delete_Test_When_User_Is_Not_Owner() + { + Login(_testData.ProposerUserId2, _testData.ProposerUserRoles); + + await Assert.ThrowsAsync(async () => + { + await _problemAppService.DeleteTestAsync(_testData.ProblemId1, _testData.TestId1); + }); + } + + [Fact] + public async Task Should_Not_Delete_Test_When_Problem_Is_Not_Found() + { + Login(_testData.ProposerUserId1, _testData.ProposerUserRoles); + + await Assert.ThrowsAsync(async () => + { + await _problemAppService.DeleteTestAsync(Guid.NewGuid(), _testData.TestId1); + }); + } + + [Fact] + public async Task Should_Not_Delete_Test_When_Problem_Is_Published() + { + await PublishProblemAsync(_testData.ProblemId1); + + Login(_testData.ProposerUserId1, _testData.ProposerUserRoles); + + await Assert.ThrowsAsync(async () => + { + await _problemAppService.DeleteTestAsync(_testData.ProblemId1, _testData.TestId1); + }); + } + + [Fact] + public async Task Should_Not_Delete_Test_When_Deletion_Failed() + { + Login(_testData.ProposerUserId1, _testData.ProposerUserRoles); + + _testService + .DeleteTestAsync(Arg.Any()) + .Returns( + new DeleteTestResponse + { + Status = new StatusResponse + { + Code = StatusCode.Failed, + Message = "Delete failed" + } + } + ); + + await Assert.ThrowsAsync(async () => + { + await _problemAppService.DeleteTestAsync(_testData.ProblemId1, _testData.TestId1); + }); + } + #endregion + + #region GetEvalMetadataAsync + [Fact] + public async Task Should_Get_Eval_Metadata_For_Valid_Problem() + { + await PublishProblemAsync(_testData.ProblemId1); + + var evalMetadataDto = await _problemAppService.GetEvalMetadataAsync(_testData.ProblemId1); + + evalMetadataDto.ShouldNotBeNull(); + evalMetadataDto.Id.ShouldBe(_testData.ProblemId1); + evalMetadataDto.Name.ShouldBe(_testData.ProblemName1); + evalMetadataDto.ProposerId.ShouldBe(_testData.ProblemProposerId1); + evalMetadataDto.IsPublished.ShouldBeTrue(); + evalMetadataDto.Time.ShouldBe(_testData.ProblemTimeLimit1); + evalMetadataDto.TotalMemory.ShouldBe(_testData.ProblemTotalMemoryLimit1); + evalMetadataDto.StackMemory.ShouldBe(_testData.ProblemStackMemoryLimit1); + evalMetadataDto.IoType.ShouldBe(_testData.ProblemIoType1); + evalMetadataDto.Tests.Count().ShouldBe(1); + evalMetadataDto.Tests.ShouldContain(t => + t.Score == _testData.TestScore1 + && t.InputDownloadUrl == _testData.TestInputLink1 + && t.OutputDownloadUrl == _testData.TestOutputLink1 + ); + } + + [Fact] + public async Task Should_Not_Get_Eval_Metadata_For_Non_Existing_Problem() + { + await Assert.ThrowsAsync(async () => + { + await _problemAppService.GetEvalMetadataAsync(Guid.NewGuid()); + }); + } + #endregion + + private void Login(Guid userId, string[] userRoles) + { + _currentUser.Id.Returns(userId); + _currentUser.Roles.Returns(userRoles); + _currentUser.IsAuthenticated.Returns(true); + } + + private async Task PublishProblemAsync(Guid problemId) + { + var problem = await _problemRepository.GetAsync(problemId); + _problemManager.Publish(problem); + await _problemRepository.UpdateAsync(problem); + } +} diff --git a/enki-problems/test/EnkiProblems.Domain.Tests/EnkiProblems.Domain.Tests.csproj b/enki-problems/test/EnkiProblems.Domain.Tests/EnkiProblems.Domain.Tests.csproj new file mode 100644 index 0000000..c11a086 --- /dev/null +++ b/enki-problems/test/EnkiProblems.Domain.Tests/EnkiProblems.Domain.Tests.csproj @@ -0,0 +1,20 @@ + + + + + + net7.0 + enable + EnkiProblems + + + + + + + + + + + + diff --git a/enki-problems/test/EnkiProblems.Domain.Tests/EnkiProblemsDomainCollection.cs b/enki-problems/test/EnkiProblems.Domain.Tests/EnkiProblemsDomainCollection.cs new file mode 100644 index 0000000..378d482 --- /dev/null +++ b/enki-problems/test/EnkiProblems.Domain.Tests/EnkiProblemsDomainCollection.cs @@ -0,0 +1,7 @@ +using EnkiProblems.MongoDB; +using Xunit; + +namespace EnkiProblems; + +[CollectionDefinition(EnkiProblemsTestConsts.CollectionDefinitionName)] +public class EnkiProblemsDomainCollection : EnkiProblemsMongoDbCollectionFixtureBase { } diff --git a/enki-problems/test/EnkiProblems.Domain.Tests/EnkiProblemsDomainTestBase.cs b/enki-problems/test/EnkiProblems.Domain.Tests/EnkiProblemsDomainTestBase.cs new file mode 100644 index 0000000..38b08d9 --- /dev/null +++ b/enki-problems/test/EnkiProblems.Domain.Tests/EnkiProblemsDomainTestBase.cs @@ -0,0 +1,4 @@ +namespace EnkiProblems; + +public abstract class EnkiProblemsDomainTestBase + : EnkiProblemsTestBase { } diff --git a/enki-problems/test/EnkiProblems.Domain.Tests/EnkiProblemsDomainTestModule.cs b/enki-problems/test/EnkiProblems.Domain.Tests/EnkiProblemsDomainTestModule.cs new file mode 100644 index 0000000..d41a9d1 --- /dev/null +++ b/enki-problems/test/EnkiProblems.Domain.Tests/EnkiProblemsDomainTestModule.cs @@ -0,0 +1,7 @@ +using EnkiProblems.MongoDB; +using Volo.Abp.Modularity; + +namespace EnkiProblems; + +[DependsOn(typeof(EnkiProblemsMongoDbTestModule))] +public class EnkiProblemsDomainTestModule : AbpModule { } diff --git a/enki-problems/test/EnkiProblems.Domain.Tests/Problems/ProblemManagerTests.cs b/enki-problems/test/EnkiProblems.Domain.Tests/Problems/ProblemManagerTests.cs new file mode 100644 index 0000000..a202cfd --- /dev/null +++ b/enki-problems/test/EnkiProblems.Domain.Tests/Problems/ProblemManagerTests.cs @@ -0,0 +1,344 @@ +using System; +using System.Linq; +using System.Threading.Tasks; +using Shouldly; +using Volo.Abp; +using Volo.Abp.Domain.Repositories; +using Xunit; + +namespace EnkiProblems.Problems; + +[Collection(EnkiProblemsTestConsts.CollectionDefinitionName)] +public class ProblemManagerTests : EnkiProblemsDomainTestBase +{ + private readonly EnkiProblemsTestData _testData; + private readonly ProblemManager _problemManager; + private readonly IRepository _problemRepository; + + public ProblemManagerTests() + { + _testData = GetRequiredService(); + _problemManager = GetRequiredService(); + _problemRepository = GetRequiredService>(); + } + + [Fact] + public async Task Should_Create_A_Valid_Problem() + { + await WithUnitOfWorkAsync(async () => + { + var problem = await _problemManager.CreateAsync( + _testData.ProblemName2, + _testData.ProblemBrief2, + _testData.ProblemDescription2, + _testData.ProblemSourceName2, + _testData.ProblemAuthorName2, + _testData.ProblemProposerId2, + _testData.ProblemTimeLimit2, + _testData.ProblemTotalMemoryLimit2, + _testData.ProblemStackMemoryLimit2, + _testData.ProblemIoType2, + _testData.ProblemDifficulty2 + ); + + problem.ShouldNotBeNull(); + problem.Name.ShouldBe(_testData.ProblemName2); + problem.Brief.ShouldBe(_testData.ProblemBrief2); + problem.Description.ShouldBe(_testData.ProblemDescription2); + problem.IsPublished.ShouldBeFalse(); + problem.Origin.SourceName.ShouldBe(_testData.ProblemSourceName2); + problem.Origin.AuthorName.ShouldBe(_testData.ProblemAuthorName2); + problem.Limit.Time.ShouldBe(_testData.ProblemTimeLimit2); + problem.Limit.StackMemory.ShouldBe(_testData.ProblemStackMemoryLimit2); + problem.Limit.TotalMemory.ShouldBe(_testData.ProblemTotalMemoryLimit2); + problem.IoType.ShouldBe(_testData.ProblemIoType2); + problem.Difficulty.ShouldBe(_testData.ProblemDifficulty2); + problem.Tests.Count.ShouldBe(0); + problem.ProposerId.ShouldBe(_testData.ProblemProposerId2); + }); + } + + [Fact] + public async Task Should_Not_Create_A_Problem_With_Already_Existing_Name() + { + await WithUnitOfWorkAsync(async () => + { + await Assert.ThrowsAsync(async () => + { + await _problemManager.CreateAsync( + _testData.ProblemName1, + _testData.ProblemBrief2, + _testData.ProblemDescription2, + _testData.ProblemSourceName2, + _testData.ProblemAuthorName2, + _testData.ProblemProposerId2, + _testData.ProblemTimeLimit2, + _testData.ProblemTotalMemoryLimit2, + _testData.ProblemStackMemoryLimit2, + _testData.ProblemIoType2, + _testData.ProblemDifficulty2 + ); + }); + }); + } + + [Fact] + public async Task Should_Update_A_Valid_Problem() + { + await WithUnitOfWorkAsync(async () => + { + var problem = await _problemRepository.GetAsync(_testData.ProblemId1); + var updatedProblem = await _problemManager.UpdateAsync( + problem, + _testData.ProblemName2, + _testData.ProblemBrief2, + _testData.ProblemDescription2, + _testData.ProblemSourceName2, + _testData.ProblemAuthorName2, + _testData.ProblemTimeLimit2, + _testData.ProblemTotalMemoryLimit2, + _testData.ProblemStackMemoryLimit2, + _testData.ProblemIoType2, + _testData.ProblemDifficulty2, + null + ); + await _problemRepository.UpdateAsync(updatedProblem); + }); + + var problem = await _problemRepository.GetAsync(_testData.ProblemId1); + problem.ShouldNotBeNull(); + problem.Name.ShouldBe(_testData.ProblemName2); + problem.Brief.ShouldBe(_testData.ProblemBrief2); + problem.Description.ShouldBe(_testData.ProblemDescription2); + problem.IsPublished.ShouldBeFalse(); + problem.Origin.SourceName.ShouldBe(_testData.ProblemSourceName2); + problem.Origin.AuthorName.ShouldBe(_testData.ProblemAuthorName2); + problem.Limit.Time.ShouldBe(_testData.ProblemTimeLimit2); + problem.Limit.StackMemory.ShouldBe(_testData.ProblemStackMemoryLimit2); + problem.Limit.TotalMemory.ShouldBe(_testData.ProblemTotalMemoryLimit2); + problem.IoType.ShouldBe(_testData.ProblemIoType2); + problem.Difficulty.ShouldBe(_testData.ProblemDifficulty2); + problem.Tests.Count.ShouldBe(_testData.ProblemNumberOfTests1); + problem.ProposerId.ShouldBe(_testData.ProblemProposerId2); + } + + [Fact] + public async Task Should_Not_Update_A_Problem_With_Already_Existing_Name() + { + await WithUnitOfWorkAsync(async () => + { + var problem = await _problemRepository.GetAsync(_testData.ProblemId1); + await Assert.ThrowsAsync(async () => + { + await _problemManager.UpdateAsync( + problem, + _testData.ProblemName3, + _testData.ProblemBrief2, + _testData.ProblemDescription2, + _testData.ProblemSourceName2, + _testData.ProblemAuthorName2, + _testData.ProblemTimeLimit2, + _testData.ProblemTotalMemoryLimit2, + _testData.ProblemStackMemoryLimit2, + _testData.ProblemIoType2, + _testData.ProblemDifficulty2, + null + ); + }); + }); + } + + [Fact] + public async Task Should_Not_Update_A_Published_Problem() + { + await WithUnitOfWorkAsync(async () => + { + var problem = await _problemRepository.GetAsync(_testData.ProblemId1); + + problem.Publish(); + + await Assert.ThrowsAsync(async () => + { + await _problemManager.UpdateAsync( + problem, + _testData.ProblemName2, + _testData.ProblemBrief2, + _testData.ProblemDescription2, + _testData.ProblemSourceName2, + _testData.ProblemAuthorName2, + _testData.ProblemTimeLimit2, + _testData.ProblemTotalMemoryLimit2, + _testData.ProblemStackMemoryLimit2, + _testData.ProblemIoType2, + _testData.ProblemDifficulty2, + null + ); + }); + }); + } + + [Fact] + public async Task Should_Add_A_New_Valid_Test() + { + // Arrange + var problem = await _problemRepository.GetAsync(_testData.ProblemId3); + + // Act + await WithUnitOfWorkAsync(async () => + { + var updatedProblem = _problemManager.AddTest( + problem, + _testData.TestId1, + _testData.TestScore1, + _testData.TestInputLink1, + _testData.TestOutputLink1 + ); + await _problemRepository.UpdateAsync(updatedProblem); + }); + + // Assert + var problemWithTests = await _problemRepository.GetAsync(_testData.ProblemId3); + problemWithTests.Tests.Count.ShouldBe(1); + problemWithTests.Tests.First().Id.ShouldBe(_testData.TestId1); + problemWithTests.Tests.First().Score.ShouldBe(_testData.TestScore1); + } + + [Fact] + public async Task Should_Not_Add_A_Test_With_Limit_Exceeding_Score() + { + // Arrange + var problem = await _problemRepository.GetAsync(_testData.ProblemId1); + + // Act & Assert + Assert.Throws(() => + { + _problemManager.AddTest( + problem, + _testData.TestId2, + _testData.LimitExceedingTestScore, + _testData.TestInputLink1, + _testData.TestOutputLink1 + ); + }); + } + + [Fact] + public async Task Should_Update_An_Existing_Test() + { + // Arrange + var problem = await _problemRepository.GetAsync(_testData.ProblemId1); + var test = problem.Tests.First(); + + // Act + await WithUnitOfWorkAsync(async () => + { + var updatedProblem = _problemManager.UpdateTest( + problem, + test.Id, + _testData.TestScore2, + _testData.TestInputLink1, + _testData.TestOutputLink1 + ); + await _problemRepository.UpdateAsync(updatedProblem); + }); + + // Assert + var problemWithTests = await _problemRepository.GetAsync(_testData.ProblemId1); + problemWithTests.Tests.Count.ShouldBe(1); + problemWithTests.Tests.First().Id.ShouldBe(test.Id); + problemWithTests.Tests.First().Score.ShouldBe(_testData.TestScore2); + } + + [Fact] + public async Task Should_Not_Update_Non_Existing_Test() + { + var problem = await _problemRepository.GetAsync(_testData.ProblemId1); + + Assert.Throws(() => + { + _problemManager.UpdateTest( + problem, + _testData.TestId2, + _testData.TestScore2, + _testData.TestInputLink1, + _testData.TestOutputLink1 + ); + }); + } + + [Fact] + public async Task Should_Not_Update_Test_With_Limit_Exceeding_Score() + { + // Arrange + var problem = await _problemRepository.GetAsync(_testData.ProblemId1); + var test = problem.Tests.First(); + + // Act & Assert + Assert.Throws(() => + { + _problemManager.UpdateTest( + problem, + test.Id, + _testData.LimitExceedingTestScore, + _testData.TestInputLink1, + _testData.TestOutputLink1 + ); + }); + } + + [Fact] + public async Task Should_Remove_An_Existing_Test() + { + // Arrange + var problem = await _problemRepository.GetAsync(_testData.ProblemId1); + var test = problem.Tests.First(); + + // Act + await WithUnitOfWorkAsync(async () => + { + var updatedProblem = _problemManager.RemoveTest(problem, test.Id); + await _problemRepository.UpdateAsync(updatedProblem); + }); + + // Assert + var problemWithTests = await _problemRepository.GetAsync(_testData.ProblemId1); + problemWithTests.Tests.Count.ShouldBe(0); + } + + [Fact] + public async Task Should_Not_Remove_Non_Existing_Test() + { + var problem = await _problemRepository.GetAsync(_testData.ProblemId1); + + Assert.Throws(() => + { + _problemManager.RemoveTest(problem, _testData.TestId2); + }); + } + + [Fact] + public async Task Should_Publish_Valid_Problem() + { + var problem = await _problemRepository.GetAsync(_testData.ProblemId1); + + await WithUnitOfWorkAsync(async () => + { + var updatedProblem = _problemManager.Publish(problem); + await _problemRepository.UpdateAsync(updatedProblem); + }); + + var problemWithTests = await _problemRepository.GetAsync(_testData.ProblemId1); + problemWithTests.IsPublished.ShouldBeTrue(); + } + + [Fact] + public async Task Should_Not_Publish_Invalid_Problem() + { + var problem = await _problemRepository.GetAsync(_testData.ProblemId3); + + Assert.Throws(() => + { + _problemManager.Publish(problem); + }); + } +} diff --git a/enki-problems/test/EnkiProblems.MongoDB.Tests/EnkiProblems.MongoDB.Tests.csproj b/enki-problems/test/EnkiProblems.MongoDB.Tests/EnkiProblems.MongoDB.Tests.csproj new file mode 100644 index 0000000..6516357 --- /dev/null +++ b/enki-problems/test/EnkiProblems.MongoDB.Tests/EnkiProblems.MongoDB.Tests.csproj @@ -0,0 +1,22 @@ + + + + + + net7.0 + enable + EnkiProblems + + + + + + + + + + + + + + diff --git a/enki-problems/test/EnkiProblems.MongoDB.Tests/MongoDb/EnkiProblemsMongoCollection.cs b/enki-problems/test/EnkiProblems.MongoDB.Tests/MongoDb/EnkiProblemsMongoCollection.cs new file mode 100644 index 0000000..7fee4cb --- /dev/null +++ b/enki-problems/test/EnkiProblems.MongoDB.Tests/MongoDb/EnkiProblemsMongoCollection.cs @@ -0,0 +1,6 @@ +using Xunit; + +namespace EnkiProblems.MongoDB; + +[CollectionDefinition(EnkiProblemsTestConsts.CollectionDefinitionName)] +public class EnkiProblemsMongoCollection : EnkiProblemsMongoDbCollectionFixtureBase { } diff --git a/enki-problems/test/EnkiProblems.MongoDB.Tests/MongoDb/EnkiProblemsMongoDbCollectionFixtureBase.cs b/enki-problems/test/EnkiProblems.MongoDB.Tests/MongoDb/EnkiProblemsMongoDbCollectionFixtureBase.cs new file mode 100644 index 0000000..33d4509 --- /dev/null +++ b/enki-problems/test/EnkiProblems.MongoDB.Tests/MongoDb/EnkiProblemsMongoDbCollectionFixtureBase.cs @@ -0,0 +1,6 @@ +using Xunit; + +namespace EnkiProblems.MongoDB; + +public class EnkiProblemsMongoDbCollectionFixtureBase + : ICollectionFixture { } diff --git a/enki-problems/test/EnkiProblems.MongoDB.Tests/MongoDb/EnkiProblemsMongoDbFixture.cs b/enki-problems/test/EnkiProblems.MongoDB.Tests/MongoDb/EnkiProblemsMongoDbFixture.cs new file mode 100644 index 0000000..14b30ae --- /dev/null +++ b/enki-problems/test/EnkiProblems.MongoDB.Tests/MongoDb/EnkiProblemsMongoDbFixture.cs @@ -0,0 +1,16 @@ +using System.Threading.Tasks; +using Testcontainers.MongoDb; +using Xunit; + +namespace EnkiProblems.MongoDB; + +public class EnkiProblemsMongoDbFixture : IAsyncLifetime +{ + private static readonly MongoDbContainer MongoDbContainer = new MongoDbBuilder().Build(); + + public static string GetConnectionString() => MongoDbContainer.GetConnectionString(); + + public Task InitializeAsync() => MongoDbContainer.StartAsync(); + + public Task DisposeAsync() => MongoDbContainer.StopAsync(); +} diff --git a/enki-problems/test/EnkiProblems.MongoDB.Tests/MongoDb/EnkiProblemsMongoDbTestBase.cs b/enki-problems/test/EnkiProblems.MongoDB.Tests/MongoDb/EnkiProblemsMongoDbTestBase.cs new file mode 100644 index 0000000..db4be58 --- /dev/null +++ b/enki-problems/test/EnkiProblems.MongoDB.Tests/MongoDb/EnkiProblemsMongoDbTestBase.cs @@ -0,0 +1,4 @@ +namespace EnkiProblems.MongoDB; + +public abstract class EnkiProblemsMongoDbTestBase + : EnkiProblemsTestBase { } diff --git a/enki-problems/test/EnkiProblems.MongoDB.Tests/MongoDb/EnkiProblemsMongoDbTestModule.cs b/enki-problems/test/EnkiProblems.MongoDB.Tests/MongoDb/EnkiProblemsMongoDbTestModule.cs new file mode 100644 index 0000000..868ece9 --- /dev/null +++ b/enki-problems/test/EnkiProblems.MongoDB.Tests/MongoDb/EnkiProblemsMongoDbTestModule.cs @@ -0,0 +1,20 @@ +using System; +using Volo.Abp.Data; +using Volo.Abp.Modularity; + +namespace EnkiProblems.MongoDB; + +[DependsOn(typeof(EnkiProblemsTestBaseModule), typeof(EnkiProblemsMongoDbModule))] +public class EnkiProblemsMongoDbTestModule : AbpModule +{ + public override void ConfigureServices(ServiceConfigurationContext context) + { + var connectionString = + $"{EnkiProblemsMongoDbFixture.GetConnectionString().EnsureEndsWith('/')}Db_{Guid.NewGuid():N}?authSource=admin"; + + Configure(options => + { + options.ConnectionStrings.Default = connectionString; + }); + } +} diff --git a/enki-problems/test/EnkiProblems.TestBase/EnkiProblems.TestBase.csproj b/enki-problems/test/EnkiProblems.TestBase/EnkiProblems.TestBase.csproj new file mode 100644 index 0000000..cf470d6 --- /dev/null +++ b/enki-problems/test/EnkiProblems.TestBase/EnkiProblems.TestBase.csproj @@ -0,0 +1,31 @@ + + + + + + net7.0 + enable + EnkiProblems + + + + + + + + + + + + + + all + runtime; build; native; contentfiles; analyzers + + + + + + + + diff --git a/enki-problems/test/EnkiProblems.TestBase/EnkiProblemsTestBase.cs b/enki-problems/test/EnkiProblems.TestBase/EnkiProblemsTestBase.cs new file mode 100644 index 0000000..e057c37 --- /dev/null +++ b/enki-problems/test/EnkiProblems.TestBase/EnkiProblemsTestBase.cs @@ -0,0 +1,66 @@ +using System; +using System.Threading.Tasks; +using Microsoft.Extensions.DependencyInjection; +using Volo.Abp; +using Volo.Abp.Modularity; +using Volo.Abp.Testing; +using Volo.Abp.Uow; + +namespace EnkiProblems; + +/* All test classes are derived from this class, directly or indirectly. + */ +public abstract class EnkiProblemsTestBase : AbpIntegratedTest + where TStartupModule : IAbpModule +{ + protected override void SetAbpApplicationCreationOptions(AbpApplicationCreationOptions options) + { + options.UseAutofac(); + } + + protected virtual Task WithUnitOfWorkAsync(Func func) + { + return WithUnitOfWorkAsync(new AbpUnitOfWorkOptions(), func); + } + + protected virtual async Task WithUnitOfWorkAsync( + AbpUnitOfWorkOptions options, + Func action + ) + { + using (var scope = ServiceProvider.CreateScope()) + { + var uowManager = scope.ServiceProvider.GetRequiredService(); + + using (var uow = uowManager.Begin(options)) + { + await action(); + + await uow.CompleteAsync(); + } + } + } + + protected virtual Task WithUnitOfWorkAsync(Func> func) + { + return WithUnitOfWorkAsync(new AbpUnitOfWorkOptions(), func); + } + + protected virtual async Task WithUnitOfWorkAsync( + AbpUnitOfWorkOptions options, + Func> func + ) + { + using (var scope = ServiceProvider.CreateScope()) + { + var uowManager = scope.ServiceProvider.GetRequiredService(); + + using (var uow = uowManager.Begin(options)) + { + var result = await func(); + await uow.CompleteAsync(); + return result; + } + } + } +} diff --git a/enki-problems/test/EnkiProblems.TestBase/EnkiProblemsTestBaseModule.cs b/enki-problems/test/EnkiProblems.TestBase/EnkiProblemsTestBaseModule.cs new file mode 100644 index 0000000..c680dc6 --- /dev/null +++ b/enki-problems/test/EnkiProblems.TestBase/EnkiProblemsTestBaseModule.cs @@ -0,0 +1,47 @@ +using Microsoft.Extensions.DependencyInjection; +using Volo.Abp; +using Volo.Abp.Authorization; +using Volo.Abp.Autofac; +using Volo.Abp.BackgroundJobs; +using Volo.Abp.Data; +using Volo.Abp.Modularity; +using Volo.Abp.Threading; + +namespace EnkiProblems; + +[DependsOn( + typeof(AbpAutofacModule), + typeof(AbpTestBaseModule), + typeof(AbpAuthorizationModule), + typeof(EnkiProblemsDomainModule) +)] +public class EnkiProblemsTestBaseModule : AbpModule +{ + public override void PreConfigureServices(ServiceConfigurationContext context) { } + + public override void ConfigureServices(ServiceConfigurationContext context) + { + Configure(options => + { + options.IsJobExecutionEnabled = false; + }); + + context.Services.AddAlwaysAllowAuthorization(); + } + + public override void OnApplicationInitialization(ApplicationInitializationContext context) + { + SeedTestData(context); + } + + private static void SeedTestData(ApplicationInitializationContext context) + { + AsyncHelper.RunSync(async () => + { + using (var scope = context.ServiceProvider.CreateScope()) + { + await scope.ServiceProvider.GetRequiredService().SeedAsync(); + } + }); + } +} diff --git a/enki-problems/test/EnkiProblems.TestBase/EnkiProblemsTestConsts.cs b/enki-problems/test/EnkiProblems.TestBase/EnkiProblemsTestConsts.cs new file mode 100644 index 0000000..57674db --- /dev/null +++ b/enki-problems/test/EnkiProblems.TestBase/EnkiProblemsTestConsts.cs @@ -0,0 +1,6 @@ +namespace EnkiProblems; + +public static class EnkiProblemsTestConsts +{ + public const string CollectionDefinitionName = "EnkiProblems collection"; +} diff --git a/enki-problems/test/EnkiProblems.TestBase/EnkiProblemsTestData.cs b/enki-problems/test/EnkiProblems.TestBase/EnkiProblemsTestData.cs new file mode 100644 index 0000000..861f4cf --- /dev/null +++ b/enki-problems/test/EnkiProblems.TestBase/EnkiProblemsTestData.cs @@ -0,0 +1,115 @@ +using System; +using EnkiProblems.Problems; +using Volo.Abp.DependencyInjection; + +namespace EnkiProblems; + +public class EnkiProblemsTestData : ISingletonDependency +{ + /* PROBLEMS */ + public Guid ProblemId1 { get; } = Guid.Parse("00000000-0000-0000-0000-000000000001"); + + public string ProblemName1 { get; } = "Problem Name 1"; + + public string ProblemBrief1 { get; } = "Problem Brief 1"; + + public string ProblemDescription1 { get; } = "Problem Description 1"; + + public string ProblemSourceName1 { get; } = "Problem Source Name 1"; + + public string ProblemAuthorName1 { get; } = "Problem Author Name 1"; + + public Guid ProblemProposerId1 { get; } = Guid.Parse("00000000-0000-0000-0000-000000000002"); + + public int ProblemTimeLimit1 { get; } = 1; + + public int ProblemStackMemoryLimit1 { get; } = 1; + + public int ProblemTotalMemoryLimit1 { get; } = 1; + + public int ProblemNumberOfTests1 { get; } = 1; + + public IoTypeEnum ProblemIoType1 { get; } = IoTypeEnum.Standard; + + public DifficultyEnum ProblemDifficulty1 { get; } = DifficultyEnum.Easy; + + public Guid ProblemId2 { get; } = Guid.Parse("00000000-0000-0000-0000-000000000002"); + + public string ProblemName2 { get; } = "Problem Name 2"; + + public string ProblemBrief2 { get; } = "Problem Brief 2"; + + public string ProblemDescription2 { get; } = "Problem Description 2"; + + public string ProblemSourceName2 { get; } = "Problem Source Name 2"; + + public string ProblemAuthorName2 { get; } = "Problem Author Name 2"; + + public Guid ProblemProposerId2 { get; } = Guid.Parse("00000000-0000-0000-0000-000000000002"); + + public int ProblemTimeLimit2 { get; } = 2; + + public int ProblemStackMemoryLimit2 { get; } = 2; + + public int ProblemTotalMemoryLimit2 { get; } = 2; + + public int ProblemNumberOfTests2 { get; } = 2; + + public IoTypeEnum ProblemIoType2 { get; } = IoTypeEnum.Standard; + + public DifficultyEnum ProblemDifficulty2 { get; } = DifficultyEnum.Medium; + + public Guid ProblemId3 { get; } = Guid.Parse("00000000-0000-0000-0000-000000000003"); + + public string ProblemName3 { get; } = "Problem Name 3"; + + public string ProblemBrief3 { get; } = "Problem Brief 3"; + + public string ProblemDescription3 { get; } = "Problem Description 3"; + + public string ProblemSourceName3 { get; } = "Problem Source Name 3"; + + public string ProblemAuthorName3 { get; } = "Problem Author Name 3"; + + public Guid ProblemProposerId3 { get; } = Guid.Parse("00000000-0000-0000-0000-000000000003"); + + public int ProblemTimeLimit3 { get; } = 3; + + public int ProblemStackMemoryLimit3 { get; } = 3; + + public int ProblemTotalMemoryLimit3 { get; } = 3; + + public int ProblemNumberOfTests3 { get; } = 3; + + public IoTypeEnum ProblemIoType3 { get; } = IoTypeEnum.Standard; + + public DifficultyEnum ProblemDifficulty3 { get; } = DifficultyEnum.Easy; + + /* USERS */ + public Guid NormalUserId { get; } = Guid.Parse("00000000-0000-0000-0000-000000000001"); + + public string[] NormalUserRoles { get; } = { "" }; + + public Guid ProposerUserId1 { get; } = Guid.Parse("00000000-0000-0000-0000-000000000002"); + + public Guid ProposerUserId2 { get; } = Guid.Parse("00000000-0000-0000-0000-000000000003"); + + public string[] ProposerUserRoles { get; } = { "", "Proposer" }; + + /* TESTS */ + public int TestId1 { get; } = 1; + + public int TestId2 { get; } = 2; + + public int TestScore1 { get; } = 100; + + public int TestScore2 { get; } = 100; + + public int LimitExceedingTestScore { get; } = 200; + + public byte[] TestArchiveBytes1 { get; } = { 1, 2, 3 }; + + public string TestInputLink1 { get; } = "https://download-link.com/input.in"; + + public string TestOutputLink1 { get; } = "https://download-link.com/output.out"; +} diff --git a/enki-problems/test/EnkiProblems.TestBase/EnkiProblemsTestDataSeedContributor.cs b/enki-problems/test/EnkiProblems.TestBase/EnkiProblemsTestDataSeedContributor.cs new file mode 100644 index 0000000..dd7fa49 --- /dev/null +++ b/enki-problems/test/EnkiProblems.TestBase/EnkiProblemsTestDataSeedContributor.cs @@ -0,0 +1,72 @@ +using System; +using System.Threading.Tasks; +using EnkiProblems.Problems; +using Volo.Abp.Data; +using Volo.Abp.DependencyInjection; +using Volo.Abp.Domain.Repositories; + +namespace EnkiProblems; + +public class EnkiProblemsTestDataSeedContributor : IDataSeedContributor, ITransientDependency +{ + private readonly EnkiProblemsTestData _testData; + private readonly IRepository _problemRepository; + + public EnkiProblemsTestDataSeedContributor( + EnkiProblemsTestData testData, + IRepository problemRepository + ) + { + _testData = testData; + _problemRepository = problemRepository; + } + + public async Task SeedAsync(DataSeedContext context) + { + /* Seed additional test data... */ + + await _problemRepository.InsertAsync( + new Problem( + _testData.ProblemId1, + _testData.ProblemName1, + _testData.ProblemBrief1, + _testData.ProblemDescription1, + _testData.ProblemSourceName1, + _testData.ProblemAuthorName1, + _testData.ProblemProposerId1, + _testData.ProblemTimeLimit1, + _testData.ProblemTotalMemoryLimit1, + _testData.ProblemStackMemoryLimit1, + _testData.ProblemIoType1, + _testData.ProblemDifficulty1, + new[] + { + new Test( + _testData.TestId1, + _testData.ProblemId1, + _testData.TestScore1, + _testData.TestInputLink1, + _testData.TestOutputLink1 + ) + } + ) + ); + + await _problemRepository.InsertAsync( + new Problem( + _testData.ProblemId3, + _testData.ProblemName3, + _testData.ProblemBrief3, + _testData.ProblemDescription3, + _testData.ProblemSourceName3, + _testData.ProblemAuthorName3, + _testData.ProblemProposerId3, + _testData.ProblemTimeLimit3, + _testData.ProblemTotalMemoryLimit3, + _testData.ProblemStackMemoryLimit3, + _testData.ProblemIoType3, + _testData.ProblemDifficulty3 + ) + ); + } +} diff --git a/enki-problems/test/EnkiProblems.TestBase/Security/FakeCurrentPrincipalAccessor.cs b/enki-problems/test/EnkiProblems.TestBase/Security/FakeCurrentPrincipalAccessor.cs new file mode 100644 index 0000000..8c4d937 --- /dev/null +++ b/enki-problems/test/EnkiProblems.TestBase/Security/FakeCurrentPrincipalAccessor.cs @@ -0,0 +1,29 @@ +using System.Collections.Generic; +using System.Security.Claims; +using Volo.Abp.DependencyInjection; +using Volo.Abp.Security.Claims; + +namespace EnkiProblems.Security; + +[Dependency(ReplaceServices = true)] +public class FakeCurrentPrincipalAccessor : ThreadCurrentPrincipalAccessor +{ + protected override ClaimsPrincipal GetClaimsPrincipal() + { + return GetPrincipal(); + } + + private ClaimsPrincipal GetPrincipal() + { + return new ClaimsPrincipal( + new ClaimsIdentity( + new List + { + new Claim(AbpClaimTypes.UserId, "2e701e62-0953-4dd3-910b-dc6cc93ccb0d"), + new Claim(AbpClaimTypes.UserName, "admin"), + new Claim(AbpClaimTypes.Email, "admin@abp.io") + } + ) + ); + } +} diff --git a/hermes-tests/.dockerignore b/hermes-tests/.dockerignore new file mode 100644 index 0000000..1f3ec55 --- /dev/null +++ b/hermes-tests/.dockerignore @@ -0,0 +1,13 @@ +.vscode/ +.idea/ +.dart_tool/ +.fvm* +test/ +temp/test/ +*.md +config-template.json +config.json +.dockerignore +Dockerfile* +.env* +Makefile \ No newline at end of file diff --git a/hermes-tests/.env.template b/hermes-tests/.env.template new file mode 100644 index 0000000..e5a72d3 --- /dev/null +++ b/hermes-tests/.env.template @@ -0,0 +1 @@ +HERMES_CONFIG= \ No newline at end of file diff --git a/hermes-tests/.gitignore b/hermes-tests/.gitignore index b88c693..fe4bde3 100644 --- a/hermes-tests/.gitignore +++ b/hermes-tests/.gitignore @@ -3,6 +3,11 @@ .dart_tool/ .idea/ .vscode/ +#temp/ +logs/ config.json -temp/ -logs/ \ No newline at end of file +.env + +# FVM Version Cache +.fvm/ +.fvmrc \ No newline at end of file diff --git a/hermes-tests/CHANGELOG.md b/hermes-tests/CHANGELOG.md index effe43c..0f6b265 100644 --- a/hermes-tests/CHANGELOG.md +++ b/hermes-tests/CHANGELOG.md @@ -1,3 +1,12 @@ +# Changelog + +## 1.0.0 (2024-09-21) + + +### Features + +* **cors:** enable cors policy for anubis, enki and quetzalcoatl ([6652dbc](https://github.com/Pantheonix/Asgard/commit/6652dbcdbfaceeb94c36369423fecb7b2682d9d5)) + ## 1.0.0 - Initial version. diff --git a/hermes-tests/Dockerfile b/hermes-tests/Dockerfile new file mode 100644 index 0000000..7eb256b --- /dev/null +++ b/hermes-tests/Dockerfile @@ -0,0 +1,33 @@ +FROM dart:2.19.2 AS build +LABEL stage=builder + +WORKDIR /app +ENV PATH="${PATH}:${HOME}/.pub-cache/bin" + +# Resolve app dependencies. +COPY pubspec.* ./ +RUN dart pub get + +# Copy app source code. +COPY . . + +# Install protoc and generate gRPC code. +RUN apt-get update && apt-get install -y protobuf-compiler +RUN dart pub global activate protoc_plugin 20.0.1 +RUN protoc --dart_out=grpc:lib/api/core --plugin=protoc-gen-dart=$HOME/.pub-cache/bin/protoc-gen-dart -Iprotos protos/*.proto + +# Generate dart code. +RUN dart run build_runner build --delete-conflicting-outputs + +# Ensure packages are still up-to-date if anything has changed and AOT compile. +RUN dart pub get --offline +RUN dart compile exe bin/hermes_tests.dart -o server + +# Build minimal serving image from AOT-compiled `/server` and required system +# libraries and configuration files stored in `/runtime/` from the build stage. +FROM alpine:3.18 +COPY --from=build /runtime/ / +COPY --from=build /app/server /app/server + +# Start the server. +CMD ["/app/server"] \ No newline at end of file diff --git a/hermes-tests/Makefile b/hermes-tests/Makefile index 6a7d415..5cb6c04 100644 --- a/hermes-tests/Makefile +++ b/hermes-tests/Makefile @@ -4,3 +4,6 @@ pbgen: wgen: dart run build_runner watch --delete-conflicting-outputs + +drun: + dapr run --app-id hermes-tests --app-port 5212 --dapr-grpc-port 50002 -- dart run bin/hermes_tests.dart diff --git a/hermes-tests/bin/client.dart b/hermes-tests/bin/client.dart index 800bb36..12e3a06 100644 --- a/hermes-tests/bin/client.dart +++ b/hermes-tests/bin/client.dart @@ -1,5 +1,3 @@ -import 'dart:io'; - import 'package:hermes_tests/api/client/hermes_grpc_client.dart'; import 'package:hermes_tests/api/core/hermes.pb.dart'; import 'package:hermes_tests/di/config/config.dart'; @@ -8,7 +6,7 @@ import 'package:hermes_tests/domain/core/file_log_output.dart'; import 'package:logger/logger.dart'; Future main(List arguments) async { - final config = Config.fromJsonFile('config.json'); + final config = Config.fromEnv('HERMES_CONFIG'); final serverConfig = ServerConfig.fromJson(config.dev); final logger = Logger( @@ -36,14 +34,31 @@ Future main(List arguments) async { // } // download - for (int i = 1; i <= 10; i++) { - final response = await client.downloadTest( - DownloadRequest() - ..problemId = 'dyson' - ..testId = '$i', - ); - logger.d(response); - } + // for (int i = 1; i <= 10; i++) { + // final response = await client.downloadTest( + // DownloadRequest() + // ..problemId = 'dyson' + // ..testId = '$i', + // ); + // logger.d(response); + // } + + // delete + // final response = await client.deleteTest( + // DeleteTestRequest() + // ..problemId = 'stardust' + // ..testId = '10', + // ); + // logger.d(response); + + // get download link + final response = await client.getDownloadLinkForTest( + GetDownloadLinkForTestRequest() + ..problemId = 'stardust' + ..testId = '9', + ); + logger.d(response); + print(response); await client.close(); } diff --git a/hermes-tests/bin/hermes_tests.dart b/hermes-tests/bin/hermes_tests.dart index a1b09a9..000bd2e 100644 --- a/hermes-tests/bin/hermes_tests.dart +++ b/hermes-tests/bin/hermes_tests.dart @@ -22,6 +22,23 @@ Future main(List arguments) async { final config = getIt(); + // create local folders/files if they don't exist + if (!await FileManager.localDirectoryExists( + config.tempLocalArchivedTestFolder)) { + await FileManager.createLocalDirectory( + config.tempLocalArchivedTestFolder); + } + + if (!await FileManager.localDirectoryExists( + config.tempLocalUnarchivedTestFolder)) { + await FileManager.createLocalDirectory( + config.tempLocalUnarchivedTestFolder); + } + + if (!await FileManager.localFileExists(config.logOutputFilePath)) { + await FileManager.createLocalFile(config.logOutputFilePath); + } + // define a cron job which will delete all files // from temp local archived and unarchived folders @@ -45,6 +62,7 @@ Future main(List arguments) async { logger, ); await hermesServer.start(); + print("Server started."); } catch (e) { print(e); } finally { diff --git a/hermes-tests/lib/api/client/hermes_grpc_client.dart b/hermes-tests/lib/api/client/hermes_grpc_client.dart index a12ea3b..58e5e2f 100644 --- a/hermes-tests/lib/api/client/hermes_grpc_client.dart +++ b/hermes-tests/lib/api/client/hermes_grpc_client.dart @@ -124,6 +124,16 @@ class HermesGrpcClient { ); } + Future deleteTest( + hermes.DeleteTestRequest request) async { + return await _client.deleteTest(request); + } + + Future getDownloadLinkForTest( + hermes.GetDownloadLinkForTestRequest request) async { + return await _client.getDownloadLinkForTest(request); + } + Future close() async { await _channel.shutdown(); } diff --git a/hermes-tests/lib/api/core/hermes.pb.dart b/hermes-tests/lib/api/core/hermes.pb.dart index ef46f2f..9f942ed 100644 --- a/hermes-tests/lib/api/core/hermes.pb.dart +++ b/hermes-tests/lib/api/core/hermes.pb.dart @@ -301,6 +301,254 @@ class DownloadResponse extends $pb.GeneratedMessage { StatusResponse ensureStatus() => $_ensure(2); } +class GetDownloadLinkForTestRequest extends $pb.GeneratedMessage { + static final $pb.BuilderInfo _i = $pb.BuilderInfo(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'GetDownloadLinkForTestRequest', package: const $pb.PackageName(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'asgard.hermes'), createEmptyInstance: create) + ..aOS(1, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'problemId') + ..aOS(2, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'testId') + ..hasRequiredFields = false + ; + + GetDownloadLinkForTestRequest._() : super(); + factory GetDownloadLinkForTestRequest({ + $core.String? problemId, + $core.String? testId, + }) { + final _result = create(); + if (problemId != null) { + _result.problemId = problemId; + } + if (testId != null) { + _result.testId = testId; + } + return _result; + } + factory GetDownloadLinkForTestRequest.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory GetDownloadLinkForTestRequest.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + GetDownloadLinkForTestRequest clone() => GetDownloadLinkForTestRequest()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + GetDownloadLinkForTestRequest copyWith(void Function(GetDownloadLinkForTestRequest) updates) => super.copyWith((message) => updates(message as GetDownloadLinkForTestRequest)) as GetDownloadLinkForTestRequest; // ignore: deprecated_member_use + $pb.BuilderInfo get info_ => _i; + @$core.pragma('dart2js:noInline') + static GetDownloadLinkForTestRequest create() => GetDownloadLinkForTestRequest._(); + GetDownloadLinkForTestRequest createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static GetDownloadLinkForTestRequest getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static GetDownloadLinkForTestRequest? _defaultInstance; + + @$pb.TagNumber(1) + $core.String get problemId => $_getSZ(0); + @$pb.TagNumber(1) + set problemId($core.String v) { $_setString(0, v); } + @$pb.TagNumber(1) + $core.bool hasProblemId() => $_has(0); + @$pb.TagNumber(1) + void clearProblemId() => clearField(1); + + @$pb.TagNumber(2) + $core.String get testId => $_getSZ(1); + @$pb.TagNumber(2) + set testId($core.String v) { $_setString(1, v); } + @$pb.TagNumber(2) + $core.bool hasTestId() => $_has(1); + @$pb.TagNumber(2) + void clearTestId() => clearField(2); +} + +class GetDownloadLinkForTestResponse extends $pb.GeneratedMessage { + static final $pb.BuilderInfo _i = $pb.BuilderInfo(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'GetDownloadLinkForTestResponse', package: const $pb.PackageName(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'asgard.hermes'), createEmptyInstance: create) + ..aOS(1, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'inputLink') + ..aOS(2, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'outputLink') + ..aOM(3, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'status', subBuilder: StatusResponse.create) + ..hasRequiredFields = false + ; + + GetDownloadLinkForTestResponse._() : super(); + factory GetDownloadLinkForTestResponse({ + $core.String? inputLink, + $core.String? outputLink, + StatusResponse? status, + }) { + final _result = create(); + if (inputLink != null) { + _result.inputLink = inputLink; + } + if (outputLink != null) { + _result.outputLink = outputLink; + } + if (status != null) { + _result.status = status; + } + return _result; + } + factory GetDownloadLinkForTestResponse.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory GetDownloadLinkForTestResponse.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + GetDownloadLinkForTestResponse clone() => GetDownloadLinkForTestResponse()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + GetDownloadLinkForTestResponse copyWith(void Function(GetDownloadLinkForTestResponse) updates) => super.copyWith((message) => updates(message as GetDownloadLinkForTestResponse)) as GetDownloadLinkForTestResponse; // ignore: deprecated_member_use + $pb.BuilderInfo get info_ => _i; + @$core.pragma('dart2js:noInline') + static GetDownloadLinkForTestResponse create() => GetDownloadLinkForTestResponse._(); + GetDownloadLinkForTestResponse createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static GetDownloadLinkForTestResponse getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static GetDownloadLinkForTestResponse? _defaultInstance; + + @$pb.TagNumber(1) + $core.String get inputLink => $_getSZ(0); + @$pb.TagNumber(1) + set inputLink($core.String v) { $_setString(0, v); } + @$pb.TagNumber(1) + $core.bool hasInputLink() => $_has(0); + @$pb.TagNumber(1) + void clearInputLink() => clearField(1); + + @$pb.TagNumber(2) + $core.String get outputLink => $_getSZ(1); + @$pb.TagNumber(2) + set outputLink($core.String v) { $_setString(1, v); } + @$pb.TagNumber(2) + $core.bool hasOutputLink() => $_has(1); + @$pb.TagNumber(2) + void clearOutputLink() => clearField(2); + + @$pb.TagNumber(3) + StatusResponse get status => $_getN(2); + @$pb.TagNumber(3) + set status(StatusResponse v) { setField(3, v); } + @$pb.TagNumber(3) + $core.bool hasStatus() => $_has(2); + @$pb.TagNumber(3) + void clearStatus() => clearField(3); + @$pb.TagNumber(3) + StatusResponse ensureStatus() => $_ensure(2); +} + +class DeleteTestRequest extends $pb.GeneratedMessage { + static final $pb.BuilderInfo _i = $pb.BuilderInfo(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'DeleteTestRequest', package: const $pb.PackageName(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'asgard.hermes'), createEmptyInstance: create) + ..aOS(1, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'problemId') + ..aOS(2, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'testId') + ..hasRequiredFields = false + ; + + DeleteTestRequest._() : super(); + factory DeleteTestRequest({ + $core.String? problemId, + $core.String? testId, + }) { + final _result = create(); + if (problemId != null) { + _result.problemId = problemId; + } + if (testId != null) { + _result.testId = testId; + } + return _result; + } + factory DeleteTestRequest.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory DeleteTestRequest.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + DeleteTestRequest clone() => DeleteTestRequest()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + DeleteTestRequest copyWith(void Function(DeleteTestRequest) updates) => super.copyWith((message) => updates(message as DeleteTestRequest)) as DeleteTestRequest; // ignore: deprecated_member_use + $pb.BuilderInfo get info_ => _i; + @$core.pragma('dart2js:noInline') + static DeleteTestRequest create() => DeleteTestRequest._(); + DeleteTestRequest createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static DeleteTestRequest getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static DeleteTestRequest? _defaultInstance; + + @$pb.TagNumber(1) + $core.String get problemId => $_getSZ(0); + @$pb.TagNumber(1) + set problemId($core.String v) { $_setString(0, v); } + @$pb.TagNumber(1) + $core.bool hasProblemId() => $_has(0); + @$pb.TagNumber(1) + void clearProblemId() => clearField(1); + + @$pb.TagNumber(2) + $core.String get testId => $_getSZ(1); + @$pb.TagNumber(2) + set testId($core.String v) { $_setString(1, v); } + @$pb.TagNumber(2) + $core.bool hasTestId() => $_has(1); + @$pb.TagNumber(2) + void clearTestId() => clearField(2); +} + +class DeleteTestResponse extends $pb.GeneratedMessage { + static final $pb.BuilderInfo _i = $pb.BuilderInfo(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'DeleteTestResponse', package: const $pb.PackageName(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'asgard.hermes'), createEmptyInstance: create) + ..aOM(1, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'status', subBuilder: StatusResponse.create) + ..hasRequiredFields = false + ; + + DeleteTestResponse._() : super(); + factory DeleteTestResponse({ + StatusResponse? status, + }) { + final _result = create(); + if (status != null) { + _result.status = status; + } + return _result; + } + factory DeleteTestResponse.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); + factory DeleteTestResponse.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' + 'Will be removed in next major version') + DeleteTestResponse clone() => DeleteTestResponse()..mergeFromMessage(this); + @$core.Deprecated( + 'Using this can add significant overhead to your binary. ' + 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' + 'Will be removed in next major version') + DeleteTestResponse copyWith(void Function(DeleteTestResponse) updates) => super.copyWith((message) => updates(message as DeleteTestResponse)) as DeleteTestResponse; // ignore: deprecated_member_use + $pb.BuilderInfo get info_ => _i; + @$core.pragma('dart2js:noInline') + static DeleteTestResponse create() => DeleteTestResponse._(); + DeleteTestResponse createEmptyInstance() => create(); + static $pb.PbList createRepeated() => $pb.PbList(); + @$core.pragma('dart2js:noInline') + static DeleteTestResponse getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static DeleteTestResponse? _defaultInstance; + + @$pb.TagNumber(1) + StatusResponse get status => $_getN(0); + @$pb.TagNumber(1) + set status(StatusResponse v) { setField(1, v); } + @$pb.TagNumber(1) + $core.bool hasStatus() => $_has(0); + @$pb.TagNumber(1) + void clearStatus() => clearField(1); + @$pb.TagNumber(1) + StatusResponse ensureStatus() => $_ensure(0); +} + class Metadata extends $pb.GeneratedMessage { static final $pb.BuilderInfo _i = $pb.BuilderInfo(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'Metadata', package: const $pb.PackageName(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'asgard.hermes'), createEmptyInstance: create) ..aOS(1, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'problemId') diff --git a/hermes-tests/lib/api/core/hermes.pbgrpc.dart b/hermes-tests/lib/api/core/hermes.pbgrpc.dart index 24ed6f6..9cf562b 100644 --- a/hermes-tests/lib/api/core/hermes.pbgrpc.dart +++ b/hermes-tests/lib/api/core/hermes.pbgrpc.dart @@ -25,6 +25,18 @@ class HermesTestsServiceClient extends $grpc.Client { ($0.DownloadRequest value) => value.writeToBuffer(), ($core.List<$core.int> value) => $0.DownloadResponse.fromBuffer(value)); + static final _$getDownloadLinkForTest = $grpc.ClientMethod< + $0.GetDownloadLinkForTestRequest, $0.GetDownloadLinkForTestResponse>( + '/asgard.hermes.HermesTestsService/GetDownloadLinkForTest', + ($0.GetDownloadLinkForTestRequest value) => value.writeToBuffer(), + ($core.List<$core.int> value) => + $0.GetDownloadLinkForTestResponse.fromBuffer(value)); + static final _$deleteTest = + $grpc.ClientMethod<$0.DeleteTestRequest, $0.DeleteTestResponse>( + '/asgard.hermes.HermesTestsService/DeleteTest', + ($0.DeleteTestRequest value) => value.writeToBuffer(), + ($core.List<$core.int> value) => + $0.DeleteTestResponse.fromBuffer(value)); HermesTestsServiceClient($grpc.ClientChannel channel, {$grpc.CallOptions? options, @@ -44,6 +56,19 @@ class HermesTestsServiceClient extends $grpc.Client { _$downloadTest, $async.Stream.fromIterable([request]), options: options); } + + $grpc.ResponseFuture<$0.GetDownloadLinkForTestResponse> + getDownloadLinkForTest($0.GetDownloadLinkForTestRequest request, + {$grpc.CallOptions? options}) { + return $createUnaryCall(_$getDownloadLinkForTest, request, + options: options); + } + + $grpc.ResponseFuture<$0.DeleteTestResponse> deleteTest( + $0.DeleteTestRequest request, + {$grpc.CallOptions? options}) { + return $createUnaryCall(_$deleteTest, request, options: options); + } } abstract class HermesTestsServiceBase extends $grpc.Service { @@ -64,6 +89,22 @@ abstract class HermesTestsServiceBase extends $grpc.Service { true, ($core.List<$core.int> value) => $0.DownloadRequest.fromBuffer(value), ($0.DownloadResponse value) => value.writeToBuffer())); + $addMethod($grpc.ServiceMethod<$0.GetDownloadLinkForTestRequest, + $0.GetDownloadLinkForTestResponse>( + 'GetDownloadLinkForTest', + getDownloadLinkForTest_Pre, + false, + false, + ($core.List<$core.int> value) => + $0.GetDownloadLinkForTestRequest.fromBuffer(value), + ($0.GetDownloadLinkForTestResponse value) => value.writeToBuffer())); + $addMethod($grpc.ServiceMethod<$0.DeleteTestRequest, $0.DeleteTestResponse>( + 'DeleteTest', + deleteTest_Pre, + false, + false, + ($core.List<$core.int> value) => $0.DeleteTestRequest.fromBuffer(value), + ($0.DeleteTestResponse value) => value.writeToBuffer())); } $async.Stream<$0.DownloadResponse> downloadTest_Pre($grpc.ServiceCall call, @@ -71,8 +112,23 @@ abstract class HermesTestsServiceBase extends $grpc.Service { yield* downloadTest(call, await request); } + $async.Future<$0.GetDownloadLinkForTestResponse> getDownloadLinkForTest_Pre( + $grpc.ServiceCall call, + $async.Future<$0.GetDownloadLinkForTestRequest> request) async { + return getDownloadLinkForTest(call, await request); + } + + $async.Future<$0.DeleteTestResponse> deleteTest_Pre($grpc.ServiceCall call, + $async.Future<$0.DeleteTestRequest> request) async { + return deleteTest(call, await request); + } + $async.Future<$0.UploadResponse> uploadTest( $grpc.ServiceCall call, $async.Stream<$0.UploadRequest> request); $async.Stream<$0.DownloadResponse> downloadTest( $grpc.ServiceCall call, $0.DownloadRequest request); + $async.Future<$0.GetDownloadLinkForTestResponse> getDownloadLinkForTest( + $grpc.ServiceCall call, $0.GetDownloadLinkForTestRequest request); + $async.Future<$0.DeleteTestResponse> deleteTest( + $grpc.ServiceCall call, $0.DeleteTestRequest request); } diff --git a/hermes-tests/lib/api/core/hermes.pbjson.dart b/hermes-tests/lib/api/core/hermes.pbjson.dart index e224763..42d081a 100644 --- a/hermes-tests/lib/api/core/hermes.pbjson.dart +++ b/hermes-tests/lib/api/core/hermes.pbjson.dart @@ -70,6 +70,50 @@ const DownloadResponse$json = const { /// Descriptor for `DownloadResponse`. Decode as a `google.protobuf.DescriptorProto`. final $typed_data.Uint8List downloadResponseDescriptor = $convert.base64Decode('ChBEb3dubG9hZFJlc3BvbnNlEjUKCG1ldGFkYXRhGAEgASgLMhcuYXNnYXJkLmhlcm1lcy5NZXRhZGF0YUgAUghtZXRhZGF0YRIsCgVjaHVuaxgCIAEoCzIULmFzZ2FyZC5oZXJtZXMuQ2h1bmtIAFIFY2h1bmsSNwoGc3RhdHVzGAMgASgLMh0uYXNnYXJkLmhlcm1lcy5TdGF0dXNSZXNwb25zZUgAUgZzdGF0dXNCCAoGcGFja2V0'); +@$core.Deprecated('Use getDownloadLinkForTestRequestDescriptor instead') +const GetDownloadLinkForTestRequest$json = const { + '1': 'GetDownloadLinkForTestRequest', + '2': const [ + const {'1': 'problem_id', '3': 1, '4': 1, '5': 9, '10': 'problemId'}, + const {'1': 'test_id', '3': 2, '4': 1, '5': 9, '10': 'testId'}, + ], +}; + +/// Descriptor for `GetDownloadLinkForTestRequest`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List getDownloadLinkForTestRequestDescriptor = $convert.base64Decode('Ch1HZXREb3dubG9hZExpbmtGb3JUZXN0UmVxdWVzdBIdCgpwcm9ibGVtX2lkGAEgASgJUglwcm9ibGVtSWQSFwoHdGVzdF9pZBgCIAEoCVIGdGVzdElk'); +@$core.Deprecated('Use getDownloadLinkForTestResponseDescriptor instead') +const GetDownloadLinkForTestResponse$json = const { + '1': 'GetDownloadLinkForTestResponse', + '2': const [ + const {'1': 'input_link', '3': 1, '4': 1, '5': 9, '10': 'inputLink'}, + const {'1': 'output_link', '3': 2, '4': 1, '5': 9, '10': 'outputLink'}, + const {'1': 'status', '3': 3, '4': 1, '5': 11, '6': '.asgard.hermes.StatusResponse', '10': 'status'}, + ], +}; + +/// Descriptor for `GetDownloadLinkForTestResponse`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List getDownloadLinkForTestResponseDescriptor = $convert.base64Decode('Ch5HZXREb3dubG9hZExpbmtGb3JUZXN0UmVzcG9uc2USHQoKaW5wdXRfbGluaxgBIAEoCVIJaW5wdXRMaW5rEh8KC291dHB1dF9saW5rGAIgASgJUgpvdXRwdXRMaW5rEjUKBnN0YXR1cxgDIAEoCzIdLmFzZ2FyZC5oZXJtZXMuU3RhdHVzUmVzcG9uc2VSBnN0YXR1cw=='); +@$core.Deprecated('Use deleteTestRequestDescriptor instead') +const DeleteTestRequest$json = const { + '1': 'DeleteTestRequest', + '2': const [ + const {'1': 'problem_id', '3': 1, '4': 1, '5': 9, '10': 'problemId'}, + const {'1': 'test_id', '3': 2, '4': 1, '5': 9, '10': 'testId'}, + ], +}; + +/// Descriptor for `DeleteTestRequest`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List deleteTestRequestDescriptor = $convert.base64Decode('ChFEZWxldGVUZXN0UmVxdWVzdBIdCgpwcm9ibGVtX2lkGAEgASgJUglwcm9ibGVtSWQSFwoHdGVzdF9pZBgCIAEoCVIGdGVzdElk'); +@$core.Deprecated('Use deleteTestResponseDescriptor instead') +const DeleteTestResponse$json = const { + '1': 'DeleteTestResponse', + '2': const [ + const {'1': 'status', '3': 1, '4': 1, '5': 11, '6': '.asgard.hermes.StatusResponse', '10': 'status'}, + ], +}; + +/// Descriptor for `DeleteTestResponse`. Decode as a `google.protobuf.DescriptorProto`. +final $typed_data.Uint8List deleteTestResponseDescriptor = $convert.base64Decode('ChJEZWxldGVUZXN0UmVzcG9uc2USNQoGc3RhdHVzGAEgASgLMh0uYXNnYXJkLmhlcm1lcy5TdGF0dXNSZXNwb25zZVIGc3RhdHVz'); @$core.Deprecated('Use metadataDescriptor instead') const Metadata$json = const { '1': 'Metadata', diff --git a/hermes-tests/lib/api/server/hermes_grpc_server.dart b/hermes-tests/lib/api/server/hermes_grpc_server.dart index 5affd3e..afd5b4a 100644 --- a/hermes-tests/lib/api/server/hermes_grpc_server.dart +++ b/hermes-tests/lib/api/server/hermes_grpc_server.dart @@ -5,9 +5,11 @@ import 'package:dartz/dartz.dart'; import 'package:grpc/grpc.dart'; import 'package:hermes_tests/api/core/hermes.pb.dart'; import 'package:hermes_tests/api/core/hermes.pbgrpc.dart' as hermes; +import 'package:hermes_tests/application/use_cases/delete/delete_test_use_case.dart'; import 'package:hermes_tests/application/use_cases/download/download_test_use_case.dart'; import 'package:hermes_tests/application/use_cases/download/encode_test_use_case.dart'; import 'package:hermes_tests/application/use_cases/download/fragment_test_use_case.dart'; +import 'package:hermes_tests/application/use_cases/get_download_link/get_download_link_for_test_use_case.dart'; import 'package:hermes_tests/application/use_cases/upload/decode_test_use_case.dart'; import 'package:hermes_tests/application/use_cases/upload/defragment_test_use_case.dart'; import 'package:hermes_tests/application/use_cases/upload/upload_test_use_case.dart'; @@ -313,6 +315,74 @@ class HermesGrpcServer extends hermes.HermesTestsServiceBase { yield* responseStreamController.stream; } + @override + Future deleteTest( + ServiceCall call, DeleteTestRequest request) async { + _logger.i('Delete test method called'); + + final Either deleteResponse = await _mediator.run( + DeleteTestAsyncQuery( + testMetadata: TestMetadata.testToDelete( + problemId: request.problemId, + testId: request.testId, + fromDir: _config.remoteUnarchivedTestFolder, + inputFilename: _config.inputFilename, + outputFilename: _config.outputFilename, + ), + ), + ); + + return deleteResponse.fold( + (failure) { + _logger.e('Delete response received: $failure'); + return DeleteTestResponse() + ..status = (hermes.StatusResponse() + ..code = hermes.StatusCode.Failed + ..message = failure.message); + }, + (success) { + _logger.i('Delete response received: success'); + return DeleteTestResponse() + ..status = (hermes.StatusResponse() + ..code = hermes.StatusCode.Ok + ..message = 'Test deleted successfully'); + }, + ); + } + + @override + Future getDownloadLinkForTest( + ServiceCall call, GetDownloadLinkForTestRequest request) async { + _logger.i('Get download link for test method called'); + + final Either + getDownloadLinkResponse = await _mediator.run( + GetDownloadLinkForTestAsyncQuery( + testMetadata: TestMetadata.testToGetDownloadLinkFor( + problemId: request.problemId, + testId: request.testId, + fromDir: _config.remoteUnarchivedTestFolder, + inputFilename: _config.inputFilename, + outputFilename: _config.outputFilename, + ), + ), + ); + + return getDownloadLinkResponse.fold( + (failure) { + _logger.e('Get download link response received: $failure'); + return GetDownloadLinkForTestResponse() + ..status = (hermes.StatusResponse() + ..code = hermes.StatusCode.Failed + ..message = failure.message); + }, + (response) { + _logger.i('Get download link response received: $response'); + return response; + }, + ); + } + void initServices() { _server = Server([this]); } diff --git a/hermes-tests/lib/application/use_cases/delete/delete_test_use_case.dart b/hermes-tests/lib/application/use_cases/delete/delete_test_use_case.dart new file mode 100644 index 0000000..c40532b --- /dev/null +++ b/hermes-tests/lib/application/use_cases/delete/delete_test_use_case.dart @@ -0,0 +1,68 @@ +import 'package:cqrs_mediator/cqrs_mediator.dart'; +import 'package:dartz/dartz.dart'; +import 'package:hermes_tests/domain/entities/test_metadata.dart'; +import 'package:hermes_tests/domain/exceptions/storage_failures.dart'; +import 'package:hermes_tests/domain/interfaces/i_test_repository.dart'; +import 'package:logger/logger.dart'; +import 'package:path/path.dart' as path; + +class DeleteTestAsyncQuery extends IAsyncQuery> { + final TestMetadata testMetadata; + + DeleteTestAsyncQuery({ + required this.testMetadata, + }); +} + +class DeleteTestAsyncQueryHandler extends IAsyncQueryHandler< + Either, DeleteTestAsyncQuery> { + final ITestRepository _testRepository; + final Logger _logger; + + DeleteTestAsyncQueryHandler( + this._testRepository, + this._logger, + ); + + @override + Future> call( + DeleteTestAsyncQuery command, + ) async { + // argument guard + return command.testMetadata.maybeMap( + testToDelete: (testMetadata) async { + final testRelativePath = path.join( + testMetadata.problemId, + testMetadata.testId, + ); + _logger.i( + 'Calling Delete UseCase for test $testRelativePath...', + ); + + final deleteResponse = await _testRepository.delete(testMetadata); + + return deleteResponse.fold( + (failure) { + _logger.e( + 'Failed to delete test $testRelativePath', + ); + + return left(failure); + }, + (unit) { + _logger.i( + 'Test $testRelativePath deleted.', + ); + + return right(unit); + }, + ); + }, + orElse: () => left( + StorageFailure.unexpected( + message: 'Invalid test metadata passed to Delete UseCase.', + ), + ), + ); + } +} diff --git a/hermes-tests/lib/application/use_cases/get_download_link/get_download_link_for_test_use_case.dart b/hermes-tests/lib/application/use_cases/get_download_link/get_download_link_for_test_use_case.dart new file mode 100644 index 0000000..1409b04 --- /dev/null +++ b/hermes-tests/lib/application/use_cases/get_download_link/get_download_link_for_test_use_case.dart @@ -0,0 +1,73 @@ +import 'package:cqrs_mediator/cqrs_mediator.dart'; +import 'package:dartz/dartz.dart'; +import 'package:hermes_tests/api/core/hermes.pb.dart'; +import 'package:hermes_tests/domain/entities/test_metadata.dart'; +import 'package:hermes_tests/domain/exceptions/storage_failures.dart'; +import 'package:hermes_tests/domain/interfaces/i_test_repository.dart'; +import 'package:logger/logger.dart'; +import 'package:path/path.dart' as path; + +class GetDownloadLinkForTestAsyncQuery extends IAsyncQuery< + Either> { + final TestMetadata testMetadata; + + GetDownloadLinkForTestAsyncQuery({ + required this.testMetadata, + }); +} + +class GetDownloadLinkForTestAsyncQueryHandler extends IAsyncQueryHandler< + Either, + GetDownloadLinkForTestAsyncQuery> { + final ITestRepository _testRepository; + final Logger _logger; + + GetDownloadLinkForTestAsyncQueryHandler( + this._testRepository, + this._logger, + ); + + @override + Future> call( + GetDownloadLinkForTestAsyncQuery command) async { + // argument guard + return command.testMetadata.maybeMap( + testToGetDownloadLinkFor: (testMetadata) async { + final testRelativePath = path.join( + testMetadata.problemId, + testMetadata.testId, + ); + + _logger.i( + 'Calling GetDownloadLinkForTest UseCase for test $testRelativePath...', + ); + + final getDownloadLinkForTestResponse = + await _testRepository.getDownloadLinkForTest(testMetadata); + + return getDownloadLinkForTestResponse.fold( + (failure) { + _logger.e( + 'Failed to get download link for test $testRelativePath', + ); + + return left(failure); + }, + (getDownloadLinkForTestResponse) { + _logger.i( + 'Download link for test $testRelativePath received.', + ); + + return right(getDownloadLinkForTestResponse); + }, + ); + }, + orElse: () => left( + StorageFailure.unexpected( + message: + 'Invalid TestMetadata passed to GetDownloadLinkForTestAsyncQueryHandler', + ), + ), + ); + } +} diff --git a/hermes-tests/lib/application/use_cases/upload/decode_test_use_case.dart b/hermes-tests/lib/application/use_cases/upload/decode_test_use_case.dart index bd9694e..2657146 100644 --- a/hermes-tests/lib/application/use_cases/upload/decode_test_use_case.dart +++ b/hermes-tests/lib/application/use_cases/upload/decode_test_use_case.dart @@ -5,7 +5,6 @@ import 'package:dartz/dartz.dart'; import 'package:hermes_tests/domain/entities/test_metadata.dart'; import 'package:hermes_tests/domain/exceptions/storage_failures.dart'; import 'package:archive/archive_io.dart'; -import 'package:injectable/injectable.dart'; import 'package:logger/logger.dart'; import 'package:path/path.dart' as path; diff --git a/hermes-tests/lib/di/config/config.dart b/hermes-tests/lib/di/config/config.dart index b8827c6..61938a8 100644 --- a/hermes-tests/lib/di/config/config.dart +++ b/hermes-tests/lib/di/config/config.dart @@ -4,6 +4,12 @@ import 'dart:io'; class Config { late final Map _config; + Config.fromEnv(String key) { + _config = jsonDecode( + Platform.environment[key]!, + ); + } + Config.fromJsonFile(String path) { _config = jsonDecode( File(path).readAsStringSync(), diff --git a/hermes-tests/lib/di/injection.config.dart b/hermes-tests/lib/di/injection.config.dart index d619240..4cbe510 100644 --- a/hermes-tests/lib/di/injection.config.dart +++ b/hermes-tests/lib/di/injection.config.dart @@ -4,6 +4,10 @@ // InjectableConfigGenerator // ************************************************************************** +// ignore_for_file: unnecessary_lambdas +// ignore_for_file: lines_longer_than_80_chars +// coverage:ignore-file + // ignore_for_file: no_leading_underscores_for_library_prefixes import 'package:firebase_dart/firebase_dart.dart' as _i4; import 'package:get_it/get_it.dart' as _i1; @@ -13,10 +17,8 @@ import 'package:hermes_tests/di/injection_module.dart' as _i8; import 'package:hermes_tests/domain/interfaces/i_test_repository.dart' as _i6; import 'package:hermes_tests/infrastructure/repositories/test_repository.dart' as _i7; -import 'package:injectable/injectable.dart' - as _i2; // ignore_for_file: unnecessary_lambdas +import 'package:injectable/injectable.dart' as _i2; -// ignore_for_file: lines_longer_than_80_chars extension GetItInjectableX on _i1.GetIt { // initializes the registration of main-scope dependencies inside of GetIt _i1.GetIt init({ diff --git a/hermes-tests/lib/di/injection.dart b/hermes-tests/lib/di/injection.dart index ff5cbac..8267bce 100644 --- a/hermes-tests/lib/di/injection.dart +++ b/hermes-tests/lib/di/injection.dart @@ -1,8 +1,10 @@ import 'package:cqrs_mediator/cqrs_mediator.dart'; import 'package:get_it/get_it.dart'; +import 'package:hermes_tests/application/use_cases/delete/delete_test_use_case.dart'; import 'package:hermes_tests/application/use_cases/download/download_test_use_case.dart'; import 'package:hermes_tests/application/use_cases/download/encode_test_use_case.dart'; import 'package:hermes_tests/application/use_cases/download/fragment_test_use_case.dart'; +import 'package:hermes_tests/application/use_cases/get_download_link/get_download_link_for_test_use_case.dart'; import 'package:hermes_tests/application/use_cases/upload/decode_test_use_case.dart'; import 'package:hermes_tests/application/use_cases/upload/defragment_test_use_case.dart'; import 'package:hermes_tests/application/use_cases/upload/upload_test_use_case.dart'; @@ -82,4 +84,16 @@ Future configureDependencies(String env) async { logger, ), ); + mediator.registerHandler( + () => DeleteTestAsyncQueryHandler( + testRepository, + logger, + ), + ); + mediator.registerHandler( + () => GetDownloadLinkForTestAsyncQueryHandler( + testRepository, + logger, + ), + ); } diff --git a/hermes-tests/lib/di/injection_module.dart b/hermes-tests/lib/di/injection_module.dart index a2490a2..15a33df 100644 --- a/hermes-tests/lib/di/injection_module.dart +++ b/hermes-tests/lib/di/injection_module.dart @@ -6,7 +6,7 @@ import 'package:injectable/injectable.dart'; @module abstract class InjectionModule { @lazySingleton - Config get config => Config.fromJsonFile('config.json'); + Config get config => Config.fromEnv('HERMES_CONFIG'); @lazySingleton FirebaseConfig get firebaseConfig => FirebaseConfig.fromJson(config.firebase); diff --git a/hermes-tests/lib/domain/core/file_manager.dart b/hermes-tests/lib/domain/core/file_manager.dart index e659464..34327ff 100644 --- a/hermes-tests/lib/domain/core/file_manager.dart +++ b/hermes-tests/lib/domain/core/file_manager.dart @@ -67,4 +67,28 @@ class FileManager { yield* streamController.stream; } + + static Future createLocalDirectory(String path) async { + final Directory dir = Directory(path); + if (!dir.existsSync()) { + await dir.create(recursive: true); + } + } + + static Future localDirectoryExists(String path) async { + final Directory dir = Directory(path); + return dir.existsSync(); + } + + static Future createLocalFile(String path) async { + final File file = File(path); + if (!file.existsSync()) { + await file.create(recursive: true); + } + } + + static Future localFileExists(String path) async { + final File file = File(path); + return file.existsSync(); + } } diff --git a/hermes-tests/lib/domain/entities/test_metadata.dart b/hermes-tests/lib/domain/entities/test_metadata.dart index c23b8ab..0a7c939 100644 --- a/hermes-tests/lib/domain/entities/test_metadata.dart +++ b/hermes-tests/lib/domain/entities/test_metadata.dart @@ -59,4 +59,20 @@ class TestMetadata with _$TestMetadata { required String inputFilename, required String outputFilename, }) = TestToUpload; + + const factory TestMetadata.testToDelete({ + required String problemId, + required String testId, + required String fromDir, + required String inputFilename, + required String outputFilename, + }) = TestToDelete; + + const factory TestMetadata.testToGetDownloadLinkFor({ + required String problemId, + required String testId, + required String fromDir, + required String inputFilename, + required String outputFilename, + }) = TestToGetDownloadLinkFor; } diff --git a/hermes-tests/lib/domain/entities/test_metadata.freezed.dart b/hermes-tests/lib/domain/entities/test_metadata.freezed.dart index 58bb5e9..53c3253 100644 --- a/hermes-tests/lib/domain/entities/test_metadata.freezed.dart +++ b/hermes-tests/lib/domain/entities/test_metadata.freezed.dart @@ -56,6 +56,12 @@ mixin _$TestMetadata { required TResult Function(String problemId, String testId, String fromDir, String toDir, String inputFilename, String outputFilename) testToUpload, + required TResult Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename) + testToDelete, + required TResult Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename) + testToGetDownloadLinkFor, }) => throw _privateConstructorUsedError; @optionalTypeArgs @@ -96,6 +102,12 @@ mixin _$TestMetadata { TResult? Function(String problemId, String testId, String fromDir, String toDir, String inputFilename, String outputFilename)? testToUpload, + TResult? Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename)? + testToDelete, + TResult? Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename)? + testToGetDownloadLinkFor, }) => throw _privateConstructorUsedError; @optionalTypeArgs @@ -136,6 +148,12 @@ mixin _$TestMetadata { TResult Function(String problemId, String testId, String fromDir, String toDir, String inputFilename, String outputFilename)? testToUpload, + TResult Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename)? + testToDelete, + TResult Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename)? + testToGetDownloadLinkFor, required TResult orElse(), }) => throw _privateConstructorUsedError; @@ -147,6 +165,9 @@ mixin _$TestMetadata { required TResult Function(TestToDefragment value) testToDefragment, required TResult Function(TestToDecode value) testToDecode, required TResult Function(TestToUpload value) testToUpload, + required TResult Function(TestToDelete value) testToDelete, + required TResult Function(TestToGetDownloadLinkFor value) + testToGetDownloadLinkFor, }) => throw _privateConstructorUsedError; @optionalTypeArgs @@ -157,6 +178,8 @@ mixin _$TestMetadata { TResult? Function(TestToDefragment value)? testToDefragment, TResult? Function(TestToDecode value)? testToDecode, TResult? Function(TestToUpload value)? testToUpload, + TResult? Function(TestToDelete value)? testToDelete, + TResult? Function(TestToGetDownloadLinkFor value)? testToGetDownloadLinkFor, }) => throw _privateConstructorUsedError; @optionalTypeArgs @@ -167,6 +190,8 @@ mixin _$TestMetadata { TResult Function(TestToDefragment value)? testToDefragment, TResult Function(TestToDecode value)? testToDecode, TResult Function(TestToUpload value)? testToUpload, + TResult Function(TestToDelete value)? testToDelete, + TResult Function(TestToGetDownloadLinkFor value)? testToGetDownloadLinkFor, required TResult orElse(), }) => throw _privateConstructorUsedError; @@ -351,6 +376,12 @@ class _$TestToFragment implements TestToFragment { required TResult Function(String problemId, String testId, String fromDir, String toDir, String inputFilename, String outputFilename) testToUpload, + required TResult Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename) + testToDelete, + required TResult Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename) + testToGetDownloadLinkFor, }) { return testToFragment(problemId, testId, fromDir, archiveTypeExtension); } @@ -394,6 +425,12 @@ class _$TestToFragment implements TestToFragment { TResult? Function(String problemId, String testId, String fromDir, String toDir, String inputFilename, String outputFilename)? testToUpload, + TResult? Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename)? + testToDelete, + TResult? Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename)? + testToGetDownloadLinkFor, }) { return testToFragment?.call( problemId, testId, fromDir, archiveTypeExtension); @@ -438,6 +475,12 @@ class _$TestToFragment implements TestToFragment { TResult Function(String problemId, String testId, String fromDir, String toDir, String inputFilename, String outputFilename)? testToUpload, + TResult Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename)? + testToDelete, + TResult Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename)? + testToGetDownloadLinkFor, required TResult orElse(), }) { if (testToFragment != null) { @@ -455,6 +498,9 @@ class _$TestToFragment implements TestToFragment { required TResult Function(TestToDefragment value) testToDefragment, required TResult Function(TestToDecode value) testToDecode, required TResult Function(TestToUpload value) testToUpload, + required TResult Function(TestToDelete value) testToDelete, + required TResult Function(TestToGetDownloadLinkFor value) + testToGetDownloadLinkFor, }) { return testToFragment(this); } @@ -468,6 +514,8 @@ class _$TestToFragment implements TestToFragment { TResult? Function(TestToDefragment value)? testToDefragment, TResult? Function(TestToDecode value)? testToDecode, TResult? Function(TestToUpload value)? testToUpload, + TResult? Function(TestToDelete value)? testToDelete, + TResult? Function(TestToGetDownloadLinkFor value)? testToGetDownloadLinkFor, }) { return testToFragment?.call(this); } @@ -481,6 +529,8 @@ class _$TestToFragment implements TestToFragment { TResult Function(TestToDefragment value)? testToDefragment, TResult Function(TestToDecode value)? testToDecode, TResult Function(TestToUpload value)? testToUpload, + TResult Function(TestToDelete value)? testToDelete, + TResult Function(TestToGetDownloadLinkFor value)? testToGetDownloadLinkFor, required TResult orElse(), }) { if (testToFragment != null) { @@ -678,6 +728,12 @@ class _$TestToEncode implements TestToEncode { required TResult Function(String problemId, String testId, String fromDir, String toDir, String inputFilename, String outputFilename) testToUpload, + required TResult Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename) + testToDelete, + required TResult Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename) + testToGetDownloadLinkFor, }) { return testToEncode(problemId, testId, fromDir, toDir, archiveTypeExtension, inputFilename, outputFilename); @@ -722,6 +778,12 @@ class _$TestToEncode implements TestToEncode { TResult? Function(String problemId, String testId, String fromDir, String toDir, String inputFilename, String outputFilename)? testToUpload, + TResult? Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename)? + testToDelete, + TResult? Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename)? + testToGetDownloadLinkFor, }) { return testToEncode?.call(problemId, testId, fromDir, toDir, archiveTypeExtension, inputFilename, outputFilename); @@ -766,6 +828,12 @@ class _$TestToEncode implements TestToEncode { TResult Function(String problemId, String testId, String fromDir, String toDir, String inputFilename, String outputFilename)? testToUpload, + TResult Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename)? + testToDelete, + TResult Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename)? + testToGetDownloadLinkFor, required TResult orElse(), }) { if (testToEncode != null) { @@ -784,6 +852,9 @@ class _$TestToEncode implements TestToEncode { required TResult Function(TestToDefragment value) testToDefragment, required TResult Function(TestToDecode value) testToDecode, required TResult Function(TestToUpload value) testToUpload, + required TResult Function(TestToDelete value) testToDelete, + required TResult Function(TestToGetDownloadLinkFor value) + testToGetDownloadLinkFor, }) { return testToEncode(this); } @@ -797,6 +868,8 @@ class _$TestToEncode implements TestToEncode { TResult? Function(TestToDefragment value)? testToDefragment, TResult? Function(TestToDecode value)? testToDecode, TResult? Function(TestToUpload value)? testToUpload, + TResult? Function(TestToDelete value)? testToDelete, + TResult? Function(TestToGetDownloadLinkFor value)? testToGetDownloadLinkFor, }) { return testToEncode?.call(this); } @@ -810,6 +883,8 @@ class _$TestToEncode implements TestToEncode { TResult Function(TestToDefragment value)? testToDefragment, TResult Function(TestToDecode value)? testToDecode, TResult Function(TestToUpload value)? testToUpload, + TResult Function(TestToDelete value)? testToDelete, + TResult Function(TestToGetDownloadLinkFor value)? testToGetDownloadLinkFor, required TResult orElse(), }) { if (testToEncode != null) { @@ -1002,6 +1077,12 @@ class _$TestToDownload implements TestToDownload { required TResult Function(String problemId, String testId, String fromDir, String toDir, String inputFilename, String outputFilename) testToUpload, + required TResult Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename) + testToDelete, + required TResult Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename) + testToGetDownloadLinkFor, }) { return testToDownload( problemId, testId, fromDir, toDir, inputFilename, outputFilename); @@ -1046,6 +1127,12 @@ class _$TestToDownload implements TestToDownload { TResult? Function(String problemId, String testId, String fromDir, String toDir, String inputFilename, String outputFilename)? testToUpload, + TResult? Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename)? + testToDelete, + TResult? Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename)? + testToGetDownloadLinkFor, }) { return testToDownload?.call( problemId, testId, fromDir, toDir, inputFilename, outputFilename); @@ -1090,6 +1177,12 @@ class _$TestToDownload implements TestToDownload { TResult Function(String problemId, String testId, String fromDir, String toDir, String inputFilename, String outputFilename)? testToUpload, + TResult Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename)? + testToDelete, + TResult Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename)? + testToGetDownloadLinkFor, required TResult orElse(), }) { if (testToDownload != null) { @@ -1108,6 +1201,9 @@ class _$TestToDownload implements TestToDownload { required TResult Function(TestToDefragment value) testToDefragment, required TResult Function(TestToDecode value) testToDecode, required TResult Function(TestToUpload value) testToUpload, + required TResult Function(TestToDelete value) testToDelete, + required TResult Function(TestToGetDownloadLinkFor value) + testToGetDownloadLinkFor, }) { return testToDownload(this); } @@ -1121,6 +1217,8 @@ class _$TestToDownload implements TestToDownload { TResult? Function(TestToDefragment value)? testToDefragment, TResult? Function(TestToDecode value)? testToDecode, TResult? Function(TestToUpload value)? testToUpload, + TResult? Function(TestToDelete value)? testToDelete, + TResult? Function(TestToGetDownloadLinkFor value)? testToGetDownloadLinkFor, }) { return testToDownload?.call(this); } @@ -1134,6 +1232,8 @@ class _$TestToDownload implements TestToDownload { TResult Function(TestToDefragment value)? testToDefragment, TResult Function(TestToDecode value)? testToDecode, TResult Function(TestToUpload value)? testToUpload, + TResult Function(TestToDelete value)? testToDelete, + TResult Function(TestToGetDownloadLinkFor value)? testToGetDownloadLinkFor, required TResult orElse(), }) { if (testToDownload != null) { @@ -1336,6 +1436,12 @@ class _$TestToDefragment implements TestToDefragment { required TResult Function(String problemId, String testId, String fromDir, String toDir, String inputFilename, String outputFilename) testToUpload, + required TResult Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename) + testToDelete, + required TResult Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename) + testToGetDownloadLinkFor, }) { return testToDefragment(problemId, testId, testSize, toDir, archiveTypeExtension, chunkStream, maxTestSize); @@ -1380,6 +1486,12 @@ class _$TestToDefragment implements TestToDefragment { TResult? Function(String problemId, String testId, String fromDir, String toDir, String inputFilename, String outputFilename)? testToUpload, + TResult? Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename)? + testToDelete, + TResult? Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename)? + testToGetDownloadLinkFor, }) { return testToDefragment?.call(problemId, testId, testSize, toDir, archiveTypeExtension, chunkStream, maxTestSize); @@ -1424,6 +1536,12 @@ class _$TestToDefragment implements TestToDefragment { TResult Function(String problemId, String testId, String fromDir, String toDir, String inputFilename, String outputFilename)? testToUpload, + TResult Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename)? + testToDelete, + TResult Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename)? + testToGetDownloadLinkFor, required TResult orElse(), }) { if (testToDefragment != null) { @@ -1442,6 +1560,9 @@ class _$TestToDefragment implements TestToDefragment { required TResult Function(TestToDefragment value) testToDefragment, required TResult Function(TestToDecode value) testToDecode, required TResult Function(TestToUpload value) testToUpload, + required TResult Function(TestToDelete value) testToDelete, + required TResult Function(TestToGetDownloadLinkFor value) + testToGetDownloadLinkFor, }) { return testToDefragment(this); } @@ -1455,6 +1576,8 @@ class _$TestToDefragment implements TestToDefragment { TResult? Function(TestToDefragment value)? testToDefragment, TResult? Function(TestToDecode value)? testToDecode, TResult? Function(TestToUpload value)? testToUpload, + TResult? Function(TestToDelete value)? testToDelete, + TResult? Function(TestToGetDownloadLinkFor value)? testToGetDownloadLinkFor, }) { return testToDefragment?.call(this); } @@ -1468,6 +1591,8 @@ class _$TestToDefragment implements TestToDefragment { TResult Function(TestToDefragment value)? testToDefragment, TResult Function(TestToDecode value)? testToDecode, TResult Function(TestToUpload value)? testToUpload, + TResult Function(TestToDelete value)? testToDelete, + TResult Function(TestToGetDownloadLinkFor value)? testToGetDownloadLinkFor, required TResult orElse(), }) { if (testToDefragment != null) { @@ -1671,6 +1796,12 @@ class _$TestToDecode implements TestToDecode { required TResult Function(String problemId, String testId, String fromDir, String toDir, String inputFilename, String outputFilename) testToUpload, + required TResult Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename) + testToDelete, + required TResult Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename) + testToGetDownloadLinkFor, }) { return testToDecode(problemId, testId, fromDir, toDir, archiveTypeExtension, inputFilename, outputFilename); @@ -1715,6 +1846,12 @@ class _$TestToDecode implements TestToDecode { TResult? Function(String problemId, String testId, String fromDir, String toDir, String inputFilename, String outputFilename)? testToUpload, + TResult? Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename)? + testToDelete, + TResult? Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename)? + testToGetDownloadLinkFor, }) { return testToDecode?.call(problemId, testId, fromDir, toDir, archiveTypeExtension, inputFilename, outputFilename); @@ -1759,6 +1896,12 @@ class _$TestToDecode implements TestToDecode { TResult Function(String problemId, String testId, String fromDir, String toDir, String inputFilename, String outputFilename)? testToUpload, + TResult Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename)? + testToDelete, + TResult Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename)? + testToGetDownloadLinkFor, required TResult orElse(), }) { if (testToDecode != null) { @@ -1777,6 +1920,9 @@ class _$TestToDecode implements TestToDecode { required TResult Function(TestToDefragment value) testToDefragment, required TResult Function(TestToDecode value) testToDecode, required TResult Function(TestToUpload value) testToUpload, + required TResult Function(TestToDelete value) testToDelete, + required TResult Function(TestToGetDownloadLinkFor value) + testToGetDownloadLinkFor, }) { return testToDecode(this); } @@ -1790,6 +1936,8 @@ class _$TestToDecode implements TestToDecode { TResult? Function(TestToDefragment value)? testToDefragment, TResult? Function(TestToDecode value)? testToDecode, TResult? Function(TestToUpload value)? testToUpload, + TResult? Function(TestToDelete value)? testToDelete, + TResult? Function(TestToGetDownloadLinkFor value)? testToGetDownloadLinkFor, }) { return testToDecode?.call(this); } @@ -1803,6 +1951,8 @@ class _$TestToDecode implements TestToDecode { TResult Function(TestToDefragment value)? testToDefragment, TResult Function(TestToDecode value)? testToDecode, TResult Function(TestToUpload value)? testToUpload, + TResult Function(TestToDelete value)? testToDelete, + TResult Function(TestToGetDownloadLinkFor value)? testToGetDownloadLinkFor, required TResult orElse(), }) { if (testToDecode != null) { @@ -1995,6 +2145,12 @@ class _$TestToUpload implements TestToUpload { required TResult Function(String problemId, String testId, String fromDir, String toDir, String inputFilename, String outputFilename) testToUpload, + required TResult Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename) + testToDelete, + required TResult Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename) + testToGetDownloadLinkFor, }) { return testToUpload( problemId, testId, fromDir, toDir, inputFilename, outputFilename); @@ -2039,6 +2195,12 @@ class _$TestToUpload implements TestToUpload { TResult? Function(String problemId, String testId, String fromDir, String toDir, String inputFilename, String outputFilename)? testToUpload, + TResult? Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename)? + testToDelete, + TResult? Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename)? + testToGetDownloadLinkFor, }) { return testToUpload?.call( problemId, testId, fromDir, toDir, inputFilename, outputFilename); @@ -2083,6 +2245,12 @@ class _$TestToUpload implements TestToUpload { TResult Function(String problemId, String testId, String fromDir, String toDir, String inputFilename, String outputFilename)? testToUpload, + TResult Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename)? + testToDelete, + TResult Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename)? + testToGetDownloadLinkFor, required TResult orElse(), }) { if (testToUpload != null) { @@ -2101,6 +2269,9 @@ class _$TestToUpload implements TestToUpload { required TResult Function(TestToDefragment value) testToDefragment, required TResult Function(TestToDecode value) testToDecode, required TResult Function(TestToUpload value) testToUpload, + required TResult Function(TestToDelete value) testToDelete, + required TResult Function(TestToGetDownloadLinkFor value) + testToGetDownloadLinkFor, }) { return testToUpload(this); } @@ -2114,6 +2285,8 @@ class _$TestToUpload implements TestToUpload { TResult? Function(TestToDefragment value)? testToDefragment, TResult? Function(TestToDecode value)? testToDecode, TResult? Function(TestToUpload value)? testToUpload, + TResult? Function(TestToDelete value)? testToDelete, + TResult? Function(TestToGetDownloadLinkFor value)? testToGetDownloadLinkFor, }) { return testToUpload?.call(this); } @@ -2127,6 +2300,8 @@ class _$TestToUpload implements TestToUpload { TResult Function(TestToDefragment value)? testToDefragment, TResult Function(TestToDecode value)? testToDecode, TResult Function(TestToUpload value)? testToUpload, + TResult Function(TestToDelete value)? testToDelete, + TResult Function(TestToGetDownloadLinkFor value)? testToGetDownloadLinkFor, required TResult orElse(), }) { if (testToUpload != null) { @@ -2158,3 +2333,675 @@ abstract class TestToUpload implements TestMetadata { _$$TestToUploadCopyWith<_$TestToUpload> get copyWith => throw _privateConstructorUsedError; } + +/// @nodoc +abstract class _$$TestToDeleteCopyWith<$Res> + implements $TestMetadataCopyWith<$Res> { + factory _$$TestToDeleteCopyWith( + _$TestToDelete value, $Res Function(_$TestToDelete) then) = + __$$TestToDeleteCopyWithImpl<$Res>; + @override + @useResult + $Res call( + {String problemId, + String testId, + String fromDir, + String inputFilename, + String outputFilename}); +} + +/// @nodoc +class __$$TestToDeleteCopyWithImpl<$Res> + extends _$TestMetadataCopyWithImpl<$Res, _$TestToDelete> + implements _$$TestToDeleteCopyWith<$Res> { + __$$TestToDeleteCopyWithImpl( + _$TestToDelete _value, $Res Function(_$TestToDelete) _then) + : super(_value, _then); + + @pragma('vm:prefer-inline') + @override + $Res call({ + Object? problemId = null, + Object? testId = null, + Object? fromDir = null, + Object? inputFilename = null, + Object? outputFilename = null, + }) { + return _then(_$TestToDelete( + problemId: null == problemId + ? _value.problemId + : problemId // ignore: cast_nullable_to_non_nullable + as String, + testId: null == testId + ? _value.testId + : testId // ignore: cast_nullable_to_non_nullable + as String, + fromDir: null == fromDir + ? _value.fromDir + : fromDir // ignore: cast_nullable_to_non_nullable + as String, + inputFilename: null == inputFilename + ? _value.inputFilename + : inputFilename // ignore: cast_nullable_to_non_nullable + as String, + outputFilename: null == outputFilename + ? _value.outputFilename + : outputFilename // ignore: cast_nullable_to_non_nullable + as String, + )); + } +} + +/// @nodoc + +class _$TestToDelete implements TestToDelete { + const _$TestToDelete( + {required this.problemId, + required this.testId, + required this.fromDir, + required this.inputFilename, + required this.outputFilename}); + + @override + final String problemId; + @override + final String testId; + @override + final String fromDir; + @override + final String inputFilename; + @override + final String outputFilename; + + @override + String toString() { + return 'TestMetadata.testToDelete(problemId: $problemId, testId: $testId, fromDir: $fromDir, inputFilename: $inputFilename, outputFilename: $outputFilename)'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || + (other.runtimeType == runtimeType && + other is _$TestToDelete && + (identical(other.problemId, problemId) || + other.problemId == problemId) && + (identical(other.testId, testId) || other.testId == testId) && + (identical(other.fromDir, fromDir) || other.fromDir == fromDir) && + (identical(other.inputFilename, inputFilename) || + other.inputFilename == inputFilename) && + (identical(other.outputFilename, outputFilename) || + other.outputFilename == outputFilename)); + } + + @override + int get hashCode => Object.hash( + runtimeType, problemId, testId, fromDir, inputFilename, outputFilename); + + @JsonKey(ignore: true) + @override + @pragma('vm:prefer-inline') + _$$TestToDeleteCopyWith<_$TestToDelete> get copyWith => + __$$TestToDeleteCopyWithImpl<_$TestToDelete>(this, _$identity); + + @override + @optionalTypeArgs + TResult when({ + required TResult Function(String problemId, String testId, String fromDir, + String archiveTypeExtension) + testToFragment, + required TResult Function( + String problemId, + String testId, + String fromDir, + String toDir, + String archiveTypeExtension, + String inputFilename, + String outputFilename) + testToEncode, + required TResult Function(String problemId, String testId, String fromDir, + String toDir, String inputFilename, String outputFilename) + testToDownload, + required TResult Function( + String problemId, + String testId, + int testSize, + String toDir, + String archiveTypeExtension, + Stream chunkStream, + int maxTestSize) + testToDefragment, + required TResult Function( + String problemId, + String testId, + String fromDir, + String toDir, + String archiveTypeExtension, + String inputFilename, + String outputFilename) + testToDecode, + required TResult Function(String problemId, String testId, String fromDir, + String toDir, String inputFilename, String outputFilename) + testToUpload, + required TResult Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename) + testToDelete, + required TResult Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename) + testToGetDownloadLinkFor, + }) { + return testToDelete( + problemId, testId, fromDir, inputFilename, outputFilename); + } + + @override + @optionalTypeArgs + TResult? whenOrNull({ + TResult? Function(String problemId, String testId, String fromDir, + String archiveTypeExtension)? + testToFragment, + TResult? Function( + String problemId, + String testId, + String fromDir, + String toDir, + String archiveTypeExtension, + String inputFilename, + String outputFilename)? + testToEncode, + TResult? Function(String problemId, String testId, String fromDir, + String toDir, String inputFilename, String outputFilename)? + testToDownload, + TResult? Function( + String problemId, + String testId, + int testSize, + String toDir, + String archiveTypeExtension, + Stream chunkStream, + int maxTestSize)? + testToDefragment, + TResult? Function( + String problemId, + String testId, + String fromDir, + String toDir, + String archiveTypeExtension, + String inputFilename, + String outputFilename)? + testToDecode, + TResult? Function(String problemId, String testId, String fromDir, + String toDir, String inputFilename, String outputFilename)? + testToUpload, + TResult? Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename)? + testToDelete, + TResult? Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename)? + testToGetDownloadLinkFor, + }) { + return testToDelete?.call( + problemId, testId, fromDir, inputFilename, outputFilename); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function(String problemId, String testId, String fromDir, + String archiveTypeExtension)? + testToFragment, + TResult Function( + String problemId, + String testId, + String fromDir, + String toDir, + String archiveTypeExtension, + String inputFilename, + String outputFilename)? + testToEncode, + TResult Function(String problemId, String testId, String fromDir, + String toDir, String inputFilename, String outputFilename)? + testToDownload, + TResult Function( + String problemId, + String testId, + int testSize, + String toDir, + String archiveTypeExtension, + Stream chunkStream, + int maxTestSize)? + testToDefragment, + TResult Function( + String problemId, + String testId, + String fromDir, + String toDir, + String archiveTypeExtension, + String inputFilename, + String outputFilename)? + testToDecode, + TResult Function(String problemId, String testId, String fromDir, + String toDir, String inputFilename, String outputFilename)? + testToUpload, + TResult Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename)? + testToDelete, + TResult Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename)? + testToGetDownloadLinkFor, + required TResult orElse(), + }) { + if (testToDelete != null) { + return testToDelete( + problemId, testId, fromDir, inputFilename, outputFilename); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(TestToFragment value) testToFragment, + required TResult Function(TestToEncode value) testToEncode, + required TResult Function(TestToDownload value) testToDownload, + required TResult Function(TestToDefragment value) testToDefragment, + required TResult Function(TestToDecode value) testToDecode, + required TResult Function(TestToUpload value) testToUpload, + required TResult Function(TestToDelete value) testToDelete, + required TResult Function(TestToGetDownloadLinkFor value) + testToGetDownloadLinkFor, + }) { + return testToDelete(this); + } + + @override + @optionalTypeArgs + TResult? mapOrNull({ + TResult? Function(TestToFragment value)? testToFragment, + TResult? Function(TestToEncode value)? testToEncode, + TResult? Function(TestToDownload value)? testToDownload, + TResult? Function(TestToDefragment value)? testToDefragment, + TResult? Function(TestToDecode value)? testToDecode, + TResult? Function(TestToUpload value)? testToUpload, + TResult? Function(TestToDelete value)? testToDelete, + TResult? Function(TestToGetDownloadLinkFor value)? testToGetDownloadLinkFor, + }) { + return testToDelete?.call(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(TestToFragment value)? testToFragment, + TResult Function(TestToEncode value)? testToEncode, + TResult Function(TestToDownload value)? testToDownload, + TResult Function(TestToDefragment value)? testToDefragment, + TResult Function(TestToDecode value)? testToDecode, + TResult Function(TestToUpload value)? testToUpload, + TResult Function(TestToDelete value)? testToDelete, + TResult Function(TestToGetDownloadLinkFor value)? testToGetDownloadLinkFor, + required TResult orElse(), + }) { + if (testToDelete != null) { + return testToDelete(this); + } + return orElse(); + } +} + +abstract class TestToDelete implements TestMetadata { + const factory TestToDelete( + {required final String problemId, + required final String testId, + required final String fromDir, + required final String inputFilename, + required final String outputFilename}) = _$TestToDelete; + + @override + String get problemId; + @override + String get testId; + String get fromDir; + String get inputFilename; + String get outputFilename; + @override + @JsonKey(ignore: true) + _$$TestToDeleteCopyWith<_$TestToDelete> get copyWith => + throw _privateConstructorUsedError; +} + +/// @nodoc +abstract class _$$TestToGetDownloadLinkForCopyWith<$Res> + implements $TestMetadataCopyWith<$Res> { + factory _$$TestToGetDownloadLinkForCopyWith(_$TestToGetDownloadLinkFor value, + $Res Function(_$TestToGetDownloadLinkFor) then) = + __$$TestToGetDownloadLinkForCopyWithImpl<$Res>; + @override + @useResult + $Res call( + {String problemId, + String testId, + String fromDir, + String inputFilename, + String outputFilename}); +} + +/// @nodoc +class __$$TestToGetDownloadLinkForCopyWithImpl<$Res> + extends _$TestMetadataCopyWithImpl<$Res, _$TestToGetDownloadLinkFor> + implements _$$TestToGetDownloadLinkForCopyWith<$Res> { + __$$TestToGetDownloadLinkForCopyWithImpl(_$TestToGetDownloadLinkFor _value, + $Res Function(_$TestToGetDownloadLinkFor) _then) + : super(_value, _then); + + @pragma('vm:prefer-inline') + @override + $Res call({ + Object? problemId = null, + Object? testId = null, + Object? fromDir = null, + Object? inputFilename = null, + Object? outputFilename = null, + }) { + return _then(_$TestToGetDownloadLinkFor( + problemId: null == problemId + ? _value.problemId + : problemId // ignore: cast_nullable_to_non_nullable + as String, + testId: null == testId + ? _value.testId + : testId // ignore: cast_nullable_to_non_nullable + as String, + fromDir: null == fromDir + ? _value.fromDir + : fromDir // ignore: cast_nullable_to_non_nullable + as String, + inputFilename: null == inputFilename + ? _value.inputFilename + : inputFilename // ignore: cast_nullable_to_non_nullable + as String, + outputFilename: null == outputFilename + ? _value.outputFilename + : outputFilename // ignore: cast_nullable_to_non_nullable + as String, + )); + } +} + +/// @nodoc + +class _$TestToGetDownloadLinkFor implements TestToGetDownloadLinkFor { + const _$TestToGetDownloadLinkFor( + {required this.problemId, + required this.testId, + required this.fromDir, + required this.inputFilename, + required this.outputFilename}); + + @override + final String problemId; + @override + final String testId; + @override + final String fromDir; + @override + final String inputFilename; + @override + final String outputFilename; + + @override + String toString() { + return 'TestMetadata.testToGetDownloadLinkFor(problemId: $problemId, testId: $testId, fromDir: $fromDir, inputFilename: $inputFilename, outputFilename: $outputFilename)'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || + (other.runtimeType == runtimeType && + other is _$TestToGetDownloadLinkFor && + (identical(other.problemId, problemId) || + other.problemId == problemId) && + (identical(other.testId, testId) || other.testId == testId) && + (identical(other.fromDir, fromDir) || other.fromDir == fromDir) && + (identical(other.inputFilename, inputFilename) || + other.inputFilename == inputFilename) && + (identical(other.outputFilename, outputFilename) || + other.outputFilename == outputFilename)); + } + + @override + int get hashCode => Object.hash( + runtimeType, problemId, testId, fromDir, inputFilename, outputFilename); + + @JsonKey(ignore: true) + @override + @pragma('vm:prefer-inline') + _$$TestToGetDownloadLinkForCopyWith<_$TestToGetDownloadLinkFor> + get copyWith => + __$$TestToGetDownloadLinkForCopyWithImpl<_$TestToGetDownloadLinkFor>( + this, _$identity); + + @override + @optionalTypeArgs + TResult when({ + required TResult Function(String problemId, String testId, String fromDir, + String archiveTypeExtension) + testToFragment, + required TResult Function( + String problemId, + String testId, + String fromDir, + String toDir, + String archiveTypeExtension, + String inputFilename, + String outputFilename) + testToEncode, + required TResult Function(String problemId, String testId, String fromDir, + String toDir, String inputFilename, String outputFilename) + testToDownload, + required TResult Function( + String problemId, + String testId, + int testSize, + String toDir, + String archiveTypeExtension, + Stream chunkStream, + int maxTestSize) + testToDefragment, + required TResult Function( + String problemId, + String testId, + String fromDir, + String toDir, + String archiveTypeExtension, + String inputFilename, + String outputFilename) + testToDecode, + required TResult Function(String problemId, String testId, String fromDir, + String toDir, String inputFilename, String outputFilename) + testToUpload, + required TResult Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename) + testToDelete, + required TResult Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename) + testToGetDownloadLinkFor, + }) { + return testToGetDownloadLinkFor( + problemId, testId, fromDir, inputFilename, outputFilename); + } + + @override + @optionalTypeArgs + TResult? whenOrNull({ + TResult? Function(String problemId, String testId, String fromDir, + String archiveTypeExtension)? + testToFragment, + TResult? Function( + String problemId, + String testId, + String fromDir, + String toDir, + String archiveTypeExtension, + String inputFilename, + String outputFilename)? + testToEncode, + TResult? Function(String problemId, String testId, String fromDir, + String toDir, String inputFilename, String outputFilename)? + testToDownload, + TResult? Function( + String problemId, + String testId, + int testSize, + String toDir, + String archiveTypeExtension, + Stream chunkStream, + int maxTestSize)? + testToDefragment, + TResult? Function( + String problemId, + String testId, + String fromDir, + String toDir, + String archiveTypeExtension, + String inputFilename, + String outputFilename)? + testToDecode, + TResult? Function(String problemId, String testId, String fromDir, + String toDir, String inputFilename, String outputFilename)? + testToUpload, + TResult? Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename)? + testToDelete, + TResult? Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename)? + testToGetDownloadLinkFor, + }) { + return testToGetDownloadLinkFor?.call( + problemId, testId, fromDir, inputFilename, outputFilename); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function(String problemId, String testId, String fromDir, + String archiveTypeExtension)? + testToFragment, + TResult Function( + String problemId, + String testId, + String fromDir, + String toDir, + String archiveTypeExtension, + String inputFilename, + String outputFilename)? + testToEncode, + TResult Function(String problemId, String testId, String fromDir, + String toDir, String inputFilename, String outputFilename)? + testToDownload, + TResult Function( + String problemId, + String testId, + int testSize, + String toDir, + String archiveTypeExtension, + Stream chunkStream, + int maxTestSize)? + testToDefragment, + TResult Function( + String problemId, + String testId, + String fromDir, + String toDir, + String archiveTypeExtension, + String inputFilename, + String outputFilename)? + testToDecode, + TResult Function(String problemId, String testId, String fromDir, + String toDir, String inputFilename, String outputFilename)? + testToUpload, + TResult Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename)? + testToDelete, + TResult Function(String problemId, String testId, String fromDir, + String inputFilename, String outputFilename)? + testToGetDownloadLinkFor, + required TResult orElse(), + }) { + if (testToGetDownloadLinkFor != null) { + return testToGetDownloadLinkFor( + problemId, testId, fromDir, inputFilename, outputFilename); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(TestToFragment value) testToFragment, + required TResult Function(TestToEncode value) testToEncode, + required TResult Function(TestToDownload value) testToDownload, + required TResult Function(TestToDefragment value) testToDefragment, + required TResult Function(TestToDecode value) testToDecode, + required TResult Function(TestToUpload value) testToUpload, + required TResult Function(TestToDelete value) testToDelete, + required TResult Function(TestToGetDownloadLinkFor value) + testToGetDownloadLinkFor, + }) { + return testToGetDownloadLinkFor(this); + } + + @override + @optionalTypeArgs + TResult? mapOrNull({ + TResult? Function(TestToFragment value)? testToFragment, + TResult? Function(TestToEncode value)? testToEncode, + TResult? Function(TestToDownload value)? testToDownload, + TResult? Function(TestToDefragment value)? testToDefragment, + TResult? Function(TestToDecode value)? testToDecode, + TResult? Function(TestToUpload value)? testToUpload, + TResult? Function(TestToDelete value)? testToDelete, + TResult? Function(TestToGetDownloadLinkFor value)? testToGetDownloadLinkFor, + }) { + return testToGetDownloadLinkFor?.call(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(TestToFragment value)? testToFragment, + TResult Function(TestToEncode value)? testToEncode, + TResult Function(TestToDownload value)? testToDownload, + TResult Function(TestToDefragment value)? testToDefragment, + TResult Function(TestToDecode value)? testToDecode, + TResult Function(TestToUpload value)? testToUpload, + TResult Function(TestToDelete value)? testToDelete, + TResult Function(TestToGetDownloadLinkFor value)? testToGetDownloadLinkFor, + required TResult orElse(), + }) { + if (testToGetDownloadLinkFor != null) { + return testToGetDownloadLinkFor(this); + } + return orElse(); + } +} + +abstract class TestToGetDownloadLinkFor implements TestMetadata { + const factory TestToGetDownloadLinkFor( + {required final String problemId, + required final String testId, + required final String fromDir, + required final String inputFilename, + required final String outputFilename}) = _$TestToGetDownloadLinkFor; + + @override + String get problemId; + @override + String get testId; + String get fromDir; + String get inputFilename; + String get outputFilename; + @override + @JsonKey(ignore: true) + _$$TestToGetDownloadLinkForCopyWith<_$TestToGetDownloadLinkFor> + get copyWith => throw _privateConstructorUsedError; +} diff --git a/hermes-tests/lib/domain/exceptions/storage_failures.dart b/hermes-tests/lib/domain/exceptions/storage_failures.dart index 6161355..d00cb53 100644 --- a/hermes-tests/lib/domain/exceptions/storage_failures.dart +++ b/hermes-tests/lib/domain/exceptions/storage_failures.dart @@ -12,6 +12,10 @@ class StorageFailure with _$StorageFailure { required String message, }) = LocalTestNotFound; + const factory StorageFailure.remoteTestNotFound({ + required String message, + }) = RemoteTestNotFound; + const factory StorageFailure.invalidLocalTestFormat({ required String message, }) = InvalidLocalTestFormat; diff --git a/hermes-tests/lib/domain/exceptions/storage_failures.freezed.dart b/hermes-tests/lib/domain/exceptions/storage_failures.freezed.dart index 1bd9f8f..f541ee9 100644 --- a/hermes-tests/lib/domain/exceptions/storage_failures.freezed.dart +++ b/hermes-tests/lib/domain/exceptions/storage_failures.freezed.dart @@ -21,6 +21,7 @@ mixin _$StorageFailure { TResult when({ required TResult Function(String message) unexpected, required TResult Function(String message) localTestNotFound, + required TResult Function(String message) remoteTestNotFound, required TResult Function(String message) invalidLocalTestFormat, required TResult Function(String message) testSizeLimitExceeded, }) => @@ -29,6 +30,7 @@ mixin _$StorageFailure { TResult? whenOrNull({ TResult? Function(String message)? unexpected, TResult? Function(String message)? localTestNotFound, + TResult? Function(String message)? remoteTestNotFound, TResult? Function(String message)? invalidLocalTestFormat, TResult? Function(String message)? testSizeLimitExceeded, }) => @@ -37,6 +39,7 @@ mixin _$StorageFailure { TResult maybeWhen({ TResult Function(String message)? unexpected, TResult Function(String message)? localTestNotFound, + TResult Function(String message)? remoteTestNotFound, TResult Function(String message)? invalidLocalTestFormat, TResult Function(String message)? testSizeLimitExceeded, required TResult orElse(), @@ -46,6 +49,7 @@ mixin _$StorageFailure { TResult map({ required TResult Function(Unexpected value) unexpected, required TResult Function(LocalTestNotFound value) localTestNotFound, + required TResult Function(RemoteTestNotFound value) remoteTestNotFound, required TResult Function(InvalidLocalTestFormat value) invalidLocalTestFormat, required TResult Function(TestSizeLimitExceeded value) @@ -56,6 +60,7 @@ mixin _$StorageFailure { TResult? mapOrNull({ TResult? Function(Unexpected value)? unexpected, TResult? Function(LocalTestNotFound value)? localTestNotFound, + TResult? Function(RemoteTestNotFound value)? remoteTestNotFound, TResult? Function(InvalidLocalTestFormat value)? invalidLocalTestFormat, TResult? Function(TestSizeLimitExceeded value)? testSizeLimitExceeded, }) => @@ -64,6 +69,7 @@ mixin _$StorageFailure { TResult maybeMap({ TResult Function(Unexpected value)? unexpected, TResult Function(LocalTestNotFound value)? localTestNotFound, + TResult Function(RemoteTestNotFound value)? remoteTestNotFound, TResult Function(InvalidLocalTestFormat value)? invalidLocalTestFormat, TResult Function(TestSizeLimitExceeded value)? testSizeLimitExceeded, required TResult orElse(), @@ -176,6 +182,7 @@ class _$Unexpected implements Unexpected { TResult when({ required TResult Function(String message) unexpected, required TResult Function(String message) localTestNotFound, + required TResult Function(String message) remoteTestNotFound, required TResult Function(String message) invalidLocalTestFormat, required TResult Function(String message) testSizeLimitExceeded, }) { @@ -187,6 +194,7 @@ class _$Unexpected implements Unexpected { TResult? whenOrNull({ TResult? Function(String message)? unexpected, TResult? Function(String message)? localTestNotFound, + TResult? Function(String message)? remoteTestNotFound, TResult? Function(String message)? invalidLocalTestFormat, TResult? Function(String message)? testSizeLimitExceeded, }) { @@ -198,6 +206,7 @@ class _$Unexpected implements Unexpected { TResult maybeWhen({ TResult Function(String message)? unexpected, TResult Function(String message)? localTestNotFound, + TResult Function(String message)? remoteTestNotFound, TResult Function(String message)? invalidLocalTestFormat, TResult Function(String message)? testSizeLimitExceeded, required TResult orElse(), @@ -213,6 +222,7 @@ class _$Unexpected implements Unexpected { TResult map({ required TResult Function(Unexpected value) unexpected, required TResult Function(LocalTestNotFound value) localTestNotFound, + required TResult Function(RemoteTestNotFound value) remoteTestNotFound, required TResult Function(InvalidLocalTestFormat value) invalidLocalTestFormat, required TResult Function(TestSizeLimitExceeded value) @@ -226,6 +236,7 @@ class _$Unexpected implements Unexpected { TResult? mapOrNull({ TResult? Function(Unexpected value)? unexpected, TResult? Function(LocalTestNotFound value)? localTestNotFound, + TResult? Function(RemoteTestNotFound value)? remoteTestNotFound, TResult? Function(InvalidLocalTestFormat value)? invalidLocalTestFormat, TResult? Function(TestSizeLimitExceeded value)? testSizeLimitExceeded, }) { @@ -237,6 +248,7 @@ class _$Unexpected implements Unexpected { TResult maybeMap({ TResult Function(Unexpected value)? unexpected, TResult Function(LocalTestNotFound value)? localTestNotFound, + TResult Function(RemoteTestNotFound value)? remoteTestNotFound, TResult Function(InvalidLocalTestFormat value)? invalidLocalTestFormat, TResult Function(TestSizeLimitExceeded value)? testSizeLimitExceeded, required TResult orElse(), @@ -327,6 +339,7 @@ class _$LocalTestNotFound implements LocalTestNotFound { TResult when({ required TResult Function(String message) unexpected, required TResult Function(String message) localTestNotFound, + required TResult Function(String message) remoteTestNotFound, required TResult Function(String message) invalidLocalTestFormat, required TResult Function(String message) testSizeLimitExceeded, }) { @@ -338,6 +351,7 @@ class _$LocalTestNotFound implements LocalTestNotFound { TResult? whenOrNull({ TResult? Function(String message)? unexpected, TResult? Function(String message)? localTestNotFound, + TResult? Function(String message)? remoteTestNotFound, TResult? Function(String message)? invalidLocalTestFormat, TResult? Function(String message)? testSizeLimitExceeded, }) { @@ -349,6 +363,7 @@ class _$LocalTestNotFound implements LocalTestNotFound { TResult maybeWhen({ TResult Function(String message)? unexpected, TResult Function(String message)? localTestNotFound, + TResult Function(String message)? remoteTestNotFound, TResult Function(String message)? invalidLocalTestFormat, TResult Function(String message)? testSizeLimitExceeded, required TResult orElse(), @@ -364,6 +379,7 @@ class _$LocalTestNotFound implements LocalTestNotFound { TResult map({ required TResult Function(Unexpected value) unexpected, required TResult Function(LocalTestNotFound value) localTestNotFound, + required TResult Function(RemoteTestNotFound value) remoteTestNotFound, required TResult Function(InvalidLocalTestFormat value) invalidLocalTestFormat, required TResult Function(TestSizeLimitExceeded value) @@ -377,6 +393,7 @@ class _$LocalTestNotFound implements LocalTestNotFound { TResult? mapOrNull({ TResult? Function(Unexpected value)? unexpected, TResult? Function(LocalTestNotFound value)? localTestNotFound, + TResult? Function(RemoteTestNotFound value)? remoteTestNotFound, TResult? Function(InvalidLocalTestFormat value)? invalidLocalTestFormat, TResult? Function(TestSizeLimitExceeded value)? testSizeLimitExceeded, }) { @@ -388,6 +405,7 @@ class _$LocalTestNotFound implements LocalTestNotFound { TResult maybeMap({ TResult Function(Unexpected value)? unexpected, TResult Function(LocalTestNotFound value)? localTestNotFound, + TResult Function(RemoteTestNotFound value)? remoteTestNotFound, TResult Function(InvalidLocalTestFormat value)? invalidLocalTestFormat, TResult Function(TestSizeLimitExceeded value)? testSizeLimitExceeded, required TResult orElse(), @@ -411,6 +429,165 @@ abstract class LocalTestNotFound implements StorageFailure { throw _privateConstructorUsedError; } +/// @nodoc +abstract class _$$RemoteTestNotFoundCopyWith<$Res> + implements $StorageFailureCopyWith<$Res> { + factory _$$RemoteTestNotFoundCopyWith(_$RemoteTestNotFound value, + $Res Function(_$RemoteTestNotFound) then) = + __$$RemoteTestNotFoundCopyWithImpl<$Res>; + @override + @useResult + $Res call({String message}); +} + +/// @nodoc +class __$$RemoteTestNotFoundCopyWithImpl<$Res> + extends _$StorageFailureCopyWithImpl<$Res, _$RemoteTestNotFound> + implements _$$RemoteTestNotFoundCopyWith<$Res> { + __$$RemoteTestNotFoundCopyWithImpl( + _$RemoteTestNotFound _value, $Res Function(_$RemoteTestNotFound) _then) + : super(_value, _then); + + @pragma('vm:prefer-inline') + @override + $Res call({ + Object? message = null, + }) { + return _then(_$RemoteTestNotFound( + message: null == message + ? _value.message + : message // ignore: cast_nullable_to_non_nullable + as String, + )); + } +} + +/// @nodoc + +class _$RemoteTestNotFound implements RemoteTestNotFound { + const _$RemoteTestNotFound({required this.message}); + + @override + final String message; + + @override + String toString() { + return 'StorageFailure.remoteTestNotFound(message: $message)'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || + (other.runtimeType == runtimeType && + other is _$RemoteTestNotFound && + (identical(other.message, message) || other.message == message)); + } + + @override + int get hashCode => Object.hash(runtimeType, message); + + @JsonKey(ignore: true) + @override + @pragma('vm:prefer-inline') + _$$RemoteTestNotFoundCopyWith<_$RemoteTestNotFound> get copyWith => + __$$RemoteTestNotFoundCopyWithImpl<_$RemoteTestNotFound>( + this, _$identity); + + @override + @optionalTypeArgs + TResult when({ + required TResult Function(String message) unexpected, + required TResult Function(String message) localTestNotFound, + required TResult Function(String message) remoteTestNotFound, + required TResult Function(String message) invalidLocalTestFormat, + required TResult Function(String message) testSizeLimitExceeded, + }) { + return remoteTestNotFound(message); + } + + @override + @optionalTypeArgs + TResult? whenOrNull({ + TResult? Function(String message)? unexpected, + TResult? Function(String message)? localTestNotFound, + TResult? Function(String message)? remoteTestNotFound, + TResult? Function(String message)? invalidLocalTestFormat, + TResult? Function(String message)? testSizeLimitExceeded, + }) { + return remoteTestNotFound?.call(message); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function(String message)? unexpected, + TResult Function(String message)? localTestNotFound, + TResult Function(String message)? remoteTestNotFound, + TResult Function(String message)? invalidLocalTestFormat, + TResult Function(String message)? testSizeLimitExceeded, + required TResult orElse(), + }) { + if (remoteTestNotFound != null) { + return remoteTestNotFound(message); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(Unexpected value) unexpected, + required TResult Function(LocalTestNotFound value) localTestNotFound, + required TResult Function(RemoteTestNotFound value) remoteTestNotFound, + required TResult Function(InvalidLocalTestFormat value) + invalidLocalTestFormat, + required TResult Function(TestSizeLimitExceeded value) + testSizeLimitExceeded, + }) { + return remoteTestNotFound(this); + } + + @override + @optionalTypeArgs + TResult? mapOrNull({ + TResult? Function(Unexpected value)? unexpected, + TResult? Function(LocalTestNotFound value)? localTestNotFound, + TResult? Function(RemoteTestNotFound value)? remoteTestNotFound, + TResult? Function(InvalidLocalTestFormat value)? invalidLocalTestFormat, + TResult? Function(TestSizeLimitExceeded value)? testSizeLimitExceeded, + }) { + return remoteTestNotFound?.call(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(Unexpected value)? unexpected, + TResult Function(LocalTestNotFound value)? localTestNotFound, + TResult Function(RemoteTestNotFound value)? remoteTestNotFound, + TResult Function(InvalidLocalTestFormat value)? invalidLocalTestFormat, + TResult Function(TestSizeLimitExceeded value)? testSizeLimitExceeded, + required TResult orElse(), + }) { + if (remoteTestNotFound != null) { + return remoteTestNotFound(this); + } + return orElse(); + } +} + +abstract class RemoteTestNotFound implements StorageFailure { + const factory RemoteTestNotFound({required final String message}) = + _$RemoteTestNotFound; + + @override + String get message; + @override + @JsonKey(ignore: true) + _$$RemoteTestNotFoundCopyWith<_$RemoteTestNotFound> get copyWith => + throw _privateConstructorUsedError; +} + /// @nodoc abstract class _$$InvalidLocalTestFormatCopyWith<$Res> implements $StorageFailureCopyWith<$Res> { @@ -480,6 +657,7 @@ class _$InvalidLocalTestFormat implements InvalidLocalTestFormat { TResult when({ required TResult Function(String message) unexpected, required TResult Function(String message) localTestNotFound, + required TResult Function(String message) remoteTestNotFound, required TResult Function(String message) invalidLocalTestFormat, required TResult Function(String message) testSizeLimitExceeded, }) { @@ -491,6 +669,7 @@ class _$InvalidLocalTestFormat implements InvalidLocalTestFormat { TResult? whenOrNull({ TResult? Function(String message)? unexpected, TResult? Function(String message)? localTestNotFound, + TResult? Function(String message)? remoteTestNotFound, TResult? Function(String message)? invalidLocalTestFormat, TResult? Function(String message)? testSizeLimitExceeded, }) { @@ -502,6 +681,7 @@ class _$InvalidLocalTestFormat implements InvalidLocalTestFormat { TResult maybeWhen({ TResult Function(String message)? unexpected, TResult Function(String message)? localTestNotFound, + TResult Function(String message)? remoteTestNotFound, TResult Function(String message)? invalidLocalTestFormat, TResult Function(String message)? testSizeLimitExceeded, required TResult orElse(), @@ -517,6 +697,7 @@ class _$InvalidLocalTestFormat implements InvalidLocalTestFormat { TResult map({ required TResult Function(Unexpected value) unexpected, required TResult Function(LocalTestNotFound value) localTestNotFound, + required TResult Function(RemoteTestNotFound value) remoteTestNotFound, required TResult Function(InvalidLocalTestFormat value) invalidLocalTestFormat, required TResult Function(TestSizeLimitExceeded value) @@ -530,6 +711,7 @@ class _$InvalidLocalTestFormat implements InvalidLocalTestFormat { TResult? mapOrNull({ TResult? Function(Unexpected value)? unexpected, TResult? Function(LocalTestNotFound value)? localTestNotFound, + TResult? Function(RemoteTestNotFound value)? remoteTestNotFound, TResult? Function(InvalidLocalTestFormat value)? invalidLocalTestFormat, TResult? Function(TestSizeLimitExceeded value)? testSizeLimitExceeded, }) { @@ -541,6 +723,7 @@ class _$InvalidLocalTestFormat implements InvalidLocalTestFormat { TResult maybeMap({ TResult Function(Unexpected value)? unexpected, TResult Function(LocalTestNotFound value)? localTestNotFound, + TResult Function(RemoteTestNotFound value)? remoteTestNotFound, TResult Function(InvalidLocalTestFormat value)? invalidLocalTestFormat, TResult Function(TestSizeLimitExceeded value)? testSizeLimitExceeded, required TResult orElse(), @@ -633,6 +816,7 @@ class _$TestSizeLimitExceeded implements TestSizeLimitExceeded { TResult when({ required TResult Function(String message) unexpected, required TResult Function(String message) localTestNotFound, + required TResult Function(String message) remoteTestNotFound, required TResult Function(String message) invalidLocalTestFormat, required TResult Function(String message) testSizeLimitExceeded, }) { @@ -644,6 +828,7 @@ class _$TestSizeLimitExceeded implements TestSizeLimitExceeded { TResult? whenOrNull({ TResult? Function(String message)? unexpected, TResult? Function(String message)? localTestNotFound, + TResult? Function(String message)? remoteTestNotFound, TResult? Function(String message)? invalidLocalTestFormat, TResult? Function(String message)? testSizeLimitExceeded, }) { @@ -655,6 +840,7 @@ class _$TestSizeLimitExceeded implements TestSizeLimitExceeded { TResult maybeWhen({ TResult Function(String message)? unexpected, TResult Function(String message)? localTestNotFound, + TResult Function(String message)? remoteTestNotFound, TResult Function(String message)? invalidLocalTestFormat, TResult Function(String message)? testSizeLimitExceeded, required TResult orElse(), @@ -670,6 +856,7 @@ class _$TestSizeLimitExceeded implements TestSizeLimitExceeded { TResult map({ required TResult Function(Unexpected value) unexpected, required TResult Function(LocalTestNotFound value) localTestNotFound, + required TResult Function(RemoteTestNotFound value) remoteTestNotFound, required TResult Function(InvalidLocalTestFormat value) invalidLocalTestFormat, required TResult Function(TestSizeLimitExceeded value) @@ -683,6 +870,7 @@ class _$TestSizeLimitExceeded implements TestSizeLimitExceeded { TResult? mapOrNull({ TResult? Function(Unexpected value)? unexpected, TResult? Function(LocalTestNotFound value)? localTestNotFound, + TResult? Function(RemoteTestNotFound value)? remoteTestNotFound, TResult? Function(InvalidLocalTestFormat value)? invalidLocalTestFormat, TResult? Function(TestSizeLimitExceeded value)? testSizeLimitExceeded, }) { @@ -694,6 +882,7 @@ class _$TestSizeLimitExceeded implements TestSizeLimitExceeded { TResult maybeMap({ TResult Function(Unexpected value)? unexpected, TResult Function(LocalTestNotFound value)? localTestNotFound, + TResult Function(RemoteTestNotFound value)? remoteTestNotFound, TResult Function(InvalidLocalTestFormat value)? invalidLocalTestFormat, TResult Function(TestSizeLimitExceeded value)? testSizeLimitExceeded, required TResult orElse(), diff --git a/hermes-tests/lib/domain/interfaces/i_test_repository.dart b/hermes-tests/lib/domain/interfaces/i_test_repository.dart index 02f92a9..b56cfd3 100644 --- a/hermes-tests/lib/domain/interfaces/i_test_repository.dart +++ b/hermes-tests/lib/domain/interfaces/i_test_repository.dart @@ -1,8 +1,12 @@ import 'package:dartz/dartz.dart'; +import 'package:hermes_tests/api/core/hermes.pb.dart'; import 'package:hermes_tests/domain/entities/test_metadata.dart'; import 'package:hermes_tests/domain/exceptions/storage_failures.dart'; abstract class ITestRepository { Future> upload(TestMetadata testMetadata); Future> download(TestMetadata testMetadata); + Future> delete(TestMetadata testMetadata); + Future> getDownloadLinkForTest( + TestMetadata testMetadata); } diff --git a/hermes-tests/lib/infrastructure/repositories/test_repository.dart b/hermes-tests/lib/infrastructure/repositories/test_repository.dart index 8bfeaa8..e584ed8 100644 --- a/hermes-tests/lib/infrastructure/repositories/test_repository.dart +++ b/hermes-tests/lib/infrastructure/repositories/test_repository.dart @@ -2,6 +2,7 @@ import 'dart:io'; import 'package:dartz/dartz.dart'; import 'package:firebase_dart/firebase_dart.dart'; +import 'package:hermes_tests/api/core/hermes.pb.dart'; import 'package:hermes_tests/domain/entities/test_metadata.dart'; import 'package:hermes_tests/domain/exceptions/storage_failures.dart'; import 'package:hermes_tests/domain/interfaces/i_test_repository.dart'; @@ -140,7 +141,7 @@ class TestRepository implements ITestRepository { return right(unit); } catch (e) { return left( - StorageFailure.unexpected( + StorageFailure.remoteTestNotFound( message: e.toString(), ), ); @@ -153,4 +154,99 @@ class TestRepository implements ITestRepository { ), ); } + + @override + Future> delete(TestMetadata testMetadata) async { + return await testMetadata.maybeMap( + testToDelete: (testMetadata) async { + try { + final remoteInputFilePath = path.join( + testMetadata.fromDir, + testMetadata.problemId, + testMetadata.testId, + testMetadata.inputFilename, + ); + await _storage.ref(remoteInputFilePath).delete(); + + final remoteOutputFilePath = path.join( + testMetadata.fromDir, + testMetadata.problemId, + testMetadata.testId, + testMetadata.outputFilename, + ); + await _storage.ref(remoteOutputFilePath).delete(); + + return right(unit); + } catch (e) { + return left( + StorageFailure.remoteTestNotFound( + message: e.toString(), + ), + ); + } + }, + orElse: () { + return left( + StorageFailure.unexpected( + message: 'Invalid test metadata passed to repository delete method', + ), + ); + }, + ); + } + + @override + Future> + getDownloadLinkForTest(TestMetadata testMetadata) async { + return await testMetadata.maybeMap( + testToGetDownloadLinkFor: (testMetadata) async { + try { + final remoteInputFilePath = path.join( + testMetadata.fromDir, + testMetadata.problemId, + testMetadata.testId, + testMetadata.inputFilename, + ); + + final remoteOutputFilePath = path.join( + testMetadata.fromDir, + testMetadata.problemId, + testMetadata.testId, + testMetadata.outputFilename, + ); + + final testRelativePath = path.join( + testMetadata.problemId, + testMetadata.testId, + ); + + final response = GetDownloadLinkForTestResponse( + inputLink: await _storage.ref(remoteInputFilePath).getDownloadURL(), + outputLink: + await _storage.ref(remoteOutputFilePath).getDownloadURL(), + status: StatusResponse() + ..message = + 'Successfully download link retrieval for $testRelativePath test' + ..code = StatusCode.Ok, + ); + + return right(response); + } catch (e) { + return left( + StorageFailure.remoteTestNotFound( + message: e.toString(), + ), + ); + } + }, + orElse: () { + return left( + StorageFailure.unexpected( + message: + 'Invalid test metadata passed to repository getDownloadLinkForTest method', + ), + ); + }, + ); + } } diff --git a/hermes-tests/protos/hermes.proto b/hermes-tests/protos/hermes.proto index eb040a6..c78a44b 100644 --- a/hermes-tests/protos/hermes.proto +++ b/hermes-tests/protos/hermes.proto @@ -33,10 +33,34 @@ message DownloadResponse { } } +// gRPC GetDownloadLinkForTest request and response messages +message GetDownloadLinkForTestRequest { + string problem_id = 1; + string test_id = 2; +} + +message GetDownloadLinkForTestResponse { + string input_link = 1; + string output_link = 2; + StatusResponse status = 3; +} + +// gRPC DeleteTest request and response messages +message DeleteTestRequest { + string problem_id = 1; + string test_id = 2; +} + +message DeleteTestResponse { + StatusResponse status = 1; +} + // Hermes Service service HermesTestsService { rpc UploadTest(stream UploadRequest) returns (UploadResponse) {} rpc DownloadTest(DownloadRequest) returns (stream DownloadResponse) {} + rpc GetDownloadLinkForTest(GetDownloadLinkForTestRequest) returns (GetDownloadLinkForTestResponse) {} + rpc DeleteTest(DeleteTestRequest) returns (DeleteTestResponse) {} } // core messages @@ -59,4 +83,4 @@ enum StatusCode { Ok = 0; Failed = 1; Unknown = 2; -} +} \ No newline at end of file diff --git a/hermes-tests/pubspec.lock b/hermes-tests/pubspec.lock index bdc1aec..251006c 100644 --- a/hermes-tests/pubspec.lock +++ b/hermes-tests/pubspec.lock @@ -5,58 +5,58 @@ packages: dependency: transitive description: name: _discoveryapis_commons - sha256: efd530ec09e3fea98529b0d2b192495e252e336c6e93ea8df1875e6e823ebc62 + sha256: f8bb1fdbd77f3d5c1d62b5b0eca75fbf1e41bf4f6c62628f880582e2182ae45d url: "https://pub.dev" source: hosted - version: "1.0.5" + version: "1.0.6" _fe_analyzer_shared: dependency: transitive description: name: _fe_analyzer_shared - sha256: "0c80aeab9bc807ab10022cd3b2f4cf2ecdf231949dc1ddd9442406a003f19201" + sha256: ae92f5d747aee634b87f89d9946000c2de774be1d6ac3e58268224348cd0101a url: "https://pub.dev" source: hosted - version: "52.0.0" + version: "61.0.0" analyzer: dependency: transitive description: name: analyzer - sha256: cd8ee83568a77f3ae6b913a36093a1c9b1264e7cb7f834d9ddd2311dade9c1f4 + sha256: ea3d8652bda62982addfd92fdc2d0214e5f82e43325104990d4f4c4a2a313562 url: "https://pub.dev" source: hosted - version: "5.4.0" + version: "5.13.0" archive: dependency: "direct main" description: name: archive - sha256: d6347d54a2d8028e0437e3c099f66fdb8ae02c4720c1e7534c9f24c10351f85d + sha256: "0c8368c9b3f0abbc193b9d6133649a614204b528982bebc7026372d61677ce3a" url: "https://pub.dev" source: hosted - version: "3.3.6" + version: "3.3.7" args: dependency: transitive description: name: args - sha256: "4cab82a83ffef80b262ddedf47a0a8e56ee6fbf7fe21e6e768b02792034dd440" + sha256: eef6c46b622e0494a36c5a12d10d77fb4e855501a91c1b9ef9339326e58f0596 url: "https://pub.dev" source: hosted - version: "2.4.0" + version: "2.4.2" asn1lib: dependency: transitive description: name: asn1lib - sha256: ab96a1cb3beeccf8145c52e449233fe68364c9641623acd3adad66f8184f1039 + sha256: b74e3842a52c61f8819a1ec8444b4de5419b41a7465e69d4aa681445377398b0 url: "https://pub.dev" source: hosted - version: "1.4.0" + version: "1.4.1" async: dependency: transitive description: name: async - sha256: bfe67ef28df125b7dddcea62755991f807aa39a2492a23e1550161692950bbe0 + sha256: "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c" url: "https://pub.dev" source: hosted - version: "2.10.0" + version: "2.11.0" boolean_selector: dependency: transitive description: @@ -85,18 +85,18 @@ packages: dependency: transitive description: name: build_daemon - sha256: "6bc5544ea6ce4428266e7ea680e945c68806c4aae2da0eb5e9ccf38df8d6acbf" + sha256: "757153e5d9cd88253cb13f28c2fb55a537dc31fefd98137549895b5beb7c6169" url: "https://pub.dev" source: hosted - version: "3.1.0" + version: "3.1.1" build_resolvers: dependency: transitive description: name: build_resolvers - sha256: "7c35a3a7868626257d8aee47b51c26b9dba11eaddf3431117ed2744951416aab" + sha256: "6c4dd11d05d056e76320b828a1db0fc01ccd376922526f8e9d6c796a5adbac20" url: "https://pub.dev" source: hosted - version: "2.1.0" + version: "2.2.1" build_runner: dependency: "direct dev" description: @@ -109,10 +109,10 @@ packages: dependency: transitive description: name: build_runner_core - sha256: "14febe0f5bac5ae474117a36099b4de6f1dbc52df6c5e55534b3da9591bf4292" + sha256: "0671ad4162ed510b70d0eb4ad6354c249f8429cab4ae7a4cec86bbc2886eb76e" url: "https://pub.dev" source: hosted - version: "7.2.7" + version: "7.2.7+1" built_collection: dependency: transitive description: @@ -125,18 +125,18 @@ packages: dependency: transitive description: name: built_value - sha256: "169565c8ad06adb760c3645bf71f00bff161b00002cace266cad42c5d22a7725" + sha256: "598a2a682e2a7a90f08ba39c0aaa9374c5112340f0a2e275f61b59389543d166" url: "https://pub.dev" source: hosted - version: "8.4.3" + version: "8.6.1" checked_yaml: dependency: transitive description: name: checked_yaml - sha256: "3d1505d91afa809d177efd4eed5bb0eb65805097a1463abdd2add076effae311" + sha256: feb6bed21949061731a7a75fc5d2aa727cf160b91af9a3e464c5e3a32e28b5ff url: "https://pub.dev" source: hosted - version: "2.0.2" + version: "2.0.3" clock: dependency: transitive description: @@ -149,18 +149,18 @@ packages: dependency: transitive description: name: code_builder - sha256: "0d43dd1288fd145de1ecc9a3948ad4a6d5a82f0a14c4fdd0892260787d975cbe" + sha256: "4ad01d6e56db961d29661561effde45e519939fdaeb46c351275b182eac70189" url: "https://pub.dev" source: hosted - version: "4.4.0" + version: "4.5.0" collection: dependency: transitive description: name: collection - sha256: cfc915e6923fe5ce6e153b0723c753045de46de1b4d63771530504004a45fae0 + sha256: ee67cb0715911d28db6bf4af1026078bd6f0128b07a5f66fb2ed94ec6783c09a url: "https://pub.dev" source: hosted - version: "1.17.0" + version: "1.18.0" convert: dependency: transitive description: @@ -197,10 +197,10 @@ packages: dependency: transitive description: name: crypto - sha256: aa274aa7774f8964e4f4f38cc994db7b6158dd36e9187aaceaddc994b35c6c67 + sha256: ff625774173754681d66daaf4a448684fb04b78f902da9cb3d308c19cc5e8bab url: "https://pub.dev" source: hosted - version: "3.0.2" + version: "3.0.3" crypto_keys: dependency: transitive description: @@ -213,10 +213,10 @@ packages: dependency: transitive description: name: dart_style - sha256: "7a03456c3490394c8e7665890333e91ae8a49be43542b616e414449ac358acd4" + sha256: "1efa911ca7086affd35f463ca2fc1799584fb6aa89883cf0af8e3664d6a02d55" url: "https://pub.dev" source: hosted - version: "2.2.4" + version: "2.3.2" dartz: dependency: "direct main" description: @@ -269,18 +269,18 @@ packages: dependency: "direct dev" description: name: freezed - sha256: e819441678f1679b719008ff2ff0ef045d66eed9f9ec81166ca0d9b02a187454 + sha256: "2df89855fe181baae3b6d714dc3c4317acf4fccd495a6f36e5e00f24144c6c3b" url: "https://pub.dev" source: hosted - version: "2.3.2" + version: "2.4.1" freezed_annotation: dependency: "direct main" description: name: freezed_annotation - sha256: aeac15850ef1b38ee368d4c53ba9a847e900bb2c53a4db3f6881cbb3cb684338 + sha256: c3fd9336eb55a38cc1bbd79ab17573113a8deccd0ecbbf926cca3c62803b5c2d url: "https://pub.dev" source: hosted - version: "2.2.0" + version: "2.4.1" frontend_server_client: dependency: transitive description: @@ -293,18 +293,18 @@ packages: dependency: "direct main" description: name: get_it - sha256: "290fde3a86072e4b37dbb03c07bec6126f0ecc28dad403c12ffe2e5a2d751ab7" + sha256: "529de303c739fca98cd7ece5fca500d8ff89649f1bb4b4e94fb20954abcd7468" url: "https://pub.dev" source: hosted - version: "7.2.0" + version: "7.6.0" glob: dependency: transitive description: name: glob - sha256: "4515b5b6ddb505ebdd242a5f2cc5d22d3d6a80013789debfbda7777f47ea308c" + sha256: "0e7014b3b7d4dac1ca4d6114f82bf1782ee86745b9b42a92c9289c23d8a0ab63" url: "https://pub.dev" source: hosted - version: "2.1.1" + version: "2.1.2" googleapis: dependency: transitive description: @@ -317,18 +317,18 @@ packages: dependency: transitive description: name: googleapis_auth - sha256: "127b1bbd32170ab8312f503bd57f1d654d8e4039ddfbc63c027d3f7ade0eff74" + sha256: af7c3a3edf9d0de2e1e0a77e994fae0a581c525fa7012af4fa0d4a52ed9484da url: "https://pub.dev" source: hosted - version: "1.3.1" + version: "1.4.1" graphs: dependency: transitive description: name: graphs - sha256: f9e130f3259f52d26f0cfc0e964513796dafed572fa52e45d2f8d6ca14db39b2 + sha256: aedc5a15e78fc65a6e23bcd927f24c64dd995062bcd1ca6eda65a3cff92a4d19 url: "https://pub.dev" source: hosted - version: "2.2.0" + version: "2.3.1" grpc: dependency: "direct main" description: @@ -349,10 +349,10 @@ packages: dependency: transitive description: name: http - sha256: "6aa2946395183537c8b880962d935877325d6a09a2867c3970c05c0fed6ac482" + sha256: "5895291c13fa8a3bd82e76d5627f69e0d85ca6a30dcac95c4ea19a5d555879c2" url: "https://pub.dev" source: hosted - version: "0.13.5" + version: "0.13.6" http2: dependency: transitive description: @@ -381,18 +381,18 @@ packages: dependency: "direct main" description: name: injectable - sha256: "7dab7d341feb40a0590d9ff6261aea9495522005e2c6763f9161a4face916f7b" + sha256: fbe4b673f8c344e03eb4ab50fa853405872f401bbf6a7ba84b2b7447ac81ed1b url: "https://pub.dev" source: hosted - version: "2.1.0" + version: "2.1.2" injectable_generator: dependency: "direct dev" description: name: injectable_generator - sha256: b206de637c1960007b0beebe447a6ee3cf30c9e5f14542083024a9d0c49a7a09 + sha256: "4fe3db041b680098ce3af40b680734906e955a0ce89170d3993626d48d27b2f3" url: "https://pub.dev" source: hosted - version: "2.1.4" + version: "2.1.6" intl: dependency: transitive description: @@ -421,26 +421,26 @@ packages: dependency: transitive description: name: js - sha256: "5528c2f391ededb7775ec1daa69e65a2d61276f7552de2b5f7b8d34ee9fd4ab7" + sha256: f2c445dce49627136094980615a031419f7f3eb393237e4ecd97ac15dea343f3 url: "https://pub.dev" source: hosted - version: "0.6.5" + version: "0.6.7" json_annotation: dependency: "direct main" description: name: json_annotation - sha256: c33da08e136c3df0190bd5bbe51ae1df4a7d96e7954d1d7249fea2968a72d317 + sha256: b10a7b2ff83d83c777edba3c6a0f97045ddadd56c944e1a23a3fdf43a1bf4467 url: "https://pub.dev" source: hosted - version: "4.8.0" + version: "4.8.1" json_serializable: dependency: "direct dev" description: name: json_serializable - sha256: dadc08bd61f72559f938dd08ec20dbfec6c709bba83515085ea943d2078d187a + sha256: "43793352f90efa5d8b251893a63d767b2f7c833120e3cc02adad55eefec04dc7" url: "https://pub.dev" source: hosted - version: "6.6.1" + version: "6.6.2" lints: dependency: "direct dev" description: @@ -453,34 +453,34 @@ packages: dependency: "direct main" description: name: logger - sha256: "5076f09225f91dc49289a4ccb92df2eeea9ea01cf7c26d49b3a1f04c6a49eec1" + sha256: "66cb048220ca51cf9011da69fa581e4ee2bed4be6e82870d9e9baae75739da49" url: "https://pub.dev" source: hosted - version: "1.1.0" + version: "2.0.1" logging: dependency: transitive description: name: logging - sha256: "04094f2eb032cbb06c6f6e8d3607edcfcb0455e2bb6cbc010cb01171dcb64e6d" + sha256: "623a88c9594aa774443aa3eb2d41807a48486b5613e67599fb4c41c0ad47c340" url: "https://pub.dev" source: hosted - version: "1.1.1" + version: "1.2.0" matcher: dependency: transitive description: name: matcher - sha256: "16db949ceee371e9b99d22f88fa3a73c4e59fd0afed0bd25fc336eb76c198b72" + sha256: "1803e76e6653768d64ed8ff2e1e67bea3ad4b923eb5c56a295c3e634bad5960e" url: "https://pub.dev" source: hosted - version: "0.12.13" + version: "0.12.16" meta: dependency: transitive description: name: meta - sha256: "6c268b42ed578a53088d834796959e4a1814b5e9e164f147f580a386e5decf42" + sha256: "3c74dbf8763d36539f114c799d8a2d87343b5067e9d796ca22b5eb8437090ee3" url: "https://pub.dev" source: hosted - version: "1.8.0" + version: "1.9.1" mime: dependency: transitive description: @@ -501,10 +501,10 @@ packages: dependency: transitive description: name: node_preamble - sha256: "8ebdbaa3b96d5285d068f80772390d27c21e1fa10fb2df6627b1b9415043608d" + sha256: "6e7eac89047ab8a8d26cf16127b5ed26de65209847630400f9aefd7cd5c730db" url: "https://pub.dev" source: hosted - version: "2.0.1" + version: "2.0.2" openid_client: dependency: transitive description: @@ -525,26 +525,26 @@ packages: dependency: "direct main" description: name: path - sha256: db9d4f58c908a4ba5953fcee2ae317c94889433e5024c27ce74a37f94267945b + sha256: "8829d8a55c13fc0e37127c29fedf290c102f4e40ae94ada574091fe0ff96c917" url: "https://pub.dev" source: hosted - version: "1.8.2" + version: "1.8.3" petitparser: dependency: transitive description: name: petitparser - sha256: "49392a45ced973e8d94a85fdb21293fbb40ba805fc49f2965101ae748a3683b4" + sha256: cb3798bef7fc021ac45b308f4b51208a152792445cce0448c9a4ba5879dd8750 url: "https://pub.dev" source: hosted - version: "5.1.0" + version: "5.4.0" pointycastle: dependency: transitive description: name: pointycastle - sha256: db7306cf0249f838d1a24af52b5a5887c5bf7f31d8bb4e827d071dc0939ad346 + sha256: "7c1e5f0d23c9016c5bbd8b1473d0d3fb3fc851b876046039509e18e0c7485f2c" url: "https://pub.dev" source: hosted - version: "3.6.2" + version: "3.7.3" pool: dependency: transitive description: @@ -565,18 +565,18 @@ packages: dependency: transitive description: name: pub_semver - sha256: "307de764d305289ff24ad257ad5c5793ce56d04947599ad68b3baa124105fc17" + sha256: "40d3ab1bbd474c4c2328c91e3a7df8c6dd629b79ece4c4bd04bee496a224fb0c" url: "https://pub.dev" source: hosted - version: "2.1.3" + version: "2.1.4" pubspec_parse: dependency: transitive description: name: pubspec_parse - sha256: "75f6614d6dde2dc68948dffbaa4fe5dae32cd700eb9fb763fe11dfb45a3c4d0a" + sha256: c63b2876e58e194e4b0828fcb080ad0e06d051cb607a6be51a9e084f47cb9367 url: "https://pub.dev" source: hosted - version: "1.2.1" + version: "1.2.3" quiver: dependency: transitive description: @@ -605,58 +605,58 @@ packages: dependency: transitive description: name: shelf - sha256: c24a96135a2ccd62c64b69315a14adc5c3419df63b4d7c05832a346fdb73682c + sha256: ad29c505aee705f41a4d8963641f91ac4cee3c8fad5947e033390a7bd8180fa4 url: "https://pub.dev" source: hosted - version: "1.4.0" + version: "1.4.1" shelf_packages_handler: dependency: transitive description: name: shelf_packages_handler - sha256: aef74dc9195746a384843102142ab65b6a4735bb3beea791e63527b88cc83306 + sha256: "89f967eca29607c933ba9571d838be31d67f53f6e4ee15147d5dc2934fee1b1e" url: "https://pub.dev" source: hosted - version: "3.0.1" + version: "3.0.2" shelf_static: dependency: transitive description: name: shelf_static - sha256: e792b76b96a36d4a41b819da593aff4bdd413576b3ba6150df5d8d9996d2e74c + sha256: a41d3f53c4adf0f57480578c1d61d90342cd617de7fc8077b1304643c2d85c1e url: "https://pub.dev" source: hosted - version: "1.1.1" + version: "1.1.2" shelf_web_socket: dependency: transitive description: name: shelf_web_socket - sha256: a988c0e8d8ffbdb8a28aa7ec8e449c260f3deb808781fe1284d22c5bba7156e8 + sha256: "9ca081be41c60190ebcb4766b2486a7d50261db7bd0f5d9615f2d653637a84c1" url: "https://pub.dev" source: hosted - version: "1.0.3" + version: "1.0.4" sortedmap: dependency: transitive description: name: sortedmap - sha256: "62ec002cc2ed7e0545f27c0a8a69648fe253d5a2773260e7abdbf0da2ebb1cea" + sha256: "8c9e19b93c7e1b4d795776a02719df229606cb57f46f857a7f6eb80c97fc0600" url: "https://pub.dev" source: hosted - version: "0.5.2" + version: "0.5.3" source_gen: dependency: transitive description: name: source_gen - sha256: c2bea18c95cfa0276a366270afaa2850b09b4a76db95d546f3d003dcc7011298 + sha256: "373f96cf5a8744bc9816c1ff41cf5391bbdbe3d7a96fe98c622b6738a8a7bd33" url: "https://pub.dev" source: hosted - version: "1.2.7" + version: "1.3.2" source_helper: dependency: transitive description: name: source_helper - sha256: "3b67aade1d52416149c633ba1bb36df44d97c6b51830c2198e934e3fca87ca1f" + sha256: "6adebc0006c37dd63fe05bca0a929b99f06402fc95aa35bf36d67f5c06de01fd" url: "https://pub.dev" source: hosted - version: "1.3.3" + version: "1.3.4" source_map_stack_trace: dependency: transitive description: @@ -669,34 +669,34 @@ packages: dependency: transitive description: name: source_maps - sha256: "490098075234dcedb83c5d949b4c93dad5e6b7702748de000be2b57b8e6b2427" + sha256: "708b3f6b97248e5781f493b765c3337db11c5d2c81c3094f10904bfa8004c703" url: "https://pub.dev" source: hosted - version: "0.10.11" + version: "0.10.12" source_span: dependency: transitive description: name: source_span - sha256: dd904f795d4b4f3b870833847c461801f6750a9fa8e61ea5ac53f9422b31f250 + sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c" url: "https://pub.dev" source: hosted - version: "1.9.1" + version: "1.10.0" stack_trace: dependency: transitive description: name: stack_trace - sha256: c3c7d8edb15bee7f0f74debd4b9c5f3c2ea86766fe4178eb2a18eb30a0bdaed5 + sha256: "73713990125a6d93122541237550ee3352a2d84baad52d375a4cad2eb9b7ce0b" url: "https://pub.dev" source: hosted - version: "1.11.0" + version: "1.11.1" stream_channel: dependency: transitive description: name: stream_channel - sha256: "83615bee9045c1d322bbbd1ba209b7a749c2cbcdcb3fdd1df8eb488b3279c1c8" + sha256: ba2aa5d8cc609d96bbb2899c28934f9e1af5cddbd60a827822ea467161eb54e7 url: "https://pub.dev" source: hosted - version: "2.1.1" + version: "2.1.2" stream_transform: dependency: transitive description: @@ -717,10 +717,10 @@ packages: dependency: transitive description: name: synchronized - sha256: "33b31b6beb98100bf9add464a36a8dd03eb10c7a8cf15aeec535e9b054aaf04b" + sha256: "5fcbd27688af6082f5abd611af56ee575342c30e87541d0245f7ff99faa02c60" url: "https://pub.dev" source: hosted - version: "3.0.1" + version: "3.1.0" term_glyph: dependency: transitive description: @@ -733,26 +733,26 @@ packages: dependency: "direct dev" description: name: test - sha256: a5fcd2d25eeadbb6589e80198a47d6a464ba3e2049da473943b8af9797900c2d + sha256: "13b41f318e2a5751c3169137103b60c584297353d4b1761b66029bae6411fe46" url: "https://pub.dev" source: hosted - version: "1.22.0" + version: "1.24.3" test_api: dependency: transitive description: name: test_api - sha256: ad540f65f92caa91bf21dfc8ffb8c589d6e4dc0c2267818b4cc2792857706206 + sha256: "75760ffd7786fffdfb9597c35c5b27eaeec82be8edfb6d71d32651128ed7aab8" url: "https://pub.dev" source: hosted - version: "0.4.16" + version: "0.6.0" test_core: dependency: transitive description: name: test_core - sha256: "0ef9755ec6d746951ba0aabe62f874b707690b5ede0fecc818b138fcc9b14888" + sha256: "99806e9e6d95c7b059b7a0fc08f07fc53fabe54a829497f0d9676299f1e8637e" url: "https://pub.dev" source: hosted - version: "0.4.20" + version: "0.5.3" timing: dependency: transitive description: @@ -765,10 +765,10 @@ packages: dependency: transitive description: name: typed_data - sha256: "26f87ade979c47a150c9eaab93ccd2bebe70a27dc0b4b29517f2904f04eb11a5" + sha256: facc8d6582f16042dd49f2463ff1bd6e2c9ef9f3d5da3d9b087e244a7b564b3c url: "https://pub.dev" source: hosted - version: "1.3.1" + version: "1.3.2" uuid: dependency: transitive description: @@ -781,10 +781,10 @@ packages: dependency: transitive description: name: vm_service - sha256: e7fb6c2282f7631712b69c19d1bff82f3767eea33a2321c14fa59ad67ea391c7 + sha256: ada49637c27973c183dad90beb6bd781eea4c9f5f955d35da172de0af7bd3440 url: "https://pub.dev" source: hosted - version: "9.4.0" + version: "11.8.0" watcher: dependency: transitive description: @@ -797,10 +797,10 @@ packages: dependency: transitive description: name: web_socket_channel - sha256: ca49c0bc209c687b887f30527fb6a9d80040b072cc2990f34b9bec3e7663101b + sha256: d88238e5eac9a42bb43ca4e721edba3c08c6354d4a53063afaa568516217621b url: "https://pub.dev" source: hosted - version: "2.3.0" + version: "2.4.0" webkit_inspection_protocol: dependency: transitive description: @@ -821,9 +821,9 @@ packages: dependency: transitive description: name: yaml - sha256: "23812a9b125b48d4007117254bca50abb6c712352927eece9e155207b1db2370" + sha256: "75769501ea3489fca56601ff33454fe45507ea3bfb014161abc3b43ae25989d5" url: "https://pub.dev" source: hosted - version: "3.1.1" + version: "3.1.2" sdks: - dart: ">=2.19.2 <3.0.0" + dart: ">=2.19.2 <4.0.0" diff --git a/hermes-tests/pubspec.yaml b/hermes-tests/pubspec.yaml index 8d37434..a6ef748 100644 --- a/hermes-tests/pubspec.yaml +++ b/hermes-tests/pubspec.yaml @@ -16,8 +16,8 @@ dependencies: get_it: ^7.2.0 grpc: ^3.1.0 injectable: ^2.1.0 - json_annotation: ^4.8.0 - logger: ^1.1.0 + json_annotation: ^4.8.1 + logger: ^2.0.1 mocktail: ^0.3.0 path: ^1.8.0 @@ -27,4 +27,4 @@ dev_dependencies: injectable_generator: ^2.1.4 json_serializable: ^6.6.1 lints: ^2.0.0 - test: ^1.21.0 + test: ^1.21.0 \ No newline at end of file diff --git a/hermes-tests/temp/test/archived/sum/1-invalid.tar.gz b/hermes-tests/temp/test/archived/sum/1-invalid.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..22fbc75347a98d003eed28787496fe8e17dddc22 GIT binary patch literal 185 zcmb2|=3oE==C_xU3^im`LEs>agZx;lJgiMGy@_%;91P4Bu zzU+|Fv`IlT{AV{s&gV|8og&a9{(j2FNh%t$uiS&PWW3&O4Rf|D%YAoyqs*?_x|;8= z{<-gbW;5+{MA_4*tiOihGK=dk?T`H>{;}|ty_BKX?5M_T|Mvc0%bXCr?xo+<=l_rW idz$xOu`Bie{e-P|t(YM01Cu{4@b*>v8#8DyFaQ8ES5g%K literal 0 HcmV?d00001 diff --git a/hermes-tests/temp/test/archived/sum/1-oversize.zip b/hermes-tests/temp/test/archived/sum/1-oversize.zip new file mode 100644 index 0000000000000000000000000000000000000000..899e08720074569e447df565aaa3939a74104309 GIT binary patch literal 470 zcmWIWW@h1H00HxuYY|`ulwe|zVKCGW4dG;9&g>~m%K_rj3T_5QmKV$n3}7Mvs8Twa8j!w58COQQ|g m9Apm@XCkUkkxgs|n~3CZTn4hT0aXHnkeT5%kiH7yFaQ8CVpR$N literal 0 HcmV?d00001 diff --git a/hermes-tests/temp/test/archived/sum/1-valid.zip b/hermes-tests/temp/test/archived/sum/1-valid.zip new file mode 100644 index 0000000000000000000000000000000000000000..9a2c576912634c91965634d5d191d28aa4f25397 GIT binary patch literal 320 zcmWIWW@h1H00H;NYZ1Cdo8*{*Y!K#TkYUKoD=00|E2$_64dG;9e%4l&_Nb#Qt+axh zfsy3}P!X6gR4@!cF@<;ERVhZG2_Vb`G$p^Zga~7d0=yZSmmU3^im`LEs>agZx;lJgiMGy@_%;91P4Bu zzU+|Fv`IlT{AV{s&gV|8og&a9{(j2FNh%t$uiS&PWW3&O4Rf|D%YAoyqs*?_x|;8= z{<-gbW;5+{MA_4*tiOihGK=dk?T`H>{;}|ty_BKX?5M_T|Mvc0%bXCr?xo+<=l_rW idz$xOu`Bie{e-P|t(YM01Cu{4@b*>v8#8DyFaQ8ES5g%K literal 0 HcmV?d00001 diff --git a/hermes-tests/temp/test/unarchived/sum/2/input.txt b/hermes-tests/temp/test/unarchived/sum/2/input.txt new file mode 100644 index 0000000..92880af --- /dev/null +++ b/hermes-tests/temp/test/unarchived/sum/2/input.txt @@ -0,0 +1 @@ +1 1 \ No newline at end of file diff --git a/hermes-tests/temp/test/unarchived/sum/2/output.txt b/hermes-tests/temp/test/unarchived/sum/2/output.txt new file mode 100644 index 0000000..d8263ee --- /dev/null +++ b/hermes-tests/temp/test/unarchived/sum/2/output.txt @@ -0,0 +1 @@ +2 \ No newline at end of file diff --git a/hermes-tests/temp/test/unarchived/sum/6/input.txt b/hermes-tests/temp/test/unarchived/sum/6/input.txt new file mode 100644 index 0000000..92880af --- /dev/null +++ b/hermes-tests/temp/test/unarchived/sum/6/input.txt @@ -0,0 +1 @@ +1 1 \ No newline at end of file diff --git a/hermes-tests/test/api/server/hermes_grpc_server_integration_test.dart b/hermes-tests/test/api/server/hermes_grpc_server_integration_test.dart index 27229be..b94f718 100644 --- a/hermes-tests/test/api/server/hermes_grpc_server_integration_test.dart +++ b/hermes-tests/test/api/server/hermes_grpc_server_integration_test.dart @@ -50,9 +50,9 @@ void main() { 'Then the uploaded test is accessible from the remote firebase cloud storage', () async { // Arrange - final String testPath = 'temp/test/archived/marsx/1-valid.zip'; + final String testPath = 'temp/test/archived/sum/1-valid.zip'; final Metadata testMetadata = Metadata() - ..problemId = 'marsx' + ..problemId = 'sum' ..testId = '10' ..testSize = File(testPath).lengthSync(); @@ -100,7 +100,7 @@ void main() { () async { // Arrange final request = DownloadRequest() - ..problemId = 'marsx' + ..problemId = 'sum' ..testId = '9'; // Act @@ -126,5 +126,63 @@ void main() { client.close(); }); + + test( + 'Given grpc client requests to delete given test, ' + 'When delete rpc service method is called on the server-side, ' + 'Then the test is deleted from the remote firebase cloud storage', + () async { + // Arrange + final String testPath = 'temp/test/archived/sum/1-valid.zip'; + final Metadata testMetadata = Metadata() + ..problemId = 'sum' + ..testId = '10' + ..testSize = File(testPath).lengthSync(); + + await client.uploadTest( + testPath, + testMetadata, + ); + + final DeleteTestRequest request = DeleteTestRequest() + ..problemId = testMetadata.problemId + ..testId = testMetadata.testId; + + // Act + final DeleteTestResponse response = await client.deleteTest(request); + + // Assert + expect(response.status.code, StatusCode.Ok); + + final String localTestArchivePath = + '${testConfig.tempLocalArchivedTestFolder}/${testMetadata.problemId}/${testMetadata.testId}.zip'; + final String localTestPath = + '${testConfig.tempLocalUnarchivedTestFolder}/${testMetadata.problemId}/${testMetadata.testId}'; + + FileManager.disposeLocalFile(localTestArchivePath); + FileManager.disposeLocalDirectory(localTestPath); + + client.close(); + }); + + test( + 'Given grpc client requests to retrieve the download link for a given test, ' + 'When getDownloadLink rpc service method is called on the server-side, ' + 'Then the download link is successfully retrieved', () async { + // Arrange + final request = GetDownloadLinkForTestRequest() + ..problemId = 'sum' + ..testId = '9'; + + // Act + final response = await client.getDownloadLinkForTest(request); + + // Assert + expect(response.status.code, StatusCode.Ok); + expect(response.inputLink, isNotNull); + expect(response.outputLink, isNotNull); + + client.close(); + }); }); } diff --git a/hermes-tests/test/application/use_cases/download/download_test_use_case_unit_test.dart b/hermes-tests/test/application/use_cases/download/download_test_use_case_unit_test.dart index c49f9a8..7011d4f 100644 --- a/hermes-tests/test/application/use_cases/download/download_test_use_case_unit_test.dart +++ b/hermes-tests/test/application/use_cases/download/download_test_use_case_unit_test.dart @@ -23,7 +23,7 @@ void main() { group('Download Test UseCase Unit Tests', () { setUpAll(() { testConfig = ServerConfig.fromJson( - Config.fromJsonFile('config.json').test, + Config.fromEnv('HERMES_CONFIG').test, ); mockTestRepository = MockTestRepository(); final logger = Logger( @@ -52,7 +52,7 @@ void main() { () async { // Arrange final TestMetadata requestTestMetadata = TestMetadata.testToDownload( - problemId: 'marsx', + problemId: 'sum', testId: '2', fromDir: testConfig.remoteUnarchivedTestFolder, toDir: testConfig.tempLocalUnarchivedTestFolder, @@ -84,7 +84,7 @@ void main() { 'Then localTestNotFound storage failure is returned', () async { // Arrange final TestMetadata requestTestMetadata = TestMetadata.testToDownload( - problemId: 'marsx', + problemId: 'sum', testId: '6', fromDir: testConfig.remoteUnarchivedTestFolder, toDir: testConfig.tempLocalUnarchivedTestFolder, @@ -122,7 +122,7 @@ void main() { 'Then unexpected storage failure is returned', () async { // Arrange final TestMetadata requestTestMetadata = TestMetadata.testToDownload( - problemId: 'marsx', + problemId: 'sum', testId: '5', fromDir: testConfig.remoteUnarchivedTestFolder, toDir: testConfig.tempLocalUnarchivedTestFolder, @@ -163,7 +163,7 @@ void main() { 'Then unexpected storage failure is returned', () async { // Arrange final TestMetadata requestTestMetadata = TestMetadata.testToUpload( - problemId: 'marsx', + problemId: 'sum', testId: '5', fromDir: testConfig.remoteUnarchivedTestFolder, toDir: testConfig.tempLocalUnarchivedTestFolder, diff --git a/hermes-tests/test/application/use_cases/download/encode_test_use_case_unit_test.dart b/hermes-tests/test/application/use_cases/download/encode_test_use_case_unit_test.dart index 9aaecfd..42ea027 100644 --- a/hermes-tests/test/application/use_cases/download/encode_test_use_case_unit_test.dart +++ b/hermes-tests/test/application/use_cases/download/encode_test_use_case_unit_test.dart @@ -19,7 +19,7 @@ void main() { group('Encode Test UseCase Unit Tests', () { setUpAll(() { testConfig = ServerConfig.fromJson( - Config.fromJsonFile('config.json').test, + Config.fromEnv('HERMES_CONFIG').test, ); final logger = Logger( output: FileLogOutput( @@ -42,7 +42,7 @@ void main() { 'Then metadata for corresponding archived test is returned', () async { // Arrange final TestMetadata testMetadata = TestMetadata.testToEncode( - problemId: 'marsx', + problemId: 'sum', testId: '2', archiveTypeExtension: testConfig.archiveTypeExtension, fromDir: testConfig.tempLocalUnarchivedTestFolder, @@ -77,7 +77,7 @@ void main() { 'Then metadata for corresponding archived test is returned', () async { // Arrange final TestMetadata testMetadata = TestMetadata.testToEncode( - problemId: 'marsx', + problemId: 'sum', testId: '1', archiveTypeExtension: testConfig.archiveTypeExtension, fromDir: testConfig.tempLocalUnarchivedTestFolder, @@ -103,7 +103,7 @@ void main() { 'Then localTestNotFound storage failure is returned', () async { // Arrange final TestMetadata testMetadata = TestMetadata.testToEncode( - problemId: 'marsx', + problemId: 'sum', testId: '3', archiveTypeExtension: testConfig.archiveTypeExtension, fromDir: testConfig.tempLocalUnarchivedTestFolder, @@ -135,7 +135,7 @@ void main() { 'Then invalidLocalTestFormat storage failure is returned', () async { // Arrange final TestMetadata testMetadata = TestMetadata.testToEncode( - problemId: 'marsx', + problemId: 'sum', testId: '6', archiveTypeExtension: testConfig.archiveTypeExtension, fromDir: testConfig.tempLocalUnarchivedTestFolder, @@ -167,7 +167,7 @@ void main() { 'Then unexpected storage failure is returned', () async { // Arrange final TestMetadata testMetadata = TestMetadata.testToDecode( - problemId: 'marsx', + problemId: 'sum', testId: '6', archiveTypeExtension: testConfig.archiveTypeExtension, fromDir: testConfig.tempLocalUnarchivedTestFolder, diff --git a/hermes-tests/test/application/use_cases/download/fragment_test_use_case_unit_test.dart b/hermes-tests/test/application/use_cases/download/fragment_test_use_case_unit_test.dart index 4084bf0..daa9a3f 100644 --- a/hermes-tests/test/application/use_cases/download/fragment_test_use_case_unit_test.dart +++ b/hermes-tests/test/application/use_cases/download/fragment_test_use_case_unit_test.dart @@ -19,7 +19,7 @@ void main() { group('Fragment Test UseCase Unit Tests', () { setUpAll(() { testConfig = ServerConfig.fromJson( - Config.fromJsonFile('config.json').test, + Config.fromEnv('HERMES_CONFIG').test, ); final logger = Logger( output: FileLogOutput( @@ -42,7 +42,7 @@ void main() { 'Then a stream of chunks is returned', () async { // Arrange final TestMetadata testMetadata = TestMetadata.testToFragment( - problemId: 'marsx', + problemId: 'sum', testId: '1', archiveTypeExtension: testConfig.archiveTypeExtension, fromDir: testConfig.tempLocalArchivedTestFolder, @@ -78,7 +78,7 @@ void main() { 'Then localTestNotFound storage failure is returned', () async { // Arrange final TestMetadata testMetadata = TestMetadata.testToFragment( - problemId: 'marsx', + problemId: 'sum', testId: '7', archiveTypeExtension: testConfig.archiveTypeExtension, fromDir: testConfig.tempLocalArchivedTestFolder, @@ -108,7 +108,7 @@ void main() { 'Then invalidLocalTestFormat storage failure is returned', () async { // Arrange final TestMetadata testMetadata = TestMetadata.testToFragment( - problemId: 'marsx', + problemId: 'sum', testId: '4', archiveTypeExtension: testConfig.archiveTypeExtension, fromDir: testConfig.tempLocalArchivedTestFolder, @@ -138,7 +138,7 @@ void main() { 'Then unexpected storage failure is returned', () async { // Arrange final TestMetadata testMetadata = TestMetadata.testToUpload( - problemId: 'marsx', + problemId: 'sum', testId: '4', fromDir: testConfig.tempLocalUnarchivedTestFolder, toDir: testConfig.remoteUnarchivedTestFolder, diff --git a/hermes-tests/test/application/use_cases/upload/decode_test_use_case_unit_test.dart b/hermes-tests/test/application/use_cases/upload/decode_test_use_case_unit_test.dart index bf88dfe..b49c4ca 100644 --- a/hermes-tests/test/application/use_cases/upload/decode_test_use_case_unit_test.dart +++ b/hermes-tests/test/application/use_cases/upload/decode_test_use_case_unit_test.dart @@ -19,7 +19,7 @@ void main() { group('Decode Test UseCase Unit Tests', () { setUpAll(() { testConfig = ServerConfig.fromJson( - Config.fromJsonFile('config.json').test, + Config.fromEnv('HERMES_CONFIG').test, ); final logger = Logger( output: FileLogOutput( @@ -43,7 +43,7 @@ void main() { () async { // Arrange final TestMetadata testMetadata = TestMetadata.testToDecode( - problemId: 'marsx', + problemId: 'sum', testId: '1', archiveTypeExtension: testConfig.archiveTypeExtension, fromDir: testConfig.tempLocalArchivedTestFolder, @@ -86,7 +86,7 @@ void main() { 'Then localTestNotFound storage failure is returned', () async { // Arrange final TestMetadata testMetadata = TestMetadata.testToDecode( - problemId: 'marsx', + problemId: 'sum', testId: '3', archiveTypeExtension: testConfig.archiveTypeExtension, fromDir: testConfig.tempLocalArchivedTestFolder, @@ -118,7 +118,7 @@ void main() { 'Then invalidLocalTestFormat storage failure is returned', () async { // Arrange final TestMetadata testMetadata = TestMetadata.testToDecode( - problemId: 'marsx', + problemId: 'sum', testId: '4', archiveTypeExtension: testConfig.archiveTypeExtension, fromDir: testConfig.tempLocalArchivedTestFolder, @@ -150,7 +150,7 @@ void main() { 'Then unexpected storage failure is returned', () async { // Arrange final TestMetadata testMetadata = TestMetadata.testToEncode( - problemId: 'marsx', + problemId: 'sum', testId: '4', archiveTypeExtension: testConfig.archiveTypeExtension, fromDir: testConfig.tempLocalArchivedTestFolder, diff --git a/hermes-tests/test/application/use_cases/upload/defragment_test_use_case_unit_test.dart b/hermes-tests/test/application/use_cases/upload/defragment_test_use_case_unit_test.dart index b499af7..7b510ba 100644 --- a/hermes-tests/test/application/use_cases/upload/defragment_test_use_case_unit_test.dart +++ b/hermes-tests/test/application/use_cases/upload/defragment_test_use_case_unit_test.dart @@ -21,7 +21,7 @@ void main() { group('Defragment Test UseCase Unit Tests', () { setUpAll(() async { testConfig = ServerConfig.fromJson( - Config.fromJsonFile('config.json').test, + Config.fromEnv('HERMES_CONFIG').test, ); final logger = Logger( output: FileLogOutput( @@ -44,11 +44,11 @@ void main() { 'Then the test is successfully written on disk ' 'and associated metadata is returned', () async { // Arrange - final String inputPath = 'temp/test/archived/marsx/1-valid.zip'; + final String inputPath = 'temp/test/archived/sum/1-valid.zip'; final int testSize = File(inputPath).lengthSync(); final Metadata metadata = Metadata() - ..problemId = 'marsx' + ..problemId = 'sum' ..testId = '2' ..testSize = testSize; @@ -89,11 +89,11 @@ void main() { 'When defragment test use case is called, ' 'Then invalidLocalTestFormat storage failure is returned', () async { // Arrange - final String inputPath = 'temp/test/archived/marsx/1-invalid.tar.xz'; + final String inputPath = 'temp/test/archived/sum/1-invalid.tar.gz'; final int testSize = File(inputPath).lengthSync(); final Metadata metadata = Metadata() - ..problemId = 'marsx' + ..problemId = 'sum' ..testId = '2' ..testSize = testSize; @@ -134,11 +134,11 @@ void main() { 'When defragment test use case is called, ' 'Then testSizeLimitExceeded storage failure is returned', () async { // Arrange - final String inputPath = 'temp/test/archived/marsx/1-oversize.zip'; + final String inputPath = 'temp/test/archived/sum/1-oversize.zip'; final int testSize = File(inputPath).lengthSync(); final Metadata metadata = Metadata() - ..problemId = 'marsx' + ..problemId = 'sum' ..testId = '2' ..testSize = testSize; @@ -179,11 +179,11 @@ void main() { 'When defragment test use case is called, ' 'Then unexpected storage failure is returned', () async { // Arrange - final String inputPath = 'temp/test/archived/marsx/1-oversize.zip'; + final String inputPath = 'temp/test/archived/sum/1-oversize.zip'; final int testSize = File(inputPath).lengthSync(); final Metadata metadata = Metadata() - ..problemId = 'marsx' + ..problemId = 'sum' ..testId = '2' ..testSize = testSize; diff --git a/hermes-tests/test/application/use_cases/upload/upload_test_use_case_unit_test.dart b/hermes-tests/test/application/use_cases/upload/upload_test_use_case_unit_test.dart index 451b57b..f031d7b 100644 --- a/hermes-tests/test/application/use_cases/upload/upload_test_use_case_unit_test.dart +++ b/hermes-tests/test/application/use_cases/upload/upload_test_use_case_unit_test.dart @@ -23,7 +23,7 @@ void main() { group('Upload Test UseCase Unit Tests', () { setUpAll(() { testConfig = ServerConfig.fromJson( - Config.fromJsonFile('config.json').test, + Config.fromEnv('HERMES_CONFIG').test, ); mockTestRepository = MockTestRepository(); final logger = Logger( @@ -50,7 +50,7 @@ void main() { 'Then no storage failure is returned', () async { // Arrange final TestMetadata testMetadata = TestMetadata.testToUpload( - problemId: 'marsx', + problemId: 'sum', testId: '2', fromDir: testConfig.tempLocalUnarchivedTestFolder, toDir: testConfig.tempLocalUnarchivedTestFolder, @@ -85,7 +85,7 @@ void main() { 'Then localtTestNotFound storage failure is returned', () async { // Arrange final TestMetadata testMetadata = TestMetadata.testToUpload( - problemId: 'marsx', + problemId: 'sum', testId: '3', fromDir: testConfig.tempLocalUnarchivedTestFolder, toDir: testConfig.tempLocalUnarchivedTestFolder, @@ -126,7 +126,7 @@ void main() { 'Then unexpected storage failure is returned', () async { // Arrange final TestMetadata testMetadata = TestMetadata.testToUpload( - problemId: 'marsx', + problemId: 'sum', testId: '2', fromDir: testConfig.tempLocalUnarchivedTestFolder, toDir: testConfig.tempLocalUnarchivedTestFolder, @@ -167,7 +167,7 @@ void main() { 'Then unexpected storage failure is returned', () async { // Arrange final TestMetadata testMetadata = TestMetadata.testToDownload( - problemId: 'marsx', + problemId: 'sum', testId: '2', fromDir: testConfig.tempLocalUnarchivedTestFolder, toDir: testConfig.tempLocalUnarchivedTestFolder, diff --git a/odin-gateway/CHANGELOG.md b/odin-gateway/CHANGELOG.md new file mode 100644 index 0000000..1c0746d --- /dev/null +++ b/odin-gateway/CHANGELOG.md @@ -0,0 +1,23 @@ +# Changelog + +## 1.0.0 (2024-09-21) + + +### Features + +* Add logging and error handling to refresh token endpoint ([fdfc9ba](https://github.com/Pantheonix/Asgard/commit/fdfc9baee1ff9d693e6221ea337fcf824a3a94a9)) + + +### Bug Fixes + +* **odin:** remove certs dependency as they are already set in lb ([92ec8a0](https://github.com/Pantheonix/Asgard/commit/92ec8a024559c4b5aaf9f60d68eb54d449b36f44)) +* **odin:** remove https redirection ([11cdfb6](https://github.com/Pantheonix/Asgard/commit/11cdfb66ff40c5c4736a6f6a337cd11eeb6f0c70)) +* **odin:** use correct name for access token ([d7aabcb](https://github.com/Pantheonix/Asgard/commit/d7aabcb7e8508fb095942a24e84547b020e89442)) + + +### Performance Improvements + +* **odin:** add https support ([17d199d](https://github.com/Pantheonix/Asgard/commit/17d199d6329cea36a0f0c363a144067c190ec750)) +* **odin:** add lua filter for appending access/refresh tokens from/to requests/responses ([884b168](https://github.com/Pantheonix/Asgard/commit/884b1685d1a2067f8758b2d1fb6d1418f6c2c47f)) +* **odin:** increase expiry time for newly created access tokens ([9e86619](https://github.com/Pantheonix/Asgard/commit/9e86619c839023e53060f6724eb380dbaf13703e)) +* **prod:** update SameSite attribute for cookies to None ([7d143ad](https://github.com/Pantheonix/Asgard/commit/7d143adde34b824adc3a90f6a062bb5453038912)) diff --git a/odin-gateway/Dockerfile b/odin-gateway/Dockerfile new file mode 100644 index 0000000..f0ee4f2 --- /dev/null +++ b/odin-gateway/Dockerfile @@ -0,0 +1,12 @@ +FROM envoyproxy/envoy:v1.14.2 + +# COPY ./https/https.crt /etc/ssl/certs/https.crt +# COPY ./https/key.pem /etc/ssl/certs/key.pem +# COPY envoy.yaml /tmpl/envoy.yaml.tmpl + +COPY envoy.yaml /etc/envoy/envoy.yaml + +# RUN apt-get update && apt-get install -y gettext-base +# RUN cat /tmpl/envoy.yaml.tmpl | envsubst \$ENVOY_ADMIN_PORT,\$ENVOY_LISTENER_0_PORT,\$ENVOY_LISTENER_1_PORT,\$DAPR_SIDECAR_PORT,\$QUETZALCOATL_AUTH_API_PORT,\$ENKI_PROBLEMS_API_PORT,\$ANUBIS_EVAL_API_PORT > /etc/envoy/envoy.yaml + +CMD /usr/local/bin/envoy -c /etc/envoy/envoy.yaml --service-cluster odin-gateway --service-node odin-gateway --log-level debug \ No newline at end of file diff --git a/odin-gateway/envoy.yaml b/odin-gateway/envoy.yaml new file mode 100644 index 0000000..2f7694a --- /dev/null +++ b/odin-gateway/envoy.yaml @@ -0,0 +1,472 @@ +admin: + access_log_path: "/tmp/admin_access.log" + address: + socket_address: + protocol: TCP + address: 0.0.0.0 + port_value: 4001 +static_resources: + listeners: + # HTTP listener - routes to Dapr + # - name: listener_0 + # address: + # socket_address: + # protocol: TCP + # address: 0.0.0.0 + # port_value: 443 + # filter_chains: + # - filters: + # - name: envoy.filters.network.http_connection_manager + # typed_config: + # "@type": type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager + # stat_prefix: ingress_http + # route_config: + # name: asgard_route + # virtual_hosts: + # - name: asgard + # domains: ["*"] + # routes: + # - name: "quetzalcoatl" + # match: + # prefix: "/api/identity" + # route: + # auto_host_rewrite: true + # prefix_rewrite: "/v1.0/invoke/quetzalcoatl-auth/method/api" + # cluster: dapr + # - name: "enki" + # match: + # prefix: "/api/problems" + # route: + # auto_host_rewrite: true + # prefix_rewrite: "/v1.0/invoke/enki-problems/method/api/enki/problem" + # cluster: dapr + # - name: "anubis" + # match: + # prefix: "/api/eval" + # route: + # auto_host_rewrite: true + # prefix_rewrite: "/v1.0/invoke/anubis-eval/method/api" + # cluster: dapr + # http_filters: + # - name: envoy.filters.http.router + # HTTPS listener - routes to services - SSL disabled for now + - name: listener_0 + address: + socket_address: + protocol: TCP + address: 0.0.0.0 + port_value: 80 + filter_chains: + - filters: + - name: envoy.filters.network.http_connection_manager + typed_config: + "@type": type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager + stat_prefix: ingress_http + route_config: + name: asgard_route + virtual_hosts: + - name: asgard + domains: ["*"] + routes: + - name: "quetzalcoatl" + match: + prefix: "/api/identity" + route: + auto_host_rewrite: true + prefix_rewrite: "/api" + cluster: quetzalcoatl + - name: "enki" + match: + prefix: "/api/problems" + route: + auto_host_rewrite: true + prefix_rewrite: "/api/enki/problem" + cluster: enki + - name: "anubis" + match: + prefix: "/api/eval" + route: + auto_host_rewrite: true + prefix_rewrite: "/api" + cluster: anubis + http_filters: + - name: envoy.filters.http.lua + config: + inline_code: | + function envoy_on_request(request_handle) + local path = request_handle:headers():get(":path") + if string.match(path, "^/api/problems/[^/]+/eval%-metadata$") then + request_handle:logWarn("Request to eval-metadata should be denied for external clients") + request_handle:respond({ [":status"] = "404" }, "Not Found") + end + end + # get the content of the AccessToken cookie and add it to the request authorization header as bearer token + - name: envoy.filters.http.lua + config: + inline_code: | + function envoy_on_request(request_handle) + local headers = request_handle:headers() + local cookie = headers:get("cookie") + if cookie then + local token = string.match(cookie, ".AspNetCore.AccessToken=([^;]+)") + if token then + headers:add("authorization", "Bearer " .. token) + end + end + end + # get the content of the RefreshToken cookie + # get the userId from the request body + # add the userId and RefreshToken to the request body + # forward the request to the auth service + # get the new access token from the response body + # set the new access token in the response cookie + # forward the response to the client + - name: envoy.filters.http.lua + config: + inline_code: | + function envoy_on_request(request_handle) + local path = request_handle:headers():get(":path") + local method = request_handle:headers():get(":method") + request_handle:logInfo("Request path: " .. path) + request_handle:logInfo("Method: " .. method) + + if string.match(path, "^/api/identity/auth/refresh%-token$") and method == "POST" then + request_handle:logInfo("Request path matched") + + local headers = request_handle:headers() + request_handle:logInfo("Headers grabbed") + + local cookie = headers:get("cookie") + request_handle:logInfo("Cookies grabbed") + + if not cookie then + request_handle:logInfo("No cookies found") + request_handle:respond( + { + [":status"] = "400", + ["access-control-allow-credentials"] = "true", + ["access-control-allow-origin"] = headers:get("origin") + }, + "Invalid refresh token, please login again" + ) + return + end + + local body = request_handle:body() + request_handle:logInfo("Body grabbed") + + local body_str = body:getBytes(0, body:length()) + request_handle:logInfo("Request body: " .. body_str) + + local user_id = string.match(body_str, '"userId":"([^"]+)"') + local refresh_token = string.match(cookie, ".AspNetCore.RefreshToken=([^;]+)") + + if not user_id or not refresh_token then + request_handle:respond( + { + [":status"] = "400", + ["access-control-allow-credentials"] = "true", + ["access-control-allow-origin"] = request_handle:headers():get("origin") + }, + "Invalid refresh token, please login again" + ) + return + end + + request_handle:logInfo("UserId: " .. user_id) + request_handle:logInfo("RefreshToken: " .. refresh_token) + + local new_body = '{"userId":"' .. user_id .. '","refreshToken":"' .. refresh_token .. '"}' + request_handle:logInfo("New body: " .. new_body) + local response_headers, response_body = request_handle:httpCall( + "quetzalcoatl", + { + [":method"] = "POST", + [":path"] = "/api/auth/refresh-token", + [":authority"] = request_handle:headers():get(":authority"), + ["content-type"] = "application/json", + ["content-length"] = string.len(new_body) + }, + new_body, + 5000 + ) + + for key, value in pairs(response_headers) do + request_handle:logInfo("Response header: " .. key .. " = " .. value) + end + request_handle:logInfo("Response body: " .. response_body) + + if response_headers[":status"] ~= "200" then + request_handle:respond( + response_headers, + response_body + ) + return + end + + local new_access_token = string.match(response_body, '"accessToken":"([^"]+)"') + request_handle:logInfo("New access token: " .. new_access_token) + + local expirySeconds = 3600 + local path = "/" + local cookieName = ".AspNetCore.AccessToken" + local expires = os.date("!%a, %d %b %Y %H:%M:%S GMT", os.time() + expirySeconds) + + local cookieAttributes = { + "HttpOnly", + "Expires=" .. expires, + "Path=" .. path, + "SameSite=Lax" + } + + local new_cookie = cookieName .. "=" .. new_access_token .. "; " .. table.concat(cookieAttributes, "; ") + response_headers["set-cookie"] = new_cookie + response_headers["access-control-allow-credentials"] = "true" + response_headers["access-control-allow-origin"] = request_handle:headers():get("origin") + + request_handle:respond( + response_headers, + "{\"userId\":\"" .. user_id .. "\"}" + ) + end + end + - name: envoy.filters.http.router + - name: listener_1 + address: + socket_address: + protocol: TCP + address: 0.0.0.0 + port_value: 443 + filter_chains: + - filters: + - name: envoy.filters.network.http_connection_manager + typed_config: + "@type": type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager + stat_prefix: ingress_http + route_config: + name: asgard_route + virtual_hosts: + - name: asgard + domains: ["*"] + routes: + - name: "quetzalcoatl" + match: + prefix: "/api/identity" + route: + auto_host_rewrite: true + prefix_rewrite: "/api" + cluster: quetzalcoatl + - name: "enki" + match: + prefix: "/api/problems" + route: + auto_host_rewrite: true + prefix_rewrite: "/api/enki/problem" + cluster: enki + - name: "anubis" + match: + prefix: "/api/eval" + route: + auto_host_rewrite: true + prefix_rewrite: "/api" + cluster: anubis + http_filters: + - name: envoy.filters.http.lua + config: + inline_code: | + function envoy_on_request(request_handle) + local path = request_handle:headers():get(":path") + if string.match(path, "^/api/problems/[^/]+/eval%-metadata$") then + request_handle:logWarn("Request to eval-metadata should be denied for external clients") + request_handle:respond({ [":status"] = "404" }, "Not Found") + end + end + # get the content of the AccessToken cookie and add it to the request authorization header as bearer token + - name: envoy.filters.http.lua + config: + inline_code: | + function envoy_on_request(request_handle) + local headers = request_handle:headers() + local cookie = headers:get("cookie") + if cookie then + local token = string.match(cookie, ".AspNetCore.AccessToken=([^;]+)") + if token then + headers:add("authorization", "Bearer " .. token) + end + end + end + # get the content of the RefreshToken cookie + # get the userId from the request body + # add the userId and RefreshToken to the request body + # forward the request to the auth service + # get the new access token from the response body + # set the new access token in the response cookie + # forward the response to the client + - name: envoy.filters.http.lua + config: + inline_code: | + function envoy_on_request(request_handle) + local path = request_handle:headers():get(":path") + local method = request_handle:headers():get(":method") + request_handle:logInfo("Request path: " .. path) + request_handle:logInfo("Method: " .. method) + + if string.match(path, "^/api/identity/auth/refresh%-token$") and method == "POST" then + request_handle:logInfo("Request path matched") + + local headers = request_handle:headers() + request_handle:logInfo("Headers grabbed") + + local cookie = headers:get("cookie") + request_handle:logInfo("Cookies grabbed") + + if not cookie then + request_handle:logInfo("No cookies found") + request_handle:respond( + { + [":status"] = "400", + ["access-control-allow-credentials"] = "true", + ["access-control-allow-origin"] = headers:get("origin") + }, + "Invalid refresh token, please login again" + ) + return + end + + local body = request_handle:body() + request_handle:logInfo("Body grabbed") + + local body_str = body:getBytes(0, body:length()) + request_handle:logInfo("Request body: " .. body_str) + + local user_id = string.match(body_str, '"userId":"([^"]+)"') + local refresh_token = string.match(cookie, ".AspNetCore.RefreshToken=([^;]+)") + + if not user_id or not refresh_token then + request_handle:respond( + { + [":status"] = "400", + ["access-control-allow-credentials"] = "true", + ["access-control-allow-origin"] = request_handle:headers():get("origin") + }, + "Invalid refresh token, please login again" + ) + return + end + + request_handle:logInfo("UserId: " .. user_id) + request_handle:logInfo("RefreshToken: " .. refresh_token) + + local new_body = '{"userId":"' .. user_id .. '","refreshToken":"' .. refresh_token .. '"}' + request_handle:logInfo("New body: " .. new_body) + local response_headers, response_body = request_handle:httpCall( + "quetzalcoatl", + { + [":method"] = "POST", + [":path"] = "/api/auth/refresh-token", + [":authority"] = request_handle:headers():get(":authority"), + ["content-type"] = "application/json", + ["content-length"] = string.len(new_body) + }, + new_body, + 5000 + ) + + for key, value in pairs(response_headers) do + request_handle:logInfo("Response header: " .. key .. " = " .. value) + end + request_handle:logInfo("Response body: " .. response_body) + + if response_headers[":status"] ~= "200" then + request_handle:respond( + response_headers, + response_body + ) + return + end + + local new_access_token = string.match(response_body, '"accessToken":"([^"]+)"') + request_handle:logInfo("New access token: " .. new_access_token) + + local expirySeconds = 3600 + local path = "/" + local cookieName = ".AspNetCore.AccessToken" + local expires = os.date("!%a, %d %b %Y %H:%M:%S GMT", os.time() + expirySeconds) + + local cookieAttributes = { + "HttpOnly", + "Expires=" .. expires, + "Path=" .. path, + "SameSite=None", + "Secure" + } + + local new_cookie = cookieName .. "=" .. new_access_token .. "; " .. table.concat(cookieAttributes, "; ") + response_headers["set-cookie"] = new_cookie + response_headers["access-control-allow-credentials"] = "true" + response_headers["access-control-allow-origin"] = request_handle:headers():get("origin") + + request_handle:respond( + response_headers, + "{\"userId\":\"" .. user_id .. "\"}" + ) + end + end + - name: envoy.filters.http.router + clusters: + - name: dapr + connect_timeout: 0.25s + type: logical_dns + dns_lookup_family: V4_ONLY + lb_policy: round_robin + load_assignment: + cluster_name: dapr + endpoints: + - lb_endpoints: + - endpoint: + address: + socket_address: + address: 127.0.0.1 + port_value: 3400 + - name: quetzalcoatl + connect_timeout: 0.25s + type: logical_dns + dns_lookup_family: V4_ONLY + lb_policy: round_robin + load_assignment: + cluster_name: quetzalcoatl + endpoints: + - lb_endpoints: + - endpoint: + address: + socket_address: + address: quetzalcoatl-auth-api + port_value: 5210 + - name: enki + connect_timeout: 0.25s + type: logical_dns + dns_lookup_family: V4_ONLY + lb_policy: round_robin + load_assignment: + cluster_name: enki + endpoints: + - lb_endpoints: + - endpoint: + address: + socket_address: + address: enki-problems-api + port_value: 5211 + - name: anubis + connect_timeout: 0.25s + type: logical_dns + dns_lookup_family: V4_ONLY + lb_policy: round_robin + load_assignment: + cluster_name: anubis + endpoints: + - lb_endpoints: + - endpoint: + address: + socket_address: + address: anubis-eval-api + port_value: 5213 diff --git a/odin-gateway/https/https.config b/odin-gateway/https/https.config new file mode 100644 index 0000000..186ed0c --- /dev/null +++ b/odin-gateway/https/https.config @@ -0,0 +1,18 @@ +[ req ] +default_bits = 2048 +default_md = sha256 +default_keyfile = key.pem +prompt = no +encrypt_key = no + +distinguished_name = req_distinguished_name +req_extensions = v3_req +x509_extensions = v3_req + +[ req_distinguished_name ] +commonName = "localhost" + +[ v3_req ] +subjectAltName = DNS:localhost +keyUsage = critical, digitalSignature, keyEncipherment +extendedKeyUsage = critical, 1.3.6.1.5.5.7.3.1, 1.3.6.1.5.5.7.3.2 \ No newline at end of file diff --git a/quetzalcoatl-auth/.dockerignore b/quetzalcoatl-auth/.dockerignore index a27ff13..09e5f65 100644 --- a/quetzalcoatl-auth/.dockerignore +++ b/quetzalcoatl-auth/.dockerignore @@ -3,7 +3,9 @@ */bin/ */obj/ */Logs/ -*.env +.env* QuetzalcoatlAuth.sln.DotSettings.user *.md +Tests.Integration/ Dockerfile* +.dockerignore diff --git a/quetzalcoatl-auth/.env.template b/quetzalcoatl-auth/.env.template new file mode 100644 index 0000000..18cee60 --- /dev/null +++ b/quetzalcoatl-auth/.env.template @@ -0,0 +1,18 @@ +ASPNETCORE_ENVIRONMENT=Testing +ASPNETCORE_URLS=http://+:5210 +DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=false + +JwtConfig__SecretKey="z7F+ut_aphaxeja0&ba*p9spew!4fe0rAFRO5HestitIKOv5nistlz3b=+edu1aP" +JwtConfig__JwtAccessTokenLifeTime="0:01:00:00.0" +JwtConfig__JwtRefreshTokenLifeTime="10:00:00:00.0" + +AdminConfig__UserName="admin" +AdminConfig__Email="admin@gmail.com" +AdminConfig__Password="Password@123" + +ConnectionStrings__DefaultConnection="Server=quetzalcoatl-mssql-db;Database=QuetzalcoatlAuthDb;User Id=SA;Password=Quetzalcoatl2021!;MultipleActiveResultSets=true;TrustServerCertificate=True;" +AllowedHosts="*" +AllowedOrigins="http://localhost:10000;https://pantheonix.live;https://pantheonix-midgard.web.app;https://pantheonix-midgard.firebaseapp.com" + +ACCEPT_EULA=Y +SA_PASSWORD=Quetzalcoatl2021! \ No newline at end of file diff --git a/quetzalcoatl-auth/.gitignore b/quetzalcoatl-auth/.gitignore index 4fd98e6..2eed564 100644 --- a/quetzalcoatl-auth/.gitignore +++ b/quetzalcoatl-auth/.gitignore @@ -4,4 +4,5 @@ */obj/ */Logs/ *.env -QuetzalcoatlAuth.sln.DotSettings.user \ No newline at end of file +QuetzalcoatlAuth.sln.DotSettings.user +.config/ \ No newline at end of file diff --git a/quetzalcoatl-auth/Api/Api.csproj b/quetzalcoatl-auth/Api/Api.csproj index 7103cea..e2d6208 100644 --- a/quetzalcoatl-auth/Api/Api.csproj +++ b/quetzalcoatl-auth/Api/Api.csproj @@ -9,6 +9,7 @@ + diff --git a/quetzalcoatl-auth/Api/Features/Auth/Login/Endpoint.cs b/quetzalcoatl-auth/Api/Features/Auth/Login/Endpoint.cs index 1a22eda..4862a4d 100644 --- a/quetzalcoatl-auth/Api/Features/Auth/Login/Endpoint.cs +++ b/quetzalcoatl-auth/Api/Features/Auth/Login/Endpoint.cs @@ -30,6 +30,8 @@ public override async Task HandleAsync(LoginUserRequest req, CancellationToken c { _logger.LogInformation("Login user {Email}", req.Email); + _logger.LogInformation(HttpContext.Request.Cookies.Count.ToString()); + var validateUserCredentialsCommand = _mapper.Map(req); var user = await validateUserCredentialsCommand.ExecuteAsync(ct: ct); @@ -51,7 +53,7 @@ public override async Task HandleAsync(LoginUserRequest req, CancellationToken c new CookieOptions { HttpOnly = true, - SameSite = SameSiteMode.Strict, + SameSite = SameSiteMode.None, Secure = true, Expires = DateTimeOffset.UtcNow.AddTicks(_jwtConfig.JwtAccessTokenLifetime.Ticks) } @@ -63,7 +65,7 @@ public override async Task HandleAsync(LoginUserRequest req, CancellationToken c new CookieOptions { HttpOnly = true, - SameSite = SameSiteMode.Strict, + SameSite = SameSiteMode.None, Secure = true, Expires = DateTimeOffset.UtcNow.AddTicks(_jwtConfig.JwtRefreshTokenLifetime.Ticks) } @@ -77,11 +79,8 @@ await SendOkAsync( Email = user.Email!, Fullname = user.Fullname, Bio = user.Bio, - ProfilePictureUrl = user.GetProfilePictureUrl( - ProfilePictureConstants.BaseUrl, - ProfilePictureConstants.EndpointUrl, - ProfilePictureConstants.Extension - ) + ProfilePictureId = user.ProfilePicture?.Id, + Roles = userRoles }, cancellation: ct ); diff --git a/quetzalcoatl-auth/Api/Features/Auth/Login/Models.cs b/quetzalcoatl-auth/Api/Features/Auth/Login/Models.cs index d74a688..bfc8b14 100644 --- a/quetzalcoatl-auth/Api/Features/Auth/Login/Models.cs +++ b/quetzalcoatl-auth/Api/Features/Auth/Login/Models.cs @@ -1,6 +1,4 @@ -using FastEndpoints.Security; - -namespace Api.Features.Auth.Login; +namespace Api.Features.Auth.Login; public class LoginUserRequest { diff --git a/quetzalcoatl-auth/Api/Features/Auth/Login/Summary.cs b/quetzalcoatl-auth/Api/Features/Auth/Login/Summary.cs index 6e32037..d89af19 100644 --- a/quetzalcoatl-auth/Api/Features/Auth/Login/Summary.cs +++ b/quetzalcoatl-auth/Api/Features/Auth/Login/Summary.cs @@ -1,5 +1,3 @@ -using Api.Features.Auth.RefreshToken; - namespace Api.Features.Auth.Login; public class LoginUserSummary : Summary diff --git a/quetzalcoatl-auth/Api/Features/Auth/RefreshToken/Endpoint.cs b/quetzalcoatl-auth/Api/Features/Auth/RefreshToken/Endpoint.cs index 6cf502f..827acd7 100644 --- a/quetzalcoatl-auth/Api/Features/Auth/RefreshToken/Endpoint.cs +++ b/quetzalcoatl-auth/Api/Features/Auth/RefreshToken/Endpoint.cs @@ -4,6 +4,7 @@ public class UserTokenServiceEndpoint : RefreshTokenService _userManager; private readonly IMapper _mapper; private readonly ILogger _logger; @@ -22,15 +23,16 @@ ILogger logger _tokenValidationParameters = tokenValidationParameters ?? throw new ArgumentNullException(nameof(tokenValidationParameters)); + _jwtConfig = jwtConfig.Value ?? throw new ArgumentNullException(nameof(jwtConfig)); _userManager = userManager ?? throw new ArgumentNullException(nameof(userManager)); _mapper = mapper ?? throw new ArgumentNullException(nameof(mapper)); _logger = logger ?? throw new ArgumentNullException(nameof(logger)); Setup(opt => { - opt.TokenSigningKey = jwtConfig.Value.SecretKey; - opt.AccessTokenValidity = jwtConfig.Value.JwtAccessTokenLifetime; - opt.RefreshTokenValidity = jwtConfig.Value.JwtRefreshTokenLifetime; + opt.TokenSigningKey = _jwtConfig.SecretKey; + opt.AccessTokenValidity = _jwtConfig.JwtAccessTokenLifetime; + opt.RefreshTokenValidity = _jwtConfig.JwtRefreshTokenLifetime; opt.Endpoint( "/auth/refresh-token", ep => @@ -53,104 +55,33 @@ public override async Task PersistTokenAsync(UserTokenResponse response) ); var token = _mapper.Map(response); - - var lastNotExpiredRefreshTokenUsedByUser = await _tokenRepository.GetRefreshTokenAsync( - rt => - rt.UserId == Guid.Parse(response.UserId) - && rt.ExpiryDate > DateTime.UtcNow - && !rt.IsUsed - && !rt.IsInvalidated, - rtOrd => rtOrd.OrderByDescending(rt => rt.ExpiryDate) - ); - - if (lastNotExpiredRefreshTokenUsedByUser is not null) - { - token.CreationDate = lastNotExpiredRefreshTokenUsedByUser.CreationDate; - token.ExpiryDate = lastNotExpiredRefreshTokenUsedByUser.ExpiryDate; - token.IsUsed = false; - } - await _tokenRepository.CreateRefreshTokenAsync(token, new CancellationToken()); } public override async Task RefreshRequestValidationAsync(UserTokenRequest req) { - _logger.LogInformation( - "Validating the refresh/access token pair for user {UserId}", - req.UserId - ); - - var validatedAccessToken = req.AccessToken.ExtractValidatedClaimsPrincipal( - _tokenValidationParameters - ); - - // check if the access token is valid - if (validatedAccessToken is null) - { - _logger.LogError("Access token is invalid"); - AddError("Access token is invalid"); - } - ThrowIfAnyErrors(); - - // check if the access token is expired - var expiryDateUnix = long.Parse( - validatedAccessToken!.Claims.Single(x => x.Type == JwtRegisteredClaimNames.Exp).Value - ); + _logger.LogInformation("Validating the refresh token for user {UserId}", req.UserId); - var expiryDateTimeUtc = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc).AddSeconds( - expiryDateUnix - ); - - if (expiryDateTimeUtc > DateTime.UtcNow) - { - _logger.LogError("Access token has not expired yet"); - AddError("Access token has not expired yet"); - } - ThrowIfAnyErrors(); - - // check if the refresh token exists in the database - var jti = validatedAccessToken.Claims - .Single(x => x.Type == JwtRegisteredClaimNames.Jti) - .Value; - - var storedRefreshToken = await _tokenRepository.GetRefreshTokenAsync( - rt => rt.Token == Guid.Parse(req.RefreshToken) && rt.Jti == Guid.Parse(jti) && rt.UserId == Guid.Parse(req.UserId) + var storedRefreshToken = await _tokenRepository.GetRefreshTokenAsync(rt => + rt.Token == Guid.Parse(req.RefreshToken) + && rt.UserId == Guid.Parse(req.UserId) + && rt.ExpiryDate > DateTime.UtcNow ); if (storedRefreshToken is null) { - _logger.LogError("The refresh/access token pair does not exist"); - AddError("This refresh/access token pair does not exist"); - } - ThrowIfAnyErrors(); - - // check if the refresh token is expired - if (DateTime.UtcNow > storedRefreshToken!.ExpiryDate) - { - _logger.LogError("This refresh token has expired"); - AddError("This refresh token has expired"); + _logger.LogError("The refresh token has expired or does not exist in the database"); + AddError("The refresh token has expired or does not exist in the database"); } ThrowIfAnyErrors(); // check if the refresh token has been invalidated - if (storedRefreshToken.IsInvalidated) - { - _logger.LogError("This refresh token has been invalidated"); - AddError("This refresh token has been invalidated"); - } - ThrowIfAnyErrors(); - - // check if the refresh token has been used - if (storedRefreshToken.IsUsed) + if (storedRefreshToken!.IsInvalidated) { - _logger.LogError("This refresh token has been used for the provided access token"); - AddError("This refresh token has been used for the provided access token"); + _logger.LogError("The refresh token has been invalidated"); + AddError("The refresh token has been invalidated"); } ThrowIfAnyErrors(); - - // mark refresh token as used - storedRefreshToken.IsUsed = true; - await _tokenRepository.UpdateRefreshTokenAsync(storedRefreshToken, new CancellationToken()); } public override async Task SetRenewalPrivilegesAsync( diff --git a/quetzalcoatl-auth/Api/Features/Auth/RefreshToken/Mappers.cs b/quetzalcoatl-auth/Api/Features/Auth/RefreshToken/Mappers.cs index e85c3f0..308d885 100644 --- a/quetzalcoatl-auth/Api/Features/Auth/RefreshToken/Mappers.cs +++ b/quetzalcoatl-auth/Api/Features/Auth/RefreshToken/Mappers.cs @@ -5,37 +5,9 @@ public class UserTokenResponseToRefreshTokenEntityProfile : Profile public UserTokenResponseToRefreshTokenEntityProfile() { CreateMap() - .ForMember(dest => dest.Jti, opt => opt.MapFrom()) .ForMember(dest => dest.UserId, opt => opt.MapFrom(src => src.UserId)) .ForMember(dest => dest.Token, opt => opt.MapFrom(src => src.RefreshToken)) .ForMember(dest => dest.ExpiryDate, opt => opt.MapFrom(src => src.RefreshExpiry)) .ForMember(dest => dest.CreationDate, opt => opt.MapFrom(_ => DateTime.UtcNow)); } } - -public class JtiResolver : IValueResolver -{ - private readonly TokenValidationParameters _tokenValidationParameters; - - public JtiResolver(TokenValidationParameters tokenValidationParameters) - { - _tokenValidationParameters = - tokenValidationParameters - ?? throw new ArgumentNullException(nameof(tokenValidationParameters)); - } - - public Guid Resolve( - UserTokenResponse source, - Domain.Entities.RefreshToken destination, - Guid destMember, - ResolutionContext context - ) - { - return Guid.Parse( - source.AccessToken - .ExtractValidatedClaimsPrincipal(_tokenValidationParameters)! - .Claims.Single(x => x.Type == JwtRegisteredClaimNames.Jti) - .Value - ); - } -} diff --git a/quetzalcoatl-auth/Api/Features/Auth/RefreshToken/Models.cs b/quetzalcoatl-auth/Api/Features/Auth/RefreshToken/Models.cs index e7b0f78..da25e34 100644 --- a/quetzalcoatl-auth/Api/Features/Auth/RefreshToken/Models.cs +++ b/quetzalcoatl-auth/Api/Features/Auth/RefreshToken/Models.cs @@ -12,5 +12,6 @@ public class UserTokenResponse : TokenResponse public string Email { get; set; } = default!; public string? Fullname { get; set; } public string? Bio { get; set; } - public string? ProfilePictureUrl { get; set; } + public Guid? ProfilePictureId { get; set; } + public IEnumerable Roles { get; set; } = new List(); } diff --git a/quetzalcoatl-auth/Api/Features/Auth/Register/Endpoint.cs b/quetzalcoatl-auth/Api/Features/Auth/Register/Endpoint.cs index eb58baf..979cb33 100644 --- a/quetzalcoatl-auth/Api/Features/Auth/Register/Endpoint.cs +++ b/quetzalcoatl-auth/Api/Features/Auth/Register/Endpoint.cs @@ -52,7 +52,7 @@ public override async Task HandleAsync(RegisterUserRequest req, CancellationToke new CookieOptions { HttpOnly = true, - SameSite = SameSiteMode.Strict, + SameSite = SameSiteMode.None, Secure = true, Expires = DateTimeOffset.UtcNow.AddTicks(_jwtConfig.JwtAccessTokenLifetime.Ticks) } @@ -64,7 +64,7 @@ public override async Task HandleAsync(RegisterUserRequest req, CancellationToke new CookieOptions { HttpOnly = true, - SameSite = SameSiteMode.Strict, + SameSite = SameSiteMode.None, Secure = true, Expires = DateTimeOffset.UtcNow.AddTicks(_jwtConfig.JwtRefreshTokenLifetime.Ticks) } @@ -80,11 +80,8 @@ await SendCreatedAtAsync( Email = user.Email!, Fullname = user.Fullname, Bio = user.Bio, - ProfilePictureUrl = user.GetProfilePictureUrl( - ProfilePictureConstants.BaseUrl, - ProfilePictureConstants.EndpointUrl, - ProfilePictureConstants.Extension - ), + ProfilePictureId = user.ProfilePicture?.Id, + Roles = userRoles }, cancellation: ct ); diff --git a/quetzalcoatl-auth/Api/Features/Auth/Register/Summary.cs b/quetzalcoatl-auth/Api/Features/Auth/Register/Summary.cs index 86a4a54..8ef1d86 100644 --- a/quetzalcoatl-auth/Api/Features/Auth/Register/Summary.cs +++ b/quetzalcoatl-auth/Api/Features/Auth/Register/Summary.cs @@ -1,5 +1,3 @@ -using Api.Features.Auth.RefreshToken; - namespace Api.Features.Auth.Register; public class RegisterUserSummary : Summary @@ -25,7 +23,7 @@ public RegisterUserSummary() Email = "test@gmail.com", Fullname = "Test User", Bio = "Test user bio", - ProfilePictureUrl = "https://picsum.photos/id/237/200/300", + ProfilePictureId = Guid.NewGuid(), } ); Response(400, "Validation failure"); diff --git a/quetzalcoatl-auth/Api/Features/Auth/Register/Validators.cs b/quetzalcoatl-auth/Api/Features/Auth/Register/Validators.cs index 3114380..2c3d3b4 100644 --- a/quetzalcoatl-auth/Api/Features/Auth/Register/Validators.cs +++ b/quetzalcoatl-auth/Api/Features/Auth/Register/Validators.cs @@ -7,8 +7,10 @@ public Validator() RuleFor(x => x.Username) .NotEmpty() .WithMessage("Username is required") - .MinimumLength(3) - .WithMessage("Username must be at least 3 characters long"); + .MinimumLength(ApplicationUserConsts.UsernameMinLength) + .WithMessage( + $"Username must be at least {ApplicationUserConsts.UsernameMinLength} characters long" + ); RuleFor(x => x.Email) .NotEmpty() @@ -19,23 +21,31 @@ public Validator() RuleFor(x => x.Password) .NotEmpty() .WithMessage("Password is required") - .MinimumLength(6) - .WithMessage("Password must be at least 6 characters long") - .MaximumLength(20) - .WithMessage("Password must be at most 20 characters long") - .Matches(@"^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[^\da-zA-Z]).{6,20}$") + .MinimumLength(ApplicationUserConsts.PasswordMinLength) + .WithMessage( + $"Password must be at least {ApplicationUserConsts.PasswordMinLength} characters long" + ) + .MaximumLength(ApplicationUserConsts.PasswordMaxLength) + .WithMessage( + $"Password must be at most {ApplicationUserConsts.PasswordMaxLength} characters long" + ) + .Matches(ApplicationUserConsts.PasswordRegex) .WithMessage( "Password must contain at least one uppercase letter, one lowercase letter, one number and one special character" ); RuleFor(x => x.Fullname) - .MaximumLength(50) - .WithMessage("Fullname must be at most 50 characters long") + .MaximumLength(ApplicationUserConsts.FullnameMaxLength) + .WithMessage( + $"Fullname must be at most {ApplicationUserConsts.FullnameMaxLength} characters long" + ) .When(x => !string.IsNullOrWhiteSpace(x.Fullname)); RuleFor(x => x.Bio) - .MaximumLength(300) - .WithMessage("Bio must be at most 300 characters long") + .MaximumLength(ApplicationUserConsts.BioMaxLength) + .WithMessage( + $"Bio must be at most {ApplicationUserConsts.BioMaxLength} characters long" + ) .When(x => !string.IsNullOrWhiteSpace(x.Bio)); RuleFor(x => x.ProfilePicture) @@ -47,8 +57,9 @@ public Validator() .When(x => x.ProfilePicture is not null); } - private static bool IsAllowedSize(long length) => length <= 10_000_000; + private static bool IsAllowedSize(long length) => + length <= ApplicationUserConsts.ProfilePictureMaxLength; private static bool IsAllowedType(string contentType) => - contentType.ToLower() is "image/png" or "image/jpeg" or "image/jpg"; + ApplicationUserConsts.AllowedProfilePictureTypes.Contains(contentType); } diff --git a/quetzalcoatl-auth/Api/Features/Core/ApplicationUserExtensions.cs b/quetzalcoatl-auth/Api/Features/Core/ApplicationUserExtensions.cs index c8cfe6b..3df1d9f 100644 --- a/quetzalcoatl-auth/Api/Features/Core/ApplicationUserExtensions.cs +++ b/quetzalcoatl-auth/Api/Features/Core/ApplicationUserExtensions.cs @@ -14,3 +14,38 @@ string extension : null; } } + +public enum SortUsersBy +{ + NameAsc, + NameDesc, +} + +public static class SortUsersByExtensions +{ + public static IEnumerable SortUsers( + this IEnumerable query, + SortUsersBy sortBy + ) + { + return sortBy switch + { + SortUsersBy.NameAsc => query.OrderBy(user => user.Username), + SortUsersBy.NameDesc => query.OrderByDescending(user => user.Username), + _ => query.OrderBy(user => user.Username), + }; + } + + public static IAsyncEnumerable SortUsers( + this IAsyncEnumerable query, + SortUsersBy sortBy + ) + { + return sortBy switch + { + SortUsersBy.NameAsc => query.OrderBy(user => user.Username), + SortUsersBy.NameDesc => query.OrderByDescending(user => user.Username), + _ => query.OrderBy(user => user.Username), + }; + } +} diff --git a/quetzalcoatl-auth/Api/Features/Core/LinqExtensions.cs b/quetzalcoatl-auth/Api/Features/Core/LinqExtensions.cs new file mode 100644 index 0000000..3e9c799 --- /dev/null +++ b/quetzalcoatl-auth/Api/Features/Core/LinqExtensions.cs @@ -0,0 +1,14 @@ +namespace Api.Features.Core; + +public class LinqExtensions +{ + public static IEnumerable Paginate(IEnumerable query, int page, int pageSize) + { + return query.Skip((page - 1) * pageSize).Take(pageSize); + } + + public static IAsyncEnumerable Paginate(IAsyncEnumerable query, int page, int pageSize) + { + return query.Skip((page - 1) * pageSize).Take(pageSize); + } +} diff --git a/quetzalcoatl-auth/Api/Features/Images/ImagesGroup.cs b/quetzalcoatl-auth/Api/Features/Images/ImagesGroup.cs index ab15d83..ca1dea4 100644 --- a/quetzalcoatl-auth/Api/Features/Images/ImagesGroup.cs +++ b/quetzalcoatl-auth/Api/Features/Images/ImagesGroup.cs @@ -8,7 +8,7 @@ public ImagesGroup() "images", ep => { - ep.Description(builder => builder.RequireAuthorization()); + ep.Description(builder => builder.AllowAnonymous()); } ); } diff --git a/quetzalcoatl-auth/Api/Features/Users/Core/UserDto.cs b/quetzalcoatl-auth/Api/Features/Users/Core/UserDto.cs index 8f8bdde..a52077a 100644 --- a/quetzalcoatl-auth/Api/Features/Users/Core/UserDto.cs +++ b/quetzalcoatl-auth/Api/Features/Users/Core/UserDto.cs @@ -8,5 +8,6 @@ public class UserDto public string Email { get; set; } = string.Empty; public string? Fullname { get; set; } public string? Bio { get; set; } - public string? ProfilePictureUrl { get; set; } + public Guid? ProfilePictureId { get; set; } + public IEnumerable Roles { get; set; } = new List(); } diff --git a/quetzalcoatl-auth/Api/Features/Users/Delete/Endpoint.cs b/quetzalcoatl-auth/Api/Features/Users/Delete/Endpoint.cs index 990a750..336e67c 100644 --- a/quetzalcoatl-auth/Api/Features/Users/Delete/Endpoint.cs +++ b/quetzalcoatl-auth/Api/Features/Users/Delete/Endpoint.cs @@ -17,7 +17,7 @@ ILogger logger public override void Configure() { Delete("{id}"); - Roles(ApplicationRoles.Admin.ToString()); + Roles(ApplicationRole.Admin.ToString()); Group(); } @@ -38,8 +38,8 @@ public override async Task HandleAsync(DeleteUserRequest req, CancellationToken if (!result.Succeeded) { - var errors = result.Errors - .Select(e => e.Description) + var errors = result + .Errors.Select(e => e.Description) .Aggregate("Identity Errors: ", (a, b) => $"{a}, {b}"); _logger.LogWarning( diff --git a/quetzalcoatl-auth/Api/Features/Users/Get/Endpoint.cs b/quetzalcoatl-auth/Api/Features/Users/Get/Endpoint.cs index 7b3cf71..358cb1f 100644 --- a/quetzalcoatl-auth/Api/Features/Users/Get/Endpoint.cs +++ b/quetzalcoatl-auth/Api/Features/Users/Get/Endpoint.cs @@ -36,6 +36,10 @@ public override async Task HandleAsync(GetUserRequest req, CancellationToken ct) return; } - await SendOkAsync(response: _mapper.Map(user), ct); + var userRoles = await _userManager.GetRolesAsync(user); + var response = _mapper.Map(user); + response.Roles = userRoles; + + await SendOkAsync(response, ct); } } diff --git a/quetzalcoatl-auth/Api/Features/Users/Get/Mappers.cs b/quetzalcoatl-auth/Api/Features/Users/Get/Mappers.cs index c567f35..7a190b9 100644 --- a/quetzalcoatl-auth/Api/Features/Users/Get/Mappers.cs +++ b/quetzalcoatl-auth/Api/Features/Users/Get/Mappers.cs @@ -25,15 +25,10 @@ public ApplicationUserToGetUserResponseProfile() } ) .ForMember( - dest => dest.ProfilePictureUrl, + dest => dest.ProfilePictureId, opt => - opt.MapFrom( - src => - src.GetProfilePictureUrl( - ProfilePictureConstants.BaseUrl, - ProfilePictureConstants.EndpointUrl, - ProfilePictureConstants.Extension - ) + opt.MapFrom(src => + src.ProfilePicture != null ? src.ProfilePicture!.Id : null ) ); } diff --git a/quetzalcoatl-auth/Api/Features/Users/Get/Models.cs b/quetzalcoatl-auth/Api/Features/Users/Get/Models.cs index 6c81fd8..a6915d0 100644 --- a/quetzalcoatl-auth/Api/Features/Users/Get/Models.cs +++ b/quetzalcoatl-auth/Api/Features/Users/Get/Models.cs @@ -12,5 +12,6 @@ public class GetUserResponse public string Email { get; set; } = string.Empty; public string? Fullname { get; set; } public string? Bio { get; set; } - public string? ProfilePictureUrl { get; set; } + public Guid? ProfilePictureId { get; set; } + public IEnumerable Roles { get; set; } = new List(); } diff --git a/quetzalcoatl-auth/Api/Features/Users/GetAll/Endpoint.cs b/quetzalcoatl-auth/Api/Features/Users/GetAll/Endpoint.cs index 7246ba9..74db2d7 100644 --- a/quetzalcoatl-auth/Api/Features/Users/GetAll/Endpoint.cs +++ b/quetzalcoatl-auth/Api/Features/Users/GetAll/Endpoint.cs @@ -1,4 +1,6 @@ -namespace Api.Features.Users.GetAll; +using Microsoft.EntityFrameworkCore; + +namespace Api.Features.Users.GetAll; public class GetAllUsersEndpoint : Endpoint { @@ -27,8 +29,37 @@ public override async Task HandleAsync(GetAllUsersRequest req, CancellationToken { _logger.LogInformation("Getting all users"); - var users = _userManager.Users.Select(user => _mapper.Map(user)); + var users = _userManager + .Users.AsAsyncEnumerable() + .SelectAwait(async user => + { + var userDto = _mapper.Map(user); + userDto.Roles = await _userManager.GetRolesAsync(user); + return userDto; + }) + .AsAsyncEnumerable(); + + if (!string.IsNullOrWhiteSpace(req.Username)) + { + users = users.Where(user => user.Username.Contains(req.Username)); + } + + var totalCount = await users.CountAsync(cancellationToken: ct); + + if (req.SortBy is not null) + { + users = users.SortUsers(req.SortBy.Value); + } + + users = LinqExtensions.Paginate(users, req.Page ?? 1, req.PageSize ?? 10); - await SendOkAsync(response: new GetAllUsersResponse { Users = users }, ct); + await SendOkAsync( + response: new GetAllUsersResponse + { + Users = users.ToEnumerable(), + TotalCount = totalCount + }, + ct + ); } } diff --git a/quetzalcoatl-auth/Api/Features/Users/GetAll/Mappers.cs b/quetzalcoatl-auth/Api/Features/Users/GetAll/Mappers.cs index 72ee4b8..d961313 100644 --- a/quetzalcoatl-auth/Api/Features/Users/GetAll/Mappers.cs +++ b/quetzalcoatl-auth/Api/Features/Users/GetAll/Mappers.cs @@ -25,15 +25,10 @@ public ApplicationUserToUserDtoProfile() } ) .ForMember( - dest => dest.ProfilePictureUrl, + dest => dest.ProfilePictureId, opt => - opt.MapFrom( - src => - src.GetProfilePictureUrl( - ProfilePictureConstants.BaseUrl, - ProfilePictureConstants.EndpointUrl, - ProfilePictureConstants.Extension - ) + opt.MapFrom(src => + src.ProfilePicture != null ? src.ProfilePicture!.Id : null ) ); } diff --git a/quetzalcoatl-auth/Api/Features/Users/GetAll/Models.cs b/quetzalcoatl-auth/Api/Features/Users/GetAll/Models.cs index c383278..01f8104 100644 --- a/quetzalcoatl-auth/Api/Features/Users/GetAll/Models.cs +++ b/quetzalcoatl-auth/Api/Features/Users/GetAll/Models.cs @@ -1,8 +1,22 @@ namespace Api.Features.Users.GetAll; -public class GetAllUsersRequest { } +public class GetAllUsersRequest +{ + [FromQuery(Name = "username")] + public string? Username { get; set; } + + [FromQuery(Name = "sortBy")] + public SortUsersBy? SortBy { get; set; } = SortUsersBy.NameAsc; + + [FromQuery(Name = "page")] + public int? Page { get; set; } = 1; + + [FromQuery(Name = "pageSize")] + public int? PageSize { get; set; } = 10; +} public class GetAllUsersResponse { public IEnumerable Users { get; set; } = new List(); + public int TotalCount { get; set; } } diff --git a/quetzalcoatl-auth/Api/Features/Users/GetAll/Summary.cs b/quetzalcoatl-auth/Api/Features/Users/GetAll/Summary.cs index 86cf1fd..ec3a457 100644 --- a/quetzalcoatl-auth/Api/Features/Users/GetAll/Summary.cs +++ b/quetzalcoatl-auth/Api/Features/Users/GetAll/Summary.cs @@ -20,7 +20,8 @@ public GetAllUsersSummary() Username = "Test1", Email = "test1@gmail.com", Fullname = "Test 1", - Bio = "Test 1 bio" + Bio = "Test 1 bio", + ProfilePictureId = Guid.NewGuid(), }, new UserDto { @@ -28,7 +29,8 @@ public GetAllUsersSummary() Username = "Test2", Email = "test2@gmail.com", Fullname = "Test 2", - Bio = "Test 2 bio" + Bio = "Test 2 bio", + ProfilePictureId = Guid.NewGuid(), }, new UserDto { @@ -36,7 +38,8 @@ public GetAllUsersSummary() Username = "Test3", Email = "test3@gmail.com", Fullname = "Test 3", - Bio = "Test 3 bio" + Bio = "Test 3 bio", + ProfilePictureId = Guid.NewGuid(), } } } diff --git a/quetzalcoatl-auth/Api/Features/Users/Roles/Add/Endpoint.cs b/quetzalcoatl-auth/Api/Features/Users/Roles/Add/Endpoint.cs new file mode 100644 index 0000000..d794467 --- /dev/null +++ b/quetzalcoatl-auth/Api/Features/Users/Roles/Add/Endpoint.cs @@ -0,0 +1,88 @@ +namespace Api.Features.Users.Roles.Add; + +public class AddRoleEndpoint : Endpoint +{ + private readonly UserManager _userManager; + private readonly IMapper _mapper; + private readonly ILogger _logger; + + public AddRoleEndpoint( + UserManager userManager, + IMapper mapper, + ILogger logger + ) + { + _userManager = userManager ?? throw new ArgumentNullException(nameof(userManager)); + _mapper = mapper ?? throw new ArgumentNullException(nameof(mapper)); + _logger = logger ?? throw new ArgumentNullException(nameof(logger)); + } + + public override void Configure() + { + Post("{id}/role"); + Roles(ApplicationRole.Admin.ToString()); + Group(); + } + + public override async Task HandleAsync(AddRoleRequest req, CancellationToken ct) + { + _logger.LogInformation( + "Adding role {Role} to user with id {Id}", + req.Role.ToString(), + req.Id.ToString() + ); + + if (!Enum.TryParse(req.Role, out var role)) + { + _logger.LogWarning("Role {Role} is not a valid role", req.Role); + var errors = $"Role {req.Role.ToString()} is not a valid role"; + AddError(errors); + } + ThrowIfAnyErrors(); + + var user = await _userManager.FindByIdAsync(req.Id.ToString()); + + if (user is null) + { + _logger.LogWarning("User with id {Id} not found", req.Id.ToString()); + await SendNotFoundAsync(ct); + return; + } + + if (await _userManager.IsInRoleAsync(user, role.ToString())) + { + _logger.LogWarning( + "User with id {Id} already has role {Role}", + req.Id.ToString(), + role.ToString() + ); + var errors = $"User with id {req.Id.ToString()} already has role {role}"; + AddError(errors); + } + ThrowIfAnyErrors(); + + var result = await _userManager.AddToRoleAsync(user, role.ToString()); + + if (!result.Succeeded) + { + var errors = result + .Errors.Select(e => e.Description) + .Aggregate("Identity Errors: ", (a, b) => $"{a}, {b}"); + + _logger.LogWarning( + "Failed to add role {Role} to user with id {Id}: {errors}", + role.ToString(), + req.Id.ToString(), + errors + ); + AddError(errors); + } + ThrowIfAnyErrors(); + + var updatedUser = await _userManager.FindByIdAsync(req.Id.ToString()); + var response = _mapper.Map(updatedUser); + response.Roles = await _userManager.GetRolesAsync(updatedUser!); + + await SendOkAsync(response, ct); + } +} diff --git a/quetzalcoatl-auth/Api/Features/Users/Roles/Add/Models.cs b/quetzalcoatl-auth/Api/Features/Users/Roles/Add/Models.cs new file mode 100644 index 0000000..1cd64a0 --- /dev/null +++ b/quetzalcoatl-auth/Api/Features/Users/Roles/Add/Models.cs @@ -0,0 +1,9 @@ +namespace Api.Features.Users.Roles.Add; + +public class AddRoleRequest +{ + [FromRoute] + public Guid Id { get; set; } = Guid.Empty; + + public string Role { get; set; } = string.Empty; +} diff --git a/quetzalcoatl-auth/Api/Features/Users/Roles/Add/Summary.cs b/quetzalcoatl-auth/Api/Features/Users/Roles/Add/Summary.cs new file mode 100644 index 0000000..cb0ad30 --- /dev/null +++ b/quetzalcoatl-auth/Api/Features/Users/Roles/Add/Summary.cs @@ -0,0 +1,32 @@ +namespace Api.Features.Users.Roles.Add; + +public class AddRoleSummary : Summary +{ + public AddRoleSummary() + { + Summary = "Add a role to a user"; + Description = "Add a role to a user by id"; + ExampleRequest = new AddRoleRequest + { + Id = Guid.NewGuid(), + Role = ApplicationRole.Proposer.ToString() + }; + Response( + 200, + "Role added successfully", + example: new() + { + Id = Guid.NewGuid(), + Username = "Test", + Email = "test@gmail.com", + Fullname = "Test User", + Bio = "Test user bio", + ProfilePictureId = Guid.NewGuid(), + Roles = new List { ApplicationRole.Proposer.ToString() } + } + ); + Response(404, "User not found"); + Response(401, "Unauthorized access"); + Response(500, "Internal server error"); + } +} diff --git a/quetzalcoatl-auth/Api/Features/Users/Roles/Remove/Endpoint.cs b/quetzalcoatl-auth/Api/Features/Users/Roles/Remove/Endpoint.cs new file mode 100644 index 0000000..c9250e6 --- /dev/null +++ b/quetzalcoatl-auth/Api/Features/Users/Roles/Remove/Endpoint.cs @@ -0,0 +1,88 @@ +namespace Api.Features.Users.Roles.Remove; + +public class RemoveRoleEndpoint : Endpoint +{ + private readonly UserManager _userManager; + private readonly IMapper _mapper; + private readonly ILogger _logger; + + public RemoveRoleEndpoint( + UserManager userManager, + IMapper mapper, + ILogger logger + ) + { + _userManager = userManager ?? throw new ArgumentNullException(nameof(userManager)); + _mapper = mapper ?? throw new ArgumentNullException(nameof(mapper)); + _logger = logger ?? throw new ArgumentNullException(nameof(logger)); + } + + public override void Configure() + { + Delete("{id}/role"); + Roles(ApplicationRole.Admin.ToString()); + Group(); + } + + public override async Task HandleAsync(RemoveRoleRequest req, CancellationToken ct) + { + _logger.LogInformation( + "Removing role {Role} from user with id {Id}", + req.Role.ToString(), + req.Id.ToString() + ); + + if (!Enum.TryParse(req.Role, out var role)) + { + _logger.LogWarning("Role {Role} is not a valid role", req.Role); + var errors = $"Role {req.Role.ToString()} is not a valid role"; + AddError(errors); + } + ThrowIfAnyErrors(); + + var user = await _userManager.FindByIdAsync(req.Id.ToString()); + + if (user is null) + { + _logger.LogWarning("User with id {Id} not found", req.Id.ToString()); + await SendNotFoundAsync(ct); + return; + } + + if (!await _userManager.IsInRoleAsync(user, role.ToString())) + { + _logger.LogWarning( + "User with id {Id} does not have role {Role}", + req.Id.ToString(), + role.ToString() + ); + var errors = $"User with id {req.Id.ToString()} does not have role {role}"; + AddError(errors); + } + ThrowIfAnyErrors(); + + var result = await _userManager.RemoveFromRoleAsync(user, role.ToString()); + + if (!result.Succeeded) + { + var errors = result + .Errors.Select(e => e.Description) + .Aggregate("Identity Errors: ", (a, b) => $"{a}, {b}"); + + _logger.LogWarning( + "Failed to remove role {Role} from user with id {Id}: {errors}", + role.ToString(), + req.Id.ToString(), + errors + ); + AddError(errors); + } + ThrowIfAnyErrors(); + + var updatedUser = await _userManager.FindByIdAsync(req.Id.ToString()); + var response = _mapper.Map(updatedUser); + response.Roles = await _userManager.GetRolesAsync(updatedUser!); + + await SendOkAsync(response, ct); + } +} diff --git a/quetzalcoatl-auth/Api/Features/Users/Roles/Remove/Models.cs b/quetzalcoatl-auth/Api/Features/Users/Roles/Remove/Models.cs new file mode 100644 index 0000000..227bed2 --- /dev/null +++ b/quetzalcoatl-auth/Api/Features/Users/Roles/Remove/Models.cs @@ -0,0 +1,9 @@ +namespace Api.Features.Users.Roles.Remove; + +public class RemoveRoleRequest +{ + [FromRoute] + public Guid Id { get; set; } = Guid.Empty; + + public string Role { get; set; } = string.Empty; +} diff --git a/quetzalcoatl-auth/Api/Features/Users/Roles/Remove/Summary.cs b/quetzalcoatl-auth/Api/Features/Users/Roles/Remove/Summary.cs new file mode 100644 index 0000000..c0e34a7 --- /dev/null +++ b/quetzalcoatl-auth/Api/Features/Users/Roles/Remove/Summary.cs @@ -0,0 +1,32 @@ +namespace Api.Features.Users.Roles.Remove; + +public class RemoveRoleSummary : Summary +{ + public RemoveRoleSummary() + { + Summary = "Remove a role from a user"; + Description = "Remove a role from a user by id"; + ExampleRequest = new RemoveRoleRequest + { + Id = Guid.NewGuid(), + Role = ApplicationRole.Proposer.ToString() + }; + Response( + 200, + "Role removed successfully", + example: new() + { + Id = Guid.NewGuid(), + Username = "Test", + Email = "test@gmail.com", + Fullname = "Test User", + Bio = "Test user bio", + ProfilePictureId = Guid.NewGuid(), + Roles = new List() + } + ); + Response(404, "User not found"); + Response(401, "Unauthorized access"); + Response(500, "Internal server error"); + } +} diff --git a/quetzalcoatl-auth/Api/Features/Users/Update/Endpoint.cs b/quetzalcoatl-auth/Api/Features/Users/Update/Endpoint.cs index 8682012..5c93f03 100644 --- a/quetzalcoatl-auth/Api/Features/Users/Update/Endpoint.cs +++ b/quetzalcoatl-auth/Api/Features/Users/Update/Endpoint.cs @@ -28,8 +28,8 @@ public override async Task HandleAsync(UpdateUserRequest req, CancellationToken { _logger.LogInformation("Updating user with id {Id}", req.Id.ToString()); - var subClaim = User.Claims - .Where(c => c.Type == ClaimTypes.NameIdentifier) + var subClaim = User + .Claims.Where(c => c.Type == ClaimTypes.NameIdentifier) .Select(c => c.Value) .FirstOrDefault(); @@ -51,8 +51,8 @@ public override async Task HandleAsync(UpdateUserRequest req, CancellationToken if (!result.Succeeded) { - var errors = result.Errors - .Select(e => e.Description) + var errors = result + .Errors.Select(e => e.Description) .Aggregate("Identity Errors: ", (a, b) => $"{a}, {b}"); _logger.LogWarning( @@ -66,7 +66,10 @@ public override async Task HandleAsync(UpdateUserRequest req, CancellationToken ThrowIfAnyErrors(); var updatedUser = await _userManager.FindByIdAsync(req.Id.ToString()); + var userRoles = await _userManager.GetRolesAsync(updatedUser!); + var response = _mapper.Map(updatedUser); + response.Roles = userRoles; - await SendOkAsync(response: _mapper.Map(updatedUser), ct); + await SendOkAsync(response, ct); } } diff --git a/quetzalcoatl-auth/Api/Features/Users/Update/Mappers.cs b/quetzalcoatl-auth/Api/Features/Users/Update/Mappers.cs index e9eb132..a176cc1 100644 --- a/quetzalcoatl-auth/Api/Features/Users/Update/Mappers.cs +++ b/quetzalcoatl-auth/Api/Features/Users/Update/Mappers.cs @@ -59,15 +59,10 @@ public ApplicationUserToUpdateUserResponseProfile() .ForMember(dest => dest.Fullname, opt => opt.MapFrom(src => src.Fullname)) .ForMember(dest => dest.Bio, opt => opt.MapFrom(src => src.Bio)) .ForMember( - dest => dest.ProfilePictureUrl, + dest => dest.ProfilePictureId, opt => - opt.MapFrom( - src => - src.GetProfilePictureUrl( - ProfilePictureConstants.BaseUrl, - ProfilePictureConstants.EndpointUrl, - ProfilePictureConstants.Extension - ) + opt.MapFrom(src => + src.ProfilePicture != null ? src.ProfilePicture!.Id : null ) ); } diff --git a/quetzalcoatl-auth/Api/Features/Users/Update/Models.cs b/quetzalcoatl-auth/Api/Features/Users/Update/Models.cs index 3cc4206..545f11e 100644 --- a/quetzalcoatl-auth/Api/Features/Users/Update/Models.cs +++ b/quetzalcoatl-auth/Api/Features/Users/Update/Models.cs @@ -18,5 +18,6 @@ public class UpdateUserResponse public string Email { get; set; } = string.Empty; public string? Fullname { get; set; } public string? Bio { get; set; } - public string? ProfilePictureUrl { get; set; } + public Guid? ProfilePictureId { get; set; } + public IEnumerable Roles { get; set; } = new List(); } diff --git a/quetzalcoatl-auth/Api/Features/Users/Update/Summary.cs b/quetzalcoatl-auth/Api/Features/Users/Update/Summary.cs index 48c34e3..6c37586 100644 --- a/quetzalcoatl-auth/Api/Features/Users/Update/Summary.cs +++ b/quetzalcoatl-auth/Api/Features/Users/Update/Summary.cs @@ -24,8 +24,7 @@ public UpdateUserSummary() Email = "test@gmail.com", Fullname = "Test User", Bio = "Test user bio", - ProfilePictureUrl = - "https://localhost:5001/api/images/6D31153C-C832-4530-8B93-B99CF657828C.png" + ProfilePictureId = Guid.NewGuid() } ); Response(400, "Validation failure"); diff --git a/quetzalcoatl-auth/Api/Features/Users/Update/Validators.cs b/quetzalcoatl-auth/Api/Features/Users/Update/Validators.cs index 0414a5b..f6bf1bb 100644 --- a/quetzalcoatl-auth/Api/Features/Users/Update/Validators.cs +++ b/quetzalcoatl-auth/Api/Features/Users/Update/Validators.cs @@ -7,8 +7,10 @@ public Validator() RuleFor(x => x.Id).NotEmpty().WithMessage("Id is required"); RuleFor(x => x.Username) - .MinimumLength(3) - .WithMessage("Username must be at least 3 characters long") + .MinimumLength(ApplicationUserConsts.UsernameMinLength) + .WithMessage( + $"Username must be at least {ApplicationUserConsts.UsernameMinLength} characters long" + ) .When(x => !x.Username.IsNullOrEmpty()); RuleFor(x => x.Email) @@ -17,13 +19,17 @@ public Validator() .When(x => !x.Email.IsNullOrEmpty()); RuleFor(x => x.Fullname) - .MaximumLength(50) - .WithMessage("Fullname must be at most 50 characters long") + .MaximumLength(ApplicationUserConsts.FullnameMaxLength) + .WithMessage( + $"Fullname must be at most {ApplicationUserConsts.FullnameMaxLength} characters long" + ) .When(x => !string.IsNullOrWhiteSpace(x.Fullname)); RuleFor(x => x.Bio) - .MaximumLength(300) - .WithMessage("Bio must be at most 300 characters long") + .MaximumLength(ApplicationUserConsts.BioMaxLength) + .WithMessage( + $"Bio must be at most {ApplicationUserConsts.BioMaxLength} characters long" + ) .When(x => !string.IsNullOrWhiteSpace(x.Bio)); RuleFor(x => x.ProfilePicture) @@ -35,8 +41,9 @@ public Validator() .When(x => x.ProfilePicture is not null); } - private static bool IsAllowedSize(long length) => length <= 10_000_000; + private static bool IsAllowedSize(long length) => + length <= ApplicationUserConsts.ProfilePictureMaxLength; private static bool IsAllowedType(string contentType) => - contentType.ToLower() is "image/png" or "image/jpeg" or "image/jpg"; + ApplicationUserConsts.AllowedProfilePictureTypes.Contains(contentType); } diff --git a/quetzalcoatl-auth/Api/Usings.cs b/quetzalcoatl-auth/Api/Usings.cs index 43007c6..02b0b22 100644 --- a/quetzalcoatl-auth/Api/Usings.cs +++ b/quetzalcoatl-auth/Api/Usings.cs @@ -1,23 +1,24 @@ -global using FastEndpoints; -global using FluentValidation; -global using IMapper = AutoMapper.IMapper; -global using AutoMapper; -global using Microsoft.AspNetCore.Builder; -global using Application.Features.Users.ValidateUserCredentials; -global using Application.Features.Users.CreateUser; -global using Domain.Entities; -global using Microsoft.AspNetCore.Identity; -global using Api.Features.Users.Core; -global using Microsoft.IdentityModel.Tokens; -global using Microsoft.AspNetCore.Http; -global using Api.Features.Core; -global using Domain.Interfaces; -global using Microsoft.Extensions.Logging; +global using System.IdentityModel.Tokens.Jwt; global using System.Security.Claims; global using Api.Features.Auth.RefreshToken; +global using Api.Features.Core; +global using Api.Features.Users.Core; +global using Application.Features.Users.CreateUser; +global using Application.Features.Users.ValidateUserCredentials; +global using AutoMapper; global using Domain.Configs; -global using Microsoft.AspNetCore.Authentication.Cookies; +global using Domain.Consts; +global using Domain.Entities; +global using Domain.Interfaces; +global using FastEndpoints; global using FastEndpoints.Security; +global using FluentValidation; +global using Microsoft.AspNetCore.Authentication.Cookies; +global using Microsoft.AspNetCore.Builder; +global using Microsoft.AspNetCore.Http; +global using Microsoft.AspNetCore.Identity; global using Microsoft.AspNetCore.Mvc; -global using System.IdentityModel.Tokens.Jwt; +global using Microsoft.Extensions.Logging; global using Microsoft.Extensions.Options; +global using Microsoft.IdentityModel.Tokens; +global using IMapper = AutoMapper.IMapper; diff --git a/quetzalcoatl-auth/Application/Features/Users/CreateUser/Handler.cs b/quetzalcoatl-auth/Application/Features/Users/CreateUser/Handler.cs index b895575..798d22d 100644 --- a/quetzalcoatl-auth/Application/Features/Users/CreateUser/Handler.cs +++ b/quetzalcoatl-auth/Application/Features/Users/CreateUser/Handler.cs @@ -29,8 +29,8 @@ public override async Task ExecuteAsync( if (!result.Succeeded) { - var errors = result.Errors - .Select(e => e.Description) + var errors = result + .Errors.Select(e => e.Description) .Aggregate("Identity Errors: ", (a, b) => $"{a}, {b}"); _logger.LogError( diff --git a/quetzalcoatl-auth/Application/Usings.cs b/quetzalcoatl-auth/Application/Usings.cs index 16d0e68..f637822 100644 --- a/quetzalcoatl-auth/Application/Usings.cs +++ b/quetzalcoatl-auth/Application/Usings.cs @@ -1,10 +1,10 @@ -global using Domain.Entities; -global using FastEndpoints; -global using Microsoft.AspNetCore.Identity; -global using FastEndpoints.Security; global using System.IdentityModel.Tokens.Jwt; global using System.Security.Claims; global using AutoMapper; -global using IMapper = AutoMapper.IMapper; global using Domain.Configs; +global using Domain.Entities; +global using FastEndpoints; +global using FastEndpoints.Security; +global using Microsoft.AspNetCore.Identity; global using Microsoft.Extensions.Logging; +global using IMapper = AutoMapper.IMapper; diff --git a/quetzalcoatl-auth/Bootstrapper/Bootstrapper.csproj b/quetzalcoatl-auth/Bootstrapper/Bootstrapper.csproj index eb3650d..5c415c3 100644 --- a/quetzalcoatl-auth/Bootstrapper/Bootstrapper.csproj +++ b/quetzalcoatl-auth/Bootstrapper/Bootstrapper.csproj @@ -9,6 +9,7 @@ + diff --git a/quetzalcoatl-auth/Bootstrapper/Extensions/ServiceCollectionExtensions.cs b/quetzalcoatl-auth/Bootstrapper/Extensions/ServiceCollectionExtensions.cs index d9644e0..6c21087 100644 --- a/quetzalcoatl-auth/Bootstrapper/Extensions/ServiceCollectionExtensions.cs +++ b/quetzalcoatl-auth/Bootstrapper/Extensions/ServiceCollectionExtensions.cs @@ -5,14 +5,14 @@ public static class ServiceCollectionExtensions public static void RemoveDbContext(this IServiceCollection services) where T : DbContext { - var descriptor = services.SingleOrDefault( - d => d.ServiceType == typeof(DbContextOptions) + var descriptor = services.SingleOrDefault(d => + d.ServiceType == typeof(DbContextOptions) ); if (descriptor != null) services.Remove(descriptor); } - public static void EnsureDbCreated(this IServiceCollection services) + public static void ApplyMigrations(this IServiceCollection services) where T : DbContext { var serviceProvider = services.BuildServiceProvider(); diff --git a/quetzalcoatl-auth/Bootstrapper/Extensions/WebApplicationExtensions.cs b/quetzalcoatl-auth/Bootstrapper/Extensions/WebApplicationExtensions.cs index f5b53ce..e80bdba 100644 --- a/quetzalcoatl-auth/Bootstrapper/Extensions/WebApplicationExtensions.cs +++ b/quetzalcoatl-auth/Bootstrapper/Extensions/WebApplicationExtensions.cs @@ -9,7 +9,7 @@ public static async Task UseSeedData(this WebApplication app) var roleManager = services.GetRequiredService>>(); - var roles = Enum.GetValues(); + var roles = Enum.GetValues(); foreach (var role in roles) { var roleExists = await roleManager.RoleExistsAsync(role.ToString()); @@ -40,12 +40,12 @@ public static async Task UseSeedData(this WebApplication app) adminUser, adminConfig.Value.Password ); - var resultAddRole = await userManager.AddToRoleAsync( + var resultAddRoles = await userManager.AddToRolesAsync( adminUser, - ApplicationRoles.Admin.ToString() + new[] { ApplicationRole.Proposer.ToString(), ApplicationRole.Admin.ToString() } ); - if (!resultCreateUser.Succeeded || !resultAddRole.Succeeded) + if (!resultCreateUser.Succeeded || !resultAddRoles.Succeeded) { throw new Exception("Failed to create admin user"); } diff --git a/quetzalcoatl-auth/Bootstrapper/Program.cs b/quetzalcoatl-auth/Bootstrapper/Program.cs index d216f39..bffeb5c 100644 --- a/quetzalcoatl-auth/Bootstrapper/Program.cs +++ b/quetzalcoatl-auth/Bootstrapper/Program.cs @@ -1,5 +1,5 @@ -Log.Logger = new LoggerConfiguration().MinimumLevel - .Override("Microsoft", LogEventLevel.Information) +Log.Logger = new LoggerConfiguration() + .MinimumLevel.Override("Microsoft", LogEventLevel.Information) .Enrich.FromLogContext() .WriteTo.Console() .CreateLogger(); @@ -10,9 +10,14 @@ var builder = WebApplication.CreateBuilder(args); + if (builder.Environment.IsEnvironment(SystemConsts.TestingEnvironment)) + { + _ = builder.Configuration.AddDotNetEnv(".env.template", LoadOptions.TraversePath()).Build(); + } + builder.Services.Configure(builder.Configuration.GetSection(nameof(JwtConfig))); builder.Services.Configure(builder.Configuration.GetSection(nameof(AdminConfig))); - + var jwtConfig = builder.Configuration.GetSection(nameof(JwtConfig)).Get(); var tokenValidationParameters = new TokenValidationParameters { @@ -25,19 +30,26 @@ }; var dsnConnectionString = builder.Configuration.GetConnectionString("DefaultConnection"); - builder.Services.AddHealthChecks().AddSqlServer(dsnConnectionString!); + if (!builder.Environment.IsEnvironment(SystemConsts.TestingEnvironment)) + { + builder.Services.AddHealthChecks().AddSqlServer(dsnConnectionString!); + } builder.Host.UseSerilog( (context, services, configuration) => configuration.ReadFrom.Configuration(context.Configuration).ReadFrom.Services(services) ); - - builder.Services - .AddDbContext(options => + + builder + .Services.AddDbContext(options => { - options.UseSqlServer(dsnConnectionString); - options.UseTriggers( - triggerOptions => triggerOptions.AddTrigger() + if (!builder.Environment.IsEnvironment(SystemConsts.TestingEnvironment)) + { + options.UseSqlServer(dsnConnectionString); + } + + options.UseTriggers(triggerOptions => + triggerOptions.AddTrigger() ); }) .AddScoped() @@ -50,10 +62,28 @@ if (builder.Environment.IsDevelopment()) { - builder.Services.EnsureDbCreated(); + builder.Services.ApplyMigrations(); } - builder.Services + var corsOrigins = builder.Configuration.GetSection("AllowedOrigins").Value?.Split(';'); + Log.Information("Allowed origins: {CorsOrigins}", corsOrigins); + builder + .Services.AddCors(options => + { + options.AddDefaultPolicy(corsPolicyBuilder => + { + corsPolicyBuilder + .WithOrigins( + corsOrigins ?? new[] { "http://localhost:10000", "https://pantheonix.live" } + ) + .AllowAnyMethod() + .AllowAnyHeader() + .AllowCredentials(); + }); + }) + .AddSingleton(tokenValidationParameters) + .AddJWTBearerAuth(jwtConfig.SecretKey) + .AddAutoMapper(typeof(IApiMarker), typeof(IApplicationMarker)) .AddFastEndpoints(options => { options.DisableAutoDiscovery = true; @@ -62,31 +92,30 @@ typeof(IApiMarker).Assembly, typeof(IApplicationMarker).Assembly }; - }) - .AddSingleton(tokenValidationParameters) - .AddJWTBearerAuth(jwtConfig.SecretKey) - .AddAutoMapper(typeof(IApiMarker), typeof(IApplicationMarker)) - .AddSwaggerDoc(settings => - { - settings.Title = "Quetzalcoatl Auth API"; - settings.Version = "v1"; }); var app = builder.Build(); - + if (app.Environment.IsDevelopment()) { await app.UseSeedData(); } - app.MapHealthChecks( - "/_health", - new HealthCheckOptions { ResponseWriter = UIResponseWriter.WriteHealthCheckUIResponse, } - ) - .RequireHost("*:5210"); + if (!app.Environment.IsEnvironment(SystemConsts.TestingEnvironment)) + { + app.MapHealthChecks( + "/_health", + new HealthCheckOptions + { + ResponseWriter = UIResponseWriter.WriteHealthCheckUIResponse, + } + ) + .RequireHost("*:5210"); + } app.UseSerilogRequestLogging() .UseDefaultExceptionHandler() + .UseCors() .UseAuthentication() .UseAuthorization() .UseFastEndpoints(config => diff --git a/quetzalcoatl-auth/Bootstrapper/Usings.cs b/quetzalcoatl-auth/Bootstrapper/Usings.cs index 360d72a..a46420b 100644 --- a/quetzalcoatl-auth/Bootstrapper/Usings.cs +++ b/quetzalcoatl-auth/Bootstrapper/Usings.cs @@ -1,21 +1,24 @@ -global using FastEndpoints; -global using Infrastructure; -global using Microsoft.EntityFrameworkCore; -global using FastEndpoints.Security; +global using System.Text; global using Api; -global using FastEndpoints.Swagger; -global using Domain.Entities; global using Application; +global using Bootstrapper.Extensions; global using Domain.Configs; +global using Domain.Consts; +global using Domain.Entities; global using Domain.Interfaces; +global using DotNetEnv; +global using DotNetEnv.Configuration; +global using FastEndpoints; +global using FastEndpoints.Security; +global using FastEndpoints.Swagger; +global using HealthChecks.UI.Client; +global using Infrastructure; global using Infrastructure.Repositories; -global using Serilog; -global using Serilog.Events; -global using Microsoft.Extensions.Options; -global using Microsoft.AspNetCore.Identity; -global using Bootstrapper.Extensions; -global using System.Text; -global using Microsoft.IdentityModel.Tokens; global using Infrastructure.Triggers; -global using HealthChecks.UI.Client; global using Microsoft.AspNetCore.Diagnostics.HealthChecks; +global using Microsoft.AspNetCore.Identity; +global using Microsoft.EntityFrameworkCore; +global using Microsoft.Extensions.Options; +global using Microsoft.IdentityModel.Tokens; +global using Serilog; +global using Serilog.Events; diff --git a/quetzalcoatl-auth/Bootstrapper/appsettings.json b/quetzalcoatl-auth/Bootstrapper/appsettings.json index dbc6b65..65a0ee3 100644 --- a/quetzalcoatl-auth/Bootstrapper/appsettings.json +++ b/quetzalcoatl-auth/Bootstrapper/appsettings.json @@ -27,6 +27,5 @@ "Microsoft.AspNetCore": "Warning", "Microsoft.AspNetCore.Diagnostics.ExceptionHandlerMiddleware": "None" } - }, - "AllowedHosts": "*" + } } diff --git a/quetzalcoatl-auth/CHANGELOG.md b/quetzalcoatl-auth/CHANGELOG.md new file mode 100644 index 0000000..b82cf5b --- /dev/null +++ b/quetzalcoatl-auth/CHANGELOG.md @@ -0,0 +1,29 @@ +# Changelog + +## 1.0.0 (2024-09-21) + + +### Features + +* **cors:** enable cors policy for anubis, enki and quetzalcoatl ([6652dbc](https://github.com/Pantheonix/Asgard/commit/6652dbcdbfaceeb94c36369423fecb7b2682d9d5)) +* **images:** allow anonymous users to access the image endpoint ([9689d00](https://github.com/Pantheonix/Asgard/commit/9689d003b1b09b5c4b01abd0577a21844f26af8a)) +* **roles:** add endpoints for roles management ([33e1b88](https://github.com/Pantheonix/Asgard/commit/33e1b88092bfd53c6e1aee14c6a05d36ec525f9e)) +* **users:** add support for filtering-sorting-pagination for users endpoint ([464b181](https://github.com/Pantheonix/Asgard/commit/464b1810efe519e155309573d55da5603bcb0a53)) + + +### Bug Fixes + +* **quetzalcoatl:** check profile picture not to be null before adding its id to dtos ([f869580](https://github.com/Pantheonix/Asgard/commit/f8695804e16dc01123b4e70f6726d3555885bb58)) +* **quetzalcoatl:** get total count of items after filtering for correct user pagination on GetAll endpoint ([8fdd7ec](https://github.com/Pantheonix/Asgard/commit/8fdd7ec9fbae2dc880b373abdab2f115bbd4e40d)) +* **remove role:** add role information to user response ([c1ad42e](https://github.com/Pantheonix/Asgard/commit/c1ad42efd1e1f497e1a84009bea0f81aef9a2479)) + + +### Performance Improvements + +* **prod:** update SameSite attribute for cookies to None ([7d143ad](https://github.com/Pantheonix/Asgard/commit/7d143adde34b824adc3a90f6a062bb5453038912)) +* **quetzalcoatl:** extract cors origins in envvar ([cffef24](https://github.com/Pantheonix/Asgard/commit/cffef24f5af89ee8c3328e0a8fd88e091c0f0939)) +* **quetzalcoatl:** set cookies as samesite none ([6108f12](https://github.com/Pantheonix/Asgard/commit/6108f12a86e7060eab56506a7059bf13745bed5e)) +* **quetzalcoatl:** simplify refresh token logic ([36f3105](https://github.com/Pantheonix/Asgard/commit/36f3105b35d0be6469a7afeae2a0f33a34ba0365)) +* **quetzalcoatl:** update user dtos to use ProfilePictureId instead of ProfilePictureUrl ([67da983](https://github.com/Pantheonix/Asgard/commit/67da983e7155937f9ea956afa2717e7d9144837f)) +* **register:** set auth tokens as samesite lax ([c4537b6](https://github.com/Pantheonix/Asgard/commit/c4537b6524e956215f278c32194b4a63a51634ba)) +* **users:** define all fsp params as optional ([54ec5c2](https://github.com/Pantheonix/Asgard/commit/54ec5c24bebfe674ffaf973c1bb61b2b79cf5170)) diff --git a/quetzalcoatl-auth/Dockerfile b/quetzalcoatl-auth/Dockerfile index 59dd506..edfaa22 100644 --- a/quetzalcoatl-auth/Dockerfile +++ b/quetzalcoatl-auth/Dockerfile @@ -23,16 +23,6 @@ COPY Infrastructure/ Infrastructure/ WORKDIR /src/Bootstrapper RUN dotnet build -c release --no-restore -# Test Stage -FROM build AS test -LABEL stage=builder -WORKDIR /src - -COPY Tests.Integration/*.csproj Tests.Integration/ -RUN dotnet restore Tests.Integration/Tests.Integration.csproj - -ENTRYPOINT ["dotnet", "test", "--no-build", "--no-restore", "--verbosity=normal", "--logger:trx"] - # Publish Stage FROM build AS publish LABEL stage=builder diff --git a/quetzalcoatl-auth/Domain/Consts/ApplicationUserConsts.cs b/quetzalcoatl-auth/Domain/Consts/ApplicationUserConsts.cs new file mode 100644 index 0000000..b50474b --- /dev/null +++ b/quetzalcoatl-auth/Domain/Consts/ApplicationUserConsts.cs @@ -0,0 +1,18 @@ +namespace Domain.Consts; + +public static class ApplicationUserConsts +{ + public const int UsernameMinLength = 3; + public const int PasswordMinLength = 6; + public const int PasswordMaxLength = 20; + public const int FullnameMaxLength = 50; + public const int BioMaxLength = 300; + public const int ProfilePictureMaxLength = 10_000_000; + public const string PasswordRegex = @"^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[^\da-zA-Z]).{6,20}$"; + public static readonly string[] AllowedProfilePictureTypes = + { + "image/png", + "image/jpeg", + "image/jpg" + }; +} diff --git a/quetzalcoatl-auth/Domain/Consts/SystemConsts.cs b/quetzalcoatl-auth/Domain/Consts/SystemConsts.cs new file mode 100644 index 0000000..b25eda7 --- /dev/null +++ b/quetzalcoatl-auth/Domain/Consts/SystemConsts.cs @@ -0,0 +1,6 @@ +namespace Domain.Consts; + +public static class SystemConsts +{ + public const string TestingEnvironment = "Testing"; +} diff --git a/quetzalcoatl-auth/Domain/Entities/ApplicationRole.cs b/quetzalcoatl-auth/Domain/Entities/ApplicationRole.cs new file mode 100644 index 0000000..e226700 --- /dev/null +++ b/quetzalcoatl-auth/Domain/Entities/ApplicationRole.cs @@ -0,0 +1,7 @@ +namespace Domain.Entities; + +public enum ApplicationRole +{ + Proposer, + Admin +} diff --git a/quetzalcoatl-auth/Domain/Entities/RefreshToken.cs b/quetzalcoatl-auth/Domain/Entities/RefreshToken.cs index 9f0d471..eda6c08 100644 --- a/quetzalcoatl-auth/Domain/Entities/RefreshToken.cs +++ b/quetzalcoatl-auth/Domain/Entities/RefreshToken.cs @@ -1,14 +1,12 @@ namespace Domain.Entities; [Table("RefreshTokens")] -[PrimaryKey(nameof(Token), nameof(Jti))] +[PrimaryKey(nameof(Token))] public class RefreshToken { public Guid Token { get; set; } - public Guid Jti { get; set; } public DateTime CreationDate { get; set; } public DateTime ExpiryDate { get; set; } - public bool IsUsed { get; set; } public bool IsInvalidated { get; set; } public Guid UserId { get; set; } diff --git a/quetzalcoatl-auth/Domain/Usings.cs b/quetzalcoatl-auth/Domain/Usings.cs index 5a6e920..4de951d 100644 --- a/quetzalcoatl-auth/Domain/Usings.cs +++ b/quetzalcoatl-auth/Domain/Usings.cs @@ -1,6 +1,6 @@ -global using Microsoft.AspNetCore.Identity; global using System.ComponentModel.DataAnnotations; global using System.ComponentModel.DataAnnotations.Schema; -global using Domain.Entities; global using System.Linq.Expressions; +global using Domain.Entities; +global using Microsoft.AspNetCore.Identity; global using Microsoft.EntityFrameworkCore; diff --git a/quetzalcoatl-auth/Infrastructure/ApplicationDbContext.cs b/quetzalcoatl-auth/Infrastructure/ApplicationDbContext.cs index c73147a..346d8e9 100644 --- a/quetzalcoatl-auth/Infrastructure/ApplicationDbContext.cs +++ b/quetzalcoatl-auth/Infrastructure/ApplicationDbContext.cs @@ -21,4 +21,15 @@ protected override void OnModelCreating(ModelBuilder modelBuilder) modelBuilder.Entity().Navigation(b => b.ProfilePicture).AutoInclude(); } + + protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) + { + base.OnConfiguring(optionsBuilder); + + if (optionsBuilder.IsConfigured) + return; + + var connectionString = Environment.GetEnvironmentVariable("QUETZALCOATL_DSN"); + optionsBuilder.UseSqlServer(connectionString!); + } } diff --git a/quetzalcoatl-auth/Infrastructure/Infrastructure.csproj b/quetzalcoatl-auth/Infrastructure/Infrastructure.csproj index d89d3e1..d537e21 100644 --- a/quetzalcoatl-auth/Infrastructure/Infrastructure.csproj +++ b/quetzalcoatl-auth/Infrastructure/Infrastructure.csproj @@ -26,4 +26,4 @@ - + \ No newline at end of file diff --git a/quetzalcoatl-auth/Infrastructure/Migrations/20230315154826_AddGuidAsPKForIdentityUser.cs b/quetzalcoatl-auth/Infrastructure/Migrations/20230315154826_AddGuidAsPKForIdentityUser.cs index 3e1da52..b937e98 100644 --- a/quetzalcoatl-auth/Infrastructure/Migrations/20230315154826_AddGuidAsPKForIdentityUser.cs +++ b/quetzalcoatl-auth/Infrastructure/Migrations/20230315154826_AddGuidAsPKForIdentityUser.cs @@ -13,29 +13,25 @@ protected override void Up(MigrationBuilder migrationBuilder) { migrationBuilder.CreateTable( name: "AspNetRoles", - columns: table => - new - { - Id = table.Column( - type: "uniqueidentifier", - nullable: false, - defaultValueSql: "newsequentialid()" - ), - Name = table.Column( - type: "nvarchar(256)", - maxLength: 256, - nullable: true - ), - NormalizedName = table.Column( - type: "nvarchar(256)", - maxLength: 256, - nullable: true - ), - ConcurrencyStamp = table.Column( - type: "nvarchar(max)", - nullable: true - ) - }, + columns: table => new + { + Id = table.Column( + type: "uniqueidentifier", + nullable: false, + defaultValueSql: "newsequentialid()" + ), + Name = table.Column( + type: "nvarchar(256)", + maxLength: 256, + nullable: true + ), + NormalizedName = table.Column( + type: "nvarchar(256)", + maxLength: 256, + nullable: true + ), + ConcurrencyStamp = table.Column(type: "nvarchar(max)", nullable: true) + }, constraints: table => { table.PrimaryKey("PK_AspNetRoles", x => x.Id); @@ -44,51 +40,47 @@ protected override void Up(MigrationBuilder migrationBuilder) migrationBuilder.CreateTable( name: "AspNetUsers", - columns: table => - new - { - Id = table.Column( - type: "uniqueidentifier", - nullable: false, - defaultValueSql: "newsequentialid()" - ), - UserName = table.Column( - type: "nvarchar(256)", - maxLength: 256, - nullable: true - ), - NormalizedUserName = table.Column( - type: "nvarchar(256)", - maxLength: 256, - nullable: true - ), - Email = table.Column( - type: "nvarchar(256)", - maxLength: 256, - nullable: true - ), - NormalizedEmail = table.Column( - type: "nvarchar(256)", - maxLength: 256, - nullable: true - ), - EmailConfirmed = table.Column(type: "bit", nullable: false), - PasswordHash = table.Column(type: "nvarchar(max)", nullable: true), - SecurityStamp = table.Column(type: "nvarchar(max)", nullable: true), - ConcurrencyStamp = table.Column( - type: "nvarchar(max)", - nullable: true - ), - PhoneNumber = table.Column(type: "nvarchar(max)", nullable: true), - PhoneNumberConfirmed = table.Column(type: "bit", nullable: false), - TwoFactorEnabled = table.Column(type: "bit", nullable: false), - LockoutEnd = table.Column( - type: "datetimeoffset", - nullable: true - ), - LockoutEnabled = table.Column(type: "bit", nullable: false), - AccessFailedCount = table.Column(type: "int", nullable: false) - }, + columns: table => new + { + Id = table.Column( + type: "uniqueidentifier", + nullable: false, + defaultValueSql: "newsequentialid()" + ), + UserName = table.Column( + type: "nvarchar(256)", + maxLength: 256, + nullable: true + ), + NormalizedUserName = table.Column( + type: "nvarchar(256)", + maxLength: 256, + nullable: true + ), + Email = table.Column( + type: "nvarchar(256)", + maxLength: 256, + nullable: true + ), + NormalizedEmail = table.Column( + type: "nvarchar(256)", + maxLength: 256, + nullable: true + ), + EmailConfirmed = table.Column(type: "bit", nullable: false), + PasswordHash = table.Column(type: "nvarchar(max)", nullable: true), + SecurityStamp = table.Column(type: "nvarchar(max)", nullable: true), + ConcurrencyStamp = table.Column(type: "nvarchar(max)", nullable: true), + PhoneNumber = table.Column(type: "nvarchar(max)", nullable: true), + PhoneNumberConfirmed = table.Column(type: "bit", nullable: false), + TwoFactorEnabled = table.Column(type: "bit", nullable: false), + LockoutEnd = table.Column( + type: "datetimeoffset", + nullable: true + ), + LockoutEnabled = table.Column(type: "bit", nullable: false), + AccessFailedCount = table.Column(type: "int", nullable: false) + }, constraints: table => { table.PrimaryKey("PK_AspNetUsers", x => x.Id); @@ -97,16 +89,15 @@ protected override void Up(MigrationBuilder migrationBuilder) migrationBuilder.CreateTable( name: "AspNetRoleClaims", - columns: table => - new - { - Id = table - .Column(type: "int", nullable: false) - .Annotation("SqlServer:Identity", "1, 1"), - RoleId = table.Column(type: "uniqueidentifier", nullable: false), - ClaimType = table.Column(type: "nvarchar(max)", nullable: true), - ClaimValue = table.Column(type: "nvarchar(max)", nullable: true) - }, + columns: table => new + { + Id = table + .Column(type: "int", nullable: false) + .Annotation("SqlServer:Identity", "1, 1"), + RoleId = table.Column(type: "uniqueidentifier", nullable: false), + ClaimType = table.Column(type: "nvarchar(max)", nullable: true), + ClaimValue = table.Column(type: "nvarchar(max)", nullable: true) + }, constraints: table => { table.PrimaryKey("PK_AspNetRoleClaims", x => x.Id); @@ -122,16 +113,15 @@ protected override void Up(MigrationBuilder migrationBuilder) migrationBuilder.CreateTable( name: "AspNetUserClaims", - columns: table => - new - { - Id = table - .Column(type: "int", nullable: false) - .Annotation("SqlServer:Identity", "1, 1"), - UserId = table.Column(type: "uniqueidentifier", nullable: false), - ClaimType = table.Column(type: "nvarchar(max)", nullable: true), - ClaimValue = table.Column(type: "nvarchar(max)", nullable: true) - }, + columns: table => new + { + Id = table + .Column(type: "int", nullable: false) + .Annotation("SqlServer:Identity", "1, 1"), + UserId = table.Column(type: "uniqueidentifier", nullable: false), + ClaimType = table.Column(type: "nvarchar(max)", nullable: true), + ClaimValue = table.Column(type: "nvarchar(max)", nullable: true) + }, constraints: table => { table.PrimaryKey("PK_AspNetUserClaims", x => x.Id); @@ -147,20 +137,16 @@ protected override void Up(MigrationBuilder migrationBuilder) migrationBuilder.CreateTable( name: "AspNetUserLogins", - columns: table => - new - { - LoginProvider = table.Column( - type: "nvarchar(450)", - nullable: false - ), - ProviderKey = table.Column(type: "nvarchar(450)", nullable: false), - ProviderDisplayName = table.Column( - type: "nvarchar(max)", - nullable: true - ), - UserId = table.Column(type: "uniqueidentifier", nullable: false) - }, + columns: table => new + { + LoginProvider = table.Column(type: "nvarchar(450)", nullable: false), + ProviderKey = table.Column(type: "nvarchar(450)", nullable: false), + ProviderDisplayName = table.Column( + type: "nvarchar(max)", + nullable: true + ), + UserId = table.Column(type: "uniqueidentifier", nullable: false) + }, constraints: table => { table.PrimaryKey( @@ -179,12 +165,11 @@ protected override void Up(MigrationBuilder migrationBuilder) migrationBuilder.CreateTable( name: "AspNetUserRoles", - columns: table => - new - { - UserId = table.Column(type: "uniqueidentifier", nullable: false), - RoleId = table.Column(type: "uniqueidentifier", nullable: false) - }, + columns: table => new + { + UserId = table.Column(type: "uniqueidentifier", nullable: false), + RoleId = table.Column(type: "uniqueidentifier", nullable: false) + }, constraints: table => { table.PrimaryKey("PK_AspNetUserRoles", x => new { x.UserId, x.RoleId }); @@ -207,28 +192,23 @@ protected override void Up(MigrationBuilder migrationBuilder) migrationBuilder.CreateTable( name: "AspNetUserTokens", - columns: table => - new - { - UserId = table.Column(type: "uniqueidentifier", nullable: false), - LoginProvider = table.Column( - type: "nvarchar(450)", - nullable: false - ), - Name = table.Column(type: "nvarchar(450)", nullable: false), - Value = table.Column(type: "nvarchar(max)", nullable: true) - }, + columns: table => new + { + UserId = table.Column(type: "uniqueidentifier", nullable: false), + LoginProvider = table.Column(type: "nvarchar(450)", nullable: false), + Name = table.Column(type: "nvarchar(450)", nullable: false), + Value = table.Column(type: "nvarchar(max)", nullable: true) + }, constraints: table => { table.PrimaryKey( "PK_AspNetUserTokens", - x => - new - { - x.UserId, - x.LoginProvider, - x.Name - } + x => new + { + x.UserId, + x.LoginProvider, + x.Name + } ); table.ForeignKey( name: "FK_AspNetUserTokens_AspNetUsers_UserId", diff --git a/quetzalcoatl-auth/Infrastructure/Migrations/20230319104138_AddProfileImageToIdentityUser.cs b/quetzalcoatl-auth/Infrastructure/Migrations/20230319104138_AddProfileImageToIdentityUser.cs index d0e1071..a1f3296 100644 --- a/quetzalcoatl-auth/Infrastructure/Migrations/20230319104138_AddProfileImageToIdentityUser.cs +++ b/quetzalcoatl-auth/Infrastructure/Migrations/20230319104138_AddProfileImageToIdentityUser.cs @@ -13,13 +13,12 @@ protected override void Up(MigrationBuilder migrationBuilder) { migrationBuilder.CreateTable( name: "Pictures", - columns: table => - new - { - Id = table.Column(type: "uniqueidentifier", nullable: false), - Data = table.Column(type: "varbinary(max)", nullable: false), - UserId = table.Column(type: "uniqueidentifier", nullable: false) - }, + columns: table => new + { + Id = table.Column(type: "uniqueidentifier", nullable: false), + Data = table.Column(type: "varbinary(max)", nullable: false), + UserId = table.Column(type: "uniqueidentifier", nullable: false) + }, constraints: table => { table.PrimaryKey("PK_Pictures", x => x.Id); diff --git a/quetzalcoatl-auth/Infrastructure/Migrations/20230509173144_AddRefreshTokenEntity.Designer.cs b/quetzalcoatl-auth/Infrastructure/Migrations/20230509173144_AddRefreshTokenEntity.Designer.cs new file mode 100644 index 0000000..9ad94f1 --- /dev/null +++ b/quetzalcoatl-auth/Infrastructure/Migrations/20230509173144_AddRefreshTokenEntity.Designer.cs @@ -0,0 +1,358 @@ +// +using System; +using Infrastructure; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Metadata; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; + +#nullable disable + +namespace Infrastructure.Migrations +{ + [DbContext(typeof(ApplicationDbContext))] + [Migration("20230509173144_AddRefreshTokenEntity")] + partial class AddRefreshTokenEntity + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "7.0.3") + .HasAnnotation("Relational:MaxIdentifierLength", 128); + + SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder); + + modelBuilder.Entity("Domain.Entities.ApplicationUser", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier") + .HasDefaultValueSql("newsequentialid()"); + + b.Property("AccessFailedCount") + .HasColumnType("int"); + + b.Property("Bio") + .HasMaxLength(300) + .HasColumnType("nvarchar(300)"); + + b.Property("ConcurrencyStamp") + .IsConcurrencyToken() + .HasColumnType("nvarchar(max)"); + + b.Property("Email") + .HasMaxLength(256) + .HasColumnType("nvarchar(256)"); + + b.Property("EmailConfirmed") + .HasColumnType("bit"); + + b.Property("Fullname") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("LockoutEnabled") + .HasColumnType("bit"); + + b.Property("LockoutEnd") + .HasColumnType("datetimeoffset"); + + b.Property("NormalizedEmail") + .HasMaxLength(256) + .HasColumnType("nvarchar(256)"); + + b.Property("NormalizedUserName") + .HasMaxLength(256) + .HasColumnType("nvarchar(256)"); + + b.Property("PasswordHash") + .HasColumnType("nvarchar(max)"); + + b.Property("PhoneNumber") + .HasColumnType("nvarchar(max)"); + + b.Property("PhoneNumberConfirmed") + .HasColumnType("bit"); + + b.Property("SecurityStamp") + .HasColumnType("nvarchar(max)"); + + b.Property("TwoFactorEnabled") + .HasColumnType("bit"); + + b.Property("UserName") + .HasMaxLength(256) + .HasColumnType("nvarchar(256)"); + + b.HasKey("Id"); + + b.HasIndex("NormalizedEmail") + .HasDatabaseName("EmailIndex"); + + b.HasIndex("NormalizedUserName") + .IsUnique() + .HasDatabaseName("UserNameIndex") + .HasFilter("[NormalizedUserName] IS NOT NULL"); + + b.ToTable("AspNetUsers", (string)null); + }); + + modelBuilder.Entity("Domain.Entities.Picture", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); + + b.Property("Data") + .IsRequired() + .HasColumnType("varbinary(max)"); + + b.Property("UserId") + .HasColumnType("uniqueidentifier"); + + b.HasKey("Id"); + + b.HasIndex("UserId") + .IsUnique(); + + b.ToTable("Pictures"); + }); + + modelBuilder.Entity("Domain.Entities.RefreshToken", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); + + b.Property("ExpiryDate") + .HasColumnType("datetime2"); + + b.Property("Token") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("UserId") + .HasColumnType("uniqueidentifier"); + + b.HasKey("Id"); + + b.HasIndex("UserId"); + + b.ToTable("RefreshTokens"); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRole", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); + + b.Property("ConcurrencyStamp") + .IsConcurrencyToken() + .HasColumnType("nvarchar(max)"); + + b.Property("Name") + .HasMaxLength(256) + .HasColumnType("nvarchar(256)"); + + b.Property("NormalizedName") + .HasMaxLength(256) + .HasColumnType("nvarchar(256)"); + + b.HasKey("Id"); + + b.HasIndex("NormalizedName") + .IsUnique() + .HasDatabaseName("RoleNameIndex") + .HasFilter("[NormalizedName] IS NOT NULL"); + + b.ToTable("AspNetRoles", (string)null); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("ClaimType") + .HasColumnType("nvarchar(max)"); + + b.Property("ClaimValue") + .HasColumnType("nvarchar(max)"); + + b.Property("RoleId") + .HasColumnType("uniqueidentifier"); + + b.HasKey("Id"); + + b.HasIndex("RoleId"); + + b.ToTable("AspNetRoleClaims", (string)null); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("ClaimType") + .HasColumnType("nvarchar(max)"); + + b.Property("ClaimValue") + .HasColumnType("nvarchar(max)"); + + b.Property("UserId") + .HasColumnType("uniqueidentifier"); + + b.HasKey("Id"); + + b.HasIndex("UserId"); + + b.ToTable("AspNetUserClaims", (string)null); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin", b => + { + b.Property("LoginProvider") + .HasColumnType("nvarchar(450)"); + + b.Property("ProviderKey") + .HasColumnType("nvarchar(450)"); + + b.Property("ProviderDisplayName") + .HasColumnType("nvarchar(max)"); + + b.Property("UserId") + .HasColumnType("uniqueidentifier"); + + b.HasKey("LoginProvider", "ProviderKey"); + + b.HasIndex("UserId"); + + b.ToTable("AspNetUserLogins", (string)null); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole", b => + { + b.Property("UserId") + .HasColumnType("uniqueidentifier"); + + b.Property("RoleId") + .HasColumnType("uniqueidentifier"); + + b.HasKey("UserId", "RoleId"); + + b.HasIndex("RoleId"); + + b.ToTable("AspNetUserRoles", (string)null); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken", b => + { + b.Property("UserId") + .HasColumnType("uniqueidentifier"); + + b.Property("LoginProvider") + .HasColumnType("nvarchar(450)"); + + b.Property("Name") + .HasColumnType("nvarchar(450)"); + + b.Property("Value") + .HasColumnType("nvarchar(max)"); + + b.HasKey("UserId", "LoginProvider", "Name"); + + b.ToTable("AspNetUserTokens", (string)null); + }); + + modelBuilder.Entity("Domain.Entities.Picture", b => + { + b.HasOne("Domain.Entities.ApplicationUser", "User") + .WithOne("ProfilePicture") + .HasForeignKey("Domain.Entities.Picture", "UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("User"); + }); + + modelBuilder.Entity("Domain.Entities.RefreshToken", b => + { + b.HasOne("Domain.Entities.ApplicationUser", "User") + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("User"); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim", b => + { + b.HasOne("Microsoft.AspNetCore.Identity.IdentityRole", null) + .WithMany() + .HasForeignKey("RoleId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim", b => + { + b.HasOne("Domain.Entities.ApplicationUser", null) + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin", b => + { + b.HasOne("Domain.Entities.ApplicationUser", null) + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole", b => + { + b.HasOne("Microsoft.AspNetCore.Identity.IdentityRole", null) + .WithMany() + .HasForeignKey("RoleId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("Domain.Entities.ApplicationUser", null) + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken", b => + { + b.HasOne("Domain.Entities.ApplicationUser", null) + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + }); + + modelBuilder.Entity("Domain.Entities.ApplicationUser", b => + { + b.Navigation("ProfilePicture"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/quetzalcoatl-auth/Infrastructure/Migrations/20230509173144_AddRefreshTokenEntity.cs b/quetzalcoatl-auth/Infrastructure/Migrations/20230509173144_AddRefreshTokenEntity.cs new file mode 100644 index 0000000..a0e4044 --- /dev/null +++ b/quetzalcoatl-auth/Infrastructure/Migrations/20230509173144_AddRefreshTokenEntity.cs @@ -0,0 +1,49 @@ +using System; +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace Infrastructure.Migrations +{ + /// + public partial class AddRefreshTokenEntity : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.CreateTable( + name: "RefreshTokens", + columns: table => new + { + Id = table.Column(type: "uniqueidentifier", nullable: false), + Token = table.Column(type: "nvarchar(max)", nullable: false), + ExpiryDate = table.Column(type: "datetime2", nullable: false), + UserId = table.Column(type: "uniqueidentifier", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_RefreshTokens", x => x.Id); + table.ForeignKey( + name: "FK_RefreshTokens_AspNetUsers_UserId", + column: x => x.UserId, + principalTable: "AspNetUsers", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade + ); + } + ); + + migrationBuilder.CreateIndex( + name: "IX_RefreshTokens_UserId", + table: "RefreshTokens", + column: "UserId" + ); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropTable(name: "RefreshTokens"); + } + } +} diff --git a/quetzalcoatl-auth/Infrastructure/Migrations/20230525105824_UpdateRefreshTokenEntity.cs b/quetzalcoatl-auth/Infrastructure/Migrations/20230525105824_UpdateRefreshTokenEntity.cs index fb438f1..f057092 100644 --- a/quetzalcoatl-auth/Infrastructure/Migrations/20230525105824_UpdateRefreshTokenEntity.cs +++ b/quetzalcoatl-auth/Infrastructure/Migrations/20230525105824_UpdateRefreshTokenEntity.cs @@ -13,16 +13,15 @@ protected override void Up(MigrationBuilder migrationBuilder) { migrationBuilder.CreateTable( name: "RefreshTokens", - columns: table => - new - { - Token = table.Column(type: "uniqueidentifier", nullable: false), - ExpiryDate = table.Column(type: "datetime2", nullable: false), - IsUsed = table.Column(type: "bit", nullable: false), - IsInvalidated = table.Column(type: "bit", nullable: false), - Jti = table.Column(type: "uniqueidentifier", nullable: false), - UserId = table.Column(type: "uniqueidentifier", nullable: false) - }, + columns: table => new + { + Token = table.Column(type: "uniqueidentifier", nullable: false), + ExpiryDate = table.Column(type: "datetime2", nullable: false), + IsUsed = table.Column(type: "bit", nullable: false), + IsInvalidated = table.Column(type: "bit", nullable: false), + Jti = table.Column(type: "uniqueidentifier", nullable: false), + UserId = table.Column(type: "uniqueidentifier", nullable: false) + }, constraints: table => { table.PrimaryKey("PK_RefreshTokens", x => x.Token); diff --git a/quetzalcoatl-auth/Infrastructure/Migrations/20231201120945_RemoveRedundantFieldsFromRefreshTokens.Designer.cs b/quetzalcoatl-auth/Infrastructure/Migrations/20231201120945_RemoveRedundantFieldsFromRefreshTokens.Designer.cs new file mode 100644 index 0000000..6f7806e --- /dev/null +++ b/quetzalcoatl-auth/Infrastructure/Migrations/20231201120945_RemoveRedundantFieldsFromRefreshTokens.Designer.cs @@ -0,0 +1,360 @@ +// +using System; +using Infrastructure; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Metadata; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; + +#nullable disable + +namespace Infrastructure.Migrations +{ + [DbContext(typeof(ApplicationDbContext))] + [Migration("20231201120945_RemoveRedundantFieldsFromRefreshTokens")] + partial class RemoveRedundantFieldsFromRefreshTokens + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "7.0.3") + .HasAnnotation("Relational:MaxIdentifierLength", 128); + + SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder); + + modelBuilder.Entity("Domain.Entities.ApplicationUser", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier") + .HasDefaultValueSql("newsequentialid()"); + + b.Property("AccessFailedCount") + .HasColumnType("int"); + + b.Property("Bio") + .HasMaxLength(300) + .HasColumnType("nvarchar(300)"); + + b.Property("ConcurrencyStamp") + .IsConcurrencyToken() + .HasColumnType("nvarchar(max)"); + + b.Property("Email") + .HasMaxLength(256) + .HasColumnType("nvarchar(256)"); + + b.Property("EmailConfirmed") + .HasColumnType("bit"); + + b.Property("Fullname") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("LockoutEnabled") + .HasColumnType("bit"); + + b.Property("LockoutEnd") + .HasColumnType("datetimeoffset"); + + b.Property("NormalizedEmail") + .HasMaxLength(256) + .HasColumnType("nvarchar(256)"); + + b.Property("NormalizedUserName") + .HasMaxLength(256) + .HasColumnType("nvarchar(256)"); + + b.Property("PasswordHash") + .HasColumnType("nvarchar(max)"); + + b.Property("PhoneNumber") + .HasColumnType("nvarchar(max)"); + + b.Property("PhoneNumberConfirmed") + .HasColumnType("bit"); + + b.Property("SecurityStamp") + .HasColumnType("nvarchar(max)"); + + b.Property("TwoFactorEnabled") + .HasColumnType("bit"); + + b.Property("UserName") + .HasMaxLength(256) + .HasColumnType("nvarchar(256)"); + + b.HasKey("Id"); + + b.HasIndex("NormalizedEmail") + .HasDatabaseName("EmailIndex"); + + b.HasIndex("NormalizedUserName") + .IsUnique() + .HasDatabaseName("UserNameIndex") + .HasFilter("[NormalizedUserName] IS NOT NULL"); + + b.ToTable("AspNetUsers", (string)null); + }); + + modelBuilder.Entity("Domain.Entities.Picture", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); + + b.Property("Data") + .IsRequired() + .HasColumnType("varbinary(max)"); + + b.Property("UserId") + .HasColumnType("uniqueidentifier"); + + b.HasKey("Id"); + + b.HasIndex("UserId") + .IsUnique(); + + b.ToTable("Pictures"); + }); + + modelBuilder.Entity("Domain.Entities.RefreshToken", b => + { + b.Property("Token") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); + + b.Property("CreationDate") + .HasColumnType("datetime2"); + + b.Property("ExpiryDate") + .HasColumnType("datetime2"); + + b.Property("IsInvalidated") + .HasColumnType("bit"); + + b.Property("UserId") + .HasColumnType("uniqueidentifier"); + + b.HasKey("Token"); + + b.HasIndex("UserId"); + + b.ToTable("RefreshTokens"); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRole", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); + + b.Property("ConcurrencyStamp") + .IsConcurrencyToken() + .HasColumnType("nvarchar(max)"); + + b.Property("Name") + .HasMaxLength(256) + .HasColumnType("nvarchar(256)"); + + b.Property("NormalizedName") + .HasMaxLength(256) + .HasColumnType("nvarchar(256)"); + + b.HasKey("Id"); + + b.HasIndex("NormalizedName") + .IsUnique() + .HasDatabaseName("RoleNameIndex") + .HasFilter("[NormalizedName] IS NOT NULL"); + + b.ToTable("AspNetRoles", (string)null); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("ClaimType") + .HasColumnType("nvarchar(max)"); + + b.Property("ClaimValue") + .HasColumnType("nvarchar(max)"); + + b.Property("RoleId") + .HasColumnType("uniqueidentifier"); + + b.HasKey("Id"); + + b.HasIndex("RoleId"); + + b.ToTable("AspNetRoleClaims", (string)null); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("ClaimType") + .HasColumnType("nvarchar(max)"); + + b.Property("ClaimValue") + .HasColumnType("nvarchar(max)"); + + b.Property("UserId") + .HasColumnType("uniqueidentifier"); + + b.HasKey("Id"); + + b.HasIndex("UserId"); + + b.ToTable("AspNetUserClaims", (string)null); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin", b => + { + b.Property("LoginProvider") + .HasColumnType("nvarchar(450)"); + + b.Property("ProviderKey") + .HasColumnType("nvarchar(450)"); + + b.Property("ProviderDisplayName") + .HasColumnType("nvarchar(max)"); + + b.Property("UserId") + .HasColumnType("uniqueidentifier"); + + b.HasKey("LoginProvider", "ProviderKey"); + + b.HasIndex("UserId"); + + b.ToTable("AspNetUserLogins", (string)null); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole", b => + { + b.Property("UserId") + .HasColumnType("uniqueidentifier"); + + b.Property("RoleId") + .HasColumnType("uniqueidentifier"); + + b.HasKey("UserId", "RoleId"); + + b.HasIndex("RoleId"); + + b.ToTable("AspNetUserRoles", (string)null); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken", b => + { + b.Property("UserId") + .HasColumnType("uniqueidentifier"); + + b.Property("LoginProvider") + .HasColumnType("nvarchar(450)"); + + b.Property("Name") + .HasColumnType("nvarchar(450)"); + + b.Property("Value") + .HasColumnType("nvarchar(max)"); + + b.HasKey("UserId", "LoginProvider", "Name"); + + b.ToTable("AspNetUserTokens", (string)null); + }); + + modelBuilder.Entity("Domain.Entities.Picture", b => + { + b.HasOne("Domain.Entities.ApplicationUser", "User") + .WithOne("ProfilePicture") + .HasForeignKey("Domain.Entities.Picture", "UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("User"); + }); + + modelBuilder.Entity("Domain.Entities.RefreshToken", b => + { + b.HasOne("Domain.Entities.ApplicationUser", "User") + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("User"); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim", b => + { + b.HasOne("Microsoft.AspNetCore.Identity.IdentityRole", null) + .WithMany() + .HasForeignKey("RoleId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim", b => + { + b.HasOne("Domain.Entities.ApplicationUser", null) + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin", b => + { + b.HasOne("Domain.Entities.ApplicationUser", null) + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole", b => + { + b.HasOne("Microsoft.AspNetCore.Identity.IdentityRole", null) + .WithMany() + .HasForeignKey("RoleId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("Domain.Entities.ApplicationUser", null) + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken", b => + { + b.HasOne("Domain.Entities.ApplicationUser", null) + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + }); + + modelBuilder.Entity("Domain.Entities.ApplicationUser", b => + { + b.Navigation("ProfilePicture"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/quetzalcoatl-auth/Infrastructure/Migrations/20231201120945_RemoveRedundantFieldsFromRefreshTokens.cs b/quetzalcoatl-auth/Infrastructure/Migrations/20231201120945_RemoveRedundantFieldsFromRefreshTokens.cs new file mode 100644 index 0000000..24aeddb --- /dev/null +++ b/quetzalcoatl-auth/Infrastructure/Migrations/20231201120945_RemoveRedundantFieldsFromRefreshTokens.cs @@ -0,0 +1,55 @@ +using System; +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace Infrastructure.Migrations +{ + /// + public partial class RemoveRedundantFieldsFromRefreshTokens : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropPrimaryKey(name: "PK_RefreshTokens", table: "RefreshTokens"); + + migrationBuilder.DropColumn(name: "Jti", table: "RefreshTokens"); + + migrationBuilder.DropColumn(name: "IsUsed", table: "RefreshTokens"); + + migrationBuilder.AddPrimaryKey( + name: "PK_RefreshTokens", + table: "RefreshTokens", + column: "Token" + ); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropPrimaryKey(name: "PK_RefreshTokens", table: "RefreshTokens"); + + migrationBuilder.AddColumn( + name: "Jti", + table: "RefreshTokens", + type: "uniqueidentifier", + nullable: false, + defaultValue: new Guid("00000000-0000-0000-0000-000000000000") + ); + + migrationBuilder.AddColumn( + name: "IsUsed", + table: "RefreshTokens", + type: "bit", + nullable: false, + defaultValue: false + ); + + migrationBuilder.AddPrimaryKey( + name: "PK_RefreshTokens", + table: "RefreshTokens", + columns: new[] { "Token", "Jti" } + ); + } + } +} diff --git a/quetzalcoatl-auth/Infrastructure/Migrations/ApplicationDbContextModelSnapshot.cs b/quetzalcoatl-auth/Infrastructure/Migrations/ApplicationDbContextModelSnapshot.cs index 402db78..7a0902d 100644 --- a/quetzalcoatl-auth/Infrastructure/Migrations/ApplicationDbContextModelSnapshot.cs +++ b/quetzalcoatl-auth/Infrastructure/Migrations/ApplicationDbContextModelSnapshot.cs @@ -121,9 +121,7 @@ protected override void BuildModel(ModelBuilder modelBuilder) modelBuilder.Entity("Domain.Entities.RefreshToken", b => { b.Property("Token") - .HasColumnType("uniqueidentifier"); - - b.Property("Jti") + .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property("CreationDate") @@ -135,13 +133,10 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.Property("IsInvalidated") .HasColumnType("bit"); - b.Property("IsUsed") - .HasColumnType("bit"); - b.Property("UserId") .HasColumnType("uniqueidentifier"); - b.HasKey("Token", "Jti"); + b.HasKey("Token"); b.HasIndex("UserId"); diff --git a/quetzalcoatl-auth/Infrastructure/Triggers/DeleteStaleRefreshTokens.cs b/quetzalcoatl-auth/Infrastructure/Triggers/DeleteStaleRefreshTokens.cs index afbcd66..e2b0c51 100644 --- a/quetzalcoatl-auth/Infrastructure/Triggers/DeleteStaleRefreshTokens.cs +++ b/quetzalcoatl-auth/Infrastructure/Triggers/DeleteStaleRefreshTokens.cs @@ -17,8 +17,8 @@ CancellationToken cancellationToken { if (context.ChangeType is ChangeType.Added or ChangeType.Modified) { - await _tokenRepository.DeleteRefreshTokenAsync( - token => token.IsInvalidated || token.IsUsed || token.ExpiryDate < DateTime.UtcNow + await _tokenRepository.DeleteRefreshTokenAsync(token => + token.IsInvalidated || token.ExpiryDate < DateTime.UtcNow ); } } diff --git a/quetzalcoatl-auth/Infrastructure/Usings.cs b/quetzalcoatl-auth/Infrastructure/Usings.cs index ece75a6..279d2c3 100644 --- a/quetzalcoatl-auth/Infrastructure/Usings.cs +++ b/quetzalcoatl-auth/Infrastructure/Usings.cs @@ -1,7 +1,7 @@ -global using Microsoft.AspNetCore.Identity.EntityFrameworkCore; -global using Microsoft.EntityFrameworkCore; +global using System.Linq.Expressions; global using Domain.Entities; global using Domain.Interfaces; -global using Microsoft.AspNetCore.Identity; -global using System.Linq.Expressions; global using EntityFrameworkCore.Triggered; +global using Microsoft.AspNetCore.Identity; +global using Microsoft.AspNetCore.Identity.EntityFrameworkCore; +global using Microsoft.EntityFrameworkCore; diff --git a/quetzalcoatl-auth/Tests.Integration/Api/Features/Auth/LoginEndpointTests.cs b/quetzalcoatl-auth/Tests.Integration/Api/Features/Auth/LoginEndpointTests.cs index 8750ba8..be82334 100644 --- a/quetzalcoatl-auth/Tests.Integration/Api/Features/Auth/LoginEndpointTests.cs +++ b/quetzalcoatl-auth/Tests.Integration/Api/Features/Auth/LoginEndpointTests.cs @@ -75,7 +75,7 @@ public async Task GivenValidUserCredentials_WhenLoggingIn_ThenReturnsOk() result.Email.Should().Be(applicationUser.Email); result.Fullname.Should().Be(applicationUser.Fullname); result.Bio.Should().Be(applicationUser.Bio); - result.ProfilePictureUrl.Should().NotBeNullOrWhiteSpace(); + result.ProfilePictureId.Should().NotBeNull(); #endregion } diff --git a/quetzalcoatl-auth/Tests.Integration/Api/Features/Auth/RegisterEndpointTests.cs b/quetzalcoatl-auth/Tests.Integration/Api/Features/Auth/RegisterEndpointTests.cs index f6c3351..941812c 100644 --- a/quetzalcoatl-auth/Tests.Integration/Api/Features/Auth/RegisterEndpointTests.cs +++ b/quetzalcoatl-auth/Tests.Integration/Api/Features/Auth/RegisterEndpointTests.cs @@ -1,3 +1,5 @@ +using System.Net.Http.Formatting; + namespace Tests.Integration.Api.Features.Auth; public class RegisterEndpointTests : IClassFixture @@ -87,7 +89,7 @@ public async Task GivenValidUser_WhenRegistering_ThenReturnsCreated() result.Email.Should().Be(request.Email); result.Fullname.Should().Be(request.Fullname); result.Bio.Should().Be(request.Bio); - result.ProfilePictureUrl.Should().NotBeNullOrWhiteSpace(); + result.ProfilePictureId.Should().NotBeNull(); #endregion } @@ -144,11 +146,25 @@ public async Task GivenInvalidUser_WhenRegistering_ThenReturnsBadRequest() // check if AccessToken and RefreshToken cookies exist response.Headers.TryGetValues("Set-Cookie", out _).Should().BeFalse(); - var result = await response.Content.ReadAsAsync(); + var formatters = new MediaTypeFormatterCollection(); + formatters.JsonFormatter.SupportedMediaTypes.Add( + new MediaTypeHeaderValue("application/json") + ); + formatters.JsonFormatter.SupportedMediaTypes.Add( + new MediaTypeHeaderValue("application/problem+json") + ); + + var result = await response.Content.ReadAsAsync(formatters: formatters); result.Should().NotBeNull(); - result!.Errors.Keys.Should().Contain(nameof(request.Password)); - result.Errors.Keys.Should().Contain(nameof(request.ProfilePicture)); + result! + .Errors.Keys.Select(r => r.ToUpper()) + .Should() + .Contain(nameof(request.Password).ToUpper()); + result + .Errors.Keys.Select(r => r.ToUpper()) + .Should() + .Contain(nameof(request.ProfilePicture).ToUpper()); #endregion } diff --git a/quetzalcoatl-auth/Tests.Integration/Api/Features/Images/GetImageEndpointTests.cs b/quetzalcoatl-auth/Tests.Integration/Api/Features/Images/GetImageEndpointTests.cs index 480ac9f..337737d 100644 --- a/quetzalcoatl-auth/Tests.Integration/Api/Features/Images/GetImageEndpointTests.cs +++ b/quetzalcoatl-auth/Tests.Integration/Api/Features/Images/GetImageEndpointTests.cs @@ -21,45 +21,6 @@ public GetImageEndpointTests(ApiWebFactory apiWebFactory) #endregion - [Fact] - public async Task GivenAnonymousUser_WhenGettingImage_ThenReturnsUnauthorized() - { - #region Arrange - - using var scope = _apiWebFactory.Services.CreateScope(); - var userManager = scope.ServiceProvider.GetRequiredService>(); - - var profilePictureData = await ImageHelpers.GetImageAsByteArrayAsync( - "https://picsum.photos/200" - ); - var profilePicture = new Picture { Data = profilePictureData }; - - var applicationUser = _applicationUserFaker - .Clone() - .RuleFor(rule => rule.ProfilePicture, profilePicture) - .Generate(); - - const string validPassword = "P@ssw0rd!"; - await userManager.CreateAsync(applicationUser, validPassword); - - var request = new GetImageRequest { Id = applicationUser.ProfilePicture!.Id }; - - #endregion - - #region Act - - var response = await _client.GETAsync(request); - - #endregion - - #region Assert - - response.Should().NotBeNull(); - response.StatusCode.Should().Be(HttpStatusCode.Unauthorized); - - #endregion - } - [Fact] public async Task GivenAuthorizedUserAndNonExistingImageId_WhenGettingImage_ThenReturnsNotFound() { diff --git a/quetzalcoatl-auth/Tests.Integration/Api/Features/Users/DeleteEndpointTests.cs b/quetzalcoatl-auth/Tests.Integration/Api/Features/Users/DeleteEndpointTests.cs index 0ac3ece..4b03052 100644 --- a/quetzalcoatl-auth/Tests.Integration/Api/Features/Users/DeleteEndpointTests.cs +++ b/quetzalcoatl-auth/Tests.Integration/Api/Features/Users/DeleteEndpointTests.cs @@ -41,6 +41,7 @@ public async Task GivenAnonymousUser_WhenDeletingUser_ThenReturnsUnauthorized() const string validPassword = "P@ssw0rd!"; await userManager.CreateAsync(applicationUser, validPassword); + var users = await userManager.Users.ToListAsync(); var request = new DeleteUserRequest { Id = applicationUser.Id }; @@ -136,7 +137,7 @@ public async Task GivenAuthorizedUserAndIdOfNonExistingUser_WhenDeletingUser_The RoleManager> >(); - await roleManager.CreateAsync(new IdentityRole(ApplicationRoles.Admin.ToString())); + await roleManager.CreateAsync(new IdentityRole(ApplicationRole.Admin.ToString())); var profilePictureData = await ImageHelpers.GetImageAsByteArrayAsync( "https://picsum.photos/200" @@ -159,7 +160,7 @@ public async Task GivenAuthorizedUserAndIdOfNonExistingUser_WhenDeletingUser_The await userManager.CreateAsync(applicationUser, validPassword); } - await userManager.AddToRoleAsync(users.ElementAt(0), ApplicationRoles.Admin.ToString()); + await userManager.AddToRoleAsync(users.ElementAt(0), ApplicationRole.Admin.ToString()); var loginUserRequest = new LoginUserRequest { @@ -208,7 +209,7 @@ public async Task GivenAuthorizedUser_WhenDeletingUser_ThenReturnsNoContent() RoleManager> >(); - await roleManager.CreateAsync(new IdentityRole(ApplicationRoles.Admin.ToString())); + await roleManager.CreateAsync(new IdentityRole(ApplicationRole.Admin.ToString())); var profilePictureData = await ImageHelpers.GetImageAsByteArrayAsync( "https://picsum.photos/200" @@ -230,7 +231,7 @@ public async Task GivenAuthorizedUser_WhenDeletingUser_ThenReturnsNoContent() await userManager.CreateAsync(applicationUser, validPassword); } - await userManager.AddToRoleAsync(users.ElementAt(0), ApplicationRoles.Admin.ToString()); + await userManager.AddToRoleAsync(users.ElementAt(0), ApplicationRole.Admin.ToString()); var loginUserRequest = new LoginUserRequest { diff --git a/quetzalcoatl-auth/Tests.Integration/Api/Features/Users/GetAllEndpointTests.cs b/quetzalcoatl-auth/Tests.Integration/Api/Features/Users/GetAllEndpointTests.cs index e230f61..f066d74 100644 --- a/quetzalcoatl-auth/Tests.Integration/Api/Features/Users/GetAllEndpointTests.cs +++ b/quetzalcoatl-auth/Tests.Integration/Api/Features/Users/GetAllEndpointTests.cs @@ -29,9 +29,6 @@ public async Task GivenAuthorizedUser_WhenGettingAllUsers_ThenReturnsOk() using var scope = _apiWebFactory.Services.CreateScope(); var userManager = scope.ServiceProvider.GetRequiredService>(); - var existingUsers = await userManager.Users.ToListAsync(); - await userManager.DeleteAsync(existingUsers.ElementAt(0)); - var profilePictureData = await ImageHelpers.GetImageAsByteArrayAsync( "https://picsum.photos/200" ); @@ -144,11 +141,7 @@ private static UserDto MapUserDtoFrom(ApplicationUser appUser) Email = appUser.Email!, Fullname = appUser.Fullname, Bio = appUser.Bio, - ProfilePictureUrl = appUser.GetProfilePictureUrl( - ProfilePictureConstants.BaseUrl, - ProfilePictureConstants.EndpointUrl, - ProfilePictureConstants.Extension - ) + ProfilePictureId = appUser.ProfilePicture?.Id }; } } diff --git a/quetzalcoatl-auth/Tests.Integration/Api/Features/Users/GetEndpointTests.cs b/quetzalcoatl-auth/Tests.Integration/Api/Features/Users/GetEndpointTests.cs index 2a8d081..1df6f02 100644 --- a/quetzalcoatl-auth/Tests.Integration/Api/Features/Users/GetEndpointTests.cs +++ b/quetzalcoatl-auth/Tests.Integration/Api/Features/Users/GetEndpointTests.cs @@ -104,11 +104,7 @@ public async Task GivenAuthorizedUserAndExistingUserIdentity_WhenGettingUser_The Email = applicationUser.Email!, Fullname = applicationUser.Fullname, Bio = applicationUser.Bio, - ProfilePictureUrl = applicationUser.GetProfilePictureUrl( - ProfilePictureConstants.BaseUrl, - ProfilePictureConstants.EndpointUrl, - ProfilePictureConstants.Extension - ) + ProfilePictureId = applicationUser.ProfilePicture?.Id }; #endregion diff --git a/quetzalcoatl-auth/Tests.Integration/Api/Features/Users/UpdateEndpointTests.cs b/quetzalcoatl-auth/Tests.Integration/Api/Features/Users/UpdateEndpointTests.cs index 6f07506..e15ae38 100644 --- a/quetzalcoatl-auth/Tests.Integration/Api/Features/Users/UpdateEndpointTests.cs +++ b/quetzalcoatl-auth/Tests.Integration/Api/Features/Users/UpdateEndpointTests.cs @@ -383,11 +383,7 @@ public async Task GivenAuthorizedUserAndValidRequestForPartialUpdate_WhenUpdatin Email = applicationUser.Email!, Fullname = $"{applicationUser.Fullname!}-updated", Bio = applicationUser.Bio, - ProfilePictureUrl = applicationUser.GetProfilePictureUrl( - ProfilePictureConstants.BaseUrl, - ProfilePictureConstants.EndpointUrl, - ProfilePictureConstants.Extension - ) + ProfilePictureId = applicationUser.ProfilePicture?.Id }; #endregion @@ -412,7 +408,7 @@ public async Task GivenAuthorizedUserAndValidRequestForPartialUpdate_WhenUpdatin result.Should().NotBeNull(); result .Should() - .BeEquivalentTo(expectedResponse, opt => opt.Excluding(r => r.ProfilePictureUrl)); + .BeEquivalentTo(expectedResponse, opt => opt.Excluding(r => r.ProfilePictureId)); #endregion } @@ -503,11 +499,7 @@ public async Task GivenAuthorizedUserAndValidRequest_WhenUpdatingUser_ThenReturn Email = $"{applicationUser.Email!}-updated", Fullname = $"{applicationUser.Fullname!}-updated", Bio = $"{applicationUser.Bio!}-updated", - ProfilePictureUrl = applicationUser.GetProfilePictureUrl( - ProfilePictureConstants.BaseUrl, - ProfilePictureConstants.EndpointUrl, - ProfilePictureConstants.Extension - ) + ProfilePictureId = applicationUser.ProfilePicture?.Id }; #endregion @@ -532,7 +524,7 @@ public async Task GivenAuthorizedUserAndValidRequest_WhenUpdatingUser_ThenReturn result.Should().NotBeNull(); result .Should() - .BeEquivalentTo(expectedResponse, opt => opt.Excluding(r => r.ProfilePictureUrl)); + .BeEquivalentTo(expectedResponse, opt => opt.Excluding(r => r.ProfilePictureId)); #endregion } diff --git a/quetzalcoatl-auth/Tests.Integration/Core/ApiWebFactory.cs b/quetzalcoatl-auth/Tests.Integration/Core/ApiWebFactory.cs index aacf017..8979f5e 100644 --- a/quetzalcoatl-auth/Tests.Integration/Core/ApiWebFactory.cs +++ b/quetzalcoatl-auth/Tests.Integration/Core/ApiWebFactory.cs @@ -1,9 +1,11 @@ +using DotNet.Testcontainers.Builders; + namespace Tests.Integration.Core; public class ApiWebFactory : WebApplicationFactory, IAsyncLifetime { private readonly MsSqlContainer _database = new MsSqlBuilder() - .WithImage("mcr.microsoft.com/mssql/server:2022-latest") + .WithImage("mcr.microsoft.com/mssql/server:2022-CU14-ubuntu-22.04") .Build(); protected override void ConfigureWebHost(IWebHostBuilder builder) @@ -13,9 +15,9 @@ protected override void ConfigureWebHost(IWebHostBuilder builder) services.RemoveDbContext(); services.AddDbContext(options => { - options.UseSqlServer(_database.GetConnectionString()); + options.UseSqlServer($"{_database.GetConnectionString()};MultipleActiveResultSets=true"); }); - services.EnsureDbCreated(); + services.ApplyMigrations(); }); } diff --git a/quetzalcoatl-auth/Tests.Integration/Usings.cs b/quetzalcoatl-auth/Tests.Integration/Usings.cs index bc4f859..c428ec3 100644 --- a/quetzalcoatl-auth/Tests.Integration/Usings.cs +++ b/quetzalcoatl-auth/Tests.Integration/Usings.cs @@ -1,31 +1,31 @@ -global using Xunit; -global using Microsoft.AspNetCore.Mvc.Testing; -global using Microsoft.AspNetCore.Hosting; -global using Infrastructure; -global using Microsoft.AspNetCore.TestHost; -global using Microsoft.EntityFrameworkCore; -global using Microsoft.Extensions.DependencyInjection; -global using Tests.Integration.Core; -global using Bogus; -global using Bogus.Extensions; -global using FastEndpoints; global using System.Net; -global using FluentAssertions; -global using Api.Features.Auth.Register; -global using Testcontainers.MsSql; -global using Bootstrapper; -global using Bootstrapper.Extensions; +global using System.Net.Http.Headers; +global using System.Net.Mime; global using Api.Features.Auth.Login; -global using Api.Features.Users.GetAll; -global using Api.Features.Users.Get; +global using Api.Features.Auth.RefreshToken; +global using Api.Features.Auth.Register; +global using Api.Features.Core; +global using Api.Features.Images.Get; global using Api.Features.Users.Core; -global using Api.Features.Users.Update; global using Api.Features.Users.Delete; -global using Microsoft.AspNetCore.Http; -global using System.Net.Http.Headers; -global using System.Net.Mime; +global using Api.Features.Users.Get; +global using Api.Features.Users.GetAll; +global using Api.Features.Users.Update; +global using Bogus; +global using Bogus.Extensions; +global using Bootstrapper; +global using Bootstrapper.Extensions; global using Domain.Entities; +global using FastEndpoints; +global using FluentAssertions; +global using Infrastructure; +global using Microsoft.AspNetCore.Hosting; +global using Microsoft.AspNetCore.Http; global using Microsoft.AspNetCore.Identity; -global using Api.Features.Core; -global using Api.Features.Images.Get; -global using Api.Features.Auth.RefreshToken; +global using Microsoft.AspNetCore.Mvc.Testing; +global using Microsoft.AspNetCore.TestHost; +global using Microsoft.EntityFrameworkCore; +global using Microsoft.Extensions.DependencyInjection; +global using Testcontainers.MsSql; +global using Tests.Integration.Core; +global using Xunit; diff --git a/quetzalcoatl-auth/global.json b/quetzalcoatl-auth/global.json new file mode 100644 index 0000000..dee0d43 --- /dev/null +++ b/quetzalcoatl-auth/global.json @@ -0,0 +1,7 @@ +{ + "sdk": { + "version": "7.0.119", + "rollForward": "latestMajor", + "allowPrerelease": true + } +} \ No newline at end of file diff --git a/release-please-config.json b/release-please-config.json new file mode 100644 index 0000000..8017092 --- /dev/null +++ b/release-please-config.json @@ -0,0 +1,38 @@ +{ + "include-component-in-tag": true, + "include-v-in-tag": true, + "tag-separator": "/", + "separate-pull-requests": true, + "packages": { + "quetzalcoatl-auth": { + "package-name": "quetzalcoatl", + "release-type": "simple" + }, + "enki-problems": { + "package-name": "enki", + "release-type": "simple" + }, + "hermes-tests": { + "package-name": "hermes", + "release-type": "dart" + }, + "anubis-eval": { + "package-name": "anubis", + "release-type": "rust", + "exclude-paths": ["anubis/eval-lb"] + }, + "odin-gateway": { + "package-name": "odin", + "release-type": "simple" + }, + "dapr": { + "package-name": "dapr", + "release-type": "simple" + }, + "anubis-eval/eval-lb": { + "package-name": "eval-lb", + "release-type": "simple" + } + }, + "$schema": "https://raw.githubusercontent.com/googleapis/release-please/main/schemas/config.json" +} \ No newline at end of file diff --git a/seeder/.dockerignore b/seeder/.dockerignore new file mode 100644 index 0000000..57600d9 --- /dev/null +++ b/seeder/.dockerignore @@ -0,0 +1,34 @@ +# Include any files or directories that you don't want to be copied to your +# container here (e.g., local build artifacts, temporary files, etc.). +# +# For more help, visit the .dockerignore file reference guide at +# https://docs.docker.com/go/build-context-dockerignore/ + +**/.DS_Store +**/.classpath +**/.dockerignore +**/.env +**/.git +**/.gitignore +**/.project +**/.settings +**/.toolstarget +**/.vs +**/.vscode +**/*.*proj.user +**/*.dbmdl +**/*.jfm +**/bin +**/charts +**/docker-compose* +**/compose.y*ml +**/Dockerfile* +**/node_modules +**/npm-debug.log +**/obj +**/secrets.dev.yaml +**/values.dev.yaml +**/.idea +LICENSE +README.md +fixtures.yaml diff --git a/seeder/.gitignore b/seeder/.gitignore new file mode 100644 index 0000000..c2efc81 --- /dev/null +++ b/seeder/.gitignore @@ -0,0 +1 @@ +.devcontainer/ \ No newline at end of file diff --git a/seeder/Dockerfile b/seeder/Dockerfile new file mode 100644 index 0000000..4ff8d4a --- /dev/null +++ b/seeder/Dockerfile @@ -0,0 +1,66 @@ +# Create a stage for building the application. +ARG GO_VERSION=1.22 +FROM --platform=$BUILDPLATFORM golang:${GO_VERSION} AS build +WORKDIR /src + +# Download dependencies as a separate step to take advantage of Docker's caching. +# Leverage a cache mount to /go/pkg/mod/ to speed up subsequent builds. +# Leverage bind mounts to go.sum and go.mod to avoid having to copy them into +# the container. +RUN --mount=type=cache,target=/go/pkg/mod/ \ + --mount=type=bind,source=go.sum,target=go.sum \ + --mount=type=bind,source=go.mod,target=go.mod \ + go mod download -x + +# This is the architecture you're building for, which is passed in by the builder. +# Placing it here allows the previous steps to be cached across architectures. +ARG TARGETARCH + +# Build the application. +# Leverage a cache mount to /go/pkg/mod/ to speed up subsequent builds. +# Leverage a bind mount to the current directory to avoid having to copy the +# source code into the container. +RUN --mount=type=cache,target=/go/pkg/mod/ \ + --mount=type=bind,target=. \ + CGO_ENABLED=0 GOARCH=$TARGETARCH go build -o /bin/seeder . + +################################################################################ +# Create a new stage for running the application that contains the minimal +# runtime dependencies for the application. This often uses a different base +# image from the build stage where the necessary files are copied from the build +# stage. +# +# The example below uses the alpine image as the foundation for running the app. +# By specifying the "latest" tag, it will also use whatever happens to be the +# most recent version of that image when you build your Dockerfile. If +# reproducability is important, consider using a versioned tag +# (e.g., alpine:3.17.2) or SHA (e.g., alpine@sha256:c41ab5c992deb4fe7e5da09f67a8804a46bd0592bfdf0b1847dde0e0889d2bff). +FROM alpine:latest AS final + +# Install any runtime dependencies that are needed to run your application. +# Leverage a cache mount to /var/cache/apk/ to speed up subsequent builds. +RUN --mount=type=cache,target=/var/cache/apk \ + apk --update add \ + ca-certificates \ + tzdata \ + && \ + update-ca-certificates + +# Create a non-privileged user that the app will run under. +# See https://docs.docker.com/go/dockerfile-user-best-practices/ +ARG UID=10001 +RUN adduser \ + --disabled-password \ + --gecos "" \ + --home "/nonexistent" \ + --shell "/sbin/nologin" \ + --no-create-home \ + --uid "${UID}" \ + appuser +USER appuser + +# Copy the executable from the "build" stage. +COPY --from=build /bin/seeder /bin/ + +# What the container should run when it is started. +ENTRYPOINT [ "/bin/seeder" ] diff --git a/seeder/fixtures.go b/seeder/fixtures.go new file mode 100644 index 0000000..ca74938 --- /dev/null +++ b/seeder/fixtures.go @@ -0,0 +1,71 @@ +package main + +import ( + "fmt" + "gopkg.in/yaml.v3" + "os" +) + +type Fixtures struct { + BaseUrl string `yaml:"base_url"` + Users UserFixtures `yaml:"users"` + Problems ProblemFixtures `yaml:"problems"` +} + +type UserFixtures struct { + Endpoints struct { + Register string `yaml:"register"` + Login string `yaml:"login"` + } + Data []*UserData `yaml:"data,flow"` +} + +type UserData struct { + Email string `yaml:"email" json:"email"` + Password string `yaml:"password" json:"password"` +} + +type ProblemFixtures struct { + Endpoints struct { + Create string `yaml:"create"` + Update string `yaml:"update"` + CreateTest string `yaml:"create_test"` + CreateSubmission string `yaml:"create_submission"` + } + Data []*ProblemData `yaml:"data,flow"` +} + +type ProblemData struct { + CreateReqPath string `yaml:"create_req_path"` + Tests []*TestData `yaml:"tests,flow"` + Submissions []*SubmissionData `yaml:"submissions,flow"` +} + +type TestData struct { + TestZipPath string `yaml:"test_zip_path"` + Score int `yaml:"score"` +} + +type SubmissionData struct { + SourceCodePath string `yaml:"source_code_path"` + Language string `yaml:"language"` +} + +// LoadFixtures loads fixtures from a YAML file +func LoadFixtures(filename string) (*Fixtures, error) { + fixtures := &Fixtures{} + + file, err := os.Open(filename) + defer file.Close() + + if err != nil { + return nil, fmt.Errorf("failed to open fixtures file: %s", err) + } + + content, err := os.ReadFile(filename) + if err := yaml.Unmarshal(content, fixtures); err != nil { + return nil, fmt.Errorf("failed to decode fixtures: %s", err) + } + + return fixtures, nil +} diff --git a/seeder/fixtures.yaml b/seeder/fixtures.yaml new file mode 100644 index 0000000..1c5ef63 --- /dev/null +++ b/seeder/fixtures.yaml @@ -0,0 +1,30 @@ +base_url: http://localhost/api +users: + endpoints: + register: /identity/auth/register + login: /identity/auth/login + data: + - email: admin@gmail.com + password: Password@123 +problems: + endpoints: + create: /problems + update: /problems/{problem_id} + create_test: /problems/{problem_id}/test + create_submission: /eval/submissions + data: + - create_req_path: /temp/ProblemArchive/vecsum/create_req.json + tests: + - test_zip_path: /temp/ProblemArchive/vecsum/tests/1/1.zip + score: 20 + - test_zip_path: /temp/ProblemArchive/vecsum/tests/2/2.zip + score: 20 + - test_zip_path: /temp/ProblemArchive/vecsum/tests/3/3.zip + score: 20 + - test_zip_path: /temp/ProblemArchive/vecsum/tests/4/4.zip + score: 20 + - test_zip_path: /temp/ProblemArchive/vecsum/tests/5/5.zip + score: 20 + submissions: + - source_code_path: /temp/ProblemArchive/vecsum/solutions/main.rs + language: Rust diff --git a/seeder/go.mod b/seeder/go.mod new file mode 100644 index 0000000..a33eb91 --- /dev/null +++ b/seeder/go.mod @@ -0,0 +1,8 @@ +module seeder + +go 1.22 + +require ( + golang.org/x/sync v0.8.0 + gopkg.in/yaml.v3 v3.0.1 +) diff --git a/seeder/go.sum b/seeder/go.sum new file mode 100644 index 0000000..c6f3269 --- /dev/null +++ b/seeder/go.sum @@ -0,0 +1,6 @@ +golang.org/x/sync v0.8.0 h1:3NFvSEYkUoMifnESzZl15y791HH1qU2xm6eCJU5ZPXQ= +golang.org/x/sync v0.8.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= +gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM= +gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= +gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= diff --git a/seeder/main.go b/seeder/main.go new file mode 100644 index 0000000..cb06dd3 --- /dev/null +++ b/seeder/main.go @@ -0,0 +1,26 @@ +package main + +import ( + "context" + "log" +) + +func main() { + // Load fixtures from fixtures.yaml + fixtures, err := LoadFixtures("/temp/fixtures.yaml") + if err != nil { + log.Fatalf("failed to load fixtures: %s", err) + } + + // Create a new Pantheonix client + client := NewPantheonixClient(fixtures) + + // Create a new seeder + seeder := NewSeeder(client) + + // Seed problems, tests and submissions + ctx := context.Background() + if err := seeder.SeedProblems(ctx); err != nil { + log.Fatalf("failed to seed problems: %s", err) + } +} diff --git a/seeder/pantheonix_client.go b/seeder/pantheonix_client.go new file mode 100644 index 0000000..c2214bb --- /dev/null +++ b/seeder/pantheonix_client.go @@ -0,0 +1,274 @@ +package main + +import ( + "bytes" + "context" + "encoding/json" + "fmt" + "io" + "log" + "mime/multipart" + "net/http" + "os" + "path/filepath" + "strings" + "time" +) + +type PantheonixClient struct { + config *Fixtures + *http.Client +} + +func NewPantheonixClient(config *Fixtures) *PantheonixClient { + return &PantheonixClient{config, &http.Client{Timeout: 30 * time.Second}} +} + +func (c *PantheonixClient) Endpoint(endpoint string) string { + return c.config.BaseUrl + endpoint +} + +func (t *BearerToken) SetAccessToken(token string, cookie *http.Cookie) { + t.AccessToken = token + t.Cookie = cookie +} + +func (c *PantheonixClient) Login(user *UserData) (*BearerToken, error) { + token := NewBearerToken() + + // Send a login request + bodyJson, err := json.Marshal(user) + if err != nil { + return token, fmt.Errorf("failed to serialize user: %s", err) + } + + bodyReader := bytes.NewReader(bodyJson) + res, err := c.Post(c.Endpoint(c.config.Users.Endpoints.Login), "application/json", bodyReader) + defer res.Body.Close() + + if err != nil { + return token, fmt.Errorf("failed to login: %s", err) + } + + if res.StatusCode != http.StatusOK { + return token, fmt.Errorf("failed to login: %s", res.Status) + } + + // Extract the bearer token from the response + cookies := res.Cookies() + + for _, cookie := range cookies { + if strings.Contains(cookie.Name, "AccessToken") { + token.SetAccessToken(cookie.Value, cookie) + break + } + } + + return token, nil +} + +func (c *PantheonixClient) CreateProblem(ctx context.Context, token *BearerToken, problemId int) (*ProblemDto, error) { + problem := c.config.Problems.Data[problemId] + + reqBodyJson, err := os.ReadFile(problem.CreateReqPath) + if err != nil { + return nil, fmt.Errorf("failed to parse create problem request file content for problem %d: %v", problemId, err) + } + + bodyReader := bytes.NewReader(reqBodyJson) + req, err := http.NewRequest(http.MethodPost, c.Endpoint(c.config.Problems.Endpoints.Create), bodyReader) + + if err != nil { + return nil, fmt.Errorf("failed to create problem with id %d: %v", problemId, err) + } + req.Header.Set("Content-Type", "application/json") + req.AddCookie(token.Cookie) + + res, err := c.Do(req) + if err != nil { + return nil, fmt.Errorf("failed to create problem with id %d: %s", problemId, err) + } + defer res.Body.Close() + + if res.StatusCode != http.StatusOK { + return nil, fmt.Errorf("failed to create problem: %s", res.Status) + } + + problemDto := &ProblemDto{} + resBody, err := io.ReadAll(res.Body) + if err != nil { + return nil, fmt.Errorf("failed to create problem with id %d: %s", problemId, err) + } + + if err := json.Unmarshal(resBody, problemDto); err != nil { + return nil, fmt.Errorf("failed to create problem with id %d: %s", problemId, err) + } + + // Upload tests + tests := c.config.Problems.Data[problemId].Tests + for testId := range len(tests) { + if err := c.CreateTest(token, problemDto.Id, problemId, testId); err != nil { + return nil, err + } + } + + // Publish problem + if err := c.PublishProblem(token, problemDto.Id); err != nil { + return nil, err + } + + log.Printf("Successfully created problem with id %d and guid %s\n", problemId, problemDto.Id) + + return problemDto, nil +} + +func (c *PantheonixClient) CreateTest(token *BearerToken, problemGuid string, problemId, testId int) error { + test := c.config.Problems.Data[problemId].Tests[testId] + + extraParams := map[string]string{ + "score": fmt.Sprintf("%d", test.Score), + } + createTestEndpoint := c.Endpoint(c.config.Problems.Endpoints.CreateTest) + createTestEndpoint = strings.Replace(createTestEndpoint, "{problem_id}", problemGuid, 1) + + req, err := newFileUploadRequest(createTestEndpoint, test.TestZipPath, "archiveFile", extraParams) + if err != nil { + return fmt.Errorf("failed to compose create request for test with id %d for problem %d: %s", testId, problemId, err) + } + req.AddCookie(token.Cookie) + + res, err := c.Do(req) + if err != nil { + return fmt.Errorf("failed to send create request test with id %d for problem %d: %s", testId, problemId, err) + } + defer res.Body.Close() + + if res.StatusCode != http.StatusOK { + return fmt.Errorf("failed to create test with id %d for problem %d: %s", testId, problemId, res.Status) + } + + log.Printf("Successfully created test with id %d\n", testId) + + return nil +} + +func (c *PantheonixClient) PublishProblem(token *BearerToken, problemGuid string) error { + publishProblemEndpoint := c.Endpoint(c.config.Problems.Endpoints.Update) + publishProblemEndpoint = strings.Replace(publishProblemEndpoint, "{problem_id}", problemGuid, 1) + + bodyJson, err := json.Marshal(map[string]bool{"isPublished": true}) + if err != nil { + return fmt.Errorf("failed to serialize publish request for problem %s: %s", problemGuid, err) + } + + body := bytes.NewReader(bodyJson) + req, err := http.NewRequest(http.MethodPut, publishProblemEndpoint, body) + if err != nil { + return fmt.Errorf("failed to compose publish request for problem %s: %s", problemGuid, err) + } + req.Header.Set("Content-Type", "application/json") + req.AddCookie(token.Cookie) + + res, err := c.Do(req) + if err != nil { + return fmt.Errorf("failed to send publish request for problem %s: %s", problemGuid, err) + } + defer res.Body.Close() + + if res.StatusCode != http.StatusOK { + return fmt.Errorf("failed to publish problem %s: %s", problemGuid, res.Status) + } + + log.Printf("Successfully published problem %s\n", problemGuid) + + return nil +} + +func (c *PantheonixClient) CreateSubmission(token *BearerToken, submissionDto *SubmissionDto) error { + createSubmissionEndpoint := c.Endpoint(c.config.Problems.Endpoints.CreateSubmission) + + bodyJson, err := json.Marshal(submissionDto) + if err != nil { + return fmt.Errorf("failed to serialize submission: %s", err) + } + + body := bytes.NewReader(bodyJson) + req, err := http.NewRequest(http.MethodPost, createSubmissionEndpoint, body) + if err != nil { + return fmt.Errorf("failed to compose submission request: %s", err) + } + req.Header.Set("Content-Type", "application/json") + req.AddCookie(token.Cookie) + + res, err := c.Do(req) + if err != nil { + return fmt.Errorf("failed to send submission request: %s", err) + } + defer res.Body.Close() + + if res.StatusCode != http.StatusCreated { + return fmt.Errorf("failed to submit: %s", res.Status) + } + + log.Printf("Successfully submitted solution for problem %s\n", submissionDto.ProblemId) + + return nil +} + +func newFileUploadRequest(uri string, filePath string, testFileParamName string, params map[string]string) (*http.Request, error) { + fileReader, err := os.Open(filePath) + if err != nil { + return nil, err + } + defer fileReader.Close() + + body := &bytes.Buffer{} + writer := multipart.NewWriter(body) + part, err := writer.CreateFormFile(testFileParamName, filepath.Base(filePath)) + if err != nil { + return nil, err + } + + _, err = io.Copy(part, fileReader) + for key, val := range params { + err = writer.WriteField(key, val) + if err != nil { + return nil, err + } + } + + err = writer.Close() + if err != nil { + return nil, err + } + + req, err := http.NewRequest(http.MethodPost, uri, body) + if err != nil { + return nil, err + } + req.Header.Set("Content-Type", writer.FormDataContentType()) + + return req, nil +} + +type ProblemDto struct { + Id string `json:"id"` +} + +type SubmissionDto struct { + ProblemId string `json:"problem_id"` + Language string `json:"language"` + SourceCode string `json:"source_code"` +} + +type BearerToken struct { + AccessToken string + Cookie *http.Cookie +} + +func NewBearerToken() *BearerToken { + return &BearerToken{ + AccessToken: "", + Cookie: nil, + } +} diff --git a/seeder/seeder.go b/seeder/seeder.go new file mode 100644 index 0000000..00c3f3f --- /dev/null +++ b/seeder/seeder.go @@ -0,0 +1,86 @@ +package main + +import ( + "context" + "fmt" + "golang.org/x/sync/errgroup" + "log" + "os" +) + +type Seeder struct { + client *PantheonixClient +} + +func NewSeeder(client *PantheonixClient) *Seeder { + return &Seeder{client} +} + +func (s *Seeder) SeedUsers() error { + return nil +} + +func (s *Seeder) SeedProblems(ctx context.Context) error { + admin := s.client.config.Users.Data[0] + token, err := s.client.Login(admin) + + if err != nil { + return err + } + + g, ctx := errgroup.WithContext(ctx) + problems := s.client.config.Problems.Data + for i, problem := range problems { + g.Go(func() error { + problemDto, err := s.client.CreateProblem(ctx, token, i) + if err != nil { + return err + } + + if err := s.SeedSubmissions(ctx, token, problemDto, problem); err != nil { + return err + } + + return nil + }) + } + + if err := g.Wait(); err != nil { + return err + } + + log.Println("Successfully created problems and tests") + + return nil +} + +func (s *Seeder) SeedSubmissions(ctx context.Context, token *BearerToken, problemDto *ProblemDto, problemData *ProblemData) error { + g, ctx := errgroup.WithContext(ctx) + for i, submission := range problemData.Submissions { + g.Go(func() error { + sourceCode, err := os.ReadFile(submission.SourceCodePath) + if err != nil { + return fmt.Errorf("failed to read source code for submission %d: %v", i, err) + } + + submissionDto := &SubmissionDto{ + ProblemId: problemDto.Id, + Language: submission.Language, + SourceCode: string(sourceCode), + } + if err := s.client.CreateSubmission(token, submissionDto); err != nil { + return err + } + + return nil + }) + } + + if err := g.Wait(); err != nil { + return err + } + + log.Printf("Successfully created submissions for problem %s\n", problemDto.Id) + + return nil +} From a06655a686dcf06fb159486cf55a4e986b8bf54d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?B=C4=83rbu=C8=9B-Dic=C4=83=20Sami?= <70215066+WarriorsSami@users.noreply.github.com> Date: Tue, 24 Sep 2024 12:06:17 +0300 Subject: [PATCH 2/2] Quetzalcoatl - Test merging strategy (#40) * feat: add init project structure * feat(identity): scaffold db for default identity * docs(auth): add architecture diagram * feat(config): add jwt config * perf: move endpoints to separate proj than di * feat: add migrations for default identity * feat(infr): add new migrations for custom user * feat(domain): add user entity and jwt config * perf(di): add custom user to identity auth * feat(test): scaffold integration tests * feat(app): implement handlers required by auth -CreateUser -ValidateUserCredentials -GenerateJwtToken * refactor(test): split test proj between integration and unit * perf(mapper): use automapper for register endpoint * perf(app): organize handlers based on vertical slice * feat(test): add fixture for test containers * feat(test): create integration test for register endpoint * perf(api): refactor endpoints to improve readability * fix(test): remove sqlconnection error and speed up test containers - Declare additional IServiceCollection extension methods for ensuring db created and removing already existing DbContextOptions (not AppDbContext!!) - Use the latest MsSql Docker Image * feat(di): add default swagger support * test: remove unit tests proj As Fastendpoints Commands are hard to unit test outside of an Endpoint, it is enough to have only Integration tests to cover everything * test(login): add integration test for login * style: rename username prop and move jwt mapper here * docs(swagger): add swagger support * feat(users): scaffold CRUD users api * style(auth): move validators to separate files * feat(users): add get all endpoint * test(users): add integration tests for get all endpoint * feat(users): add get user endpoint * test(users): add integration test for get user endpoint * style(tests): add regions to enhance readability * style: replace local usings with global usings * perf(user): add guid as pk for application user * feat(update): create update user endpoint * test(update): create integration tests for update endpoint * misc: update .gitignore * perf(user manager): use predefined methods instead of LINQ for finding by id * feat(api): create delete endpoint * style: add regions and update global usings * test(delete): create integration tests for delete endpoint * docs(swagger): add summaries for Identity CRUD endpoints * style(binding): remove redundant bind from attribute for models Id * perf(update); enable request fields to be nullable In order to allow partial update for user profile (similar to patch), enable validation/mapping rules only when a certain request field is provided * style: add global usings * test(update): add integration test for partial update * style: format code * style: adjust namespace for jwt config * feat(user): add support for fullname and bio fields * test(user): update integration tests to support fullname/bio fields * feat(image): add support for user profile image * test(register): update integration tests to support profile image * perf(picture): enable support for picture in login endpoint Enable eager loading in db context for profile picture in order to be able to retrieve the image id for the download URL * feat(build): add migrations for profile picture * test(login): update login tests for picture Replace register endpoint invocation with the user manager directly in order to mitigate the tight coupling between tests and the QAPI * feat(picture): update the rest of endpoints to support profile picture * test(picture): update the rest of tests to support profile picture * feat(image): add get image endpoint * test(image): add integration test for get image endpoint * perf(image): create image repository * style: format code * perf: add argument null guards to ctors * feat(logger): configure serilog * misc: add Logs to .gitignore * perf: add logging to endpoints * fix(logger): replace bootstrap logger with default Bug related to integration tests fails * feat(update): add permission guard to endpoint Allow users to edit only their own profile, otherwise throw unauthorized * test: add integration test for self update permission * perf(update): replace unauthorized with forbidden * perf: use default identity role * perf: set model fields as init-only * feat: add seed data for roles and admin user * test(get all): remove users already added by seeding * perf(delete): restrict access to endpoint using roles from jwt * test(delete): add test for non-admin user * perf(image): enable profile image to be nullable * feat(api): add support for refresh tokens Add RefreshToken endpoint and pass access/refresh token pairs via HttpOnly cookies * perf(update user): get user id exclusively from route * docs: add sequence flow diagrams for different scenarios * perf(refresh-token): reduce the no generated refresh tokens Generate refresh tokens only for specific scenarios, not for every kind of request: - valid refresh/access token pair provided - refresh/access token pair not already used to generate a new access token - refresh token not expired - access token expired - etc. * build(docker): add dockerfile for quetzalcoatl microservice * perf(refresh token): add trigger for deleting stale tokens * perf(refresh token): replace int with timespan for token lifetimes * perf(config): use IOptions * feat: add health check endpoint * build(docker): add docker-compose * perf(docker): assure that db is started before the api * Test merging strategy (#39) --- .../Domain/Entities/ApplicationRoles.cs | 7 +++++ quetzalcoatl-auth/docker-compose.yaml | 28 +++++++++++++++++++ 2 files changed, 35 insertions(+) create mode 100644 quetzalcoatl-auth/Domain/Entities/ApplicationRoles.cs create mode 100644 quetzalcoatl-auth/docker-compose.yaml diff --git a/quetzalcoatl-auth/Domain/Entities/ApplicationRoles.cs b/quetzalcoatl-auth/Domain/Entities/ApplicationRoles.cs new file mode 100644 index 0000000..8deac91 --- /dev/null +++ b/quetzalcoatl-auth/Domain/Entities/ApplicationRoles.cs @@ -0,0 +1,7 @@ +namespace Domain.Entities; + +public enum ApplicationRoles +{ + Proposer, + Admin +} diff --git a/quetzalcoatl-auth/docker-compose.yaml b/quetzalcoatl-auth/docker-compose.yaml new file mode 100644 index 0000000..53a1a56 --- /dev/null +++ b/quetzalcoatl-auth/docker-compose.yaml @@ -0,0 +1,28 @@ +# Define services + volumes for quetzalcoatl +version: '3.7' +services: + auth-service: + build: + context: . + dockerfile: Dockerfile + ports: + - "5210:5210" + env_file: + - .env + depends_on: + mssql-db: + condition: service_started + + mssql-db: + image: mcr.microsoft.com/mssql/server:2022-latest + user: root + ports: + - "1434:1433" + env_file: + - .env + volumes: + - quetzalcoatl-db:/var/opt/mssql/data + +volumes: + quetzalcoatl-db: + \ No newline at end of file

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 literal 1564048 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 z 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 @t!Qclr~?D@(hlkPjZx< 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
2KD~ivSF-Nyb3jCr7%-XY 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%0DlW*R(0rI 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