diff --git a/README.md b/README.md index b78140a4..ae2bdde7 100644 --- a/README.md +++ b/README.md @@ -33,6 +33,8 @@ The Verifier API, supports two operations: * [Initialize Transaction](src/main/kotlin/eu/europa/ec/eudi/verifier/endpoint/port/input/InitTransaction.kt), where Verifier may define whether it wants to request a SIOP or OpenID4VP or combined request * [Get Wallet response](src/main/kotlin/eu/europa/ec/eudi/verifier/endpoint/port/input/GetWalletResponse.kt), where Verifier receives depending on the request an `id_token`, `vp_token`, or an error +An Open API v3 specification of these operations is available [here](src/main/resources/public/openapi.json). + The Wallet API, provides the following main operations * [Get Request Object](src/main/kotlin/eu/europa/ec/eudi/verifier/endpoint/port/input/GetRequestObject.kt) according JWT Secured Authorization Request * [Get Presentation Definition](src/main/kotlin/eu/europa/ec/eudi/verifier/endpoint/port/input/GetPresentationDefinition.kt) according to OpenId4VP in case of using `presentation_definition_uri` @@ -279,6 +281,8 @@ curl -X POST -H "Content-type: application/json" -d '{ } ``` +You can also try it out in [Swagger UI](http://localhost:8080/swagger-ui#/verifier%20api/initializeTransaction). + ### Get authorization request - _Method_: GET @@ -387,6 +391,8 @@ curl http://localhost:8080/ui/presentations/5N6E7VZsmwXOGLz1Xlfi96MoyZVC3FZxwdAu **Returns:** The wallet submitted response as JSON. +You can also try it out in [Swagger UI](http://localhost:8080/swagger-ui#/verifier%20api/getWalletResponse). + ## Configuration The Verifier Endpoint application can be configured using the following *environment* variables: diff --git a/build.gradle.kts b/build.gradle.kts index 85eb26c1..844f4262 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -33,6 +33,10 @@ dependencies { implementation(libs.bouncy.castle) implementation(libs.arrow.core) implementation(libs.arrow.fx.coroutines) + implementation("org.springframework.boot:spring-boot-starter-thymeleaf") + implementation("org.webjars:webjars-locator-core") + implementation(libs.swagger.ui) + testImplementation(kotlin("test")) testImplementation(libs.kotlinx.coroutines.test) testImplementation("org.springframework.boot:spring-boot-starter-test") diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index b4807113..ef60d9a3 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -15,7 +15,7 @@ arrow = "1.2.4" sonarqube = "5.0.0.4638" dependencycheck = "10.0.3" jacoco = "0.8.11" - +swaggerUi = "5.17.14" [libraries] kotlinx-coroutines-test = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-test", version.ref = "coroutines" } @@ -25,6 +25,7 @@ presentation-exchange = { module = "eu.europa.ec.eudi:eudi-lib-jvm-presentation- bouncy-castle = { module = "org.bouncycastle:bcpkix-jdk18on", version.ref = "bouncyCastle" } arrow-core = { module = "io.arrow-kt:arrow-core", version.ref = "arrow" } arrow-fx-coroutines = { module = "io.arrow-kt:arrow-fx-coroutines", version.ref = "arrow" } +swagger-ui = { module = "org.webjars:swagger-ui", version.ref = "swaggerUi" } [plugins] foojay-resolver-convention = { id = "org.gradle.toolchains.foojay-resolver-convention", version.ref = "foojay" } diff --git a/src/main/kotlin/eu/europa/ec/eudi/verifier/endpoint/VerifierContext.kt b/src/main/kotlin/eu/europa/ec/eudi/verifier/endpoint/VerifierContext.kt index 472c3873..038619da 100644 --- a/src/main/kotlin/eu/europa/ec/eudi/verifier/endpoint/VerifierContext.kt +++ b/src/main/kotlin/eu/europa/ec/eudi/verifier/endpoint/VerifierContext.kt @@ -29,6 +29,7 @@ import eu.europa.ec.eudi.verifier.endpoint.EmbedOptionEnum.ByReference import eu.europa.ec.eudi.verifier.endpoint.EmbedOptionEnum.ByValue import eu.europa.ec.eudi.verifier.endpoint.adapter.input.timer.ScheduleTimeoutPresentations import eu.europa.ec.eudi.verifier.endpoint.adapter.input.web.StaticContent +import eu.europa.ec.eudi.verifier.endpoint.adapter.input.web.SwaggerUi import eu.europa.ec.eudi.verifier.endpoint.adapter.input.web.VerifierApi import eu.europa.ec.eudi.verifier.endpoint.adapter.input.web.WalletApi import eu.europa.ec.eudi.verifier.endpoint.adapter.out.cfg.GenerateRequestIdNimbus @@ -147,7 +148,14 @@ internal fun beans(clock: Clock) = beans { ) val verifierApi = VerifierApi(ref(), ref()) val staticContent = StaticContent() - walletApi.route.and(verifierApi.route).and(staticContent.route) + val swaggerUi = SwaggerUi( + publicResourcesBasePath = env.getRequiredProperty("spring.webflux.static-path-pattern").removeSuffix("/**"), + webJarResourcesBasePath = env.getRequiredProperty("spring.webflux.webjars-path-pattern").removeSuffix("/**"), + ) + walletApi.route + .and(verifierApi.route) + .and(staticContent.route) + .and(swaggerUi.route) } // diff --git a/src/main/kotlin/eu/europa/ec/eudi/verifier/endpoint/VerifierEndpointApplication.kt b/src/main/kotlin/eu/europa/ec/eudi/verifier/endpoint/VerifierEndpointApplication.kt index 8b985830..49aebc01 100644 --- a/src/main/kotlin/eu/europa/ec/eudi/verifier/endpoint/VerifierEndpointApplication.kt +++ b/src/main/kotlin/eu/europa/ec/eudi/verifier/endpoint/VerifierEndpointApplication.kt @@ -21,14 +21,10 @@ import org.springframework.context.ApplicationContextInitializer import org.springframework.context.support.BeanDefinitionDsl import org.springframework.context.support.GenericApplicationContext import org.springframework.scheduling.annotation.EnableScheduling -import org.springframework.security.config.annotation.web.reactive.EnableWebFluxSecurity -import org.springframework.web.reactive.config.EnableWebFlux import java.time.Clock @EnableScheduling -@EnableWebFlux -@EnableWebFluxSecurity -@SpringBootApplication(proxyBeanMethods = false) +@SpringBootApplication class VerifierApplication internal fun BeanDefinitionDsl.initializer(): ApplicationContextInitializer = diff --git a/src/main/kotlin/eu/europa/ec/eudi/verifier/endpoint/adapter/input/web/SwaggerUi.kt b/src/main/kotlin/eu/europa/ec/eudi/verifier/endpoint/adapter/input/web/SwaggerUi.kt new file mode 100644 index 00000000..eb70e164 --- /dev/null +++ b/src/main/kotlin/eu/europa/ec/eudi/verifier/endpoint/adapter/input/web/SwaggerUi.kt @@ -0,0 +1,63 @@ +/* + * Copyright (c) 2023 European Commission + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package eu.europa.ec.eudi.verifier.endpoint.adapter.input.web + +import org.slf4j.LoggerFactory +import org.springframework.http.HttpStatus +import org.springframework.http.MediaType +import org.springframework.web.reactive.function.server.RouterFunction +import org.springframework.web.reactive.function.server.ServerResponse +import org.springframework.web.reactive.function.server.coRouter +import org.springframework.web.reactive.function.server.renderAndAwait + +private val log = LoggerFactory.getLogger(SwaggerUi::class.java) + +/** + * Web adapter for displaying the Swagger UI. + * + * @param publicResourcesBasePath base path for accessing public resources + * @param webJarResourcesBasePath base path for accessing web jar resources + * @property route the routes handled by this web adapter + */ +internal class SwaggerUi( + private val publicResourcesBasePath: String, + private val webJarResourcesBasePath: String, +) { + val route: RouterFunction = coRouter { + (GET("") or GET("/")) { + log.info("Redirecting to {}", SWAGGER_UI) + ServerResponse.status(HttpStatus.TEMPORARY_REDIRECT) + .renderAndAwait("redirect:$SWAGGER_UI") + } + + GET(SWAGGER_UI, contentType(MediaType.ALL) and accept(MediaType.TEXT_HTML)) { + log.info("Displaying Swagger UI") + ServerResponse.ok() + .contentType(MediaType.TEXT_HTML) + .renderAndAwait( + name = "swagger-ui", + model = mapOf( + "publicResourcesBasePath" to publicResourcesBasePath, + "webJarResourcesBasePath" to webJarResourcesBasePath, + ), + ) + } + } + + companion object { + const val SWAGGER_UI = "/swagger-ui" + } +} diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties index 4a78f89b..b4cfcf4b 100644 --- a/src/main/resources/application.properties +++ b/src/main/resources/application.properties @@ -5,6 +5,8 @@ logging.level.org.springframework.boot.actuate.endpoint.web=DEBUG management.endpoints.enabled-by-default=true server.error.includeStacktrace=ALWAYS server.port=8080 +spring.webflux.static-path-pattern=/public/** +spring.webflux.webjars-path-pattern=/webjars/** # # Verifier options diff --git a/src/main/resources/public/openapi.json b/src/main/resources/public/openapi.json new file mode 100644 index 00000000..70c262e0 --- /dev/null +++ b/src/main/resources/public/openapi.json @@ -0,0 +1,1095 @@ +{ + "openapi": "3.0.3", + "info": { + "title": "EUDI Verifier Endpoint", + "version": "0.0.1" + }, + "servers": [ + { + "url": "..", + "description": "Current server" + }, + { + "url": "https://dev.verifier-backend.eudiw.dev", + "description": "Development environment" + } + ], + "paths": { + "/ui/presentations": { + "post": { + "tags": [ + "verifier api" + ], + "description": "Initialize a new Transaction", + "operationId": "initializeTransaction", + "requestBody": { + "description": "The details of the new Transaction to initialize.", + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InitTransaction" + }, + "examples": { + "InitIdTokenTransactionByValueCrossDevice": { + "$ref": "#/components/examples/InitIdTokenTransactionByValueCrossDevice" + }, + "InitIdTokenTransactionByReferenceCrossDevice": { + "$ref": "#/components/examples/InitIdTokenTransactionByReferenceCrossDevice" + }, + "InitIdTokenTransactionByValueSameDevice": { + "$ref": "#/components/examples/InitIdTokenTransactionByValueSameDevice" + }, + "InitVpTokenTransactionByValueCrossDevice": { + "$ref": "#/components/examples/InitVpTokenTransactionByValueCrossDevice" + }, + "InitVpTokenTransactionByReferenceCrossDevice": { + "$ref": "#/components/examples/InitVpTokenTransactionByReferenceCrossDevice" + }, + "InitVpTokenTransactionByValueSameDevice": { + "$ref": "#/components/examples/InitVpTokenTransactionByValueSameDevice" + }, + "InitIdTokenAndVpTokenTransactionByValueCrossDevice": { + "$ref": "#/components/examples/InitIdTokenAndVpTokenTransactionByValueCrossDevice" + }, + "InitIdTokenAndVpTokenTransactionByReferenceCrossDevice": { + "$ref": "#/components/examples/InitIdTokenAndVpTokenTransactionByReferenceCrossDevice" + }, + "InitIdTokenAndVpTokenTransactionByValueSameDevice": { + "$ref": "#/components/examples/InitIdTokenAndVpTokenTransactionByValueSameDevice" + } + } + } + } + }, + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Transaction" + }, + "examples": { + "TransactionByValue": { + "$ref": "#/components/examples/TransactionByValue" + }, + "TransactionByReference": { + "$ref": "#/components/examples/TransactionByReference" + } + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InitTransactionError" + } + } + } + }, + "500": { + "description": "Server error" + } + } + } + }, + "/ui/presentations/{transactionId}": { + "get": { + "tags": [ + "verifier api" + ], + "description": "Gets the response of a Wallet to a Transaction.", + "operationId": "getWalletResponse", + "parameters": [ + { + "name": "transactionId", + "in": "path", + "required": true, + "schema": { + "$ref": "#/components/schemas/PresentationId" + }, + "allowEmptyValue": false, + "description": "The unique identifier of the Transaction." + }, + { + "name": "response_code", + "in": "query", + "required": false, + "schema": { + "$ref": "#/components/schemas/ResponseCode" + }, + "allowEmptyValue": false, + "description": "Response code generated in case of 'same device' case." + } + ], + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/WalletResponse" + }, + "examples": { + "IdTokenWalletResponse": { + "$ref": "#/components/examples/IdTokenWalletResponse" + }, + "VpTokenWalletResponse": { + "$ref": "#/components/examples/VpTokenWalletResponse" + }, + "IdTokenAndVpTokenWalletResponse": { + "$ref": "#/components/examples/IdTokenAndVpTokenWalletResponse" + } + } + } + } + }, + "400": { + "description": "Bad request" + }, + "404": { + "description": "Not found" + }, + "500": { + "description": "Server error." + } + } + } + } + }, + "components": { + "schemas": { + "PresentationType": { + "type": "string", + "nullable": false, + "enum": [ + "id_token", + "vp_token", + "vp_token id_token" + ] + }, + "IdTokenType": { + "type": "string", + "nullable": false, + "enum": [ + "subject_signed_id_token", + "attester_signed_id_token" + ] + }, + "Nonce": { + "type": "string", + "nullable": false + }, + "ResponseMode": { + "type": "string", + "nullable": false, + "enum": [ + "direct_post", + "direct_post.jwt" + ] + }, + "EmbedMode": { + "type": "string", + "nullable": false, + "enum": [ + "by_value", + "by_reference" + ] + }, + "UriTemplate": { + "type": "string", + "nullable": false, + "format": "uri" + }, + "InitIdTokenTransaction": { + "type": "object", + "nullable": false, + "properties": { + "type": { + "description": "The type of the response to the authorization request.", + "type": "string", + "nullable": false, + "enum": [ + "id_token" + ] + }, + "id_token_type": { + "allOf": [ + { + "description": "Controls the type of 'id_token' that will be requested from the wallet." + }, + { + "$ref": "#/components/schemas/IdTokenType" + } + ] + }, + "nonce": { + "allOf": [ + { + "description": "Nonce value to be included in the OpenId4VP authorization request." + }, + { + "$ref": "#/components/schemas/Nonce" + } + ] + }, + "response_mode": { + "allOf": [ + { + "description": "Controls the 'response_mode' attribute of the OpenId4VP authorization request. When omitted defaults to the Verifier Endpoint configuration." + }, + { + "$ref": "#/components/schemas/ResponseMode" + } + ] + }, + "jar_mode": { + "allOf": [ + { + "description": "Controls the way the generated authorization request will be passed. If 'by_value' the request will be passed inline to the wallet upon request, if 'by_reference' a 'request_uri' url will be returned. When omitted defaults to the Verifier Endpoint configuration." + }, + { + "$ref": "#/components/schemas/EmbedMode" + } + ] + }, + "wallet_response_redirect_uri_template": { + "allOf": [ + { + "description": "Template used to create a url the wallet must send the holder to, after completing the authorization request. Used for 'same device' scenario. The placeholder '{RESPONSE_CODE}' must be present, and is replace by a unique code generated by the Verifier Endpoint." + }, + { + "$ref": "#/components/schemas/UriTemplate" + } + ] + } + }, + "required": [ + "type", + "id_token_type", + "nonce" + ], + "additionalProperties": false + }, + "PresentationDefinition": { + "description": "Presentation Definition as defined by Presentation Exchange v2. More information here: https://identity.foundation/presentation-exchange/spec/v2.0.0/", + "type": "object", + "nullable": false, + "additionalProperties": true + }, + "InitVpTokenTransaction": { + "type": "object", + "nullable": false, + "properties": { + "type": { + "description": "The type of the response to the authorization request.", + "type": "string", + "nullable": false, + "enum": [ + "vp_token" + ] + }, + "presentation_definition": { + "allOf": [ + { + "description": "A json object that depicting the presentation definition to be included in the OpenId4VP authorization request." + }, + { + "$ref": "#/components/schemas/PresentationDefinition" + } + ] + }, + "nonce": { + "allOf": [ + { + "description": "Nonce value to be included in the OpenId4VP authorization request." + }, + { + "$ref": "#/components/schemas/Nonce" + } + ] + }, + "response_mode": { + "allOf": [ + { + "description": "Controls the 'response_mode' attribute of the OpenId4VP authorization request. When omitted defaults to the Verifier Endpoint configuration." + }, + { + "$ref": "#/components/schemas/ResponseMode" + } + ] + }, + "jar_mode": { + "allOf": [ + { + "description": "Controls the way the generated authorization request will be passed. If 'by_value' the request will be passed inline to the wallet upon request, if 'by_reference' a 'request_uri' url will be returned. When omitted defaults to the Verifier Endpoint configuration." + }, + { + "$ref": "#/components/schemas/EmbedMode" + } + ] + }, + "presentation_definition_mode": { + "allOf": [ + { + "description": "Controls how the presentation definition will be embedded in the request. If 'by_value' it will be embedded inline, if 'by_reference' a 'presentation_definition_uri' url will be embedded in the request. When omitted defaults to the Verifier Endpoint configuration." + }, + { + "$ref": "#/components/schemas/EmbedMode" + } + ] + }, + "wallet_response_redirect_uri_template": { + "allOf": [ + { + "description": "Template used to create a url the wallet must send the holder to, after completing the authorization request. Used for 'same device' scenario. The placeholder '{RESPONSE_CODE}' must be present, and is replace by a unique code generated by the Verifier Endpoint." + }, + { + "$ref": "#/components/schemas/UriTemplate" + } + ] + } + }, + "required": [ + "type", + "presentation_definition", + "nonce" + ], + "additionalProperties": false + }, + "InitIdTokenAndVpTokenTransaction": { + "type": "object", + "nullable": false, + "properties": { + "type": { + "description": "The type of the response to the authorization request.", + "type": "string", + "nullable": false, + "enum": [ + "vp_token id_token" + ] + }, + "id_token_type": { + "allOf": [ + { + "description": "Controls the type of 'id_token' that will be requested from the wallet." + }, + { + "$ref": "#/components/schemas/IdTokenType" + } + ] + }, + "presentation_definition": { + "allOf": [ + { + "description": "A json object that depicting the presentation definition to be included in the OpenId4VP authorization request." + }, + { + "$ref": "#/components/schemas/PresentationDefinition" + } + ] + }, + "nonce": { + "allOf": [ + { + "description": "Nonce value to be included in the OpenId4VP authorization request." + }, + { + "$ref": "#/components/schemas/Nonce" + } + ] + }, + "response_mode": { + "allOf": [ + { + "description": "Controls the 'response_mode' attribute of the OpenId4VP authorization request. When omitted defaults to the Verifier Endpoint configuration." + }, + { + "$ref": "#/components/schemas/ResponseMode" + } + ] + }, + "jar_mode": { + "allOf": [ + { + "description": "Controls the way the generated authorization request will be passed. If 'by_value' the request will be passed inline to the wallet upon request, if 'by_reference' a 'request_uri' url will be returned. When omitted defaults to the Verifier Endpoint configuration." + }, + { + "$ref": "#/components/schemas/EmbedMode" + } + ] + }, + "presentation_definition_mode": { + "allOf": [ + { + "description": "Controls how the presentation definition will be embedded in the request. If 'by_value' it will be embedded inline, if 'by_reference' a 'presentation_definition_uri' url will be embedded in the request. When omitted defaults to the Verifier Endpoint configuration." + }, + { + "$ref": "#/components/schemas/EmbedMode" + } + ] + }, + "wallet_response_redirect_uri_template": { + "allOf": [ + { + "description": "Template used to create a url the wallet must send the holder to, after completing the authorization request. Used for 'same device' scenario. The placeholder '{RESPONSE_CODE}' must be present, and is replace by a unique code generated by the Verifier Endpoint." + }, + { + "$ref": "#/components/schemas/UriTemplate" + } + ] + } + }, + "required": [ + "type", + "id_token_type", + "presentation_definition", + "nonce" + ], + "additionalProperties": false + }, + "InitTransaction": { + "oneOf": [ + { + "$ref": "#/components/schemas/InitIdTokenTransaction" + }, + { + "$ref": "#/components/schemas/InitVpTokenTransaction" + }, + { + "$ref": "#/components/schemas/InitIdTokenAndVpTokenTransaction" + } + ] + }, + "PresentationId": { + "type": "string", + "nullable": false + }, + "ClientId": { + "type": "string", + "nullable": false + }, + "Request": { + "type": "string", + "nullable": false + }, + "RequestUri": { + "type": "string", + "nullable": false, + "format": "uri" + }, + "TransactionByValue": { + "type": "object", + "nullable": false, + "properties": { + "presentation_id": { + "allOf": [ + { + "description": "The unique identifier of the newly initialized Transaction." + }, + { + "$ref": "#/components/schemas/PresentationId" + } + ] + }, + "client_id": { + "allOf": [ + { + "description": "The identifier of this Verifier Endpoint." + }, + { + "$ref": "#/components/schemas/ClientId" + } + ] + }, + "request": { + "allOf": [ + { + "description": "The generated authorization request, serialized as a json object." + }, + { + "$ref": "#/components/schemas/Request" + } + ] + } + }, + "required": [ + "presentation_id", + "client_id", + "request" + ], + "additionalProperties": false + }, + "TransactionByReference": { + "type": "object", + "nullable": false, + "properties": { + "presentation_id": { + "allOf": [ + { + "description": "The unique identifier of the newly initialized Transaction." + }, + { + "$ref": "#/components/schemas/PresentationId" + } + ] + }, + "client_id": { + "allOf": [ + { + "description": "The identifier of this Verifier Endpoint." + }, + { + "$ref": "#/components/schemas/ClientId" + } + ] + }, + "request_uri": { + "allOf": [ + { + "description": "URI from which the wallet can fetch the generated authorization request." + }, + { + "$ref": "#/components/schemas/RequestUri" + } + ] + } + }, + "required": [ + "presentation_id", + "client_id", + "request_uri" + ], + "additionalProperties": false + }, + "Transaction": { + "oneOf": [ + { + "$ref": "#/components/schemas/TransactionByValue" + }, + { + "$ref": "#/components/schemas/TransactionByReference" + } + ] + }, + "ValidationError": { + "type": "string", + "nullable": false, + "enum": [ + "MissingPresentationDefinition", + "MissingNonce", + "InvalidWalletResponseTemplate" + ] + }, + "InitTransactionError": { + "type": "object", + "nullable": false, + "properties": { + "error": { + "allOf": [ + { + "description": "The validation error that prevented the initialization of the new Transaction." + }, + { + "$ref": "#/components/schemas/ValidationError" + } + ] + } + }, + "required": [ + "error" + ], + "additionalProperties": false + }, + "ResponseCode": { + "type": "string", + "nullable": false + }, + "IdToken": { + "type": "string", + "nullable": false + }, + "IdTokenWalletResponse": { + "type": "object", + "nullable": false, + "properties": { + "id_token": { + "allOf": [ + { + "description": "The ID Token provided by the Wallet." + }, + { + "$ref": "#/components/schemas/IdToken" + } + ] + } + }, + "required": [ + "id_token" + ], + "additionalProperties": false + }, + "VpToken": { + "type": "string", + "nullable": false + }, + "PresentationSubmission": { + "description": "Presentation Submission as defined by Presentation Exchange v2. More information here: https://identity.foundation/presentation-exchange/spec/v2.0.0/", + "type": "object", + "nullable": false, + "additionalProperties": true + }, + "VpTokenWalletResponse": { + "type": "object", + "nullable": false, + "properties": { + "vp_token": { + "allOf": [ + { + "description": "The VP Token provided by the Wallet." + }, + { + "$ref": "#/components/schemas/VpToken" + } + ] + }, + "presentation_submission": { + "allOf": [ + { + "description": "The Verifiable Presentation providedy by the Wallet." + }, + { + "$ref": "#/components/schemas/PresentationSubmission" + } + ] + } + }, + "required": [ + "vp_token", + "presentation_submission" + ], + "additionalProperties": false + }, + "IdTokenAndVpTokenWalletResponse": { + "type": "object", + "nullable": false, + "properties": { + "id_token": { + "allOf": [ + { + "description": "The ID Token provided by the Wallet." + }, + { + "$ref": "#/components/schemas/IdToken" + } + ] + }, + "vp_token": { + "allOf": [ + { + "description": "The VP Token provided by the Wallet." + }, + { + "$ref": "#/components/schemas/VpToken" + } + ] + }, + "presentation_submission": { + "allOf": [ + { + "description": "The Verifiable Presentation providedy by the Wallet." + }, + { + "$ref": "#/components/schemas/PresentationSubmission" + } + ] + } + }, + "required": [ + "id_token", + "vp_token", + "presentation_submission" + ], + "additionalProperties": false + }, + "Error": { + "type": "string", + "nullable": false + }, + "ErrorDescription": { + "type": "string", + "nullable": false + }, + "ErrorWalletResponse": { + "type": "object", + "nullable": false, + "properties": { + "error": { + "allOf": [ + { + "description": "The error that occurred." + }, + { + "$ref": "#/components/schemas/Error" + } + ] + }, + "error_description": { + "allOf": [ + { + "description": "Short description of the error that occurred." + }, + { + "$ref": "#/components/schemas/ErrorDescription" + } + ] + } + }, + "required": [ + "error" + ], + "additionalProperties": false + }, + "WalletResponse": { + "oneOf": [ + { + "$ref": "#/components/schemas/IdTokenWalletResponse" + }, + { + "$ref": "#/components/schemas/VpTokenWalletResponse" + }, + { + "$ref": "#/components/schemas/IdTokenAndVpTokenWalletResponse" + }, + { + "$ref": "#/components/schemas/ErrorWalletResponse" + } + ] + } + }, + "examples": { + "InitIdTokenTransactionByValueCrossDevice": { + "description": "Initialize an ID Token Transaction for 'cross device' scenario. JAR is passed by value.", + "value": { + "type": "id_token", + "id_token_type": "subject_signed_id_token", + "jar_mode": "by_value", + "nonce": "88c615a2-b7ca-4329-b673-3f4c4146ad33" + } + }, + "InitIdTokenTransactionByReferenceCrossDevice": { + "description": "Initialize an ID Token Transaction for 'cross device' scenario. JAR is passed by reference.", + "value": { + "type": "id_token", + "id_token_type": "subject_signed_id_token", + "jar_mode": "by_reference", + "nonce": "88c615a2-b7ca-4329-b673-3f4c4146ad33" + } + }, + "InitIdTokenTransactionByValueSameDevice": { + "description": "Initialize an ID Token Transaction for 'same device' scenario. JAR is passed by value.", + "value": { + "type": "id_token", + "id_token_type": "subject_signed_id_token", + "jar_mode": "by_value", + "nonce": "88c615a2-b7ca-4329-b673-3f4c4146ad33", + "wallet_response_redirect_uri_template": "https://dev.verifier.eudiw.dev/get-wallet-code?response_code={RESPONSE_CODE}" + } + }, + "InitVpTokenTransactionByValueCrossDevice": { + "description": "Initialize a VP Token Transaction for 'cross device' scenario. JAR and Presentation Definition are passed by value.", + "value": { + "type": "vp_token", + "presentation_definition": { + "id": "c4822b58-7fb4-454e-b827-f8758fe27f9a", + "input_descriptors": [ + { + "id": "eu.europa.ec.eudi.pid.1", + "name": "EUDI PID", + "purpose": "We need to verify your identity", + "format": { + "mso_mdoc": { + "alg": [ + "ES256", + "ES384", + "ES512" + ] + } + }, + "constraints": { + "fields": [ + { + "path": [ + "$['eu.europa.ec.eudi.pid.1']['family_name']" + ], + "intent_to_retain": false + } + ] + } + } + ] + }, + "jar_mode": "by_value", + "presentation_definition_mode": "by_value", + "nonce": "88c615a2-b7ca-4329-b673-3f4c4146ad33" + } + }, + "InitVpTokenTransactionByReferenceCrossDevice": { + "description": "Initialize a VP Token Transaction for 'cross device' scenario. JAR and Presentation Definition are passed by reference.", + "value": { + "type": "vp_token", + "presentation_definition": { + "id": "c4822b58-7fb4-454e-b827-f8758fe27f9a", + "input_descriptors": [ + { + "id": "eu.europa.ec.eudi.pid.1", + "name": "EUDI PID", + "purpose": "We need to verify your identity", + "format": { + "mso_mdoc": { + "alg": [ + "ES256", + "ES384", + "ES512" + ] + } + }, + "constraints": { + "fields": [ + { + "path": [ + "$['eu.europa.ec.eudi.pid.1']['family_name']" + ], + "intent_to_retain": false + } + ] + } + } + ] + }, + "jar_mode": "by_reference", + "presentation_definition_mode": "by_reference", + "nonce": "88c615a2-b7ca-4329-b673-3f4c4146ad33" + } + }, + "InitVpTokenTransactionByValueSameDevice": { + "description": "Initialize a VP Token Transaction for 'same device' scenario. JAR and Presentation Definition are passed by value.", + "value": { + "type": "vp_token", + "presentation_definition": { + "id": "c4822b58-7fb4-454e-b827-f8758fe27f9a", + "input_descriptors": [ + { + "id": "eu.europa.ec.eudi.pid.1", + "name": "EUDI PID", + "purpose": "We need to verify your identity", + "format": { + "mso_mdoc": { + "alg": [ + "ES256", + "ES384", + "ES512" + ] + } + }, + "constraints": { + "fields": [ + { + "path": [ + "$['eu.europa.ec.eudi.pid.1']['family_name']" + ], + "intent_to_retain": false + } + ] + } + } + ] + }, + "jar_mode": "by_value", + "presentation_definition_mode": "by_value", + "nonce": "88c615a2-b7ca-4329-b673-3f4c4146ad33", + "wallet_response_redirect_uri_template": "https://dev.verifier.eudiw.dev/get-wallet-code?response_code={RESPONSE_CODE}" + } + }, + "InitIdTokenAndVpTokenTransactionByValueCrossDevice": { + "description": "Initialize an ID Token and VP Token Transaction for 'cross device' scenario. JAR and Presentation Definition are passed by value.", + "value": { + "type": "vp_token id_token", + "id_token_type": "subject_signed_id_token", + "presentation_definition": { + "id": "c4822b58-7fb4-454e-b827-f8758fe27f9a", + "input_descriptors": [ + { + "id": "eu.europa.ec.eudi.pid.1", + "name": "EUDI PID", + "purpose": "We need to verify your identity", + "format": { + "mso_mdoc": { + "alg": [ + "ES256", + "ES384", + "ES512" + ] + } + }, + "constraints": { + "fields": [ + { + "path": [ + "$['eu.europa.ec.eudi.pid.1']['family_name']" + ], + "intent_to_retain": false + } + ] + } + } + ] + }, + "jar_mode": "by_value", + "presentation_definition_mode": "by_value", + "nonce": "88c615a2-b7ca-4329-b673-3f4c4146ad33" + } + }, + "InitIdTokenAndVpTokenTransactionByReferenceCrossDevice": { + "description": "Initialize an ID Token and VP Token Transaction for 'cross device' scenario. JAR and Presentation Definition are passed by reference.", + "value": { + "type": "vp_token id_token", + "id_token_type": "subject_signed_id_token", + "presentation_definition": { + "id": "c4822b58-7fb4-454e-b827-f8758fe27f9a", + "input_descriptors": [ + { + "id": "eu.europa.ec.eudi.pid.1", + "name": "EUDI PID", + "purpose": "We need to verify your identity", + "format": { + "mso_mdoc": { + "alg": [ + "ES256", + "ES384", + "ES512" + ] + } + }, + "constraints": { + "fields": [ + { + "path": [ + "$['eu.europa.ec.eudi.pid.1']['family_name']" + ], + "intent_to_retain": false + } + ] + } + } + ] + }, + "jar_mode": "by_reference", + "presentation_definition_mode": "by_reference", + "nonce": "88c615a2-b7ca-4329-b673-3f4c4146ad33" + } + }, + "InitIdTokenAndVpTokenTransactionByValueSameDevice": { + "description": "Initialize an ID Token and VP Token Transaction for 'same device' scenario. JAR and Presentation Definition are passed by value.", + "value": { + "type": "vp_token id_token", + "id_token_type": "subject_signed_id_token", + "presentation_definition": { + "id": "c4822b58-7fb4-454e-b827-f8758fe27f9a", + "input_descriptors": [ + { + "id": "eu.europa.ec.eudi.pid.1", + "name": "EUDI PID", + "purpose": "We need to verify your identity", + "format": { + "mso_mdoc": { + "alg": [ + "ES256", + "ES384", + "ES512" + ] + } + }, + "constraints": { + "fields": [ + { + "path": [ + "$['eu.europa.ec.eudi.pid.1']['family_name']" + ], + "intent_to_retain": false + } + ] + } + } + ] + }, + "jar_mode": "by_value", + "presentation_definition_mode": "by_value", + "nonce": "88c615a2-b7ca-4329-b673-3f4c4146ad33", + "wallet_response_redirect_uri_template": "https://dev.verifier.eudiw.dev/get-wallet-code?response_code={RESPONSE_CODE}" + } + }, + "TransactionByReference": { + "description": "Transaction initialized. JAR to be passed by reference.", + "value": { + "presentation_id": "r_BAGodYBO7yocWzxY6xmPgwOuXsepOI-JwZ5neKXXIvwr66NN-8WX-O74nUX0J5fpSRQvYkEwwiSvDyKDggoA", + "client_id": "dev.verifier-backend.eudiw.dev", + "request_uri": "https://dev.verifier-backend.eudiw.dev/wallet/request.jwt/KgNRHgSJU3O1xcsE1Jc50bIWVPCB9DKPhHBSAH7CQcOfZH-MPeaCaDA6XiJyXUH_caSjVLvrP6f57f51bhn8Uw" + } + }, + "TransactionByValue": { + "description": "Transaction initialized. JAR to be passed by value.", + "value": { + "presentation_id": "MiwDu0HfH8KBGKVitfenqHtZswFoqZnCvCNIjshu6AUaOUnV25Blcm7J1Ul_y5m8AYf9MAmc79IpBO-FZgk88Q", + "client_id": "dev.verifier-backend.eudiw.dev", + "request": "eyJ4NWMiOlsiTUlJREx6Q0NBclNnQXdJQkFnSVVja29XdEM3b0lYY21XMllRbXVOanFLaWV4RGt3Q2dZSUtvWkl6ajBFQXdJd1hERWVNQndHQTFVRUF3d1ZVRWxFSUVsemMzVmxjaUJEUVNBdElGVlVJREF4TVMwd0t3WURWUVFLRENSRlZVUkpJRmRoYkd4bGRDQlNaV1psY21WdVkyVWdTVzF3YkdWdFpXNTBZWFJwYjI0eEN6QUpCZ05WQkFZVEFsVlVNQjRYRFRJME1ESXlOakF5TXpRek5Gb1hEVEkyTURJeU5UQXlNelF6TTFvd2FURWRNQnNHQTFVRUF3d1VSVlZFU1NCU1pXMXZkR1VnVm1WeWFXWnBaWEl4RERBS0JnTlZCQVVUQXpBd01URXRNQ3NHQTFVRUNnd2tSVlZFU1NCWFlXeHNaWFFnVW1WbVpYSmxibU5sSUVsdGNHeGxiV1Z1ZEdGMGFXOXVNUXN3Q1FZRFZRUUdFd0pWVkRCWk1CTUdCeXFHU000OUFnRUdDQ3FHU000OUF3RUhBMElBQkJOQU9MZ0E1a0phQjNPVEk5UGRkd0xGY1B2bTBtUmd5b3JZYnpHMjBSaTFwUzNZUkEvMzFydVd0VlFxTG0vM3lNKzVmT2dGYVVqek5VbWtSM2srQ2F5amdnRkZNSUlCUVRBTUJnTlZIUk1CQWY4RUFqQUFNQjhHQTFVZEl3UVlNQmFBRkxOc3VKRVhITmVrR21ZeGgwTGhpOEJBekpVYk1Da0dBMVVkRVFRaU1DQ0NIbVJsZGk1MlpYSnBabWxsY2kxaVlXTnJaVzVrTG1WMVpHbDNMbVJsZGpBU0JnTlZIU1VFQ3pBSkJnY29nWXhkQlFFR01FTUdBMVVkSHdROE1Eb3dPS0Eyb0RTR01taDBkSEJ6T2k4dmNISmxjSEp2WkM1d2Eya3VaWFZrYVhjdVpHVjJMMk55YkM5d2FXUmZRMEZmVlZSZk1ERXVZM0pzTUIwR0ExVWREZ1FXQkJSUllGQjBVeWRCN096aTZCTGdoQlMzVmlxbnBqQU9CZ05WSFE4QkFmOEVCQU1DQjRBd1hRWURWUjBTQkZZd1ZJWlNhSFIwY0hNNkx5OW5hWFJvZFdJdVkyOXRMMlYxTFdScFoybDBZV3d0YVdSbGJuUnBkSGt0ZDJGc2JHVjBMMkZ5WTJocGRHVmpkSFZ5WlMxaGJtUXRjbVZtWlhKbGJtTmxMV1p5WVcxbGQyOXlhekFLQmdncWhrak9QUVFEQWdOcEFEQm1BakVBdkJSRW40d1VpUUZmVHpOeDZ3MzRJQ3F2aFQ5N2V5WVVjNW54Vy9qbWp6QU04RmtDQVNLaDNwL3NTN01pT0xmY0FqRUEybm80TDdMN01LR0hyZDFuNWorQ0dnTkJzZG5YUEUyZC9UM21lYnhLcmQyOGJtVHJzTlBnYU5uQ3ZzcU5YWXBsIiwiTUlJREhUQ0NBcU9nQXdJQkFnSVVWcWpndEpxZjRoVVlKa3FkWXppKzB4d2h3Rll3Q2dZSUtvWkl6ajBFQXdNd1hERWVNQndHQTFVRUF3d1ZVRWxFSUVsemMzVmxjaUJEUVNBdElGVlVJREF4TVMwd0t3WURWUVFLRENSRlZVUkpJRmRoYkd4bGRDQlNaV1psY21WdVkyVWdTVzF3YkdWdFpXNTBZWFJwYjI0eEN6QUpCZ05WQkFZVEFsVlVNQjRYRFRJek1Ea3dNVEU0TXpReE4xb1hEVE15TVRFeU56RTRNelF4Tmxvd1hERWVNQndHQTFVRUF3d1ZVRWxFSUVsemMzVmxjaUJEUVNBdElGVlVJREF4TVMwd0t3WURWUVFLRENSRlZVUkpJRmRoYkd4bGRDQlNaV1psY21WdVkyVWdTVzF3YkdWdFpXNTBZWFJwYjI0eEN6QUpCZ05WQkFZVEFsVlVNSFl3RUFZSEtvWkl6ajBDQVFZRks0RUVBQ0lEWWdBRUZnNVNoZnN4cDVSL1VGSUVLUzNMMjdkd25GaG5qU2dVaDJidEtPUUVuZmIzZG95ZXFNQXZCdFVNbENsaHNGM3VlZktpbkN3MDhOQjMxcndDK2R0ajZYL0xFM24yQzlqUk9JVU44UHJubExTNVFzNFJzNFpVNU9JZ3p0b2FPOEc5bzRJQkpEQ0NBU0F3RWdZRFZSMFRBUUgvQkFnd0JnRUIvd0lCQURBZkJnTlZIU01FR0RBV2dCU3piTGlSRnh6WHBCcG1NWWRDNFl2QVFNeVZHekFXQmdOVkhTVUJBZjhFRERBS0JnZ3JnUUlDQUFBQkJ6QkRCZ05WSFI4RVBEQTZNRGlnTnFBMGhqSm9kSFJ3Y3pvdkwzQnlaWEJ5YjJRdWNHdHBMbVYxWkdsM0xtUmxkaTlqY213dmNHbGtYME5CWDFWVVh6QXhMbU55YkRBZEJnTlZIUTRFRmdRVXMyeTRrUmNjMTZRYVpqR0hRdUdMd0VETWxSc3dEZ1lEVlIwUEFRSC9CQVFEQWdFR01GMEdBMVVkRWdSV01GU0dVbWgwZEhCek9pOHZaMmwwYUhWaUxtTnZiUzlsZFMxa2FXZHBkR0ZzTFdsa1pXNTBhWFI1TFhkaGJHeGxkQzloY21Ob2FYUmxZM1IxY21VdFlXNWtMWEpsWm1WeVpXNWpaUzFtY21GdFpYZHZjbXN3Q2dZSUtvWkl6ajBFQXdNRGFBQXdaUUl3YVhVQTNqKyt4bC90ZEQ3NnRYRVdDaWtmTTFDYVJ6NHZ6QkM3TlMwd0NkSXRLaXo2SFplVjhFUHROQ25zZktwTkFqRUFxcmRlS0RucjVLd2Y4QkE3dEFUZWh4TmxPVjRIbmMxMFhPMVhVTHRpZ0N3YjQ5UnBrcWxTMkh1bCtEcHFPYlVzIl0sInR5cCI6Im9hdXRoLWF1dGh6LXJlcStqd3QiLCJhbGciOiJFUzI1NiJ9.eyJyZXNwb25zZV91cmkiOiJodHRwczovL2Rldi52ZXJpZmllci1iYWNrZW5kLmV1ZGl3LmRldi93YWxsZXQvZGlyZWN0X3Bvc3QiLCJjbGllbnRfaWRfc2NoZW1lIjoieDUwOV9zYW5fZG5zIiwicmVzcG9uc2VfdHlwZSI6InZwX3Rva2VuIiwibm9uY2UiOiI4OGM2MTVhMi1iN2NhLTQzMjktYjY3My0zZjRjNDE0NmFkMzMiLCJjbGllbnRfaWQiOiJkZXYudmVyaWZpZXItYmFja2VuZC5ldWRpdy5kZXYiLCJyZXNwb25zZV9tb2RlIjoiZGlyZWN0X3Bvc3Quand0IiwiYXVkIjoiaHR0cHM6Ly9zZWxmLWlzc3VlZC5tZS92MiIsInNjb3BlIjoiIiwicHJlc2VudGF0aW9uX2RlZmluaXRpb24iOnsiaWQiOiJjNDgyMmI1OC03ZmI0LTQ1NGUtYjgyNy1mODc1OGZlMjdmOWEiLCJpbnB1dF9kZXNjcmlwdG9ycyI6W3siaWQiOiJldS5ldXJvcGEuZWMuZXVkaS5waWQuMSIsIm5hbWUiOiJFVURJIFBJRCIsInB1cnBvc2UiOiJXZSBuZWVkIHRvIHZlcmlmeSB5b3VyIGlkZW50aXR5IiwiZm9ybWF0Ijp7Im1zb19tZG9jIjp7ImFsZyI6WyJFUzI1NiIsIkVTMzg0IiwiRVM1MTIiXX19LCJjb25zdHJhaW50cyI6eyJmaWVsZHMiOlt7InBhdGgiOlsiJFsnZXUuZXVyb3BhLmVjLmV1ZGkucGlkLjEnXVsnZmFtaWx5X25hbWUnXSJdLCJpbnRlbnRfdG9fcmV0YWluIjpmYWxzZX1dfX1dfSwic3RhdGUiOiIwalBIS3p6X0kzS2J5TEZTLXVZU2JjSVBOU0tvWkJYZldfWWJnYlZZbTllcEJxNE9FSTF1RHJvUjNNbGo1dFU1RlhpSngzM3VvMGJvZ25WanBIVFcydyIsImlhdCI6MTcyMTg4OTA3MiwiY2xpZW50X21ldGFkYXRhIjp7ImF1dGhvcml6YXRpb25fZW5jcnlwdGVkX3Jlc3BvbnNlX2FsZyI6IkVDREgtRVMiLCJhdXRob3JpemF0aW9uX2VuY3J5cHRlZF9yZXNwb25zZV9lbmMiOiJBMTI4Q0JDLUhTMjU2IiwiaWRfdG9rZW5fZW5jcnlwdGVkX3Jlc3BvbnNlX2FsZyI6IlJTQS1PQUVQLTI1NiIsImlkX3Rva2VuX2VuY3J5cHRlZF9yZXNwb25zZV9lbmMiOiJBMTI4Q0JDLUhTMjU2Iiwiandrc191cmkiOiJodHRwczovL2Rldi52ZXJpZmllci1iYWNrZW5kLmV1ZGl3LmRldi93YWxsZXQvamFybS8walBIS3p6X0kzS2J5TEZTLXVZU2JjSVBOU0tvWkJYZldfWWJnYlZZbTllcEJxNE9FSTF1RHJvUjNNbGo1dFU1RlhpSngzM3VvMGJvZ25WanBIVFcydy9qd2tzLmpzb24iLCJzdWJqZWN0X3N5bnRheF90eXBlc19zdXBwb3J0ZWQiOlsidXJuOmlldGY6cGFyYW1zOm9hdXRoOmp3ay10aHVtYnByaW50Il0sImlkX3Rva2VuX3NpZ25lZF9yZXNwb25zZV9hbGciOiJSUzI1NiJ9fQ.o79-jVZP0uosqheCoaIMBJo4IdYNVeSJo1mxAbN08f579ck6_RZOR6jmZq9S0yaK_I8thb8VQsSWwcOk6mal5A" + } + }, + "IdTokenWalletResponse": { + "description": "A response to an ID Token Transaction.", + "value": { + "id_token": "eyJraWQiOiJiYWVlNWYwYS04NGRmLTQzNmYtOWViMy05ZTYwYzBjMThkMDgiLCJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJzdWIiOiJEY2xJOGtfRFkwVHFUQVBYQjJwaWNoc0dHb3JiNlRma0FWRXJYWi0zYkM4IiwiYXVkIjoiZGV2LnZlcmlmaWVyLWJhY2tlbmQuZXVkaXcuZGV2IiwiaXNzIjoiRGNsSThrX0RZMFRxVEFQWEIycGljaHNHR29yYjZUZmtBVkVyWFotM2JDOCIsIm5hbWUiOiJXYWxsZXQgSG9sZGVyIiwic3ViX2p3ayI6eyJrdHkiOiJSU0EiLCJlIjoiQVFBQiIsInVzZSI6InNpZyIsImtpZCI6ImJhZWU1ZjBhLTg0ZGYtNDM2Zi05ZWIzLTllNjBjMGMxOGQwOCIsImlhdCI6MTcyMTg5MTM0NCwibiI6InZDb1JORS13LUF2VjFGVmJ3QXRmb0hVWWtBb0x5MkVDY25EdXlrakFjRGlpYkN2TzJnR0E0NnVab2V5dkY1ZUd2aGd5N3FKU0Q3LW4wdGMwSTU5SkpNbno1M19iSXpvbGtuUUc5ZlgtdXBXS2tUdEVoWWtKZWZtVGxqcXNyVzBJQWtNUllMdkJma3NNV1dDN01pRTUxbzNxWUV4QlUwMzNGSzBxUDJGdXl1WHNXc0dBa2QwS0tLazNySTJJZE03NVBrV3ptNFhuZzVsSWhpMEc5OWtrOGRGSWdFc1EtNElMMGJycUtreHdXcnFnUU9HZDVjdVNNalREZENfekVDWEZER00xb2tyNkVlc0VCQXJFTnZPMlZPUXRjb0hFYnBpZXpqNzVYUm5nY29oWE9mTS1IRjNSSl9EU1h6X1ljYWxzWW1DVFRlTjNqbEs2UTg3SEk1enRXdyJ9LCJleHAiOjE3MjE4OTE5NDgsImlhdCI6MTcyMTg5MTM0OCwiZW1haWwiOiJ3YWxsZXRIb2xkZXJAZm9vLmJhci5jb20ifQ.cgpVRSrJaCx_Xhq0X6fYk2wzdUT7NyeJ4HvWdtLKJKCMRLZ7gGJ-58tOWAbPMXs2sCRSvlhySx_0c7xruRIWUQ4pt2bxjnfikphKgW8bF2obdprCbR_ijH3agXLZWRqYhnAO9fLKqSifYA6sLnK32KiNwJXgQNSvJ4lVuMFt80x_D1l3xisp-FOCLDgFtiws188KC613Ip0p5L6wlQgPLUn9Nvt2BFsUOU47NXMUkWqfSNKMh_vvJDZG6CXmUztDiu5w58fQVTcescKrPgRo79IBr4apv_1xP75yIaasO5QQFTzyQ66n3BA_uTSVSBYRkKXlAFXb6Ww8ro2Ld0TY6A" + } + }, + "VpTokenWalletResponse": { + "description": "A response to a VP Token Transaction.", + "value": { + "vp_token": "o2d2ZXJzaW9uYzEuMGlkb2N1bWVudHOBo2dkb2NUeXBldW9yZy5pc28uMTgwMTMuNS4xLm1ETGxpc3N1ZXJTaWduZWSiam5hbWVTcGFjZXOhcW9yZy5pc28uMTgwMTMuNS4xmBnYGFhXpGZyYW5kb21QfC3Y8iYYQNPMBoKOG9pNNmhkaWdlc3RJRABsZWxlbWVudFZhbHVlaEdlb3JnaW91cWVsZW1lbnRJZGVudGlmaWVya2ZhbWlseV9uYW1l2BhYVqRmcmFuZG9tUNcqIu0d16V300NTzuolOVZoZGlnZXN0SUQBbGVsZW1lbnRWYWx1ZWhHZW9yZ2lvc3FlbGVtZW50SWRlbnRpZmllcmpnaXZlbl9uYW1l2BhYW6RmcmFuZG9tUMvOWob7UcbY5tfC0d-vIONoZGlnZXN0SUQCbGVsZW1lbnRWYWx1ZdkD7GoxOTQ4LTA1LTMwcWVsZW1lbnRJZGVudGlmaWVyamJpcnRoX2RhdGXYGFhbpGZyYW5kb21QXF75fDniAWo4Ea9eZahv2GhkaWdlc3RJRBJsZWxlbWVudFZhbHVl2QPsajIwMDAtMDEtMDFxZWxlbWVudElkZW50aWZpZXJqaXNzdWVfZGF0ZdgYWFykZnJhbmRvbVAt5Mp6dKsrabAiXOCUv6anaGRpZ2VzdElEE2xlbGVtZW50VmFsdWXZA-xqMjA0MC0xMi0zMXFlbGVtZW50SWRlbnRpZmllcmtleHBpcnlfZGF0ZdgYWE-kZnJhbmRvbVCYt95mKxp5qbPdKc2NqS8MaGRpZ2VzdElEDGxlbGVtZW50VmFsdWX1cWVsZW1lbnRJZGVudGlmaWVya2FnZV9vdmVyXzE42BhYT6RmcmFuZG9tUNrX2Q5dnp1Zc3E0T2TtdQJoZGlnZXN0SUQNbGVsZW1lbnRWYWx1ZfVxZWxlbWVudElkZW50aWZpZXJrYWdlX292ZXJfMjHYGFhRpGZyYW5kb21QuJRUPYv2n4j2Ch4p8FQK6mhkaWdlc3RJRApsZWxlbWVudFZhbHVlGE9xZWxlbWVudElkZW50aWZpZXJsYWdlX2luX3llYXJz2BhYVKRmcmFuZG9tUEJKblbEf2hGwBs-V-sBDXloZGlnZXN0SUQLbGVsZW1lbnRWYWx1ZRkHnHFlbGVtZW50SWRlbnRpZmllcm5hZ2VfYmlydGhfeWVhctgYWIOkZnJhbmRvbVBaekOUdLR9QiFtL2lM1_CeaGRpZ2VzdElEFWxlbGVtZW50VmFsdWV4LU1pbmlzdHJ5IG9mIEluZnJhc3RydWN0dXJlIGFuZCBUcmFuc3BvcnRhdGlvbnFlbGVtZW50SWRlbnRpZmllcnFpc3N1aW5nX2F1dGhvcml0edgYWGGkZnJhbmRvbVDtkHfu2pCmOdyaAm2mi1p8aGRpZ2VzdElEF2xlbGVtZW50VmFsdWVuQTEyMy00NTY3LTg5MDBxZWxlbWVudElkZW50aWZpZXJvZG9jdW1lbnRfbnVtYmVy2BhZSfukZnJhbmRvbVCl8oB2yo-wg9cY1rOSPNvZaGRpZ2VzdElEA2xlbGVtZW50VmFsdWVZSa3_2P_hAIxFeGlmAABJSSoACAAAAAUAGgEFAAEAAABMAAAAGwEFAAEAAABUAAAAKAEDAAEAAAACAAAAEwIDAAEAAAABAAAAaYcEAAEAAABcAAAAAAAAAAAAYAAAAAEAAABgAAAAAQAAAAMAAJAHAAQAAAAAAgMAAZEHAAQAAAABAgMAAaADAAEAAAABAAAAAAD_4QE9aHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLwA8P3hwYWNrZXQgYmVnaW49Iu-7vyIgaWQ9IiIgPz4KCjxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyIgPgo8cmRmOkRlc2NyaXB0aW9uIHhtbG5zOkFzcG9zZUltYWdpbmc9Imh0dHBzOi8vcHJvZHVjdHMuYXNwb3NlLmNvbS9pbWFnaW5nLyI-CjxBc3Bvc2VJbWFnaW5nOkltYWdlUXVhbGl0eT43NTwvQXNwb3NlSW1hZ2luZzpJbWFnZVF1YWxpdHk-PC9yZGY6RGVzY3JpcHRpb24-Cg0KPC9yZGY6UkRGPgo8P3hwYWNrZXQgZW5kPSdyJz8-_9sAQwAIBgYHBgUIBwcHCQkICgwUDQwLCwwZEhMPFB0aHx4dGhwcICQuJyAiLCMcHCg3KSwwMTQ0NB8nOT04MjwuMzQy_9sAQwEJCQkMCwwYDQ0YMiEcITIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIy_8AAEQgCcgJyAwEiAAIRAQMRAf_EAB8AAAEFAQEBAQEBAAAAAAAAAAABAgMEBQYHCAkKC__EALUQAAIBAwMCBAMFBQQEAAABfQECAwAEEQUSITFBBhNRYQcicRQygZGhCCNCscEVUtHwJDNicoIJChYXGBkaJSYnKCkqNDU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6g4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2drh4uPk5ebn6Onq8fLz9PX29_j5-v_EAB8BAAMBAQEBAQEBAQEAAAAAAAABAgMEBQYHCAkKC__EALURAAIBAgQEAwQHBQQEAAECdwABAgMRBAUhMQYSQVEHYXETIjKBCBRCkaGxwQkjM1LwFWJy0QoWJDThJfEXGBkaJicoKSo1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoKDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uLj5OXm5-jp6vLz9PX29_j5-v_aAAwDAQACEQMRAD8A9_ooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAoorD8Q-MNC8LQCXWNQitsjKoTl2-i9TQBuUyWaOCMvLIsaDqzHAFfPviP9ou4Znh8N6ZGi9BPdgsSPUKCMfjmvKNf8deJfE8pfVNWuJV7RIdiD_gK4FAH1VrPxU8G6EGFzrUMsg6R24MpP4qMfrXn2sftH6bGHXR9GuZ26K9y6xj64GTXznRQB61f_ALQfi25VltYbG1B7rGWI_M1y-ofFTxpqKlZdeu40PVYX2A_l2rjaKANaXxLrc-fN1a8fP96YmqMt9dTZ8y4kf_ebNV6KAJY7iaH_AFUjp_unFXI9f1aEgxaldJj-7KRWdRQB01h8QfFumvm21-_Uf3TMSv5V1GnfHfxpZMBLPbXaek0XP5g15jRQB71pP7SMykrq-hK6_wB-1lwf--W_xrvtH-N_grVtivezWMrfwXURHP1XI_WvkeigD7ysNW0_VIRNYXkF1H6wyBv5Vdr4P0zWtT0adZ9Nvri1kByDE5FeoeHf2gvEmnbItXgttSgXG59vlykf7w-X_wAdoA-oKK4fwj8VfDHi0rDb3Ytr0j_j2uCFYn_ZPRq7gcigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKaxCqWYgAdSaAHVi-IfFGjeFrE3esX8dtHjhT8zv_uqOTXmnxC-OVpoTyaZ4cWK9vhw9wxzFH9MfeNfPGt6_qfiLUJL7VLyS5nc5JY8D2A6AUAep-Mfj7quqGS18PRHT7Y8eeTmVh_7L-FeQXd5c39y9zdzyTzuctJIxZj-JqCigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKAFBIORXf8AhH4veJvCuyH7Sb6yXj7PcsWwPQHqK8_ooA-xvBfxU8O-M1WCCc2uoY-a0n4Y_wC6ejfhzXc18C2881tMk0EjxSocq6HBB-tex-BfjxqOleVYeJVN9Zj5Rcj_AFyD3_vfz96APpeiqemalZ6vp8N9YXMdxbSqGSRDkEVcoAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiisnxD4i07wxo8-p6pMIoIhnH8TnsqjuTQBY1XVrHRNOlv8AUblLe1iGWkc4H0Hqfavmb4j_ABmv_E7zaboryWekH5SykrJOP9r0B9PzrnviD8SNT8dXx8zNvp0bZhtVbIHu3qa4igAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigDq_BPj3WPBGprc2MzPasf31o7Hy5B9Ox96-qPA_wAQNH8dacZ7CTy7qPie1kPzxn19x7iviytPQte1Lw3qkWo6XctBcxngjoR6EdxQB92UV5_8OPidYeObIRSBbbVo1Hm2-7h_Vl9vbtXoFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFGaM0AFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUVWvb2306ynvLuVYreBDJI7dFUDJNAFXXtd0_wAN6RNqep3Cw28Q6k8seygdyfSvkHx947v_ABxrsl1O7JZRti1ts_LGvr7k9Sa0fif8RrnxzrAWIGHS7YlbeLdy3q7e5rgKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAt6ZqV3pGowX9hO8F1A2-ORDgg_4e1fW3wz-I1p450nZK6RatbgCeDOCw_vqO4NfH1aega7f-G9Yg1TTZjHcQtkejDuD7UAfdlFcr4D8a2fjfw7FqEGI7lQFuYM58t-_4eldVQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFfOPxx-JDX9zL4V0m5H2SFsXjxn_WOD9zPoD19xXpfxc8cp4O8LtFA_8AxM75WjtwP4R_Ex-ma-RXZndnYksxySe5oAbRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQB13w98b3ngfxHDeRyM1lIQl1B2dP8R1H0r7G07UbXVtOgv7GZZradQ8bqcgivguvcfgH46Wyv5fDGoSnyLkh7RmPCyd1_EY_KgD6OooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAqC7u4bGznu7lxHBAjSSMegUDJNT1458f_Fo0zwzH4ft5MXOoENLg8rEpz-pAH50AeH_EPxfN408WXGpOxFuv7q3jzkIg_qeTXJ0UUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABUttcy2dzHcQOyTRMHR1OCCKiooA-z_ht4yj8Z-ELa-Z1-2RARXSjtIOpx79fxrsK-Tfgn4vHhvxlHY3EhWy1JhA3PCueFP54H419ZUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFGKMUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFADJZEhjaR2CooyWPQCvijx54nl8XeL7_VHcmFpCsC_3YwcL-mK-mPjL4jHh_4f3axuVub7_Rotp55-8fy_nXyFQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQA-ORopFkRirqQVI6gjvX2d8NvFP_CWeCrLUHZTcqPKn2_31HP8ASvi6vbv2dPEf2bXNQ0CZvku4hNDns6dR-Ib9KAPpGiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooprusaM7HCqMk-goA-Zf2htee98X2ujI37iwtwxGf-WjnJ_8AHQleOVv-NdV_tzxpq-o84muW25_uj5R-gFYFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABW14S1mXw_4r07VIvvQTKSM4yp4I_ImsWigD77t50ubaKePlJUDr9CMipK4z4U6ydc-G2j3LtuljiMD5OTlGKjP4AV2dABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABXNfEHVW0XwHrF-hw6W5VTnoWIUfqa6WvMfj3em1-F9zCDj7VcxQ_XDb__AGSgD5PZi5JY5JOSaSiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooA-kP2cdTabQdW0xiStvOsqZ7Bhj-amvb6-ZP2db4w-Mb-z3HbcWudvYlTn-pr6boAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAK8N_aSumXQ9Fs_wCF7lpT_wABXH_s1e5V8-_tKzAS-HoQwJ2zuR6fcGf8-lAHgVFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQB3vwcvGs_ihpDKf8AWM0R-jDFfYVfFfw1lMXxJ8Pf7V9Ev5sBX2pQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAV82_tIuT4k0dewtX_8AQhX0lXzn-0pAy6xoM-PleCVM-4Zf8aAPDKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigDf8EuY_Hnh-Req6jbn_yItfcFfEnw_iE3xD8Ooen9owE_QSCvtugAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigArwP9pWPNv4fk_utMv57f8K98rx39ouw8_wAE2F6o5t75Qf8AdZWH88UAfMVFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQB2Pwsh874l6EMZ23SN-RzX2dXyf8B9PF78SIZmHy2sDyf8CxgV9YUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFcH8ZbH7f8LNYQLl4hHKvtiRc_pmu8qhrWnpquiX1hIMrcQPEfbIxmgD4Poq1qFo9hqN1ZyqVeCVomB6gg4qrQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAe7_s3afu1DW9RP8EccS_Ukk_0r6Iryz4BaQun_AA5S9KYk1C4klJPXap2D_wBBP516nQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAfH3xk0f-x_iZqSquIrrbcx_Rhz_48Grga-jP2ivDpuNN07xBGvz2xNvMQOqk5X8ju_OvnOgAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAqS3ia4uI4U-9IwUfUnFR16B8G_Dh8Q_EK0Drm3sgbqXI4IUgAfmRQB9UeF9LXRfC2l6aq4-z2yIw_wBrHzfrmteiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAxvFOiReI_DOoaTMoIuIWRSezY-U_nXw_c28tpcy286FJonKOh6qwOCPzr75r5d-PXg8aN4nTXLdQLXUyS-P4Zep_Pr-dAHkVFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFfTn7PnhttN8L3WtTR7ZdQcLGSOfLXOMexJP5V8-eFfD8_ijxNYaPb5DXMqq7AZ2Jn5m_AZNfbun2EGmafBZWybIIIxGi-gAxQBZooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACuT-IvhVfF_gu905UDXQXzbZu4kXkAH36fjXWUUAfA11bzWdzLbTxtHNExR0YYKkdQRUNe3fH3wKbDUo_FFhEPs10dl2qrwknZvxH8q8RoAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiup8AeEbjxn4pt9Ni-WEfvLiUjhEH9T0oA9i_Z-8HPa2U_ii8hKvODFalh_B0Zh-ORXulVrCyg03T7eytYxHBBGscaDsoGBVmgAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigDP1rR7PX9IudMv4_MtrhNrj-o96-MPGXhS88HeIrjSrtWKoxMMpHEqdmFfb9cN8T_AkPjfw1LFGqrqVuDJayH-9_dPselAHxzRVi8tJ7G7ltbqJop4mKujDBBFV6ACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKAJYIJLmeOCFGeWRgiIoyWJOABX118KfAEXgnw7umXOqXoV7lj_Dxwg9hk1wPwN-G7I0Xi3VovU2MTDn08w_0r36gAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKAPIvi98Ko_E1s2t6PGI9WiU-ZGvS4X_4oV8wPG0TtG6lWUkMD1B9K-_K8R-LnwhfWJJ_EPh6EG9I3XFqvHnf7S_7Xt3oA-bqKklikgkaKVGSRSQysMEGo6ACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAr1n4QfC0-K7ka1qyOmkQPhE6G4b0z_dFVvhh8J77xddQ6lqMbW-iK24u3Bnx2Uenv_OvqiztILCzhtLaNY4IVCIijgAUASQxRwQpFEipGihURRgKB0AFPoooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKgvb22060ku7ydILeMbnkdsBRXz94--PT3Hnad4T3xRHKtfsNrN7oOo-pwaAPff7Usf7SGnfa4ftuwyeRvG_b64q3Xwjaa5qVlrKatDeTC-V9_nFzuJ9zX1b8M_iXZeN9MSCd1h1mJcTQnjfj-JfX6UAeg0UUUAeSfFT4RQeJ4n1jRVWDWEHzxjAS4GP0b3r5kvrG5068ltLyF4biJtrxuMFTX3tXGeOfhtovji1Y3UQh1BVIivI1w49A394e1AHxnRXS-LvAuueC74warassTEiK5TmOX6H-h5rmqACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooq5p2mXur3sdnp9rLc3MhwscS7iaAKYr2P4W_ByfxA8eseII5INMU7o4MbWn_wAF_nXb_Dj4JWmh-VqniOOO61EfMlscNHEffsx_SvZFAAwOlAEdvbw2lvHBbxpHFGoVEQYCgdAKloooAKp6lqthpECzahdxW0buEVpWCgsegqp4i8Rad4X0afVNTnEUEQ4H8TnsqjuTXyP4_wDHuoeOtaNzcM0dnFlba3zwg9fqaAPs1HV0DoQykZBHenV8feB_ivr3g2SKDzmvNMU_NayscKv-wf4a-mPBvj7Q_G1kJdMucXCjMtrJxJH-Hce4oA6miiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigArC8U-K9M8IaNJqWpyhUHEcYPzSt_dFM8X-LtN8G6JJqWoygcERQg_NK3oB_XtXyB4s8X6r4x1d9Q1Odm5PlQg_JEvoo_wA5oA2PHnxN1nxveusshttNU4itI2O3Hqx_iNcPRRQAVe0rVbzRdSg1CwnaG5hcOjqe4qjRQB9d_DX4pWHja0FpcFLbWI1zJCTxJ_tL_hXolfA9rd3FjdR3NrNJDPG25JI2Ksp9QRX0d8MPjTb6tHDo3iadYdQ4SK6bhZvQMezfXrQB7VRSKQRkEEe1LQBS1PSrHWLJ7PUbWK5t36pIuRXgnjn4AzW_m6h4VmMsXLGxl--P9xh1-hr6IooA-B7q0uLG4e3uoXhmQlWR1wQagr7c8S-BvDviyFl1bTYJZSOLhV2yr9HHP4dK8L8X_ADVtPL3PhyT-0Lcc-Q5Cyj6dj_OgDxeird_p17pk5t7-zntZh1SaMofyNVKACiiigAooooAKKKKACiiigAooooAKKKKACiinpG8rqkalnY4CqMkmgBlKAScDk16J4T-DfirxK6SzWb6bZnkzXS7CR7KfmP1xivd_Cfwd8LeGESWSzTUr1efPulDgH1VTwP50AeHeBvg1rviwx3d3nTtMYZE0i5dx_sr_U19H-E_AuheDbMQ6VaASEfPcSfNI_1P-FdIAFAAGAKWgAooooAKxvEvifS_CmkyajqtwIol4Vf4pG9FHc1iePfiNpPgbTWeeRZ9RcfuLNDlmPq390e5_CvlHxT4t1bxfqzahqty8jciOPPyRL6KOgoA1PH3xA1Lxzq7T3B8qyjYi3tlOQi9ifU1x1FFABV7SdWv9F1CO-065kt7mI5V0P8AnNUaKAPqX4YfGK38UIml640Vtqw-VZAdqXH09G9q9ar4CR2jdXRirKcgg4INfRfwg-Lh1Hy_D3iK6zdAYtbqVv8AWf7LH19CaAPcqKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAqnqmo22kaZcaheSCO3t0Lux9BVyvmf44fEZdavB4b0qcmxtnzcyIeJnHQe4H86AOG-IXje78b-JJb6QlLNP3dtBnIRB3-p5NcjRRQAUUUUAFFFFABSgkEEHBpKKAPWvAHxt1Pw35en60rahpoG1X3YliHsf4h7cfWvpDQfEWl-JtNjv8ASruO4hcfwn5l9iOxr4VrY8O-KNY8Lagt7pF9LbSZ-YKcq49GU8H8aAPueivIvBvx30PWhFaa5t0y8IA81j-5Y_738P416xBPDdQpNbzJNE4yskbBlYexHWgCWiiigDO1TQ9L1u3a31Kxguo2GCJUB_WvLPEv7Peh6iTLol7JpkvXy2TzYz-oI_WvZKKAPk7V_gR4y0ze9tFbahGoyDbS4Yj6NiuE1Hw_q-kPs1DTrq2b_ppGQPz6V92VDcWlteR-Xc28U8f92VAw_I0AfA1Ffat98NvBuoEm48O2GWzkxReXn_vnFc3e_AXwPdEmG1urQn_njcscf99ZoA-TqK-lp_2b_DzN_o-sanGPR_Lb_wBlFU5P2bbDH7vXrgf70SmgD51or6Hj_ZstQf3mvzEf7MIFWov2b9FBHna3fkdwqoP6UAfN1FfU9p-z34NtyPOk1G59pJwP_QQK6Sx-EvgXT8eT4et3I7zO8v8A6ESKAPjy2sbq9kEdrbyzuTgLGhYn8q7PRvg_411oBo9KNtGTxJdOIx-XX9K-tbDRNK0sY0_TbO0H_TCBU_kKv0AeA6B-zfskWXxBrKuveCzQ8_8AA2_-Jr1rQPAnhvwzGBpmlwJIOfNddzk-uTXSUUAFFFFABRRXEeLfip4Y8IK8dzeLdXqg_wCiWzB3B7BscL-NAHZzzxW8LzTSLHGgyzucACvEvH_x5gsJJdM8LolxOuVe9c5RT_sj-L615b45-KmveNJWgeVrTTN2VtIWwD_vH-L8a4PrQBav9RvNVvJLu-uZLi4lbc8khySaq0UUAFFFFABRRRQAU-OR4pFkjYq6nIYdQaZRQB9W_Bv4iHxbop03UXX-1rIYJzzPH2bHqOh-gPevUq-EtC1u98Paxb6pp8piuYGDKR39j6g-lfZvg_xXY-MfD8GqWLAbxiWInmN-6mgDoKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKo6tqlpomlXOpX0qxW1uhd2Y_5-lAHC_F_wAfL4P8ONa2kmNVvkKw7TgxL0L_AOFfJRYsxZjknqTW9408UXXjDxRd6vcsdsjbYY-0cY-6B_P6k1z9ABRRRQAUUUUAFFFFABRRRQAUUUUAFdf4Q-JHiLwZLjTrrzLUtue1n-ZG_qPwrkKKAPqjwt8ePDetLHDqiyaVdtwfMO-In2Yc_mK9QtLy2vYFntZ45onGVdGyCK-B62NE8U674cm83SNUubQ91R_lP1U8H8RQB9z0V85-G_2ir63VIfEOnrdKMAz2-Ef6kdPyxXp2jfGPwVrKD_ibx2cpODHdgxY_4EeP1oA76ioLW7tr2ETWtxFPE3R4nDKfxFT0AFFFFABRRRQAUUUUAFFFFABRRTWYIpZiAAMkntQA6iuW1n4i-EdCyL7XrJZB1jik8xx_wFcmvN9f_aL02FHj0LTZbmTB2y3Hypn_AHetAHuDMFGWOB6muJ8T_Fbwr4WMkVzffabpM_6PbYdgfQ9hXzP4j-J3izxPujvdWmjtieILfES_jtwT-Oa5Aksck80AepeNPjhr_iRWtdOX-yrHPSJyZHHozccewFeXSSNK5d2LMepY5JptFABRRRQAUUUUAFFFFABRRRQAUUUUAFei_CDxw3hHxXHDdSkaZfEQzgnhGJ-V_wAD19ia86ozQB9-I6yIrowZWGQR0Ip9eP8AwK8dPr2hyaFfzbr6wAMRY8vD2-pU8fiK9goAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAr55_aB8bCeaDwpZSHbEwmu2B4JxhV_Uk_hXs3jTxLB4S8K32sSlS8MZ8lGP35Dwq_mRXxTqF_canqE97dSGSedy7ue5NAFaiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKAL-n61qWkzifTr6e1kH8UTkGu1sfjd44stobUY7kD_nvEGzXndFAHt9j-0hq8e37doVpOAeTFM0f8w1dLa_tI6A6_wCl6JqUTekRjkH6la-a6KAPqaL9ofwbLjdbatGf9uCP-j1di-O3giXG66uov9-H_A18mUUAfW8vxy8DRDK388n-5Cf61Sl_aC8GR52x6nJ_uQJ_V6-VaKAPpyb9o_wsoPk6VrEjf7Ucaj_0M1z2oftKTNldO8Ooo_vz3Of0C_1rwSigD1LUfj34zvX_ANHe0s0xgLFFk_mSa4zWvGviPxASNT1e5nQ_wF8L-QrAooAU5JyTmkoooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigDY8MeIbvwv4gtNWsifNgcErnh17qfY19saNq1rrmj2mp2T77e5jEiHvg9j718H173-z740cXEvhS8myjhpbMMehHLKPwyfwNAH0JRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUVzvjbxLD4T8KXurSkb412wqf45D0FAHgHx68X_wBseKRodvJutdN4cjo0pGT-Wcfga8hqa7upr27murhy80zmR2Pdick1DQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFSw28txKsUMbSSMcBVGSaAIqK7zQvhB4x14K8emG1hY_6y6JQY9fU13mm_s23TOG1LxBFGuOVgg3H8yRj8qAPB6v6Lqtxoms2mp2rFZraVZFIOOnb8elfSVl-zv4UgUG5vdTuX75kRV_IL_WtmD4IeBYSC2mSS_wDXSdv6YoA6_wAOa5b-JPD9lq1qwMdxGGI9G7j8Dmtas3RdC03w7p4sNKtVtrUMWEakkAn6k-laVABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABXzR-0F4sGpa9a-HraTMFgC8-Dw0rdj_ugf-PGvoXXtWi0LQL_AFWfHl2kDzEE_e2jIH4nivh_VtSm1jVrvUbg5luZWkY_WgClRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRWv4f8ADOreKNRWx0m0eeY9SB8qj1J7UAZFdP4X-H_iTxdMBpWnSNB_FcSYSNR9T1-gya938FfAbSNHSC81-Q6hfDDmEcQofTHVv5e1euW9vDawrDBEkUSjCogwAPpQB4v4Y_Z50yzKT-Ibxr2QYJghJWP6Z6mvWNH8OaNoEPlaTplrZrjBMMQUn6nqa1aKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKQ8DNAHi_7Qvib7F4cttAhlAkvnEkwDc-WpyPwLAflXzTXZfFHxE_iT4gapchiYIZjbwjPGxPlyPrjP41xtABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFOVSzBVBJPAAr3v4U_BhZY49d8UQ5VsNbWJHUf3n_oKAOS-HPwf1LxbJBqOpxyWejE7t7cPOPRAex9fyr6b0Pw9pPhuwFlpFjDaQ9xGuCx9WPUn3NaMcaQxrHGgVFGFVRgAU-gAoooJx1oAKK4Txh8WPDXhFZIZbkXl-v_AC627AkH0Y_w14r4j-P3ibVlaHTIYNKhP8UZMkn_AH0ePyFAH03ealZadH5l9eW9sgGS00qoPzJrjNU-MngbS2KPrIuJP7ttE8n6gY_Wvku_1jUdUnee-vbi4kf7zSSE5qjQB9Nah-0Z4bg4sdN1G5b1ZVRf_Qs_pWQ_7SkY_wBX4ec_704H9K-fKKAPfB-0pLnDeG0C_wDXyf8A4mrUX7SdsT-98Pygd9kwNfPNFAH1HY_tDeEbhV-1QajaN33whgP--Sa63SPih4M1sqtpr1srnjZcZhOfT5wK-L6UEg5FAH31DPFcRiSGVJEPRkYEH8RUlfDejeLdf0CbzdM1W5gbjID5U49QeK9W8O_tF6lb-XB4g0yC6TIBnt2MbgepXkH8MUAfR1Fc74a8ceH_ABZDv0rUI5HAy0TfK6_UV0VABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFc7461xfDngzU9SLYeOEiPHUueBXRV4f-0br7W2j6XocTc3btPKAf4VwF_Mk_lQB85O7SMWYksTkk96bRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFe1_Bf4XjWJU8SazF_oMT_AOjQsP8AXMP4j_s549-aANz4O_CWOGKDxL4itd07APaWsq8KD0dh6-gNe7gADAopaACiivKfiZ8YbTwkG0zSBHeaqync24FIPr6nrxQB2XizxxoXgyxafVbxFlKkxWynMkh9Ao7e54r5t8cfGPXvFUjW1nLJpum5OIoXw7j_AGmHP4dK4bWNZ1DXtSm1DUrl57mZizMx_QDsKz6AFJJJJOSaSiigAooooAKKKKACiiigAooooAKKKKAJra6uLKdZ7WeSGZDlZI2KsPoRXtHgT493mnrFYeKFe7twQovFGZFHq397-deI0UAfeGk6zp2u2CX2mXkN1bP0kibI-h9D7Gr9fE_g7x3rPgnUftOmzbom4ltpDlJB_Q-9fVXgX4g6T460zz7Q-TeRj99au2WQ-3qPegDrqKKKACiiigAooooAKKKKACiiigAooooAKKKKACvkL40a6db-JF6FYmGyVbaP045P6k19ZapeLp2k3l6_3beB5j9FUn-lfCupXcl_qVzdysWeaVnLHvk0AVaKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiipYYZLiZIYULyyMFVV6kntQB2Hw08DT-N_E8VsUYafB-8u5RwAoP3QfU9Pzr7BsbK306yhs7WJYreFAkaL0AFcz8OPByeCvCcGnsFN5J-8unXnLnt9B0rr6ACiivK_i_wDE1fCNh_ZOnMG1e6jPzA8QIeNx9_SgDI-Lvxc_sYTeH_D9wv285S5uUwfJ9VX_AGu3t9a-b5ZZJ5Wlldnkc5ZmOSTSSSPNI0kjFnY5ZickmmUAFFFFABRRRQAUUUUAFFaem-H9X1iUR6dpt1csenlxEj8-ldbYfBfx3f8AP9j_AGdf708yL-mSf0oA8_or1aP9n3xq_wB5tMT_AHrhv6Kaim-AXjiL7sNjL_uXP-IFAHl1FdjrHwu8ZaGhkvNEmMQGS8DLKP8Ax0muSmhlt5DHNE8bjqrqQfyNAEdFFFABRRRQAVo6Lreo-H9Si1DS7p7a5iOQ6Hr7EdCPY1nUUAfYvw4-I1j470rJKQ6pCo-0W2f_AB5fVf5V3VfCega7feG9Zt9U06Ux3EDZGOjDuD7EcV9i-BvGVj438PR6lZ_JID5c8BOTG-On09KAOnooooAKKKKACiiigAooooAKKKKACiiigDg_jJqh0v4X6uyNtknVIF_4E4Df-O5r48r6S_aP1MxeHNL01WwZ7kysPUKp_qRXzbQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFeyfALwemr69Pr93FvttPIWHPQynn9Bg_jXkFvA9zcRwRDMkjhFHqScCvtTwD4Zj8JeDbDSlA81FLzMP4pG5J_p-FAHTUUUUAc3448V2_g3wtdatOVaRAEgjJ-_IeAP6n2Br411vWb3xBrFzqmoTNNczvuZj29APQCu8-M3jn_hK_E7WNq5Onac7Rx88SP0L_4e1eZUAFFFFABRRRQAUUUUAFev_APS9E1nxBqFrqmnwXU0dv50Pm8hQGAPHQ_eFeQV6F8FdUGmfFDTQxxHdLJbt-Kkj9QKAPra3tba0jEdtbxQoOixoFH5Cp6KKACiiigArmfFHgHw74ttGi1LT0MuDsni-SRD65HX8ciumooA-QPiP8ML_wACXYmjZ7rSpTiO528qf7reh_nXn9feWqaba6xplxp97EsttOhR0boRXxb4z8NTeEvFd_o8x3CF8xv_AH0Iyp_IigDn6KKKACiiigArs_hx46uvBHiNLlSWsJiEuoezL6j0IrjKKAPvm1uoL20huraVZYJkEkbqchlIyCPwqavC_gF46-1WZ8J3rkzQBpLRifvJ1KfhyfpXulABRRRQAUUUUAFFFFABRRRQAUUUUAfMn7RV6ZvGVjabsrb2uce7HNeN13vxkvzqHxP1Zt2ViYQgemwbf5iuCoAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKAPRfgr4eTX_iLatMha3sEa6kHqRgKP--mB_CvrqvGf2eNDFn4VvNXePEl5NsVj_dX09sn9K9moAK4r4p-Lf8AhEPBV1dQyBb24BgtvUMf4vw612tfLv7QPiIan4zi0iF90OnQgOB_z1bJP_juygDyMnJyTzSUUUAFFFFABRRRQAUUUUAFaXh-_bS_EWnX6Psa3uY5Nw7YYVm0UAfZ9_8AE_wdpkKPda9aF2QPshfzGGfZc4Nclc_tDeE4s_Z7e-n_AO2e3-dfLtFAH1Fp_wC0J4Xu7lIrq2u7NWODI43Bfc4r1LT9RtNVsIb6xuI57aZd0ckbZDCvguvoP9nDV55I9W0h5WaCILPGh5C5ODigD3yiiigAr55_aP0qOO80jVlQK8qtA5H8WORX0NXiH7SMqjw7o0WxS5u2YN3ACEY_HP6UAfN9FFFABRRRQAUUUUAavhrW7jw54isdXtWxJayh8eq9GH4gkfjX25pGpQ6xpFpqNu2YbiISKfrXwdX05-z34jGoeFbvRpXJm0-UMg_6Zv0_VW_OgD2OiiigAooooAKKKKACiiigAoopG-6fpQB8QeN7j7X488QTA5VtRuCv08xsfpWBVrU7g3WqXdwess7v-bE1VoAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKK0NCsv7R1_T7LGftFzHFj13MBQB9meA9G_sHwPpGnn78dspk4xliMn9TXR0iqFAAGAOgpaAIL25Szsp7qQgJDG0jE9gBmvhnXtSk1jX7_UZXLvcTvJk-hPH6V9bfFzVW0j4Z6vMhxJKiwp_wJgD-ma-N6ACiiigAooooAKKKKACiiigAooooAKKKs2Vjdaldx2llbS3FxIdqRRKWZj7AUAVq-l_2ffC91puh3et3SbBf4WFSOSgPX86zPh38CBC0WqeLEBdSGSwzkf8DIP6V7vFHHDEkUSKkaDaqqMBR2AHYUASUUUUAFfOn7R-qpJquk6Upy0MbTOPQngfpX0HfXtvp1lNeXcqxW8Kl3djwoFfFPjjxE_ivxhqOrsWMc0pEIPaNeF_QCgDnqKKKACiiigAooooAK9K-B2snSviPbQNJtivo2t2B6E9V_UfrXmtX9FvpNM1uyvojiSCZXH50AfeFFQ2lwl3ZwXMf3JY1dfoRmpqACiiigAooooAKKKKACkf7h-lLSEZFAHwLMpWaRWGCGINR1r-KrM6f4t1izZcGG9mTH0cisigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigArs_hRai7-Juhqf-Wdwsv_fPP9K4yvRPghGZPinpoH8KSt-SmgD67ooooA8e_aLvjB4GsbRT81xfKT_uqj_1Ir5hr6I_aVkxpugRf3ppW_JV_wAa-d6ACiiigAooooAKKKKACiiigAooooA3fCvhTU_GGrpp2mRbnPLu33Y19TX1j4H-Hej-CLBI7WNZ74j97eOvzue-P7o9qy_g14Ti8N-B7e4eJRfah-_lfHzbT91c-mBn6k16LQAUUUUAFMklSKNpJGCIoyzE4AFZXiHxPpHhbTmvtXvYreIAlVY_M59FXqa-ZfiJ8YNU8X-bYWLSWWkNwYlbDTD_AGyO3tQBtfGL4rDX3bw_okn_ABLY2_0icH_XsOw_2R-v4V4xRRQAUUUUAFFFFABRRRQAUoYggjgikooA-2_h_efb_h74fuM5Y2EKsfVlQKf1BrpK4f4Pyeb8KtCb_pk6_k7D-ldxQAUUUUAFFFFABRRRQAUUUUAfJfxz0U6T8RrmdR-6vkE68d8fN-teaV9OftCeG21Dwpb63BGDJp0gEpA58tjj_wBCIr5joAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAK9Q-ATIvxOhDdWtZQv1x_hmvL69D-CUwh-KemEn7yyJ-akUAfXlFFFAHgX7SykxeHWz8oacH8Qn-FfPtfRn7ScROi6HNjhbiRc_Vf_AK1fOdABRRRQAUUUUAFFFFABRRRQAVa06EXGp2kLDKyTIh_FgKq1d0l_L1mxf-7cRn_x4UAfdVnGIbG3iUYVI1UD0wAKsVFbtutom_vID-lS0AFcf8RPHVt4E8OtfOizXcp2W0BbG9vU-wHP6V2FfLP7QGrSXnj5bDeTDZW6hVzwGYbj_SgDgPEvinVfFmrSajqtwZZGPyoOFQegHpWLRRQAUUUUAFFFFABRRRQAUUUUAFFFFAH2B8FVK_CXRA3XEx_AzPiu_rivhLEYfhboKkEZgLfmxP8AWu1oAKKKKACiiigAooooAKKKKAKWrabBrGkXem3IzBdRNE_sCMZr4n8V-Hbvwr4ku9IvFw8LfKR0ZT0Ir7lryz4xfDf_AIS_TF1TTo_-JvZoQFUf69Ou0-47fU0AfKdFPdGjdkcFWUkEHqDTKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAK6v4a3gsfiNoMrHCtexoT6BmA_rXKVYsrp7G_t7uL78EiyL9Qc0Afe9FQ206XNtFPGcpKgdT7EZqagDyn9oKx-1fDhJgMm1vY5M-gKsv_swr5Wr7Y-IWj_274C1iw2bmeAuoH95CGH8q-KGUqSD1HUUAJRRRQAUUUUAFFFFABRRRQAVLBJ5U8cn9xg35GoqKAPvLSJludHsp0bckkCMCO-VFXa858E_ELwtF4L0mO98Q6dBcx26pJHLcKrKRxyCa3_-Fj-C_wDoaNK_8Ck_xoA6evkD40f8lT1b_gH_AKCK-mP-Fj-C_wDoaNK_8Ck_xr5d-LGo2Wq_EXUrzT7qK5tpNu2WJgynCgcEUAcTRRRQAUUUUAFFFFABRRRQAUUUUAFORC7qo6scU2t3wbpB13xhpemhGYTXChgP7o5P6CgD7I8IWf2DwZoloRgw2ECH6hBn9a2qaihECqMKowB6CnUAFFFFABRRRQAUUUUAFFFFABRRRQB5R8TPg7b-LXk1PRjDaasQS4b5Un-uOh96-a9d8O6t4bvms9XsZbWYHjeOG9wehH0r7rrG8QeF9H8U2DWer2aXEeDtY8MnurdRQB8M0V7R4x-AGp6b5t14dmN_bDnyHx5oHoMcN-VePXdncWNy9vdQyQzIcMki4IoAgooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKAPsv4U6x_bXw30idmDSRQi3f6p8v8ASu0r57_Zz8RkXOpeHJW4ZPtUOT0IIVh_48D-FfQlADZEEiMjDKsMGviXx3ocnh7xvqumydEnZ0OMZVvmX9DX25Xz1-0X4aZbvT_EkKfK6fZp8eoJKk_nj8KAPBaKKKACiiigAooooAKKKKACiiigAor2r4c_A46_p0Wr-Ippra1l-aG2iwHdfViegr162-Efga1gES6BC4xgs8jsT-OaAPjeivq3X_gN4S1WFzp6T6ZcY-VoX3Jn3Vs_oRXzj4s8Jal4N1uTTNSQbhzHIv3ZF7MKAMCiiigAooooAKKKKACiiigAooooAK9h_Z70Fr7xjdaswPk6fBgHHV3OB-gavHq-ufgt4a_4R7wDBJKm251BvtMmeoBACj8ufxoA9GooooAKKKKACiiigAooooAKKKKACiiigAooooAMVheI_CGheK7QQaxp8Nxj7khXDp9GHIrdooA-efE37Otyhebw5qKSp1W2ujtb6Bun54ryLXPB_iHw25XV9JubUf32XKH6MMg_nX3HUFza295C0NzBHNEwwySKGB_A0AfA9FfW3iD4H-D9dleaOCfTpm5LWjgAn3VgR-WK81139nTWLVXl0bVIL1RyI5k8psfXJB_SgDxOiuh1vwR4j8POw1PSbiFF_wCWm3KH6GufIIOD1oASiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooA6XwFrzeGvG-l6nuZY45gsuD1RvlI_WvteKRZYkkQ5VgGB9Qa-BK-tfgt4vbxN4KS3uXDX2nMIJOeWT-Bvy4_4DQB6TWN4q0GDxN4avtIuANtzEVVj_AAt_C34HFbNFAHwRfWVxpt_PZXUZjuIJDHIh7MDg1Xr3n4_-BVgdPFdhFhHYR3iqOAx6P-PT8q8GoAKKKKACiiigAooooAK6_wCGGhReIviHpVhcR77YyGSZfVUUt_MCuQrv_gvqI074paUWICT-ZAc_7SHH64oA-vkVY0VFACqMADsKdRRQAV5L-0Do8V54AGpeWDNY3CMH9FY7SPzI_KvWa8w-PWpx2Xw0uLRmUPfTxRKp6kKwc4_75FAHyhRRRQAUUUUAFFFFABRRRQAUUUoBYgAZJ7UAdd8NPCz-LPG9hYlM2sb-dcnHAjXk_mQB-NfZscaxRLGihUQBVA6ACvPPg94HXwl4TiuLqIDU75RLOSOUU9E_Dv716NQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUANZQykEAg9Qa5vU_h_4S1gs154f09nbkyJAqOf8AgS4NdNRQB5Jqn7PvhS7VjYy3li55G196j8G_xriNW_Zy1iFC-l6pbXIHSOUFGP8ASvpKigD431D4ReOdOJ8zQLiVR0MDJLn8FJNc3d-HtasWYXej38BU4Pm2zr_MV92Uxo0cYZVI9xQB8CEFSQQQR2NJmvum88M6HqBY3elWkxbqWiGTXNX_AMH_AARqDs50WOB26mBin6dKAPjyivp-8_Z38KTsWtr3UrcntvRh_wCg_wBayZ_2a7Bifs_iS4j_AOulqH_kwoA-dqK90m_Zrv0_1PiS3k_3rUr_AOzGs6f9nLxOv-o1TS5PTczrn_x00AeOUV6ZN8B_HEXS2tJP-udxn-Yqi_wY8doTjRi3-7Kv9TQBwNFdy3we8eL_AMy_MfpLH_8AFVUl-F_jeFiH8N32R_dUMPzBoA5GiunPw78YKMnw9fj_ALZ1C3gTxUn3tBvh_wBs6AOdordPgzxKpwdEvQf-uRpR4J8THpod9_36NAGDRXRDwH4qPTQb7_v0aePh94tPTw_ff9-6AOaorqU-G3jOQ_J4cvz_ANs60k-Dfjx-ugyL_vSp_jQBwlFeix_A_wAdSddNjT_emWrUfwD8bv1hsU_3rj_61AHmFFexwfs5eJ2AM-p6XH67Wdv_AGUVow_s1X7Y87xJbp67LUtj_wAeFAHhdFfRMH7NViv_AB8eJJ5P9y0Cf-zGtez_AGdvCkJBub3U7gjt5ioD_wCO_wBaAPmCu1-F3jD_AIQ3xjBdyuRYz4hugOfkJ-9j1HWvoi0-C3ga0YE6UZ8f89pCf5YrftfAvhayx9n0GwTHpCP60AdArh1DKQVPII706mqoRQqgBQMACnUAVNT0611fTbjT72JZba4QpIh7j_Gvjr4i-CLnwP4mksnDNZzfvLWY9HT0-oPB_wDr19oVzPjjwbYeNvD8mnXgCyj5oJwMmN_UUAfE1Fa3iPw7qHhfWrjS9SiKTRMRns47MPY1k0AFFFFABRRRQAVLbzyWtzFcQsUlicOjDsQcioqKAPqj4ffGfRdesILTW7tLDVVGxjNxHLj-IN0H44r1CO7t5k3RTxOp7q4Ir4Hq0mpXyLtS9uFUdllYf1oA-1te8Z-HvDVq0-qapbxADhFbe5-irk18qfEjx7ceO9f-1YeKxgyttCx-6vcn3OBXHSzSztulleRvV2JP61HQAUUUUAFFFFABRRRQAUUUUAFex_BH4cf29qH_AAkOq2-dNtXxArjiaQYPTuB_OuW-Gvw7vPHOtKGDQ6XAd1xPjqP7q-pNfXOmaba6RptvYWUQjt4ECIo9KALlFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQBx3j_4faZ460hoZ0WK_jGbe6A-ZD6H1U-lfJfiXwvqnhPV5NN1W2aKVeUYj5ZF9VPcV9y1g-K_CGk-MdKNhqkAYDJjlA-eM-oNAHw9ijFd749-FmteCrl5ShvNMJPl3cSEAD0YfwmuCoAKKKKACiiigAooooAKKKKACiiigAooooAKKKcqs7BVUsx6ADJNADa7v4d_DTUvHV8H2vb6XGwE10Rx_ur6mur-HXwPvdZeLVPEga0sB8yWxH7yb6_3R-tfR2nadZ6TZR2djbx29vGMJHGuAKAIND0LTvDmlQ6bpdslvbRDAVRyT3JPcn1rSoooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAiuLeG6geC4iSWGQbXjdQysPQg9a8b8dfAXTtT3XvhkrY3RJLWzMfKf6f3T-le00UAfDXiDwnrnhe6Nvq-mz2xzgSMh2N_ut0P4Vi198XlnbX9q9tdwRzwOMNHIoZWHuDXlviX4CeGtX3S6XJJpVwf7g3x_8AfPH86APlmivU9Z-AnjHTmdrNLXUYV5UwS7XI_wB1sc_ia4PUfDGuaTL5d_pN3A3-3Ecfn0oAyKKVlKNhlIPoRikoAKKKKACipI4ZJWxGjOfRRmt_SfAfinXCn9n6JdyK5wHZNi_m2BQBzlFey6F-zv4hu5A2sX1pYQ91jJlk_LgfrXrPhj4PeE_DbJN9j-3XS8-bdYbB9QvQUAfOfhP4ZeJvF0iNZ2EkFoet1cKUjx6gn734V9D-Cfg_4e8JJFczwrqOqDk3E4yqH_YXoPr1r0REWNQqKFUdABgCnUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUCigUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABUcsMUyFZY0dfRlBFSUh6GgDg_HegaN_Zxm_siw83afn-zJn88V8_69Y2kany7WBf8AdjAr6R8d_wDIIP0NfOviH7p_GgDibaNDesCikZ6Yr0Tw7p1jNNGJbK3fLDO6JT_SvPbX_j_b616Z4Y_10X-8KAPftC0PSLbTY2g0uxiY9Sluin9BW9GAqKAAAB0FUNJ_5BcVaCfdH0oAWiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooA__9lxZWxlbWVudElkZW50aWZpZXJocG9ydHJhaXTYGFkBOaRmcmFuZG9tUFpDP8ZbS8p7gvNqPhsBuxtoZGlnZXN0SUQYGGxlbGVtZW50VmFsdWWCpGVjb2Rlc4KhZGNvZGViNzijZGNvZGVjUzAyZHNpZ25iPD1ldmFsdWUFamlzc3VlX2RhdGXZA-xqMjAwMC0wMS0wMWtleHBpcnlfZGF0ZdkD7GoyMDQwLTEyLTMxdXZlaGljbGVfY2F0ZWdvcnlfY29kZWFCpGVjb2Rlc4GjZGNvZGVjUzAzZHNpZ25iPD1ldmFsdWUYfWppc3N1ZV9kYXRl2QPsajIwMDAtMDEtMDFrZXhwaXJ5X2RhdGXZA-xqMjA0MC0xMi0zMXV2ZWhpY2xlX2NhdGVnb3J5X2NvZGVhQXFlbGVtZW50SWRlbnRpZmllcnJkcml2aW5nX3ByaXZpbGVnZXPYGFhcpGZyYW5kb21QHqI8VkBLwzlwYfrjWgpXZWhkaWdlc3RJRBZsZWxlbWVudFZhbHVlYkdScWVsZW1lbnRJZGVudGlmaWVydnVuX2Rpc3Rpbmd1aXNoaW5nX3NpZ27YGFhlpGZyYW5kb21QWGi-IWIgI_MtB-XClGpUWmhkaWdlc3RJRBgZbGVsZW1lbnRWYWx1ZWsxMjM0NTY3ODkwMHFlbGVtZW50SWRlbnRpZmllcnVhZG1pbmlzdHJhdGl2ZV9udW1iZXLYGFhHpGZyYW5kb21Qvj-vEOMpE20BhGOsgw3NG2hkaWdlc3RJRARsZWxlbWVudFZhbHVlAXFlbGVtZW50SWRlbnRpZmllcmNzZXjYGFhLpGZyYW5kb21QDPGSYfh4CXqcpOUZ3ZgndmhkaWdlc3RJRAVsZWxlbWVudFZhbHVlGK9xZWxlbWVudElkZW50aWZpZXJmaGVpZ2h02BhYS6RmcmFuZG9tUJFULTOmLe9KkJPIfGCxQtJoZGlnZXN0SUQGbGVsZW1lbnRWYWx1ZRhQcWVsZW1lbnRJZGVudGlmaWVyZndlaWdodNgYWFOkZnJhbmRvbVDEK7lr9QVxKVMi8R9-RxUFaGRpZ2VzdElEB2xlbGVtZW50VmFsdWVlYnJvd25xZWxlbWVudElkZW50aWZpZXJqZXllX2NvbG91ctgYWFOkZnJhbmRvbVAbvkx1Ji4LfD6B59eub3a2aGRpZ2VzdElECGxlbGVtZW50VmFsdWVkZ3JleXFlbGVtZW50SWRlbnRpZmllcmtoYWlyX2NvbG91ctgYWFGkZnJhbmRvbVCbpvYAX4VVa4zWtDFFIL6uaGRpZ2VzdElEDmxlbGVtZW50VmFsdWViR1JxZWxlbWVudElkZW50aWZpZXJrbmF0aW9uYWxpdHnYGFhWpGZyYW5kb21QGS8bDjntE11XrCOvfFkfMWhkaWdlc3RJRAlsZWxlbWVudFZhbHVlYkdScWVsZW1lbnRJZGVudGlmaWVycHJlc2lkZW50X2NvdW50cnnYGFhzpGZyYW5kb21QQU8jvEa8UzdJrK4W2Eya02hkaWdlc3RJRA9sZWxlbWVudFZhbHVlcM6TzrXPic-BzrPOr86_z4VxZWxlbWVudElkZW50aWZpZXJ4HmZhbWlseV9uYW1lX25hdGlvbmFsX2NoYXJhY3RlctgYWHKkZnJhbmRvbVCi9XKLIUe-d3W8n-LJx0ROaGRpZ2VzdElEEGxlbGVtZW50VmFsdWVwzpPOtc-Oz4HOs865zr_PgnFlbGVtZW50SWRlbnRpZmllcngdZ2l2ZW5fbmFtZV9uYXRpb25hbF9jaGFyYWN0ZXLYGFk1jaRmcmFuZG9tUGEgfv6B0yTHYlUB_kH5zYVoZGlnZXN0SUQRbGVsZW1lbnRWYWx1ZVk1M__Y_-EBPWh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8APD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSIiID8-Cgo8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiID4KPHJkZjpEZXNjcmlwdGlvbiB4bWxuczpBc3Bvc2VJbWFnaW5nPSJodHRwczovL3Byb2R1Y3RzLmFzcG9zZS5jb20vaW1hZ2luZy8iPgo8QXNwb3NlSW1hZ2luZzpJbWFnZVF1YWxpdHk-NzU8L0FzcG9zZUltYWdpbmc6SW1hZ2VRdWFsaXR5PjwvcmRmOkRlc2NyaXB0aW9uPgoNCjwvcmRmOlJERj4KPD94cGFja2V0IGVuZD0ncic_Pv_bAEMACAYGBwYFCAcHBwkJCAoMFA0MCwsMGRITDxQdGh8eHRocHCAkLicgIiwjHBwoNyksMDE0NDQfJzk9ODI8LjM0Mv_bAEMBCQkJDAsMGA0NGDIhHCEyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMv_AABEIAMIB2gMBIgACEQEDEQH_xAAfAAABBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgv_xAC1EAACAQMDAgQDBQUEBAAAAX0BAgMABBEFEiExQQYTUWEHInEUMoGRoQgjQrHBFVLR8CQzYnKCCQoWFxgZGiUmJygpKjQ1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4eLj5OXm5-jp6vHy8_T19vf4-fr_xAAfAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJCgv_xAC1EQACAQIEBAMEBwUEBAABAncAAQIDEQQFITEGEkFRB2FxEyIygQgUQpGhscEJIzNS8BVictEKFiQ04SXxFxgZGiYnKCkqNTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2dri4-Tl5ufo6ery8_T19vf4-fr_2gAMAwEAAhEDEQA_APfqq3JIkH0oNy4bGBTlUTjc3BHHFADISfNFW6rmJYVMi5yOmaT7S3otADJCd7c96mtyTuzTRAGAYk5PJxSN_o-NvOeuaALD_cb6VR3v61KJy5CEDB4OKl-zr6mgBYDmIUlwSEGPWojIYT5a4wPWlDGc7G4HXigCHe_rV-ovs6-pqP7S3otABcEiQY9KbCT5o5pygT5ZuCOOKcYkhBkGcj1oAnqnKT5rc0_7S3otOEIkAck5PPFACW5JZs-lTv8A6s_Sq7f6Pgrznrmk89jgEDB4oAi3v61bhJMQz60n2dfU1EZTC3lrggetAE05Ij49aqb39amDGc7GwB14qT7OvqaAJR0FV7kkEY9Kb9oYcYXilUefktxjgYoAZCT5o571cquYRGDICcjnmk-0t6LQAyUnzTz3qS2JJbPpQIRIBIScnnikYfZ8Fec8HNAFk9D9Kob39al89zxgc8VL9nX1NACwEmPn1onJERxURcwHy1wR70gYzny2wB14oAi3v61fHQfSovs6-pqLz3HGBxxQA65JBXHpUcZPmrz3p6j7RktxjpinGIRgsCcjkZoAnqnMT5p570_7S3otOEKSgSHOTzxQA23JMhz6VZPQ1WYeRgryTwc0n2hjxheaAIt7-tW4CTHz60n2dfU1GWMB2LgjrzQBLMcRH61U3v61KJTM3ltjB9Kl-zr6mgCRP9WPpUNySCuKZ57LlQBgcClX_SOW4x0xQAyInzV5q5UBhEYLgnI55pv2lvRaAGzE-aeadbkmQ59KcIkmAkOcn0oYCD515J45oAnqhvf1qb7S3otSfZ19TQAW5JQ59aWc4iNRFjAdq8g880glMxEbYwfSgCLe_rV5PuL9Kj-zr6mojOUJQAYHAzQBJcEjbioYyfMHPenr_pGd3GOmKUwBAWBORyM0AWKKrfaW9Fp_nN6CgCIwyEnj9afGRECH4JqxVW5_1g-lAEjsroUU5Y9qh8iT-5-tFv8A64VcoAhEqKApOCBg0yb99jZzjrUcv-tf61La_wAdADBC4IJHAPPNT-en979KfJ9xvpVCgCZ0MjllGVPeiMGE7pOBjFTQf6laS5_1Y-tAC-en979Kr-RJ_c_Wo60PSgCCIiEEPwSaV5EkUopyT2plz98fSmRf61frQAeRJ_c_Wp1kRQFJwQOlS1Sl_wBa_wBaAJZf32NnOOtMEMgIJHAOTzT7bq9Tv_qz9KAGeen979KhkjLuWUZB71DVyD_VD60AQxKYZNzjAxjNTeen979KS5_1X41UoAk8mQ5OP1qWIiEEPwSanHQfSqt199aAJGkSVCqnJPaofIk_ufrSQ_61frV2gCJZFVArHBA5FMkImACckHPpUU3-tb60-1-8fpQA0QyBgSOAcnmrHnp_e_SpD901n0ATSqZpNyDIxjNEamN9zjA9ay9Z8U6J4YsvP1jUoLQHkKxy7fRRyfwrze8-MGr-IZXsvAfhm6v2Bw13cp8g_AcD8SPpQB7H5qHof0rLm1Cyt5Nkt9bRyE8JJMoJ_M15R_wgPxC8U_vPFPi02MLNk2lnzj8sD-dP1f4MeCfD3hu91PVLnUpfs8Jd5nnAJOOMAL1JwMc9aAPYoXWNcsRhuQQc5p7SIyFVOSRwK8w-CY1D_hW9s98ztE88ptRIekXA_LdmvSIv9an1oAXyJP7n61MsiRIFY4I7VNVKb_Wt9aAJpSJgAnJBqLyZBg4_WnWv32q0eh-lAEfnp_e_SoZQZjuTkY61DVu2_wBV-NAEUcZRwzDAHepvPT-9-lE_-qP1qnQBKYXJJA4J45p8f7nO_jPSp0-4v0qC56pQA9pEYFQckjpUHkSf3P1pIv8AWp9au0AQrKqIFY4YdqSUiYAJyQaim_1pp9t98_SgBnkSf3P1qx56f3v0qT1rPoAmlBmO6PkYxQiGNwzDCjvUtt_qz9aWf_UtQAeen979KgMLkkgcE8c1FV-P7i_SgCCP9znfxnp3p5kRwVB5PFNuv4agi_1i_WgB3kSf3P1qXym9KnooApmRsn5m_OpIAGTLDcc9TTjb5Od36Uzd9n-XG7POaAHzALEWUAEdCKg81v7zfnUvmeb-7xjPfOaPsv8AtfpQBIiKUBKgkjkkVFP-6xt-XPXFHn-X8m3OOM5o_wCPj_Zx-NADEZi4BYkE4IJq15af3V_KoPI2fNuzt5xil-1f7P60AMlLJIQpIHoKWElpMMSRjoaXyvP_AHmcZ7Yo2_Z_mzu7YoAn8tP7q_lVTzW_vN-dS_av9n9aPsv-1-lACwAMpLfMc96c6hYyQACOhAqPP2f5fvZ5o87zv3eMZ75oAj81v7zfnVlEBQEgEkckio_sv-1-lJ5_l_u9uccZzQAT_utm35cnnFRB2JALHBODzUuftHH3cfjR9n2_Nv6c9KAJ_LT-6v5VWmJWQhSQMdBT_tX-z-tJ5Xn_ALzOM9qAEhJaTDEkY6GrHlp_dX8qg2eR-8zn2pftX-z-tAEJkbJ-ZuvrU8H7xSW-bB4zR9nzzv6-1Nz9n4-9nmgCV1AQkAAgcECq3mt_eb86k83zf3eMZ75zS_Zf9r9KAJI1BjBIBJHJIqOf5EG35cnnHFZmt-I9L8MWDXWr3kVrAvALHlvYDqT9K8sufiB4w-IdxJYeA9LksrAHbJqlzwfwPRfoMn6UAeheJPG-h-EIPM1jUlikIysCHdK30UfzOBXnp8Z-PfiGxh8H6OdH0tzg6jdDkj2PT_vkE-9bnhj4MaTpd1_aevzSa5qrHe8lzkxg_Q9fqc_QV6RHMscYVYgqgcKO1AHl2h_BTSLO7-3-JbmfXtQb5na4JEWfp1b8T-FelWNtDaRpbW0MUMCjCxRqFUfgKsbPP_eZx7U0hbZWmZwFUZJJwAP8BQBNIYoozI-1UUZJPQCvCdd1G8-MPi1fD-jyyR-FrCTzLu7XpMR6fyUfjVnxL4m1T4qa1J4U8JSNDokZ_wCJhqPIDrnkA-nt_F9K9U8O-FtO8L6NDpWmpsij5diPmkfuxPc0AXtMsraxsYrK2hSO2t1EcUYHCqBirkigRkgAEDggVFn7Px97PNHneZ-724zxnOaAI_Nb-8351YRQ0YJAJI5JFM-y_wC1-lJ5vlfu8Zx3zigB04CAFflJPaoBI2R8zdfWpc_aOPu45p32fHO_p7UAS-Wn91fyqvMSsmFJAx0FO-1f7P60mzz_AN5nHtQA2ElpAGJIx0NWfLT-6v5VB5XkfvM5x2pftX-z-tAEJdgSAxwDgc1LB-9zu-bHTNH2ff8APv689KP-Pfj72aAJXQBCQACBwQKrea395vzqTz_M_d7cZ4zml-y_7X6UAPRQ0YLAEnuRTZwFUFflOe1N87yf3eM475oz9o-XG3HOaAI_Nb-8351b8tP7q_lUP2X_AGv0o-1f7P60ANmJWQBSQMdBSRF2kAYkg9jTtn2j5s7ccYo8ryP3mc47YoAn8tP7q_lVV2YOQGIAOAAak-1f7P60nkb_AJt2N3OMUAEH73O75sdM1KyIFJAAIHUCov8Aj3_2s_hR5_mfLtxnjOaAI_Nb-8350_e3qfzp32X_AGv0p_k-_wClAEm9f7w_Oq04LuCoyMdRUTdTVm2_1Z-tAEUIIkBIIHqRirW9P7w_OmT_AOpaqdAEjK5ckAkE5BAp8HyZ3cZ6ZqxH_q1-lQ3X8NAD2YMhAYZI7Gqnlv8A3G_KiP8A1ifWr9AEMJCRAEgH0PFE5DJhTk56Cobj_XGlt_8AWn6UAR-W_wDcb8qvb0_vD86Ws_1oAmny0gK8jHamxBhKCQQB1JGKltPuN9afN_qmoAfvT-8PzqoysZCQCQT1AqOr0X-qX6UAQQfKTu4yO9TFlIIDDp61Hc9E-tV0--KADy3_ALjflVmEhYgGIB9DU1U5_wDWn6UATTENHhSCc9BVby3_ALjflUlr_rfwq3QA0OmB8w_Oq8_zEbeeO1QnqfrXN-LPiFoXgiyLahceZeMuYrOI5lf0-g9z-tAHTMyQKZp2EUSDLMxwAPcntXmHiH4wPd350LwHYvrGpscfaQMwp7j1-pwPc1kR6N43-LTi716aXQvDW7dHZx_fmH0PX6tx6CvT_D_hrSPC9gLPSLKO3THzuOWf3ZupNAHn-i_CG61W-Gt-PtRl1a_b5haqx8pPYkdR7LgfWvV7C2gsIFt4IY7eCMbY4412qPoKuRf6pPpUVz9xPrQBIWXB-YdPWqflv_cb8qB1T603VdXstD06bUNSukt7aEZZ5Dx_9c-woAmkuYLOzkuLqVYYYgXkeQ4CjuTntXi-u-INa-L-rSeHPCpktfDcTYvdRKkeaPT6HsvU9TgVDdT698bNVeC3M2leDreT95KRhrgj-Z9ui98mvXtA0bT_AA_YQ6ZpVstvbRDhR39ye5PrQBW8OeGrDwvo8WmaZbGOFeXcj5pX_vMe9dCGXA-YdPWn1QPV_rQBNP8AMRt5wO1MjDhwSCADySKltuj_AFqSb_Ut9KAHb0_vD86qShjKSASD0IGajq9F_qk-lAFeD5Sd3HHerBdMH5h-dRXf-rH1qsOo-tAC-W_9xvyqzCQseGIBz0NTVUuv9b-FAEsxDREKQT6Cq3lv_cb8qfB_rR9KuUAMVlCgFhkD1qGf5yNvOOuKhf8A1h-tWLXo_wBaAIlVhICQQAepFW96f3h-dJL_AKpvpVGgCWQOZCQCQehAzSwZWQluBjvU0H-pWm3P3B9aAJd6f3h-dUfLf-435UnpWhQBXgIRCGODnoadMQ8RAIJ9BzUdz_rh9KbB_rxQAzy3_uN-VW1YKgBYZA7mpKoSf6x_rQBNP8-NvOOuKYquHBIIAOSSKltf4qlf_Vt9DQAu9P7w_Ol3D1H51n1NQBN5EZ7frUMhMJCJwCPrUpuEHr-VRsDOdy9BxzQAiSl3CscqfapvIj9P1qERmEiRsYHXFS_aE_2vyoAhMzIxUHgH0p0f7_O_nHTtSGFnJYYwTnmlT_R87u_TFAEhiRQSByBkc1B58nr-lTGdHBUZyeORUX2Z_b86AJURJFDsMsetJKBCm5ODSCVYR5bZyPShmE6bVznPegCPz5PX9KseRH6frUH2Z_b86m-0J_tflQBHKTEQE4BHNNSV5HCMcqevGKcwM53L0HHNIIzCRI2MDrigCbyI_T9agMroSoPAOBxU32hP9r8qiMJlJcYweRmgBU_f5EvOPwqQwoASByBxzUa_uMlu_TFSGZCCBnJ46UAQefJ6_pUqKky725J4qP7M_t-dSLIIV8tuo9KACVRCu5ODmq0t0IIZJ55ViiQbndmACj3J7VkeK_GWjeEtJN3q9z5Wf9VCnMkx9FH9eg9a8tj0zxd8ZJ1uL9pdE8Jh8xwKfnnHY_7R9zwOwNAGnrvxNv8AxJqTeHvh1aPeXR4l1Ij93Fz1GeP-BH8Aa1fCPwnstBvBrOuTf2xrsh8xppvmjib2B6n_AGj-AFdpoGh6P4X0xNP0i0W2hTrgfM59Se5-tajDzyCvQdc0ANjleQhGOQevFT-RH6frUIhMREhxgdcVL9oT_a_KgCF5XUlVOADgcU6ImYkPyB0pDCZSXGMHpmuC8cfEyy8Hn-zbGMalr83yxWkXzbCehkx_6COT7daAN_xb4s0XwXpTX-qTYY_6m3U5kmb0A_r0FeY6ZoHiD4t6hFrviwvY-Hozvs9OQlfMHr9D_ePJ7YFanhT4cXmr6qvirx_Kb3VJDuhsH5ig9Nw6cf3RwO-TXq_2duPu8cCgBmn2FrZ2MNtbQRwQQjZFFEu1VA9BU8iiFdycHpSKwgGxs59qGYTDy1zn3oAj8-T1_SpxDGRkjk89ah-zP7fnWVrfjTw74bjP9q6tbWzgf6stmQ_8BHNAGvKTCQE4z1pqyu5CseCcHivItT-OttfXH2PwnoF9q11_CzqQP--Rkn8cV3fgq78SX-h_a_E-nw2N75p2Qx8Ex44yMnB68UAdT5Efp-tQSSvGSinAHTipvtCf7X5VEYTKTIMYPTNACxEzEh-QOlS-TGOcdPeokBgJLdDwMVJ9ojPHzc-1AEHnyev6VLEomTc_JqP7M_t-dPVhANjZz7UAK6pCpdRgiovPk9f0qVpBMvlr1PrUf2Z_b86AJhCpAJHJ681HL-4xs4z1p4nRAFOcjjpTW_f4K9vWgBgldyFJ4JweKn8iP0_WoRCYiHOMDk4qX7Qn-1-VAETuYiVU4UdOM0REzEh-QBkUGMzEyLjB6ZpVBgJZuh9KAJfIj9P1qv58nr-lT_aE_wBr8qh-zP7fnQBJEBMm5-TSugjjLKMMOlIrCAbW6nnikMqSrsXOT0zQBH58nr-lTiJGAJHJGTzUP2Z_b86lE6IApzkccCgBkv7jGzjPWmiVmYKTwTzxTn_0jG3t1zSCBlcMcYHJxQBN5Efp-tL5S-n6037Qn-1-VO85fegCm3U1Ztv9WfrU1Vrn74-lAEs_-paqdSQ_60Vc4oASP_Vr9Khuv4ahl_1r_WpbX-OgCCP_AFifWr9I_wBxvpVDmgCS4_1xpbf_AFp-lTwf6laS5_1Y-tAEtZ_rRWhxQBBafcb60-b_AFTVFc_fH0pkP-tH1oAjq9F_ql-lO4qjL_rm-tAE9z0T61XT74qe3-830p08scMDyzMqRqpLMxwAPegCavL_AB58UbTQLxtF0OH-1PEEhEaQxjcsbH-9jqf9kfjiue1_x9rPjbU5PDHw_EnldLrVfuhF77D_AAj36nt613HgL4c6T4MtfPiX7Vqso_fX0o-Y-oX0H6nvQBy_hP4V3GoauviTx7cHUtVk-ZbNzmKH0B7HH90cD3r19VCKEUAAdABwKZc_6r8aqc0AB6n61atfut9amHQVWufvj6UATy_6p_pVAlIwXYhVUZLk4AH-FUda8QaZ4a059S1a7W3t4-56ufQDufYV5PLc-K_jVcGGyEui-Dw-HkcfvLjH_oR9h8o7kmgDT8QfErVPEWonwv8ADyE3N4w2z6kPuQjodpPYf3j-AJrofBXwzsPBqfb7l_7R1yY5mvpecE9dmen16n9K3_D_AIX0nwlp66fpNsIYs5kdvvSn1Y960LrVLDSLZrrUr2G0hA5eeQIP1oAlHVPrV-vI_EHx88O2Ba30W2uNXuDwpVdkRP1PJ_AVzf2j4uePj-6Q6Bpsn8fMHH1P7w_higD17xF4p0Lw4DJq-qW9rxwjtlj9FHJrzXUfjzatcfZfCuh3mq3TcK0ilQfooyx_SrOgfAPRomF54g1C61a6Jy4yY4yf_Qj-Yr03T9B0rQbPyNK0-3s4h2gjCk_U9_xoA8gGk_GLxxzqN8nh-wf_AJZo3lHH0XLfmRWpovwL8NWEvn6vPdavc5y3mt5cefoOT-Jr1Hn1NXx0H0oAzNG0nTtItTb6bY29pEP4YYgo_TrWlL_qn-lV7r7w-lMi_wBan1oAZV6L_VJ9KdxVOb_Wn60AS3f-rH1qsOo-tT233z9KsnoaACql1_rfwqLmrdt_qvxoAgg_1o-lXKjn_wBUfrVPmgBX_wBYfrVi16P9amT7i_SoLj7y_SgCaX_VN9Ko06L_AFy_Wr3FAEcH-pWm3P3B9ahm_wBaafbffP0oAg9K0KOKz6AJrn_XD6U2D_Xip7b_AFZ-tLP_AKlqAJKoSf6x_rSc1fT7i_SgCG1_iqV_9W30NQ3P8NQxf6xfrQA2pqtcUUAQG4IOMCgKJ_mbgjjiozE-T8pp8REKkPwSc4oADGIQZASSOxpPtLei0-VlkQopyx7VD5Mn900ASCBW-Yk5PJxSH_R8bec-tSK6KApOCBjFRzfvcbOcdcUAJ55fCkDDcGn_AGZfU1EInBBKYAOTVrzo_wC-KAK5lMJ8sAED1pQxn-VuB14psiPI5ZRlT0NLEDCdzjAx1oAf9mX1NN-0t6LU_nR_3xVXyZP7poAeB9o-ZuCOOKUwiEeYCSR60QkQgh-CTTpHWRCinJPagBn2lvRaUQLIA5JyeTio_Jk_umqHiDxLpnhbRpNS1ScRRIMAA5Z2_ugdzQBLq-q2Ph3TpdR1G6SC1iHzPIensPUn0rxue78R_GvUntbMy6V4Phl2ySn785z-p9ug75NLp-j658aNaTWteEtl4Wgb_RLJDgzf57t-Ar2ix0-LTbSG1tLaOC1hAWOKMYCgUAVfD_hbSvDGkx6bpVuIIF5J_ic-rHua0jIYT5YAIHrU_nR_3xVeRC7llGR60AKGM58tsAe1O-zL6mmRAxSbnGBjrSy3dvb27zTzLFDGNzyOcBR7k0AJ9pI4wOK4fx18TNK8JILRVN_rT8Q2EJ5BPTzMdB7dT6VwPjr41rcSyaP4UuFiUkpLqj8AD_pmP_ZuvoK4vSPHGi-DS91o2nHVtdk_1mq6lnCk_wDPNM5_EkE0Aek6J8OtY8X6gvib4izkhBug0sHakadfm_uj26nua6bXPi14O8J2_wBjiuY7mWEbVtbABguO2egrx6C1-J3xYfdJNOunt_HIfItx9APvfrXSQeAPh34DAn8Ya1Bf3y8m0U8Kf-ua_OfxwPagCKf4q-O_G13JaeDdDe3jJwZ0TzWX6yH5Vq3YfA7WNZul1Dxt4gllkJyYYnMj_TzDwPwBqwfjNNc-XpHw_wDCTzBOFLJhV_7Zp0HuSK9e02a-u9Hs5NRgSG_aINPDEchGxyAaAMnw94L8N-GFQaTpUEMvTz2G6X_vo8_lium-zD-8ahEUgcErwDk1a86P--KAIC5hPljBHvQHMx8s4A9qSUGWTcgyMdaIlMb7mGBjrQA_7MvqaZ9oI4wOKsedH_fFVTFIXJC8E5FADwPtGS3GOOKUwiMGQEkjkZpIT5OQ_GTxT2lSRCqnJI6UAM-0t6LSiESr5hJBPpUfkyf3TU6yIqhWOCOooAjI-z8rznjmk-0k8YHNOmImACckGo_Jk4-U0AS_Zl9TTSxgOxcEdean86P--KrygyybkGRjrQAokMx8sgAH0p32ZfU1Tu7-z0iI3WpXcFpCo5kmlCj9a4HXfjt4P0relnLPqcw6C2TCf99Nj9M0Aej-eV-QAccUo_0jJbjHTFeE_wDCzviJ4skI8K-FjBC3SZojJ_4-2FqUeCPi_reX1XxUunI3Pli5IP5RDH60Ae5mAJlwSSORmm_aW9FrxGP4S-PbYmS08fyNN_dM8yg_rVm28PfG21byB4gsZIunmSsr_wA0zQB7OIhMBISQT6U0j7P8y8k8c1zXhnSPEVgVn8Q-J21CUIR9mhto4ohn3xuJ_L6V00xEwATkg0AJ9pb0WnfZl9TUXkyf3TVrzo_74oAgLGD5V5B55pBKZm8sgAHuKJQZjuQZGOtJGjxuGYYUdTQBJ9mX1NM88plQBheBVjzo_wC-KqmJySQmQTkUAPH-kZ3cY9Kd5CrlwTketNh_dZ38Z6ZqQyIwIBySMYoAj-0t6LT_ADm9BUPkyf3TUvlN6UAT1Vuf9YPpTTK2T8x_OpIQHQlhuOcZNAEdv_rhVyopFCxllABHQiq3myf3z-dACy_61_rUtr_HUiIrICVBJHUiop_3WNny564oAsSfcb6VQqRGYyAFiQTyCateUn9xfyoAbB_qVpLn_Vj61DKXRyFJAHQClhJkfDHIx0NAENaHpTfKT-4v5VU81v7zfnQBJc_fH0pkX-tX61JABICW-Yg96fIoWMsoAI6EUAZ2v67Y-GtFudW1GURW0C5Y55J7KPUk8V45oGh6n8XPEH_CU-JlaLw_CxFhYZ4k_wDrep7njpUvxovEu_FPhfQ9Uu2tdEmfzrqU9D82Dn6D8s5r1K18QeFLPT4Y4NZ0iK1jjCxqLqPAUdO9AGtZxRwRiKNFSJFCoqjAUDsPYVbf_Vn6VwuqfFXwRpY51-CRh1S1BlJ_754rkbr47R3sptvDHh3UtUnJwCw2g_guT_KgD1mo73WdM0SzE2qX9vZxD-OeULn8-teT-V8Y_FxORZ-GrKTrjCyAfq2fyrzPxZZ-GvD08kM2sXPinXBxJIzlbeE-5yWkI9AQPX0oA9Z8S_Hzw3YK8Okwz6pMOjAeVF-Z5P4CvJ_F3jfXvGVsG1e_g03T85i0-3zul9CV6n6tgegrzxnLPv4BJ6AYrd8P-HvEevXX_Ej066uZM8zRrwv1c8D86ALFj4Qe5CXOo3dvomnNyJ798SOPVIh87_gMe9dDaeIPA3hRl_sTRJvEGojgXepjbED_ALEQ_rzWvpvwhtoZPtXjXxVp9jk_NBHcq0v4seB-Ga7jSNe-D3ghP9BuLSS4H_LdImnlP_AscfhigDlbW0-LXxD2eZO-j6Y3A_5dowPZR8xrsvDfwD8Pacy3Gtzz6tc9Srny4s_Qcn8T-FRXv7QPhpZDHpmlaley9isYQfzz-lVF-K3jrVcjRPAVzsP3ZJ95_oBQB6xaafZaVD9l06zgtIF6RwxhR-lW7X7x-leQj_hd-rjIi0rSlbuRHkf-hGkf4cfEi-A_tb4hSRK3VbYyf020AezSyJGhLuqjHUnFYc2uaPBxPq1hGfR7mMf1rzVfgPZ3TBtU8UaveEnnkDP55rWh-AHgmJcOmozH1e5x_ICgD0DTtW0y9Hl2eo2lw_XbFMrn9DV65_1R-tfP_wASvhn4Y8EeG21rSru_s7-KVVtx52dzk_mMDJyPSvX_AATdX994Q0a41Ulrya0jebd1JxwT7kYNAGtWgPuim-Un9xfyrD1bxHpWhRmTVdWtrNB0EsoBP0HU0Aal194fSmRf61PrXlep_HfRI5Ta6Dpl7rN2fuYj2If5sfyqh5nxh8ZKSkNt4asW7keXJj9X_lQB6_qet6XotubjVNQt7OIc5nkC5-mev4V5rrfxx8M2twYNIhu9YuWOEEEe1CfqeT-ANZJ-EGhaVZ3GueNNevtSEC-ZM5cqv9WOenavN9f-ItqqPp3gzSLfRNOxteeNR9qmHvJ1A9gc-9AG9qvxy8ZSX5tdP0220-UkKIfJMsufTnv7Yr3zRtUuoPCdlfeJ5ILG8MAa68xhGqt-PT6V8zeCrTxYcTeE_Dpa8k4Oqzxbyuf7jP8AKn1GT7131r8Ftc8QXC3fjTxPNNITzDExlI_4EeB-AoA6HXvjf4T0ndFZyTapOOgthiP_AL6P9M1zK-M_ir42Gzw5ov8AZVi_AnK4_wDIkn9BXqGgfDLwl4aVWsdIgecf8vFyPNk_M9PwxXSzErIApIAHAFAHiln8Cb_U5_t3jLxLcXcpOTHAxc_99t_QV3uifDrwl4fANlo0BnXpPOPNk_M9PwxXWwku4DEkehqz5Sf3F_KgBEUKigKAAOAB0qK56pUZkYMQGOAcDmnwfvc7_mx0zQBHF_rU-tXajdFVCQoBA4IFVfNk_vn86AHTf600-2--fpUkahowzAEnqTTZgEUFflJOMigCf1rPp_mt_eb86t-Un9xfyoAZbf6s_Wln_wBS1QzExsAp2jHQUkZd3AYkg9QaAIqvx_cX6UnlJ_cX8qquzCQgMQAeADQBLdfw1BF_rF-tSwfvc7_mx0zUroqoSFAIHUCgCSiqPmyf3z-dT7j_AHzQAhtiTncPypN32f5SM55yKsbx6j86rT5LgjkY7UAO83zf3eMZ79aT7Kf74_KmwgiQEggepGKtb1_vD86AK_niL5NpOOM5oP8ApHT5cetROHLkgHBPGBUtv8ud3GfWgA8gp82_O3nGKX7UP7h_OpWIKEAjp61T2N_cP5UATeX5_wC8BxntS7PJ-cnPbAp8TBYgCQD6HiknIKADk57UAN-1D-4fzpfs5_vj8qr7G_uH8qvb1_vD86AK4P2f5TznnijzvO_d4xnvST_NIMc8dqbCCJQSCB6kYoAzdc8LaV4ksBZ6xZx3cIOV3DBU46gjkH6VxR-B_gRZDmxvDg4x9rbFepb1_vD86qSBy5IBIJ4wKAOT0_4WeCLADyPD1qzLzuuMyn_x41r6lf6J4O0hr28mtdOs4uixoE3ewA6n2Fcr4w-KuneGbh9J0uI6trrny1tYeQjdtxHf_ZHP0rF0T4Y6r4pv18QfEa7e5m-9DpathIh1w2On0H4k0AZt54g8Y_Fx5rLw5E2jeHRlZL2UkNN7ZHr_AHR-Jrgv-FGeOi5UafbFc_eF0mDX1DDbJbQR29vCsUMQ2rHGuAo9gKuwECIAkA-hoA-YrX9n7xeWDz3Gm24B6mYtj8hXW2vwR1meERar40uGtwMCC3Rto_AnH6V7hOQUwDk56Cq2xv7h_KgDzKy_Z68KwZa7u9RvGP8AelCD9BXSWHwv8EaSFEXh21lYcg3AMp_8ertwwwOR-dVp_mIxzx2oAr2lhYWgEVnY29sD08mJUx-VWfsznrJTIwRICQQAepFW96_3h-dAEPnCP93jOO-aaT9o4Hy455pkgJckAkE9QKdb_KW3ccd6AF-zkc7xx7Uv2of3D-dTlhg8j86o7G_uH8qAPDfjZfFfHOgLrNrct4dhUSsIRnzWz8w54zgAfQ1pH42alqDrH4W8F3t023arygkD04UdPxFezLHFJB5cqK4z0cZ_nSuFEGyMAD0WgDxZrD4xeLf-P3Ubfw9aN1WIhWA_4BlvzIrV0n4CaFDMLrXL681i5fl_McopP4cn8TXpuxv7h_KrwYYHI_OgDG0rQtI8OwiHS9MtrVCP-WMQUn6nqfxrT84Sfu8Yz3zTbj5iNvPHamRghwSCADySKAKmqaJZ63pVzpuoIJrS4TbKvT9exFYGj_Dfwd4fkBtdBt3mXpLP-9b_AMf6fhXa71_vD86qSgmUkAkZ6gZoAcm2RBGihFXoMdKX7ORzvHHtSQfKTnjjvVksMHkfnQBB9qH9w_nSbPP_AHgOO2DUOxv7h_KrUJATB4Oe9AEfl-R-8JzjtS_ah_cP50s5BiIBBOegqvsb-4fyoAm8gv8ANvHzc9KB_o_B-bPpUysNg5HT1qG4-Yrt5x6UAHniT93jGeM5o-yn--PyqKIEOCQQAeciru9f7w_OgCv53k_u8Zx3oz9o-UcY5yaZMCZSQCR6gZp0HysSeOO9AD_s5_vj8qT7UP7h_Op96_3h-dUdjf3D-VAE237R8wOMcYNHlmH94TnHanwEBCDwc96WUgxEAgn0FADPtQ_uH86TyC_zb8bucYqHY39w_lVxSAgBI6etAEI_0fr82fSjzxJ8m0jdxnNFx82NvOPSo4w4kBIOM-lAEn2U_wB8flUnlH-9-lSb1_vD86XcPUfnQBQbqas23-rP1p3kIex_OoZCYSFTgEd6AJp_9S1U6mWUykKx4PXtU3kJ6H86AHx_6tfpUN1_DUZmaNioIwD6U6P9_nfzjpigCGP_AFifWr9RGJFBYA5Az1qDz5PUflQAXH-uNLb_AOtP0qRYkmUM3JPWh1EKb04PvQBPWf61J58nqPyqx5Ceh_OgBlp9xvrUk_8AqX-lQsTEQqdCMmvPfFnxWstIvP7H0WE63rbt5a21tyqH_bI7j0H4kUAdbq2sadoVhJf6pdxWltH1aQ9fYep9hXl114r8XfFGeTTfB0Mul6Ep8ufVJvlZx7en0Xn1Iq3o_wAMNX8V36a78Rbx7iTrDpcTYjiHocdPoPxJr1O3hi0-BLS0hjgt4htjijUAKO2KAOY8I_DrRPBFuDaRfaNQf_W30wzI3rj-6PYfiTXUp98VNH-_yH5x6U8wKASAcjpzQBNVOf8A1p-lHnyeo_KpkRJRubkmgCK1_wBb-FW6ruohTcnBz3qPz5PUflQBGep-tWrX7rfWl8iM84PPvUcpMJATgHrQBPL_AKp_pVGpVleUhWPB68VP5Ceh_OgB0X-qT6VFc_cT61GZXjJRTwOBxToiZiQ_IHSgCEdU-tX6hMEYBIByOetQ-fJ6j8qAFuP9afpRb_60fSpVQTLubk9OKGQQruXg9OaAJqoHq_1p_nyeo_KphBGQCQcnnrQAlt0f61JN_qW-lQv-4ICcZ600SvIQjHg8HigCKr0X-qT6U3yE9D-dQNK8RKqeB04oAku_9WPrVYdR9aniJmJD8gdKk8iMc4PHvQBLVS6_1v4Unnyeo_KpEUTJufk57UARwf60fSrlQsqQruXgiofPk9R-VADH_wBYfrVi16P9acIVIBIOT15qOT9xjZxnrmgCeX_VN9Ko1KJmZgpPBPpU_kJ6H86ACD_UrTbn7g-tRtKYiVU8Dp3pY2MxKycgDNAEHpWhUfkJ6H86r-fJ6j8qAHXP-uH0psH-vFSRqJk3vyfalaJIVLLwR0oAnqhJ_rH-tP8APk9R-VTiJGAYg5Iz1oAba_xVK_8Aq2-hqCT9xjZxnrmmiVmYKTwTzxQBFU1TeQnofzpfJX3_ADoAQzoPX8qiYGc7l6AY5qFupqzbf6s_WgCNY2hIdsYHXFS_aY_f8qWf_UtVOgCYwsxLDGCc9aVP3Gd_fpirEf8Aq1-lQ3X8NACmZGBUZyRjpUX2eT2_Oo4_9Yn1q_QBXWRYQI2zkelKzCddq9feorj_AFxpbf8A1p-lAB9nk9vzrnvE3xF8OeE4iuoXwa6_htIPnlb8B0_HFXPE3hkeJ7WG2fVtU0-NGJf7BceUZQezccisfQPh54Y8NSefY6csl3nJuro-bL-Z6fhigDkJF8e_FFsBX8MeG345z9pnX-eD-A-td34V8CaF4Kg26ZZqspXEt1Id0r_U9h7DArprflT9afP_AKl_pQA37TH7_lURiZiXGMHkZNQ1ei_1S_SgCBP3GS_fpipDMhBAzk8dKbc9E-tV0--KAJPs8nt-dPRxEvltnI9KsVTn_wBafpQBK7Cddi9evNR_Z5Pb86LX_W_hVugCLz0HHPHtUbgzkFOg4OagPU_WrVr91vrQBGI2iIdsYHJxUv2mP3_Kny_6p_pVGgCYwmUlxjB5GaVB5GS_fpip4v8AVJ9KiufuJ9aAHeeh4Gefaofs8nt-dRjqn1q_QBCjiIbG69eKGYTDYuc9eaiuP9afpRb_AOtH0oAPs8nt-dTeeg4OePapaoHq_wBaAJnHn4KduuaQQmIhzjA5OKfbdH-tSTf6lvpQA37TH7_lURiMpMi4wemahq9F_qk-lAECAwEl-h4GKk89Dxzz7U27_wBWPrVYdR9aAJfs8nt-dSIwgXY3XrxU9VLr_W_hQA9pRMvlrnJ9eKZ9nk9vzpIP9aPpVygCETooAOcjjpTH_f42duuahf8A1h-tWLXo_wBaAGCJlIc4wOTg1L9pj9_yp8v-qb6VRoAmMZmJkXGD0zSqphJZ-hGOKlg_1K025-4PrQAv2mP3_Kofs8nt-dRelaFAECsIBtbqeeKRpFmBjXOT6025_wBcPpTYP9eKAF-zye351KJkUBTnIGOlTVQk_wBY_wBaAJn_AH-NnbrmkELqQxxgHJ5p9r_FUr_6tvoaAGfaY_f8qd5y-_5VSqagC1gegqrccSDHHHanm4IOMCgL5_zHgjjigCKHmUZq5gegquUEI8wEkjsab9qP90UARyk725PWp7fndnn60vkK_wAxJyeaYf8AR8Y5z60ATsBsPHaqOT6n86m88t8mBzxT_sqf3zQA-DmIZpLjiMY457VGZDEfLABA7mgMZ_kPA9qAIMn1P51oYHoKg-yp_fNN-0t_dFACXHEgxxx2psOfNFPA-0fMeMccUpjEI8wEkjsaALGB6CqMpPmtyetSfaj_AHRTxAH-ckgnmgBtvyTnnjvU7AbDwOlQH_R-Rzn1pPPLfJgc8UAQ5Pqfzq3BzEM-vem_ZU_vmmmUwHywMgdzQBJPxFxxz2qpk-p_Opw5n_dkYHqKd9lT--aAJgBgcCq1zwRjjjtR9pI4wOKUD7RyeMelADIc-aPrVzA9BVcwiMeYCSRzg037Uf7ooAZLnzT160-25Jzzx3pwhEn7wkgnnApCPs_I5zxzQBYIGDwOlUMn1P51N9oJ4wOaf9lT--aAHQcxc-veifiI49e1RlzB-7AyPU0CQznyyMD1FAEGT6n86vgDA4HSofsqf3zTPtBHGBxQAXPBGOOO1RxE-avJ61KB9o5PGPSlMIj_AHgJJHODQBYwPQVTmz5p-tO-1H-6KcIhKPMJIJ7CgBtvzIc88d6skDB4FVyPs_I5zxzSfaSeMDmgCHJ9T-dW7fmHnnnvTfsqf3zTSxg-Qcj3oAkn4hOPWqmT6n86nEhmPlkAA9xTvsqf3zQBKoGwcDpUFxwVxx9KTzyvyYHHFKP9I5PG30oAiiJ81eT1q9gegqAwBPnBJI5pn2o_3RQA2bIlOKdb8yHPPHenCMTDzCSCewpCPs_zDnPHNAFnA9BWfk-p_Op_tLf3RTvsqf3zQA635jOeee9LPxCcVEW8j5RyDzzQJDKfLIAB7igCDJ9T-dXlA2DjtUX2VP75pnnlfkwOOKAH3HG3HH0qCMnzByetSj_SM54x6U_yFX5sn5eaAJsD0FGB6VV-1H-6Kl80-goAi9PpU0P3PxqH0-lTQ_c_GgB0v-rNV6sS_wCrNV6ALKf6sfSo5u1SJ_qx9Kjm7UAMj--PrVmq0f3x9as0AQSffNEP-sP0ok--aIf9YfpQBPVb1qzVb1oAkh-4frT5PuN9KZD9w_Wnyfcb6UAVqsp_qx9KrVZT_Vj6UAMm6D61Cv3x9amm6D61Cv3x9aALdQS_fqeoJfv0AEP-sP0qeoIf9YfpU9AFY9T9akh-4frUZ6n61JD9w_WgB7_6s_Sq1WX_ANWfpVagCyn-rH0pk3QfWnp_qx9KZN0H1oAjH3h9as1WH3h9as0AQS_foi-_RL9-iL79AE9Vj94_WrNVj94_WgCSHofrT3_1Z-lMh6H609_9WfpQBWqzH9xfpVarMf3F-lADJvuD61GOo-tSTfcH1qMdR9aALNQTf6wfSp6gm_1g-lABD94fSp6gh-8PpU9AFRvvn61ND0P1qFvvn61ND0P1oAe_-rP0qtVl_wDVn6VWoAsx_cFMm-5-NPj-4KZN9z8aAI_SrNVvSrNAEE3-sH0pIvvilm_1g-lJF98UAWKrSffP1qzVaT75-tAD4e9SN9w_So4e9SN9w_SgCtSN94_WlpG-8frQB__ZcWVsZW1lbnRJZGVudGlmaWVydHNpZ25hdHVyZV91c3VhbF9tYXJramlzc3VlckF1dGiEQ6EBJqEYIVkBRjCCAUIwgeigAwIBAgIISS_j2ObdAj0wCgYIKoZIzj0EAwIwJzElMCMGA1UEAxMcZGV2Lmlzc3Vlci1iYWNrZW5kLmV1ZGl3LmRldjAeFw0yNDA3MTYwNjA5MjhaFw0yNTA3MTYwNjA5MjhaMCcxJTAjBgNVBAMTHGRldi5pc3N1ZXItYmFja2VuZC5ldWRpdy5kZXYwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAATXIUU3EpU86lQP8q4GQJZ2nzmTDaWgds6LTzgXfCoB_Vpa87eNvzJGnziTnJj57cCdDyWQLYXwcanLjtchto2UMAoGCCqGSM49BAMCA0kAMEYCIQDykz3jnb882dY4eT1AComb5QYHwOqxyC1Q3mUbnunsAQIhAJ8AjBIQLUcJE1kDjA-YyXThU_gfNIAX-1yE_pDTeR5aWQTr2BhZBOamZ3ZlcnNpb25jMS4wb2RpZ2VzdEFsZ29yaXRobWdTSEEtMjU2bHZhbHVlRGlnZXN0c6Fxb3JnLmlzby4xODAxMy41LjG4GgBYINoG1uwi3a5Okkk_phe1iSIr7tQpXfv2RpZP4oF-MRHbAVggb7icfCKLlnpD5Z6Q39uoy6xn0doP_WCvvx7v4VUSWooCWCCYOttcPtLEe6tqxsylC-hYehU8r6JuGsDv8EA4RKx4FgNYIGtQqzAaGmXO9VcMwBFqyA4-kBTRPbtEJ0E0LMTaNm7vBFggw2n3xqJKRglN1e9DeXDKp25lil-ED3KbR5W03GmUKo8FWCBdNOzDS1ZzCu6g-DXtx9CkwpeXDX5dG2nxWr27Z8MW4QZYIDw2qWjvT4C3WuctT1IX1o2nbXU-AtWVov9wEs8hqZt5B1gg0W01bi_Ni0Fmfr5GKPOZXyC3rCx_8Xr8vLl3mLfd5bYIWCAs3H1S1FFRdd5DovyhFlDWR0KUvM6MG5QZvBPWWmqOUQlYINcNFSqwvvpqP0YsjLvHo2hxCSVFJQmjJMyqK6q6i77TClggKQO_2-hP1uCeHIBAR13KRlWrIXxWJ84FRV_Mob8MNU4LWCCji5lcO1baPsORlTpCOmaIRiEi8hB4bT9uyGBRTW0uCAxYIPdJ-edSHiyA5lQ4X5ow0x_SOH_kmDBlRJwYyKNlEAj7DVggIgbABcF88-E0Lxrj_4wXYmM36xr2H4g0WDG1l9MXAHIOWCBgs08kzzfpvU70VZna7SXrSYarJr2q5D-cJFhcn8edUg9YICoJP56Yy8eP9pmvPSHqnKoJQlm_GRYBIqAqdYwaYv-aEFggCnv2tISlZK8OyDpAaa-aDaHEd7O2aFxisA5vJsXFywIRWCCfpoW0GHcG7A7tvuK-Om4jJ6hqahXVd0RjizvPhl5raBJYIGEYOTHJ3KB7CE8nZzerd0NC_eT1HhBIg9pn-S3ddDtZE1ggaAIwJiF33frnsCmyBajt2pPXeyniKeDtd51BiX3FqyYUWCBpfCidZNdgEd1A05knAvL-PSe5FMVoRCi3xreBqNBHphVYIDzbBMTeO3P0IAMshUMBq9BskbY6x-Tql6RcIeHMWPiTFlgg1MRlfEyLPz8eOilD8teaYXi4dqt5bjqxyQ7cRcT8SHgXWCBNVx0b71v32XCxiR4PvGvn4gnxOaWpbhXE9FnQmSBgxxgYWCBrEtTCfQtJG1t5XpdJZWz6m1NMWbqosaLmXzJ0jgNEJBgZWCDsB9K-OXwXrLXpgzUsA4B8525KyB_Il1nSahQ6-moUP21kZXZpY2VLZXlJbmZvoWlkZXZpY2VLZXmkAQIgASFYIIW4CS3wgTADnK_ptCXUgVQ2Q-wIOoukjJt-6Blx6ukdIlgg8wTjUoGMqzottfHdWgiIQnE7SncsU6QxyOfQhyr4ztZnZG9jVHlwZXVvcmcuaXNvLjE4MDEzLjUuMS5tRExsdmFsaWRpdHlJbmZvo2ZzaWduZWTAeB4yMDI0LTA3LTI1VDA3OjQxOjU4LjA0MDk5NTE5NlppdmFsaWRGcm9twHgeMjAyNC0wNy0yNVQwNzo0MTo1OC4wNDA5OTUxOTZaanZhbGlkVW50aWzAeB4yMDI0LTA3LTMwVDA3OjQxOjU4LjA0MDk5NTE5NlpYQJ-iRA6DUfjkjEYcmeYkB9r4py_hH3R860Zbcgas588ROLS-zajf4cQ5o5Zf-XNEP2WVeF4Bsx5h_fD7g0mcWy9sZGV2aWNlU2lnbmVkompuYW1lU3BhY2Vz2BhBoGpkZXZpY2VBdXRooW9kZXZpY2VTaWduYXR1cmWEQ6EBJqD2WECTZwBUHdUwE93YzQQ7eqr_bCpmRA6474L3XxvgT4_akE_lLhonDIwVB-0I8RELyzr1gmPSMzPh06lCdu-lpfsBZnN0YXR1cwA", + "presentation_submission": { + "id": "774e821e-0a0e-4379-b8fb-dbf20fa9a879", + "definition_id": "a0d2508a-c1fa-4312-ab0a-cb7e50a9d0f7", + "descriptor_map": [ + { + "id": "org.iso.18013.5.1.mDL", + "format": "mso_mdoc", + "path": "$" + } + ] + } + } + }, + "IdTokenAndVpTokenWalletResponse": { + "description": "A response to an ID Token and VP Token Transaction.", + "value": { + "id_token": "eyJraWQiOiJiYWVlNWYwYS04NGRmLTQzNmYtOWViMy05ZTYwYzBjMThkMDgiLCJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJzdWIiOiJEY2xJOGtfRFkwVHFUQVBYQjJwaWNoc0dHb3JiNlRma0FWRXJYWi0zYkM4IiwiYXVkIjoiZGV2LnZlcmlmaWVyLWJhY2tlbmQuZXVkaXcuZGV2IiwiaXNzIjoiRGNsSThrX0RZMFRxVEFQWEIycGljaHNHR29yYjZUZmtBVkVyWFotM2JDOCIsIm5hbWUiOiJXYWxsZXQgSG9sZGVyIiwic3ViX2p3ayI6eyJrdHkiOiJSU0EiLCJlIjoiQVFBQiIsInVzZSI6InNpZyIsImtpZCI6ImJhZWU1ZjBhLTg0ZGYtNDM2Zi05ZWIzLTllNjBjMGMxOGQwOCIsImlhdCI6MTcyMTg5MTM0NCwibiI6InZDb1JORS13LUF2VjFGVmJ3QXRmb0hVWWtBb0x5MkVDY25EdXlrakFjRGlpYkN2TzJnR0E0NnVab2V5dkY1ZUd2aGd5N3FKU0Q3LW4wdGMwSTU5SkpNbno1M19iSXpvbGtuUUc5ZlgtdXBXS2tUdEVoWWtKZWZtVGxqcXNyVzBJQWtNUllMdkJma3NNV1dDN01pRTUxbzNxWUV4QlUwMzNGSzBxUDJGdXl1WHNXc0dBa2QwS0tLazNySTJJZE03NVBrV3ptNFhuZzVsSWhpMEc5OWtrOGRGSWdFc1EtNElMMGJycUtreHdXcnFnUU9HZDVjdVNNalREZENfekVDWEZER00xb2tyNkVlc0VCQXJFTnZPMlZPUXRjb0hFYnBpZXpqNzVYUm5nY29oWE9mTS1IRjNSSl9EU1h6X1ljYWxzWW1DVFRlTjNqbEs2UTg3SEk1enRXdyJ9LCJleHAiOjE3MjE4OTE5NDgsImlhdCI6MTcyMTg5MTM0OCwiZW1haWwiOiJ3YWxsZXRIb2xkZXJAZm9vLmJhci5jb20ifQ.cgpVRSrJaCx_Xhq0X6fYk2wzdUT7NyeJ4HvWdtLKJKCMRLZ7gGJ-58tOWAbPMXs2sCRSvlhySx_0c7xruRIWUQ4pt2bxjnfikphKgW8bF2obdprCbR_ijH3agXLZWRqYhnAO9fLKqSifYA6sLnK32KiNwJXgQNSvJ4lVuMFt80x_D1l3xisp-FOCLDgFtiws188KC613Ip0p5L6wlQgPLUn9Nvt2BFsUOU47NXMUkWqfSNKMh_vvJDZG6CXmUztDiu5w58fQVTcescKrPgRo79IBr4apv_1xP75yIaasO5QQFTzyQ66n3BA_uTSVSBYRkKXlAFXb6Ww8ro2Ld0TY6A", + "vp_token": "o2d2ZXJzaW9uYzEuMGlkb2N1bWVudHOBo2dkb2NUeXBldW9yZy5pc28uMTgwMTMuNS4xLm1ETGxpc3N1ZXJTaWduZWSiam5hbWVTcGFjZXOhcW9yZy5pc28uMTgwMTMuNS4xmBnYGFhXpGZyYW5kb21QfC3Y8iYYQNPMBoKOG9pNNmhkaWdlc3RJRABsZWxlbWVudFZhbHVlaEdlb3JnaW91cWVsZW1lbnRJZGVudGlmaWVya2ZhbWlseV9uYW1l2BhYVqRmcmFuZG9tUNcqIu0d16V300NTzuolOVZoZGlnZXN0SUQBbGVsZW1lbnRWYWx1ZWhHZW9yZ2lvc3FlbGVtZW50SWRlbnRpZmllcmpnaXZlbl9uYW1l2BhYW6RmcmFuZG9tUMvOWob7UcbY5tfC0d-vIONoZGlnZXN0SUQCbGVsZW1lbnRWYWx1ZdkD7GoxOTQ4LTA1LTMwcWVsZW1lbnRJZGVudGlmaWVyamJpcnRoX2RhdGXYGFhbpGZyYW5kb21QXF75fDniAWo4Ea9eZahv2GhkaWdlc3RJRBJsZWxlbWVudFZhbHVl2QPsajIwMDAtMDEtMDFxZWxlbWVudElkZW50aWZpZXJqaXNzdWVfZGF0ZdgYWFykZnJhbmRvbVAt5Mp6dKsrabAiXOCUv6anaGRpZ2VzdElEE2xlbGVtZW50VmFsdWXZA-xqMjA0MC0xMi0zMXFlbGVtZW50SWRlbnRpZmllcmtleHBpcnlfZGF0ZdgYWE-kZnJhbmRvbVCYt95mKxp5qbPdKc2NqS8MaGRpZ2VzdElEDGxlbGVtZW50VmFsdWX1cWVsZW1lbnRJZGVudGlmaWVya2FnZV9vdmVyXzE42BhYT6RmcmFuZG9tUNrX2Q5dnp1Zc3E0T2TtdQJoZGlnZXN0SUQNbGVsZW1lbnRWYWx1ZfVxZWxlbWVudElkZW50aWZpZXJrYWdlX292ZXJfMjHYGFhRpGZyYW5kb21QuJRUPYv2n4j2Ch4p8FQK6mhkaWdlc3RJRApsZWxlbWVudFZhbHVlGE9xZWxlbWVudElkZW50aWZpZXJsYWdlX2luX3llYXJz2BhYVKRmcmFuZG9tUEJKblbEf2hGwBs-V-sBDXloZGlnZXN0SUQLbGVsZW1lbnRWYWx1ZRkHnHFlbGVtZW50SWRlbnRpZmllcm5hZ2VfYmlydGhfeWVhctgYWIOkZnJhbmRvbVBaekOUdLR9QiFtL2lM1_CeaGRpZ2VzdElEFWxlbGVtZW50VmFsdWV4LU1pbmlzdHJ5IG9mIEluZnJhc3RydWN0dXJlIGFuZCBUcmFuc3BvcnRhdGlvbnFlbGVtZW50SWRlbnRpZmllcnFpc3N1aW5nX2F1dGhvcml0edgYWGGkZnJhbmRvbVDtkHfu2pCmOdyaAm2mi1p8aGRpZ2VzdElEF2xlbGVtZW50VmFsdWVuQTEyMy00NTY3LTg5MDBxZWxlbWVudElkZW50aWZpZXJvZG9jdW1lbnRfbnVtYmVy2BhZSfukZnJhbmRvbVCl8oB2yo-wg9cY1rOSPNvZaGRpZ2VzdElEA2xlbGVtZW50VmFsdWVZSa3_2P_hAIxFeGlmAABJSSoACAAAAAUAGgEFAAEAAABMAAAAGwEFAAEAAABUAAAAKAEDAAEAAAACAAAAEwIDAAEAAAABAAAAaYcEAAEAAABcAAAAAAAAAAAAYAAAAAEAAABgAAAAAQAAAAMAAJAHAAQAAAAAAgMAAZEHAAQAAAABAgMAAaADAAEAAAABAAAAAAD_4QE9aHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLwA8P3hwYWNrZXQgYmVnaW49Iu-7vyIgaWQ9IiIgPz4KCjxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyIgPgo8cmRmOkRlc2NyaXB0aW9uIHhtbG5zOkFzcG9zZUltYWdpbmc9Imh0dHBzOi8vcHJvZHVjdHMuYXNwb3NlLmNvbS9pbWFnaW5nLyI-CjxBc3Bvc2VJbWFnaW5nOkltYWdlUXVhbGl0eT43NTwvQXNwb3NlSW1hZ2luZzpJbWFnZVF1YWxpdHk-PC9yZGY6RGVzY3JpcHRpb24-Cg0KPC9yZGY6UkRGPgo8P3hwYWNrZXQgZW5kPSdyJz8-_9sAQwAIBgYHBgUIBwcHCQkICgwUDQwLCwwZEhMPFB0aHx4dGhwcICQuJyAiLCMcHCg3KSwwMTQ0NB8nOT04MjwuMzQy_9sAQwEJCQkMCwwYDQ0YMiEcITIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIy_8AAEQgCcgJyAwEiAAIRAQMRAf_EAB8AAAEFAQEBAQEBAAAAAAAAAAABAgMEBQYHCAkKC__EALUQAAIBAwMCBAMFBQQEAAABfQECAwAEEQUSITFBBhNRYQcicRQygZGhCCNCscEVUtHwJDNicoIJChYXGBkaJSYnKCkqNDU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6g4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2drh4uPk5ebn6Onq8fLz9PX29_j5-v_EAB8BAAMBAQEBAQEBAQEAAAAAAAABAgMEBQYHCAkKC__EALURAAIBAgQEAwQHBQQEAAECdwABAgMRBAUhMQYSQVEHYXETIjKBCBRCkaGxwQkjM1LwFWJy0QoWJDThJfEXGBkaJicoKSo1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoKDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uLj5OXm5-jp6vLz9PX29_j5-v_aAAwDAQACEQMRAD8A9_ooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAoorD8Q-MNC8LQCXWNQitsjKoTl2-i9TQBuUyWaOCMvLIsaDqzHAFfPviP9ou4Znh8N6ZGi9BPdgsSPUKCMfjmvKNf8deJfE8pfVNWuJV7RIdiD_gK4FAH1VrPxU8G6EGFzrUMsg6R24MpP4qMfrXn2sftH6bGHXR9GuZ26K9y6xj64GTXznRQB61f_ALQfi25VltYbG1B7rGWI_M1y-ofFTxpqKlZdeu40PVYX2A_l2rjaKANaXxLrc-fN1a8fP96YmqMt9dTZ8y4kf_ebNV6KAJY7iaH_AFUjp_unFXI9f1aEgxaldJj-7KRWdRQB01h8QfFumvm21-_Uf3TMSv5V1GnfHfxpZMBLPbXaek0XP5g15jRQB71pP7SMykrq-hK6_wB-1lwf--W_xrvtH-N_grVtivezWMrfwXURHP1XI_WvkeigD7ysNW0_VIRNYXkF1H6wyBv5Vdr4P0zWtT0adZ9Nvri1kByDE5FeoeHf2gvEmnbItXgttSgXG59vlykf7w-X_wAdoA-oKK4fwj8VfDHi0rDb3Ytr0j_j2uCFYn_ZPRq7gcigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKaxCqWYgAdSaAHVi-IfFGjeFrE3esX8dtHjhT8zv_uqOTXmnxC-OVpoTyaZ4cWK9vhw9wxzFH9MfeNfPGt6_qfiLUJL7VLyS5nc5JY8D2A6AUAep-Mfj7quqGS18PRHT7Y8eeTmVh_7L-FeQXd5c39y9zdzyTzuctJIxZj-JqCigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKAFBIORXf8AhH4veJvCuyH7Sb6yXj7PcsWwPQHqK8_ooA-xvBfxU8O-M1WCCc2uoY-a0n4Y_wC6ejfhzXc18C2881tMk0EjxSocq6HBB-tex-BfjxqOleVYeJVN9Zj5Rcj_AFyD3_vfz96APpeiqemalZ6vp8N9YXMdxbSqGSRDkEVcoAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiisnxD4i07wxo8-p6pMIoIhnH8TnsqjuTQBY1XVrHRNOlv8AUblLe1iGWkc4H0Hqfavmb4j_ABmv_E7zaboryWekH5SykrJOP9r0B9PzrnviD8SNT8dXx8zNvp0bZhtVbIHu3qa4igAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigDq_BPj3WPBGprc2MzPasf31o7Hy5B9Ox96-qPA_wAQNH8dacZ7CTy7qPie1kPzxn19x7iviytPQte1Lw3qkWo6XctBcxngjoR6EdxQB92UV5_8OPidYeObIRSBbbVo1Hm2-7h_Vl9vbtXoFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFGaM0AFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUVWvb2306ynvLuVYreBDJI7dFUDJNAFXXtd0_wAN6RNqep3Cw28Q6k8seygdyfSvkHx947v_ABxrsl1O7JZRti1ts_LGvr7k9Sa0fif8RrnxzrAWIGHS7YlbeLdy3q7e5rgKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAt6ZqV3pGowX9hO8F1A2-ORDgg_4e1fW3wz-I1p450nZK6RatbgCeDOCw_vqO4NfH1aega7f-G9Yg1TTZjHcQtkejDuD7UAfdlFcr4D8a2fjfw7FqEGI7lQFuYM58t-_4eldVQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFfOPxx-JDX9zL4V0m5H2SFsXjxn_WOD9zPoD19xXpfxc8cp4O8LtFA_8AxM75WjtwP4R_Ex-ma-RXZndnYksxySe5oAbRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQB13w98b3ngfxHDeRyM1lIQl1B2dP8R1H0r7G07UbXVtOgv7GZZradQ8bqcgivguvcfgH46Wyv5fDGoSnyLkh7RmPCyd1_EY_KgD6OooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAqC7u4bGznu7lxHBAjSSMegUDJNT1458f_Fo0zwzH4ft5MXOoENLg8rEpz-pAH50AeH_EPxfN408WXGpOxFuv7q3jzkIg_qeTXJ0UUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABUttcy2dzHcQOyTRMHR1OCCKiooA-z_ht4yj8Z-ELa-Z1-2RARXSjtIOpx79fxrsK-Tfgn4vHhvxlHY3EhWy1JhA3PCueFP54H419ZUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFGKMUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFADJZEhjaR2CooyWPQCvijx54nl8XeL7_VHcmFpCsC_3YwcL-mK-mPjL4jHh_4f3axuVub7_Rotp55-8fy_nXyFQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQA-ORopFkRirqQVI6gjvX2d8NvFP_CWeCrLUHZTcqPKn2_31HP8ASvi6vbv2dPEf2bXNQ0CZvku4hNDns6dR-Ib9KAPpGiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooprusaM7HCqMk-goA-Zf2htee98X2ujI37iwtwxGf-WjnJ_8AHQleOVv-NdV_tzxpq-o84muW25_uj5R-gFYFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABW14S1mXw_4r07VIvvQTKSM4yp4I_ImsWigD77t50ubaKePlJUDr9CMipK4z4U6ydc-G2j3LtuljiMD5OTlGKjP4AV2dABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABXNfEHVW0XwHrF-hw6W5VTnoWIUfqa6WvMfj3em1-F9zCDj7VcxQ_XDb__AGSgD5PZi5JY5JOSaSiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooA-kP2cdTabQdW0xiStvOsqZ7Bhj-amvb6-ZP2db4w-Mb-z3HbcWudvYlTn-pr6boAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAK8N_aSumXQ9Fs_wCF7lpT_wABXH_s1e5V8-_tKzAS-HoQwJ2zuR6fcGf8-lAHgVFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQB3vwcvGs_ihpDKf8AWM0R-jDFfYVfFfw1lMXxJ8Pf7V9Ev5sBX2pQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAV82_tIuT4k0dewtX_8AQhX0lXzn-0pAy6xoM-PleCVM-4Zf8aAPDKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigDf8EuY_Hnh-Req6jbn_yItfcFfEnw_iE3xD8Ooen9owE_QSCvtugAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigArwP9pWPNv4fk_utMv57f8K98rx39ouw8_wAE2F6o5t75Qf8AdZWH88UAfMVFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQB2Pwsh874l6EMZ23SN-RzX2dXyf8B9PF78SIZmHy2sDyf8CxgV9YUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFcH8ZbH7f8LNYQLl4hHKvtiRc_pmu8qhrWnpquiX1hIMrcQPEfbIxmgD4Poq1qFo9hqN1ZyqVeCVomB6gg4qrQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAe7_s3afu1DW9RP8EccS_Ukk_0r6Iryz4BaQun_AA5S9KYk1C4klJPXap2D_wBBP516nQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAfH3xk0f-x_iZqSquIrrbcx_Rhz_48Grga-jP2ivDpuNN07xBGvz2xNvMQOqk5X8ju_OvnOgAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAqS3ia4uI4U-9IwUfUnFR16B8G_Dh8Q_EK0Drm3sgbqXI4IUgAfmRQB9UeF9LXRfC2l6aq4-z2yIw_wBrHzfrmteiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAxvFOiReI_DOoaTMoIuIWRSezY-U_nXw_c28tpcy286FJonKOh6qwOCPzr75r5d-PXg8aN4nTXLdQLXUyS-P4Zep_Pr-dAHkVFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFfTn7PnhttN8L3WtTR7ZdQcLGSOfLXOMexJP5V8-eFfD8_ijxNYaPb5DXMqq7AZ2Jn5m_AZNfbun2EGmafBZWybIIIxGi-gAxQBZooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACuT-IvhVfF_gu905UDXQXzbZu4kXkAH36fjXWUUAfA11bzWdzLbTxtHNExR0YYKkdQRUNe3fH3wKbDUo_FFhEPs10dl2qrwknZvxH8q8RoAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiup8AeEbjxn4pt9Ni-WEfvLiUjhEH9T0oA9i_Z-8HPa2U_ii8hKvODFalh_B0Zh-ORXulVrCyg03T7eytYxHBBGscaDsoGBVmgAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigDP1rR7PX9IudMv4_MtrhNrj-o96-MPGXhS88HeIrjSrtWKoxMMpHEqdmFfb9cN8T_AkPjfw1LFGqrqVuDJayH-9_dPselAHxzRVi8tJ7G7ltbqJop4mKujDBBFV6ACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKAJYIJLmeOCFGeWRgiIoyWJOABX118KfAEXgnw7umXOqXoV7lj_Dxwg9hk1wPwN-G7I0Xi3VovU2MTDn08w_0r36gAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKAPIvi98Ko_E1s2t6PGI9WiU-ZGvS4X_4oV8wPG0TtG6lWUkMD1B9K-_K8R-LnwhfWJJ_EPh6EG9I3XFqvHnf7S_7Xt3oA-bqKklikgkaKVGSRSQysMEGo6ACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAr1n4QfC0-K7ka1qyOmkQPhE6G4b0z_dFVvhh8J77xddQ6lqMbW-iK24u3Bnx2Uenv_OvqiztILCzhtLaNY4IVCIijgAUASQxRwQpFEipGihURRgKB0AFPoooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKgvb22060ku7ydILeMbnkdsBRXz94--PT3Hnad4T3xRHKtfsNrN7oOo-pwaAPff7Usf7SGnfa4ftuwyeRvG_b64q3Xwjaa5qVlrKatDeTC-V9_nFzuJ9zX1b8M_iXZeN9MSCd1h1mJcTQnjfj-JfX6UAeg0UUUAeSfFT4RQeJ4n1jRVWDWEHzxjAS4GP0b3r5kvrG5068ltLyF4biJtrxuMFTX3tXGeOfhtovji1Y3UQh1BVIivI1w49A394e1AHxnRXS-LvAuueC74warassTEiK5TmOX6H-h5rmqACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooq5p2mXur3sdnp9rLc3MhwscS7iaAKYr2P4W_ByfxA8eseII5INMU7o4MbWn_wAF_nXb_Dj4JWmh-VqniOOO61EfMlscNHEffsx_SvZFAAwOlAEdvbw2lvHBbxpHFGoVEQYCgdAKloooAKp6lqthpECzahdxW0buEVpWCgsegqp4i8Rad4X0afVNTnEUEQ4H8TnsqjuTXyP4_wDHuoeOtaNzcM0dnFlba3zwg9fqaAPs1HV0DoQykZBHenV8feB_ivr3g2SKDzmvNMU_NayscKv-wf4a-mPBvj7Q_G1kJdMucXCjMtrJxJH-Hce4oA6miiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigArC8U-K9M8IaNJqWpyhUHEcYPzSt_dFM8X-LtN8G6JJqWoygcERQg_NK3oB_XtXyB4s8X6r4x1d9Q1Odm5PlQg_JEvoo_wA5oA2PHnxN1nxveusshttNU4itI2O3Hqx_iNcPRRQAVe0rVbzRdSg1CwnaG5hcOjqe4qjRQB9d_DX4pWHja0FpcFLbWI1zJCTxJ_tL_hXolfA9rd3FjdR3NrNJDPG25JI2Ksp9QRX0d8MPjTb6tHDo3iadYdQ4SK6bhZvQMezfXrQB7VRSKQRkEEe1LQBS1PSrHWLJ7PUbWK5t36pIuRXgnjn4AzW_m6h4VmMsXLGxl--P9xh1-hr6IooA-B7q0uLG4e3uoXhmQlWR1wQagr7c8S-BvDviyFl1bTYJZSOLhV2yr9HHP4dK8L8X_ADVtPL3PhyT-0Lcc-Q5Cyj6dj_OgDxeird_p17pk5t7-zntZh1SaMofyNVKACiiigAooooAKKKKACiiigAooooAKKKKACiinpG8rqkalnY4CqMkmgBlKAScDk16J4T-DfirxK6SzWb6bZnkzXS7CR7KfmP1xivd_Cfwd8LeGESWSzTUr1efPulDgH1VTwP50AeHeBvg1rviwx3d3nTtMYZE0i5dx_sr_U19H-E_AuheDbMQ6VaASEfPcSfNI_1P-FdIAFAAGAKWgAooooAKxvEvifS_CmkyajqtwIol4Vf4pG9FHc1iePfiNpPgbTWeeRZ9RcfuLNDlmPq390e5_CvlHxT4t1bxfqzahqty8jciOPPyRL6KOgoA1PH3xA1Lxzq7T3B8qyjYi3tlOQi9ifU1x1FFABV7SdWv9F1CO-065kt7mI5V0P8AnNUaKAPqX4YfGK38UIml640Vtqw-VZAdqXH09G9q9ar4CR2jdXRirKcgg4INfRfwg-Lh1Hy_D3iK6zdAYtbqVv8AWf7LH19CaAPcqKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAqnqmo22kaZcaheSCO3t0Lux9BVyvmf44fEZdavB4b0qcmxtnzcyIeJnHQe4H86AOG-IXje78b-JJb6QlLNP3dtBnIRB3-p5NcjRRQAUUUUAFFFFABSgkEEHBpKKAPWvAHxt1Pw35en60rahpoG1X3YliHsf4h7cfWvpDQfEWl-JtNjv8ASruO4hcfwn5l9iOxr4VrY8O-KNY8Lagt7pF9LbSZ-YKcq49GU8H8aAPueivIvBvx30PWhFaa5t0y8IA81j-5Y_738P416xBPDdQpNbzJNE4yskbBlYexHWgCWiiigDO1TQ9L1u3a31Kxguo2GCJUB_WvLPEv7Peh6iTLol7JpkvXy2TzYz-oI_WvZKKAPk7V_gR4y0ze9tFbahGoyDbS4Yj6NiuE1Hw_q-kPs1DTrq2b_ppGQPz6V92VDcWlteR-Xc28U8f92VAw_I0AfA1Ffat98NvBuoEm48O2GWzkxReXn_vnFc3e_AXwPdEmG1urQn_njcscf99ZoA-TqK-lp_2b_DzN_o-sanGPR_Lb_wBlFU5P2bbDH7vXrgf70SmgD51or6Hj_ZstQf3mvzEf7MIFWov2b9FBHna3fkdwqoP6UAfN1FfU9p-z34NtyPOk1G59pJwP_QQK6Sx-EvgXT8eT4et3I7zO8v8A6ESKAPjy2sbq9kEdrbyzuTgLGhYn8q7PRvg_411oBo9KNtGTxJdOIx-XX9K-tbDRNK0sY0_TbO0H_TCBU_kKv0AeA6B-zfskWXxBrKuveCzQ8_8AA2_-Jr1rQPAnhvwzGBpmlwJIOfNddzk-uTXSUUAFFFFABRRXEeLfip4Y8IK8dzeLdXqg_wCiWzB3B7BscL-NAHZzzxW8LzTSLHGgyzucACvEvH_x5gsJJdM8LolxOuVe9c5RT_sj-L615b45-KmveNJWgeVrTTN2VtIWwD_vH-L8a4PrQBav9RvNVvJLu-uZLi4lbc8khySaq0UUAFFFFABRRRQAU-OR4pFkjYq6nIYdQaZRQB9W_Bv4iHxbop03UXX-1rIYJzzPH2bHqOh-gPevUq-EtC1u98Paxb6pp8piuYGDKR39j6g-lfZvg_xXY-MfD8GqWLAbxiWInmN-6mgDoKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKo6tqlpomlXOpX0qxW1uhd2Y_5-lAHC_F_wAfL4P8ONa2kmNVvkKw7TgxL0L_AOFfJRYsxZjknqTW9408UXXjDxRd6vcsdsjbYY-0cY-6B_P6k1z9ABRRRQAUUUUAFFFFABRRRQAUUUUAFdf4Q-JHiLwZLjTrrzLUtue1n-ZG_qPwrkKKAPqjwt8ePDetLHDqiyaVdtwfMO-In2Yc_mK9QtLy2vYFntZ45onGVdGyCK-B62NE8U674cm83SNUubQ91R_lP1U8H8RQB9z0V85-G_2ir63VIfEOnrdKMAz2-Ef6kdPyxXp2jfGPwVrKD_ibx2cpODHdgxY_4EeP1oA76ioLW7tr2ETWtxFPE3R4nDKfxFT0AFFFFABRRRQAUUUUAFFFFABRRTWYIpZiAAMkntQA6iuW1n4i-EdCyL7XrJZB1jik8xx_wFcmvN9f_aL02FHj0LTZbmTB2y3Hypn_AHetAHuDMFGWOB6muJ8T_Fbwr4WMkVzffabpM_6PbYdgfQ9hXzP4j-J3izxPujvdWmjtieILfES_jtwT-Oa5Aksck80AepeNPjhr_iRWtdOX-yrHPSJyZHHozccewFeXSSNK5d2LMepY5JptFABRRRQAUUUUAFFFFABRRRQAUUUUAFei_CDxw3hHxXHDdSkaZfEQzgnhGJ-V_wAD19ia86ozQB9-I6yIrowZWGQR0Ip9eP8AwK8dPr2hyaFfzbr6wAMRY8vD2-pU8fiK9goAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAr55_aB8bCeaDwpZSHbEwmu2B4JxhV_Uk_hXs3jTxLB4S8K32sSlS8MZ8lGP35Dwq_mRXxTqF_canqE97dSGSedy7ue5NAFaiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKAL-n61qWkzifTr6e1kH8UTkGu1sfjd44stobUY7kD_nvEGzXndFAHt9j-0hq8e37doVpOAeTFM0f8w1dLa_tI6A6_wCl6JqUTekRjkH6la-a6KAPqaL9ofwbLjdbatGf9uCP-j1di-O3giXG66uov9-H_A18mUUAfW8vxy8DRDK388n-5Cf61Sl_aC8GR52x6nJ_uQJ_V6-VaKAPpyb9o_wsoPk6VrEjf7Ucaj_0M1z2oftKTNldO8Ooo_vz3Of0C_1rwSigD1LUfj34zvX_ANHe0s0xgLFFk_mSa4zWvGviPxASNT1e5nQ_wF8L-QrAooAU5JyTmkoooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigDY8MeIbvwv4gtNWsifNgcErnh17qfY19saNq1rrmj2mp2T77e5jEiHvg9j718H173-z740cXEvhS8myjhpbMMehHLKPwyfwNAH0JRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUVzvjbxLD4T8KXurSkb412wqf45D0FAHgHx68X_wBseKRodvJutdN4cjo0pGT-Wcfga8hqa7upr27murhy80zmR2Pdick1DQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFSw28txKsUMbSSMcBVGSaAIqK7zQvhB4x14K8emG1hY_6y6JQY9fU13mm_s23TOG1LxBFGuOVgg3H8yRj8qAPB6v6Lqtxoms2mp2rFZraVZFIOOnb8elfSVl-zv4UgUG5vdTuX75kRV_IL_WtmD4IeBYSC2mSS_wDXSdv6YoA6_wAOa5b-JPD9lq1qwMdxGGI9G7j8Dmtas3RdC03w7p4sNKtVtrUMWEakkAn6k-laVABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABXzR-0F4sGpa9a-HraTMFgC8-Dw0rdj_ugf-PGvoXXtWi0LQL_AFWfHl2kDzEE_e2jIH4nivh_VtSm1jVrvUbg5luZWkY_WgClRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRWv4f8ADOreKNRWx0m0eeY9SB8qj1J7UAZFdP4X-H_iTxdMBpWnSNB_FcSYSNR9T1-gya938FfAbSNHSC81-Q6hfDDmEcQofTHVv5e1euW9vDawrDBEkUSjCogwAPpQB4v4Y_Z50yzKT-Ibxr2QYJghJWP6Z6mvWNH8OaNoEPlaTplrZrjBMMQUn6nqa1aKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKQ8DNAHi_7Qvib7F4cttAhlAkvnEkwDc-WpyPwLAflXzTXZfFHxE_iT4gapchiYIZjbwjPGxPlyPrjP41xtABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFOVSzBVBJPAAr3v4U_BhZY49d8UQ5VsNbWJHUf3n_oKAOS-HPwf1LxbJBqOpxyWejE7t7cPOPRAex9fyr6b0Pw9pPhuwFlpFjDaQ9xGuCx9WPUn3NaMcaQxrHGgVFGFVRgAU-gAoooJx1oAKK4Txh8WPDXhFZIZbkXl-v_AC627AkH0Y_w14r4j-P3ibVlaHTIYNKhP8UZMkn_AH0ePyFAH03ealZadH5l9eW9sgGS00qoPzJrjNU-MngbS2KPrIuJP7ttE8n6gY_Wvku_1jUdUnee-vbi4kf7zSSE5qjQB9Nah-0Z4bg4sdN1G5b1ZVRf_Qs_pWQ_7SkY_wBX4ec_704H9K-fKKAPfB-0pLnDeG0C_wDXyf8A4mrUX7SdsT-98Pygd9kwNfPNFAH1HY_tDeEbhV-1QajaN33whgP--Sa63SPih4M1sqtpr1srnjZcZhOfT5wK-L6UEg5FAH31DPFcRiSGVJEPRkYEH8RUlfDejeLdf0CbzdM1W5gbjID5U49QeK9W8O_tF6lb-XB4g0yC6TIBnt2MbgepXkH8MUAfR1Fc74a8ceH_ABZDv0rUI5HAy0TfK6_UV0VABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFc7461xfDngzU9SLYeOEiPHUueBXRV4f-0br7W2j6XocTc3btPKAf4VwF_Mk_lQB85O7SMWYksTkk96bRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFe1_Bf4XjWJU8SazF_oMT_AOjQsP8AXMP4j_s549-aANz4O_CWOGKDxL4itd07APaWsq8KD0dh6-gNe7gADAopaACiivKfiZ8YbTwkG0zSBHeaqync24FIPr6nrxQB2XizxxoXgyxafVbxFlKkxWynMkh9Ao7e54r5t8cfGPXvFUjW1nLJpum5OIoXw7j_AGmHP4dK4bWNZ1DXtSm1DUrl57mZizMx_QDsKz6AFJJJJOSaSiigAooooAKKKKACiiigAooooAKKKKAJra6uLKdZ7WeSGZDlZI2KsPoRXtHgT493mnrFYeKFe7twQovFGZFHq397-deI0UAfeGk6zp2u2CX2mXkN1bP0kibI-h9D7Gr9fE_g7x3rPgnUftOmzbom4ltpDlJB_Q-9fVXgX4g6T460zz7Q-TeRj99au2WQ-3qPegDrqKKKACiiigAooooAKKKKACiiigAooooAKKKKACvkL40a6db-JF6FYmGyVbaP045P6k19ZapeLp2k3l6_3beB5j9FUn-lfCupXcl_qVzdysWeaVnLHvk0AVaKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiipYYZLiZIYULyyMFVV6kntQB2Hw08DT-N_E8VsUYafB-8u5RwAoP3QfU9Pzr7BsbK306yhs7WJYreFAkaL0AFcz8OPByeCvCcGnsFN5J-8unXnLnt9B0rr6ACiivK_i_wDE1fCNh_ZOnMG1e6jPzA8QIeNx9_SgDI-Lvxc_sYTeH_D9wv285S5uUwfJ9VX_AGu3t9a-b5ZZJ5Wlldnkc5ZmOSTSSSPNI0kjFnY5ZickmmUAFFFFABRRRQAUUUUAFFaem-H9X1iUR6dpt1csenlxEj8-ldbYfBfx3f8AP9j_AGdf708yL-mSf0oA8_or1aP9n3xq_wB5tMT_AHrhv6Kaim-AXjiL7sNjL_uXP-IFAHl1FdjrHwu8ZaGhkvNEmMQGS8DLKP8Ax0muSmhlt5DHNE8bjqrqQfyNAEdFFFABRRRQAVo6Lreo-H9Si1DS7p7a5iOQ6Hr7EdCPY1nUUAfYvw4-I1j470rJKQ6pCo-0W2f_AB5fVf5V3VfCega7feG9Zt9U06Ux3EDZGOjDuD7EcV9i-BvGVj438PR6lZ_JID5c8BOTG-On09KAOnooooAKKKKACiiigAooooAKKKKACiiigDg_jJqh0v4X6uyNtknVIF_4E4Df-O5r48r6S_aP1MxeHNL01WwZ7kysPUKp_qRXzbQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFeyfALwemr69Pr93FvttPIWHPQynn9Bg_jXkFvA9zcRwRDMkjhFHqScCvtTwD4Zj8JeDbDSlA81FLzMP4pG5J_p-FAHTUUUUAc3448V2_g3wtdatOVaRAEgjJ-_IeAP6n2Br411vWb3xBrFzqmoTNNczvuZj29APQCu8-M3jn_hK_E7WNq5Onac7Rx88SP0L_4e1eZUAFFFFABRRRQAUUUUAFev_APS9E1nxBqFrqmnwXU0dv50Pm8hQGAPHQ_eFeQV6F8FdUGmfFDTQxxHdLJbt-Kkj9QKAPra3tba0jEdtbxQoOixoFH5Cp6KKACiiigArmfFHgHw74ttGi1LT0MuDsni-SRD65HX8ciumooA-QPiP8ML_wACXYmjZ7rSpTiO528qf7reh_nXn9feWqaba6xplxp97EsttOhR0boRXxb4z8NTeEvFd_o8x3CF8xv_AH0Iyp_IigDn6KKKACiiigArs_hx46uvBHiNLlSWsJiEuoezL6j0IrjKKAPvm1uoL20huraVZYJkEkbqchlIyCPwqavC_gF46-1WZ8J3rkzQBpLRifvJ1KfhyfpXulABRRRQAUUUUAFFFFABRRRQAUUUUAfMn7RV6ZvGVjabsrb2uce7HNeN13vxkvzqHxP1Zt2ViYQgemwbf5iuCoAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKAPRfgr4eTX_iLatMha3sEa6kHqRgKP--mB_CvrqvGf2eNDFn4VvNXePEl5NsVj_dX09sn9K9moAK4r4p-Lf8AhEPBV1dQyBb24BgtvUMf4vw612tfLv7QPiIan4zi0iF90OnQgOB_z1bJP_juygDyMnJyTzSUUUAFFFFABRRRQAUUUUAFaXh-_bS_EWnX6Psa3uY5Nw7YYVm0UAfZ9_8AE_wdpkKPda9aF2QPshfzGGfZc4Nclc_tDeE4s_Z7e-n_AO2e3-dfLtFAH1Fp_wC0J4Xu7lIrq2u7NWODI43Bfc4r1LT9RtNVsIb6xuI57aZd0ckbZDCvguvoP9nDV55I9W0h5WaCILPGh5C5ODigD3yiiigAr55_aP0qOO80jVlQK8qtA5H8WORX0NXiH7SMqjw7o0WxS5u2YN3ACEY_HP6UAfN9FFFABRRRQAUUUUAavhrW7jw54isdXtWxJayh8eq9GH4gkfjX25pGpQ6xpFpqNu2YbiISKfrXwdX05-z34jGoeFbvRpXJm0-UMg_6Zv0_VW_OgD2OiiigAooooAKKKKACiiigAoopG-6fpQB8QeN7j7X488QTA5VtRuCv08xsfpWBVrU7g3WqXdwess7v-bE1VoAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKK0NCsv7R1_T7LGftFzHFj13MBQB9meA9G_sHwPpGnn78dspk4xliMn9TXR0iqFAAGAOgpaAIL25Szsp7qQgJDG0jE9gBmvhnXtSk1jX7_UZXLvcTvJk-hPH6V9bfFzVW0j4Z6vMhxJKiwp_wJgD-ma-N6ACiiigAooooAKKKKACiiigAooooAKKKs2Vjdaldx2llbS3FxIdqRRKWZj7AUAVq-l_2ffC91puh3et3SbBf4WFSOSgPX86zPh38CBC0WqeLEBdSGSwzkf8DIP6V7vFHHDEkUSKkaDaqqMBR2AHYUASUUUUAFfOn7R-qpJquk6Upy0MbTOPQngfpX0HfXtvp1lNeXcqxW8Kl3djwoFfFPjjxE_ivxhqOrsWMc0pEIPaNeF_QCgDnqKKKACiiigAooooAK9K-B2snSviPbQNJtivo2t2B6E9V_UfrXmtX9FvpNM1uyvojiSCZXH50AfeFFQ2lwl3ZwXMf3JY1dfoRmpqACiiigAooooAKKKKACkf7h-lLSEZFAHwLMpWaRWGCGINR1r-KrM6f4t1izZcGG9mTH0cisigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigArs_hRai7-Juhqf-Wdwsv_fPP9K4yvRPghGZPinpoH8KSt-SmgD67ooooA8e_aLvjB4GsbRT81xfKT_uqj_1Ir5hr6I_aVkxpugRf3ppW_JV_wAa-d6ACiiigAooooAKKKKACiiigAooooA3fCvhTU_GGrpp2mRbnPLu33Y19TX1j4H-Hej-CLBI7WNZ74j97eOvzue-P7o9qy_g14Ti8N-B7e4eJRfah-_lfHzbT91c-mBn6k16LQAUUUUAFMklSKNpJGCIoyzE4AFZXiHxPpHhbTmvtXvYreIAlVY_M59FXqa-ZfiJ8YNU8X-bYWLSWWkNwYlbDTD_AGyO3tQBtfGL4rDX3bw_okn_ABLY2_0icH_XsOw_2R-v4V4xRRQAUUUUAFFFFABRRRQAUoYggjgikooA-2_h_efb_h74fuM5Y2EKsfVlQKf1BrpK4f4Pyeb8KtCb_pk6_k7D-ldxQAUUUUAFFFFABRRRQAUUUUAfJfxz0U6T8RrmdR-6vkE68d8fN-teaV9OftCeG21Dwpb63BGDJp0gEpA58tjj_wBCIr5joAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAK9Q-ATIvxOhDdWtZQv1x_hmvL69D-CUwh-KemEn7yyJ-akUAfXlFFFAHgX7SykxeHWz8oacH8Qn-FfPtfRn7ScROi6HNjhbiRc_Vf_AK1fOdABRRRQAUUUUAFFFFABRRRQAVa06EXGp2kLDKyTIh_FgKq1d0l_L1mxf-7cRn_x4UAfdVnGIbG3iUYVI1UD0wAKsVFbtutom_vID-lS0AFcf8RPHVt4E8OtfOizXcp2W0BbG9vU-wHP6V2FfLP7QGrSXnj5bDeTDZW6hVzwGYbj_SgDgPEvinVfFmrSajqtwZZGPyoOFQegHpWLRRQAUUUUAFFFFABRRRQAUUUUAFFFFAH2B8FVK_CXRA3XEx_AzPiu_rivhLEYfhboKkEZgLfmxP8AWu1oAKKKKACiiigAooooAKKKKAKWrabBrGkXem3IzBdRNE_sCMZr4n8V-Hbvwr4ku9IvFw8LfKR0ZT0Ir7lryz4xfDf_AIS_TF1TTo_-JvZoQFUf69Ou0-47fU0AfKdFPdGjdkcFWUkEHqDTKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAK6v4a3gsfiNoMrHCtexoT6BmA_rXKVYsrp7G_t7uL78EiyL9Qc0Afe9FQ206XNtFPGcpKgdT7EZqagDyn9oKx-1fDhJgMm1vY5M-gKsv_swr5Wr7Y-IWj_274C1iw2bmeAuoH95CGH8q-KGUqSD1HUUAJRRRQAUUUUAFFFFABRRRQAVLBJ5U8cn9xg35GoqKAPvLSJludHsp0bckkCMCO-VFXa858E_ELwtF4L0mO98Q6dBcx26pJHLcKrKRxyCa3_-Fj-C_wDoaNK_8Ck_xoA6evkD40f8lT1b_gH_AKCK-mP-Fj-C_wDoaNK_8Ck_xr5d-LGo2Wq_EXUrzT7qK5tpNu2WJgynCgcEUAcTRRRQAUUUUAFFFFABRRRQAUUUUAFORC7qo6scU2t3wbpB13xhpemhGYTXChgP7o5P6CgD7I8IWf2DwZoloRgw2ECH6hBn9a2qaihECqMKowB6CnUAFFFFABRRRQAUUUUAFFFFABRRRQB5R8TPg7b-LXk1PRjDaasQS4b5Un-uOh96-a9d8O6t4bvms9XsZbWYHjeOG9wehH0r7rrG8QeF9H8U2DWer2aXEeDtY8MnurdRQB8M0V7R4x-AGp6b5t14dmN_bDnyHx5oHoMcN-VePXdncWNy9vdQyQzIcMki4IoAgooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKAPsv4U6x_bXw30idmDSRQi3f6p8v8ASu0r57_Zz8RkXOpeHJW4ZPtUOT0IIVh_48D-FfQlADZEEiMjDKsMGviXx3ocnh7xvqumydEnZ0OMZVvmX9DX25Xz1-0X4aZbvT_EkKfK6fZp8eoJKk_nj8KAPBaKKKACiiigAooooAKKKKACiiigAor2r4c_A46_p0Wr-Ippra1l-aG2iwHdfViegr162-Efga1gES6BC4xgs8jsT-OaAPjeivq3X_gN4S1WFzp6T6ZcY-VoX3Jn3Vs_oRXzj4s8Jal4N1uTTNSQbhzHIv3ZF7MKAMCiiigAooooAKKKKACiiigAooooAK9h_Z70Fr7xjdaswPk6fBgHHV3OB-gavHq-ufgt4a_4R7wDBJKm251BvtMmeoBACj8ufxoA9GooooAKKKKACiiigAooooAKKKKACiiigAooooAMVheI_CGheK7QQaxp8Nxj7khXDp9GHIrdooA-efE37Otyhebw5qKSp1W2ujtb6Bun54ryLXPB_iHw25XV9JubUf32XKH6MMg_nX3HUFza295C0NzBHNEwwySKGB_A0AfA9FfW3iD4H-D9dleaOCfTpm5LWjgAn3VgR-WK81139nTWLVXl0bVIL1RyI5k8psfXJB_SgDxOiuh1vwR4j8POw1PSbiFF_wCWm3KH6GufIIOD1oASiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooA6XwFrzeGvG-l6nuZY45gsuD1RvlI_WvteKRZYkkQ5VgGB9Qa-BK-tfgt4vbxN4KS3uXDX2nMIJOeWT-Bvy4_4DQB6TWN4q0GDxN4avtIuANtzEVVj_AAt_C34HFbNFAHwRfWVxpt_PZXUZjuIJDHIh7MDg1Xr3n4_-BVgdPFdhFhHYR3iqOAx6P-PT8q8GoAKKKKACiiigAooooAK6_wCGGhReIviHpVhcR77YyGSZfVUUt_MCuQrv_gvqI074paUWICT-ZAc_7SHH64oA-vkVY0VFACqMADsKdRRQAV5L-0Do8V54AGpeWDNY3CMH9FY7SPzI_KvWa8w-PWpx2Xw0uLRmUPfTxRKp6kKwc4_75FAHyhRRRQAUUUUAFFFFABRRRQAUUUoBYgAZJ7UAdd8NPCz-LPG9hYlM2sb-dcnHAjXk_mQB-NfZscaxRLGihUQBVA6ACvPPg94HXwl4TiuLqIDU75RLOSOUU9E_Dv716NQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUANZQykEAg9Qa5vU_h_4S1gs154f09nbkyJAqOf8AgS4NdNRQB5Jqn7PvhS7VjYy3li55G196j8G_xriNW_Zy1iFC-l6pbXIHSOUFGP8ASvpKigD431D4ReOdOJ8zQLiVR0MDJLn8FJNc3d-HtasWYXej38BU4Pm2zr_MV92Uxo0cYZVI9xQB8CEFSQQQR2NJmvum88M6HqBY3elWkxbqWiGTXNX_AMH_AARqDs50WOB26mBin6dKAPjyivp-8_Z38KTsWtr3UrcntvRh_wCg_wBayZ_2a7Bifs_iS4j_AOulqH_kwoA-dqK90m_Zrv0_1PiS3k_3rUr_AOzGs6f9nLxOv-o1TS5PTczrn_x00AeOUV6ZN8B_HEXS2tJP-udxn-Yqi_wY8doTjRi3-7Kv9TQBwNFdy3we8eL_AMy_MfpLH_8AFVUl-F_jeFiH8N32R_dUMPzBoA5GiunPw78YKMnw9fj_ALZ1C3gTxUn3tBvh_wBs6AOdordPgzxKpwdEvQf-uRpR4J8THpod9_36NAGDRXRDwH4qPTQb7_v0aePh94tPTw_ff9-6AOaorqU-G3jOQ_J4cvz_ANs60k-Dfjx-ugyL_vSp_jQBwlFeix_A_wAdSddNjT_emWrUfwD8bv1hsU_3rj_61AHmFFexwfs5eJ2AM-p6XH67Wdv_AGUVow_s1X7Y87xJbp67LUtj_wAeFAHhdFfRMH7NViv_AB8eJJ5P9y0Cf-zGtez_AGdvCkJBub3U7gjt5ioD_wCO_wBaAPmCu1-F3jD_AIQ3xjBdyuRYz4hugOfkJ-9j1HWvoi0-C3ga0YE6UZ8f89pCf5YrftfAvhayx9n0GwTHpCP60AdArh1DKQVPII706mqoRQqgBQMACnUAVNT0611fTbjT72JZba4QpIh7j_Gvjr4i-CLnwP4mksnDNZzfvLWY9HT0-oPB_wDr19oVzPjjwbYeNvD8mnXgCyj5oJwMmN_UUAfE1Fa3iPw7qHhfWrjS9SiKTRMRns47MPY1k0AFFFFABRRRQAVLbzyWtzFcQsUlicOjDsQcioqKAPqj4ffGfRdesILTW7tLDVVGxjNxHLj-IN0H44r1CO7t5k3RTxOp7q4Ir4Hq0mpXyLtS9uFUdllYf1oA-1te8Z-HvDVq0-qapbxADhFbe5-irk18qfEjx7ceO9f-1YeKxgyttCx-6vcn3OBXHSzSztulleRvV2JP61HQAUUUUAFFFFABRRRQAUUUUAFex_BH4cf29qH_AAkOq2-dNtXxArjiaQYPTuB_OuW-Gvw7vPHOtKGDQ6XAd1xPjqP7q-pNfXOmaba6RptvYWUQjt4ECIo9KALlFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQBx3j_4faZ460hoZ0WK_jGbe6A-ZD6H1U-lfJfiXwvqnhPV5NN1W2aKVeUYj5ZF9VPcV9y1g-K_CGk-MdKNhqkAYDJjlA-eM-oNAHw9ijFd749-FmteCrl5ShvNMJPl3cSEAD0YfwmuCoAKKKKACiiigAooooAKKKKACiiigAooooAKKKcqs7BVUsx6ADJNADa7v4d_DTUvHV8H2vb6XGwE10Rx_ur6mur-HXwPvdZeLVPEga0sB8yWxH7yb6_3R-tfR2nadZ6TZR2djbx29vGMJHGuAKAIND0LTvDmlQ6bpdslvbRDAVRyT3JPcn1rSoooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAiuLeG6geC4iSWGQbXjdQysPQg9a8b8dfAXTtT3XvhkrY3RJLWzMfKf6f3T-le00UAfDXiDwnrnhe6Nvq-mz2xzgSMh2N_ut0P4Vi198XlnbX9q9tdwRzwOMNHIoZWHuDXlviX4CeGtX3S6XJJpVwf7g3x_8AfPH86APlmivU9Z-AnjHTmdrNLXUYV5UwS7XI_wB1sc_ia4PUfDGuaTL5d_pN3A3-3Ecfn0oAyKKVlKNhlIPoRikoAKKKKACipI4ZJWxGjOfRRmt_SfAfinXCn9n6JdyK5wHZNi_m2BQBzlFey6F-zv4hu5A2sX1pYQ91jJlk_LgfrXrPhj4PeE_DbJN9j-3XS8-bdYbB9QvQUAfOfhP4ZeJvF0iNZ2EkFoet1cKUjx6gn734V9D-Cfg_4e8JJFczwrqOqDk3E4yqH_YXoPr1r0REWNQqKFUdABgCnUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUCigUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABUcsMUyFZY0dfRlBFSUh6GgDg_HegaN_Zxm_siw83afn-zJn88V8_69Y2kany7WBf8AdjAr6R8d_wDIIP0NfOviH7p_GgDibaNDesCikZ6Yr0Tw7p1jNNGJbK3fLDO6JT_SvPbX_j_b616Z4Y_10X-8KAPftC0PSLbTY2g0uxiY9Sluin9BW9GAqKAAAB0FUNJ_5BcVaCfdH0oAWiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooA__9lxZWxlbWVudElkZW50aWZpZXJocG9ydHJhaXTYGFkBOaRmcmFuZG9tUFpDP8ZbS8p7gvNqPhsBuxtoZGlnZXN0SUQYGGxlbGVtZW50VmFsdWWCpGVjb2Rlc4KhZGNvZGViNzijZGNvZGVjUzAyZHNpZ25iPD1ldmFsdWUFamlzc3VlX2RhdGXZA-xqMjAwMC0wMS0wMWtleHBpcnlfZGF0ZdkD7GoyMDQwLTEyLTMxdXZlaGljbGVfY2F0ZWdvcnlfY29kZWFCpGVjb2Rlc4GjZGNvZGVjUzAzZHNpZ25iPD1ldmFsdWUYfWppc3N1ZV9kYXRl2QPsajIwMDAtMDEtMDFrZXhwaXJ5X2RhdGXZA-xqMjA0MC0xMi0zMXV2ZWhpY2xlX2NhdGVnb3J5X2NvZGVhQXFlbGVtZW50SWRlbnRpZmllcnJkcml2aW5nX3ByaXZpbGVnZXPYGFhcpGZyYW5kb21QHqI8VkBLwzlwYfrjWgpXZWhkaWdlc3RJRBZsZWxlbWVudFZhbHVlYkdScWVsZW1lbnRJZGVudGlmaWVydnVuX2Rpc3Rpbmd1aXNoaW5nX3NpZ27YGFhlpGZyYW5kb21QWGi-IWIgI_MtB-XClGpUWmhkaWdlc3RJRBgZbGVsZW1lbnRWYWx1ZWsxMjM0NTY3ODkwMHFlbGVtZW50SWRlbnRpZmllcnVhZG1pbmlzdHJhdGl2ZV9udW1iZXLYGFhHpGZyYW5kb21Qvj-vEOMpE20BhGOsgw3NG2hkaWdlc3RJRARsZWxlbWVudFZhbHVlAXFlbGVtZW50SWRlbnRpZmllcmNzZXjYGFhLpGZyYW5kb21QDPGSYfh4CXqcpOUZ3ZgndmhkaWdlc3RJRAVsZWxlbWVudFZhbHVlGK9xZWxlbWVudElkZW50aWZpZXJmaGVpZ2h02BhYS6RmcmFuZG9tUJFULTOmLe9KkJPIfGCxQtJoZGlnZXN0SUQGbGVsZW1lbnRWYWx1ZRhQcWVsZW1lbnRJZGVudGlmaWVyZndlaWdodNgYWFOkZnJhbmRvbVDEK7lr9QVxKVMi8R9-RxUFaGRpZ2VzdElEB2xlbGVtZW50VmFsdWVlYnJvd25xZWxlbWVudElkZW50aWZpZXJqZXllX2NvbG91ctgYWFOkZnJhbmRvbVAbvkx1Ji4LfD6B59eub3a2aGRpZ2VzdElECGxlbGVtZW50VmFsdWVkZ3JleXFlbGVtZW50SWRlbnRpZmllcmtoYWlyX2NvbG91ctgYWFGkZnJhbmRvbVCbpvYAX4VVa4zWtDFFIL6uaGRpZ2VzdElEDmxlbGVtZW50VmFsdWViR1JxZWxlbWVudElkZW50aWZpZXJrbmF0aW9uYWxpdHnYGFhWpGZyYW5kb21QGS8bDjntE11XrCOvfFkfMWhkaWdlc3RJRAlsZWxlbWVudFZhbHVlYkdScWVsZW1lbnRJZGVudGlmaWVycHJlc2lkZW50X2NvdW50cnnYGFhzpGZyYW5kb21QQU8jvEa8UzdJrK4W2Eya02hkaWdlc3RJRA9sZWxlbWVudFZhbHVlcM6TzrXPic-BzrPOr86_z4VxZWxlbWVudElkZW50aWZpZXJ4HmZhbWlseV9uYW1lX25hdGlvbmFsX2NoYXJhY3RlctgYWHKkZnJhbmRvbVCi9XKLIUe-d3W8n-LJx0ROaGRpZ2VzdElEEGxlbGVtZW50VmFsdWVwzpPOtc-Oz4HOs865zr_PgnFlbGVtZW50SWRlbnRpZmllcngdZ2l2ZW5fbmFtZV9uYXRpb25hbF9jaGFyYWN0ZXLYGFk1jaRmcmFuZG9tUGEgfv6B0yTHYlUB_kH5zYVoZGlnZXN0SUQRbGVsZW1lbnRWYWx1ZVk1M__Y_-EBPWh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8APD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSIiID8-Cgo8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiID4KPHJkZjpEZXNjcmlwdGlvbiB4bWxuczpBc3Bvc2VJbWFnaW5nPSJodHRwczovL3Byb2R1Y3RzLmFzcG9zZS5jb20vaW1hZ2luZy8iPgo8QXNwb3NlSW1hZ2luZzpJbWFnZVF1YWxpdHk-NzU8L0FzcG9zZUltYWdpbmc6SW1hZ2VRdWFsaXR5PjwvcmRmOkRlc2NyaXB0aW9uPgoNCjwvcmRmOlJERj4KPD94cGFja2V0IGVuZD0ncic_Pv_bAEMACAYGBwYFCAcHBwkJCAoMFA0MCwsMGRITDxQdGh8eHRocHCAkLicgIiwjHBwoNyksMDE0NDQfJzk9ODI8LjM0Mv_bAEMBCQkJDAsMGA0NGDIhHCEyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMv_AABEIAMIB2gMBIgACEQEDEQH_xAAfAAABBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgv_xAC1EAACAQMDAgQDBQUEBAAAAX0BAgMABBEFEiExQQYTUWEHInEUMoGRoQgjQrHBFVLR8CQzYnKCCQoWFxgZGiUmJygpKjQ1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4eLj5OXm5-jp6vHy8_T19vf4-fr_xAAfAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJCgv_xAC1EQACAQIEBAMEBwUEBAABAncAAQIDEQQFITEGEkFRB2FxEyIygQgUQpGhscEJIzNS8BVictEKFiQ04SXxFxgZGiYnKCkqNTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2dri4-Tl5ufo6ery8_T19vf4-fr_2gAMAwEAAhEDEQA_APfqq3JIkH0oNy4bGBTlUTjc3BHHFADISfNFW6rmJYVMi5yOmaT7S3otADJCd7c96mtyTuzTRAGAYk5PJxSN_o-NvOeuaALD_cb6VR3v61KJy5CEDB4OKl-zr6mgBYDmIUlwSEGPWojIYT5a4wPWlDGc7G4HXigCHe_rV-ovs6-pqP7S3otABcEiQY9KbCT5o5pygT5ZuCOOKcYkhBkGcj1oAnqnKT5rc0_7S3otOEIkAck5PPFACW5JZs-lTv8A6s_Sq7f6Pgrznrmk89jgEDB4oAi3v61bhJMQz60n2dfU1EZTC3lrggetAE05Ij49aqb39amDGc7GwB14qT7OvqaAJR0FV7kkEY9Kb9oYcYXilUefktxjgYoAZCT5o571cquYRGDICcjnmk-0t6LQAyUnzTz3qS2JJbPpQIRIBIScnnikYfZ8Fec8HNAFk9D9Kob39al89zxgc8VL9nX1NACwEmPn1onJERxURcwHy1wR70gYzny2wB14oAi3v61fHQfSovs6-pqLz3HGBxxQA65JBXHpUcZPmrz3p6j7RktxjpinGIRgsCcjkZoAnqnMT5p570_7S3otOEKSgSHOTzxQA23JMhz6VZPQ1WYeRgryTwc0n2hjxheaAIt7-tW4CTHz60n2dfU1GWMB2LgjrzQBLMcRH61U3v61KJTM3ltjB9Kl-zr6mgCRP9WPpUNySCuKZ57LlQBgcClX_SOW4x0xQAyInzV5q5UBhEYLgnI55pv2lvRaAGzE-aeadbkmQ59KcIkmAkOcn0oYCD515J45oAnqhvf1qb7S3otSfZ19TQAW5JQ59aWc4iNRFjAdq8g880glMxEbYwfSgCLe_rV5PuL9Kj-zr6mojOUJQAYHAzQBJcEjbioYyfMHPenr_pGd3GOmKUwBAWBORyM0AWKKrfaW9Fp_nN6CgCIwyEnj9afGRECH4JqxVW5_1g-lAEjsroUU5Y9qh8iT-5-tFv8A64VcoAhEqKApOCBg0yb99jZzjrUcv-tf61La_wAdADBC4IJHAPPNT-en979KfJ9xvpVCgCZ0MjllGVPeiMGE7pOBjFTQf6laS5_1Y-tAC-en979Kr-RJ_c_Wo60PSgCCIiEEPwSaV5EkUopyT2plz98fSmRf61frQAeRJ_c_Wp1kRQFJwQOlS1Sl_wBa_wBaAJZf32NnOOtMEMgIJHAOTzT7bq9Tv_qz9KAGeen979KhkjLuWUZB71DVyD_VD60AQxKYZNzjAxjNTeen979KS5_1X41UoAk8mQ5OP1qWIiEEPwSanHQfSqt199aAJGkSVCqnJPaofIk_ufrSQ_61frV2gCJZFVArHBA5FMkImACckHPpUU3-tb60-1-8fpQA0QyBgSOAcnmrHnp_e_SpD901n0ATSqZpNyDIxjNEamN9zjA9ay9Z8U6J4YsvP1jUoLQHkKxy7fRRyfwrze8-MGr-IZXsvAfhm6v2Bw13cp8g_AcD8SPpQB7H5qHof0rLm1Cyt5Nkt9bRyE8JJMoJ_M15R_wgPxC8U_vPFPi02MLNk2lnzj8sD-dP1f4MeCfD3hu91PVLnUpfs8Jd5nnAJOOMAL1JwMc9aAPYoXWNcsRhuQQc5p7SIyFVOSRwK8w-CY1D_hW9s98ztE88ptRIekXA_LdmvSIv9an1oAXyJP7n61MsiRIFY4I7VNVKb_Wt9aAJpSJgAnJBqLyZBg4_WnWv32q0eh-lAEfnp_e_SoZQZjuTkY61DVu2_wBV-NAEUcZRwzDAHepvPT-9-lE_-qP1qnQBKYXJJA4J45p8f7nO_jPSp0-4v0qC56pQA9pEYFQckjpUHkSf3P1pIv8AWp9au0AQrKqIFY4YdqSUiYAJyQaim_1pp9t98_SgBnkSf3P1qx56f3v0qT1rPoAmlBmO6PkYxQiGNwzDCjvUtt_qz9aWf_UtQAeen979KgMLkkgcE8c1FV-P7i_SgCCP9znfxnp3p5kRwVB5PFNuv4agi_1i_WgB3kSf3P1qXym9KnooApmRsn5m_OpIAGTLDcc9TTjb5Od36Uzd9n-XG7POaAHzALEWUAEdCKg81v7zfnUvmeb-7xjPfOaPsv8AtfpQBIiKUBKgkjkkVFP-6xt-XPXFHn-X8m3OOM5o_wCPj_Zx-NADEZi4BYkE4IJq15af3V_KoPI2fNuzt5xil-1f7P60AMlLJIQpIHoKWElpMMSRjoaXyvP_AHmcZ7Yo2_Z_mzu7YoAn8tP7q_lVTzW_vN-dS_av9n9aPsv-1-lACwAMpLfMc96c6hYyQACOhAqPP2f5fvZ5o87zv3eMZ75oAj81v7zfnVlEBQEgEkckio_sv-1-lJ5_l_u9uccZzQAT_utm35cnnFRB2JALHBODzUuftHH3cfjR9n2_Nv6c9KAJ_LT-6v5VWmJWQhSQMdBT_tX-z-tJ5Xn_ALzOM9qAEhJaTDEkY6GrHlp_dX8qg2eR-8zn2pftX-z-tAEJkbJ-ZuvrU8H7xSW-bB4zR9nzzv6-1Nz9n4-9nmgCV1AQkAAgcECq3mt_eb86k83zf3eMZ75zS_Zf9r9KAJI1BjBIBJHJIqOf5EG35cnnHFZmt-I9L8MWDXWr3kVrAvALHlvYDqT9K8sufiB4w-IdxJYeA9LksrAHbJqlzwfwPRfoMn6UAeheJPG-h-EIPM1jUlikIysCHdK30UfzOBXnp8Z-PfiGxh8H6OdH0tzg6jdDkj2PT_vkE-9bnhj4MaTpd1_aevzSa5qrHe8lzkxg_Q9fqc_QV6RHMscYVYgqgcKO1AHl2h_BTSLO7-3-JbmfXtQb5na4JEWfp1b8T-FelWNtDaRpbW0MUMCjCxRqFUfgKsbPP_eZx7U0hbZWmZwFUZJJwAP8BQBNIYoozI-1UUZJPQCvCdd1G8-MPi1fD-jyyR-FrCTzLu7XpMR6fyUfjVnxL4m1T4qa1J4U8JSNDokZ_wCJhqPIDrnkA-nt_F9K9U8O-FtO8L6NDpWmpsij5diPmkfuxPc0AXtMsraxsYrK2hSO2t1EcUYHCqBirkigRkgAEDggVFn7Px97PNHneZ-724zxnOaAI_Nb-8351YRQ0YJAJI5JFM-y_wC1-lJ5vlfu8Zx3zigB04CAFflJPaoBI2R8zdfWpc_aOPu45p32fHO_p7UAS-Wn91fyqvMSsmFJAx0FO-1f7P60mzz_AN5nHtQA2ElpAGJIx0NWfLT-6v5VB5XkfvM5x2pftX-z-tAEJdgSAxwDgc1LB-9zu-bHTNH2ff8APv689KP-Pfj72aAJXQBCQACBwQKrea395vzqTz_M_d7cZ4zml-y_7X6UAPRQ0YLAEnuRTZwFUFflOe1N87yf3eM475oz9o-XG3HOaAI_Nb-8351b8tP7q_lUP2X_AGv0o-1f7P60ANmJWQBSQMdBSRF2kAYkg9jTtn2j5s7ccYo8ryP3mc47YoAn8tP7q_lVV2YOQGIAOAAak-1f7P60nkb_AJt2N3OMUAEH73O75sdM1KyIFJAAIHUCov8Aj3_2s_hR5_mfLtxnjOaAI_Nb-8350_e3qfzp32X_AGv0p_k-_wClAEm9f7w_Oq04LuCoyMdRUTdTVm2_1Z-tAEUIIkBIIHqRirW9P7w_OmT_AOpaqdAEjK5ckAkE5BAp8HyZ3cZ6ZqxH_q1-lQ3X8NAD2YMhAYZI7Gqnlv8A3G_KiP8A1ifWr9AEMJCRAEgH0PFE5DJhTk56Cobj_XGlt_8AWn6UAR-W_wDcb8qvb0_vD86Ws_1oAmny0gK8jHamxBhKCQQB1JGKltPuN9afN_qmoAfvT-8PzqoysZCQCQT1AqOr0X-qX6UAQQfKTu4yO9TFlIIDDp61Hc9E-tV0--KADy3_ALjflVmEhYgGIB9DU1U5_wDWn6UATTENHhSCc9BVby3_ALjflUlr_rfwq3QA0OmB8w_Oq8_zEbeeO1QnqfrXN-LPiFoXgiyLahceZeMuYrOI5lf0-g9z-tAHTMyQKZp2EUSDLMxwAPcntXmHiH4wPd350LwHYvrGpscfaQMwp7j1-pwPc1kR6N43-LTi716aXQvDW7dHZx_fmH0PX6tx6CvT_D_hrSPC9gLPSLKO3THzuOWf3ZupNAHn-i_CG61W-Gt-PtRl1a_b5haqx8pPYkdR7LgfWvV7C2gsIFt4IY7eCMbY4412qPoKuRf6pPpUVz9xPrQBIWXB-YdPWqflv_cb8qB1T603VdXstD06bUNSukt7aEZZ5Dx_9c-woAmkuYLOzkuLqVYYYgXkeQ4CjuTntXi-u-INa-L-rSeHPCpktfDcTYvdRKkeaPT6HsvU9TgVDdT698bNVeC3M2leDreT95KRhrgj-Z9ui98mvXtA0bT_AA_YQ6ZpVstvbRDhR39ye5PrQBW8OeGrDwvo8WmaZbGOFeXcj5pX_vMe9dCGXA-YdPWn1QPV_rQBNP8AMRt5wO1MjDhwSCADySKltuj_AFqSb_Ut9KAHb0_vD86qShjKSASD0IGajq9F_qk-lAFeD5Sd3HHerBdMH5h-dRXf-rH1qsOo-tAC-W_9xvyqzCQseGIBz0NTVUuv9b-FAEsxDREKQT6Cq3lv_cb8qfB_rR9KuUAMVlCgFhkD1qGf5yNvOOuKhf8A1h-tWLXo_wBaAIlVhICQQAepFW96f3h-dJL_AKpvpVGgCWQOZCQCQehAzSwZWQluBjvU0H-pWm3P3B9aAJd6f3h-dUfLf-435UnpWhQBXgIRCGODnoadMQ8RAIJ9BzUdz_rh9KbB_rxQAzy3_uN-VW1YKgBYZA7mpKoSf6x_rQBNP8-NvOOuKYquHBIIAOSSKltf4qlf_Vt9DQAu9P7w_Ol3D1H51n1NQBN5EZ7frUMhMJCJwCPrUpuEHr-VRsDOdy9BxzQAiSl3CscqfapvIj9P1qERmEiRsYHXFS_aE_2vyoAhMzIxUHgH0p0f7_O_nHTtSGFnJYYwTnmlT_R87u_TFAEhiRQSByBkc1B58nr-lTGdHBUZyeORUX2Z_b86AJURJFDsMsetJKBCm5ODSCVYR5bZyPShmE6bVznPegCPz5PX9KseRH6frUH2Z_b86m-0J_tflQBHKTEQE4BHNNSV5HCMcqevGKcwM53L0HHNIIzCRI2MDrigCbyI_T9agMroSoPAOBxU32hP9r8qiMJlJcYweRmgBU_f5EvOPwqQwoASByBxzUa_uMlu_TFSGZCCBnJ46UAQefJ6_pUqKky725J4qP7M_t-dSLIIV8tuo9KACVRCu5ODmq0t0IIZJ55ViiQbndmACj3J7VkeK_GWjeEtJN3q9z5Wf9VCnMkx9FH9eg9a8tj0zxd8ZJ1uL9pdE8Jh8xwKfnnHY_7R9zwOwNAGnrvxNv8AxJqTeHvh1aPeXR4l1Ij93Fz1GeP-BH8Aa1fCPwnstBvBrOuTf2xrsh8xppvmjib2B6n_AGj-AFdpoGh6P4X0xNP0i0W2hTrgfM59Se5-tajDzyCvQdc0ANjleQhGOQevFT-RH6frUIhMREhxgdcVL9oT_a_KgCF5XUlVOADgcU6ImYkPyB0pDCZSXGMHpmuC8cfEyy8Hn-zbGMalr83yxWkXzbCehkx_6COT7daAN_xb4s0XwXpTX-qTYY_6m3U5kmb0A_r0FeY6ZoHiD4t6hFrviwvY-Hozvs9OQlfMHr9D_ePJ7YFanhT4cXmr6qvirx_Kb3VJDuhsH5ig9Nw6cf3RwO-TXq_2duPu8cCgBmn2FrZ2MNtbQRwQQjZFFEu1VA9BU8iiFdycHpSKwgGxs59qGYTDy1zn3oAj8-T1_SpxDGRkjk89ah-zP7fnWVrfjTw74bjP9q6tbWzgf6stmQ_8BHNAGvKTCQE4z1pqyu5CseCcHivItT-OttfXH2PwnoF9q11_CzqQP--Rkn8cV3fgq78SX-h_a_E-nw2N75p2Qx8Ex44yMnB68UAdT5Efp-tQSSvGSinAHTipvtCf7X5VEYTKTIMYPTNACxEzEh-QOlS-TGOcdPeokBgJLdDwMVJ9ojPHzc-1AEHnyev6VLEomTc_JqP7M_t-dPVhANjZz7UAK6pCpdRgiovPk9f0qVpBMvlr1PrUf2Z_b86AJhCpAJHJ681HL-4xs4z1p4nRAFOcjjpTW_f4K9vWgBgldyFJ4JweKn8iP0_WoRCYiHOMDk4qX7Qn-1-VAETuYiVU4UdOM0REzEh-QBkUGMzEyLjB6ZpVBgJZuh9KAJfIj9P1qv58nr-lT_aE_wBr8qh-zP7fnQBJEBMm5-TSugjjLKMMOlIrCAbW6nnikMqSrsXOT0zQBH58nr-lTiJGAJHJGTzUP2Z_b86lE6IApzkccCgBkv7jGzjPWmiVmYKTwTzxTn_0jG3t1zSCBlcMcYHJxQBN5Efp-tL5S-n6037Qn-1-VO85fegCm3U1Ztv9WfrU1Vrn74-lAEs_-paqdSQ_60Vc4oASP_Vr9Khuv4ahl_1r_WpbX-OgCCP_AFifWr9I_wBxvpVDmgCS4_1xpbf_AFp-lTwf6laS5_1Y-tAEtZ_rRWhxQBBafcb60-b_AFTVFc_fH0pkP-tH1oAjq9F_ql-lO4qjL_rm-tAE9z0T61XT74qe3-830p08scMDyzMqRqpLMxwAPegCavL_AB58UbTQLxtF0OH-1PEEhEaQxjcsbH-9jqf9kfjiue1_x9rPjbU5PDHw_EnldLrVfuhF77D_AAj36nt613HgL4c6T4MtfPiX7Vqso_fX0o-Y-oX0H6nvQBy_hP4V3GoauviTx7cHUtVk-ZbNzmKH0B7HH90cD3r19VCKEUAAdABwKZc_6r8aqc0AB6n61atfut9amHQVWufvj6UATy_6p_pVAlIwXYhVUZLk4AH-FUda8QaZ4a059S1a7W3t4-56ufQDufYV5PLc-K_jVcGGyEui-Dw-HkcfvLjH_oR9h8o7kmgDT8QfErVPEWonwv8ADyE3N4w2z6kPuQjodpPYf3j-AJrofBXwzsPBqfb7l_7R1yY5mvpecE9dmen16n9K3_D_AIX0nwlp66fpNsIYs5kdvvSn1Y960LrVLDSLZrrUr2G0hA5eeQIP1oAlHVPrV-vI_EHx88O2Ba30W2uNXuDwpVdkRP1PJ_AVzf2j4uePj-6Q6Bpsn8fMHH1P7w_higD17xF4p0Lw4DJq-qW9rxwjtlj9FHJrzXUfjzatcfZfCuh3mq3TcK0ilQfooyx_SrOgfAPRomF54g1C61a6Jy4yY4yf_Qj-Yr03T9B0rQbPyNK0-3s4h2gjCk_U9_xoA8gGk_GLxxzqN8nh-wf_AJZo3lHH0XLfmRWpovwL8NWEvn6vPdavc5y3mt5cefoOT-Jr1Hn1NXx0H0oAzNG0nTtItTb6bY29pEP4YYgo_TrWlL_qn-lV7r7w-lMi_wBan1oAZV6L_VJ9KdxVOb_Wn60AS3f-rH1qsOo-tT233z9KsnoaACql1_rfwqLmrdt_qvxoAgg_1o-lXKjn_wBUfrVPmgBX_wBYfrVi16P9amT7i_SoLj7y_SgCaX_VN9Ko06L_AFy_Wr3FAEcH-pWm3P3B9ahm_wBaafbffP0oAg9K0KOKz6AJrn_XD6U2D_Xip7b_AFZ-tLP_AKlqAJKoSf6x_rSc1fT7i_SgCG1_iqV_9W30NQ3P8NQxf6xfrQA2pqtcUUAQG4IOMCgKJ_mbgjjiozE-T8pp8REKkPwSc4oADGIQZASSOxpPtLei0-VlkQopyx7VD5Mn900ASCBW-Yk5PJxSH_R8bec-tSK6KApOCBjFRzfvcbOcdcUAJ55fCkDDcGn_AGZfU1EInBBKYAOTVrzo_wC-KAK5lMJ8sAED1pQxn-VuB14psiPI5ZRlT0NLEDCdzjAx1oAf9mX1NN-0t6LU_nR_3xVXyZP7poAeB9o-ZuCOOKUwiEeYCSR60QkQgh-CTTpHWRCinJPagBn2lvRaUQLIA5JyeTio_Jk_umqHiDxLpnhbRpNS1ScRRIMAA5Z2_ugdzQBLq-q2Ph3TpdR1G6SC1iHzPIensPUn0rxue78R_GvUntbMy6V4Phl2ySn785z-p9ug75NLp-j658aNaTWteEtl4Wgb_RLJDgzf57t-Ar2ix0-LTbSG1tLaOC1hAWOKMYCgUAVfD_hbSvDGkx6bpVuIIF5J_ic-rHua0jIYT5YAIHrU_nR_3xVeRC7llGR60AKGM58tsAe1O-zL6mmRAxSbnGBjrSy3dvb27zTzLFDGNzyOcBR7k0AJ9pI4wOK4fx18TNK8JILRVN_rT8Q2EJ5BPTzMdB7dT6VwPjr41rcSyaP4UuFiUkpLqj8AD_pmP_ZuvoK4vSPHGi-DS91o2nHVtdk_1mq6lnCk_wDPNM5_EkE0Aek6J8OtY8X6gvib4izkhBug0sHakadfm_uj26nua6bXPi14O8J2_wBjiuY7mWEbVtbABguO2egrx6C1-J3xYfdJNOunt_HIfItx9APvfrXSQeAPh34DAn8Ya1Bf3y8m0U8Kf-ua_OfxwPagCKf4q-O_G13JaeDdDe3jJwZ0TzWX6yH5Vq3YfA7WNZul1Dxt4gllkJyYYnMj_TzDwPwBqwfjNNc-XpHw_wDCTzBOFLJhV_7Zp0HuSK9e02a-u9Hs5NRgSG_aINPDEchGxyAaAMnw94L8N-GFQaTpUEMvTz2G6X_vo8_lium-zD-8ahEUgcErwDk1a86P--KAIC5hPljBHvQHMx8s4A9qSUGWTcgyMdaIlMb7mGBjrQA_7MvqaZ9oI4wOKsedH_fFVTFIXJC8E5FADwPtGS3GOOKUwiMGQEkjkZpIT5OQ_GTxT2lSRCqnJI6UAM-0t6LSiESr5hJBPpUfkyf3TU6yIqhWOCOooAjI-z8rznjmk-0k8YHNOmImACckGo_Jk4-U0AS_Zl9TTSxgOxcEdean86P--KrygyybkGRjrQAokMx8sgAH0p32ZfU1Tu7-z0iI3WpXcFpCo5kmlCj9a4HXfjt4P0relnLPqcw6C2TCf99Nj9M0Aej-eV-QAccUo_0jJbjHTFeE_wDCzviJ4skI8K-FjBC3SZojJ_4-2FqUeCPi_reX1XxUunI3Pli5IP5RDH60Ae5mAJlwSSORmm_aW9FrxGP4S-PbYmS08fyNN_dM8yg_rVm28PfG21byB4gsZIunmSsr_wA0zQB7OIhMBISQT6U0j7P8y8k8c1zXhnSPEVgVn8Q-J21CUIR9mhto4ohn3xuJ_L6V00xEwATkg0AJ9pb0WnfZl9TUXkyf3TVrzo_74oAgLGD5V5B55pBKZm8sgAHuKJQZjuQZGOtJGjxuGYYUdTQBJ9mX1NM88plQBheBVjzo_wC-KqmJySQmQTkUAPH-kZ3cY9Kd5CrlwTketNh_dZ38Z6ZqQyIwIBySMYoAj-0t6LT_ADm9BUPkyf3TUvlN6UAT1Vuf9YPpTTK2T8x_OpIQHQlhuOcZNAEdv_rhVyopFCxllABHQiq3myf3z-dACy_61_rUtr_HUiIrICVBJHUiop_3WNny564oAsSfcb6VQqRGYyAFiQTyCateUn9xfyoAbB_qVpLn_Vj61DKXRyFJAHQClhJkfDHIx0NAENaHpTfKT-4v5VU81v7zfnQBJc_fH0pkX-tX61JABICW-Yg96fIoWMsoAI6EUAZ2v67Y-GtFudW1GURW0C5Y55J7KPUk8V45oGh6n8XPEH_CU-JlaLw_CxFhYZ4k_wDrep7njpUvxovEu_FPhfQ9Uu2tdEmfzrqU9D82Dn6D8s5r1K18QeFLPT4Y4NZ0iK1jjCxqLqPAUdO9AGtZxRwRiKNFSJFCoqjAUDsPYVbf_Vn6VwuqfFXwRpY51-CRh1S1BlJ_754rkbr47R3sptvDHh3UtUnJwCw2g_guT_KgD1mo73WdM0SzE2qX9vZxD-OeULn8-teT-V8Y_FxORZ-GrKTrjCyAfq2fyrzPxZZ-GvD08kM2sXPinXBxJIzlbeE-5yWkI9AQPX0oA9Z8S_Hzw3YK8Okwz6pMOjAeVF-Z5P4CvJ_F3jfXvGVsG1e_g03T85i0-3zul9CV6n6tgegrzxnLPv4BJ6AYrd8P-HvEevXX_Ej066uZM8zRrwv1c8D86ALFj4Qe5CXOo3dvomnNyJ798SOPVIh87_gMe9dDaeIPA3hRl_sTRJvEGojgXepjbED_ALEQ_rzWvpvwhtoZPtXjXxVp9jk_NBHcq0v4seB-Ga7jSNe-D3ghP9BuLSS4H_LdImnlP_AscfhigDlbW0-LXxD2eZO-j6Y3A_5dowPZR8xrsvDfwD8Pacy3Gtzz6tc9Srny4s_Qcn8T-FRXv7QPhpZDHpmlaley9isYQfzz-lVF-K3jrVcjRPAVzsP3ZJ95_oBQB6xaafZaVD9l06zgtIF6RwxhR-lW7X7x-leQj_hd-rjIi0rSlbuRHkf-hGkf4cfEi-A_tb4hSRK3VbYyf020AezSyJGhLuqjHUnFYc2uaPBxPq1hGfR7mMf1rzVfgPZ3TBtU8UaveEnnkDP55rWh-AHgmJcOmozH1e5x_ICgD0DTtW0y9Hl2eo2lw_XbFMrn9DV65_1R-tfP_wASvhn4Y8EeG21rSru_s7-KVVtx52dzk_mMDJyPSvX_AATdX994Q0a41Ulrya0jebd1JxwT7kYNAGtWgPuim-Un9xfyrD1bxHpWhRmTVdWtrNB0EsoBP0HU0Aal194fSmRf61PrXlep_HfRI5Ta6Dpl7rN2fuYj2If5sfyqh5nxh8ZKSkNt4asW7keXJj9X_lQB6_qet6XotubjVNQt7OIc5nkC5-mev4V5rrfxx8M2twYNIhu9YuWOEEEe1CfqeT-ANZJ-EGhaVZ3GueNNevtSEC-ZM5cqv9WOenavN9f-ItqqPp3gzSLfRNOxteeNR9qmHvJ1A9gc-9AG9qvxy8ZSX5tdP0220-UkKIfJMsufTnv7Yr3zRtUuoPCdlfeJ5ILG8MAa68xhGqt-PT6V8zeCrTxYcTeE_Dpa8k4Oqzxbyuf7jP8AKn1GT7131r8Ftc8QXC3fjTxPNNITzDExlI_4EeB-AoA6HXvjf4T0ndFZyTapOOgthiP_AL6P9M1zK-M_ir42Gzw5ov8AZVi_AnK4_wDIkn9BXqGgfDLwl4aVWsdIgecf8vFyPNk_M9PwxXSzErIApIAHAFAHiln8Cb_U5_t3jLxLcXcpOTHAxc_99t_QV3uifDrwl4fANlo0BnXpPOPNk_M9PwxXWwku4DEkehqz5Sf3F_KgBEUKigKAAOAB0qK56pUZkYMQGOAcDmnwfvc7_mx0zQBHF_rU-tXajdFVCQoBA4IFVfNk_vn86AHTf600-2--fpUkahowzAEnqTTZgEUFflJOMigCf1rPp_mt_eb86t-Un9xfyoAZbf6s_Wln_wBS1QzExsAp2jHQUkZd3AYkg9QaAIqvx_cX6UnlJ_cX8qquzCQgMQAeADQBLdfw1BF_rF-tSwfvc7_mx0zUroqoSFAIHUCgCSiqPmyf3z-dT7j_AHzQAhtiTncPypN32f5SM55yKsbx6j86rT5LgjkY7UAO83zf3eMZ79aT7Kf74_KmwgiQEggepGKtb1_vD86AK_niL5NpOOM5oP8ApHT5cetROHLkgHBPGBUtv8ud3GfWgA8gp82_O3nGKX7UP7h_OpWIKEAjp61T2N_cP5UATeX5_wC8BxntS7PJ-cnPbAp8TBYgCQD6HiknIKADk57UAN-1D-4fzpfs5_vj8qr7G_uH8qvb1_vD86AK4P2f5TznnijzvO_d4xnvST_NIMc8dqbCCJQSCB6kYoAzdc8LaV4ksBZ6xZx3cIOV3DBU46gjkH6VxR-B_gRZDmxvDg4x9rbFepb1_vD86qSBy5IBIJ4wKAOT0_4WeCLADyPD1qzLzuuMyn_x41r6lf6J4O0hr28mtdOs4uixoE3ewA6n2Fcr4w-KuneGbh9J0uI6trrny1tYeQjdtxHf_ZHP0rF0T4Y6r4pv18QfEa7e5m-9DpathIh1w2On0H4k0AZt54g8Y_Fx5rLw5E2jeHRlZL2UkNN7ZHr_AHR-Jrgv-FGeOi5UafbFc_eF0mDX1DDbJbQR29vCsUMQ2rHGuAo9gKuwECIAkA-hoA-YrX9n7xeWDz3Gm24B6mYtj8hXW2vwR1meERar40uGtwMCC3Rto_AnH6V7hOQUwDk56Cq2xv7h_KgDzKy_Z68KwZa7u9RvGP8AelCD9BXSWHwv8EaSFEXh21lYcg3AMp_8ertwwwOR-dVp_mIxzx2oAr2lhYWgEVnY29sD08mJUx-VWfsznrJTIwRICQQAepFW96_3h-dAEPnCP93jOO-aaT9o4Hy455pkgJckAkE9QKdb_KW3ccd6AF-zkc7xx7Uv2of3D-dTlhg8j86o7G_uH8qAPDfjZfFfHOgLrNrct4dhUSsIRnzWz8w54zgAfQ1pH42alqDrH4W8F3t023arygkD04UdPxFezLHFJB5cqK4z0cZ_nSuFEGyMAD0WgDxZrD4xeLf-P3Ubfw9aN1WIhWA_4BlvzIrV0n4CaFDMLrXL681i5fl_McopP4cn8TXpuxv7h_KrwYYHI_OgDG0rQtI8OwiHS9MtrVCP-WMQUn6nqfxrT84Sfu8Yz3zTbj5iNvPHamRghwSCADySKAKmqaJZ63pVzpuoIJrS4TbKvT9exFYGj_Dfwd4fkBtdBt3mXpLP-9b_AMf6fhXa71_vD86qSgmUkAkZ6gZoAcm2RBGihFXoMdKX7ORzvHHtSQfKTnjjvVksMHkfnQBB9qH9w_nSbPP_AHgOO2DUOxv7h_KrUJATB4Oe9AEfl-R-8JzjtS_ah_cP50s5BiIBBOegqvsb-4fyoAm8gv8ANvHzc9KB_o_B-bPpUysNg5HT1qG4-Yrt5x6UAHniT93jGeM5o-yn--PyqKIEOCQQAeciru9f7w_OgCv53k_u8Zx3oz9o-UcY5yaZMCZSQCR6gZp0HysSeOO9AD_s5_vj8qT7UP7h_Op96_3h-dUdjf3D-VAE237R8wOMcYNHlmH94TnHanwEBCDwc96WUgxEAgn0FADPtQ_uH86TyC_zb8bucYqHY39w_lVxSAgBI6etAEI_0fr82fSjzxJ8m0jdxnNFx82NvOPSo4w4kBIOM-lAEn2U_wB8flUnlH-9-lSb1_vD86XcPUfnQBQbqas23-rP1p3kIex_OoZCYSFTgEd6AJp_9S1U6mWUykKx4PXtU3kJ6H86AHx_6tfpUN1_DUZmaNioIwD6U6P9_nfzjpigCGP_AFifWr9RGJFBYA5Az1qDz5PUflQAXH-uNLb_AOtP0qRYkmUM3JPWh1EKb04PvQBPWf61J58nqPyqx5Ceh_OgBlp9xvrUk_8AqX-lQsTEQqdCMmvPfFnxWstIvP7H0WE63rbt5a21tyqH_bI7j0H4kUAdbq2sadoVhJf6pdxWltH1aQ9fYep9hXl114r8XfFGeTTfB0Mul6Ep8ufVJvlZx7en0Xn1Iq3o_wAMNX8V36a78Rbx7iTrDpcTYjiHocdPoPxJr1O3hi0-BLS0hjgt4htjijUAKO2KAOY8I_DrRPBFuDaRfaNQf_W30wzI3rj-6PYfiTXUp98VNH-_yH5x6U8wKASAcjpzQBNVOf8A1p-lHnyeo_KpkRJRubkmgCK1_wBb-FW6ruohTcnBz3qPz5PUflQBGep-tWrX7rfWl8iM84PPvUcpMJATgHrQBPL_AKp_pVGpVleUhWPB68VP5Ceh_OgB0X-qT6VFc_cT61GZXjJRTwOBxToiZiQ_IHSgCEdU-tX6hMEYBIByOetQ-fJ6j8qAFuP9afpRb_60fSpVQTLubk9OKGQQruXg9OaAJqoHq_1p_nyeo_KphBGQCQcnnrQAlt0f61JN_qW-lQv-4ICcZ600SvIQjHg8HigCKr0X-qT6U3yE9D-dQNK8RKqeB04oAku_9WPrVYdR9aniJmJD8gdKk8iMc4PHvQBLVS6_1v4Unnyeo_KpEUTJufk57UARwf60fSrlQsqQruXgiofPk9R-VADH_wBYfrVi16P9acIVIBIOT15qOT9xjZxnrmgCeX_VN9Ko1KJmZgpPBPpU_kJ6H86ACD_UrTbn7g-tRtKYiVU8Dp3pY2MxKycgDNAEHpWhUfkJ6H86r-fJ6j8qAHXP-uH0psH-vFSRqJk3vyfalaJIVLLwR0oAnqhJ_rH-tP8APk9R-VTiJGAYg5Iz1oAba_xVK_8Aq2-hqCT9xjZxnrmmiVmYKTwTzxQBFU1TeQnofzpfJX3_ADoAQzoPX8qiYGc7l6AY5qFupqzbf6s_WgCNY2hIdsYHXFS_aY_f8qWf_UtVOgCYwsxLDGCc9aVP3Gd_fpirEf8Aq1-lQ3X8NACmZGBUZyRjpUX2eT2_Oo4_9Yn1q_QBXWRYQI2zkelKzCddq9feorj_AFxpbf8A1p-lAB9nk9vzrnvE3xF8OeE4iuoXwa6_htIPnlb8B0_HFXPE3hkeJ7WG2fVtU0-NGJf7BceUZQezccisfQPh54Y8NSefY6csl3nJuro-bL-Z6fhigDkJF8e_FFsBX8MeG345z9pnX-eD-A-td34V8CaF4Kg26ZZqspXEt1Id0r_U9h7DArprflT9afP_AKl_pQA37TH7_lURiZiXGMHkZNQ1ei_1S_SgCBP3GS_fpipDMhBAzk8dKbc9E-tV0--KAJPs8nt-dPRxEvltnI9KsVTn_wBafpQBK7Cddi9evNR_Z5Pb86LX_W_hVugCLz0HHPHtUbgzkFOg4OagPU_WrVr91vrQBGI2iIdsYHJxUv2mP3_Kny_6p_pVGgCYwmUlxjB5GaVB5GS_fpip4v8AVJ9KiufuJ9aAHeeh4Gefaofs8nt-dRjqn1q_QBCjiIbG69eKGYTDYuc9eaiuP9afpRb_AOtH0oAPs8nt-dTeeg4OePapaoHq_wBaAJnHn4KduuaQQmIhzjA5OKfbdH-tSTf6lvpQA37TH7_lURiMpMi4wemahq9F_qk-lAECAwEl-h4GKk89Dxzz7U27_wBWPrVYdR9aAJfs8nt-dSIwgXY3XrxU9VLr_W_hQA9pRMvlrnJ9eKZ9nk9vzpIP9aPpVygCETooAOcjjpTH_f42duuahf8A1h-tWLXo_wBaAGCJlIc4wOTg1L9pj9_yp8v-qb6VRoAmMZmJkXGD0zSqphJZ-hGOKlg_1K025-4PrQAv2mP3_Kofs8nt-dRelaFAECsIBtbqeeKRpFmBjXOT6025_wBcPpTYP9eKAF-zye351KJkUBTnIGOlTVQk_wBY_wBaAJn_AH-NnbrmkELqQxxgHJ5p9r_FUr_6tvoaAGfaY_f8qd5y-_5VSqagC1gegqrccSDHHHanm4IOMCgL5_zHgjjigCKHmUZq5gegquUEI8wEkjsab9qP90UARyk725PWp7fndnn60vkK_wAxJyeaYf8AR8Y5z60ATsBsPHaqOT6n86m88t8mBzxT_sqf3zQA-DmIZpLjiMY457VGZDEfLABA7mgMZ_kPA9qAIMn1P51oYHoKg-yp_fNN-0t_dFACXHEgxxx2psOfNFPA-0fMeMccUpjEI8wEkjsaALGB6CqMpPmtyetSfaj_AHRTxAH-ckgnmgBtvyTnnjvU7AbDwOlQH_R-Rzn1pPPLfJgc8UAQ5Pqfzq3BzEM-vem_ZU_vmmmUwHywMgdzQBJPxFxxz2qpk-p_Opw5n_dkYHqKd9lT--aAJgBgcCq1zwRjjjtR9pI4wOKUD7RyeMelADIc-aPrVzA9BVcwiMeYCSRzg037Uf7ooAZLnzT160-25Jzzx3pwhEn7wkgnnApCPs_I5zxzQBYIGDwOlUMn1P51N9oJ4wOaf9lT--aAHQcxc-veifiI49e1RlzB-7AyPU0CQznyyMD1FAEGT6n86vgDA4HSofsqf3zTPtBHGBxQAXPBGOOO1RxE-avJ61KB9o5PGPSlMIj_AHgJJHODQBYwPQVTmz5p-tO-1H-6KcIhKPMJIJ7CgBtvzIc88d6skDB4FVyPs_I5zxzSfaSeMDmgCHJ9T-dW7fmHnnnvTfsqf3zTSxg-Qcj3oAkn4hOPWqmT6n86nEhmPlkAA9xTvsqf3zQBKoGwcDpUFxwVxx9KTzyvyYHHFKP9I5PG30oAiiJ81eT1q9gegqAwBPnBJI5pn2o_3RQA2bIlOKdb8yHPPHenCMTDzCSCewpCPs_zDnPHNAFnA9BWfk-p_Op_tLf3RTvsqf3zQA635jOeee9LPxCcVEW8j5RyDzzQJDKfLIAB7igCDJ9T-dXlA2DjtUX2VP75pnnlfkwOOKAH3HG3HH0qCMnzByetSj_SM54x6U_yFX5sn5eaAJsD0FGB6VV-1H-6Kl80-goAi9PpU0P3PxqH0-lTQ_c_GgB0v-rNV6sS_wCrNV6ALKf6sfSo5u1SJ_qx9Kjm7UAMj--PrVmq0f3x9as0AQSffNEP-sP0ok--aIf9YfpQBPVb1qzVb1oAkh-4frT5PuN9KZD9w_Wnyfcb6UAVqsp_qx9KrVZT_Vj6UAMm6D61Cv3x9amm6D61Cv3x9aALdQS_fqeoJfv0AEP-sP0qeoIf9YfpU9AFY9T9akh-4frUZ6n61JD9w_WgB7_6s_Sq1WX_ANWfpVagCyn-rH0pk3QfWnp_qx9KZN0H1oAjH3h9as1WH3h9as0AQS_foi-_RL9-iL79AE9Vj94_WrNVj94_WgCSHofrT3_1Z-lMh6H609_9WfpQBWqzH9xfpVarMf3F-lADJvuD61GOo-tSTfcH1qMdR9aALNQTf6wfSp6gm_1g-lABD94fSp6gh-8PpU9AFRvvn61ND0P1qFvvn61ND0P1oAe_-rP0qtVl_wDVn6VWoAsx_cFMm-5-NPj-4KZN9z8aAI_SrNVvSrNAEE3-sH0pIvvilm_1g-lJF98UAWKrSffP1qzVaT75-tAD4e9SN9w_So4e9SN9w_SgCtSN94_WlpG-8frQB__ZcWVsZW1lbnRJZGVudGlmaWVydHNpZ25hdHVyZV91c3VhbF9tYXJramlzc3VlckF1dGiEQ6EBJqEYIVkBRjCCAUIwgeigAwIBAgIISS_j2ObdAj0wCgYIKoZIzj0EAwIwJzElMCMGA1UEAxMcZGV2Lmlzc3Vlci1iYWNrZW5kLmV1ZGl3LmRldjAeFw0yNDA3MTYwNjA5MjhaFw0yNTA3MTYwNjA5MjhaMCcxJTAjBgNVBAMTHGRldi5pc3N1ZXItYmFja2VuZC5ldWRpdy5kZXYwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAATXIUU3EpU86lQP8q4GQJZ2nzmTDaWgds6LTzgXfCoB_Vpa87eNvzJGnziTnJj57cCdDyWQLYXwcanLjtchto2UMAoGCCqGSM49BAMCA0kAMEYCIQDykz3jnb882dY4eT1AComb5QYHwOqxyC1Q3mUbnunsAQIhAJ8AjBIQLUcJE1kDjA-YyXThU_gfNIAX-1yE_pDTeR5aWQTr2BhZBOamZ3ZlcnNpb25jMS4wb2RpZ2VzdEFsZ29yaXRobWdTSEEtMjU2bHZhbHVlRGlnZXN0c6Fxb3JnLmlzby4xODAxMy41LjG4GgBYINoG1uwi3a5Okkk_phe1iSIr7tQpXfv2RpZP4oF-MRHbAVggb7icfCKLlnpD5Z6Q39uoy6xn0doP_WCvvx7v4VUSWooCWCCYOttcPtLEe6tqxsylC-hYehU8r6JuGsDv8EA4RKx4FgNYIGtQqzAaGmXO9VcMwBFqyA4-kBTRPbtEJ0E0LMTaNm7vBFggw2n3xqJKRglN1e9DeXDKp25lil-ED3KbR5W03GmUKo8FWCBdNOzDS1ZzCu6g-DXtx9CkwpeXDX5dG2nxWr27Z8MW4QZYIDw2qWjvT4C3WuctT1IX1o2nbXU-AtWVov9wEs8hqZt5B1gg0W01bi_Ni0Fmfr5GKPOZXyC3rCx_8Xr8vLl3mLfd5bYIWCAs3H1S1FFRdd5DovyhFlDWR0KUvM6MG5QZvBPWWmqOUQlYINcNFSqwvvpqP0YsjLvHo2hxCSVFJQmjJMyqK6q6i77TClggKQO_2-hP1uCeHIBAR13KRlWrIXxWJ84FRV_Mob8MNU4LWCCji5lcO1baPsORlTpCOmaIRiEi8hB4bT9uyGBRTW0uCAxYIPdJ-edSHiyA5lQ4X5ow0x_SOH_kmDBlRJwYyKNlEAj7DVggIgbABcF88-E0Lxrj_4wXYmM36xr2H4g0WDG1l9MXAHIOWCBgs08kzzfpvU70VZna7SXrSYarJr2q5D-cJFhcn8edUg9YICoJP56Yy8eP9pmvPSHqnKoJQlm_GRYBIqAqdYwaYv-aEFggCnv2tISlZK8OyDpAaa-aDaHEd7O2aFxisA5vJsXFywIRWCCfpoW0GHcG7A7tvuK-Om4jJ6hqahXVd0RjizvPhl5raBJYIGEYOTHJ3KB7CE8nZzerd0NC_eT1HhBIg9pn-S3ddDtZE1ggaAIwJiF33frnsCmyBajt2pPXeyniKeDtd51BiX3FqyYUWCBpfCidZNdgEd1A05knAvL-PSe5FMVoRCi3xreBqNBHphVYIDzbBMTeO3P0IAMshUMBq9BskbY6x-Tql6RcIeHMWPiTFlgg1MRlfEyLPz8eOilD8teaYXi4dqt5bjqxyQ7cRcT8SHgXWCBNVx0b71v32XCxiR4PvGvn4gnxOaWpbhXE9FnQmSBgxxgYWCBrEtTCfQtJG1t5XpdJZWz6m1NMWbqosaLmXzJ0jgNEJBgZWCDsB9K-OXwXrLXpgzUsA4B8525KyB_Il1nSahQ6-moUP21kZXZpY2VLZXlJbmZvoWlkZXZpY2VLZXmkAQIgASFYIIW4CS3wgTADnK_ptCXUgVQ2Q-wIOoukjJt-6Blx6ukdIlgg8wTjUoGMqzottfHdWgiIQnE7SncsU6QxyOfQhyr4ztZnZG9jVHlwZXVvcmcuaXNvLjE4MDEzLjUuMS5tRExsdmFsaWRpdHlJbmZvo2ZzaWduZWTAeB4yMDI0LTA3LTI1VDA3OjQxOjU4LjA0MDk5NTE5NlppdmFsaWRGcm9twHgeMjAyNC0wNy0yNVQwNzo0MTo1OC4wNDA5OTUxOTZaanZhbGlkVW50aWzAeB4yMDI0LTA3LTMwVDA3OjQxOjU4LjA0MDk5NTE5NlpYQJ-iRA6DUfjkjEYcmeYkB9r4py_hH3R860Zbcgas588ROLS-zajf4cQ5o5Zf-XNEP2WVeF4Bsx5h_fD7g0mcWy9sZGV2aWNlU2lnbmVkompuYW1lU3BhY2Vz2BhBoGpkZXZpY2VBdXRooW9kZXZpY2VTaWduYXR1cmWEQ6EBJqD2WECTZwBUHdUwE93YzQQ7eqr_bCpmRA6474L3XxvgT4_akE_lLhonDIwVB-0I8RELyzr1gmPSMzPh06lCdu-lpfsBZnN0YXR1cwA", + "presentation_submission": { + "id": "774e821e-0a0e-4379-b8fb-dbf20fa9a879", + "definition_id": "a0d2508a-c1fa-4312-ab0a-cb7e50a9d0f7", + "descriptor_map": [ + { + "id": "org.iso.18013.5.1.mDL", + "format": "mso_mdoc", + "path": "$" + } + ] + } + } + } + } + } +} diff --git a/src/main/resources/static/index.html b/src/main/resources/static/index.html deleted file mode 100644 index 552bf5ec..00000000 --- a/src/main/resources/static/index.html +++ /dev/null @@ -1 +0,0 @@ -

Verifier backend

\ No newline at end of file diff --git a/src/main/resources/templates/swagger-ui.html b/src/main/resources/templates/swagger-ui.html new file mode 100644 index 00000000..a21f7255 --- /dev/null +++ b/src/main/resources/templates/swagger-ui.html @@ -0,0 +1,39 @@ + + + + + + + + + + Swagger UI + + + + + +
+ + + + + \ No newline at end of file diff --git a/src/test/kotlin/eu/europa/ec/eudi/verifier/endpoint/adapter/input/web/StaticContentRouterTest.kt b/src/test/kotlin/eu/europa/ec/eudi/verifier/endpoint/adapter/input/web/StaticContentRouterTest.kt deleted file mode 100644 index b8c8c273..00000000 --- a/src/test/kotlin/eu/europa/ec/eudi/verifier/endpoint/adapter/input/web/StaticContentRouterTest.kt +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Copyright (c) 2023 European Commission - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package eu.europa.ec.eudi.verifier.endpoint.adapter.input.web - -import eu.europa.ec.eudi.verifier.endpoint.VerifierApplicationTest -import org.slf4j.Logger -import org.slf4j.LoggerFactory -import org.springframework.beans.factory.annotation.Autowired -import org.springframework.test.web.reactive.server.WebTestClient -import kotlin.test.Test - -@VerifierApplicationTest -internal class StaticContentRouterTest() { - private val log: Logger = LoggerFactory.getLogger(StaticContentRouterTest::class.java) - - @Autowired - private lateinit var client: WebTestClient - - @Test - fun `confirm StaticApi router is accessible, should return 200`() { - client.get().uri("/index.html") - .exchange() - .expectStatus().isOk() - .expectBody().returnResult().responseBodyContent?.let { log.info("response: ${String(it)}") } - } -} diff --git a/src/test/kotlin/eu/europa/ec/eudi/verifier/endpoint/adapter/input/web/SwaggerUiTest.kt b/src/test/kotlin/eu/europa/ec/eudi/verifier/endpoint/adapter/input/web/SwaggerUiTest.kt new file mode 100644 index 00000000..34571a7f --- /dev/null +++ b/src/test/kotlin/eu/europa/ec/eudi/verifier/endpoint/adapter/input/web/SwaggerUiTest.kt @@ -0,0 +1,68 @@ +/* + * Copyright (c) 2023 European Commission + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package eu.europa.ec.eudi.verifier.endpoint.adapter.input.web + +import eu.europa.ec.eudi.verifier.endpoint.VerifierApplicationTest +import org.slf4j.Logger +import org.slf4j.LoggerFactory +import org.springframework.beans.factory.annotation.Autowired +import org.springframework.core.env.Environment +import org.springframework.http.MediaType +import org.springframework.test.web.reactive.server.WebTestClient +import org.springframework.test.web.reactive.server.expectBody +import kotlin.test.Test +import kotlin.test.assertNotNull +import kotlin.test.assertTrue + +@VerifierApplicationTest +internal class SwaggerUiTest { + private val log: Logger = LoggerFactory.getLogger(SwaggerUiTest::class.java) + + @Autowired + private lateinit var client: WebTestClient + + @Autowired + private lateinit var environment: Environment + + @Test + fun `confirm Swagger UI is accessible`() { + val responseBody = + client.get() + .uri("/swagger-ui") + .exchange() + .expectStatus().isOk() + .expectHeader().contentType(MediaType.TEXT_HTML) + .expectBody() + .returnResult() + .responseBody + ?.also { + log.info("Swagger UI: $it") + } + + assertNotNull(responseBody, "No body returned for Swagger UI") + + val publicResourcesBasePath = environment.getRequiredProperty("spring.webflux.static-path-pattern").removeSuffix("/**") + val webJarResourcesBasePath = environment.getRequiredProperty("spring.webflux.webjars-path-pattern").removeSuffix("/**") + listOf( + "$webJarResourcesBasePath/swagger-ui/swagger-ui.css", + "$webJarResourcesBasePath/swagger-ui/favicon-32x32.png", + "$webJarResourcesBasePath/swagger-ui/favicon-16x16.png", + "$webJarResourcesBasePath/swagger-ui/swagger-ui-bundle.js", + "$webJarResourcesBasePath/swagger-ui/swagger-ui-standalone-preset.js", + "$publicResourcesBasePath/openapi.json", + ).forEach { assertTrue("Missing expected element: '$it' in Swagger UI") { responseBody.contains(it) } } + } +}