@decaf-ts/for-nest 0.12.2-0 → 0.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/for-nest.cjs +2 -2610
- package/dist/for-nest.cjs.map +1 -0
- package/dist/for-nest.js +2 -2723
- package/dist/for-nest.js.map +1 -0
- package/lib/cjs/auth/AuthInterceptor.cjs +2 -2
- package/lib/cjs/auth/AuthInterceptor.cjs.map +1 -0
- package/lib/cjs/auth/AuthMiddleware.cjs +2 -2
- package/lib/cjs/auth/AuthMiddleware.cjs.map +1 -0
- package/lib/cjs/auth/DecafAuthHandler.cjs +2 -2
- package/lib/cjs/auth/DecafAuthHandler.cjs.map +1 -0
- package/lib/cjs/auth/DecafAuthModule.cjs +2 -2
- package/lib/cjs/auth/DecafAuthModule.cjs.map +1 -0
- package/lib/cjs/auth/constants.cjs +2 -2
- package/lib/cjs/auth/constants.cjs.map +1 -0
- package/lib/cjs/auth/decorators.cjs +2 -2
- package/lib/cjs/auth/decorators.cjs.map +1 -0
- package/lib/cjs/auth/index.cjs +2 -2
- package/lib/cjs/auth/index.cjs.map +1 -0
- package/lib/cjs/bin/cli.cjs +2 -2
- package/lib/cjs/bin/cli.cjs.map +1 -0
- package/lib/cjs/cli-module.cjs +2 -2
- package/lib/cjs/cli-module.cjs.map +1 -0
- package/lib/cjs/constants.cjs +2 -2
- package/lib/cjs/constants.cjs.map +1 -0
- package/lib/cjs/controllers.cjs +2 -2
- package/lib/cjs/controllers.cjs.map +1 -0
- package/lib/cjs/core-module.cjs +2 -2
- package/lib/cjs/core-module.cjs.map +1 -0
- package/lib/cjs/decaf-model/DecafModelModule.cjs +2 -2
- package/lib/cjs/decaf-model/DecafModelModule.cjs.map +1 -0
- package/lib/cjs/decaf-model/FromModelController.cjs +2 -2
- package/lib/cjs/decaf-model/FromModelController.cjs.map +1 -0
- package/lib/cjs/decaf-model/decorators/ApiOperationFromModel.cjs +2 -2
- package/lib/cjs/decaf-model/decorators/ApiOperationFromModel.cjs.map +1 -0
- package/lib/cjs/decaf-model/decorators/ApiParamsFromModel.cjs +2 -2
- package/lib/cjs/decaf-model/decorators/ApiParamsFromModel.cjs.map +1 -0
- package/lib/cjs/decaf-model/decorators/DecafBody.cjs +2 -2
- package/lib/cjs/decaf-model/decorators/DecafBody.cjs.map +1 -0
- package/lib/cjs/decaf-model/decorators/DecafParams.cjs +2 -2
- package/lib/cjs/decaf-model/decorators/DecafParams.cjs.map +1 -0
- package/lib/cjs/decaf-model/decorators/controller-config.cjs +2 -2
- package/lib/cjs/decaf-model/decorators/controller-config.cjs.map +1 -0
- package/lib/cjs/decaf-model/decorators/decorators.cjs +2 -2
- package/lib/cjs/decaf-model/decorators/decorators.cjs.map +1 -0
- package/lib/cjs/decaf-model/decorators/expose.cjs +2 -2
- package/lib/cjs/decaf-model/decorators/expose.cjs.map +1 -0
- package/lib/cjs/decaf-model/decorators/index.cjs +2 -2
- package/lib/cjs/decaf-model/decorators/index.cjs.map +1 -0
- package/lib/cjs/decaf-model/decorators/types.cjs +2 -2
- package/lib/cjs/decaf-model/decorators/types.cjs.map +1 -0
- package/lib/cjs/decaf-model/decorators/utils.cjs +2 -2
- package/lib/cjs/decaf-model/decorators/utils.cjs.map +1 -0
- package/lib/cjs/decaf-model/index.cjs +2 -2
- package/lib/cjs/decaf-model/index.cjs.map +1 -0
- package/lib/cjs/decaf-model/types.cjs +2 -2
- package/lib/cjs/decaf-model/types.cjs.map +1 -0
- package/lib/cjs/decaf-model/utils.cjs +2 -2
- package/lib/cjs/decaf-model/utils.cjs.map +1 -0
- package/lib/cjs/decoration.cjs +2 -2
- package/lib/cjs/decoration.cjs.map +1 -0
- package/lib/cjs/decorators.cjs +2 -2
- package/lib/cjs/decorators.cjs.map +1 -0
- package/lib/cjs/events-module/DecafStreamModule.cjs +2 -2
- package/lib/cjs/events-module/DecafStreamModule.cjs.map +1 -0
- package/lib/cjs/events-module/EventsController.cjs +2 -2
- package/lib/cjs/events-module/EventsController.cjs.map +1 -0
- package/lib/cjs/events-module/EventsSubscriptionController.cjs +2 -2
- package/lib/cjs/events-module/EventsSubscriptionController.cjs.map +1 -0
- package/lib/cjs/events-module/ObserverSubscriptionRegistry.cjs +2 -2
- package/lib/cjs/events-module/ObserverSubscriptionRegistry.cjs.map +1 -0
- package/lib/cjs/events-module/constant.cjs +2 -2
- package/lib/cjs/events-module/constant.cjs.map +1 -0
- package/lib/cjs/events-module/index.cjs +2 -2
- package/lib/cjs/events-module/index.cjs.map +1 -0
- package/lib/cjs/events-module/utils.cjs +2 -2
- package/lib/cjs/events-module/utils.cjs.map +1 -0
- package/lib/cjs/factory/NestBootstraper.cjs +2 -2
- package/lib/cjs/factory/NestBootstraper.cjs.map +1 -0
- package/lib/cjs/factory/errors/cors.cjs +2 -2
- package/lib/cjs/factory/errors/cors.cjs.map +1 -0
- package/lib/cjs/factory/errors/index.cjs +2 -2
- package/lib/cjs/factory/errors/index.cjs.map +1 -0
- package/lib/cjs/factory/errors/throttling.cjs +2 -2
- package/lib/cjs/factory/errors/throttling.cjs.map +1 -0
- package/lib/cjs/factory/exceptions/DecafErrorFilter.cjs +2 -2
- package/lib/cjs/factory/exceptions/DecafErrorFilter.cjs.map +1 -0
- package/lib/cjs/factory/exceptions/decorators.cjs +2 -2
- package/lib/cjs/factory/exceptions/decorators.cjs.map +1 -0
- package/lib/cjs/factory/exceptions/index.cjs +2 -2
- package/lib/cjs/factory/exceptions/index.cjs.map +1 -0
- package/lib/cjs/factory/index.cjs +2 -2
- package/lib/cjs/factory/index.cjs.map +1 -0
- package/lib/cjs/factory/openapi/DtoBuilder.cjs +2 -2
- package/lib/cjs/factory/openapi/DtoBuilder.cjs.map +1 -0
- package/lib/cjs/factory/openapi/SwaggerBuilder.cjs +2 -2
- package/lib/cjs/factory/openapi/SwaggerBuilder.cjs.map +1 -0
- package/lib/cjs/factory/openapi/SwaggerCustomUI.cjs +2 -2
- package/lib/cjs/factory/openapi/SwaggerCustomUI.cjs.map +1 -0
- package/lib/cjs/factory/openapi/constants.cjs +2 -2
- package/lib/cjs/factory/openapi/constants.cjs.map +1 -0
- package/lib/cjs/factory/openapi/index.cjs +2 -2
- package/lib/cjs/factory/openapi/index.cjs.map +1 -0
- package/lib/cjs/index.cjs +2 -2
- package/lib/cjs/index.cjs.map +1 -0
- package/lib/cjs/interceptors/DecafRequestHandlerInterceptor.cjs +2 -2
- package/lib/cjs/interceptors/DecafRequestHandlerInterceptor.cjs.map +1 -0
- package/lib/cjs/interceptors/index.cjs +2 -2
- package/lib/cjs/interceptors/index.cjs.map +1 -0
- package/lib/cjs/module.cjs +2 -2
- package/lib/cjs/module.cjs.map +1 -0
- package/lib/cjs/overrides/Adapter.cjs +2 -2
- package/lib/cjs/overrides/Adapter.cjs.map +1 -0
- package/lib/cjs/overrides/ModelBuilderExtensions.cjs +2 -2
- package/lib/cjs/overrides/ModelBuilderExtensions.cjs.map +1 -0
- package/lib/cjs/overrides/constants.cjs +2 -2
- package/lib/cjs/overrides/constants.cjs.map +1 -0
- package/lib/cjs/overrides/decoration.cjs +2 -2
- package/lib/cjs/overrides/decoration.cjs.map +1 -0
- package/lib/cjs/overrides/helpers.cjs +2 -2
- package/lib/cjs/overrides/helpers.cjs.map +1 -0
- package/lib/cjs/overrides/index.cjs +2 -2
- package/lib/cjs/overrides/index.cjs.map +1 -0
- package/lib/cjs/overrides/logging.cjs +2 -2
- package/lib/cjs/overrides/logging.cjs.map +1 -0
- package/lib/cjs/overrides/overrides.cjs +2 -2
- package/lib/cjs/overrides/overrides.cjs.map +1 -0
- package/lib/cjs/request/DecafAuthHandler.cjs +2 -2
- package/lib/cjs/request/DecafAuthHandler.cjs.map +1 -0
- package/lib/cjs/request/DecafHandlerExecutor.cjs +2 -2
- package/lib/cjs/request/DecafHandlerExecutor.cjs.map +1 -0
- package/lib/cjs/request/DecafRequestContext.cjs +2 -2
- package/lib/cjs/request/DecafRequestContext.cjs.map +1 -0
- package/lib/cjs/request/DecafResponseInterceptor.cjs +2 -2
- package/lib/cjs/request/DecafResponseInterceptor.cjs.map +1 -0
- package/lib/cjs/request/contextualize.cjs +2 -2
- package/lib/cjs/request/contextualize.cjs.map +1 -0
- package/lib/cjs/request/index.cjs +2 -2
- package/lib/cjs/request/index.cjs.map +1 -0
- package/lib/cjs/swagger-types.cjs +2 -2
- package/lib/cjs/swagger-types.cjs.map +1 -0
- package/lib/cjs/types.cjs +2 -2
- package/lib/cjs/types.cjs.map +1 -0
- package/lib/cjs/utils.cjs +2 -2
- package/lib/cjs/utils.cjs.map +1 -0
- package/lib/cjs/webhooks/DecafWebhookModule.cjs +2 -2
- package/lib/cjs/webhooks/DecafWebhookModule.cjs.map +1 -0
- package/lib/cjs/webhooks/controllers.cjs +2 -2
- package/lib/cjs/webhooks/controllers.cjs.map +1 -0
- package/lib/cjs/webhooks/index.cjs +2 -2
- package/lib/cjs/webhooks/index.cjs.map +1 -0
- package/lib/cjs/webhooks/types.cjs +2 -2
- package/lib/cjs/webhooks/types.cjs.map +1 -0
- package/lib/esm/auth/AuthInterceptor.js +1 -1
- package/lib/esm/auth/AuthInterceptor.js.map +1 -0
- package/lib/esm/auth/AuthMiddleware.js +1 -1
- package/lib/esm/auth/AuthMiddleware.js.map +1 -0
- package/lib/esm/auth/DecafAuthHandler.js +1 -1
- package/lib/esm/auth/DecafAuthHandler.js.map +1 -0
- package/lib/esm/auth/DecafAuthModule.js +1 -1
- package/lib/esm/auth/DecafAuthModule.js.map +1 -0
- package/lib/esm/auth/constants.js +1 -1
- package/lib/esm/auth/constants.js.map +1 -0
- package/lib/esm/auth/decorators.js +1 -1
- package/lib/esm/auth/decorators.js.map +1 -0
- package/lib/esm/auth/index.js +1 -1
- package/lib/esm/auth/index.js.map +1 -0
- package/lib/esm/bin/cli.js +1 -1
- package/lib/esm/bin/cli.js.map +1 -0
- package/lib/esm/cli-module.js +1 -1
- package/lib/esm/cli-module.js.map +1 -0
- package/lib/esm/constants.js +1 -1
- package/lib/esm/constants.js.map +1 -0
- package/lib/esm/controllers.js +1 -1
- package/lib/esm/controllers.js.map +1 -0
- package/lib/esm/core-module.js +1 -1
- package/lib/esm/core-module.js.map +1 -0
- package/lib/esm/decaf-model/DecafModelModule.js +1 -1
- package/lib/esm/decaf-model/DecafModelModule.js.map +1 -0
- package/lib/esm/decaf-model/FromModelController.js +1 -1
- package/lib/esm/decaf-model/FromModelController.js.map +1 -0
- package/lib/esm/decaf-model/decorators/ApiOperationFromModel.js +1 -1
- package/lib/esm/decaf-model/decorators/ApiOperationFromModel.js.map +1 -0
- package/lib/esm/decaf-model/decorators/ApiParamsFromModel.js +1 -1
- package/lib/esm/decaf-model/decorators/ApiParamsFromModel.js.map +1 -0
- package/lib/esm/decaf-model/decorators/DecafBody.js +1 -1
- package/lib/esm/decaf-model/decorators/DecafBody.js.map +1 -0
- package/lib/esm/decaf-model/decorators/DecafParams.js +1 -1
- package/lib/esm/decaf-model/decorators/DecafParams.js.map +1 -0
- package/lib/esm/decaf-model/decorators/controller-config.js +1 -1
- package/lib/esm/decaf-model/decorators/controller-config.js.map +1 -0
- package/lib/esm/decaf-model/decorators/decorators.js +1 -1
- package/lib/esm/decaf-model/decorators/decorators.js.map +1 -0
- package/lib/esm/decaf-model/decorators/expose.js +1 -1
- package/lib/esm/decaf-model/decorators/expose.js.map +1 -0
- package/lib/esm/decaf-model/decorators/index.js +1 -1
- package/lib/esm/decaf-model/decorators/index.js.map +1 -0
- package/lib/esm/decaf-model/decorators/types.js +1 -1
- package/lib/esm/decaf-model/decorators/types.js.map +1 -0
- package/lib/esm/decaf-model/decorators/utils.js +1 -1
- package/lib/esm/decaf-model/decorators/utils.js.map +1 -0
- package/lib/esm/decaf-model/index.js +1 -1
- package/lib/esm/decaf-model/index.js.map +1 -0
- package/lib/esm/decaf-model/types.js +1 -1
- package/lib/esm/decaf-model/types.js.map +1 -0
- package/lib/esm/decaf-model/utils.js +1 -1
- package/lib/esm/decaf-model/utils.js.map +1 -0
- package/lib/esm/decoration.js +1 -1
- package/lib/esm/decoration.js.map +1 -0
- package/lib/esm/decorators.js +1 -1
- package/lib/esm/decorators.js.map +1 -0
- package/lib/esm/events-module/DecafStreamModule.js +1 -1
- package/lib/esm/events-module/DecafStreamModule.js.map +1 -0
- package/lib/esm/events-module/EventsController.js +1 -1
- package/lib/esm/events-module/EventsController.js.map +1 -0
- package/lib/esm/events-module/EventsSubscriptionController.js +1 -1
- package/lib/esm/events-module/EventsSubscriptionController.js.map +1 -0
- package/lib/esm/events-module/ObserverSubscriptionRegistry.js +1 -1
- package/lib/esm/events-module/ObserverSubscriptionRegistry.js.map +1 -0
- package/lib/esm/events-module/constant.js +1 -1
- package/lib/esm/events-module/constant.js.map +1 -0
- package/lib/esm/events-module/index.js +1 -1
- package/lib/esm/events-module/index.js.map +1 -0
- package/lib/esm/events-module/utils.js +1 -1
- package/lib/esm/events-module/utils.js.map +1 -0
- package/lib/esm/factory/NestBootstraper.js +1 -1
- package/lib/esm/factory/NestBootstraper.js.map +1 -0
- package/lib/esm/factory/errors/cors.js +1 -1
- package/lib/esm/factory/errors/cors.js.map +1 -0
- package/lib/esm/factory/errors/index.js +1 -1
- package/lib/esm/factory/errors/index.js.map +1 -0
- package/lib/esm/factory/errors/throttling.js +1 -1
- package/lib/esm/factory/errors/throttling.js.map +1 -0
- package/lib/esm/factory/exceptions/DecafErrorFilter.js +1 -1
- package/lib/esm/factory/exceptions/DecafErrorFilter.js.map +1 -0
- package/lib/esm/factory/exceptions/decorators.js +1 -1
- package/lib/esm/factory/exceptions/decorators.js.map +1 -0
- package/lib/esm/factory/exceptions/index.js +1 -1
- package/lib/esm/factory/exceptions/index.js.map +1 -0
- package/lib/esm/factory/index.js +1 -1
- package/lib/esm/factory/index.js.map +1 -0
- package/lib/esm/factory/openapi/DtoBuilder.js +1 -1
- package/lib/esm/factory/openapi/DtoBuilder.js.map +1 -0
- package/lib/esm/factory/openapi/SwaggerBuilder.js +1 -1
- package/lib/esm/factory/openapi/SwaggerBuilder.js.map +1 -0
- package/lib/esm/factory/openapi/SwaggerCustomUI.js +1 -1
- package/lib/esm/factory/openapi/SwaggerCustomUI.js.map +1 -0
- package/lib/esm/factory/openapi/constants.js +1 -1
- package/lib/esm/factory/openapi/constants.js.map +1 -0
- package/lib/esm/factory/openapi/index.js +1 -1
- package/lib/esm/factory/openapi/index.js.map +1 -0
- package/lib/esm/index.js +1 -1
- package/lib/esm/index.js.map +1 -0
- package/lib/esm/interceptors/DecafRequestHandlerInterceptor.js +1 -1
- package/lib/esm/interceptors/DecafRequestHandlerInterceptor.js.map +1 -0
- package/lib/esm/interceptors/index.js +1 -1
- package/lib/esm/interceptors/index.js.map +1 -0
- package/lib/esm/module.js +1 -1
- package/lib/esm/module.js.map +1 -0
- package/lib/esm/overrides/Adapter.js +1 -1
- package/lib/esm/overrides/Adapter.js.map +1 -0
- package/lib/esm/overrides/ModelBuilderExtensions.js +1 -1
- package/lib/esm/overrides/ModelBuilderExtensions.js.map +1 -0
- package/lib/esm/overrides/constants.js +1 -1
- package/lib/esm/overrides/constants.js.map +1 -0
- package/lib/esm/overrides/decoration.js +1 -1
- package/lib/esm/overrides/decoration.js.map +1 -0
- package/lib/esm/overrides/helpers.js +1 -1
- package/lib/esm/overrides/helpers.js.map +1 -0
- package/lib/esm/overrides/index.js +1 -1
- package/lib/esm/overrides/index.js.map +1 -0
- package/lib/esm/overrides/logging.js +1 -1
- package/lib/esm/overrides/logging.js.map +1 -0
- package/lib/esm/overrides/overrides.js +1 -1
- package/lib/esm/overrides/overrides.js.map +1 -0
- package/lib/esm/request/DecafAuthHandler.js +1 -1
- package/lib/esm/request/DecafAuthHandler.js.map +1 -0
- package/lib/esm/request/DecafHandlerExecutor.js +1 -1
- package/lib/esm/request/DecafHandlerExecutor.js.map +1 -0
- package/lib/esm/request/DecafRequestContext.js +1 -1
- package/lib/esm/request/DecafRequestContext.js.map +1 -0
- package/lib/esm/request/DecafResponseInterceptor.js +1 -1
- package/lib/esm/request/DecafResponseInterceptor.js.map +1 -0
- package/lib/esm/request/contextualize.js +1 -1
- package/lib/esm/request/contextualize.js.map +1 -0
- package/lib/esm/request/index.js +1 -1
- package/lib/esm/request/index.js.map +1 -0
- package/lib/esm/swagger-types.js +1 -1
- package/lib/esm/swagger-types.js.map +1 -0
- package/lib/esm/types.js +1 -1
- package/lib/esm/types.js.map +1 -0
- package/lib/esm/utils.js +1 -1
- package/lib/esm/utils.js.map +1 -0
- package/lib/esm/webhooks/DecafWebhookModule.js +1 -1
- package/lib/esm/webhooks/DecafWebhookModule.js.map +1 -0
- package/lib/esm/webhooks/controllers.js +1 -1
- package/lib/esm/webhooks/controllers.js.map +1 -0
- package/lib/esm/webhooks/index.js +1 -1
- package/lib/esm/webhooks/index.js.map +1 -0
- package/lib/esm/webhooks/types.js +1 -1
- package/lib/esm/webhooks/types.js.map +1 -0
- package/package.json +1 -1
|
@@ -802,5 +802,5 @@ class FromModelController {
|
|
|
802
802
|
}
|
|
803
803
|
}
|
|
804
804
|
exports.FromModelController = FromModelController;
|
|
805
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRnJvbU1vZGVsQ29udHJvbGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9kZWNhZi1tb2RlbC9Gcm9tTW9kZWxDb250cm9sbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFBQSxPQUFPLEVBQ0wsVUFBVSxFQUNWLEtBQUssRUFDTCxLQUFLLEVBQ0wsUUFBUSxFQUNSLFdBQVcsR0FDWixNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFDTCxxQkFBcUIsRUFDckIsT0FBTyxFQUNQLGtCQUFrQixFQUNsQixjQUFjLEVBQ2Qsb0JBQW9CLEVBQ3BCLG1CQUFtQixFQUNuQixhQUFhLEVBQ2IsWUFBWSxFQUNaLFFBQVEsRUFDUixRQUFRLEVBQ1IsT0FBTyxFQUNQLDhCQUE4QixFQUM5QixhQUFhLEdBQ2QsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLEVBQ0wsWUFBWSxFQUNaLGNBQWMsRUFDZCxlQUFlLEVBQ2YscUJBQXFCLEVBRXJCLFVBQVUsRUFDVixPQUFPLEdBQ1IsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUUsS0FBSyxFQUFvQixNQUFNLGdDQUFnQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDekQsT0FBTyxFQUNMLE1BQU0sRUFDTixTQUFTLEVBQ1QsYUFBYSxFQUNiLGFBQWEsR0FDZCxNQUFNLHlCQUF5QixDQUFDO0FBQ2pDLE9BQU8sRUFBZSxRQUFRLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUM3RCxPQUFPLEVBQ0wscUJBQXFCLEVBQ3JCLGtCQUFrQixFQUVsQixTQUFTLEVBQ1QsVUFBVSxHQUNYLDhCQUFxQjtBQUN0QixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsOEJBQTJCO0FBRXpELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSw4QkFBbUI7QUFDakQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFdBQVcsRUFB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LENBQUMsQ0FBQyxDQUFDO1FBRUosTUFBTSxVQUFVLEdBQXlEO1lBQ3ZFLEdBQUcsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3hDLFlBQVksQ0FBQyxFQUFFLE9BQU8sRUFBRSwyQkFBMkIsVUFBVSxJQUFJLEVBQUUsQ0FBQztZQUNwRSxhQUFhLENBQUMsRUFBRSxXQUFXLEVBQUUsZ0NBQWdDLEVBQUUsQ0FBQztZQUNoRSxvQkFBb0IsQ0FBQztnQkFDbkIsV0FBVyxFQUFFLG9DQUFvQzthQUNsRCxDQUFDO1NBQ0gsQ0FBQztRQUVGLElBQUksUUFBUSxLQUFLLEtBQUssSUFBSSxrQkFBa0IsRUFBRSxDQUFDO1lBQzdDLFVBQVUsQ0FBQyxJQUFJLENBQ2IsUUFBUSxDQUFDO2dCQUNQLElBQUksRUFBRSxXQUFXO2dCQUNqQixRQUFRLEVBQUUsS0FBSztnQkFDZixJQUFJLEVBQUUsY0FBYztnQkFDcEIsV0FBVyxFQUFFLGdDQUFnQzthQUM5QyxDQUFDLEVBQ0YsUUFBUSxDQUFDO2dCQUNQLElBQUksRUFBRSxPQUFPO2dCQUNiLFFBQVEsRUFBRSxLQUFLO2dCQUNmLFdBQVcsRUFBRSxvQkFBb0I7YUFDbEMsQ0FBQyxFQUNGLFFBQVEsQ0FBQztnQkFDUCxJQUFJLEVBQUUsUUFBUTtnQkFDZCxRQUFRLEVBQUUsS0FBSztnQkFDZixXQUFXLEVBQUUsb0JBQW9CO2FBQ2xDLENBQUMsQ0FDSCxDQUFDO1FBQ0osQ0FBQztRQUVELE9BQU8sVUFBVSxDQUFDO0lBQ3BCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb250cm9sbGVyLFxuICBQYXJhbSxcbiAgUXVlcnksXG4gIFJlc3BvbnNlLFxuICBTZXRNZXRhZGF0YSxcbn0gZnJvbSBcIkBuZXN0anMvY29tbW9uXCI7XG5pbXBvcnQge1xuICBBcGlCYWRSZXF1ZXN0UmVzcG9uc2UsXG4gIEFwaUJvZHksXG4gIEFwaUNyZWF0ZWRSZXNwb25zZSxcbiAgQXBpRXh0cmFNb2RlbHMsXG4gIEFwaU5vQ29udGVudFJlc3BvbnNlLFxuICBBcGlOb3RGb3VuZFJlc3BvbnNlLFxuICBBcGlPa1Jlc3BvbnNlLFxuICBBcGlPcGVyYXRpb24sXG4gIEFwaVBhcmFtLFxuICBBcGlRdWVyeSxcbiAgQXBpVGFncyxcbiAgQXBpVW5wcm9jZXNzYWJsZUVudGl0eVJlc3BvbnNlLFxuICBnZXRTY2hlbWFQYXRoLFxufSBmcm9tIFwiQG5lc3Rqcy9zd2FnZ2VyXCI7XG5pbXBvcnQge1xuICBNb2RlbFNlcnZpY2UsXG4gIE9yZGVyRGlyZWN0aW9uLFxuICBQZXJzaXN0ZW5jZUtleXMsXG4gIFByZXBhcmVkU3RhdGVtZW50S2V5cyxcbiAgdHlwZSBSZXBvLFxuICBSZXBvc2l0b3J5LFxuICBTZXJ2aWNlLFxufSBmcm9tIFwiQGRlY2FmLXRzL2NvcmVcIjtcbmltcG9ydCB7IE1vZGVsLCBNb2RlbENvbnN0cnVjdG9yIH0gZnJvbSBcIkBkZWNhZi10cy9kZWNvcmF0b3ItdmFsaWRhdGlvblwiO1xuaW1wb3J0IHsgTG9nZ2luZywgdG9LZWJhYkNhc2UgfSBmcm9tIFwiQGRlY2FmLXRzL2xvZ2dpbmdcIjtcbmltcG9ydCB7XG4gIERCS2V5cyxcbiAgQmFzZUVycm9yLFxuICBJbnRlcm5hbEVycm9yLFxuICBPcGVyYXRpb25LZXlzLFxufSBmcm9tIFwiQGRlY2FmLXRzL2RiLWRlY29yYXRvcnNcIjtcbmltcG9ydCB7IENvbnN0cnVjdG9yLCBNZXRhZGF0YSB9IGZyb20gXCJAZGVjYWYtdHMvZGVjb3JhdGlvblwiO1xuaW1wb3J0IHtcbiAgQXBpT3BlcmF0aW9uRnJvbU1vZGVsLFxuICBBcGlQYXJhbXNGcm9tTW9kZWwsXG4gIHR5cGUgRGVjYWZBcGlQcm9wZXJ0eSxcbiAgRGVjYWZCb2R5LFxuICBEZWNhZlF1ZXJ5LFxufSBmcm9tIFwiLi9kZWNvcmF0b3JzXCI7XG5pbXBvcnQgeyBIdHRwVmVyYlRvRGVjb3JhdG9yIH0gZnJvbSBcIi4vZGVjb3JhdG9ycy91dGlsc1wiO1xuaW1wb3J0IHR5cGUgeyBIdHRwVmVyYnMgfSBmcm9tIFwiLi9kZWNvcmF0b3JzL3R5cGVzXCI7XG5pbXBvcnQgeyBEZWNhZlJlcXVlc3RDb250ZXh0IH0gZnJvbSBcIi4uL3JlcXVlc3RcIjtcbmltcG9ydCB7IERFQ0FGX0NPTlRST0xMRVJfQ09ORklHLCBERUNBRl9ST1VURSB9IGZyb20gXCIuLi9jb25zdGFudHNcIjtcbmltcG9ydCB7XG4gIFNLSVBfTU9ERUxfTkFNRVNQQUNFU19LRVksXG4gIFNLSVBfTU9ERUxfUk9MRVNfS0VZLFxufSBmcm9tIFwiLi4vYXV0aC9jb25zdGFudHNcIjtcbmltcG9ydCB7XG4gIEF1dGgsXG4gIFB1YmxpYyxcbiAgUmVxdWlyZU5hbWVzcGFjZXMsXG4gIFJlcXVpcmVSb2xlcyxcbn0gZnJvbSBcIi4uL2F1dGgvZGVjb3JhdG9yc1wiO1xuaW1wb3J0IHsgQ29udHJvbGxlckNvbnN0cnVjdG9yIH0gZnJvbSBcIi4vdHlwZXNcIjtcbmltcG9ydCB7IERlY2FmTW9kZWxDb250cm9sbGVyIH0gZnJvbSBcIi4uL2NvbnRyb2xsZXJzXCI7XG5pbXBvcnQgeyBEdG9Gb3IgfSBmcm9tIFwiLi4vZmFjdG9yeS9vcGVuYXBpL0R0b0J1aWxkZXJcIjtcbmltcG9ydCBcIi4uL292ZXJyaWRlc1wiO1xuaW1wb3J0IHtcbiAgTW9kZWxDb250cm9sbGVyRmFjdG9yeSxcbiAgdHlwZSBNb2RlbENvbnRyb2xsZXJGYWN0b3J5Q29uZmlnLFxuICB0eXBlIEF1dGhDb25maWcsXG4gIHR5cGUgU2VydmVyUm91dGUsXG59IGZyb20gXCJAZGVjYWYtdHMvZm9yLWh0dHAvc2VydmVyXCI7XG5cbmV4cG9ydCBjbGFzcyBGcm9tTW9kZWxDb250cm9sbGVyIHtcbiAgcHJpdmF0ZSBzdGF0aWMgcmVhZG9ubHkgbG9nID0gTG9nZ2luZy5mb3IoRnJvbU1vZGVsQ29udHJvbGxlci5uYW1lKTtcblxuICBwcml2YXRlIHN0YXRpYyB0b0RlY2FmRXJyb3IoXG4gICAgZXJyb3I6IHVua25vd24sXG4gICAgZmFsbGJhY2tNZXNzYWdlOiBzdHJpbmdcbiAgKTogQmFzZUVycm9yIHtcbiAgICBpZiAoZXJyb3IgaW5zdGFuY2VvZiBCYXNlRXJyb3IpIHJldHVybiBlcnJvcjtcbiAgICByZXR1cm4gbmV3IEludGVybmFsRXJyb3IoXG4gICAgICBlcnJvciBpbnN0YW5jZW9mIEVycm9yXG4gICAgICAgID8gYCR7ZmFsbGJhY2tNZXNzYWdlfTogJHtlcnJvci5tZXNzYWdlfWBcbiAgICAgICAgOiBmYWxsYmFja01lc3NhZ2VcbiAgICApO1xuICB9XG5cbiAgc3RhdGljIGdldFBlcnNpc3RlbmNlPFQgZXh0ZW5kcyBNb2RlbDxib29sZWFuPj4oXG4gICAgTW9kZWxDbGF6ejogTW9kZWxDb25zdHJ1Y3RvcjxUPlxuICApOiBSZXBvPFQ+IHwgTW9kZWxTZXJ2aWNlPFQ+IHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIFNlcnZpY2UuZ2V0PE1vZGVsU2VydmljZTxUPj4oTW9kZWxDbGF6eik7XG4gICAgfSBjYXRjaCAoZTogdW5rbm93bikge1xuICAgICAgdHJ5IHtcbiAgICAgICAgcmV0dXJuIE1vZGVsU2VydmljZS5nZXRTZXJ2aWNlKE1vZGVsQ2xhenopIGFzIE1vZGVsU2VydmljZTxUPjtcbiAgICAgIH0gY2F0Y2ggKGUyOiB1bmtub3duKSB7XG4gICAgICAgIHJldHVybiBSZXBvc2l0b3J5LmZvck1vZGVsKE1vZGVsQ2xhenopIGFzIFJlcG88VD47XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgc3RhdGljIGNyZWF0ZVF1ZXJ5Um91dGVzRnJvbVJlcG9zaXRvcnk8VCBleHRlbmRzIE1vZGVsPGJvb2xlYW4+PihcbiAgICBwZXJzaXN0ZW5jZTogUmVwbzxUPiB8IE1vZGVsU2VydmljZTxUPixcbiAgICBwcmVmaXg6IHN0cmluZyA9IFBlcnNpc3RlbmNlS2V5cy5RVUVSWVxuICApOiBDb250cm9sbGVyQ29uc3RydWN0b3I8VD4ge1xuICAgIGNvbnN0IHJlcG86IFJlcG88VD4gPVxuICAgICAgcGVyc2lzdGVuY2UgaW5zdGFuY2VvZiBNb2RlbFNlcnZpY2UgPyBwZXJzaXN0ZW5jZS5yZXBvIDogcGVyc2lzdGVuY2U7XG4gICAgY29uc3QgcXVlcnlNZXRob2RzOiBSZWNvcmQ8c3RyaW5nLCB7IGZpZWxkcz86IHN0cmluZ1tdIHwgdW5kZWZpbmVkIH0+ID1cbiAgICAgIE1ldGFkYXRhLmdldChcbiAgICAgICAgcmVwby5jb25zdHJ1Y3RvciBhcyBDb25zdHJ1Y3RvcixcbiAgICAgICAgTWV0YWRhdGEua2V5KFBlcnNpc3RlbmNlS2V5cy5RVUVSWSlcbiAgICAgICkgPz8ge307XG5cbiAgICBjb25zdCByb3V0ZU1ldGhvZHM6IFJlY29yZDxzdHJpbmcsIGFueT4gPVxuICAgICAgTWV0YWRhdGEuZ2V0KFxuICAgICAgICBwZXJzaXN0ZW5jZS5jb25zdHJ1Y3RvciBhcyBDb25zdHJ1Y3RvcixcbiAgICAgICAgTWV0YWRhdGEua2V5KERFQ0FGX1JPVVRFKVxuICAgICAgKSA/PyB7fTtcblxuICAgIGNsYXNzIFF1ZXJ5Q29udHJvbGxlciBleHRlbmRzIERlY2FmTW9kZWxDb250cm9sbGVyPFQ+IHtcbiAgICAgIG92ZXJyaWRlIGdldCBjbGFzcygpOiBNb2RlbENvbnN0cnVjdG9yPFQ+IHtcbiAgICAgICAgdGhyb3cgbmV3IEludGVybmFsRXJyb3IoXCJNZXRob2Qgbm90IGltcGxlbWVudGVkLlwiKTtcbiAgICAgIH1cbiAgICAgIGNvbnN0cnVjdG9yKGNsaWVudENvbnRleHQ6IERlY2FmUmVxdWVzdENvbnRleHQsIG5hbWU6IHN0cmluZykge1xuICAgICAgICBzdXBlcihjbGllbnRDb250ZXh0LCBuYW1lKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBmb3IgKGNvbnN0IFttZXRob2ROYW1lLCBwYXJhbXNdIG9mIE9iamVjdC5lbnRyaWVzKHJvdXRlTWV0aG9kcykpIHtcbiAgICAgIGNvbnN0IHJvdXRlUGF0aCA9IFtwYXJhbXMucGF0aC5yZXBsYWNlKC9eXFwvK3xcXC8rJC9nLCBcIlwiKV1cbiAgICAgICAgLmZpbHRlcigoc2VnbWVudDogc3RyaW5nKSA9PiBzZWdtZW50ICYmIHNlZ21lbnQudHJpbSgpKVxuICAgICAgICAuam9pbihcIi9cIik7XG5cbiAgICAgIGNvbnN0IGhhbmRsZXIgPSBGcm9tTW9kZWxDb250cm9sbGVyLmNyZWF0ZUNvbXBsZXhRdWVyeUhhbmRsZXIoXG4gICAgICAgIG1ldGhvZE5hbWVcbiAgICAgICkgYXMgYW55O1xuICAgICAgRnJvbU1vZGVsQ29udHJvbGxlci5kZWZpbmVNZXRob2QoUXVlcnlDb250cm9sbGVyLCBtZXRob2ROYW1lLCBoYW5kbGVyKTtcblxuICAgICAgY29uc3QgaHR0cERlY29yYXRvciA9IEh0dHBWZXJiVG9EZWNvcmF0b3IocGFyYW1zLmh0dHBNZXRob2QgYXMgSHR0cFZlcmJzKShcbiAgICAgICAgcm91dGVQYXRoIHx8IHVuZGVmaW5lZFxuICAgICAgKTtcbiAgICAgIGNvbnN0IGRlY29yYXRvcnMgPSBGcm9tTW9kZWxDb250cm9sbGVyLmdldFF1ZXJ5RGVjb3JhdG9ycyhcbiAgICAgICAgbWV0aG9kTmFtZSxcbiAgICAgICAgcm91dGVQYXRoLFxuICAgICAgICBwYXJhbXMuaHR0cE1ldGhvZFxuICAgICAgKTtcbiAgICAgIEZyb21Nb2RlbENvbnRyb2xsZXIuYXBwbHlEZWNvcmF0b3JzKFF1ZXJ5Q29udHJvbGxlciwgbWV0aG9kTmFtZSwgW1xuICAgICAgICBodHRwRGVjb3JhdG9yLFxuICAgICAgICAuLi5kZWNvcmF0b3JzLFxuICAgICAgXSk7XG4gICAgfVxuXG4gICAgZm9yIChjb25zdCBbbWV0aG9kTmFtZSwgb2JqVmFsdWVzXSBvZiBPYmplY3QuZW50cmllcyhxdWVyeU1ldGhvZHMpKSB7XG4gICAgICBjb25zdCBmaWVsZHMgPSBvYmpWYWx1ZXMuZmllbGRzID8/IFtdO1xuICAgICAgY29uc3Qgcm91dGVQYXRoID0gW3ByZWZpeCwgbWV0aG9kTmFtZSwgLi4uZmllbGRzLm1hcCgoZikgPT4gYDoke2Z9YCldXG4gICAgICAgIC5maWx0ZXIoKHNlZ21lbnQpID0+IHNlZ21lbnQgJiYgc2VnbWVudC50cmltKCkpXG4gICAgICAgIC5qb2luKFwiL1wiKTtcblxuICAgICAgY29uc3QgaGFuZGxlciA9IEZyb21Nb2RlbENvbnRyb2xsZXIuY3JlYXRlQ29tcGxleFF1ZXJ5SGFuZGxlcihcbiAgICAgICAgbWV0aG9kTmFtZVxuICAgICAgKSBhcyBhbnk7XG4gICAgICBGcm9tTW9kZWxDb250cm9sbGVyLmRlZmluZU1ldGhvZChRdWVyeUNvbnRyb2xsZXIsIG1ldGhvZE5hbWUsIGhhbmRsZXIpO1xuXG4gICAgICBjb25zdCBodHRwRGVjb3JhdG9yID0gSHR0cFZlcmJUb0RlY29yYXRvcihcIkdFVFwiIGFzIEh0dHBWZXJicykoXG4gICAgICAgIHJvdXRlUGF0aCB8fCB1bmRlZmluZWRcbiAgICAgICk7XG4gICAgICBjb25zdCBkZWNvcmF0b3JzID0gRnJvbU1vZGVsQ29udHJvbGxlci5nZXRRdWVyeURlY29yYXRvcnMoXG4gICAgICAgIG1ldGhvZE5hbWUsXG4gICAgICAgIHJvdXRlUGF0aCxcbiAgICAgICAgXCJHRVRcIixcbiAgICAgICAgdHJ1ZVxuICAgICAgKTtcbiAgICAgIEZyb21Nb2RlbENvbnRyb2xsZXIuYXBwbHlEZWNvcmF0b3JzKFF1ZXJ5Q29udHJvbGxlciwgbWV0aG9kTmFtZSwgW1xuICAgICAgICBodHRwRGVjb3JhdG9yLFxuICAgICAgICAuLi5kZWNvcmF0b3JzLFxuICAgICAgXSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIFF1ZXJ5Q29udHJvbGxlcjtcbiAgfVxuXG4gIHN0YXRpYyBjcmVhdGU8VCBleHRlbmRzIE1vZGVsPGFueT4+KFxuICAgIE1vZGVsQ29uc3RyOiBNb2RlbENvbnN0cnVjdG9yPFQ+LFxuICAgIG1vZHVsZUNvbmZpZ092ZXJyaWRlcz86IFJlY29yZDxzdHJpbmcsIE1vZGVsQ29udHJvbGxlckZhY3RvcnlDb25maWc+LFxuICAgIGdsb2JhbERlZmF1bHRzPzogUGFydGlhbDxNb2RlbENvbnRyb2xsZXJGYWN0b3J5Q29uZmlnPlxuICApOiBDb250cm9sbGVyQ29uc3RydWN0b3I8VD4ge1xuICAgIGNvbnN0IGxvZyA9IEZyb21Nb2RlbENvbnRyb2xsZXIubG9nLmZvcihGcm9tTW9kZWxDb250cm9sbGVyLmNyZWF0ZSk7XG4gICAgY29uc3QgdGFibGVOYW1lID0gTW9kZWwudGFibGVOYW1lKE1vZGVsQ29uc3RyKTtcbiAgICBjb25zdCByb3V0ZVBhdGggPSB0b0tlYmFiQ2FzZSh0YWJsZU5hbWUpO1xuICAgIGNvbnN0IG1vZGVsQ2xhenpOYW1lID0gTW9kZWxDb25zdHIubmFtZTtcbiAgICBjb25zdCBwZXJzaXN0ZW5jZSA9IEZyb21Nb2RlbENvbnRyb2xsZXIuZ2V0UGVyc2lzdGVuY2UoTW9kZWxDb25zdHIpO1xuXG4gICAgLy8gV2hlbiBwZXJzaXN0ZW5jZSBpcyBhIE1vZGVsU2VydmljZSwgdGhlIEBxdWVyeS9Acm91dGUgbWV0YWRhdGEgbGl2ZXMgb25cbiAgICAvLyB0aGUgdW5kZXJseWluZyByZXBvc2l0b3J5IGNsYXNzIChjdXN0b20gcmVwbyksIG5vdCBvbiBNb2RlbFNlcnZpY2UgaXRzZWxmLlxuICAgIC8vIFBhc3MgdGhlIHJlcG8gdG8gdGhlIGZhY3Rvcnkgc28gYWRkQ29tcGxleFF1ZXJpZXMoKSBjYW4gZGlzY292ZXIgdGhlbS5cbiAgICBjb25zdCBmYWN0b3J5UGVyc2lzdGVuY2UgPVxuICAgICAgcGVyc2lzdGVuY2UgaW5zdGFuY2VvZiBNb2RlbFNlcnZpY2UgPyBwZXJzaXN0ZW5jZS5yZXBvIDogcGVyc2lzdGVuY2U7XG5cbiAgICBjb25zdCBkZWNvcmF0b3JDb25maWcgPSBNZXRhZGF0YS5nZXQoXG4gICAgICBNb2RlbENvbnN0cixcbiAgICAgIE1ldGFkYXRhLmtleShERUNBRl9DT05UUk9MTEVSX0NPTkZJRylcbiAgICApIGFzIE1vZGVsQ29udHJvbGxlckZhY3RvcnlDb25maWcgfCB1bmRlZmluZWQ7XG4gICAgY29uc3QgbW9kdWxlT3ZlcnJpZGUgPSBtb2R1bGVDb25maWdPdmVycmlkZXM/LltNb2RlbENvbnN0ci5uYW1lXTtcbiAgICBjb25zdCBtZXJnZWRDb25maWc6IE1vZGVsQ29udHJvbGxlckZhY3RvcnlDb25maWcgPSB7XG4gICAgICAuLi4oZ2xvYmFsRGVmYXVsdHMgfHwge30pLFxuICAgICAgLi4uKGRlY29yYXRvckNvbmZpZyB8fCB7fSksXG4gICAgICAuLi4obW9kdWxlT3ZlcnJpZGUgfHwge30pLFxuICAgIH07XG5cbiAgICBjb25zdCBGYWN0b3J5Q29udHJvbGxlciA9IE1vZGVsQ29udHJvbGxlckZhY3RvcnkuY3JlYXRlPFQ+KFxuICAgICAgTW9kZWxDb25zdHIsXG4gICAgICBmYWN0b3J5UGVyc2lzdGVuY2UsXG4gICAgICBtZXJnZWRDb25maWdcbiAgICApO1xuICAgIGNvbnN0IGZhY3RvcnlSb3V0ZXMgPSAoRmFjdG9yeUNvbnRyb2xsZXIgYXMgYW55KS5fX3JvdXRlc19fIGFzXG4gICAgICB8IFNlcnZlclJvdXRlW11cbiAgICAgIHwgdW5kZWZpbmVkO1xuXG4gICAgY29uc3Qge1xuICAgICAgZ2V0UEssXG4gICAgICBhcGlQcm9wZXJ0aWVzLFxuICAgICAgcGF0aDogcGtQYXRoLFxuICAgIH0gPSBGcm9tTW9kZWxDb250cm9sbGVyLmdldFJvdXRlUGFyYW1ldGVyc0Zyb21Nb2RlbChNb2RlbENvbnN0cik7XG5cbiAgICBsb2cuZGVidWcoXG4gICAgICBgQ3JlYXRpbmcgY29udHJvbGxlciBmb3IgbW9kZWw6ICR7bW9kZWxDbGF6ek5hbWV9IHdpdGggJHtmYWN0b3J5Um91dGVzPy5sZW5ndGggPz8gMH0gZmFjdG9yeSByb3V0ZXNgXG4gICAgKTtcblxuICAgIGNvbnN0IGF1dGhDb25maWc6IEF1dGhDb25maWcgfCB1bmRlZmluZWQgPSBtZXJnZWRDb25maWcuYXV0aDtcblxuICAgIGZ1bmN0aW9uIGFwcGx5Q2xhc3NBdXRoKHRhcmdldDogYW55KSB7XG4gICAgICBpZiAoYXV0aENvbmZpZz8ucHVibGljKSB7XG4gICAgICAgIFB1YmxpYygpKHRhcmdldCk7XG4gICAgICB9IGVsc2UgaWYgKGF1dGhDb25maWc/LnJvbGVzPy5sZW5ndGgpIHtcbiAgICAgICAgUmVxdWlyZVJvbGVzKC4uLmF1dGhDb25maWcucm9sZXMpKHRhcmdldCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBBdXRoKE1vZGVsQ29uc3RyKSh0YXJnZXQpO1xuICAgICAgfVxuICAgICAgaWYgKGF1dGhDb25maWc/Lm5hbWVzcGFjZXM/Lmxlbmd0aCkge1xuICAgICAgICBSZXF1aXJlTmFtZXNwYWNlcyguLi5hdXRoQ29uZmlnLm5hbWVzcGFjZXMpKHRhcmdldCk7XG4gICAgICB9XG4gICAgICBpZiAoYXV0aENvbmZpZz8uc2tpcE1vZGVsUm9sZXMpIHtcbiAgICAgICAgU2V0TWV0YWRhdGEoU0tJUF9NT0RFTF9ST0xFU19LRVksIHRydWUpKHRhcmdldCk7XG4gICAgICB9XG4gICAgICBpZiAoYXV0aENvbmZpZz8uc2tpcE1vZGVsTmFtZXNwYWNlcykge1xuICAgICAgICBTZXRNZXRhZGF0YShTS0lQX01PREVMX05BTUVTUEFDRVNfS0VZLCB0cnVlKSh0YXJnZXQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBDb250cm9sbGVyKHJvdXRlUGF0aClcbiAgICBAQXBpVGFncyhtb2RlbENsYXp6TmFtZSlcbiAgICBAQXBpRXh0cmFNb2RlbHMoTW9kZWxDb25zdHIpXG4gICAgY2xhc3MgRHluYW1pY01vZGVsQ29udHJvbGxlciBleHRlbmRzIERlY2FmTW9kZWxDb250cm9sbGVyPFQ+IHtcbiAgICAgIHByaXZhdGUgcmVhZG9ubHkgcGs6IHN0cmluZyA9IE1vZGVsLnBrKE1vZGVsQ29uc3RyKSBhcyBzdHJpbmc7XG5cbiAgICAgIHByb3RlY3RlZCBzdGF0aWMgZ2V0IGNsYXNzKCkge1xuICAgICAgICByZXR1cm4gTW9kZWxDb25zdHI7XG4gICAgICB9XG5cbiAgICAgIG92ZXJyaWRlIGdldCBjbGFzcygpOiBNb2RlbENvbnN0cnVjdG9yPFQ+IHtcbiAgICAgICAgcmV0dXJuIE1vZGVsQ29uc3RyO1xuICAgICAgfVxuXG4gICAgICBjb25zdHJ1Y3RvcihjbGllbnRDb250ZXh0OiBEZWNhZlJlcXVlc3RDb250ZXh0KSB7XG4gICAgICAgIHN1cGVyKGNsaWVudENvbnRleHQsIER5bmFtaWNNb2RlbENvbnRyb2xsZXIubmFtZSk7XG4gICAgICAgIGxvZy5pbmZvKFxuICAgICAgICAgIGBSZWdpc3RlcmluZyBkeW5hbWljIGNvbnRyb2xsZXIgZm9yIG1vZGVsOiAke3RoaXMuY2xhc3MubmFtZX0gcm91dGU6IC8ke3JvdXRlUGF0aH1gXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgYXBwbHlDbGFzc0F1dGgoRHluYW1pY01vZGVsQ29udHJvbGxlcik7XG5cbiAgICBpZiAoZmFjdG9yeVJvdXRlcykge1xuICAgICAgY29uc3Qgc29ydGVkUm91dGVzID0gWy4uLmZhY3RvcnlSb3V0ZXNdLnNvcnQoKGEsIGIpID0+IHtcbiAgICAgICAgY29uc3QgYVNlZ21lbnRzID0gYS5wYXRoLnNwbGl0KFwiL1wiKS5maWx0ZXIoQm9vbGVhbik7XG4gICAgICAgIGNvbnN0IGJTZWdtZW50cyA9IGIucGF0aC5zcGxpdChcIi9cIikuZmlsdGVyKEJvb2xlYW4pO1xuICAgICAgICBjb25zdCBhUGFyYW1Db3VudCA9IGFTZWdtZW50cy5maWx0ZXIoKHMpID0+IHMuc3RhcnRzV2l0aChcIjpcIikpLmxlbmd0aDtcbiAgICAgICAgY29uc3QgYlBhcmFtQ291bnQgPSBiU2VnbWVudHMuZmlsdGVyKChzKSA9PiBzLnN0YXJ0c1dpdGgoXCI6XCIpKS5sZW5ndGg7XG4gICAgICAgIGNvbnN0IGFMaXRlcmFsQ291bnQgPSBhU2VnbWVudHMubGVuZ3RoIC0gYVBhcmFtQ291bnQ7XG4gICAgICAgIGNvbnN0IGJMaXRlcmFsQ291bnQgPSBiU2VnbWVudHMubGVuZ3RoIC0gYlBhcmFtQ291bnQ7XG4gICAgICAgIGlmIChhTGl0ZXJhbENvdW50ICE9PSBiTGl0ZXJhbENvdW50KVxuICAgICAgICAgIHJldHVybiBiTGl0ZXJhbENvdW50IC0gYUxpdGVyYWxDb3VudDtcbiAgICAgICAgaWYgKGFQYXJhbUNvdW50ICE9PSBiUGFyYW1Db3VudCkgcmV0dXJuIGFQYXJhbUNvdW50IC0gYlBhcmFtQ291bnQ7XG4gICAgICAgIHJldHVybiAwO1xuICAgICAgfSk7XG5cbiAgICAgIGZvciAoY29uc3Qgcm91dGUgb2Ygc29ydGVkUm91dGVzKSB7XG4gICAgICAgIGNvbnN0IG1ldGhvZE5hbWUgPVxuICAgICAgICAgIHJvdXRlLmltcGxlbWVudGF0aW9uPy5uYW1lIHx8IHJvdXRlLm1ldGhvZC50b0xvd2VyQ2FzZSgpO1xuICAgICAgICBjb25zdCByZWdpc3RyYXRpb24gPSBGcm9tTW9kZWxDb250cm9sbGVyLm1hdGNoUm91dGUoXG4gICAgICAgICAgbWV0aG9kTmFtZSxcbiAgICAgICAgICByb3V0ZSxcbiAgICAgICAgICBwa1BhdGgsXG4gICAgICAgICAgYXBpUHJvcGVydGllcyxcbiAgICAgICAgICBnZXRQSyxcbiAgICAgICAgICBNb2RlbENvbnN0cixcbiAgICAgICAgICBtb2RlbENsYXp6TmFtZVxuICAgICAgICApO1xuICAgICAgICBpZiAoIXJlZ2lzdHJhdGlvbikgY29udGludWU7XG5cbiAgICAgICAgY29uc3Qge1xuICAgICAgICAgIG1ldGhvZE5hbWU6IHJlZ2lzdGVyZWRNZXRob2ROYW1lLFxuICAgICAgICAgIGhhbmRsZXIsXG4gICAgICAgICAgZGVjb3JhdG9ycyxcbiAgICAgICAgICBwYXJhbURlY29yYXRvcnMsXG4gICAgICAgIH0gPSByZWdpc3RyYXRpb247XG5cbiAgICAgICAgY29uc3QgZGVzY3JpcHRvciA9IEZyb21Nb2RlbENvbnRyb2xsZXIuZGVmaW5lTWV0aG9kKFxuICAgICAgICAgIER5bmFtaWNNb2RlbENvbnRyb2xsZXIsXG4gICAgICAgICAgcmVnaXN0ZXJlZE1ldGhvZE5hbWUsXG4gICAgICAgICAgaGFuZGxlclxuICAgICAgICApO1xuXG4gICAgICAgIGlmIChkZXNjcmlwdG9yKSB7XG4gICAgICAgICAgY29uc3QgaHR0cERlY29yYXRvciA9IEh0dHBWZXJiVG9EZWNvcmF0b3Iocm91dGUubWV0aG9kIGFzIEh0dHBWZXJicykoXG4gICAgICAgICAgICByb3V0ZS5wYXRoLnJlcGxhY2UoL15cXC8rfFxcLyskL2csIFwiXCIpIHx8IHVuZGVmaW5lZFxuICAgICAgICAgICk7XG4gICAgICAgICAgRnJvbU1vZGVsQ29udHJvbGxlci5hcHBseURlY29yYXRvcnMoXG4gICAgICAgICAgICBEeW5hbWljTW9kZWxDb250cm9sbGVyLFxuICAgICAgICAgICAgcmVnaXN0ZXJlZE1ldGhvZE5hbWUsXG4gICAgICAgICAgICBbaHR0cERlY29yYXRvciwgLi4uZGVjb3JhdG9yc10sXG4gICAgICAgICAgICBwYXJhbURlY29yYXRvcnNcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIER5bmFtaWNNb2RlbENvbnRyb2xsZXIgYXMgYW55O1xuICB9XG5cbiAgc3RhdGljIGdldFJvdXRlUGFyYW1ldGVyc0Zyb21Nb2RlbDxUIGV4dGVuZHMgTW9kZWw8YW55Pj4oXG4gICAgTW9kZWxDbGF6ejogTW9kZWxDb25zdHJ1Y3RvcjxUPlxuICApOiB7XG4gICAgcGF0aDogc3RyaW5nO1xuICAgIGRlc2NyaXB0aW9uOiBzdHJpbmc7XG4gICAgYXBpUHJvcGVydGllczogRGVjYWZBcGlQcm9wZXJ0eVtdO1xuICAgIGdldFBLOiAoLi4ucGFyYW1zOiBBcnJheTxzdHJpbmcgfCBudW1iZXI+KSA9PiBzdHJpbmc7XG4gIH0ge1xuICAgIGNvbnN0IHBrID0gTW9kZWwucGsoTW9kZWxDbGF6eikgYXMga2V5b2YgTW9kZWw8YW55PjtcbiAgICBjb25zdCBjb21wb3NlZCA9IE1ldGFkYXRhLmdldChcbiAgICAgIE1vZGVsQ2xhenosXG4gICAgICBNZXRhZGF0YS5rZXkoREJLZXlzLkNPTVBPU0VELCBwaylcbiAgICApO1xuICAgIGNvbnN0IGNvbXBvc2VkS2V5cyA9IGNvbXBvc2VkPy5hcmdzID8/IFtdO1xuXG4gICAgY29uc3QgdW5pcXVlS2V5cyA9XG4gICAgICBBcnJheS5pc0FycmF5KGNvbXBvc2VkS2V5cykgJiYgY29tcG9zZWRLZXlzLmxlbmd0aCA+IDBcbiAgICAgICAgPyBBcnJheS5mcm9tKG5ldyBTZXQoWy4uLmNvbXBvc2VkS2V5c10pKVxuICAgICAgICA6IEFycmF5LmZyb20obmV3IFNldChbcGtdKSk7XG5cbiAgICBjb25zdCBkZXNjcmlwdGlvbiA9IE1ldGFkYXRhLmRlc2NyaXB0aW9uKE1vZGVsQ2xhenopID8/IFwiXCI7XG4gICAgY29uc3QgcGF0aCA9IGA6JHt1bmlxdWVLZXlzLmpvaW4oXCIvOlwiKX1gO1xuICAgIGNvbnN0IGFwaVByb3BlcnRpZXM6IERlY2FmQXBpUHJvcGVydHlbXSA9IHVuaXF1ZUtleXMubWFwKChrZXkpID0+IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIG5hbWU6IGtleSxcbiAgICAgICAgZGVzY3JpcHRpb246IE1ldGFkYXRhLmRlc2NyaXB0aW9uKE1vZGVsQ2xhenosIGtleSksXG4gICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICB9O1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIHBhdGgsXG4gICAgICBkZXNjcmlwdGlvbixcbiAgICAgIGFwaVByb3BlcnRpZXMsXG4gICAgICBnZXRQSzogKC4uLnBhcmFtczogQXJyYXk8c3RyaW5nIHwgbnVtYmVyPikgPT5cbiAgICAgICAgY29tcG9zZWQ/LnNlcGFyYXRvciA/IHBhcmFtcy5qb2luKGNvbXBvc2VkLnNlcGFyYXRvcikgOiBwYXJhbXMuam9pbihcIlwiKSxcbiAgICB9O1xuICB9XG5cbiAgcHJpdmF0ZSBzdGF0aWMgcm91dGVQYXJhbURlY29yYXRvcnMoXG4gICAgcGF0aDogc3RyaW5nXG4gICk6IEFycmF5PHsgZGVjb3JhdG9yOiBQYXJhbWV0ZXJEZWNvcmF0b3I7IGluZGV4OiBudW1iZXIgfT4ge1xuICAgIGxldCBwYXJhbUluZGV4ID0gMDtcbiAgICByZXR1cm4gcGF0aFxuICAgICAgLnNwbGl0KFwiL1wiKVxuICAgICAgLmZpbHRlcihCb29sZWFuKVxuICAgICAgLmZsYXRNYXAoKHNlZ21lbnQpID0+IHtcbiAgICAgICAgaWYgKHNlZ21lbnQuc3RhcnRzV2l0aChcIjpcIikpIHtcbiAgICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgeyBkZWNvcmF0b3I6IFBhcmFtKHNlZ21lbnQuc2xpY2UoMSkpIGFzIGFueSwgaW5kZXg6IHBhcmFtSW5kZXgrKyB9LFxuICAgICAgICAgIF07XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHNlZ21lbnQuc3RhcnRzV2l0aChcIipcIikpIHtcbiAgICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgeyBkZWNvcmF0b3I6IFBhcmFtKHNlZ21lbnQuc2xpY2UoMSkpIGFzIGFueSwgaW5kZXg6IHBhcmFtSW5kZXgrKyB9LFxuICAgICAgICAgIF07XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIFtdO1xuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHN0YXRpYyBkZWZpbmVNZXRob2QoXG4gICAgdGFyZ2V0OiBhbnksXG4gICAgbWV0aG9kTmFtZTogc3RyaW5nLFxuICAgIGhhbmRsZXI6ICguLi5hcmdzOiBhbnlbXSkgPT4gYW55XG4gICk6IFByb3BlcnR5RGVzY3JpcHRvciB8IHVuZGVmaW5lZCB7XG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRhcmdldC5wcm90b3R5cGUgfHwgdGFyZ2V0LCBtZXRob2ROYW1lLCB7XG4gICAgICB2YWx1ZTogaGFuZGxlcixcbiAgICAgIHdyaXRhYmxlOiBmYWxzZSxcbiAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgIGVudW1lcmFibGU6IGZhbHNlLFxuICAgIH0pO1xuXG4gICAgcmV0dXJuIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoXG4gICAgICB0YXJnZXQucHJvdG90eXBlIHx8IHRhcmdldCxcbiAgICAgIG1ldGhvZE5hbWVcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBzdGF0aWMgYXBwbHlEZWNvcmF0b3JzKFxuICAgIHRhcmdldDogYW55LFxuICAgIG1ldGhvZE5hbWU6IHN0cmluZyxcbiAgICBtZXRob2REZWNvcmF0b3JzOiBBcnJheTwodGFyZ2V0OiBhbnksIGtleTogc3RyaW5nLCBkZXNjOiBhbnkpID0+IHZvaWQ+LFxuICAgIHBhcmFtRGVjb3JhdG9yczogQXJyYXk8e1xuICAgICAgZGVjb3JhdG9yOiBQYXJhbWV0ZXJEZWNvcmF0b3I7XG4gICAgICBpbmRleDogbnVtYmVyO1xuICAgIH0+ID0gW11cbiAgKSB7XG4gICAgY29uc3QgcHJvdG8gPSB0YXJnZXQ/LnByb3RvdHlwZSA/PyB0YXJnZXQ7XG4gICAgY29uc3QgZGVzY3JpcHRvciA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IocHJvdG8sIG1ldGhvZE5hbWUpO1xuICAgIG1ldGhvZERlY29yYXRvcnMuZm9yRWFjaCgoZCkgPT4gZChwcm90bywgbWV0aG9kTmFtZSwgZGVzY3JpcHRvcikpO1xuICAgIHBhcmFtRGVjb3JhdG9ycy5mb3JFYWNoKCh7IGRlY29yYXRvciwgaW5kZXggfSkgPT5cbiAgICAgIGRlY29yYXRvcihwcm90bywgbWV0aG9kTmFtZSwgaW5kZXgpXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgc3RhdGljIG1hdGNoUm91dGUoXG4gICAgbWV0aG9kTmFtZTogc3RyaW5nLFxuICAgIHJvdXRlOiBTZXJ2ZXJSb3V0ZSxcbiAgICBwa1BhdGg6IHN0cmluZyxcbiAgICBhcGlQcm9wZXJ0aWVzOiBEZWNhZkFwaVByb3BlcnR5W10sXG4gICAgZ2V0UEs6ICguLi5wOiBBcnJheTxzdHJpbmcgfCBudW1iZXI+KSA9PiBzdHJpbmcsXG4gICAgTW9kZWxDb25zdHI6IE1vZGVsQ29uc3RydWN0b3I8YW55PixcbiAgICBtb2RlbENsYXp6TmFtZTogc3RyaW5nXG4gICk6XG4gICAgfCB7XG4gICAgICAgIG1ldGhvZE5hbWU6IHN0cmluZztcbiAgICAgICAgaGFuZGxlcjogKC4uLmFyZ3M6IGFueVtdKSA9PiBhbnk7XG4gICAgICAgIGRlY29yYXRvcnM6IEFycmF5PCh0YXJnZXQ6IGFueSwga2V5OiBzdHJpbmcsIGRlc2M6IGFueSkgPT4gdm9pZD47XG4gICAgICAgIHBhcmFtRGVjb3JhdG9yczogQXJyYXk8e1xuICAgICAgICAgIGRlY29yYXRvcjogUGFyYW1ldGVyRGVjb3JhdG9yO1xuICAgICAgICAgIGluZGV4OiBudW1iZXI7XG4gICAgICAgIH0+O1xuICAgICAgfVxuICAgIHwgdW5kZWZpbmVkIHtcbiAgICBjb25zdCB7IG1ldGhvZCwgcGF0aCB9ID0gcm91dGU7XG4gICAgY29uc3Qgbm9ybWFsaXplZFBhdGggPSBwYXRoLnJlcGxhY2UoL15cXC8rfFxcLyskL2csIFwiXCIpO1xuICAgIGNvbnN0IGhhbmRsZXIgPSByb3V0ZS5pbXBsZW1lbnRhdGlvbiBhcyAoLi4uYXJnczogYW55W10pID0+IGFueTtcblxuICAgIGlmIChtZXRob2QgPT09IFwiUE9TVFwiICYmIG5vcm1hbGl6ZWRQYXRoID09PSBcIlwiKSB7XG4gICAgICByZXR1cm4gRnJvbU1vZGVsQ29udHJvbGxlci5jcmVhdGVSZWdpc3RyYXRpb24oXG4gICAgICAgIFwiY3JlYXRlXCIsXG4gICAgICAgIGhhbmRsZXIsXG4gICAgICAgIEZyb21Nb2RlbENvbnRyb2xsZXIuY3JlYXRlQ3JlYXRlRGVjb3JhdG9ycyhNb2RlbENvbnN0ciwgbW9kZWxDbGF6ek5hbWUpLFxuICAgICAgICBbXG4gICAgICAgICAgeyBkZWNvcmF0b3I6IERlY2FmQm9keSgpIGFzIGFueSwgaW5kZXg6IDAgfSxcbiAgICAgICAgICB7IGRlY29yYXRvcjogUmVzcG9uc2UoeyBwYXNzdGhyb3VnaDogdHJ1ZSB9KSBhcyBhbnksIGluZGV4OiAxIH0sXG4gICAgICAgIF1cbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKG1ldGhvZCA9PT0gXCJQT1NUXCIgJiYgbm9ybWFsaXplZFBhdGggPT09IFwiYnVsa1wiKSB7XG4gICAgICByZXR1cm4gRnJvbU1vZGVsQ29udHJvbGxlci5jcmVhdGVSZWdpc3RyYXRpb24oXG4gICAgICAgIFwiY3JlYXRlQWxsXCIsXG4gICAgICAgIGhhbmRsZXIsXG4gICAgICAgIEZyb21Nb2RlbENvbnRyb2xsZXIuYnVsa0NyZWF0ZURlY29yYXRvcnMoTW9kZWxDb25zdHIsIG1vZGVsQ2xhenpOYW1lKSxcbiAgICAgICAgW1xuICAgICAgICAgIHsgZGVjb3JhdG9yOiBEZWNhZkJvZHkoKSBhcyBhbnksIGluZGV4OiAwIH0sXG4gICAgICAgICAgeyBkZWNvcmF0b3I6IFJlc3BvbnNlKHsgcGFzc3Rocm91Z2g6IHRydWUgfSkgYXMgYW55LCBpbmRleDogMSB9LFxuICAgICAgICBdXG4gICAgICApO1xuICAgIH1cblxuICAgIGlmIChtZXRob2QgPT09IFwiR0VUXCIgJiYgbm9ybWFsaXplZFBhdGggPT09IFwiYnVsa1wiKSB7XG4gICAgICByZXR1cm4gRnJvbU1vZGVsQ29udHJvbGxlci5jcmVhdGVSZWdpc3RyYXRpb24oXG4gICAgICAgIFwicmVhZEFsbFwiLFxuICAgICAgICBoYW5kbGVyLFxuICAgICAgICBGcm9tTW9kZWxDb250cm9sbGVyLmJ1bGtSZWFkRGVjb3JhdG9ycyhNb2RlbENvbnN0ciwgbW9kZWxDbGF6ek5hbWUpLFxuICAgICAgICBbeyBkZWNvcmF0b3I6IFF1ZXJ5KFwiaWRzXCIpIGFzIGFueSwgaW5kZXg6IDAgfV1cbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKG1ldGhvZCA9PT0gXCJQVVRcIiAmJiBub3JtYWxpemVkUGF0aCA9PT0gXCJidWxrXCIpIHtcbiAgICAgIHJldHVybiBGcm9tTW9kZWxDb250cm9sbGVyLmNyZWF0ZVJlZ2lzdHJhdGlvbihcbiAgICAgICAgXCJ1cGRhdGVBbGxcIixcbiAgICAgICAgaGFuZGxlcixcbiAgICAgICAgRnJvbU1vZGVsQ29udHJvbGxlci5idWxrVXBkYXRlRGVjb3JhdG9ycyhcbiAgICAgICAgICBNb2RlbENvbnN0cixcbiAgICAgICAgICBtb2RlbENsYXp6TmFtZSxcbiAgICAgICAgICBhcGlQcm9wZXJ0aWVzXG4gICAgICAgICksXG4gICAgICAgIFtcbiAgICAgICAgICB7IGRlY29yYXRvcjogRGVjYWZCb2R5KCkgYXMgYW55LCBpbmRleDogMCB9LFxuICAgICAgICAgIHsgZGVjb3JhdG9yOiBSZXNwb25zZSh7IHBhc3N0aHJvdWdoOiB0cnVlIH0pIGFzIGFueSwgaW5kZXg6IDEgfSxcbiAgICAgICAgXVxuICAgICAgKTtcbiAgICB9XG5cbiAgICBpZiAobWV0aG9kID09PSBcIkRFTEVURVwiICYmIG5vcm1hbGl6ZWRQYXRoID09PSBcImJ1bGtcIikge1xuICAgICAgcmV0dXJuIEZyb21Nb2RlbENvbnRyb2xsZXIuY3JlYXRlUmVnaXN0cmF0aW9uKFxuICAgICAgICBcImRlbGV0ZUFsbFwiLFxuICAgICAgICBoYW5kbGVyLFxuICAgICAgICBGcm9tTW9kZWxDb250cm9sbGVyLmJ1bGtEZWxldGVEZWNvcmF0b3JzKFxuICAgICAgICAgIE1vZGVsQ29uc3RyLFxuICAgICAgICAgIG1vZGVsQ2xhenpOYW1lLFxuICAgICAgICAgIGFwaVByb3BlcnRpZXNcbiAgICAgICAgKSxcbiAgICAgICAgW1xuICAgICAgICAgIHsgZGVjb3JhdG9yOiBRdWVyeShcImlkc1wiKSBhcyBhbnksIGluZGV4OiAwIH0sXG4gICAgICAgICAgeyBkZWNvcmF0b3I6IFJlc3BvbnNlKHsgcGFzc3Rocm91Z2g6IHRydWUgfSkgYXMgYW55LCBpbmRleDogMSB9LFxuICAgICAgICBdXG4gICAgICApO1xuICAgIH1cblxuICAgIGlmIChtZXRob2QgPT09IFwiR0VUXCIgJiYgbm9ybWFsaXplZFBhdGggPT09IHBrUGF0aCkge1xuICAgICAgcmV0dXJuIEZyb21Nb2RlbENvbnRyb2xsZXIuY3JlYXRlUmVnaXN0cmF0aW9uKFxuICAgICAgICBcInJlYWRcIixcbiAgICAgICAgaGFuZGxlcixcbiAgICAgICAgRnJvbU1vZGVsQ29udHJvbGxlci5yZWFkRGVjb3JhdG9ycyhcbiAgICAgICAgICBNb2RlbENvbnN0cixcbiAgICAgICAgICBtb2RlbENsYXp6TmFtZSxcbiAgICAgICAgICBhcGlQcm9wZXJ0aWVzLFxuICAgICAgICAgIHBrUGF0aFxuICAgICAgICApLFxuICAgICAgICBGcm9tTW9kZWxDb250cm9sbGVyLnJvdXRlUGFyYW1EZWNvcmF0b3JzKG5vcm1hbGl6ZWRQYXRoKVxuICAgICAgKTtcbiAgICB9XG5cbiAgICBpZiAobWV0aG9kID09PSBcIlBVVFwiICYmIG5vcm1hbGl6ZWRQYXRoID09PSBwa1BhdGgpIHtcbiAgICAgIGNvbnN0IHJvdXRlUGFyYW1zID1cbiAgICAgICAgRnJvbU1vZGVsQ29udHJvbGxlci5yb3V0ZVBhcmFtRGVjb3JhdG9ycyhub3JtYWxpemVkUGF0aCk7XG4gICAgICByZXR1cm4gRnJvbU1vZGVsQ29udHJvbGxlci5jcmVhdGVSZWdpc3RyYXRpb24oXG4gICAgICAgIFwidXBkYXRlXCIsXG4gICAgICAgIGhhbmRsZXIsXG4gICAgICAgIEZyb21Nb2RlbENvbnRyb2xsZXIudXBkYXRlRGVjb3JhdG9ycyhcbiAgICAgICAgICBNb2RlbENvbnN0cixcbiAgICAgICAgICBtb2RlbENsYXp6TmFtZSxcbiAgICAgICAgICBhcGlQcm9wZXJ0aWVzLFxuICAgICAgICAgIHBrUGF0aFxuICAgICAgICApLFxuICAgICAgICBbXG4gICAgICAgICAgeyBkZWNvcmF0b3I6IERlY2FmQm9keSgpIGFzIGFueSwgaW5kZXg6IDAgfSxcbiAgICAgICAgICAuLi5yb3V0ZVBhcmFtcy5tYXAoKHsgZGVjb3JhdG9yLCBpbmRleCB9KSA9PiAoe1xuICAgICAgICAgICAgZGVjb3JhdG9yLFxuICAgICAgICAgICAgaW5kZXg6IGluZGV4ICsgMSxcbiAgICAgICAgICB9KSksXG4gICAgICAgIF1cbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKG1ldGhvZCA9PT0gXCJERUxFVEVcIiAmJiBub3JtYWxpemVkUGF0aCA9PT0gcGtQYXRoKSB7XG4gICAgICBjb25zdCByb3V0ZVBhcmFtcyA9XG4gICAgICAgIEZyb21Nb2RlbENvbnRyb2xsZXIucm91dGVQYXJhbURlY29yYXRvcnMobm9ybWFsaXplZFBhdGgpO1xuICAgICAgcmV0dXJuIEZyb21Nb2RlbENvbnRyb2xsZXIuY3JlYXRlUmVnaXN0cmF0aW9uKFxuICAgICAgICBcImRlbGV0ZVwiLFxuICAgICAgICBoYW5kbGVyLFxuICAgICAgICBGcm9tTW9kZWxDb250cm9sbGVyLmRlbGV0ZURlY29yYXRvcnMoXG4gICAgICAgICAgTW9kZWxDb25zdHIsXG4gICAgICAgICAgbW9kZWxDbGF6ek5hbWUsXG4gICAgICAgICAgYXBpUHJvcGVydGllcyxcbiAgICAgICAgICBwa1BhdGhcbiAgICAgICAgKSxcbiAgICAgICAgcm91dGVQYXJhbXNcbiAgICAgICk7XG4gICAgfVxuXG4gICAgLy8gQ29tcG9zZWQgUEsgZmFsbGJhY2sgcm91dGVzIChmaWx0ZXJFbXB0eSkg4oCUIHBhdGggZGlmZmVycyBmcm9tIHBrUGF0aFxuICAgIGNvbnN0IGZhbGxiYWNrU2VnbWVudHMgPSBub3JtYWxpemVkUGF0aC5zcGxpdChcIi9cIikuZmlsdGVyKEJvb2xlYW4pO1xuICAgIGNvbnN0IGlzQWxsUGFyYW1zID1cbiAgICAgIGZhbGxiYWNrU2VnbWVudHMubGVuZ3RoID4gMCAmJlxuICAgICAgZmFsbGJhY2tTZWdtZW50cy5ldmVyeSgocykgPT4gcy5zdGFydHNXaXRoKFwiOlwiKSk7XG4gICAgaWYgKGlzQWxsUGFyYW1zICYmIG5vcm1hbGl6ZWRQYXRoICE9PSBwa1BhdGgpIHtcbiAgICAgIGNvbnN0IGZhbGxiYWNrQXBpUHJvcHMgPSBmYWxsYmFja1NlZ21lbnRzXG4gICAgICAgIC5tYXAoKHMpID0+IHMuc2xpY2UoMSkpXG4gICAgICAgIC5tYXAoKG5hbWUpID0+ICh7XG4gICAgICAgICAgbmFtZSxcbiAgICAgICAgICBkZXNjcmlwdGlvbjogYCR7bmFtZX0gcGFyYW1ldGVyYCxcbiAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICAgIH0pKTtcbiAgICAgIGNvbnN0IHN1ZmZpeCA9IGZhbGxiYWNrU2VnbWVudHMubWFwKChzKSA9PiBzLnNsaWNlKDEpKS5qb2luKFwiQW5kXCIpO1xuICAgICAgY29uc3Qgcm91dGVQYXJhbXMgPVxuICAgICAgICBGcm9tTW9kZWxDb250cm9sbGVyLnJvdXRlUGFyYW1EZWNvcmF0b3JzKG5vcm1hbGl6ZWRQYXRoKTtcbiAgICAgIGlmIChtZXRob2QgPT09IFwiR0VUXCIpIHtcbiAgICAgICAgcmV0dXJuIEZyb21Nb2RlbENvbnRyb2xsZXIuY3JlYXRlUmVnaXN0cmF0aW9uKFxuICAgICAgICAgIGByZWFkQnkke3N1ZmZpeH1gLFxuICAgICAgICAgIGhhbmRsZXIsXG4gICAgICAgICAgRnJvbU1vZGVsQ29udHJvbGxlci5yZWFkRGVjb3JhdG9ycyhcbiAgICAgICAgICAgIE1vZGVsQ29uc3RyLFxuICAgICAgICAgICAgbW9kZWxDbGF6ek5hbWUsXG4gICAgICAgICAgICBmYWxsYmFja0FwaVByb3BzLFxuICAgICAgICAgICAgbm9ybWFsaXplZFBhdGhcbiAgICAgICAgICApLFxuICAgICAgICAgIHJvdXRlUGFyYW1zXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICBpZiAobWV0aG9kID09PSBcIlBVVFwiKSB7XG4gICAgICAgIHJldHVybiBGcm9tTW9kZWxDb250cm9sbGVyLmNyZWF0ZVJlZ2lzdHJhdGlvbihcbiAgICAgICAgICBgdXBkYXRlQnkke3N1ZmZpeH1gLFxuICAgICAgICAgIGhhbmRsZXIsXG4gICAgICAgICAgRnJvbU1vZGVsQ29udHJvbGxlci51cGRhdGVEZWNvcmF0b3JzKFxuICAgICAgICAgICAgTW9kZWxDb25zdHIsXG4gICAgICAgICAgICBtb2RlbENsYXp6TmFtZSxcbiAgICAgICAgICAgIGZhbGxiYWNrQXBpUHJvcHMsXG4gICAgICAgICAgICBub3JtYWxpemVkUGF0aFxuICAgICAgICAgICksXG4gICAgICAgICAgW1xuICAgICAgICAgICAgeyBkZWNvcmF0b3I6IERlY2FmQm9keSgpIGFzIGFueSwgaW5kZXg6IDAgfSxcbiAgICAgICAgICAgIC4uLnJvdXRlUGFyYW1zLm1hcCgoeyBkZWNvcmF0b3IsIGluZGV4IH0pID0+ICh7XG4gICAgICAgICAgICAgIGRlY29yYXRvcixcbiAgICAgICAgICAgICAgaW5kZXg6IGluZGV4ICsgMSxcbiAgICAgICAgICAgIH0pKSxcbiAgICAgICAgICBdXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICBpZiAobWV0aG9kID09PSBcIkRFTEVURVwiKSB7XG4gICAgICAgIHJldHVybiBGcm9tTW9kZWxDb250cm9sbGVyLmNyZWF0ZVJlZ2lzdHJhdGlvbihcbiAgICAgICAgICBgZGVsZXRlQnkke3N1ZmZpeH1gLFxuICAgICAgICAgIGhhbmRsZXIsXG4gICAgICAgICAgRnJvbU1vZGVsQ29udHJvbGxlci5kZWxldGVEZWNvcmF0b3JzKFxuICAgICAgICAgICAgTW9kZWxDb25zdHIsXG4gICAgICAgICAgICBtb2RlbENsYXp6TmFtZSxcbiAgICAgICAgICAgIGZhbGxiYWNrQXBpUHJvcHMsXG4gICAgICAgICAgICBub3JtYWxpemVkUGF0aFxuICAgICAgICAgICksXG4gICAgICAgICAgcm91dGVQYXJhbXNcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAobWV0aG9kID09PSBcIkdFVFwiICYmIG5vcm1hbGl6ZWRQYXRoID09PSBcInN0YXRlbWVudC86bWV0aG9kLyphcmdzXCIpIHtcbiAgICAgIHJldHVybiBGcm9tTW9kZWxDb250cm9sbGVyLmNyZWF0ZVJlZ2lzdHJhdGlvbihcbiAgICAgICAgXCJzdGF0ZW1lbnRcIixcbiAgICAgICAgaGFuZGxlcixcbiAgICAgICAgRnJvbU1vZGVsQ29udHJvbGxlci5zdGF0ZW1lbnREZWNvcmF0b3JzKE1vZGVsQ29uc3RyLCBtb2RlbENsYXp6TmFtZSksXG4gICAgICAgIFtcbiAgICAgICAgICB7IGRlY29yYXRvcjogUGFyYW0oXCJtZXRob2RcIikgYXMgYW55LCBpbmRleDogMCB9LFxuICAgICAgICAgIHsgZGVjb3JhdG9yOiBQYXJhbShcImFyZ3NcIikgYXMgYW55LCBpbmRleDogMSB9LFxuICAgICAgICAgIHsgZGVjb3JhdG9yOiBEZWNhZlF1ZXJ5KCkgYXMgYW55LCBpbmRleDogMiB9LFxuICAgICAgICBdXG4gICAgICApO1xuICAgIH1cblxuICAgIGlmIChtZXRob2QgPT09IFwiR0VUXCIgJiYgbm9ybWFsaXplZFBhdGggPT09IFwiZmluZE9uZUJ5LzprZXkvOnZhbHVlXCIpIHtcbiAgICAgIHJldHVybiBGcm9tTW9kZWxDb250cm9sbGVyLmNyZWF0ZVJlZ2lzdHJhdGlvbihcbiAgICAgICAgXCJmaW5kT25lQnlcIixcbiAgICAgICAgaGFuZGxlcixcbiAgICAgICAgRnJvbU1vZGVsQ29udHJvbGxlci5zdGF0ZW1lbnRTaG9ydGN1dERlY29yYXRvcnMoXG4gICAgICAgICAgTW9kZWxDb25zdHIsXG4gICAgICAgICAgbW9kZWxDbGF6ek5hbWUsXG4gICAgICAgICAgbm9ybWFsaXplZFBhdGgsXG4gICAgICAgICAgUHJlcGFyZWRTdGF0ZW1lbnRLZXlzLkZJTkRfT05FX0JZXG4gICAgICAgICksXG4gICAgICAgIEZyb21Nb2RlbENvbnRyb2xsZXIuc3RhdGVtZW50U2hvcnRjdXRQYXJhbXMobm9ybWFsaXplZFBhdGgpXG4gICAgICApO1xuICAgIH1cblxuICAgIGNvbnN0IHN0YXRlbWVudFJvdXRlczogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgICAgIFwibGlzdEJ5LzprZXlcIjogUHJlcGFyZWRTdGF0ZW1lbnRLZXlzLkxJU1RfQlksXG4gICAgICBcInBhZ2luYXRlQnkvOmtleS86cGFnZVwiOiBQcmVwYXJlZFN0YXRlbWVudEtleXMuUEFHRV9CWSxcbiAgICAgIFwiZmluZC86dmFsdWVcIjogUHJlcGFyZWRTdGF0ZW1lbnRLZXlzLkZJTkQsXG4gICAgICBcInBhZ2UvOnZhbHVlXCI6IFByZXBhcmVkU3RhdGVtZW50S2V5cy5QQUdFLFxuICAgICAgXCJmaW5kT25lQnkvOmtleS86dmFsdWVcIjogUHJlcGFyZWRTdGF0ZW1lbnRLZXlzLkZJTkRfT05FX0JZLFxuICAgICAgXCJmaW5kQnkvOmtleS86dmFsdWVcIjogUHJlcGFyZWRTdGF0ZW1lbnRLZXlzLkZJTkRfQlksXG4gICAgICBcImNvdW50T2YvOmZpZWxkXCI6IFByZXBhcmVkU3RhdGVtZW50S2V5cy5DT1VOVF9PRixcbiAgICAgIFwibWF4T2YvOmZpZWxkXCI6IFByZXBhcmVkU3RhdGVtZW50S2V5cy5NQVhfT0YsXG4gICAgICBcIm1pbk9mLzpmaWVsZFwiOiBQcmVwYXJlZFN0YXRlbWVudEtleXMuTUlOX09GLFxuICAgICAgXCJhdmdPZi86ZmllbGRcIjogUHJlcGFyZWRTdGF0ZW1lbnRLZXlzLkFWR19PRixcbiAgICAgIFwic3VtT2YvOmZpZWxkXCI6IFByZXBhcmVkU3RhdGVtZW50S2V5cy5TVU1fT0YsXG4gICAgICBcImRpc3RpbmN0T2YvOmZpZWxkXCI6IFByZXBhcmVkU3RhdGVtZW50S2V5cy5ESVNUSU5DVF9PRixcbiAgICAgIFwiZ3JvdXBPZi86ZmllbGRcIjogUHJlcGFyZWRTdGF0ZW1lbnRLZXlzLkdST1VQX09GLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0ZW1lbnRLZXkgPSBzdGF0ZW1lbnRSb3V0ZXNbbm9ybWFsaXplZFBhdGhdO1xuICAgIGlmIChzdGF0ZW1lbnRLZXkgJiYgbWV0aG9kID09PSBcIkdFVFwiKSB7XG4gICAgICByZXR1cm4gRnJvbU1vZGVsQ29udHJvbGxlci5jcmVhdGVSZWdpc3RyYXRpb24oXG4gICAgICAgIEZyb21Nb2RlbENvbnRyb2xsZXIuc3RhdGVtZW50TWV0aG9kTmFtZShub3JtYWxpemVkUGF0aCksXG4gICAgICAgIGhhbmRsZXIsXG4gICAgICAgIEZyb21Nb2RlbENvbnRyb2xsZXIuc3RhdGVtZW50U2hvcnRjdXREZWNvcmF0b3JzKFxuICAgICAgICAgIE1vZGVsQ29uc3RyLFxuICAgICAgICAgIG1vZGVsQ2xhenpOYW1lLFxuICAgICAgICAgIG5vcm1hbGl6ZWRQYXRoLFxuICAgICAgICAgIHN0YXRlbWVudEtleVxuICAgICAgICApLFxuICAgICAgICBGcm9tTW9kZWxDb250cm9sbGVyLnN0YXRlbWVudFNob3J0Y3V0UGFyYW1zKG5vcm1hbGl6ZWRQYXRoKVxuICAgICAgKTtcbiAgICB9XG5cbiAgICBpZiAobWV0aG9kID09PSBcIkdFVFwiICYmIG5vcm1hbGl6ZWRQYXRoLnN0YXJ0c1dpdGgoXCJxdWVyeS9cIikpIHtcbiAgICAgIGNvbnN0IHF1ZXJ5TWV0aG9kID0gbm9ybWFsaXplZFBhdGgucmVwbGFjZSgvXnF1ZXJ5XFwvLywgXCJcIikuc3BsaXQoXCIvXCIpWzBdO1xuICAgICAgcmV0dXJuIEZyb21Nb2RlbENvbnRyb2xsZXIuY3JlYXRlUmVnaXN0cmF0aW9uKFxuICAgICAgICBxdWVyeU1ldGhvZCxcbiAgICAgICAgaGFuZGxlcixcbiAgICAgICAgRnJvbU1vZGVsQ29udHJvbGxlci5nZXRRdWVyeURlY29yYXRvcnMoXG4gICAgICAgICAgcXVlcnlNZXRob2QsXG4gICAgICAgICAgbm9ybWFsaXplZFBhdGgsXG4gICAgICAgICAgXCJHRVRcIixcbiAgICAgICAgICB0cnVlXG4gICAgICAgICksXG4gICAgICAgIEZyb21Nb2RlbENvbnRyb2xsZXIuY29tcGxleFF1ZXJ5UGFyYW1zKG5vcm1hbGl6ZWRQYXRoKVxuICAgICAgKTtcbiAgICB9XG5cbiAgICBjb25zdCBwYXRoU2VnbWVudHMgPSBub3JtYWxpemVkUGF0aC5zcGxpdChcIi9cIikuZmlsdGVyKEJvb2xlYW4pO1xuICAgIGNvbnN0IGtub3duUHJlZml4ZXMgPSBuZXcgU2V0PHN0cmluZz4oW1xuICAgICAgXCJsaXN0QnlcIixcbiAgICAgIFwiZmluZEJ5XCIsXG4gICAgICBcImZpbmRCeVBhZ2luYXRlXCIsXG4gICAgICBcImZpbmRPbmVCeVwiLFxuICAgICAgXCJwYWdpbmF0ZUJ5XCIsXG4gICAgICBcImZpbmRcIixcbiAgICAgIFwicGFnZVwiLFxuICAgICAgXCJjb3VudE9mXCIsXG4gICAgICBcIm1heE9mXCIsXG4gICAgICBcIm1pbk9mXCIsXG4gICAgICBcImF2Z09mXCIsXG4gICAgICBcInN1bU9mXCIsXG4gICAgICBcImRpc3RpbmN0T2ZcIixcbiAgICAgIFwiZ3JvdXBPZlwiLFxuICAgICAgXCJzdGF0ZW1lbnRcIixcbiAgICAgIFwiYnVsa1wiLFxuICAgICAgXCJxdWVyeVwiLFxuICAgIF0pO1xuICAgIGlmIChcbiAgICAgIHBhdGhTZWdtZW50cy5sZW5ndGggPiAwICYmXG4gICAgICAhbm9ybWFsaXplZFBhdGguc3RhcnRzV2l0aChcInF1ZXJ5L1wiKSAmJlxuICAgICAgIW5vcm1hbGl6ZWRQYXRoLnN0YXJ0c1dpdGgoXCJzdGF0ZW1lbnQvXCIpICYmXG4gICAgICAha25vd25QcmVmaXhlcy5oYXMocGF0aFNlZ21lbnRzWzBdKVxuICAgICkge1xuICAgICAgY29uc3QgYXBpUGF0aFBhcmFtcyA9IHBhdGhTZWdtZW50c1xuICAgICAgICAuZmlsdGVyKChzKSA9PiBzLnN0YXJ0c1dpdGgoXCI6XCIpKVxuICAgICAgICAubWFwKChzKSA9PiBzLnNsaWNlKDEpKVxuICAgICAgICAubWFwKChuYW1lKSA9PiAoe1xuICAgICAgICAgIG5hbWUsXG4gICAgICAgICAgZGVzY3JpcHRpb246IGAke25hbWV9IHBhcmFtZXRlciBmb3IgdGhlIHF1ZXJ5YCxcbiAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICAgIH0pKTtcblxuICAgICAgcmV0dXJuIEZyb21Nb2RlbENvbnRyb2xsZXIuY3JlYXRlUmVnaXN0cmF0aW9uKFxuICAgICAgICBtZXRob2ROYW1lLFxuICAgICAgICBoYW5kbGVyLFxuICAgICAgICBbXG4gICAgICAgICAgLi4uYXBpUGF0aFBhcmFtcy5tYXAoKHApID0+IEFwaVBhcmFtKHApKSxcbiAgICAgICAgICBBcGlPcGVyYXRpb24oeyBzdW1tYXJ5OiBgUmV0cmlldmUgcmVjb3JkcyB1c2luZyBcIiR7bWV0aG9kTmFtZX1cIi5gIH0pLFxuICAgICAgICAgIEFwaU9rUmVzcG9uc2UoeyBkZXNjcmlwdGlvbjogXCJSZXN1bHQgc3VjY2Vzc2Z1bGx5IHJldHJpZXZlZC5cIiB9KSxcbiAgICAgICAgICBBcGlOb0NvbnRlbnRSZXNwb25zZSh7XG4gICAgICAgICAgICBkZXNjcmlwdGlvbjogXCJObyBjb250ZW50IHJldHVybmVkIGJ5IHRoZSBtZXRob2QuXCIsXG4gICAgICAgICAgfSksXG4gICAgICAgIF0sXG4gICAgICAgIEZyb21Nb2RlbENvbnRyb2xsZXIucm91dGVQYXJhbURlY29yYXRvcnMobm9ybWFsaXplZFBhdGgpXG4gICAgICApO1xuICAgIH1cblxuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cblxuICBwcml2YXRlIHN0YXRpYyBjcmVhdGVSZWdpc3RyYXRpb24oXG4gICAgbWV0aG9kTmFtZTogc3RyaW5nLFxuICAgIGhhbmRsZXI6ICguLi5hcmdzOiBhbnlbXSkgPT4gYW55LFxuICAgIGRlY29yYXRvcnM6IEFycmF5PCh0YXJnZXQ6IGFueSwga2V5OiBzdHJpbmcsIGRlc2M6IGFueSkgPT4gdm9pZD4sXG4gICAgcGFyYW1EZWNvcmF0b3JzOiBBcnJheTx7IGRlY29yYXRvcjogUGFyYW1ldGVyRGVjb3JhdG9yOyBpbmRleDogbnVtYmVyIH0+XG4gICkge1xuICAgIHJldHVybiB7IG1ldGhvZE5hbWUsIGhhbmRsZXIsIGRlY29yYXRvcnMsIHBhcmFtRGVjb3JhdG9ycyB9O1xuICB9XG5cbiAgcHJpdmF0ZSBzdGF0aWMgc3RhdGVtZW50TWV0aG9kTmFtZShwYXRoOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGNvbnN0IGZpcnN0U2VnbWVudCA9IHBhdGguc3BsaXQoXCIvXCIpWzBdO1xuICAgIHJldHVybiBmaXJzdFNlZ21lbnQ7XG4gIH1cblxuICBwcml2YXRlIHN0YXRpYyBzdGF0ZW1lbnRTaG9ydGN1dFBhcmFtcyhcbiAgICBwYXRoOiBzdHJpbmdcbiAgKTogQXJyYXk8eyBkZWNvcmF0b3I6IFBhcmFtZXRlckRlY29yYXRvcjsgaW5kZXg6IG51bWJlciB9PiB7XG4gICAgY29uc3Qgc2VnbWVudHMgPSBwYXRoLnNwbGl0KFwiL1wiKS5maWx0ZXIoKHMpID0+IHMuc3RhcnRzV2l0aChcIjpcIikpO1xuICAgIGNvbnN0IHBhcmFtczogQXJyYXk8eyBkZWNvcmF0b3I6IFBhcmFtZXRlckRlY29yYXRvcjsgaW5kZXg6IG51bWJlciB9PiA9IFtdO1xuICAgIHNlZ21lbnRzLmZvckVhY2goKHNlZywgaSkgPT4ge1xuICAgICAgY29uc3QgbmFtZSA9IHNlZy5yZXBsYWNlKFwiOlwiLCBcIlwiKTtcbiAgICAgIHBhcmFtcy5wdXNoKHsgZGVjb3JhdG9yOiBQYXJhbShuYW1lKSBhcyBhbnksIGluZGV4OiBpIH0pO1xuICAgIH0pO1xuICAgIGlmIChcbiAgICAgIHBhdGguc3RhcnRzV2l0aChcImxpc3RCeS9cIikgfHxcbiAgICAgIHBhdGguc3RhcnRzV2l0aChcInBhZ2luYXRlQnkvXCIpIHx8XG4gICAgICBwYXRoLnN0YXJ0c1dpdGgoXCJmaW5kL1wiKSB8fFxuICAgICAgcGF0aC5zdGFydHNXaXRoKFwicGFnZS9cIilcbiAgICApIHtcbiAgICAgIHBhcmFtcy5wdXNoKHsgZGVjb3JhdG9yOiBEZWNhZlF1ZXJ5KCkgYXMgYW55LCBpbmRleDogc2VnbWVudHMubGVuZ3RoIH0pO1xuICAgIH1cbiAgICByZXR1cm4gcGFyYW1zO1xuICB9XG5cbiAgcHJpdmF0ZSBzdGF0aWMgY29tcGxleFF1ZXJ5UGFyYW1zKFxuICAgIHBhdGg6IHN0cmluZ1xuICApOiBBcnJheTx7IGRlY29yYXRvcjogUGFyYW1ldGVyRGVjb3JhdG9yOyBpbmRleDogbnVtYmVyIH0+IHtcbiAgICBjb25zdCBzZWdtZW50cyA9IHBhdGguc3BsaXQoXCIvXCIpLmZpbHRlcigocykgPT4gcy5zdGFydHNXaXRoKFwiOlwiKSk7XG4gICAgY29uc3QgcGFyYW1zOiBBcnJheTx7IGRlY29yYXRvcjogUGFyYW1ldGVyRGVjb3JhdG9yOyBpbmRleDogbnVtYmVyIH0+ID0gW107XG4gICAgc2VnbWVudHMuZm9yRWFjaCgoc2VnLCBpKSA9PiB7XG4gICAgICBjb25zdCBuYW1lID0gc2VnLnJlcGxhY2UoXCI6XCIsIFwiXCIpO1xuICAgICAgcGFyYW1zLnB1c2goeyBkZWNvcmF0b3I6IFBhcmFtKG5hbWUpIGFzIGFueSwgaW5kZXg6IGkgfSk7XG4gICAgfSk7XG4gICAgaWYgKHBhdGguc3RhcnRzV2l0aChcInF1ZXJ5L1wiKSkge1xuICAgICAgcGFyYW1zLnB1c2goeyBkZWNvcmF0b3I6IERlY2FmUXVlcnkoKSBhcyBhbnksIGluZGV4OiBzZWdtZW50cy5sZW5ndGggfSk7XG4gICAgfVxuICAgIHJldHVybiBwYXJhbXM7XG4gIH1cblxuICBwcml2YXRlIHN0YXRpYyBjcmVhdGVDb21wbGV4UXVlcnlIYW5kbGVyKG1ldGhvZE5hbWU6IHN0cmluZykge1xuICAgIHJldHVybiBhc3luYyBmdW5jdGlvbiBjb21wbGV4UXVlcnkoXG4gICAgICB0aGlzOiBhbnksXG4gICAgICAuLi5hcmdzOiBhbnlbXVxuICAgICk6IFByb21pc2U8YW55PiB7XG4gICAgICBjb25zdCBsb2c6IGFueSA9IHRoaXMubG9nPy5mb3I/Lihjb21wbGV4UXVlcnkpO1xuICAgICAgdHJ5IHtcbiAgICAgICAgaWYgKGxvZykgbG9nLmRlYnVnKGBJbnZva2luZyBjdXN0b20gcXVlcnkgXCIke21ldGhvZE5hbWV9XCJgKTtcbiAgICAgICAgY29uc3QgeyBjdHggfSA9IChhd2FpdCB0aGlzLmxvZ0N0eChbXSwgbWV0aG9kTmFtZSwgdHJ1ZSkpLmZvcihcbiAgICAgICAgICBjb21wbGV4UXVlcnlcbiAgICAgICAgKTtcbiAgICAgICAgY29uc3QgcGVyc2lzdGVuY2UgPSB0aGlzLnBlcnNpc3RlbmNlKGN0eCk7XG4gICAgICAgIGNvbnN0IHNwcmVhZEFyZ3MgPSBGcm9tTW9kZWxDb250cm9sbGVyLm5vcm1hbGl6ZVF1ZXJ5QXJncyhhcmdzKTtcbiAgICAgICAgaWYgKFxuICAgICAgICAgIHBlcnNpc3RlbmNlPy5yZXBvICYmXG4gICAgICAgICAgdHlwZW9mIHBlcnNpc3RlbmNlLnJlcG9bbWV0aG9kTmFtZV0gPT09IFwiZnVuY3Rpb25cIlxuICAgICAgICApIHtcbiAgICAgICAgICByZXR1cm4gcGVyc2lzdGVuY2UucmVwb1ttZXRob2ROYW1lXSguLi5zcHJlYWRBcmdzKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodHlwZW9mIHBlcnNpc3RlbmNlW21ldGhvZE5hbWVdID09PSBcImZ1bmN0aW9uXCIpIHtcbiAgICAgICAgICByZXR1cm4gcGVyc2lzdGVuY2VbbWV0aG9kTmFtZV0oLi4uc3ByZWFkQXJncyk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHBlcnNpc3RlbmNlPy5xdWVyeSAmJiB0eXBlb2YgcGVyc2lzdGVuY2UucXVlcnkgPT09IFwiZnVuY3Rpb25cIikge1xuICAgICAgICAgIHJldHVybiBwZXJzaXN0ZW5jZS5xdWVyeShtZXRob2ROYW1lLCAuLi5zcHJlYWRBcmdzKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodHlwZW9mIHBlcnNpc3RlbmNlLnN0YXRlbWVudCA9PT0gXCJmdW5jdGlvblwiKSB7XG4gICAgICAgICAgcmV0dXJuIHBlcnNpc3RlbmNlLnN0YXRlbWVudChtZXRob2ROYW1lLCAuLi5zcHJlYWRBcmdzLCBjdHgpO1xuICAgICAgICB9XG4gICAgICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKFxuICAgICAgICAgIGBQZXJzaXN0ZW5jZSBtZXRob2QgXCIke21ldGhvZE5hbWV9XCIgbm90IGZvdW5kIG9uICR7cGVyc2lzdGVuY2U/LmNvbnN0cnVjdG9yPy5uYW1lfWBcbiAgICAgICAgKTtcbiAgICAgIH0gY2F0Y2ggKGU6IGFueSkge1xuICAgICAgICBpZiAobG9nKSBsb2cuZXJyb3IoYEN1c3RvbSBxdWVyeSBcIiR7bWV0aG9kTmFtZX1cIiBmYWlsZWRgLCBlKTtcbiAgICAgICAgdGhyb3cgRnJvbU1vZGVsQ29udHJvbGxlci50b0RlY2FmRXJyb3IoXG4gICAgICAgICAgZSxcbiAgICAgICAgICBgQ3VzdG9tIHF1ZXJ5IFwiJHttZXRob2ROYW1lfVwiIGZhaWxlZGBcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9O1xuICB9XG5cbiAgcHJpdmF0ZSBzdGF0aWMgZXh0cmFjdFF1ZXJ5QXJncyhhcmdzOiBhbnlbXSk6IGFueVtdIHtcbiAgICBpZiAoYXJncy5sZW5ndGggPT09IDApIHJldHVybiBhcmdzO1xuICAgIGNvbnN0IGxhc3QgPSBhcmdzW2FyZ3MubGVuZ3RoIC0gMV07XG4gICAgaWYgKGxhc3QgJiYgdHlwZW9mIGxhc3QgPT09IFwib2JqZWN0XCIgJiYgIUFycmF5LmlzQXJyYXkobGFzdCkpIHtcbiAgICAgIGNvbnN0IHF1ZXJ5T2JqID0gYXJncy5wb3AoKTtcbiAgICAgIGNvbnN0IGhhc0RpcmVjdGlvbiA9IHF1ZXJ5T2JqLmRpcmVjdGlvbiAhPT0gdW5kZWZpbmVkO1xuICAgICAgY29uc3QgaGFzTGltaXQgPSBxdWVyeU9iai5saW1pdCAhPT0gdW5kZWZpbmVkO1xuICAgICAgY29uc3QgaGFzT2Zmc2V0ID0gcXVlcnlPYmoub2Zmc2V0ICE9PSB1bmRlZmluZWQ7XG4gICAgICBpZiAoIWhhc0RpcmVjdGlvbiAmJiAhaGFzTGltaXQgJiYgIWhhc09mZnNldCkgcmV0dXJuIGFyZ3M7XG4gICAgICBjb25zdCBleHRyYXM6IGFueVtdID0gW107XG4gICAgICBpZiAoaGFzRGlyZWN0aW9uKSBleHRyYXMucHVzaChxdWVyeU9iai5kaXJlY3Rpb24pO1xuICAgICAgZWxzZSBpZiAoaGFzTGltaXQgfHwgaGFzT2Zmc2V0KSBleHRyYXMucHVzaCh1bmRlZmluZWQpO1xuICAgICAgaWYgKGhhc0xpbWl0KSBleHRyYXMucHVzaChxdWVyeU9iai5saW1pdCk7XG4gICAgICBpZiAoaGFzT2Zmc2V0KSBleHRyYXMucHVzaChxdWVyeU9iai5vZmZzZXQpO1xuICAgICAgcmV0dXJuIFsuLi5hcmdzLCAuLi5leHRyYXNdO1xuICAgIH1cbiAgICByZXR1cm4gYXJncztcbiAgfVxuXG4gIHByaXZhdGUgc3RhdGljIG5vcm1hbGl6ZVF1ZXJ5QXJncyhhcmdzOiBhbnlbXSk6IGFueVtdIHtcbiAgICBjb25zdCBub3JtYWxpemVkID0gRnJvbU1vZGVsQ29udHJvbGxlci5leHRyYWN0UXVlcnlBcmdzKGFyZ3MpO1xuICAgIGlmIChub3JtYWxpemVkLmxlbmd0aCA9PT0gMCkgcmV0dXJuIG5vcm1hbGl6ZWQ7XG5cbiAgICBjb25zdCBsYXN0ID0gbm9ybWFsaXplZFtub3JtYWxpemVkLmxlbmd0aCAtIDFdO1xuICAgIGlmICghbGFzdCB8fCB0eXBlb2YgbGFzdCAhPT0gXCJvYmplY3RcIiB8fCBBcnJheS5pc0FycmF5KGxhc3QpKSB7XG4gICAgICByZXR1cm4gbm9ybWFsaXplZDtcbiAgICB9XG5cbiAgICBjb25zdCBxdWVyeU9iaiA9IGxhc3QgYXMgUmVjb3JkPHN0cmluZywgYW55PjtcbiAgICBjb25zdCBoYXNRdWVyeUZpZWxkcyA9XG4gICAgICBxdWVyeU9iai5kaXJlY3Rpb24gIT09IHVuZGVmaW5lZCB8fFxuICAgICAgcXVlcnlPYmoubGltaXQgIT09IHVuZGVmaW5lZCB8fFxuICAgICAgcXVlcnlPYmoub2Zmc2V0ICE9PSB1bmRlZmluZWQgfHxcbiAgICAgIHF1ZXJ5T2JqLmJvb2ttYXJrICE9PSB1bmRlZmluZWQ7XG5cbiAgICBpZiAoIWhhc1F1ZXJ5RmllbGRzKSB7XG4gICAgICBub3JtYWxpemVkLnBvcCgpO1xuICAgICAgcmV0dXJuIG5vcm1hbGl6ZWQ7XG4gICAgfVxuXG4gICAgbm9ybWFsaXplZC5wb3AoKTtcbiAgICBpZiAocXVlcnlPYmouZGlyZWN0aW9uICE9PSB1bmRlZmluZWQpIG5vcm1hbGl6ZWQucHVzaChxdWVyeU9iai5kaXJlY3Rpb24pO1xuICAgIGlmIChxdWVyeU9iai5saW1pdCAhPT0gdW5kZWZpbmVkKSBub3JtYWxpemVkLnB1c2gocXVlcnlPYmoubGltaXQpO1xuICAgIGlmIChxdWVyeU9iai5vZmZzZXQgIT09IHVuZGVmaW5lZCkgbm9ybWFsaXplZC5wdXNoKHF1ZXJ5T2JqLm9mZnNldCk7XG4gICAgaWYgKHF1ZXJ5T2JqLmJvb2ttYXJrICE9PSB1bmRlZmluZWQpIG5vcm1hbGl6ZWQucHVzaChxdWVyeU9iai5ib29rbWFyayk7XG4gICAgcmV0dXJuIG5vcm1hbGl6ZWQ7XG4gIH1cblxuICBwcml2YXRlIHN0YXRpYyBjcmVhdGVDcmVhdGVEZWNvcmF0b3JzKFxuICAgIE1vZGVsQ29uc3RyOiBNb2RlbENvbnN0cnVjdG9yPGFueT4sXG4gICAgbW9kZWxDbGF6ek5hbWU6IHN0cmluZ1xuICApOiBBcnJheTwodGFyZ2V0OiBhbnksIGtleTogc3RyaW5nLCBkZXNjOiBhbnkpID0+IHZvaWQ+IHtcbiAgICByZXR1cm4gW1xuICAgICAgQXBpT3BlcmF0aW9uRnJvbU1vZGVsKE1vZGVsQ29uc3RyLCBcIlBPU1RcIiksXG4gICAgICBBcGlPcGVyYXRpb24oeyBzdW1tYXJ5OiBgQ3JlYXRlIGEgbmV3ICR7bW9kZWxDbGF6ek5hbWV9LmAgfSksXG4gICAgICBBcGlCb2R5KHtcbiAgICAgICAgZGVzY3JpcHRpb246IGBQYXlsb2FkIGZvciAke21vZGVsQ2xhenpOYW1lfWAsXG4gICAgICAgIHR5cGU6IER0b0ZvcihPcGVyYXRpb25LZXlzLkNSRUFURSwgTW9kZWxDb25zdHIpLFxuICAgICAgfSksXG4gICAgICBBcGlDcmVhdGVkUmVzcG9uc2Uoe1xuICAgICAgICBkZXNjcmlwdGlvbjogYCR7bW9kZWxDbGF6ek5hbWV9IGNyZWF0ZWQgc3VjY2Vzc2Z1bGx5LmAsXG4gICAgICAgIHNjaGVtYTogeyAkcmVmOiBnZXRTY2hlbWFQYXRoKE1vZGVsQ29uc3RyKSB9LFxuICAgICAgfSksXG4gICAgICBBcGlCYWRSZXF1ZXN0UmVzcG9uc2UoeyBkZXNjcmlwdGlvbjogXCJQYXlsb2FkIHZhbGlkYXRpb24gZmFpbGVkLlwiIH0pLFxuICAgICAgQXBpVW5wcm9jZXNzYWJsZUVudGl0eVJlc3BvbnNlKHtcbiAgICAgICAgZGVzY3JpcHRpb246IFwiUmVwb3NpdG9yeSByZWplY3RlZCB0aGUgcHJvdmlkZWQgcGF5bG9hZC5cIixcbiAgICAgIH0pLFxuICAgIF07XG4gIH1cblxuICBwcml2YXRlIHN0YXRpYyBidWxrQ3JlYXRlRGVjb3JhdG9ycyhcbiAgICBNb2RlbENvbnN0cjogTW9kZWxDb25zdHJ1Y3Rvcjxhbnk+LFxuICAgIG1vZGVsQ2xhenpOYW1lOiBzdHJpbmdcbiAgKTogQXJyYXk8KHRhcmdldDogYW55LCBrZXk6IHN0cmluZywgZGVzYzogYW55KSA9PiB2b2lkPiB7XG4gICAgcmV0dXJuIFtcbiAgICAgIEFwaU9wZXJhdGlvbkZyb21Nb2RlbChNb2RlbENvbnN0ciwgXCJQT1NUXCIsIFwiYnVsa1wiKSxcbiAgICAgIEFwaU9wZXJhdGlvbih7IHN1bW1hcnk6IGBDcmVhdGUgYSBuZXcgJHttb2RlbENsYXp6TmFtZX0uYCB9KSxcbiAgICAgIEFwaUJvZHkoe1xuICAgICAgICBkZXNjcmlwdGlvbjogYFBheWxvYWQgZm9yICR7bW9kZWxDbGF6ek5hbWV9YCxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgdHlwZTogXCJhcnJheVwiLFxuICAgICAgICAgIGl0ZW1zOiB7ICRyZWY6IGdldFNjaGVtYVBhdGgoTW9kZWxDb25zdHIpIH0sXG4gICAgICAgIH0sXG4gICAgICB9KSxcbiAgICAgIEFwaUNyZWF0ZWRSZXNwb25zZSh7XG4gICAgICAgIGRlc2NyaXB0aW9uOiBgJHttb2RlbENsYXp6TmFtZX0gY3JlYXRlZCBzdWNjZXNzZnVsbHkuYCxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgdHlwZTogXCJhcnJheVwiLFxuICAgICAgICAgIGl0ZW1zOiB7ICRyZWY6IGdldFNjaGVtYVBhdGgoTW9kZWxDb25zdHIpIH0sXG4gICAgICAgIH0sXG4gICAgICB9KSxcbiAgICAgIEFwaUJhZFJlcXVlc3RSZXNwb25zZSh7IGRlc2NyaXB0aW9uOiBcIlBheWxvYWQgdmFsaWRhdGlvbiBmYWlsZWQuXCIgfSksXG4gICAgICBBcGlVbnByb2Nlc3NhYmxlRW50aXR5UmVzcG9uc2Uoe1xuICAgICAgICBkZXNjcmlwdGlvbjogXCJSZXBvc2l0b3J5IHJlamVjdGVkIHRoZSBwcm92aWRlZCBwYXlsb2FkLlwiLFxuICAgICAgfSksXG4gICAgXTtcbiAgfVxuXG4gIHByaXZhdGUgc3RhdGljIGJ1bGtSZWFkRGVjb3JhdG9ycyhcbiAgICBNb2RlbENvbnN0cjogTW9kZWxDb25zdHJ1Y3Rvcjxhbnk+LFxuICAgIG1vZGVsQ2xhenpOYW1lOiBzdHJpbmdcbiAgKTogQXJyYXk8KHRhcmdldDogYW55LCBrZXk6IHN0cmluZywgZGVzYzogYW55KSA9PiB2b2lkPiB7XG4gICAgcmV0dXJuIFtcbiAgICAgIEFwaU9wZXJhdGlvbkZyb21Nb2RlbChNb2RlbENvbnN0ciwgXCJHRVRcIiwgXCJidWxrXCIpLFxuICAgICAgQXBpT3BlcmF0aW9uKHsgc3VtbWFyeTogYFJldHJpZXZlICR7bW9kZWxDbGF6ek5hbWV9IHJlY29yZHMgYnkgaWRzLmAgfSksXG4gICAgICBBcGlRdWVyeSh7IG5hbWU6IFwiaWRzXCIsIHJlcXVpcmVkOiB0cnVlLCB0eXBlOiBcImFycmF5XCIgfSksXG4gICAgICBBcGlPa1Jlc3BvbnNlKHtcbiAgICAgICAgZGVzY3JpcHRpb246IGAke21vZGVsQ2xhenpOYW1lfSByZXRyaWV2ZWQgc3VjY2Vzc2Z1bGx5LmAsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIHR5cGU6IFwiYXJyYXlcIixcbiAgICAgICAgICBpdGVtczogeyAkcmVmOiBnZXRTY2hlbWFQYXRoKE1vZGVsQ29uc3RyKSB9LFxuICAgICAgICB9LFxuICAgICAgfSksXG4gICAgICBBcGlOb3RGb3VuZFJlc3BvbnNlKHtcbiAgICAgICAgZGVzY3JpcHRpb246IGBObyAke21vZGVsQ2xhenpOYW1lfSByZWNvcmQgbWF0Y2hlcyB0aGUgcHJvdmlkZWQgaWRlbnRpZmllci5gLFxuICAgICAgfSksXG4gICAgXTtcbiAgfVxuXG4gIHByaXZhdGUgc3RhdGljIGJ1bGtVcGRhdGVEZWNvcmF0b3JzKFxuICAgIE1vZGVsQ29uc3RyOiBNb2RlbENvbnN0cnVjdG9yPGFueT4sXG4gICAgbW9kZWxDbGF6ek5hbWU6IHN0cmluZyxcbiAgICBhcGlQcm9wZXJ0aWVzOiBEZWNhZkFwaVByb3BlcnR5W11cbiAgKTogQXJyYXk8KHRhcmdldDogYW55LCBrZXk6IHN0cmluZywgZGVzYzogYW55KSA9PiB2b2lkPiB7XG4gICAgcmV0dXJuIFtcbiAgICAgIEFwaU9wZXJhdGlvbkZyb21Nb2RlbChNb2RlbENvbnN0ciwgXCJQVVRcIiwgXCJidWxrXCIpLFxuICAgICAgQXBpUGFyYW1zRnJvbU1vZGVsKGFwaVByb3BlcnRpZXMpLFxuICAgICAgQXBpT3BlcmF0aW9uKHtcbiAgICAgICAgc3VtbWFyeTogYFJlcGxhY2UgZXhpc3RpbmcgJHttb2RlbENsYXp6TmFtZX0gcmVjb3JkcyB3aXRoIG5ldyBwYXlsb2Fkcy5gLFxuICAgICAgfSksXG4gICAgICBBcGlCb2R5KHtcbiAgICAgICAgZGVzY3JpcHRpb246IGBQYXlsb2FkIGZvciByZXBsYWNpbmcgZXhpc3RpbmcgcmVjb3JkcyBvZiAke21vZGVsQ2xhenpOYW1lfWAsXG4gICAgICAgIHNjaGVtYToge1xuICAgICAgICAgIHR5cGU6IFwiYXJyYXlcIixcbiAgICAgICAgICAkcmVmOiBnZXRTY2hlbWFQYXRoKER0b0ZvcihPcGVyYXRpb25LZXlzLlVQREFURSwgTW9kZWxDb25zdHIpKSxcbiAgICAgICAgfSxcbiAgICAgIH0pLFxuICAgICAgQXBpT2tSZXNwb25zZSh7XG4gICAgICAgIGRlc2NyaXB0aW9uOiBgJHttb2RlbENsYXp6TmFtZX0gdXBkYXRlZCBzdWNjZXNzZnVsbHkuYCxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgdHlwZTogXCJhcnJheVwiLFxuICAgICAgICAgIGl0ZW1zOiB7ICRyZWY6IGdldFNjaGVtYVBhdGgoTW9kZWxDb25zdHIpIH0sXG4gICAgICAgIH0sXG4gICAgICB9KSxcbiAgICAgIEFwaU5vdEZvdW5kUmVzcG9uc2Uoe1xuICAgICAgICBkZXNjcmlwdGlvbjogYE5vICR7bW9kZWxDbGF6ek5hbWV9IHJlY29yZCBtYXRjaGVzIHRoZSBwcm92aWRlZCBpZGVudGlmaWVyLmAsXG4gICAgICB9KSxcbiAgICAgIEFwaUJhZFJlcXVlc3RSZXNwb25zZSh7IGRlc2NyaXB0aW9uOiBcIlBheWxvYWQgdmFsaWRhdGlvbiBmYWlsZWQuXCIgfSksXG4gICAgXTtcbiAgfVxuXG4gIHByaXZhdGUgc3RhdGljIGJ1bGtEZWxldGVEZWNvcmF0b3JzKFxuICAgIE1vZGVsQ29uc3RyOiBNb2RlbENvbnN0cnVjdG9yPGFueT4sXG4gICAgbW9kZWxDbGF6ek5hbWU6IHN0cmluZyxcbiAgICBhcGlQcm9wZXJ0aWVzOiBEZWNhZkFwaVByb3BlcnR5W11cbiAgKTogQXJyYXk8KHRhcmdldDogYW55LCBrZXk6IHN0cmluZywgZGVzYzogYW55KSA9PiB2b2lkPiB7XG4gICAgcmV0dXJuIFtcbiAgICAgIEFwaU9wZXJhdGlvbkZyb21Nb2RlbChNb2RlbENvbnN0ciwgXCJERUxFVEVcIiwgXCJidWxrXCIpLFxuICAgICAgQXBpUGFyYW1zRnJvbU1vZGVsKGFwaVByb3BlcnRpZXMpLFxuICAgICAgQXBpT3BlcmF0aW9uKHsgc3VtbWFyeTogYERlbGV0ZSAke21vZGVsQ2xhenpOYW1lfSByZWNvcmRzIGJ5IGlkcy5gIH0pLFxuICAgICAgQXBpUXVlcnkoeyBuYW1lOiBcImlkc1wiLCByZXF1aXJlZDogdHJ1ZSwgdHlwZTogXCJhcnJheVwiIH0pLFxuICAgICAgQXBpT2tSZXNwb25zZSh7XG4gICAgICAgIGRlc2NyaXB0aW9uOiBgJHttb2RlbENsYXp6TmFtZX0gZGVsZXRlZCBzdWNjZXNzZnVsbHkuYCxcbiAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgdHlwZTogXCJhcnJheVwiLFxuICAgICAgICAgIGl0ZW1zOiB7ICRyZWY6IGdldFNjaGVtYVBhdGgoTW9kZWxDb25zdHIpIH0sXG4gICAgICAgIH0sXG4gICAgICB9KSxcbiAgICAgIEFwaU5vdEZvdW5kUmVzcG9uc2Uoe1xuICAgICAgICBkZXNjcmlwdGlvbjogYE5vICR7bW9kZWxDbGF6ek5hbWV9IHJlY29yZCBtYXRjaGVzIHRoZSBwcm92aWRlZCBpZGVudGlmaWVyLmAsXG4gICAgICB9KSxcbiAgICBdO1xuICB9XG5cbiAgcHJpdmF0ZSBzdGF0aWMgcmVhZERlY29yYXRvcnMoXG4gICAgTW9kZWxDb25zdHI6IE1vZGVsQ29uc3RydWN0b3I8YW55PixcbiAgICBtb2RlbENsYXp6TmFtZTogc3RyaW5nLFxuICAgIGFwaVByb3BlcnRpZXM6IERlY2FmQXBpUHJvcGVydHlbXSxcbiAgICBwa1BhdGg6IHN0cmluZ1xuICApOiBBcnJheTwodGFyZ2V0OiBhbnksIGtleTogc3RyaW5nLCBkZXNjOiBhbnkpID0+IHZvaWQ+IHtcbiAgICByZXR1cm4gW1xuICAgICAgQXBpT3BlcmF0aW9uRnJvbU1vZGVsKE1vZGVsQ29uc3RyLCBcIkdFVFwiLCBwa1BhdGgpLFxuICAgICAgQXBpUGFyYW1zRnJvbU1vZGVsKGFwaVByb3BlcnRpZXMpLFxuICAgICAgQXBpT3BlcmF0aW9uKHsgc3VtbWFyeTogYFJldHJpZXZlIGEgJHttb2RlbENsYXp6TmFtZX0gcmVjb3JkIGJ5IGlkLmAgfSksXG4gICAgICBBcGlPa1Jlc3BvbnNlKHtcbiAgICAgICAgZGVzY3JpcHRpb246IGAke21vZGVsQ2xhenpOYW1lfSByZXRyaWV2ZWQgc3VjY2Vzc2Z1bGx5LmAsXG4gICAgICAgIHNjaGVtYTogeyAkcmVmOiBnZXRTY2hlbWFQYXRoKE1vZGVsQ29uc3RyKSB9LFxuICAgICAgfSksXG4gICAgICBBcGlOb3RGb3VuZFJlc3BvbnNlKHtcbiAgICAgICAgZGVzY3JpcHRpb246IGBObyAke21vZGVsQ2xhenpOYW1lfSByZWNvcmQgbWF0Y2hlcyB0aGUgcHJvdmlkZWQgaWRlbnRpZmllci5gLFxuICAgICAgfSksXG4gICAgXTtcbiAgfVxuXG4gIHByaXZhdGUgc3RhdGljIHVwZGF0ZURlY29yYXRvcnMoXG4gICAgTW9kZWxDb25zdHI6IE1vZGVsQ29uc3RydWN0b3I8YW55PixcbiAgICBtb2RlbENsYXp6TmFtZTogc3RyaW5nLFxuICAgIGFwaVByb3BlcnRpZXM6IERlY2FmQXBpUHJvcGVydHlbXSxcbiAgICBwa1BhdGg6IHN0cmluZ1xuICApOiBBcnJheTwodGFyZ2V0OiBhbnksIGtleTogc3RyaW5nLCBkZXNjOiBhbnkpID0+IHZvaWQ+IHtcbiAgICByZXR1cm4gW1xuICAgICAgQXBpT3BlcmF0aW9uRnJvbU1vZGVsKE1vZGVsQ29uc3RyLCBcIlBVVFwiLCBwa1BhdGgpLFxuICAgICAgQXBpUGFyYW1zRnJvbU1vZGVsKGFwaVByb3BlcnRpZXMpLFxuICAgICAgQXBpT3BlcmF0aW9uKHtcbiAgICAgICAgc3VtbWFyeTogYFJlcGxhY2UgYW4gZXhpc3RpbmcgJHttb2RlbENsYXp6TmFtZX0gcmVjb3JkIHdpdGggYSBuZXcgcGF5bG9hZC5gLFxuICAgICAgfSksXG4gICAgICBBcGlCb2R5KHtcbiAgICAgICAgZGVzY3JpcHRpb246IGBQYXlsb2FkIGZvciByZXBsYWNpbmcgYW4gZXhpc3RpbmcgcmVjb3JkIG9mICR7bW9kZWxDbGF6ek5hbWV9YCxcbiAgICAgICAgdHlwZTogRHRvRm9yKE9wZXJhdGlvbktleXMuVVBEQVRFLCBNb2RlbENvbnN0ciksXG4gICAgICB9KSxcbiAgICAgIEFwaU9rUmVzcG9uc2Uoe1xuICAgICAgICBkZXNjcmlwdGlvbjogYCR7bW9kZWxDbGF6ek5hbWV9IHVwZGF0ZWQgc3VjY2Vzc2Z1bGx5LmAsXG4gICAgICAgIHNjaGVtYTogeyAkcmVmOiBnZXRTY2hlbWFQYXRoKE1vZGVsQ29uc3RyKSB9LFxuICAgICAgfSksXG4gICAgICBBcGlOb3RGb3VuZFJlc3BvbnNlKHtcbiAgICAgICAgZGVzY3JpcHRpb246IGBObyAke21vZGVsQ2xhenpOYW1lfSByZWNvcmQgbWF0Y2hlcyB0aGUgcHJvdmlkZWQgaWRlbnRpZmllci5gLFxuICAgICAgfSksXG4gICAgICBBcGlCYWRSZXF1ZXN0UmVzcG9uc2UoeyBkZXNjcmlwdGlvbjogXCJQYXlsb2FkIHZhbGlkYXRpb24gZmFpbGVkLlwiIH0pLFxuICAgIF07XG4gIH1cblxuICBwcml2YXRlIHN0YXRpYyBkZWxldGVEZWNvcmF0b3JzKFxuICAgIE1vZGVsQ29uc3RyOiBNb2RlbENvbnN0cnVjdG9yPGFueT4sXG4gICAgbW9kZWxDbGF6ek5hbWU6IHN0cmluZyxcbiAgICBhcGlQcm9wZXJ0aWVzOiBEZWNhZkFwaVByb3BlcnR5W10sXG4gICAgcGtQYXRoOiBzdHJpbmdcbiAgKTogQXJyYXk8KHRhcmdldDogYW55LCBrZXk6IHN0cmluZywgZGVzYzogYW55KSA9PiB2b2lkPiB7XG4gICAgcmV0dXJuIFtcbiAgICAgIEFwaU9wZXJhdGlvbkZyb21Nb2RlbChNb2RlbENvbnN0ciwgXCJERUxFVEVcIiwgcGtQYXRoKSxcbiAgICAgIEFwaVBhcmFtc0Zyb21Nb2RlbChhcGlQcm9wZXJ0aWVzKSxcbiAgICAgIEFwaU9wZXJhdGlvbih7IHN1bW1hcnk6IGBEZWxldGUgYSAke21vZGVsQ2xhenpOYW1lfSByZWNvcmQgYnkgaWQuYCB9KSxcbiAgICAgIEFwaU9rUmVzcG9uc2Uoe1xuICAgICAgICBkZXNjcmlwdGlvbjogYCR7bW9kZWxDbGF6ek5hbWV9IGRlbGV0ZWQgc3VjY2Vzc2Z1bGx5LmAsXG4gICAgICAgIHNjaGVtYTogeyAkcmVmOiBnZXRTY2hlbWFQYXRoKE1vZGVsQ29uc3RyKSB9LFxuICAgICAgfSksXG4gICAgICBBcGlOb3RGb3VuZFJlc3BvbnNlKHtcbiAgICAgICAgZGVzY3JpcHRpb246IGBObyAke21vZGVsQ2xhenpOYW1lfSByZWNvcmQgbWF0Y2hlcyB0aGUgcHJvdmlkZWQgaWRlbnRpZmllci5gLFxuICAgICAgfSksXG4gICAgXTtcbiAgfVxuXG4gIHByaXZhdGUgc3RhdGljIHN0YXRlbWVudERlY29yYXRvcnMoXG4gICAgTW9kZWxDb25zdHI6IE1vZGVsQ29uc3RydWN0b3I8YW55PixcbiAgICBtb2RlbENsYXp6TmFtZTogc3RyaW5nXG4gICk6IEFycmF5PCh0YXJnZXQ6IGFueSwga2V5OiBzdHJpbmcsIGRlc2M6IGFueSkgPT4gdm9pZD4ge1xuICAgIHJldHVybiBbXG4gICAgICBBcGlPcGVyYXRpb25Gcm9tTW9kZWwoTW9kZWxDb25zdHIsIFwiR0VUXCIsIFwic3RhdGVtZW50LzptZXRob2QvKmFyZ3NcIiksXG4gICAgICBBcGlPcGVyYXRpb24oe1xuICAgICAgICBzdW1tYXJ5OiBgRXhlY3V0ZXMgYSBwcmVwYXJlZCBzdGF0ZW1lbnQgb24gJHttb2RlbENsYXp6TmFtZX0uYCxcbiAgICAgIH0pLFxuICAgICAgQXBpUGFyYW0oe1xuICAgICAgICBuYW1lOiBcIm1ldGhvZFwiLFxuICAgICAgICBkZXNjcmlwdGlvbjogXCJ0aGUgcHJlcGFyZWQgc3RhdGVtZW50IHRvIGV4ZWN1dGVcIixcbiAgICAgIH0pLFxuICAgICAgQXBpUGFyYW0oe1xuICAgICAgICBuYW1lOiBcImFyZ3NcIixcbiAgICAgICAgZGVzY3JpcHRpb246XG4gICAgICAgICAgXCJjb25jYXRlbmF0ZWQgbGlzdCBvZiBhcmd1bWVudHMgdGhlIHByZXBhcmVkIHN0YXRlbWVudCBjYW4gYWNjZXB0XCIsXG4gICAgICB9KSxcbiAgICAgIEFwaVF1ZXJ5KHtcbiAgICAgICAgbmFtZTogXCJkaXJlY3Rpb25cIixcbiAgICAgICAgcmVxdWlyZWQ6IHRydWUsXG4gICAgICAgIGVudW06IE9yZGVyRGlyZWN0aW9uLFxuICAgICAgICBkZXNjcmlwdGlvbjogXCJ0aGUgc29ydCBvcmRlciB3aGVuIGFwcGxpY2FibGVcIixcbiAgICAgIH0pLFxuICAgICAgQXBpUXVlcnkoe1xuICAgICAgICBuYW1lOiBcImxpbWl0XCIsXG4gICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgICBkZXNjcmlwdGlvbjogXCJsaW1pdCBvciBwYWdlIHNpemUgd2hlbiBhcHBsaWNhYmxlXCIsXG4gICAgICB9KSxcbiAgICAgIEFwaVF1ZXJ5KHtcbiAgICAgICAgbmFtZTogXCJvZmZzZXRcIixcbiAgICAgICAgcmVxdWlyZWQ6IHRydWUsXG4gICAgICAgIGRlc2NyaXB0aW9uOiBcIm9mZnNldCBvciBib29rbWFyayB3aGVuIGFwcGxpY2FibGVcIixcbiAgICAgIH0pLFxuICAgICAgQXBpT2tSZXNwb25zZSh7IGRlc2NyaXB0aW9uOiBgJHttb2RlbENsYXp6TmFtZX0gbGlzdGVkIGZvdW5kLmAgfSksXG4gICAgICBBcGlOb3RGb3VuZFJlc3BvbnNlKHtcbiAgICAgICAgZGVzY3JpcHRpb246IGBObyAke21vZGVsQ2xhenpOYW1lfSByZWNvcmQgbWF0Y2hlcyB0aGUgcHJvdmlkZWQgaWRlbnRpZmllci5gLFxuICAgICAgfSksXG4gICAgXTtcbiAgfVxuXG4gIHByaXZhdGUgc3RhdGljIHN0YXRlbWVudFNob3J0Y3V0RGVjb3JhdG9ycyhcbiAgICBNb2RlbENvbnN0cjogTW9kZWxDb25zdHJ1Y3Rvcjxhbnk+LFxuICAgIG1vZGVsQ2xhenpOYW1lOiBzdHJpbmcsXG4gICAgcGF0aDogc3RyaW5nLFxuICAgIHN0YXRlbWVudEtleTogc3RyaW5nXG4gICk6IEFycmF5PCh0YXJnZXQ6IGFueSwga2V5OiBzdHJpbmcsIGRlc2M6IGFueSkgPT4gdm9pZD4ge1xuICAgIGNvbnN0IGJhc2U6IEFycmF5PCh0YXJnZXQ6IGFueSwga2V5OiBzdHJpbmcsIGRlc2M6IGFueSkgPT4gdm9pZD4gPSBbXG4gICAgICBBcGlPcGVyYXRpb25Gcm9tTW9kZWwoTW9kZWxDb25zdHIsIFwiR0VUXCIsIHBhdGgpLFxuICAgICAgQXBpT3BlcmF0aW9uKHsgc3VtbWFyeTogYFJldHJpZXZlICR7bW9kZWxDbGF6ek5hbWV9IHJlY29yZHMuYCB9KSxcbiAgICAgIEFwaU9rUmVzcG9uc2Uoe1xuICAgICAgICBkZXNjcmlwdGlvbjogYCR7bW9kZWxDbGF6ek5hbWV9IHJldHJpZXZlZCBzdWNjZXNzZnVsbHkuYCxcbiAgICAgIH0pLFxuICAgIF07XG5cbiAgICBjb25zdCBzZWdtZW50cyA9IHBhdGguc3BsaXQoXCIvXCIpLmZpbHRlcigocykgPT4gcy5zdGFydHNXaXRoKFwiOlwiKSk7XG4gICAgc2VnbWVudHMuZm9yRWFjaCgoc2VnKSA9PiB7XG4gICAgICBjb25zdCBuYW1lID0gc2VnLnJlcGxhY2UoXCI6XCIsIFwiXCIpO1xuICAgICAgYmFzZS5wdXNoKEFwaVBhcmFtKHsgbmFtZSwgZGVzY3JpcHRpb246IGBUaGUgJHtuYW1lfSBwYXJhbWV0ZXJgIH0pKTtcbiAgICB9KTtcblxuICAgIGlmIChcbiAgICAgIHBhdGguc3RhcnRzV2l0aChcImxpc3RCeS9cIikgfHxcbiAgICAgIHBhdGguc3RhcnRzV2l0aChcInBhZ2luYXRlQnkvXCIpIHx8XG4gICAgICBwYXRoLnN0YXJ0c1dpdGgoXCJmaW5kL1wiKSB8fFxuICAgICAgcGF0aC5zdGFydHNXaXRoKFwicGFnZS9cIilcbiAgICApIHtcbiAgICAgIGJhc2UucHVzaChcbiAgICAgICAgQXBpUXVlcnkoe1xuICAgICAgICAgIG5hbWU6IFwiZGlyZWN0aW9uXCIsXG4gICAgICAgICAgcmVxdWlyZWQ6IHRydWUsXG4gICAgICAgICAgZW51bTogT3JkZXJEaXJlY3Rpb24sXG4gICAgICAgICAgZGVzY3JpcHRpb246IFwidGhlIHNvcnQgb3JkZXJcIixcbiAgICAgICAgfSlcbiAgICAgICk7XG4gICAgfVxuICAgIGlmIChwYXRoLnN0YXJ0c1dpdGgoXCJwYWdpbmF0ZUJ5L1wiKSB8fCBwYXRoLnN0YXJ0c1dpdGgoXCJwYWdlL1wiKSkge1xuICAgICAgYmFzZS5wdXNoKFxuICAgICAgICBBcGlRdWVyeSh7IG5hbWU6IFwibGltaXRcIiwgcmVxdWlyZWQ6IGZhbHNlLCBkZXNjcmlwdGlvbjogXCJwYWdlIHNpemVcIiB9KSxcbiAgICAgICAgQXBpUXVlcnkoe1xuICAgICAgICAgIG5hbWU6IFwib2Zmc2V0XCIsXG4gICAgICAgICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgICAgICAgIGRlc2NyaXB0aW9uOiBcInBhZ2UgbnVtYmVyXCIsXG4gICAgICAgIH0pLFxuICAgICAgICBBcGlRdWVyeSh7XG4gICAgICAgICAgbmFtZTogXCJib29rbWFya1wiLFxuICAgICAgICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICAgICAgICBkZXNjcmlwdGlvbjogXCJib29rbWFyayBmb3IgY3Vyc29yIHBhZ2luYXRpb25cIixcbiAgICAgICAgfSlcbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKHBhdGguc3RhcnRzV2l0aChcImZpbmRPbmVCeS9cIikgfHwgcGF0aC5zdGFydHNXaXRoKFwiZmluZEJ5L1wiKSkge1xuICAgICAgYmFzZS5wdXNoKFxuICAgICAgICBBcGlOb3RGb3VuZFJlc3BvbnNlKHtcbiAgICAgICAgICBkZXNjcmlwdGlvbjogYE5vICR7bW9kZWxDbGF6ek5hbWV9IHJlY29yZCBtYXRjaGVzIHRoZSBwcm92aWRlZCBpZGVudGlmaWVyLmAsXG4gICAgICAgIH0pXG4gICAgICApO1xuICAgIH1cblxuICAgIGlmIChcbiAgICAgIHN0YXRlbWVudEtleSA9PT0gUHJlcGFyZWRTdGF0ZW1lbnRLZXlzLkNPVU5UX09GIHx8XG4gICAgICBzdGF0ZW1lbnRLZXkgPT09IFByZXBhcmVkU3RhdGVtZW50S2V5cy5BVkdfT0YgfHxcbiAgICAgIHN0YXRlbWVudEtleSA9PT0gUHJlcGFyZWRTdGF0ZW1lbnRLZXlzLlNVTV9PRlxuICAgICkge1xuICAgICAgYmFzZS5wdXNoKFxuICAgICAgICBBcGlPa1Jlc3BvbnNlKHtcbiAgICAgICAgICBkZXNjcmlwdGlvbjogYFJlc3VsdCBmb3IgJHttb2RlbENsYXp6TmFtZX0uYCxcbiAgICAgICAgICB0eXBlOiBOdW1iZXIsXG4gICAgICAgIH0pXG4gICAgICApO1xuICAgIH1cbiAgICBpZiAoc3RhdGVtZW50S2V5ID09PSBQcmVwYXJlZFN0YXRlbWVudEtleXMuRElTVElOQ1RfT0YpIHtcbiAgICAgIGJhc2UucHVzaChcbiAgICAgICAgQXBpT2tSZXNwb25zZSh7XG4gICAgICAgICAgZGVzY3JpcHRpb246IGBEaXN0aW5jdCB2YWx1ZXMgZm9yICR7bW9kZWxDbGF6ek5hbWV9LmAsXG4gICAgICAgICAgdHlwZTogW1N0cmluZ10sXG4gICAgICAgIH0pXG4gICAgICApO1xuICAgIH1cblxuICAgIHJldHVybiBiYXNlO1xuICB9XG5cbiAgcHJpdmF0ZSBzdGF0aWMgZ2V0UXVlcnlEZWNvcmF0b3JzKFxuICAgIG1ldGhvZE5hbWU6IHN0cmluZyxcbiAgICByb3V0ZVBhdGg6IHN0cmluZyxcbiAgICBodHRwVmVyYjogc3RyaW5nLFxuICAgIGluY2x1ZGVRdWVyeVBhcmFtczogYm9vbGVhbiA9IGZhbHNlXG4gICk6IEFycmF5PCh0YXJnZXQ6IGFueSwga2V5OiBzdHJpbmcsIGRlc2M6IGFueSkgPT4gdm9pZD4ge1xuICAgIGNvbnN0IGV4dHJhY3RQYXRoUGFyYW1zID0gKHA6IHN0cmluZyk6IHN0cmluZ1tdID0+XG4gICAgICBwXG4gICAgICAgIC5zcGxpdChcIi9cIilcbiAgICAgICAgLmZpbHRlcigocykgPT4gcy5zdGFydHNXaXRoKFwiOlwiKSlcbiAgICAgICAgLm1hcCgocykgPT4gcy5zbGljZSgxKSk7XG5cbiAgICBjb25zdCBhcGlQYXRoUGFyYW1zID0gZXh0cmFjdFBhdGhQYXJhbXMocm91dGVQYXRoKS5tYXAoKG5hbWUpID0+ICh7XG4gICAgICBuYW1lLFxuICAgICAgZGVzY3JpcHRpb246IGAke25hbWV9IHBhcmFtZXRlciBmb3IgdGhlIHF1ZXJ5YCxcbiAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgdHlwZTogU3RyaW5nLFxuICAgIH0pKTtcblxuICAgIGNvbnN0IGRlY29yYXRvcnM6IEFycmF5PCh0YXJnZXQ6IGFueSwga2V5OiBzdHJpbmcsIGRlc2M6IGFueSkgPT4gdm9pZD4gPSBbXG4gICAgICAuLi5hcGlQYXRoUGFyYW1zLm1hcCgocCkgPT4gQXBpUGFyYW0ocCkpLFxuICAgICAgQXBpT3BlcmF0aW9uKHsgc3VtbWFyeTogYFJldHJpZXZlIHJlY29yZHMgdXNpbmcgXCIke21ldGhvZE5hbWV9XCIuYCB9KSxcbiAgICAgIEFwaU9rUmVzcG9uc2UoeyBkZXNjcmlwdGlvbjogXCJSZXN1bHQgc3VjY2Vzc2Z1bGx5IHJldHJpZXZlZC5cIiB9KSxcbiAgICAgIEFwaU5vQ29udGVudFJlc3BvbnNlKHtcbiAgICAgICAgZGVzY3JpcHRpb246IFwiTm8gY29udGVudCByZXR1cm5lZCBieSB0aGUgbWV0aG9kLlwiLFxuICAgICAgfSksXG4gICAgXTtcblxuICAgIGlmIChodHRwVmVyYiA9PT0gXCJHRVRcIiAmJiBpbmNsdWRlUXVlcnlQYXJhbXMpIHtcbiAgICAgIGRlY29yYXRvcnMucHVzaChcbiAgICAgICAgQXBpUXVlcnkoe1xuICAgICAgICAgIG5hbWU6IFwiZGlyZWN0aW9uXCIsXG4gICAgICAgICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgICAgICAgIGVudW06IE9yZGVyRGlyZWN0aW9uLFxuICAgICAgICAgIGRlc2NyaXB0aW9uOiBcInRoZSBzb3J0IG9yZGVyIHdoZW4gYXBwbGljYWJsZVwiLFxuICAgICAgICB9KSxcbiAgICAgICAgQXBpUXVlcnkoe1xuICAgICAgICAgIG5hbWU6IFwibGltaXRcIixcbiAgICAgICAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgICAgICAgZGVzY3JpcHRpb246IFwibGltaXQgb3IgcGFnZSBzaXplXCIsXG4gICAgICAgIH0pLFxuICAgICAgICBBcGlRdWVyeSh7XG4gICAgICAgICAgbmFtZTogXCJvZmZzZXRcIixcbiAgICAgICAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgICAgICAgZGVzY3JpcHRpb246IFwib2Zmc2V0IG9yIGJvb2ttYXJrXCIsXG4gICAgICAgIH0pXG4gICAgICApO1xuICAgIH1cblxuICAgIHJldHVybiBkZWNvcmF0b3JzO1xuICB9XG59XG4iXX0=
|
|
806
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRnJvbU1vZGVsQ29udHJvbGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIkZyb21Nb2RlbENvbnRyb2xsZXIuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsSUFBSSxVQUFVLEdBQUcsQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLFVBQVUsVUFBVSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsSUFBSTtJQUNqRixJQUFJLENBQUMsR0FBRyxTQUFTLENBQUMsTUFBTSxFQUFFLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksR0FBRyxNQUFNLENBQUMsd0JBQXdCLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQzdILElBQUksT0FBTyxPQUFPLEtBQUssUUFBUSxJQUFJLE9BQU8sT0FBTyxDQUFDLFFBQVEsS0FBSyxVQUFVO1FBQUUsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUMsVUFBVSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUM7O1FBQzFILEtBQUssSUFBSSxDQUFDLEdBQUcsVUFBVSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEVBQUU7WUFBRSxJQUFJLENBQUMsR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDO2dCQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFN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b250ZW50IjpbInZhciBfX2RlY29yYXRlID0gKHRoaXMgJiYgdGhpcy5fX2RlY29yYXRlKSB8fCBmdW5jdGlvbiAoZGVjb3JhdG9ycywgdGFyZ2V0LCBrZXksIGRlc2MpIHtcbiAgICB2YXIgYyA9IGFyZ3VtZW50cy5sZW5ndGgsIHIgPSBjIDwgMyA/IHRhcmdldCA6IGRlc2MgPT09IG51bGwgPyBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih0YXJnZXQsIGtleSkgOiBkZXNjLCBkO1xuICAgIGlmICh0eXBlb2YgUmVmbGVjdCA9PT0gXCJvYmplY3RcIiAmJiB0eXBlb2YgUmVmbGVjdC5kZWNvcmF0ZSA9PT0gXCJmdW5jdGlvblwiKSByID0gUmVmbGVjdC5kZWNvcmF0ZShkZWNvcmF0b3JzLCB0YXJnZXQsIGtleSwgZGVzYyk7XG4gICAgZWxzZSBmb3IgKHZhciBpID0gZGVjb3JhdG9ycy5sZW5ndGggLSAxOyBpID49IDA7IGktLSkgaWYgKGQgPSBkZWNvcmF0b3JzW2ldKSByID0gKGMgPCAzID8gZChyKSA6IGMgPiAzID8gZCh0YXJnZXQsIGtleSwgcikgOiBkKHRhcmdldCwga2V5KSkgfHwgcjtcbiAgICByZXR1cm4gYyA+IDMgJiYgciAmJiBPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBrZXksIHIpLCByO1xufTtcbnZhciBfX21ldGFkYXRhID0gKHRoaXMgJiYgdGhpcy5fX21ldGFkYXRhKSB8fCBmdW5jdGlvbiAoaywgdikge1xuICAgIGlmICh0eXBlb2YgUmVmbGVjdCA9PT0gXCJvYmplY3RcIiAmJiB0eXBlb2YgUmVmbGVjdC5tZXRhZGF0YSA9PT0gXCJmdW5jdGlvblwiKSByZXR1cm4gUmVmbGVjdC5tZXRhZGF0YShrLCB2KTtcbn07XG52YXIgRHluYW1pY01vZGVsQ29udHJvbGxlcl8xO1xuaW1wb3J0IHsgQ29udHJvbGxlciwgUGFyYW0sIFF1ZXJ5LCBSZXNwb25zZSwgU2V0TWV0YWRhdGEsIH0gZnJvbSBcIkBuZXN0anMvY29tbW9uXCI7XG5pbXBvcnQgeyBBcGlCYWRSZXF1ZXN0UmVzcG9uc2UsIEFwaUJvZHksIEFwaUNyZWF0ZWRSZXNwb25zZSwgQXBpRXh0cmFNb2RlbHMsIEFwaU5vQ29udGVudFJlc3BvbnNlLCBBcGlOb3RGb3VuZFJlc3BvbnNlLCBBcGlPa1Jlc3BvbnNlLCBBcGlPcGVyYXRpb24sIEFwaVBhcmFtLCBBcGlRdWVyeSwgQXBpVGFncywgQXBpVW5wcm9jZXNzYWJsZUVudGl0eVJlc3BvbnNlLCBnZXRTY2hlbWFQYXRoLCB9IGZyb20gXCJAbmVzdGpzL3N3YWdnZXJcIjtcbmltcG9ydCB7IE1vZGVsU2VydmljZSwgT3JkZXJEaXJlY3Rpb24sIFBlcnNpc3RlbmNlS2V5cywgUHJlcGFyZWRTdGF0ZW1lbnRLZXlzLCBSZXBvc2l0b3J5LCBTZXJ2aWNlLCB9IGZyb20gXCJAZGVjYWYtdHMvY29yZVwiO1xuaW1wb3J0IHsgTW9kZWwgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uXCI7XG5pbXBvcnQgeyBMb2dnaW5nLCB0b0tlYmFiQ2FzZSB9IGZyb20gXCJAZGVjYWYtdHMvbG9nZ2luZ1wiO1xuaW1wb3J0IHsgREJLZXlzLCBCYXNlRXJyb3IsIEludGVybmFsRXJyb3IsIE9wZXJhdGlvbktleXMsIH0gZnJvbSBcIkBkZWNhZi10cy9kYi1kZWNvcmF0b3JzXCI7XG5pbXBvcnQgeyBNZXRhZGF0YSB9IGZyb20gXCJAZGVjYWYtdHMvZGVjb3JhdGlvblwiO1xuaW1wb3J0IHsgQXBpT3BlcmF0aW9uRnJvbU1vZGVsLCBBcGlQYXJhbXNGcm9tTW9kZWwsIERlY2FmQm9keSwgRGVjYWZRdWVyeSwgfSBmcm9tIFwiLi9kZWNvcmF0b3JzL2luZGV4LmpzXCI7XG5pbXBvcnQgeyBIdHRwVmVyYlRvRGVjb3JhdG9yIH0gZnJvbSBcIi4vZGVjb3JhdG9ycy91dGlscy5qc1wiO1xuaW1wb3J0IHsgRGVjYWZSZXF1ZXN0Q29udGV4dCB9IGZyb20gXCIuLy4uL3JlcXVlc3QvaW5kZXguanNcIjtcbmltcG9ydCB7IERFQ0FGX0NPTlRST0xMRVJfQ09ORklHLCBERUNBRl9ST1VURSB9IGZyb20gXCIuLy4uL2NvbnN0YW50cy5qc1wiO1xuaW1wb3J0IHsgU0tJUF9NT0RFTF9OQU1FU1BBQ0VTX0tFWSwgU0tJUF9NT0RFTF9ST0xFU19LRVksIH0gZnJvbSBcIi4vLi4vYXV0aC9jb25zdGFudHMuanNcIjtcbmltcG9ydCB7IEF1dGgsIFB1YmxpYywgUmVxdWlyZU5hbWVzcGFjZXMsIFJlcXVpcmVSb2xlcywgfSBmcm9tIFwiLi8uLi9hdXRoL2RlY29yYXRvcnMuanNcIjtcbmltcG9ydCB7IERlY2FmTW9kZWxDb250cm9sbGVyIH0gZnJvbSBcIi4vLi4vY29udHJvbGxlcnMuanNcIjtcbmltcG9ydCB7IER0b0ZvciB9IGZyb20gXCIuLy4uL2ZhY3Rvcnkvb3BlbmFwaS9EdG9CdWlsZGVyLmpzXCI7XG5pbXBvcnQgXCIuLy4uL292ZXJyaWRlcy9pbmRleC5qc1wiO1xuaW1wb3J0IHsgTW9kZWxDb250cm9sbGVyRmFjdG9yeSwgfSBmcm9tIFwiQGRlY2FmLXRzL2Zvci1odHRwL3NlcnZlclwiO1xuZXhwb3J0IGNsYXNzIEZyb21Nb2RlbENvbnRyb2xsZXIge1xuICAgIHN0YXRpYyB7IHRoaXMubG9nID0gTG9nZ2luZy5mb3IoRnJvbU1vZGVsQ29udHJvbGxlci5uYW1lKTsgfVxuICAgIHN0YXRpYyB0b0RlY2FmRXJyb3IoZXJyb3IsIGZhbGxiYWNrTWVzc2FnZSkge1xuICAgICAgICBpZiAoZXJyb3IgaW5zdGFuY2VvZiBCYXNlRXJyb3IpXG4gICAgICAgICAgICByZXR1cm4gZXJyb3I7XG4gICAgICAgIHJldHVybiBuZXcgSW50ZXJuYWxFcnJvcihlcnJvciBpbnN0YW5jZW9mIEVycm9yXG4gICAgICAgICAgICA/IGAke2ZhbGxiYWNrTWVzc2FnZX06ICR7ZXJyb3IubWVzc2FnZX1gXG4gICAgICAgICAgICA6IGZhbGxiYWNrTWVzc2FnZSk7XG4gICAgfVxuICAgIHN0YXRpYyBnZXRQZXJzaXN0ZW5jZShNb2RlbENsYXp6KSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICByZXR1cm4gU2VydmljZS5nZXQoTW9kZWxDbGF6eik7XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIE1vZGVsU2VydmljZS5nZXRTZXJ2aWNlKE1vZGVsQ2xhenopO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2F0Y2ggKGUyKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIFJlcG9zaXRvcnkuZm9yTW9kZWwoTW9kZWxDbGF6eik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgc3RhdGljIGNyZWF0ZVF1ZXJ5Um91dGVzRnJvbVJlcG9zaXRvcnkocGVyc2lzdGVuY2UsIHByZWZpeCA9IFBlcnNpc3RlbmNlS2V5cy5RVUVSWSkge1xuICAgICAgICBjb25zdCByZXBvID0gcGVyc2lzdGVuY2UgaW5zdGFuY2VvZiBNb2RlbFNlcnZpY2UgPyBwZXJzaXN0ZW5jZS5yZXBvIDogcGVyc2lzdGVuY2U7XG4gICAgICAgIGNvbnN0IHF1ZXJ5TWV0aG9kcyA9IE1ldGFkYXRhLmdldChyZXBvLmNvbnN0cnVjdG9yLCBNZXRhZGF0YS5rZXkoUGVyc2lzdGVuY2VLZXlzLlFVRVJZKSkgPz8ge307XG4gICAgICAgIGNvbnN0IHJvdXRlTWV0aG9kcyA9IE1ldGFkYXRhLmdldChwZXJzaXN0ZW5jZS5jb25zdHJ1Y3RvciwgTWV0YWRhdGEua2V5KERFQ0FGX1JPVVRFKSkgPz8ge307XG4gICAgICAgIGNsYXNzIFF1ZXJ5Q29udHJvbGxlciBleHRlbmRzIERlY2FmTW9kZWxDb250cm9sbGVyIHtcbiAgICAgICAgICAgIGdldCBjbGFzcygpIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihcIk1ldGhvZCBub3QgaW1wbGVtZW50ZWQuXCIpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3RydWN0b3IoY2xpZW50Q29udGV4dCwgbmFtZSkge1xuICAgICAgICAgICAgICAgIHN1cGVyKGNsaWVudENvbnRleHQsIG5hbWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGZvciAoY29uc3QgW21ldGhvZE5hbWUsIHBhcmFtc10gb2YgT2JqZWN0LmVudHJpZXMocm91dGVNZXRob2RzKSkge1xuICAgICAgICAgICAgY29uc3Qgcm91dGVQYXRoID0gW3BhcmFtcy5wYXRoLnJlcGxhY2UoL15cXC8rfFxcLyskL2csIFwiXCIpXVxuICAgICAgICAgICAgICAgIC5maWx0ZXIoKHNlZ21lbnQpID0+IHNlZ21lbnQgJiYgc2VnbWVudC50cmltKCkpXG4gICAgICAgICAgICAgICAgLmpvaW4oXCIvXCIpO1xuICAgICAgICAgICAgY29uc3QgaGFuZGxlciA9IEZyb21Nb2RlbENvbnRyb2xsZXIuY3JlYXRlQ29tcGxleFF1ZXJ5SGFuZGxlcihtZXRob2ROYW1lKTtcbiAgICAgICAgICAgIEZyb21Nb2RlbENvbnRyb2xsZXIuZGVmaW5lTWV0aG9kKFF1ZXJ5Q29udHJvbGxlciwgbWV0aG9kTmFtZSwgaGFuZGxlcik7XG4gICAgICAgICAgICBjb25zdCBodHRwRGVjb3JhdG9yID0gSHR0cFZlcmJUb0RlY29yYXRvcihwYXJhbXMuaHR0cE1ldGhvZCkocm91dGVQYXRoIHx8IHVuZGVmaW5lZCk7XG4gICAgICAgICAgICBjb25zdCBkZWNvcmF0b3JzID0gRnJvbU1vZGVsQ29udHJvbGxlci5nZXRRdWVyeURlY29yYXRvcnMobWV0aG9kTmFtZSwgcm91dGVQYXRoLCBwYXJhbXMuaHR0cE1ldGhvZCk7XG4gICAgICAgICAgICBGcm9tTW9kZWxDb250cm9sbGVyLmFwcGx5RGVjb3JhdG9ycyhRdWVyeUNvbnRyb2xsZXIsIG1ldGhvZE5hbWUsIFtcbiAgICAgICAgICAgICAgICBodHRwRGVjb3JhdG9yLFxuICAgICAgICAgICAgICAgIC4uLmRlY29yYXRvcnMsXG4gICAgICAgICAgICBdKTtcbiAgICAgICAgfVxuICAgICAgICBmb3IgKGNvbnN0IFttZXRob2ROYW1lLCBvYmpWYWx1ZXNdIG9mIE9iamVjdC5lbnRyaWVzKHF1ZXJ5TWV0aG9kcykpIHtcbiAgICAgICAgICAgIGNvbnN0IGZpZWxkcyA9IG9ialZhbHVlcy5maWVsZHMgPz8gW107XG4gICAgICAgICAgICBjb25zdCByb3V0ZVBhdGggPSBbcHJlZml4LCBtZXRob2ROYW1lLCAuLi5maWVsZHMubWFwKChmKSA9PiBgOiR7Zn1gKV1cbiAgICAgICAgICAgICAgICAuZmlsdGVyKChzZWdtZW50KSA9PiBzZWdtZW50ICYmIHNlZ21lbnQudHJpbSgpKVxuICAgICAgICAgICAgICAgIC5qb2luKFwiL1wiKTtcbiAgICAgICAgICAgIGNvbnN0IGhhbmRsZXIgPSBGcm9tTW9kZWxDb250cm9sbGVyLmNyZWF0ZUNvbXBsZXhRdWVyeUhhbmRsZXIobWV0aG9kTmFtZSk7XG4gICAgICAgICAgICBGcm9tTW9kZWxDb250cm9sbGVyLmRlZmluZU1ldGhvZChRdWVyeUNvbnRyb2xsZXIsIG1ldGhvZE5hbWUsIGhhbmRsZXIpO1xuICAgICAgICAgICAgY29uc3QgaHR0cERlY29yYXRvciA9IEh0dHBWZXJiVG9EZWNvcmF0b3IoXCJHRVRcIikocm91dGVQYXRoIHx8IHVuZGVmaW5lZCk7XG4gICAgICAgICAgICBjb25zdCBkZWNvcmF0b3JzID0gRnJvbU1vZGVsQ29udHJvbGxlci5nZXRRdWVyeURlY29yYXRvcnMobWV0aG9kTmFtZSwgcm91dGVQYXRoLCBcIkdFVFwiLCB0cnVlKTtcbiAgICAgICAgICAgIEZyb21Nb2RlbENvbnRyb2xsZXIuYXBwbHlEZWNvcmF0b3JzKFF1ZXJ5Q29udHJvbGxlciwgbWV0aG9kTmFtZSwgW1xuICAgICAgICAgICAgICAgIGh0dHBEZWNvcmF0b3IsXG4gICAgICAgICAgICAgICAgLi4uZGVjb3JhdG9ycyxcbiAgICAgICAgICAgIF0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBRdWVyeUNvbnRyb2xsZXI7XG4gICAgfVxuICAgIHN0YXRpYyBjcmVhdGUoTW9kZWxDb25zdHIsIG1vZHVsZUNvbmZpZ092ZXJyaWRlcywgZ2xvYmFsRGVmYXVsdHMpIHtcbiAgICAgICAgY29uc3QgbG9nID0gRnJvbU1vZGVsQ29udHJvbGxlci5sb2cuZm9yKEZyb21Nb2RlbENvbnRyb2xsZXIuY3JlYXRlKTtcbiAgICAgICAgY29uc3QgdGFibGVOYW1lID0gTW9kZWwudGFibGVOYW1lKE1vZGVsQ29uc3RyKTtcbiAgICAgICAgY29uc3Qgcm91dGVQYXRoID0gdG9LZWJhYkNhc2UodGFibGVOYW1lKTtcbiAgICAgICAgY29uc3QgbW9kZWxDbGF6ek5hbWUgPSBNb2RlbENvbnN0ci5uYW1lO1xuICAgICAgICBjb25zdCBwZXJzaXN0ZW5jZSA9IEZyb21Nb2RlbENvbnRyb2xsZXIuZ2V0UGVyc2lzdGVuY2UoTW9kZWxDb25zdHIpO1xuICAgICAgICAvLyBXaGVuIHBlcnNpc3RlbmNlIGlzIGEgTW9kZWxTZXJ2aWNlLCB0aGUgQHF1ZXJ5L0Byb3V0ZSBtZXRhZGF0YSBsaXZlcyBvblxuICAgICAgICAvLyB0aGUgdW5kZXJseWluZyByZXBvc2l0b3J5IGNsYXNzIChjdXN0b20gcmVwbyksIG5vdCBvbiBNb2RlbFNlcnZpY2UgaXRzZWxmLlxuICAgICAgICAvLyBQYXNzIHRoZSByZXBvIHRvIHRoZSBmYWN0b3J5IHNvIGFkZENvbXBsZXhRdWVyaWVzKCkgY2FuIGRpc2NvdmVyIHRoZW0uXG4gICAgICAgIGNvbnN0IGZhY3RvcnlQZXJzaXN0ZW5jZSA9IHBlcnNpc3RlbmNlIGluc3RhbmNlb2YgTW9kZWxTZXJ2aWNlID8gcGVyc2lzdGVuY2UucmVwbyA6IHBlcnNpc3RlbmNlO1xuICAgICAgICBjb25zdCBkZWNvcmF0b3JDb25maWcgPSBNZXRhZGF0YS5nZXQoTW9kZWxDb25zdHIsIE1ldGFkYXRhLmtleShERUNBRl9DT05UUk9MTEVSX0NPTkZJRykpO1xuICAgICAgICBjb25zdCBtb2R1bGVPdmVycmlkZSA9IG1vZHVsZUNvbmZpZ092ZXJyaWRlcz8uW01vZGVsQ29uc3RyLm5hbWVdO1xuICAgICAgICBjb25zdCBtZXJnZWRDb25maWcgPSB7XG4gICAgICAgICAgICAuLi4oZ2xvYmFsRGVmYXVsdHMgfHwge30pLFxuICAgICAgICAgICAgLi4uKGRlY29yYXRvckNvbmZpZyB8fCB7fSksXG4gICAgICAgICAgICAuLi4obW9kdWxlT3ZlcnJpZGUgfHwge30pLFxuICAgICAgICB9O1xuICAgICAgICBjb25zdCBGYWN0b3J5Q29udHJvbGxlciA9IE1vZGVsQ29udHJvbGxlckZhY3RvcnkuY3JlYXRlKE1vZGVsQ29uc3RyLCBmYWN0b3J5UGVyc2lzdGVuY2UsIG1lcmdlZENvbmZpZyk7XG4gICAgICAgIGNvbnN0IGZhY3RvcnlSb3V0ZXMgPSBGYWN0b3J5Q29udHJvbGxlci5fX3JvdXRlc19fO1xuICAgICAgICBjb25zdCB7IGdldFBLLCBhcGlQcm9wZXJ0aWVzLCBwYXRoOiBwa1BhdGgsIH0gPSBGcm9tTW9kZWxDb250cm9sbGVyLmdldFJvdXRlUGFyYW1ldGVyc0Zyb21Nb2RlbChNb2RlbENvbnN0cik7XG4gICAgICAgIGxvZy5kZWJ1ZyhgQ3JlYXRpbmcgY29udHJvbGxlciBmb3IgbW9kZWw6ICR7bW9kZWxDbGF6ek5hbWV9IHdpdGggJHtmYWN0b3J5Um91dGVzPy5sZW5ndGggPz8gMH0gZmFjdG9yeSByb3V0ZXNgKTtcbiAgICAgICAgY29uc3QgYXV0aENvbmZpZyA9IG1lcmdlZENvbmZpZy5hdXRoO1xuICAgICAgICBmdW5jdGlvbiBhcHBseUNsYXNzQXV0aCh0YXJnZXQpIHtcbiAgICAgICAgICAgIGlmIChhdXRoQ29uZmlnPy5wdWJsaWMpIHtcbiAgICAgICAgICAgICAgICBQdWJsaWMoKSh0YXJnZXQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoYXV0aENvbmZpZz8ucm9sZXM/Lmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIFJlcXVpcmVSb2xlcyguLi5hdXRoQ29uZmlnLnJvbGVzKSh0YXJnZXQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgQXV0aChNb2RlbENvbnN0cikodGFyZ2V0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChhdXRoQ29uZmlnPy5uYW1lc3BhY2VzPy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICBSZXF1aXJlTmFtZXNwYWNlcyguLi5hdXRoQ29uZmlnLm5hbWVzcGFjZXMpKHRhcmdldCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoYXV0aENvbmZpZz8uc2tpcE1vZGVsUm9sZXMpIHtcbiAgICAgICAgICAgICAgICBTZXRNZXRhZGF0YShTS0lQX01PREVMX1JPTEVTX0tFWSwgdHJ1ZSkodGFyZ2V0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChhdXRoQ29uZmlnPy5za2lwTW9kZWxOYW1lc3BhY2VzKSB7XG4gICAgICAgICAgICAgICAgU2V0TWV0YWRhdGEoU0tJUF9NT0RFTF9OQU1FU1BBQ0VTX0tFWSwgdHJ1ZSkodGFyZ2V0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBsZXQgRHluYW1pY01vZGVsQ29udHJvbGxlciA9IER5bmFtaWNNb2RlbENvbnRyb2xsZXJfMSA9IGNsYXNzIER5bmFtaWNNb2RlbENvbnRyb2xsZXIgZXh0ZW5kcyBEZWNhZk1vZGVsQ29udHJvbGxlciB7XG4gICAgICAgICAgICBzdGF0aWMgZ2V0IGNsYXNzKCkge1xuICAgICAgICAgICAgICAgIHJldHVybiBNb2RlbENvbnN0cjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGdldCBjbGFzcygpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gTW9kZWxDb25zdHI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdHJ1Y3RvcihjbGllbnRDb250ZXh0KSB7XG4gICAgICAgICAgICAgICAgc3VwZXIoY2xpZW50Q29udGV4dCwgRHluYW1pY01vZGVsQ29udHJvbGxlcl8xLm5hbWUpO1xuICAgICAgICAgICAgICAgIHRoaXMucGsgPSBNb2RlbC5wayhNb2RlbENvbnN0cik7XG4gICAgICAgICAgICAgICAgbG9nLmluZm8oYFJlZ2lzdGVyaW5nIGR5bmFtaWMgY29udHJvbGxlciBmb3IgbW9kZWw6ICR7dGhpcy5jbGFzcy5uYW1lfSByb3V0ZTogLyR7cm91dGVQYXRofWApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuICAgICAgICBEeW5hbWljTW9kZWxDb250cm9sbGVyID0gRHluYW1pY01vZGVsQ29udHJvbGxlcl8xID0gX19kZWNvcmF0ZShbXG4gICAgICAgICAgICBDb250cm9sbGVyKHJvdXRlUGF0aCksXG4gICAgICAgICAgICBBcGlUYWdzKG1vZGVsQ2xhenpOYW1lKSxcbiAgICAgICAgICAgIEFwaUV4dHJhTW9kZWxzKE1vZGVsQ29uc3RyKSxcbiAgICAgICAgICAgIF9fbWV0YWRhdGEoXCJkZXNpZ246cGFyYW10eXBlc1wiLCBbRGVjYWZSZXF1ZXN0Q29udGV4dF0pXG4gICAgICAgIF0sIER5bmFtaWNNb2RlbENvbnRyb2xsZXIpO1xuICAgICAgICBhcHBseUNsYXNzQXV0aChEeW5hbWljTW9kZWxDb250cm9sbGVyKTtcbiAgICAgICAgaWYgKGZhY3RvcnlSb3V0ZXMpIHtcbiAgICAgICAgICAgIGNvbnN0IHNvcnRlZFJvdXRlcyA9IFsuLi5mYWN0b3J5Um91dGVzXS5zb3J0KChhLCBiKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgYVNlZ21lbnRzID0gYS5wYXRoLnNwbGl0KFwiL1wiKS5maWx0ZXIoQm9vbGVhbik7XG4gICAgICAgICAgICAgICAgY29uc3QgYlNlZ21lbnRzID0gYi5wYXRoLnNwbGl0KFwiL1wiKS5maWx0ZXIoQm9vbGVhbik7XG4gICAgICAgICAgICAgICAgY29uc3QgYVBhcmFtQ291bnQgPSBhU2VnbWVudHMuZmlsdGVyKChzKSA9PiBzLnN0YXJ0c1dpdGgoXCI6XCIpKS5sZW5ndGg7XG4gICAgICAgICAgICAgICAgY29uc3QgYlBhcmFtQ291bnQgPSBiU2VnbWVudHMuZmlsdGVyKChzKSA9PiBzLnN0YXJ0c1dpdGgoXCI6XCIpKS5sZW5ndGg7XG4gICAgICAgICAgICAgICAgY29uc3QgYUxpdGVyYWxDb3VudCA9IGFTZWdtZW50cy5sZW5ndGggLSBhUGFyYW1Db3VudDtcbiAgICAgICAgICAgICAgICBjb25zdCBiTGl0ZXJhbENvdW50ID0gYlNlZ21lbnRzLmxlbmd0aCAtIGJQYXJhbUNvdW50O1xuICAgICAgICAgICAgICAgIGlmIChhTGl0ZXJhbENvdW50ICE9PSBiTGl0ZXJhbENvdW50KVxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gYkxpdGVyYWxDb3VudCAtIGFMaXRlcmFsQ291bnQ7XG4gICAgICAgICAgICAgICAgaWYgKGFQYXJhbUNvdW50ICE9PSBiUGFyYW1Db3VudClcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGFQYXJhbUNvdW50IC0gYlBhcmFtQ291bnQ7XG4gICAgICAgICAgICAgICAgcmV0dXJuIDA7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIGZvciAoY29uc3Qgcm91dGUgb2Ygc29ydGVkUm91dGVzKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbWV0aG9kTmFtZSA9IHJvdXRlLmltcGxlbWVudGF0aW9uPy5uYW1lIHx8IHJvdXRlLm1ldGhvZC50b0xvd2VyQ2FzZSgpO1xuICAgICAgICAgICAgICAgIGNvbnN0IHJlZ2lzdHJhdGlvbiA9IEZyb21Nb2RlbENvbnRyb2xsZXIubWF0Y2hSb3V0ZShtZXRob2ROYW1lLCByb3V0ZSwgcGtQYXRoLCBhcGlQcm9wZXJ0aWVzLCBnZXRQSywgTW9kZWxDb25zdHIsIG1vZGVsQ2xhenpOYW1lKTtcbiAgICAgICAgICAgICAgICBpZiAoIXJlZ2lzdHJhdGlvbilcbiAgICAgICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICAgICAgY29uc3QgeyBtZXRob2ROYW1lOiByZWdpc3RlcmVkTWV0aG9kTmFtZSwgaGFuZGxlciwgZGVjb3JhdG9ycywgcGFyYW1EZWNvcmF0b3JzLCB9ID0gcmVnaXN0cmF0aW9uO1xuICAgICAgICAgICAgICAgIGNvbnN0IGRlc2NyaXB0b3IgPSBGcm9tTW9kZWxDb250cm9sbGVyLmRlZmluZU1ldGhvZChEeW5hbWljTW9kZWxDb250cm9sbGVyLCByZWdpc3RlcmVkTWV0aG9kTmFtZSwgaGFuZGxlcik7XG4gICAgICAgICAgICAgICAgaWYgKGRlc2NyaXB0b3IpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgaHR0cERlY29yYXRvciA9IEh0dHBWZXJiVG9EZWNvcmF0b3Iocm91dGUubWV0aG9kKShyb3V0ZS5wYXRoLnJlcGxhY2UoL15cXC8rfFxcLyskL2csIFwiXCIpIHx8IHVuZGVmaW5lZCk7XG4gICAgICAgICAgICAgICAgICAgIEZyb21Nb2RlbENvbnRyb2xsZXIuYXBwbHlEZWNvcmF0b3JzKER5bmFtaWNNb2RlbENvbnRyb2xsZXIsIHJlZ2lzdGVyZWRNZXRob2ROYW1lLCBbaHR0cERlY29yYXRvciwgLi4uZGVjb3JhdG9yc10sIHBhcmFtRGVjb3JhdG9ycyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBEeW5hbWljTW9kZWxDb250cm9sbGVyO1xuICAgIH1cbiAgICBzdGF0aWMgZ2V0Um91dGVQYXJhbWV0ZXJzRnJvbU1vZGVsKE1vZGVsQ2xhenopIHtcbiAgICAgICAgY29uc3QgcGsgPSBNb2RlbC5wayhNb2RlbENsYXp6KTtcbiAgICAgICAgY29uc3QgY29tcG9zZWQgPSBNZXRhZGF0YS5nZXQoTW9kZWxDbGF6eiwgTWV0YWRhdGEua2V5KERCS2V5cy5DT01QT1NFRCwgcGspKTtcbiAgICAgICAgY29uc3QgY29tcG9zZWRLZXlzID0gY29tcG9zZWQ/LmFyZ3MgPz8gW107XG4gICAgICAgIGNvbnN0IHVuaXF1ZUtleXMgPSBBcnJheS5pc0FycmF5KGNvbXBvc2VkS2V5cykgJiYgY29tcG9zZWRLZXlzLmxlbmd0aCA+IDBcbiAgICAgICAgICAgID8gQXJyYXkuZnJvbShuZXcgU2V0KFsuLi5jb21wb3NlZEtleXNdKSlcbiAgICAgICAgICAgIDogQXJyYXkuZnJvbShuZXcgU2V0KFtwa10pKTtcbiAgICAgICAgY29uc3QgZGVzY3JpcHRpb24gPSBNZXRhZGF0YS5kZXNjcmlwdGlvbihNb2RlbENsYXp6KSA/PyBcIlwiO1xuICAgICAgICBjb25zdCBwYXRoID0gYDoke3VuaXF1ZUtleXMuam9pbihcIi86XCIpfWA7XG4gICAgICAgIGNvbnN0IGFwaVByb3BlcnRpZXMgPSB1bmlxdWVLZXlzLm1hcCgoa2V5KSA9PiB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIG5hbWU6IGtleSxcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogTWV0YWRhdGEuZGVzY3JpcHRpb24oTW9kZWxDbGF6eiwga2V5KSxcbiAgICAgICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICAgICAgICB9O1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIHBhdGgsXG4gICAgICAgICAgICBkZXNjcmlwdGlvbixcbiAgICAgICAgICAgIGFwaVByb3BlcnRpZXMsXG4gICAgICAgICAgICBnZXRQSzogKC4uLnBhcmFtcykgPT4gY29tcG9zZWQ/LnNlcGFyYXRvciA/IHBhcmFtcy5qb2luKGNvbXBvc2VkLnNlcGFyYXRvcikgOiBwYXJhbXMuam9pbihcIlwiKSxcbiAgICAgICAgfTtcbiAgICB9XG4gICAgc3RhdGljIHJvdXRlUGFyYW1EZWNvcmF0b3JzKHBhdGgpIHtcbiAgICAgICAgbGV0IHBhcmFtSW5kZXggPSAwO1xuICAgICAgICByZXR1cm4gcGF0aFxuICAgICAgICAgICAgLnNwbGl0KFwiL1wiKVxuICAgICAgICAgICAgLmZpbHRlcihCb29sZWFuKVxuICAgICAgICAgICAgLmZsYXRNYXAoKHNlZ21lbnQpID0+IHtcbiAgICAgICAgICAgIGlmIChzZWdtZW50LnN0YXJ0c1dpdGgoXCI6XCIpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgICAgICAgICAgeyBkZWNvcmF0b3I6IFBhcmFtKHNlZ21lbnQuc2xpY2UoMSkpLCBpbmRleDogcGFyYW1JbmRleCsrIH0sXG4gICAgICAgICAgICAgICAgXTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChzZWdtZW50LnN0YXJ0c1dpdGgoXCIqXCIpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgICAgICAgICAgeyBkZWNvcmF0b3I6IFBhcmFtKHNlZ21lbnQuc2xpY2UoMSkpLCBpbmRleDogcGFyYW1JbmRleCsrIH0sXG4gICAgICAgICAgICAgICAgXTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBbXTtcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIHN0YXRpYyBkZWZpbmVNZXRob2QodGFyZ2V0LCBtZXRob2ROYW1lLCBoYW5kbGVyKSB7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQucHJvdG90eXBlIHx8IHRhcmdldCwgbWV0aG9kTmFtZSwge1xuICAgICAgICAgICAgdmFsdWU6IGhhbmRsZXIsXG4gICAgICAgICAgICB3cml0YWJsZTogZmFsc2UsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICBlbnVtZXJhYmxlOiBmYWxzZSxcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHRhcmdldC5wcm90b3R5cGUgfHwgdGFyZ2V0LCBtZXRob2ROYW1lKTtcbiAgICB9XG4gICAgc3RhdGljIGFwcGx5RGVjb3JhdG9ycyh0YXJnZXQsIG1ldGhvZE5hbWUsIG1ldGhvZERlY29yYXRvcnMsIHBhcmFtRGVjb3JhdG9ycyA9IFtdKSB7XG4gICAgICAgIGNvbnN0IHByb3RvID0gdGFyZ2V0Py5wcm90b3R5cGUgPz8gdGFyZ2V0O1xuICAgICAgICBjb25zdCBkZXNjcmlwdG9yID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihwcm90bywgbWV0aG9kTmFtZSk7XG4gICAgICAgIG1ldGhvZERlY29yYXRvcnMuZm9yRWFjaCgoZCkgPT4gZChwcm90bywgbWV0aG9kTmFtZSwgZGVzY3JpcHRvcikpO1xuICAgICAgICBwYXJhbURlY29yYXRvcnMuZm9yRWFjaCgoeyBkZWNvcmF0b3IsIGluZGV4IH0pID0+IGRlY29yYXRvcihwcm90bywgbWV0aG9kTmFtZSwgaW5kZXgpKTtcbiAgICB9XG4gICAgc3RhdGljIG1hdGNoUm91dGUobWV0aG9kTmFtZSwgcm91dGUsIHBrUGF0aCwgYXBpUHJvcGVydGllcywgZ2V0UEssIE1vZGVsQ29uc3RyLCBtb2RlbENsYXp6TmFtZSkge1xuICAgICAgICBjb25zdCB7IG1ldGhvZCwgcGF0aCB9ID0gcm91dGU7XG4gICAgICAgIGNvbnN0IG5vcm1hbGl6ZWRQYXRoID0gcGF0aC5yZXBsYWNlKC9eXFwvK3xcXC8rJC9nLCBcIlwiKTtcbiAgICAgICAgY29uc3QgaGFuZGxlciA9IHJvdXRlLmltcGxlbWVudGF0aW9uO1xuICAgICAgICBpZiAobWV0aG9kID09PSBcIlBPU1RcIiAmJiBub3JtYWxpemVkUGF0aCA9PT0gXCJcIikge1xuICAgICAgICAgICAgcmV0dXJuIEZyb21Nb2RlbENvbnRyb2xsZXIuY3JlYXRlUmVnaXN0cmF0aW9uKFwiY3JlYXRlXCIsIGhhbmRsZXIsIEZyb21Nb2RlbENvbnRyb2xsZXIuY3JlYXRlQ3JlYXRlRGVjb3JhdG9ycyhNb2RlbENvbnN0ciwgbW9kZWxDbGF6ek5hbWUpLCBbXG4gICAgICAgICAgICAgICAgeyBkZWNvcmF0b3I6IERlY2FmQm9keSgpLCBpbmRleDogMCB9LFxuICAgICAgICAgICAgICAgIHsgZGVjb3JhdG9yOiBSZXNwb25zZSh7IHBhc3N0aHJvdWdoOiB0cnVlIH0pLCBpbmRleDogMSB9LFxuICAgICAgICAgICAgXSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKG1ldGhvZCA9PT0gXCJQT1NUXCIgJiYgbm9ybWFsaXplZFBhdGggPT09IFwiYnVsa1wiKSB7XG4gICAgICAgICAgICByZXR1cm4gRnJvbU1vZGVsQ29udHJvbGxlci5jcmVhdGVSZWdpc3RyYXRpb24oXCJjcmVhdGVBbGxcIiwgaGFuZGxlciwgRnJvbU1vZGVsQ29udHJvbGxlci5idWxrQ3JlYXRlRGVjb3JhdG9ycyhNb2RlbENvbnN0ciwgbW9kZWxDbGF6ek5hbWUpLCBbXG4gICAgICAgICAgICAgICAgeyBkZWNvcmF0b3I6IERlY2FmQm9keSgpLCBpbmRleDogMCB9LFxuICAgICAgICAgICAgICAgIHsgZGVjb3JhdG9yOiBSZXNwb25zZSh7IHBhc3N0aHJvdWdoOiB0cnVlIH0pLCBpbmRleDogMSB9LFxuICAgICAgICAgICAgXSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKG1ldGhvZCA9PT0gXCJHRVRcIiAmJiBub3JtYWxpemVkUGF0aCA9PT0gXCJidWxrXCIpIHtcbiAgICAgICAgICAgIHJldHVybiBGcm9tTW9kZWxDb250cm9sbGVyLmNyZWF0ZVJlZ2lzdHJhdGlvbihcInJlYWRBbGxcIiwgaGFuZGxlciwgRnJvbU1vZGVsQ29udHJvbGxlci5idWxrUmVhZERlY29yYXRvcnMoTW9kZWxDb25zdHIsIG1vZGVsQ2xhenpOYW1lKSwgW3sgZGVjb3JhdG9yOiBRdWVyeShcImlkc1wiKSwgaW5kZXg6IDAgfV0pO1xuICAgICAgICB9XG4gICAgICAgIGlmIChtZXRob2QgPT09IFwiUFVUXCIgJiYgbm9ybWFsaXplZFBhdGggPT09IFwiYnVsa1wiKSB7XG4gICAgICAgICAgICByZXR1cm4gRnJvbU1vZGVsQ29udHJvbGxlci5jcmVhdGVSZWdpc3RyYXRpb24oXCJ1cGRhdGVBbGxcIiwgaGFuZGxlciwgRnJvbU1vZGVsQ29udHJvbGxlci5idWxrVXBkYXRlRGVjb3JhdG9ycyhNb2RlbENvbnN0ciwgbW9kZWxDbGF6ek5hbWUsIGFwaVByb3BlcnRpZXMpLCBbXG4gICAgICAgICAgICAgICAgeyBkZWNvcmF0b3I6IERlY2FmQm9keSgpLCBpbmRleDogMCB9LFxuICAgICAgICAgICAgICAgIHsgZGVjb3JhdG9yOiBSZXNwb25zZSh7IHBhc3N0aHJvdWdoOiB0cnVlIH0pLCBpbmRleDogMSB9LFxuICAgICAgICAgICAgXSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKG1ldGhvZCA9PT0gXCJERUxFVEVcIiAmJiBub3JtYWxpemVkUGF0aCA9PT0gXCJidWxrXCIpIHtcbiAgICAgICAgICAgIHJldHVybiBGcm9tTW9kZWxDb250cm9sbGVyLmNyZWF0ZVJlZ2lzdHJhdGlvbihcImRlbGV0ZUFsbFwiLCBoYW5kbGVyLCBGcm9tTW9kZWxDb250cm9sbGVyLmJ1bGtEZWxldGVEZWNvcmF0b3JzKE1vZGVsQ29uc3RyLCBtb2RlbENsYXp6TmFtZSwgYXBpUHJvcGVydGllcyksIFtcbiAgICAgICAgICAgICAgICB7IGRlY29yYXRvcjogUXVlcnkoXCJpZHNcIiksIGluZGV4OiAwIH0sXG4gICAgICAgICAgICAgICAgeyBkZWNvcmF0b3I6IFJlc3BvbnNlKHsgcGFzc3Rocm91Z2g6IHRydWUgfSksIGluZGV4OiAxIH0sXG4gICAgICAgICAgICBdKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAobWV0aG9kID09PSBcIkdFVFwiICYmIG5vcm1hbGl6ZWRQYXRoID09PSBwa1BhdGgpIHtcbiAgICAgICAgICAgIHJldHVybiBGcm9tTW9kZWxDb250cm9sbGVyLmNyZWF0ZVJlZ2lzdHJhdGlvbihcInJlYWRcIiwgaGFuZGxlciwgRnJvbU1vZGVsQ29udHJvbGxlci5yZWFkRGVjb3JhdG9ycyhNb2RlbENvbnN0ciwgbW9kZWxDbGF6ek5hbWUsIGFwaVByb3BlcnRpZXMsIHBrUGF0aCksIEZyb21Nb2RlbENvbnRyb2xsZXIucm91dGVQYXJhbURlY29yYXRvcnMobm9ybWFsaXplZFBhdGgpKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAobWV0aG9kID09PSBcIlBVVFwiICYmIG5vcm1hbGl6ZWRQYXRoID09PSBwa1BhdGgpIHtcbiAgICAgICAgICAgIGNvbnN0IHJvdXRlUGFyYW1zID0gRnJvbU1vZGVsQ29udHJvbGxlci5yb3V0ZVBhcmFtRGVjb3JhdG9ycyhub3JtYWxpemVkUGF0aCk7XG4gICAgICAgICAgICByZXR1cm4gRnJvbU1vZGVsQ29udHJvbGxlci5jcmVhdGVSZWdpc3RyYXRpb24oXCJ1cGRhdGVcIiwgaGFuZGxlciwgRnJvbU1vZGVsQ29udHJvbGxlci51cGRhdGVEZWNvcmF0b3JzKE1vZGVsQ29uc3RyLCBtb2RlbENsYXp6TmFtZSwgYXBpUHJvcGVydGllcywgcGtQYXRoKSwgW1xuICAgICAgICAgICAgICAgIHsgZGVjb3JhdG9yOiBEZWNhZkJvZHkoKSwgaW5kZXg6IDAgfSxcbiAgICAgICAgICAgICAgICAuLi5yb3V0ZVBhcmFtcy5tYXAoKHsgZGVjb3JhdG9yLCBpbmRleCB9KSA9PiAoe1xuICAgICAgICAgICAgICAgICAgICBkZWNvcmF0b3IsXG4gICAgICAgICAgICAgICAgICAgIGluZGV4OiBpbmRleCArIDEsXG4gICAgICAgICAgICAgICAgfSkpLFxuICAgICAgICAgICAgXSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKG1ldGhvZCA9PT0gXCJERUxFVEVcIiAmJiBub3JtYWxpemVkUGF0aCA9PT0gcGtQYXRoKSB7XG4gICAgICAgICAgICBjb25zdCByb3V0ZVBhcmFtcyA9IEZyb21Nb2RlbENvbnRyb2xsZXIucm91dGVQYXJhbURlY29yYXRvcnMobm9ybWFsaXplZFBhdGgpO1xuICAgICAgICAgICAgcmV0dXJuIEZyb21Nb2RlbENvbnRyb2xsZXIuY3JlYXRlUmVnaXN0cmF0aW9uKFwiZGVsZXRlXCIsIGhhbmRsZXIsIEZyb21Nb2RlbENvbnRyb2xsZXIuZGVsZXRlRGVjb3JhdG9ycyhNb2RlbENvbnN0ciwgbW9kZWxDbGF6ek5hbWUsIGFwaVByb3BlcnRpZXMsIHBrUGF0aCksIHJvdXRlUGFyYW1zKTtcbiAgICAgICAgfVxuICAgICAgICAvLyBDb21wb3NlZCBQSyBmYWxsYmFjayByb3V0ZXMgKGZpbHRlckVtcHR5KSDigJQgcGF0aCBkaWZmZXJzIGZyb20gcGtQYXRoXG4gICAgICAgIGNvbnN0IGZhbGxiYWNrU2VnbWVudHMgPSBub3JtYWxpemVkUGF0aC5zcGxpdChcIi9cIikuZmlsdGVyKEJvb2xlYW4pO1xuICAgICAgICBjb25zdCBpc0FsbFBhcmFtcyA9IGZhbGxiYWNrU2VnbWVudHMubGVuZ3RoID4gMCAmJlxuICAgICAgICAgICAgZmFsbGJhY2tTZWdtZW50cy5ldmVyeSgocykgPT4gcy5zdGFydHNXaXRoKFwiOlwiKSk7XG4gICAgICAgIGlmIChpc0FsbFBhcmFtcyAmJiBub3JtYWxpemVkUGF0aCAhPT0gcGtQYXRoKSB7XG4gICAgICAgICAgICBjb25zdCBmYWxsYmFja0FwaVByb3BzID0gZmFsbGJhY2tTZWdtZW50c1xuICAgICAgICAgICAgICAgIC5tYXAoKHMpID0+IHMuc2xpY2UoMSkpXG4gICAgICAgICAgICAgICAgLm1hcCgobmFtZSkgPT4gKHtcbiAgICAgICAgICAgICAgICBuYW1lLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBgJHtuYW1lfSBwYXJhbWV0ZXJgLFxuICAgICAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgICAgICAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgICAgICAgIH0pKTtcbiAgICAgICAgICAgIGNvbnN0IHN1ZmZpeCA9IGZhbGxiYWNrU2VnbWVudHMubWFwKChzKSA9PiBzLnNsaWNlKDEpKS5qb2luKFwiQW5kXCIpO1xuICAgICAgICAgICAgY29uc3Qgcm91dGVQYXJhbXMgPSBGcm9tTW9kZWxDb250cm9sbGVyLnJvdXRlUGFyYW1EZWNvcmF0b3JzKG5vcm1hbGl6ZWRQYXRoKTtcbiAgICAgICAgICAgIGlmIChtZXRob2QgPT09IFwiR0VUXCIpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gRnJvbU1vZGVsQ29udHJvbGxlci5jcmVhdGVSZWdpc3RyYXRpb24oYHJlYWRCeSR7c3VmZml4fWAsIGhhbmRsZXIsIEZyb21Nb2RlbENvbnRyb2xsZXIucmVhZERlY29yYXRvcnMoTW9kZWxDb25zdHIsIG1vZGVsQ2xhenpOYW1lLCBmYWxsYmFja0FwaVByb3BzLCBub3JtYWxpemVkUGF0aCksIHJvdXRlUGFyYW1zKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChtZXRob2QgPT09IFwiUFVUXCIpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gRnJvbU1vZGVsQ29udHJvbGxlci5jcmVhdGVSZWdpc3RyYXRpb24oYHVwZGF0ZUJ5JHtzdWZmaXh9YCwgaGFuZGxlciwgRnJvbU1vZGVsQ29udHJvbGxlci51cGRhdGVEZWNvcmF0b3JzKE1vZGVsQ29uc3RyLCBtb2RlbENsYXp6TmFtZSwgZmFsbGJhY2tBcGlQcm9wcywgbm9ybWFsaXplZFBhdGgpLCBbXG4gICAgICAgICAgICAgICAgICAgIHsgZGVjb3JhdG9yOiBEZWNhZkJvZHkoKSwgaW5kZXg6IDAgfSxcbiAgICAgICAgICAgICAgICAgICAgLi4ucm91dGVQYXJhbXMubWFwKCh7IGRlY29yYXRvciwgaW5kZXggfSkgPT4gKHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlY29yYXRvcixcbiAgICAgICAgICAgICAgICAgICAgICAgIGluZGV4OiBpbmRleCArIDEsXG4gICAgICAgICAgICAgICAgICAgIH0pKSxcbiAgICAgICAgICAgICAgICBdKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChtZXRob2QgPT09IFwiREVMRVRFXCIpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gRnJvbU1vZGVsQ29udHJvbGxlci5jcmVhdGVSZWdpc3RyYXRpb24oYGRlbGV0ZUJ5JHtzdWZmaXh9YCwgaGFuZGxlciwgRnJvbU1vZGVsQ29udHJvbGxlci5kZWxldGVEZWNvcmF0b3JzKE1vZGVsQ29uc3RyLCBtb2RlbENsYXp6TmFtZSwgZmFsbGJhY2tBcGlQcm9wcywgbm9ybWFsaXplZFBhdGgpLCByb3V0ZVBhcmFtcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKG1ldGhvZCA9PT0gXCJHRVRcIiAmJiBub3JtYWxpemVkUGF0aCA9PT0gXCJzdGF0ZW1lbnQvOm1ldGhvZC8qYXJnc1wiKSB7XG4gICAgICAgICAgICByZXR1cm4gRnJvbU1vZGVsQ29udHJvbGxlci5jcmVhdGVSZWdpc3RyYXRpb24oXCJzdGF0ZW1lbnRcIiwgaGFuZGxlciwgRnJvbU1vZGVsQ29udHJvbGxlci5zdGF0ZW1lbnREZWNvcmF0b3JzKE1vZGVsQ29uc3RyLCBtb2RlbENsYXp6TmFtZSksIFtcbiAgICAgICAgICAgICAgICB7IGRlY29yYXRvcjogUGFyYW0oXCJtZXRob2RcIiksIGluZGV4OiAwIH0sXG4gICAgICAgICAgICAgICAgeyBkZWNvcmF0b3I6IFBhcmFtKFwiYXJnc1wiKSwgaW5kZXg6IDEgfSxcbiAgICAgICAgICAgICAgICB7IGRlY29yYXRvcjogRGVjYWZRdWVyeSgpLCBpbmRleDogMiB9LFxuICAgICAgICAgICAgXSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKG1ldGhvZCA9PT0gXCJHRVRcIiAmJiBub3JtYWxpemVkUGF0aCA9PT0gXCJmaW5kT25lQnkvOmtleS86dmFsdWVcIikge1xuICAgICAgICAgICAgcmV0dXJuIEZyb21Nb2RlbENvbnRyb2xsZXIuY3JlYXRlUmVnaXN0cmF0aW9uKFwiZmluZE9uZUJ5XCIsIGhhbmRsZXIsIEZyb21Nb2RlbENvbnRyb2xsZXIuc3RhdGVtZW50U2hvcnRjdXREZWNvcmF0b3JzKE1vZGVsQ29uc3RyLCBtb2RlbENsYXp6TmFtZSwgbm9ybWFsaXplZFBhdGgsIFByZXBhcmVkU3RhdGVtZW50S2V5cy5GSU5EX09ORV9CWSksIEZyb21Nb2RlbENvbnRyb2xsZXIuc3RhdGVtZW50U2hvcnRjdXRQYXJhbXMobm9ybWFsaXplZFBhdGgpKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBzdGF0ZW1lbnRSb3V0ZXMgPSB7XG4gICAgICAgICAgICBcImxpc3RCeS86a2V5XCI6IFByZXBhcmVkU3RhdGVtZW50S2V5cy5MSVNUX0JZLFxuICAgICAgICAgICAgXCJwYWdpbmF0ZUJ5LzprZXkvOnBhZ2VcIjogUHJlcGFyZWRTdGF0ZW1lbnRLZXlzLlBBR0VfQlksXG4gICAgICAgICAgICBcImZpbmQvOnZhbHVlXCI6IFByZXBhcmVkU3RhdGVtZW50S2V5cy5GSU5ELFxuICAgICAgICAgICAgXCJwYWdlLzp2YWx1ZVwiOiBQcmVwYXJlZFN0YXRlbWVudEtleXMuUEFHRSxcbiAgICAgICAgICAgIFwiZmluZE9uZUJ5LzprZXkvOnZhbHVlXCI6IFByZXBhcmVkU3RhdGVtZW50S2V5cy5GSU5EX09ORV9CWSxcbiAgICAgICAgICAgIFwiZmluZEJ5LzprZXkvOnZhbHVlXCI6IFByZXBhcmVkU3RhdGVtZW50S2V5cy5GSU5EX0JZLFxuICAgICAgICAgICAgXCJjb3VudE9mLzpmaWVsZFwiOiBQcmVwYXJlZFN0YXRlbWVudEtleXMuQ09VTlRfT0YsXG4gICAgICAgICAgICBcIm1heE9mLzpmaWVsZFwiOiBQcmVwYXJlZFN0YXRlbWVudEtleXMuTUFYX09GLFxuICAgICAgICAgICAgXCJtaW5PZi86ZmllbGRcIjogUHJlcGFyZWRTdGF0ZW1lbnRLZXlzLk1JTl9PRixcbiAgICAgICAgICAgIFwiYXZnT2YvOmZpZWxkXCI6IFByZXBhcmVkU3RhdGVtZW50S2V5cy5BVkdfT0YsXG4gICAgICAgICAgICBcInN1bU9mLzpmaWVsZFwiOiBQcmVwYXJlZFN0YXRlbWVudEtleXMuU1VNX09GLFxuICAgICAgICAgICAgXCJkaXN0aW5jdE9mLzpmaWVsZFwiOiBQcmVwYXJlZFN0YXRlbWVudEtleXMuRElTVElOQ1RfT0YsXG4gICAgICAgICAgICBcImdyb3VwT2YvOmZpZWxkXCI6IFByZXBhcmVkU3RhdGVtZW50S2V5cy5HUk9VUF9PRixcbiAgICAgICAgfTtcbiAgICAgICAgY29uc3Qgc3RhdGVtZW50S2V5ID0gc3RhdGVtZW50Um91dGVzW25vcm1hbGl6ZWRQYXRoXTtcbiAgICAgICAgaWYgKHN0YXRlbWVudEtleSAmJiBtZXRob2QgPT09IFwiR0VUXCIpIHtcbiAgICAgICAgICAgIHJldHVybiBGcm9tTW9kZWxDb250cm9sbGVyLmNyZWF0ZVJlZ2lzdHJhdGlvbihGcm9tTW9kZWxDb250cm9sbGVyLnN0YXRlbWVudE1ldGhvZE5hbWUobm9ybWFsaXplZFBhdGgpLCBoYW5kbGVyLCBGcm9tTW9kZWxDb250cm9sbGVyLnN0YXRlbWVudFNob3J0Y3V0RGVjb3JhdG9ycyhNb2RlbENvbnN0ciwgbW9kZWxDbGF6ek5hbWUsIG5vcm1hbGl6ZWRQYXRoLCBzdGF0ZW1lbnRLZXkpLCBGcm9tTW9kZWxDb250cm9sbGVyLnN0YXRlbWVudFNob3J0Y3V0UGFyYW1zKG5vcm1hbGl6ZWRQYXRoKSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKG1ldGhvZCA9PT0gXCJHRVRcIiAmJiBub3JtYWxpemVkUGF0aC5zdGFydHNXaXRoKFwicXVlcnkvXCIpKSB7XG4gICAgICAgICAgICBjb25zdCBxdWVyeU1ldGhvZCA9IG5vcm1hbGl6ZWRQYXRoLnJlcGxhY2UoL15xdWVyeVxcLy8sIFwiXCIpLnNwbGl0KFwiL1wiKVswXTtcbiAgICAgICAgICAgIHJldHVybiBGcm9tTW9kZWxDb250cm9sbGVyLmNyZWF0ZVJlZ2lzdHJhdGlvbihxdWVyeU1ldGhvZCwgaGFuZGxlciwgRnJvbU1vZGVsQ29udHJvbGxlci5nZXRRdWVyeURlY29yYXRvcnMocXVlcnlNZXRob2QsIG5vcm1hbGl6ZWRQYXRoLCBcIkdFVFwiLCB0cnVlKSwgRnJvbU1vZGVsQ29udHJvbGxlci5jb21wbGV4UXVlcnlQYXJhbXMobm9ybWFsaXplZFBhdGgpKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBwYXRoU2VnbWVudHMgPSBub3JtYWxpemVkUGF0aC5zcGxpdChcIi9cIikuZmlsdGVyKEJvb2xlYW4pO1xuICAgICAgICBjb25zdCBrbm93blByZWZpeGVzID0gbmV3IFNldChbXG4gICAgICAgICAgICBcImxpc3RCeVwiLFxuICAgICAgICAgICAgXCJmaW5kQnlcIixcbiAgICAgICAgICAgIFwiZmluZEJ5UGFnaW5hdGVcIixcbiAgICAgICAgICAgIFwiZmluZE9uZUJ5XCIsXG4gICAgICAgICAgICBcInBhZ2luYXRlQnlcIixcbiAgICAgICAgICAgIFwiZmluZFwiLFxuICAgICAgICAgICAgXCJwYWdlXCIsXG4gICAgICAgICAgICBcImNvdW50T2ZcIixcbiAgICAgICAgICAgIFwibWF4T2ZcIixcbiAgICAgICAgICAgIFwibWluT2ZcIixcbiAgICAgICAgICAgIFwiYXZnT2ZcIixcbiAgICAgICAgICAgIFwic3VtT2ZcIixcbiAgICAgICAgICAgIFwiZGlzdGluY3RPZlwiLFxuICAgICAgICAgICAgXCJncm91cE9mXCIsXG4gICAgICAgICAgICBcInN0YXRlbWVudFwiLFxuICAgICAgICAgICAgXCJidWxrXCIsXG4gICAgICAgICAgICBcInF1ZXJ5XCIsXG4gICAgICAgIF0pO1xuICAgICAgICBpZiAocGF0aFNlZ21lbnRzLmxlbmd0aCA+IDAgJiZcbiAgICAgICAgICAgICFub3JtYWxpemVkUGF0aC5zdGFydHNXaXRoKFwicXVlcnkvXCIpICYmXG4gICAgICAgICAgICAhbm9ybWFsaXplZFBhdGguc3RhcnRzV2l0aChcInN0YXRlbWVudC9cIikgJiZcbiAgICAgICAgICAgICFrbm93blByZWZpeGVzLmhhcyhwYXRoU2VnbWVudHNbMF0pKSB7XG4gICAgICAgICAgICBjb25zdCBhcGlQYXRoUGFyYW1zID0gcGF0aFNlZ21lbnRzXG4gICAgICAgICAgICAgICAgLmZpbHRlcigocykgPT4gcy5zdGFydHNXaXRoKFwiOlwiKSlcbiAgICAgICAgICAgICAgICAubWFwKChzKSA9PiBzLnNsaWNlKDEpKVxuICAgICAgICAgICAgICAgIC5tYXAoKG5hbWUpID0+ICh7XG4gICAgICAgICAgICAgICAgbmFtZSxcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogYCR7bmFtZX0gcGFyYW1ldGVyIGZvciB0aGUgcXVlcnlgLFxuICAgICAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgICAgICAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgICAgICAgIH0pKTtcbiAgICAgICAgICAgIHJldHVybiBGcm9tTW9kZWxDb250cm9sbGVyLmNyZWF0ZVJlZ2lzdHJhdGlvbihtZXRob2ROYW1lLCBoYW5kbGVyLCBbXG4gICAgICAgICAgICAgICAgLi4uYXBpUGF0aFBhcmFtcy5tYXAoKHApID0+IEFwaVBhcmFtKHApKSxcbiAgICAgICAgICAgICAgICBBcGlPcGVyYXRpb24oeyBzdW1tYXJ5OiBgUmV0cmlldmUgcmVjb3JkcyB1c2luZyBcIiR7bWV0aG9kTmFtZX1cIi5gIH0pLFxuICAgICAgICAgICAgICAgIEFwaU9rUmVzcG9uc2UoeyBkZXNjcmlwdGlvbjogXCJSZXN1bHQgc3VjY2Vzc2Z1bGx5IHJldHJpZXZlZC5cIiB9KSxcbiAgICAgICAgICAgICAgICBBcGlOb0NvbnRlbnRSZXNwb25zZSh7XG4gICAgICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBcIk5vIGNvbnRlbnQgcmV0dXJuZWQgYnkgdGhlIG1ldGhvZC5cIixcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIF0sIEZyb21Nb2RlbENvbnRyb2xsZXIucm91dGVQYXJhbURlY29yYXRvcnMobm9ybWFsaXplZFBhdGgpKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cbiAgICBzdGF0aWMgY3JlYXRlUmVnaXN0cmF0aW9uKG1ldGhvZE5hbWUsIGhhbmRsZXIsIGRlY29yYXRvcnMsIHBhcmFtRGVjb3JhdG9ycykge1xuICAgICAgICByZXR1cm4geyBtZXRob2ROYW1lLCBoYW5kbGVyLCBkZWNvcmF0b3JzLCBwYXJhbURlY29yYXRvcnMgfTtcbiAgICB9XG4gICAgc3RhdGljIHN0YXRlbWVudE1ldGhvZE5hbWUocGF0aCkge1xuICAgICAgICBjb25zdCBmaXJzdFNlZ21lbnQgPSBwYXRoLnNwbGl0KFwiL1wiKVswXTtcbiAgICAgICAgcmV0dXJuIGZpcnN0U2VnbWVudDtcbiAgICB9XG4gICAgc3RhdGljIHN0YXRlbWVudFNob3J0Y3V0UGFyYW1zKHBhdGgpIHtcbiAgICAgICAgY29uc3Qgc2VnbWVudHMgPSBwYXRoLnNwbGl0KFwiL1wiKS5maWx0ZXIoKHMpID0+IHMuc3RhcnRzV2l0aChcIjpcIikpO1xuICAgICAgICBjb25zdCBwYXJhbXMgPSBbXTtcbiAgICAgICAgc2VnbWVudHMuZm9yRWFjaCgoc2VnLCBpKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBuYW1lID0gc2VnLnJlcGxhY2UoXCI6XCIsIFwiXCIpO1xuICAgICAgICAgICAgcGFyYW1zLnB1c2goeyBkZWNvcmF0b3I6IFBhcmFtKG5hbWUpLCBpbmRleDogaSB9KTtcbiAgICAgICAgfSk7XG4gICAgICAgIGlmIChwYXRoLnN0YXJ0c1dpdGgoXCJsaXN0QnkvXCIpIHx8XG4gICAgICAgICAgICBwYXRoLnN0YXJ0c1dpdGgoXCJwYWdpbmF0ZUJ5L1wiKSB8fFxuICAgICAgICAgICAgcGF0aC5zdGFydHNXaXRoKFwiZmluZC9cIikgfHxcbiAgICAgICAgICAgIHBhdGguc3RhcnRzV2l0aChcInBhZ2UvXCIpKSB7XG4gICAgICAgICAgICBwYXJhbXMucHVzaCh7IGRlY29yYXRvcjogRGVjYWZRdWVyeSgpLCBpbmRleDogc2VnbWVudHMubGVuZ3RoIH0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBwYXJhbXM7XG4gICAgfVxuICAgIHN0YXRpYyBjb21wbGV4UXVlcnlQYXJhbXMocGF0aCkge1xuICAgICAgICBjb25zdCBzZWdtZW50cyA9IHBhdGguc3BsaXQoXCIvXCIpLmZpbHRlcigocykgPT4gcy5zdGFydHNXaXRoKFwiOlwiKSk7XG4gICAgICAgIGNvbnN0IHBhcmFtcyA9IFtdO1xuICAgICAgICBzZWdtZW50cy5mb3JFYWNoKChzZWcsIGkpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IG5hbWUgPSBzZWcucmVwbGFjZShcIjpcIiwgXCJcIik7XG4gICAgICAgICAgICBwYXJhbXMucHVzaCh7IGRlY29yYXRvcjogUGFyYW0obmFtZSksIGluZGV4OiBpIH0pO1xuICAgICAgICB9KTtcbiAgICAgICAgaWYgKHBhdGguc3RhcnRzV2l0aChcInF1ZXJ5L1wiKSkge1xuICAgICAgICAgICAgcGFyYW1zLnB1c2goeyBkZWNvcmF0b3I6IERlY2FmUXVlcnkoKSwgaW5kZXg6IHNlZ21lbnRzLmxlbmd0aCB9KTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcGFyYW1zO1xuICAgIH1cbiAgICBzdGF0aWMgY3JlYXRlQ29tcGxleFF1ZXJ5SGFuZGxlcihtZXRob2ROYW1lKSB7XG4gICAgICAgIHJldHVybiBhc3luYyBmdW5jdGlvbiBjb21wbGV4UXVlcnkoLi4uYXJncykge1xuICAgICAgICAgICAgY29uc3QgbG9nID0gdGhpcy5sb2c/LmZvcj8uKGNvbXBsZXhRdWVyeSk7XG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIGlmIChsb2cpXG4gICAgICAgICAgICAgICAgICAgIGxvZy5kZWJ1ZyhgSW52b2tpbmcgY3VzdG9tIHF1ZXJ5IFwiJHttZXRob2ROYW1lfVwiYCk7XG4gICAgICAgICAgICAgICAgY29uc3QgeyBjdHggfSA9IChhd2FpdCB0aGlzLmxvZ0N0eChbXSwgbWV0aG9kTmFtZSwgdHJ1ZSkpLmZvcihjb21wbGV4UXVlcnkpO1xuICAgICAgICAgICAgICAgIGNvbnN0IHBlcnNpc3RlbmNlID0gdGhpcy5wZXJzaXN0ZW5jZShjdHgpO1xuICAgICAgICAgICAgICAgIGNvbnN0IHNwcmVhZEFyZ3MgPSBGcm9tTW9kZWxDb250cm9sbGVyLm5vcm1hbGl6ZVF1ZXJ5QXJncyhhcmdzKTtcbiAgICAgICAgICAgICAgICBpZiAocGVyc2lzdGVuY2U/LnJlcG8gJiZcbiAgICAgICAgICAgICAgICAgICAgdHlwZW9mIHBlcnNpc3RlbmNlLnJlcG9bbWV0aG9kTmFtZV0gPT09IFwiZnVuY3Rpb25cIikge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gcGVyc2lzdGVuY2UucmVwb1ttZXRob2ROYW1lXSguLi5zcHJlYWRBcmdzKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKHR5cGVvZiBwZXJzaXN0ZW5jZVttZXRob2ROYW1lXSA9PT0gXCJmdW5jdGlvblwiKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBwZXJzaXN0ZW5jZVttZXRob2ROYW1lXSguLi5zcHJlYWRBcmdzKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKHBlcnNpc3RlbmNlPy5xdWVyeSAmJiB0eXBlb2YgcGVyc2lzdGVuY2UucXVlcnkgPT09IFwiZnVuY3Rpb25cIikge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gcGVyc2lzdGVuY2UucXVlcnkobWV0aG9kTmFtZSwgLi4uc3ByZWFkQXJncyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgcGVyc2lzdGVuY2Uuc3RhdGVtZW50ID09PSBcImZ1bmN0aW9uXCIpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHBlcnNpc3RlbmNlLnN0YXRlbWVudChtZXRob2ROYW1lLCAuLi5zcHJlYWRBcmdzLCBjdHgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihgUGVyc2lzdGVuY2UgbWV0aG9kIFwiJHttZXRob2ROYW1lfVwiIG5vdCBmb3VuZCBvbiAke3BlcnNpc3RlbmNlPy5jb25zdHJ1Y3Rvcj8ubmFtZX1gKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNhdGNoIChlKSB7XG4gICAgICAgICAgICAgICAgaWYgKGxvZylcbiAgICAgICAgICAgICAgICAgICAgbG9nLmVycm9yKGBDdXN0b20gcXVlcnkgXCIke21ldGhvZE5hbWV9XCIgZmFpbGVkYCwgZSk7XG4gICAgICAgICAgICAgICAgdGhyb3cgRnJvbU1vZGVsQ29udHJvbGxlci50b0RlY2FmRXJyb3IoZSwgYEN1c3RvbSBxdWVyeSBcIiR7bWV0aG9kTmFtZX1cIiBmYWlsZWRgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICB9XG4gICAgc3RhdGljIGV4dHJhY3RRdWVyeUFyZ3MoYXJncykge1xuICAgICAgICBpZiAoYXJncy5sZW5ndGggPT09IDApXG4gICAgICAgICAgICByZXR1cm4gYXJncztcbiAgICAgICAgY29uc3QgbGFzdCA9IGFyZ3NbYXJncy5sZW5ndGggLSAxXTtcbiAgICAgICAgaWYgKGxhc3QgJiYgdHlwZW9mIGxhc3QgPT09IFwib2JqZWN0XCIgJiYgIUFycmF5LmlzQXJyYXkobGFzdCkpIHtcbiAgICAgICAgICAgIGNvbnN0IHF1ZXJ5T2JqID0gYXJncy5wb3AoKTtcbiAgICAgICAgICAgIGNvbnN0IGhhc0RpcmVjdGlvbiA9IHF1ZXJ5T2JqLmRpcmVjdGlvbiAhPT0gdW5kZWZpbmVkO1xuICAgICAgICAgICAgY29uc3QgaGFzTGltaXQgPSBxdWVyeU9iai5saW1pdCAhPT0gdW5kZWZpbmVkO1xuICAgICAgICAgICAgY29uc3QgaGFzT2Zmc2V0ID0gcXVlcnlPYmoub2Zmc2V0ICE9PSB1bmRlZmluZWQ7XG4gICAgICAgICAgICBpZiAoIWhhc0RpcmVjdGlvbiAmJiAhaGFzTGltaXQgJiYgIWhhc09mZnNldClcbiAgICAgICAgICAgICAgICByZXR1cm4gYXJncztcbiAgICAgICAgICAgIGNvbnN0IGV4dHJhcyA9IFtdO1xuICAgICAgICAgICAgaWYgKGhhc0RpcmVjdGlvbilcbiAgICAgICAgICAgICAgICBleHRyYXMucHVzaChxdWVyeU9iai5kaXJlY3Rpb24pO1xuICAgICAgICAgICAgZWxzZSBpZiAoaGFzTGltaXQgfHwgaGFzT2Zmc2V0KVxuICAgICAgICAgICAgICAgIGV4dHJhcy5wdXNoKHVuZGVmaW5lZCk7XG4gICAgICAgICAgICBpZiAoaGFzTGltaXQpXG4gICAgICAgICAgICAgICAgZXh0cmFzLnB1c2gocXVlcnlPYmoubGltaXQpO1xuICAgICAgICAgICAgaWYgKGhhc09mZnNldClcbiAgICAgICAgICAgICAgICBleHRyYXMucHVzaChxdWVyeU9iai5vZmZzZXQpO1xuICAgICAgICAgICAgcmV0dXJuIFsuLi5hcmdzLCAuLi5leHRyYXNdO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBhcmdzO1xuICAgIH1cbiAgICBzdGF0aWMgbm9ybWFsaXplUXVlcnlBcmdzKGFyZ3MpIHtcbiAgICAgICAgY29uc3Qgbm9ybWFsaXplZCA9IEZyb21Nb2RlbENvbnRyb2xsZXIuZXh0cmFjdFF1ZXJ5QXJncyhhcmdzKTtcbiAgICAgICAgaWYgKG5vcm1hbGl6ZWQubGVuZ3RoID09PSAwKVxuICAgICAgICAgICAgcmV0dXJuIG5vcm1hbGl6ZWQ7XG4gICAgICAgIGNvbnN0IGxhc3QgPSBub3JtYWxpemVkW25vcm1hbGl6ZWQubGVuZ3RoIC0gMV07XG4gICAgICAgIGlmICghbGFzdCB8fCB0eXBlb2YgbGFzdCAhPT0gXCJvYmplY3RcIiB8fCBBcnJheS5pc0FycmF5KGxhc3QpKSB7XG4gICAgICAgICAgICByZXR1cm4gbm9ybWFsaXplZDtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBxdWVyeU9iaiA9IGxhc3Q7XG4gICAgICAgIGNvbnN0IGhhc1F1ZXJ5RmllbGRzID0gcXVlcnlPYmouZGlyZWN0aW9uICE9PSB1bmRlZmluZWQgfHxcbiAgICAgICAgICAgIHF1ZXJ5T2JqLmxpbWl0ICE9PSB1bmRlZmluZWQgfHxcbiAgICAgICAgICAgIHF1ZXJ5T2JqLm9mZnNldCAhPT0gdW5kZWZpbmVkIHx8XG4gICAgICAgICAgICBxdWVyeU9iai5ib29rbWFyayAhPT0gdW5kZWZpbmVkO1xuICAgICAgICBpZiAoIWhhc1F1ZXJ5RmllbGRzKSB7XG4gICAgICAgICAgICBub3JtYWxpemVkLnBvcCgpO1xuICAgICAgICAgICAgcmV0dXJuIG5vcm1hbGl6ZWQ7XG4gICAgICAgIH1cbiAgICAgICAgbm9ybWFsaXplZC5wb3AoKTtcbiAgICAgICAgaWYgKHF1ZXJ5T2JqLmRpcmVjdGlvbiAhPT0gdW5kZWZpbmVkKVxuICAgICAgICAgICAgbm9ybWFsaXplZC5wdXNoKHF1ZXJ5T2JqLmRpcmVjdGlvbik7XG4gICAgICAgIGlmIChxdWVyeU9iai5saW1pdCAhPT0gdW5kZWZpbmVkKVxuICAgICAgICAgICAgbm9ybWFsaXplZC5wdXNoKHF1ZXJ5T2JqLmxpbWl0KTtcbiAgICAgICAgaWYgKHF1ZXJ5T2JqLm9mZnNldCAhPT0gdW5kZWZpbmVkKVxuICAgICAgICAgICAgbm9ybWFsaXplZC5wdXNoKHF1ZXJ5T2JqLm9mZnNldCk7XG4gICAgICAgIGlmIChxdWVyeU9iai5ib29rbWFyayAhPT0gdW5kZWZpbmVkKVxuICAgICAgICAgICAgbm9ybWFsaXplZC5wdXNoKHF1ZXJ5T2JqLmJvb2ttYXJrKTtcbiAgICAgICAgcmV0dXJuIG5vcm1hbGl6ZWQ7XG4gICAgfVxuICAgIHN0YXRpYyBjcmVhdGVDcmVhdGVEZWNvcmF0b3JzKE1vZGVsQ29uc3RyLCBtb2RlbENsYXp6TmFtZSkge1xuICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgQXBpT3BlcmF0aW9uRnJvbU1vZGVsKE1vZGVsQ29uc3RyLCBcIlBPU1RcIiksXG4gICAgICAgICAgICBBcGlPcGVyYXRpb24oeyBzdW1tYXJ5OiBgQ3JlYXRlIGEgbmV3ICR7bW9kZWxDbGF6ek5hbWV9LmAgfSksXG4gICAgICAgICAgICBBcGlCb2R5KHtcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogYFBheWxvYWQgZm9yICR7bW9kZWxDbGF6ek5hbWV9YCxcbiAgICAgICAgICAgICAgICB0eXBlOiBEdG9Gb3IoT3BlcmF0aW9uS2V5cy5DUkVBVEUsIE1vZGVsQ29uc3RyKSxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgQXBpQ3JlYXRlZFJlc3BvbnNlKHtcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogYCR7bW9kZWxDbGF6ek5hbWV9IGNyZWF0ZWQgc3VjY2Vzc2Z1bGx5LmAsXG4gICAgICAgICAgICAgICAgc2NoZW1hOiB7ICRyZWY6IGdldFNjaGVtYVBhdGgoTW9kZWxDb25zdHIpIH0sXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIEFwaUJhZFJlcXVlc3RSZXNwb25zZSh7IGRlc2NyaXB0aW9uOiBcIlBheWxvYWQgdmFsaWRhdGlvbiBmYWlsZWQuXCIgfSksXG4gICAgICAgICAgICBBcGlVbnByb2Nlc3NhYmxlRW50aXR5UmVzcG9uc2Uoe1xuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBcIlJlcG9zaXRvcnkgcmVqZWN0ZWQgdGhlIHByb3ZpZGVkIHBheWxvYWQuXCIsXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgXTtcbiAgICB9XG4gICAgc3RhdGljIGJ1bGtDcmVhdGVEZWNvcmF0b3JzKE1vZGVsQ29uc3RyLCBtb2RlbENsYXp6TmFtZSkge1xuICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgQXBpT3BlcmF0aW9uRnJvbU1vZGVsKE1vZGVsQ29uc3RyLCBcIlBPU1RcIiwgXCJidWxrXCIpLFxuICAgICAgICAgICAgQXBpT3BlcmF0aW9uKHsgc3VtbWFyeTogYENyZWF0ZSBhIG5ldyAke21vZGVsQ2xhenpOYW1lfS5gIH0pLFxuICAgICAgICAgICAgQXBpQm9keSh7XG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246IGBQYXlsb2FkIGZvciAke21vZGVsQ2xhenpOYW1lfWAsXG4gICAgICAgICAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgICAgICAgICAgIHR5cGU6IFwiYXJyYXlcIixcbiAgICAgICAgICAgICAgICAgICAgaXRlbXM6IHsgJHJlZjogZ2V0U2NoZW1hUGF0aChNb2RlbENvbnN0cikgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBBcGlDcmVhdGVkUmVzcG9uc2Uoe1xuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBgJHttb2RlbENsYXp6TmFtZX0gY3JlYXRlZCBzdWNjZXNzZnVsbHkuYCxcbiAgICAgICAgICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICAgICAgICAgICAgdHlwZTogXCJhcnJheVwiLFxuICAgICAgICAgICAgICAgICAgICBpdGVtczogeyAkcmVmOiBnZXRTY2hlbWFQYXRoKE1vZGVsQ29uc3RyKSB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIEFwaUJhZFJlcXVlc3RSZXNwb25zZSh7IGRlc2NyaXB0aW9uOiBcIlBheWxvYWQgdmFsaWRhdGlvbiBmYWlsZWQuXCIgfSksXG4gICAgICAgICAgICBBcGlVbnByb2Nlc3NhYmxlRW50aXR5UmVzcG9uc2Uoe1xuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBcIlJlcG9zaXRvcnkgcmVqZWN0ZWQgdGhlIHByb3ZpZGVkIHBheWxvYWQuXCIsXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgXTtcbiAgICB9XG4gICAgc3RhdGljIGJ1bGtSZWFkRGVjb3JhdG9ycyhNb2RlbENvbnN0ciwgbW9kZWxDbGF6ek5hbWUpIHtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgIEFwaU9wZXJhdGlvbkZyb21Nb2RlbChNb2RlbENvbnN0ciwgXCJHRVRcIiwgXCJidWxrXCIpLFxuICAgICAgICAgICAgQXBpT3BlcmF0aW9uKHsgc3VtbWFyeTogYFJldHJpZXZlICR7bW9kZWxDbGF6ek5hbWV9IHJlY29yZHMgYnkgaWRzLmAgfSksXG4gICAgICAgICAgICBBcGlRdWVyeSh7IG5hbWU6IFwiaWRzXCIsIHJlcXVpcmVkOiB0cnVlLCB0eXBlOiBcImFycmF5XCIgfSksXG4gICAgICAgICAgICBBcGlPa1Jlc3BvbnNlKHtcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogYCR7bW9kZWxDbGF6ek5hbWV9IHJldHJpZXZlZCBzdWNjZXNzZnVsbHkuYCxcbiAgICAgICAgICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICAgICAgICAgICAgdHlwZTogXCJhcnJheVwiLFxuICAgICAgICAgICAgICAgICAgICBpdGVtczogeyAkcmVmOiBnZXRTY2hlbWFQYXRoKE1vZGVsQ29uc3RyKSB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIEFwaU5vdEZvdW5kUmVzcG9uc2Uoe1xuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBgTm8gJHttb2RlbENsYXp6TmFtZX0gcmVjb3JkIG1hdGNoZXMgdGhlIHByb3ZpZGVkIGlkZW50aWZpZXIuYCxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICBdO1xuICAgIH1cbiAgICBzdGF0aWMgYnVsa1VwZGF0ZURlY29yYXRvcnMoTW9kZWxDb25zdHIsIG1vZGVsQ2xhenpOYW1lLCBhcGlQcm9wZXJ0aWVzKSB7XG4gICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICBBcGlPcGVyYXRpb25Gcm9tTW9kZWwoTW9kZWxDb25zdHIsIFwiUFVUXCIsIFwiYnVsa1wiKSxcbiAgICAgICAgICAgIEFwaVBhcmFtc0Zyb21Nb2RlbChhcGlQcm9wZXJ0aWVzKSxcbiAgICAgICAgICAgIEFwaU9wZXJhdGlvbih7XG4gICAgICAgICAgICAgICAgc3VtbWFyeTogYFJlcGxhY2UgZXhpc3RpbmcgJHttb2RlbENsYXp6TmFtZX0gcmVjb3JkcyB3aXRoIG5ldyBwYXlsb2Fkcy5gLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBBcGlCb2R5KHtcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogYFBheWxvYWQgZm9yIHJlcGxhY2luZyBleGlzdGluZyByZWNvcmRzIG9mICR7bW9kZWxDbGF6ek5hbWV9YCxcbiAgICAgICAgICAgICAgICBzY2hlbWE6IHtcbiAgICAgICAgICAgICAgICAgICAgdHlwZTogXCJhcnJheVwiLFxuICAgICAgICAgICAgICAgICAgICAkcmVmOiBnZXRTY2hlbWFQYXRoKER0b0ZvcihPcGVyYXRpb25LZXlzLlVQREFURSwgTW9kZWxDb25zdHIpKSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBBcGlPa1Jlc3BvbnNlKHtcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogYCR7bW9kZWxDbGF6ek5hbWV9IHVwZGF0ZWQgc3VjY2Vzc2Z1bGx5LmAsXG4gICAgICAgICAgICAgICAgc2NoZW1hOiB7XG4gICAgICAgICAgICAgICAgICAgIHR5cGU6IFwiYXJyYXlcIixcbiAgICAgICAgICAgICAgICAgICAgaXRlbXM6IHsgJHJlZjogZ2V0U2NoZW1hUGF0aChNb2RlbENvbnN0cikgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBBcGlOb3RGb3VuZFJlc3BvbnNlKHtcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogYE5vICR7bW9kZWxDbGF6ek5hbWV9IHJlY29yZCBtYXRjaGVzIHRoZSBwcm92aWRlZCBpZGVudGlmaWVyLmAsXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIEFwaUJhZFJlcXVlc3RSZXNwb25zZSh7IGRlc2NyaXB0aW9uOiBcIlBheWxvYWQgdmFsaWRhdGlvbiBmYWlsZWQuXCIgfSksXG4gICAgICAgIF07XG4gICAgfVxuICAgIHN0YXRpYyBidWxrRGVsZXRlRGVjb3JhdG9ycyhNb2RlbENvbnN0ciwgbW9kZWxDbGF6ek5hbWUsIGFwaVByb3BlcnRpZXMpIHtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgIEFwaU9wZXJhdGlvbkZyb21Nb2RlbChNb2RlbENvbnN0ciwgXCJERUxFVEVcIiwgXCJidWxrXCIpLFxuICAgICAgICAgICAgQXBpUGFyYW1zRnJvbU1vZGVsKGFwaVByb3BlcnRpZXMpLFxuICAgICAgICAgICAgQXBpT3BlcmF0aW9uKHsgc3VtbWFyeTogYERlbGV0ZSAke21vZGVsQ2xhenpOYW1lfSByZWNvcmRzIGJ5IGlkcy5gIH0pLFxuICAgICAgICAgICAgQXBpUXVlcnkoeyBuYW1lOiBcImlkc1wiLCByZXF1aXJlZDogdHJ1ZSwgdHlwZTogXCJhcnJheVwiIH0pLFxuICAgICAgICAgICAgQXBpT2tSZXNwb25zZSh7XG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246IGAke21vZGVsQ2xhenpOYW1lfSBkZWxldGVkIHN1Y2Nlc3NmdWxseS5gLFxuICAgICAgICAgICAgICAgIHNjaGVtYToge1xuICAgICAgICAgICAgICAgICAgICB0eXBlOiBcImFycmF5XCIsXG4gICAgICAgICAgICAgICAgICAgIGl0ZW1zOiB7ICRyZWY6IGdldFNjaGVtYVBhdGgoTW9kZWxDb25zdHIpIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgQXBpTm90Rm91bmRSZXNwb25zZSh7XG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246IGBObyAke21vZGVsQ2xhenpOYW1lfSByZWNvcmQgbWF0Y2hlcyB0aGUgcHJvdmlkZWQgaWRlbnRpZmllci5gLFxuICAgICAgICAgICAgfSksXG4gICAgICAgIF07XG4gICAgfVxuICAgIHN0YXRpYyByZWFkRGVjb3JhdG9ycyhNb2RlbENvbnN0ciwgbW9kZWxDbGF6ek5hbWUsIGFwaVByb3BlcnRpZXMsIHBrUGF0aCkge1xuICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgQXBpT3BlcmF0aW9uRnJvbU1vZGVsKE1vZGVsQ29uc3RyLCBcIkdFVFwiLCBwa1BhdGgpLFxuICAgICAgICAgICAgQXBpUGFyYW1zRnJvbU1vZGVsKGFwaVByb3BlcnRpZXMpLFxuICAgICAgICAgICAgQXBpT3BlcmF0aW9uKHsgc3VtbWFyeTogYFJldHJpZXZlIGEgJHttb2RlbENsYXp6TmFtZX0gcmVjb3JkIGJ5IGlkLmAgfSksXG4gICAgICAgICAgICBBcGlPa1Jlc3BvbnNlKHtcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogYCR7bW9kZWxDbGF6ek5hbWV9IHJldHJpZXZlZCBzdWNjZXNzZnVsbHkuYCxcbiAgICAgICAgICAgICAgICBzY2hlbWE6IHsgJHJlZjogZ2V0U2NoZW1hUGF0aChNb2RlbENvbnN0cikgfSxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgQXBpTm90Rm91bmRSZXNwb25zZSh7XG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246IGBObyAke21vZGVsQ2xhenpOYW1lfSByZWNvcmQgbWF0Y2hlcyB0aGUgcHJvdmlkZWQgaWRlbnRpZmllci5gLFxuICAgICAgICAgICAgfSksXG4gICAgICAgIF07XG4gICAgfVxuICAgIHN0YXRpYyB1cGRhdGVEZWNvcmF0b3JzKE1vZGVsQ29uc3RyLCBtb2RlbENsYXp6TmFtZSwgYXBpUHJvcGVydGllcywgcGtQYXRoKSB7XG4gICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICBBcGlPcGVyYXRpb25Gcm9tTW9kZWwoTW9kZWxDb25zdHIsIFwiUFVUXCIsIHBrUGF0aCksXG4gICAgICAgICAgICBBcGlQYXJhbXNGcm9tTW9kZWwoYXBpUHJvcGVydGllcyksXG4gICAgICAgICAgICBBcGlPcGVyYXRpb24oe1xuICAgICAgICAgICAgICAgIHN1bW1hcnk6IGBSZXBsYWNlIGFuIGV4aXN0aW5nICR7bW9kZWxDbGF6ek5hbWV9IHJlY29yZCB3aXRoIGEgbmV3IHBheWxvYWQuYCxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgQXBpQm9keSh7XG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246IGBQYXlsb2FkIGZvciByZXBsYWNpbmcgYW4gZXhpc3RpbmcgcmVjb3JkIG9mICR7bW9kZWxDbGF6ek5hbWV9YCxcbiAgICAgICAgICAgICAgICB0eXBlOiBEdG9Gb3IoT3BlcmF0aW9uS2V5cy5VUERBVEUsIE1vZGVsQ29uc3RyKSxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgQXBpT2tSZXNwb25zZSh7XG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246IGAke21vZGVsQ2xhenpOYW1lfSB1cGRhdGVkIHN1Y2Nlc3NmdWxseS5gLFxuICAgICAgICAgICAgICAgIHNjaGVtYTogeyAkcmVmOiBnZXRTY2hlbWFQYXRoKE1vZGVsQ29uc3RyKSB9LFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBBcGlOb3RGb3VuZFJlc3BvbnNlKHtcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogYE5vICR7bW9kZWxDbGF6ek5hbWV9IHJlY29yZCBtYXRjaGVzIHRoZSBwcm92aWRlZCBpZGVudGlmaWVyLmAsXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIEFwaUJhZFJlcXVlc3RSZXNwb25zZSh7IGRlc2NyaXB0aW9uOiBcIlBheWxvYWQgdmFsaWRhdGlvbiBmYWlsZWQuXCIgfSksXG4gICAgICAgIF07XG4gICAgfVxuICAgIHN0YXRpYyBkZWxldGVEZWNvcmF0b3JzKE1vZGVsQ29uc3RyLCBtb2RlbENsYXp6TmFtZSwgYXBpUHJvcGVydGllcywgcGtQYXRoKSB7XG4gICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICBBcGlPcGVyYXRpb25Gcm9tTW9kZWwoTW9kZWxDb25zdHIsIFwiREVMRVRFXCIsIHBrUGF0aCksXG4gICAgICAgICAgICBBcGlQYXJhbXNGcm9tTW9kZWwoYXBpUHJvcGVydGllcyksXG4gICAgICAgICAgICBBcGlPcGVyYXRpb24oeyBzdW1tYXJ5OiBgRGVsZXRlIGEgJHttb2RlbENsYXp6TmFtZX0gcmVjb3JkIGJ5IGlkLmAgfSksXG4gICAgICAgICAgICBBcGlPa1Jlc3BvbnNlKHtcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogYCR7bW9kZWxDbGF6ek5hbWV9IGRlbGV0ZWQgc3VjY2Vzc2Z1bGx5LmAsXG4gICAgICAgICAgICAgICAgc2NoZW1hOiB7ICRyZWY6IGdldFNjaGVtYVBhdGgoTW9kZWxDb25zdHIpIH0sXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIEFwaU5vdEZvdW5kUmVzcG9uc2Uoe1xuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBgTm8gJHttb2RlbENsYXp6TmFtZX0gcmVjb3JkIG1hdGNoZXMgdGhlIHByb3ZpZGVkIGlkZW50aWZpZXIuYCxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICBdO1xuICAgIH1cbiAgICBzdGF0aWMgc3RhdGVtZW50RGVjb3JhdG9ycyhNb2RlbENvbnN0ciwgbW9kZWxDbGF6ek5hbWUpIHtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgIEFwaU9wZXJhdGlvbkZyb21Nb2RlbChNb2RlbENvbnN0ciwgXCJHRVRcIiwgXCJzdGF0ZW1lbnQvOm1ldGhvZC8qYXJnc1wiKSxcbiAgICAgICAgICAgIEFwaU9wZXJhdGlvbih7XG4gICAgICAgICAgICAgICAgc3VtbWFyeTogYEV4ZWN1dGVzIGEgcHJlcGFyZWQgc3RhdGVtZW50IG9uICR7bW9kZWxDbGF6ek5hbWV9LmAsXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIEFwaVBhcmFtKHtcbiAgICAgICAgICAgICAgICBuYW1lOiBcIm1ldGhvZFwiLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBcInRoZSBwcmVwYXJlZCBzdGF0ZW1lbnQgdG8gZXhlY3V0ZVwiLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBBcGlQYXJhbSh7XG4gICAgICAgICAgICAgICAgbmFtZTogXCJhcmdzXCIsXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246IFwiY29uY2F0ZW5hdGVkIGxpc3Qgb2YgYXJndW1lbnRzIHRoZSBwcmVwYXJlZCBzdGF0ZW1lbnQgY2FuIGFjY2VwdFwiLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBBcGlRdWVyeSh7XG4gICAgICAgICAgICAgICAgbmFtZTogXCJkaXJlY3Rpb25cIixcbiAgICAgICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICBlbnVtOiBPcmRlckRpcmVjdGlvbixcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogXCJ0aGUgc29ydCBvcmRlciB3aGVuIGFwcGxpY2FibGVcIixcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgQXBpUXVlcnkoe1xuICAgICAgICAgICAgICAgIG5hbWU6IFwibGltaXRcIixcbiAgICAgICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogXCJsaW1pdCBvciBwYWdlIHNpemUgd2hlbiBhcHBsaWNhYmxlXCIsXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIEFwaVF1ZXJ5KHtcbiAgICAgICAgICAgICAgICBuYW1lOiBcIm9mZnNldFwiLFxuICAgICAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBcIm9mZnNldCBvciBib29rbWFyayB3aGVuIGFwcGxpY2FibGVcIixcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgQXBpT2tSZXNwb25zZSh7IGRlc2NyaXB0aW9uOiBgJHttb2RlbENsYXp6TmFtZX0gbGlzdGVkIGZvdW5kLmAgfSksXG4gICAgICAgICAgICBBcGlOb3RGb3VuZFJlc3BvbnNlKHtcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogYE5vICR7bW9kZWxDbGF6ek5hbWV9IHJlY29yZCBtYXRjaGVzIHRoZSBwcm92aWRlZCBpZGVudGlmaWVyLmAsXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgXTtcbiAgICB9XG4gICAgc3RhdGljIHN0YXRlbWVudFNob3J0Y3V0RGVjb3JhdG9ycyhNb2RlbENvbnN0ciwgbW9kZWxDbGF6ek5hbWUsIHBhdGgsIHN0YXRlbWVudEtleSkge1xuICAgICAgICBjb25zdCBiYXNlID0gW1xuICAgICAgICAgICAgQXBpT3BlcmF0aW9uRnJvbU1vZGVsKE1vZGVsQ29uc3RyLCBcIkdFVFwiLCBwYXRoKSxcbiAgICAgICAgICAgIEFwaU9wZXJhdGlvbih7IHN1bW1hcnk6IGBSZXRyaWV2ZSAke21vZGVsQ2xhenpOYW1lfSByZWNvcmRzLmAgfSksXG4gICAgICAgICAgICBBcGlPa1Jlc3BvbnNlKHtcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogYCR7bW9kZWxDbGF6ek5hbWV9IHJldHJpZXZlZCBzdWNjZXNzZnVsbHkuYCxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICBdO1xuICAgICAgICBjb25zdCBzZWdtZW50cyA9IHBhdGguc3BsaXQoXCIvXCIpLmZpbHRlcigocykgPT4gcy5zdGFydHNXaXRoKFwiOlwiKSk7XG4gICAgICAgIHNlZ21lbnRzLmZvckVhY2goKHNlZykgPT4ge1xuICAgICAgICAgICAgY29uc3QgbmFtZSA9IHNlZy5yZXBsYWNlKFwiOlwiLCBcIlwiKTtcbiAgICAgICAgICAgIGJhc2UucHVzaChBcGlQYXJhbSh7IG5hbWUsIGRlc2NyaXB0aW9uOiBgVGhlICR7bmFtZX0gcGFyYW1ldGVyYCB9KSk7XG4gICAgICAgIH0pO1xuICAgICAgICBpZiAocGF0aC5zdGFydHNXaXRoKFwibGlzdEJ5L1wiKSB8fFxuICAgICAgICAgICAgcGF0aC5zdGFydHNXaXRoKFwicGFnaW5hdGVCeS9cIikgfHxcbiAgICAgICAgICAgIHBhdGguc3RhcnRzV2l0aChcImZpbmQvXCIpIHx8XG4gICAgICAgICAgICBwYXRoLnN0YXJ0c1dpdGgoXCJwYWdlL1wiKSkge1xuICAgICAgICAgICAgYmFzZS5wdXNoKEFwaVF1ZXJ5KHtcbiAgICAgICAgICAgICAgICBuYW1lOiBcImRpcmVjdGlvblwiLFxuICAgICAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgICAgICAgICAgIGVudW06IE9yZGVyRGlyZWN0aW9uLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBcInRoZSBzb3J0IG9yZGVyXCIsXG4gICAgICAgICAgICB9KSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHBhdGguc3RhcnRzV2l0aChcInBhZ2luYXRlQnkvXCIpIHx8IHBhdGguc3RhcnRzV2l0aChcInBhZ2UvXCIpKSB7XG4gICAgICAgICAgICBiYXNlLnB1c2goQXBpUXVlcnkoeyBuYW1lOiBcImxpbWl0XCIsIHJlcXVpcmVkOiBmYWxzZSwgZGVzY3JpcHRpb246IFwicGFnZSBzaXplXCIgfSksIEFwaVF1ZXJ5KHtcbiAgICAgICAgICAgICAgICBuYW1lOiBcIm9mZnNldFwiLFxuICAgICAgICAgICAgICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogXCJwYWdlIG51bWJlclwiLFxuICAgICAgICAgICAgfSksIEFwaVF1ZXJ5KHtcbiAgICAgICAgICAgICAgICBuYW1lOiBcImJvb2ttYXJrXCIsXG4gICAgICAgICAgICAgICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBcImJvb2ttYXJrIGZvciBjdXJzb3IgcGFnaW5hdGlvblwiLFxuICAgICAgICAgICAgfSkpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChwYXRoLnN0YXJ0c1dpdGgoXCJmaW5kT25lQnkvXCIpIHx8IHBhdGguc3RhcnRzV2l0aChcImZpbmRCeS9cIikpIHtcbiAgICAgICAgICAgIGJhc2UucHVzaChBcGlOb3RGb3VuZFJlc3BvbnNlKHtcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogYE5vICR7bW9kZWxDbGF6ek5hbWV9IHJlY29yZCBtYXRjaGVzIHRoZSBwcm92aWRlZCBpZGVudGlmaWVyLmAsXG4gICAgICAgICAgICB9KSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHN0YXRlbWVudEtleSA9PT0gUHJlcGFyZWRTdGF0ZW1lbnRLZXlzLkNPVU5UX09GIHx8XG4gICAgICAgICAgICBzdGF0ZW1lbnRLZXkgPT09IFByZXBhcmVkU3RhdGVtZW50S2V5cy5BVkdfT0YgfHxcbiAgICAgICAgICAgIHN0YXRlbWVudEtleSA9PT0gUHJlcGFyZWRTdGF0ZW1lbnRLZXlzLlNVTV9PRikge1xuICAgICAgICAgICAgYmFzZS5wdXNoKEFwaU9rUmVzcG9uc2Uoe1xuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBgUmVzdWx0IGZvciAke21vZGVsQ2xhenpOYW1lfS5gLFxuICAgICAgICAgICAgICAgIHR5cGU6IE51bWJlcixcbiAgICAgICAgICAgIH0pKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoc3RhdGVtZW50S2V5ID09PSBQcmVwYXJlZFN0YXRlbWVudEtleXMuRElTVElOQ1RfT0YpIHtcbiAgICAgICAgICAgIGJhc2UucHVzaChBcGlPa1Jlc3BvbnNlKHtcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogYERpc3RpbmN0IHZhbHVlcyBmb3IgJHttb2RlbENsYXp6TmFtZX0uYCxcbiAgICAgICAgICAgICAgICB0eXBlOiBbU3RyaW5nXSxcbiAgICAgICAgICAgIH0pKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gYmFzZTtcbiAgICB9XG4gICAgc3RhdGljIGdldFF1ZXJ5RGVjb3JhdG9ycyhtZXRob2ROYW1lLCByb3V0ZVBhdGgsIGh0dHBWZXJiLCBpbmNsdWRlUXVlcnlQYXJhbXMgPSBmYWxzZSkge1xuICAgICAgICBjb25zdCBleHRyYWN0UGF0aFBhcmFtcyA9IChwKSA9PiBwXG4gICAgICAgICAgICAuc3BsaXQoXCIvXCIpXG4gICAgICAgICAgICAuZmlsdGVyKChzKSA9PiBzLnN0YXJ0c1dpdGgoXCI6XCIpKVxuICAgICAgICAgICAgLm1hcCgocykgPT4gcy5zbGljZSgxKSk7XG4gICAgICAgIGNvbnN0IGFwaVBhdGhQYXJhbXMgPSBleHRyYWN0UGF0aFBhcmFtcyhyb3V0ZVBhdGgpLm1hcCgobmFtZSkgPT4gKHtcbiAgICAgICAgICAgIG5hbWUsXG4gICAgICAgICAgICBkZXNjcmlwdGlvbjogYCR7bmFtZX0gcGFyYW1ldGVyIGZvciB0aGUgcXVlcnlgLFxuICAgICAgICAgICAgcmVxdWlyZWQ6IHRydWUsXG4gICAgICAgICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICAgIH0pKTtcbiAgICAgICAgY29uc3QgZGVjb3JhdG9ycyA9IFtcbiAgICAgICAgICAgIC4uLmFwaVBhdGhQYXJhbXMubWFwKChwKSA9PiBBcGlQYXJhbShwKSksXG4gICAgICAgICAgICBBcGlPcGVyYXRpb24oeyBzdW1tYXJ5OiBgUmV0cmlldmUgcmVjb3JkcyB1c2luZyBcIiR7bWV0aG9kTmFtZX1cIi5gIH0pLFxuICAgICAgICAgICAgQXBpT2tSZXNwb25zZSh7IGRlc2NyaXB0aW9uOiBcIlJlc3VsdCBzdWNjZXNzZnVsbHkgcmV0cmlldmVkLlwiIH0pLFxuICAgICAgICAgICAgQXBpTm9Db250ZW50UmVzcG9uc2Uoe1xuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBcIk5vIGNvbnRlbnQgcmV0dXJuZWQgYnkgdGhlIG1ldGhvZC5cIixcbiAgICAgICAgICAgIH0pLFxuICAgICAgICBdO1xuICAgICAgICBpZiAoaHR0cFZlcmIgPT09IFwiR0VUXCIgJiYgaW5jbHVkZVF1ZXJ5UGFyYW1zKSB7XG4gICAgICAgICAgICBkZWNvcmF0b3JzLnB1c2goQXBpUXVlcnkoe1xuICAgICAgICAgICAgICAgIG5hbWU6IFwiZGlyZWN0aW9uXCIsXG4gICAgICAgICAgICAgICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGVudW06IE9yZGVyRGlyZWN0aW9uLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBcInRoZSBzb3J0IG9yZGVyIHdoZW4gYXBwbGljYWJsZVwiLFxuICAgICAgICAgICAgfSksIEFwaVF1ZXJ5KHtcbiAgICAgICAgICAgICAgICBuYW1lOiBcImxpbWl0XCIsXG4gICAgICAgICAgICAgICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBcImxpbWl0IG9yIHBhZ2Ugc2l6ZVwiLFxuICAgICAgICAgICAgfSksIEFwaVF1ZXJ5KHtcbiAgICAgICAgICAgICAgICBuYW1lOiBcIm9mZnNldFwiLFxuICAgICAgICAgICAgICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogXCJvZmZzZXQgb3IgYm9va21hcmtcIixcbiAgICAgICAgICAgIH0pKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZGVjb3JhdG9ycztcbiAgICB9XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247YmFzZTY0LGV5SjJaWEp6YVc5dUlqb3pMQ0ptYVd4bElqb2lSbkp2YlUxdlpHVnNRMjl1ZEhKdmJHeGxjaTVxY3lJc0luTnZkWEpqWlZKdmIzUWlPaUlpTENKemIzVnlZMlZ6SWpwYklpNHVMeTR1THk0dUwzTnlZeTlrWldOaFppMXRiMlJsYkM5R2NtOXRUVzlrWld4RGIyNTBjbTlzYkdWeUxuUnpJbDBzSW01aGJXVnpJanBiWFN3aWJXRndjR2x1WjNNaU9pSTdPenM3T3pzN096czdRVUZCUVN4UFFVRlBMRVZCUTB3c1ZVRkJWU3hGUVVOV0xFdEJRVXNzUlVGRFRDeExRVUZMTEVWQlEwd3NVVUZCVVN4RlFVTlNMRmRCUVZjc1IwRkRXaXhOUVVGTkxHZENRVUZuUWl4RFFVRkRPMEZCUTNoQ0xFOUJRVThzUlVGRFRDeHhRa0ZCY1VJc1JVRkRja0lzVDBGQlR5eEZRVU5RTEd0Q1FVRnJRaXhGUVVOc1FpeGpRVUZqTEVWQlEyUXNiMEpCUVc5Q0xFVkJRM0JDTEcxQ1FVRnRRaXhGUVVOdVFpeGhRVUZoTEVWQlEySXNXVUZCV1N4RlFVTmFMRkZCUVZFc1JVRkRVaXhSUVVGUkxFVkJRMUlzVDBGQlR5eEZRVU5RTERoQ1FVRTRRaXhGUVVNNVFpeGhRVUZoTEVkQlEyUXNUVUZCVFN4cFFrRkJhVUlzUTBGQlF6dEJRVU42UWl4UFFVRlBMRVZCUTB3c1dVRkJXU3hGUVVOYUxHTkJRV01zUlVGRFpDeGxRVUZsTEVWQlEyWXNjVUpCUVhGQ0xFVkJSWEpDTEZWQlFWVXNSVUZEVml4UFFVRlBMRWRCUTFJc1RVRkJUU3huUWtGQlowSXNRMEZCUXp0QlFVTjRRaXhQUVVGUExFVkJRVVVzUzBGQlN5eEZRVUZ2UWl4TlFVRk5MR2REUVVGblF5eERRVUZETzBGQlEzcEZMRTlCUVU4c1JVRkJSU3hQUVVGUExFVkJRVVVzVjBGQlZ5eEZRVUZGTEUxQlFVMHNiVUpCUVcxQ0xFTkJRVU03UVVGRGVrUXNUMEZCVHl4RlFVTk1MRTFCUVUwc1JVRkRUaXhUUVVGVExFVkJRMVFzWVVGQllTeEZRVU5pTEdGQlFXRXNSMEZEWkN4TlFVRk5MSGxDUVVGNVFpeERRVUZETzBGQlEycERMRTlCUVU4c1JVRkJaU3hSUVVGUkxFVkJRVVVzVFVGQlRTeHpRa0ZCYzBJc1EwRkJRenRCUVVNM1JDeFBRVUZQTEVWQlEwd3NjVUpCUVhGQ0xFVkJRM0pDTEd0Q1FVRnJRaXhGUVVWc1FpeFRRVUZUTEVWQlExUXNWVUZCVlN4SFFVTllMRGhDUVVGeFFqdEJRVU4wUWl4UFFVRlBMRVZCUVVVc2JVSkJRVzFDTEVWQlFVVXNPRUpCUVRKQ08wRkJSWHBFTEU5QlFVOHNSVUZCUlN4dFFrRkJiVUlzUlVGQlJTdzRRa0ZCYlVJN1FVRkRha1FzVDBGQlR5eEZRVUZGTEhWQ1FVRjFRaXhGUVVGRkxGZEJRVmNzUlVGQlJTd3dRa0ZCY1VJN1FVRkRjRVVzVDBGQlR5eEZRVU5NTEhsQ1FVRjVRaXhGUVVONlFpeHZRa0ZCYjBJc1IwRkRja0lzSzBKQlFUQkNPMEZCUXpOQ0xFOUJRVThzUlVGRFRDeEpRVUZKTEVWQlEwb3NUVUZCVFN4RlFVTk9MR2xDUVVGcFFpeEZRVU5xUWl4WlFVRlpMRWRCUTJJc1owTkJRVEpDTzBGQlJUVkNMRTlCUVU4c1JVRkJSU3h2UWtGQmIwSXNSVUZCUlN3MFFrRkJkVUk3UVVGRGRFUXNUMEZCVHl4RlFVRkZMRTFCUVUwc1JVRkJSU3d5UTBGQmMwTTdRVUZEZGtRc2FVTkJRWE5DTzBGQlEzUkNMRTlCUVU4c1JVRkRUQ3h6UWtGQmMwSXNSMEZKZGtJc1RVRkJUU3d5UWtGQk1rSXNRMEZCUXp0QlFVVnVReXhOUVVGTkxFOUJRVThzYlVKQlFXMUNPMkZCUTA0c1VVRkJSeXhIUVVGSExFOUJRVThzUTBGQlF5eEhRVUZITEVOQlFVTXNiVUpCUVcxQ0xFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTTdTVUZGTlVRc1RVRkJUU3hEUVVGRExGbEJRVmtzUTBGRGVrSXNTMEZCWXl4RlFVTmtMR1ZCUVhWQ08xRkJSWFpDTEVsQlFVa3NTMEZCU3l4WlFVRlpMRk5CUVZNN1dVRkJSU3hQUVVGUExFdEJRVXNzUTBGQlF6dFJRVU0zUXl4UFFVRlBMRWxCUVVrc1lVRkJZU3hEUVVOMFFpeExRVUZMTEZsQlFWa3NTMEZCU3p0WlFVTndRaXhEUVVGRExFTkJRVU1zUjBGQlJ5eGxRVUZsTEV0QlFVc3NTMEZCU3l4RFFVRkRMRTlCUVU4c1JVRkJSVHRaUVVONFF5eERRVUZETEVOQlFVTXNaVUZCWlN4RFFVTndRaXhEUVVGRE8wbEJRMG9zUTBGQlF6dEpRVVZFTEUxQlFVMHNRMEZCUXl4alFVRmpMRU5CUTI1Q0xGVkJRU3RDTzFGQlJTOUNMRWxCUVVrc1EwRkJRenRaUVVOSUxFOUJRVThzVDBGQlR5eERRVUZETEVkQlFVY3NRMEZCYTBJc1ZVRkJWU3hEUVVGRExFTkJRVU03VVVGRGJFUXNRMEZCUXp0UlFVRkRMRTlCUVU4c1EwRkJWU3hGUVVGRkxFTkJRVU03V1VGRGNFSXNTVUZCU1N4RFFVRkRPMmRDUVVOSUxFOUJRVThzV1VGQldTeERRVUZETEZWQlFWVXNRMEZCUXl4VlFVRlZMRU5CUVc5Q0xFTkJRVU03V1VGRGFFVXNRMEZCUXp0WlFVRkRMRTlCUVU4c1JVRkJWeXhGUVVGRkxFTkJRVU03WjBKQlEzSkNMRTlCUVU4c1ZVRkJWU3hEUVVGRExGRkJRVkVzUTBGQlF5eFZRVUZWTEVOQlFWa3NRMEZCUXp0WlFVTndSQ3hEUVVGRE8xRkJRMGdzUTBGQlF6dEpRVU5JTEVOQlFVTTdTVUZGUkN4TlFVRk5MRU5CUVVNc0swSkJRU3RDTEVOQlEzQkRMRmRCUVhORExFVkJRM1JETEZOQlFXbENMR1ZCUVdVc1EwRkJReXhMUVVGTE8xRkJSWFJETEUxQlFVMHNTVUZCU1N4SFFVTlNMRmRCUVZjc1dVRkJXU3haUVVGWkxFTkJRVU1zUTBGQlF5eERRVUZETEZkQlFWY3NRMEZCUXl4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRExGZEJRVmNzUTBGQlF6dFJRVU4yUlN4TlFVRk5MRmxCUVZrc1IwRkRhRUlzVVVGQlVTeERRVUZETEVkQlFVY3NRMEZEVml4SlFVRkpMRU5CUVVNc1YwRkJNRUlzUlVGREwwSXNVVUZCVVN4RFFVRkRMRWRCUVVjc1EwRkJReXhsUVVGbExFTkJRVU1zUzBGQlN5eERRVUZETEVOQlEzQkRMRWxCUVVrc1JVRkJSU3hEUVVGRE8xRkJSVllzVFVGQlRTeFpRVUZaTEVkQlEyaENMRkZCUVZFc1EwRkJReXhIUVVGSExFTkJRMVlzVjBGQlZ5eERRVUZETEZkQlFUQkNMRVZCUTNSRExGRkJRVkVzUTBGQlF5eEhRVUZITEVOQlFVTXNWMEZCVnl4RFFVRkRMRU5CUXpGQ0xFbEJRVWtzUlVGQlJTeERRVUZETzFGQlJWWXNUVUZCVFN4bFFVRm5RaXhUUVVGUkxHOUNRVUYxUWp0WlFVTnVSQ3hKUVVGaExFdEJRVXM3WjBKQlEyaENMRTFCUVUwc1NVRkJTU3hoUVVGaExFTkJRVU1zZVVKQlFYbENMRU5CUVVNc1EwRkJRenRaUVVOeVJDeERRVUZETzFsQlEwUXNXVUZCV1N4aFFVRnJReXhGUVVGRkxFbEJRVms3WjBKQlF6RkVMRXRCUVVzc1EwRkJReXhoUVVGaExFVkJRVVVzU1VGQlNTeERRVUZETEVOQlFVTTdXVUZETjBJc1EwRkJRenRUUVVOR08xRkJSVVFzUzBGQlN5eE5RVUZOTEVOQlFVTXNWVUZCVlN4RlFVRkZMRTFCUVUwc1EwRkJReXhKUVVGSkxFMUJRVTBzUTBGQlF5eFBRVUZQTEVOQlFVTXNXVUZCV1N4RFFVRkRMRVZCUVVVc1EwRkJRenRaUVVOb1JTeE5RVUZOTEZOQlFWTXNSMEZCUnl4RFFVRkRMRTFCUVUwc1EwRkJReXhKUVVGSkxFTkJRVU1zVDBGQlR5eERRVUZETEZsQlFWa3NSVUZCUlN4RlFVRkZMRU5CUVVNc1EwRkJRenRwUWtGRGRFUXNUVUZCVFN4RFFVRkRMRU5CUVVNc1QwRkJaU3hGUVVGRkxFVkJRVVVzUTBGQlF5eFBRVUZQTEVsQlFVa3NUMEZCVHl4RFFVRkRMRWxCUVVrc1JVRkJSU3hEUVVGRE8ybENRVU4wUkN4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU03V1VGRllpeE5RVUZOTEU5QlFVOHNSMEZCUnl4dFFrRkJiVUlzUTBGQlF5eDVRa0ZCZVVJc1EwRkRNMFFzVlVGQlZTeERRVU5LTEVOQlFVTTdXVUZEVkN4dFFrRkJiVUlzUTBGQlF5eFpRVUZaTEVOQlFVTXNaVUZCWlN4RlFVRkZMRlZCUVZVc1JVRkJSU3hQUVVGUExFTkJRVU1zUTBGQlF6dFpRVVYyUlN4TlFVRk5MR0ZCUVdFc1IwRkJSeXh0UWtGQmJVSXNRMEZCUXl4TlFVRk5MRU5CUVVNc1ZVRkJkVUlzUTBGQlF5eERRVU4yUlN4VFFVRlRMRWxCUVVrc1UwRkJVeXhEUVVOMlFpeERRVUZETzFsQlEwWXNUVUZCVFN4VlFVRlZMRWRCUVVjc2JVSkJRVzFDTEVOQlFVTXNhMEpCUVd0Q0xFTkJRM1pFTEZWQlFWVXNSVUZEVml4VFFVRlRMRVZCUTFRc1RVRkJUU3hEUVVGRExGVkJRVlVzUTBGRGJFSXNRMEZCUXp0WlFVTkdMRzFDUVVGdFFpeERRVUZETEdWQlFXVXNRMEZCUXl4bFFVRmxMRVZCUVVVc1ZVRkJWU3hGUVVGRk8yZENRVU12UkN4aFFVRmhPMmRDUVVOaUxFZEJRVWNzVlVGQlZUdGhRVU5rTEVOQlFVTXNRMEZCUXp0UlFVTk1MRU5CUVVNN1VVRkZSQ3hMUVVGTExFMUJRVTBzUTBGQlF5eFZRVUZWTEVWQlFVVXNVMEZCVXl4RFFVRkRMRWxCUVVrc1RVRkJUU3hEUVVGRExFOUJRVThzUTBGQlF5eFpRVUZaTEVOQlFVTXNSVUZCUlN4RFFVRkRPMWxCUTI1RkxFMUJRVTBzVFVGQlRTeEhRVUZITEZOQlFWTXNRMEZCUXl4TlFVRk5MRWxCUVVrc1JVRkJSU3hEUVVGRE8xbEJRM1JETEUxQlFVMHNVMEZCVXl4SFFVRkhMRU5CUVVNc1RVRkJUU3hGUVVGRkxGVkJRVlVzUlVGQlJTeEhRVUZITEUxQlFVMHNRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhEUVVGRExFVkJRVVVzUlVGQlJTeERRVUZETEVsQlFVa3NRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJRenRwUWtGRGJFVXNUVUZCVFN4RFFVRkRMRU5CUVVNc1QwRkJUeXhGUVVGRkxFVkJRVVVzUTBGQlF5eFBRVUZQTEVsQlFVa3NUMEZCVHl4RFFVRkRMRWxCUVVrc1JVRkJSU3hEUVVGRE8ybENRVU01UXl4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU03V1VGRllpeE5RVUZOTEU5QlFVOHNSMEZCUnl4dFFrRkJiVUlzUTBGQlF5eDVRa0ZCZVVJc1EwRkRNMFFzVlVGQlZTeERRVU5LTEVOQlFVTTdXVUZEVkN4dFFrRkJiVUlzUTBGQlF5eFpRVUZaTEVOQlFVTXNaVUZCWlN4RlFVRkZMRlZCUVZVc1JVRkJSU3hQUVVGUExFTkJRVU1zUTBGQlF6dFpRVVYyUlN4TlFVRk5MR0ZCUVdFc1IwRkJSeXh0UWtGQmJVSXNRMEZCUXl4TFFVRnJRaXhEUVVGRExFTkJRek5FTEZOQlFWTXNTVUZCU1N4VFFVRlRMRU5CUTNaQ0xFTkJRVU03V1VGRFJpeE5RVUZOTEZWQlFWVXNSMEZCUnl4dFFrRkJiVUlzUTBGQlF5eHJRa0ZCYTBJc1EwRkRka1FzVlVGQlZTeEZRVU5XTEZOQlFWTXNSVUZEVkN4TFFVRkxMRVZCUTB3c1NVRkJTU3hEUVVOTUxFTkJRVU03V1VGRFJpeHRRa0ZCYlVJc1EwRkJReXhsUVVGbExFTkJRVU1zWlVGQlpTeEZRVUZGTEZWQlFWVXNSVUZCUlR0blFrRkRMMFFzWVVGQllUdG5Ra0ZEWWl4SFFVRkhMRlZCUVZVN1lVRkRaQ3hEUVVGRExFTkJRVU03VVVGRFRDeERRVUZETzFGQlJVUXNUMEZCVHl4bFFVRmxMRU5CUVVNN1NVRkRla0lzUTBGQlF6dEpRVVZOTEVGQlFWQXNUVUZCVFN4RFFVRkRMRTFCUVUwc1EwRkRXQ3hYUVVGblF5eEZRVU5vUXl4eFFrRkJiMFVzUlVGRGNFVXNZMEZCYzBRN1VVRkZkRVFzVFVGQlRTeEhRVUZITEVkQlFVY3NiVUpCUVcxQ0xFTkJRVU1zUjBGQlJ5eERRVUZETEVkQlFVY3NRMEZCUXl4dFFrRkJiVUlzUTBGQlF5eE5RVUZOTEVOQlFVTXNRMEZCUXp0UlFVTndSU3hOUVVGTkxGTkJRVk1zUjBGQlJ5eExRVUZMTEVOQlFVTXNVMEZCVXl4RFFVRkRMRmRCUVZjc1EwRkJReXhEUVVGRE8xRkJReTlETEUxQlFVMHNVMEZCVXl4SFFVRkhMRmRCUVZjc1EwRkJReXhUUVVGVExFTkJRVU1zUTBGQlF6dFJRVU42UXl4TlFVRk5MR05CUVdNc1IwRkJSeXhYUVVGWExFTkJRVU1zU1VGQlNTeERRVUZETzFGQlEzaERMRTFCUVUwc1YwRkJWeXhIUVVGSExHMUNRVUZ0UWl4RFFVRkRMR05CUVdNc1EwRkJReXhYUVVGWExFTkJRVU1zUTBGQlF6dFJRVVZ3UlN3d1JVRkJNRVU3VVVGRE1VVXNOa1ZCUVRaRk8xRkJRemRGTEhsRlFVRjVSVHRSUVVONlJTeE5RVUZOTEd0Q1FVRnJRaXhIUVVOMFFpeFhRVUZYTEZsQlFWa3NXVUZCV1N4RFFVRkRMRU5CUVVNc1EwRkJReXhYUVVGWExFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTXNRMEZCUXl4WFFVRlhMRU5CUVVNN1VVRkZka1VzVFVGQlRTeGxRVUZsTEVkQlFVY3NVVUZCVVN4RFFVRkRMRWRCUVVjc1EwRkRiRU1zVjBGQlZ5eEZRVU5ZTEZGQlFWRXNRMEZCUXl4SFFVRkhMRU5CUVVNc2RVSkJRWFZDTEVOQlFVTXNRMEZEVFN4RFFVRkRPMUZCUXpsRExFMUJRVTBzWTBGQll5eEhRVUZITEhGQ1FVRnhRaXhGUVVGRkxFTkJRVU1zVjBGQlZ5eERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRPMUZCUTJwRkxFMUJRVTBzV1VGQldTeEhRVUZwUXp0WlFVTnFSQ3hIUVVGSExFTkJRVU1zWTBGQll5eEpRVUZKTEVWQlFVVXNRMEZCUXp0WlFVTjZRaXhIUVVGSExFTkJRVU1zWlVGQlpTeEpRVUZKTEVWQlFVVXNRMEZCUXp0WlFVTXhRaXhIUVVGSExFTkJRVU1zWTBGQll5eEpRVUZKTEVWQlFVVXNRMEZCUXp0VFFVTXhRaXhEUVVGRE8xRkJSVVlzVFVGQlRTeHBRa0ZCYVVJc1IwRkJSeXh6UWtGQmMwSXNRMEZCUXl4TlFVRk5MRU5CUTNKRUxGZEJRVmNzUlVGRFdDeHJRa0ZCYTBJc1JVRkRiRUlzV1VGQldTeERRVU5pTEVOQlFVTTdVVUZEUml4TlFVRk5MR0ZCUVdFc1IwRkJTU3hwUWtGQmVVSXNRMEZCUXl4VlFVVndReXhEUVVGRE8xRkJSV1FzVFVGQlRTeEZRVU5LTEV0QlFVc3NSVUZEVEN4aFFVRmhMRVZCUTJJc1NVRkJTU3hGUVVGRkxFMUJRVTBzUjBGRFlpeEhRVUZITEcxQ1FVRnRRaXhEUVVGRExESkNRVUV5UWl4RFFVRkRMRmRCUVZjc1EwRkJReXhEUVVGRE8xRkJSV3BGTEVkQlFVY3NRMEZCUXl4TFFVRkxMRU5CUTFBc2EwTkJRV3RETEdOQlFXTXNVMEZCVXl4aFFVRmhMRVZCUVVVc1RVRkJUU3hKUVVGSkxFTkJRVU1zYVVKQlFXbENMRU5CUTNKSExFTkJRVU03VVVGRlJpeE5RVUZOTEZWQlFWVXNSMEZCTWtJc1dVRkJXU3hEUVVGRExFbEJRVWtzUTBGQlF6dFJRVVUzUkN4VFFVRlRMR05CUVdNc1EwRkJReXhOUVVGWE8xbEJRMnBETEVsQlFVa3NWVUZCVlN4RlFVRkZMRTFCUVUwc1JVRkJSU3hEUVVGRE8yZENRVU4yUWl4TlFVRk5MRVZCUVVVc1EwRkJReXhOUVVGTkxFTkJRVU1zUTBGQlF6dFpRVU51UWl4RFFVRkRPMmxDUVVGTkxFbEJRVWtzVlVGQlZTeEZRVUZGTEV0QlFVc3NSVUZCUlN4TlFVRk5MRVZCUVVVc1EwRkJRenRuUWtGRGNrTXNXVUZCV1N4RFFVRkRMRWRCUVVjc1ZVRkJWU3hEUVVGRExFdEJRVXNzUTBGQlF5eERRVUZETEUxQlFVMHNRMEZCUXl4RFFVRkRPMWxCUXpWRExFTkJRVU03YVVKQlFVMHNRMEZCUXp0blFrRkRUaXhKUVVGSkxFTkJRVU1zVjBGQlZ5eERRVUZETEVOQlFVTXNUVUZCVFN4RFFVRkRMRU5CUVVNN1dVRkROVUlzUTBGQlF6dFpRVU5FTEVsQlFVa3NWVUZCVlN4RlFVRkZMRlZCUVZVc1JVRkJSU3hOUVVGTkxFVkJRVVVzUTBGQlF6dG5Ra0ZEYmtNc2FVSkJRV2xDTEVOQlFVTXNSMEZCUnl4VlFVRlZMRU5CUVVNc1ZVRkJWU3hEUVVGRExFTkJRVU1zVFVGQlRTeERRVUZETEVOQlFVTTdXVUZEZEVRc1EwRkJRenRaUVVORUxFbEJRVWtzVlVGQlZTeEZRVUZGTEdOQlFXTXNSVUZCUlN4RFFVRkRPMmRDUVVNdlFpeFhRVUZYTEVOQlFVTXNiMEpCUVc5Q0xFVkJRVVVzU1VGQlNTeERRVUZETEVOQlFVTXNUVUZCVFN4RFFVRkRMRU5CUVVNN1dVRkRiRVFzUTBGQlF6dFpRVU5FTEVsQlFVa3NWVUZCVlN4RlFVRkZMRzFDUVVGdFFpeEZRVUZGTEVOQlFVTTdaMEpCUTNCRExGZEJRVmNzUTBGQlF5eDVRa0ZCZVVJc1JVRkJSU3hKUVVGSkxFTkJRVU1zUTBGQlF5eE5RVUZOTEVOQlFVTXNRMEZCUXp0WlFVTjJSQ3hEUVVGRE8xRkJRMGdzUTBGQlF6dFJRVVZFTEVsQlIwMHNjMEpCUVhOQ0xEaENRVWcxUWl4TlFVZE5MSE5DUVVGMVFpeFRRVUZSTEc5Q1FVRjFRanRaUVVkb1JDeE5RVUZOTEV0QlFVc3NTMEZCU3p0blFrRkRlRUlzVDBGQlR5eFhRVUZYTEVOQlFVTTdXVUZEY2tJc1EwRkJRenRaUVVWRUxFbEJRV0VzUzBGQlN6dG5Ra0ZEYUVJc1QwRkJUeXhYUVVGWExFTkJRVU03V1VGRGNrSXNRMEZCUXp0WlFVVkVMRmxCUVZrc1lVRkJhME03WjBKQlF6VkRMRXRCUVVzc1EwRkJReXhoUVVGaExFVkJRVVVzZDBKQlFYTkNMRU5CUVVNc1NVRkJTU3hEUVVGRExFTkJRVU03WjBKQldHNURMRTlCUVVVc1IwRkJWeXhMUVVGTExFTkJRVU1zUlVGQlJTeERRVUZETEZkQlFWY3NRMEZCVnl4RFFVRkRPMmRDUVZrMVJDeEhRVUZITEVOQlFVTXNTVUZCU1N4RFFVTk9MRFpEUVVFMlF5eEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMRWxCUVVrc1dVRkJXU3hUUVVGVExFVkJRVVVzUTBGRGNFWXNRMEZCUXp0WlFVTktMRU5CUVVNN1UwRkRSaXhEUVVGQk8xRkJha0pMTEhOQ1FVRnpRanRaUVVnelFpeFZRVUZWTEVOQlFVTXNVMEZCVXl4RFFVRkRPMWxCUTNKQ0xFOUJRVThzUTBGQlF5eGpRVUZqTEVOQlFVTTdXVUZEZGtJc1kwRkJZeXhEUVVGRExGZEJRVmNzUTBGQlF6czJRMEZaUXl4dFFrRkJiVUk3VjBGWU1VTXNjMEpCUVhOQ0xFTkJhVUl6UWp0UlFVVkVMR05CUVdNc1EwRkJReXh6UWtGQmMwSXNRMEZCUXl4RFFVRkRPMUZCUlhaRExFbEJRVWtzWVVGQllTeEZRVUZGTEVOQlFVTTdXVUZEYkVJc1RVRkJUU3haUVVGWkxFZEJRVWNzUTBGQlF5eEhRVUZITEdGQlFXRXNRMEZCUXl4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVWQlFVVXNSVUZCUlR0blFrRkRjRVFzVFVGQlRTeFRRVUZUTEVkQlFVY3NRMEZCUXl4RFFVRkRMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTXNUVUZCVFN4RFFVRkRMRTlCUVU4c1EwRkJReXhEUVVGRE8yZENRVU53UkN4TlFVRk5MRk5CUVZNc1IwRkJSeXhEUVVGRExFTkJRVU1zU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhOUVVGTkxFTkJRVU1zVDBGQlR5eERRVUZETEVOQlFVTTdaMEpCUTNCRUxFMUJRVTBzVjBGQlZ5eEhRVUZITEZOQlFWTXNRMEZCUXl4TlFVRk5MRU5CUVVNc1EwRkJReXhEUVVGRExFVkJRVVVzUlVGQlJTeERRVUZETEVOQlFVTXNRMEZCUXl4VlFVRlZMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF5eE5RVUZOTEVOQlFVTTdaMEpCUTNSRkxFMUJRVTBzVjBGQlZ5eEhRVUZITEZOQlFWTXNRMEZCUXl4TlFVRk5MRU5CUVVNc1EwRkJReXhEUVVGRExFVkJRVVVzUlVGQlJTeERRVUZETEVOQlFVTXNRMEZCUXl4VlFVRlZMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF5eE5RVUZOTEVOQlFVTTdaMEpCUTNSRkxFMUJRVTBzWVVGQllTeEhRVUZITEZOQlFWTXNRMEZCUXl4TlFVRk5MRWRCUVVjc1YwRkJWeXhEUVVGRE8yZENRVU55UkN4TlFVRk5MR0ZCUVdFc1IwRkJSeXhUUVVGVExFTkJRVU1zVFVGQlRTeEhRVUZITEZkQlFWY3NRMEZCUXp0blFrRkRja1FzU1VGQlNTeGhRVUZoTEV0QlFVc3NZVUZCWVR0dlFrRkRha01zVDBGQlR5eGhRVUZoTEVkQlFVY3NZVUZCWVN4RFFVRkRPMmRDUVVOMlF5eEpRVUZKTEZkQlFWY3NTMEZCU3l4WFFVRlhPMjlDUVVGRkxFOUJRVThzVjBGQlZ5eEhRVUZITEZkQlFWY3NRMEZCUXp0blFrRkRiRVVzVDBGQlR5eERRVUZETEVOQlFVTTdXVUZEV0N4RFFVRkRMRU5CUVVNc1EwRkJRenRaUVVWSUxFdEJRVXNzVFVGQlRTeExRVUZMTEVsQlFVa3NXVUZCV1N4RlFVRkZMRU5CUVVNN1owSkJRMnBETEUxQlFVMHNWVUZCVlN4SFFVTmtMRXRCUVVzc1EwRkJReXhqUVVGakxFVkJRVVVzU1VGQlNTeEpRVUZKTEV0QlFVc3NRMEZCUXl4TlFVRk5MRU5CUVVNc1YwRkJWeXhGUVVGRkxFTkJRVU03WjBKQlF6TkVMRTFCUVUwc1dVRkJXU3hIUVVGSExHMUNRVUZ0UWl4RFFVRkRMRlZCUVZVc1EwRkRha1FzVlVGQlZTeEZRVU5XTEV0QlFVc3NSVUZEVEN4TlFVRk5MRVZCUTA0c1lVRkJZU3hGUVVOaUxFdEJRVXNzUlVGRFRDeFhRVUZYTEVWQlExZ3NZMEZCWXl4RFFVTm1MRU5CUVVNN1owSkJRMFlzU1VGQlNTeERRVUZETEZsQlFWazdiMEpCUVVVc1UwRkJVenRuUWtGRk5VSXNUVUZCVFN4RlFVTktMRlZCUVZVc1JVRkJSU3h2UWtGQmIwSXNSVUZEYUVNc1QwRkJUeXhGUVVOUUxGVkJRVlVzUlVGRFZpeGxRVUZsTEVkQlEyaENMRWRCUVVjc1dVRkJXU3hEUVVGRE8yZENRVVZxUWl4TlFVRk5MRlZCUVZVc1IwRkJSeXh0UWtGQmJVSXNRMEZCUXl4WlFVRlpMRU5CUTJwRUxITkNRVUZ6UWl4RlFVTjBRaXh2UWtGQmIwSXNSVUZEY0VJc1QwRkJUeXhEUVVOU0xFTkJRVU03WjBKQlJVWXNTVUZCU1N4VlFVRlZMRVZCUVVVc1EwRkJRenR2UWtGRFppeE5RVUZOTEdGQlFXRXNSMEZCUnl4dFFrRkJiVUlzUTBGQlF5eExRVUZMTEVOQlFVTXNUVUZCYlVJc1EwRkJReXhEUVVOc1JTeExRVUZMTEVOQlFVTXNTVUZCU1N4RFFVRkRMRTlCUVU4c1EwRkJReXhaUVVGWkxFVkJRVVVzUlVGQlJTeERRVUZETEVsQlFVa3NVMEZCVXl4RFFVTnNSQ3hEUVVGRE8yOUNRVU5HTEcxQ1FVRnRRaXhEUVVGRExHVkJRV1VzUTBGRGFrTXNjMEpCUVhOQ0xFVkJRM1JDTEc5Q1FVRnZRaXhGUVVOd1FpeERRVUZETEdGQlFXRXNSVUZCUlN4SFFVRkhMRlZCUVZVc1EwRkJReXhGUVVNNVFpeGxRVUZsTEVOQlEyaENMRU5CUVVNN1owSkJRMG9zUTBGQlF6dFpRVU5JTEVOQlFVTTdVVUZEU0N4RFFVRkRPMUZCUlVRc1QwRkJUeXh6UWtGQk5rSXNRMEZCUXp0SlFVTjJReXhEUVVGRE8wbEJSVVFzVFVGQlRTeERRVUZETERKQ1FVRXlRaXhEUVVOb1F5eFZRVUVyUWp0UlFVOHZRaXhOUVVGTkxFVkJRVVVzUjBGQlJ5eExRVUZMTEVOQlFVTXNSVUZCUlN4RFFVRkRMRlZCUVZVc1EwRkJjVUlzUTBGQlF6dFJRVU53UkN4TlFVRk5MRkZCUVZFc1IwRkJSeXhSUVVGUkxFTkJRVU1zUjBGQlJ5eERRVU16UWl4VlFVRlZMRVZCUTFZc1VVRkJVU3hEUVVGRExFZEJRVWNzUTBGQlF5eE5RVUZOTEVOQlFVTXNVVUZCVVN4RlFVRkZMRVZCUVVVc1EwRkJReXhEUVVOc1F5eERRVUZETzFGQlEwWXNUVUZCVFN4WlFVRlpMRWRCUVVjc1VVRkJVU3hGUVVGRkxFbEJRVWtzU1VGQlNTeEZRVUZGTEVOQlFVTTdVVUZGTVVNc1RVRkJUU3hWUVVGVkxFZEJRMlFzUzBGQlN5eERRVUZETEU5QlFVOHNRMEZCUXl4WlFVRlpMRU5CUVVNc1NVRkJTU3haUVVGWkxFTkJRVU1zVFVGQlRTeEhRVUZITEVOQlFVTTdXVUZEY0VRc1EwRkJReXhEUVVGRExFdEJRVXNzUTBGQlF5eEpRVUZKTEVOQlFVTXNTVUZCU1N4SFFVRkhMRU5CUVVNc1EwRkJReXhIUVVGSExGbEJRVmtzUTBGQlF5eERRVUZETEVOQlFVTTdXVUZEZUVNc1EwRkJReXhEUVVGRExFdEJRVXNzUTBGQlF5eEpRVUZKTEVOQlFVTXNTVUZCU1N4SFFVRkhMRU5CUVVNc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdVVUZGYUVNc1RVRkJUU3hYUVVGWExFZEJRVWNzVVVGQlVTeERRVUZETEZkQlFWY3NRMEZCUXl4VlFVRlZMRU5CUVVNc1NVRkJTU3hGUVVGRkxFTkJRVU03VVVGRE0wUXNUVUZCVFN4SlFVRkpMRWRCUVVjc1NVRkJTU3hWUVVGVkxFTkJRVU1zU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4RlFVRkZMRU5CUVVNN1VVRkRla01zVFVGQlRTeGhRVUZoTEVkQlFYVkNMRlZCUVZVc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eEhRVUZITEVWQlFVVXNSVUZCUlR0WlFVTXZSQ3hQUVVGUE8yZENRVU5NTEVsQlFVa3NSVUZCUlN4SFFVRkhPMmRDUVVOVUxGZEJRVmNzUlVGQlJTeFJRVUZSTEVOQlFVTXNWMEZCVnl4RFFVRkRMRlZCUVZVc1JVRkJSU3hIUVVGSExFTkJRVU03WjBKQlEyeEVMRkZCUVZFc1JVRkJSU3hKUVVGSk8yZENRVU5rTEVsQlFVa3NSVUZCUlN4TlFVRk5PMkZCUTJJc1EwRkJRenRSUVVOS0xFTkJRVU1zUTBGQlF5eERRVUZETzFGQlJVZ3NUMEZCVHp0WlFVTk1MRWxCUVVrN1dVRkRTaXhYUVVGWE8xbEJRMWdzWVVGQllUdFpRVU5pTEV0QlFVc3NSVUZCUlN4RFFVRkRMRWRCUVVjc1RVRkJPRUlzUlVGQlJTeEZRVUZGTEVOQlF6TkRMRkZCUVZFc1JVRkJSU3hUUVVGVExFTkJRVU1zUTBGQlF5eERRVUZETEUxQlFVMHNRMEZCUXl4SlFVRkpMRU5CUVVNc1VVRkJVU3hEUVVGRExGTkJRVk1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4TlFVRk5MRU5CUVVNc1NVRkJTU3hEUVVGRExFVkJRVVVzUTBGQlF6dFRRVU14UlN4RFFVRkRPMGxCUTBvc1EwRkJRenRKUVVWUExFMUJRVTBzUTBGQlF5eHZRa0ZCYjBJc1EwRkRha01zU1VGQldUdFJRVVZhTEVsQlFVa3NWVUZCVlN4SFFVRkhMRU5CUVVNc1EwRkJRenRSUVVOdVFpeFBRVUZQTEVsQlFVazdZVUZEVWl4TFFVRkxMRU5CUVVNc1IwRkJSeXhEUVVGRE8yRkJRMVlzVFVGQlRTeERRVUZETEU5QlFVOHNRMEZCUXp0aFFVTm1MRTlCUVU4c1EwRkJReXhEUVVGRExFOUJRVThzUlVGQlJTeEZRVUZGTzFsQlEyNUNMRWxCUVVrc1QwRkJUeXhEUVVGRExGVkJRVlVzUTBGQlF5eEhRVUZITEVOQlFVTXNSVUZCUlN4RFFVRkRPMmRDUVVNMVFpeFBRVUZQTzI5Q1FVTk1MRVZCUVVVc1UwRkJVeXhGUVVGRkxFdEJRVXNzUTBGQlF5eFBRVUZQTEVOQlFVTXNTMEZCU3l4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGUkxFVkJRVVVzUzBGQlN5eEZRVUZGTEZWQlFWVXNSVUZCUlN4RlFVRkZPMmxDUVVOdVJTeERRVUZETzFsQlEwb3NRMEZCUXp0WlFVTkVMRWxCUVVrc1QwRkJUeXhEUVVGRExGVkJRVlVzUTBGQlF5eEhRVUZITEVOQlFVTXNSVUZCUlN4RFFVRkRPMmRDUVVNMVFpeFBRVUZQTzI5Q1FVTk1MRVZCUVVVc1UwRkJVeXhGUVVGRkxFdEJRVXNzUTBGQlF5eFBRVUZQTEVOQlFVTXNTMEZCU3l4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGUkxFVkJRVVVzUzBGQlN5eEZRVUZGTEZWQlFWVXNSVUZCUlN4RlFVRkZPMmxDUVVOdVJTeERRVUZETzFsQlEwb3NRMEZCUXp0WlFVTkVMRTlCUVU4c1JVRkJSU3hEUVVGRE8xRkJRMW9zUTBGQlF5eERRVUZETEVOQlFVTTdTVUZEVUN4RFFVRkRPMGxCUlU4c1RVRkJUU3hEUVVGRExGbEJRVmtzUTBGRGVrSXNUVUZCVnl4RlFVTllMRlZCUVd0Q0xFVkJRMnhDTEU5QlFXZERPMUZCUldoRExFMUJRVTBzUTBGQlF5eGpRVUZqTEVOQlFVTXNUVUZCVFN4RFFVRkRMRk5CUVZNc1NVRkJTU3hOUVVGTkxFVkJRVVVzVlVGQlZTeEZRVUZGTzFsQlF6VkVMRXRCUVVzc1JVRkJSU3hQUVVGUE8xbEJRMlFzVVVGQlVTeEZRVUZGTEV0QlFVczdXVUZEWml4WlFVRlpMRVZCUVVVc1NVRkJTVHRaUVVOc1FpeFZRVUZWTEVWQlFVVXNTMEZCU3p0VFFVTnNRaXhEUVVGRExFTkJRVU03VVVGRlNDeFBRVUZQTEUxQlFVMHNRMEZCUXl4M1FrRkJkMElzUTBGRGNFTXNUVUZCVFN4RFFVRkRMRk5CUVZNc1NVRkJTU3hOUVVGTkxFVkJRekZDTEZWQlFWVXNRMEZEV0N4RFFVRkRPMGxCUTBvc1EwRkJRenRKUVVWUExFMUJRVTBzUTBGQlF5eGxRVUZsTEVOQlF6VkNMRTFCUVZjc1JVRkRXQ3hWUVVGclFpeEZRVU5zUWl4blFrRkJjMFVzUlVGRGRFVXNhMEpCUjBzc1JVRkJSVHRSUVVWUUxFMUJRVTBzUzBGQlN5eEhRVUZITEUxQlFVMHNSVUZCUlN4VFFVRlRMRWxCUVVrc1RVRkJUU3hEUVVGRE8xRkJRekZETEUxQlFVMHNWVUZCVlN4SFFVRkhMRTFCUVUwc1EwRkJReXgzUWtGQmQwSXNRMEZCUXl4TFFVRkxMRVZCUVVVc1ZVRkJWU3hEUVVGRExFTkJRVU03VVVGRGRFVXNaMEpCUVdkQ0xFTkJRVU1zVDBGQlR5eERRVUZETEVOQlFVTXNRMEZCUXl4RlFVRkZMRVZCUVVVc1EwRkJReXhEUVVGRExFTkJRVU1zUzBGQlN5eEZRVUZGTEZWQlFWVXNSVUZCUlN4VlFVRlZMRU5CUVVNc1EwRkJReXhEUVVGRE8xRkJRMnhGTEdWQlFXVXNRMEZCUXl4UFFVRlBMRU5CUVVNc1EwRkJReXhGUVVGRkxGTkJRVk1zUlVGQlJTeExRVUZMTEVWQlFVVXNSVUZCUlN4RlFVRkZMRU5CUXk5RExGTkJRVk1zUTBGQlF5eExRVUZMTEVWQlFVVXNWVUZCVlN4RlFVRkZMRXRCUVVzc1EwRkJReXhEUVVOd1F5eERRVUZETzBsQlEwb3NRMEZCUXp0SlFVVlBMRTFCUVUwc1EwRkJReXhWUVVGVkxFTkJRM1pDTEZWQlFXdENMRVZCUTJ4Q0xFdEJRV3RDTEVWQlEyeENMRTFCUVdNc1JVRkRaQ3hoUVVGcFF5eEZRVU5xUXl4TFFVRXJReXhGUVVNdlF5eFhRVUZyUXl4RlFVTnNReXhqUVVGelFqdFJRVmwwUWl4TlFVRk5MRVZCUVVVc1RVRkJUU3hGUVVGRkxFbEJRVWtzUlVGQlJTeEhRVUZITEV0QlFVc3NRMEZCUXp0UlFVTXZRaXhOUVVGTkxHTkJRV01zUjBGQlJ5eEpRVUZKTEVOQlFVTXNUMEZCVHl4RFFVRkRMRmxCUVZrc1JVRkJSU3hGUVVGRkxFTkJRVU1zUTBGQlF6dFJRVU4wUkN4TlFVRk5MRTlCUVU4c1IwRkJSeXhMUVVGTExFTkJRVU1zWTBGQmVVTXNRMEZCUXp0UlFVVm9SU3hKUVVGSkxFMUJRVTBzUzBGQlN5eE5RVUZOTEVsQlFVa3NZMEZCWXl4TFFVRkxMRVZCUVVVc1JVRkJSU3hEUVVGRE8xbEJReTlETEU5QlFVOHNiVUpCUVcxQ0xFTkJRVU1zYTBKQlFXdENMRU5CUXpORExGRkJRVkVzUlVGRFVpeFBRVUZQTEVWQlExQXNiVUpCUVcxQ0xFTkJRVU1zYzBKQlFYTkNMRU5CUVVNc1YwRkJWeXhGUVVGRkxHTkJRV01zUTBGQlF5eEZRVU4yUlR0blFrRkRSU3hGUVVGRkxGTkJRVk1zUlVGQlJTeFRRVUZUTEVWQlFWTXNSVUZCUlN4TFFVRkxMRVZCUVVVc1EwRkJReXhGUVVGRk8yZENRVU16UXl4RlFVRkZMRk5CUVZNc1JVRkJSU3hSUVVGUkxFTkJRVU1zUlVGQlJTeFhRVUZYTEVWQlFVVXNTVUZCU1N4RlFVRkZMRU5CUVZFc1JVRkJSU3hMUVVGTExFVkJRVVVzUTBGQlF5eEZRVUZGTzJGQlEyaEZMRU5CUTBZc1EwRkJRenRSUVVOS0xFTkJRVU03VVVGRlJDeEpRVUZKTEUxQlFVMHNTMEZCU3l4TlFVRk5MRWxCUVVrc1kwRkJZeXhMUVVGTExFMUJRVTBzUlVGQlJTeERRVUZETzFsQlEyNUVMRTlCUVU4c2JVSkJRVzFDTEVOQlFVTXNhMEpCUVd0Q0xFTkJRek5ETEZkQlFWY3NSVUZEV0N4UFFVRlBMRVZCUTFBc2JVSkJRVzFDTEVOQlFVTXNiMEpCUVc5Q0xFTkJRVU1zVjBGQlZ5eEZRVUZGTEdOQlFXTXNRMEZCUXl4RlFVTnlSVHRuUWtGRFJTeEZRVUZGTEZOQlFWTXNSVUZCUlN4VFFVRlRMRVZCUVZNc1JVRkJSU3hMUVVGTExFVkJRVVVzUTBGQlF5eEZRVUZGTzJkQ1FVTXpReXhGUVVGRkxGTkJRVk1zUlVGQlJTeFJRVUZSTEVOQlFVTXNSVUZCUlN4WFFVRlhMRVZCUVVVc1NVRkJTU3hGUVVGRkxFTkJRVkVzUlVGQlJTeExRVUZMTEVWQlFVVXNRMEZCUXl4RlFVRkZPMkZCUTJoRkxFTkJRMFlzUTBGQlF6dFJRVU5LTEVOQlFVTTdVVUZGUkN4SlFVRkpMRTFCUVUwc1MwRkJTeXhMUVVGTExFbEJRVWtzWTBGQll5eExRVUZMTEUxQlFVMHNSVUZCUlN4RFFVRkRPMWxCUTJ4RUxFOUJRVThzYlVKQlFXMUNMRU5CUVVNc2EwSkJRV3RDTEVOQlF6TkRMRk5CUVZNc1JVRkRWQ3hQUVVGUExFVkJRMUFzYlVKQlFXMUNMRU5CUVVNc2EwSkJRV3RDTEVOQlFVTXNWMEZCVnl4RlFVRkZMR05CUVdNc1EwRkJReXhGUVVOdVJTeERRVUZETEVWQlFVVXNVMEZCVXl4RlFVRkZMRXRCUVVzc1EwRkJReXhMUVVGTExFTkJRVkVzUlVGQlJTeExRVUZMTEVWQlFVVXNRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkRMME1zUTBGQlF6dFJRVU5LTEVOQlFVTTdVVUZGUkN4SlFVRkpMRTFCUVUwc1MwRkJTeXhMUVVGTExFbEJRVWtzWTBGQll5eExRVUZMTEUxQlFVMHNSVUZCUlN4RFFVRkRPMWxCUTJ4RUxFOUJRVThzYlVKQlFXMUNMRU5CUVVNc2EwSkJRV3RDTEVOQlF6TkRMRmRCUVZjc1JVRkRXQ3hQUVVGUExFVkJRMUFzYlVKQlFXMUNMRU5CUVVNc2IwSkJRVzlDTEVOQlEzUkRMRmRCUVZjc1JVRkRXQ3hqUVVGakxFVkJRMlFzWVVGQllTeERRVU5rTEVWQlEwUTdaMEpCUTBVc1JVRkJSU3hUUVVGVExFVkJRVVVzVTBGQlV5eEZRVUZUTEVWQlFVVXNTMEZCU3l4RlFVRkZMRU5CUVVNc1JVRkJSVHRuUWtGRE0wTXNSVUZCUlN4VFFVRlRMRVZCUVVVc1VVRkJVU3hEUVVGRExFVkJRVVVzVjBGQlZ5eEZRVUZGTEVsQlFVa3NSVUZCUlN4RFFVRlJMRVZCUVVVc1MwRkJTeXhGUVVGRkxFTkJRVU1zUlVGQlJUdGhRVU5vUlN4RFFVTkdMRU5CUVVNN1VVRkRTaXhEUVVGRE8xRkJSVVFzU1VGQlNTeE5RVUZOTEV0QlFVc3NVVUZCVVN4SlFVRkpMR05CUVdNc1MwRkJTeXhOUVVGTkxFVkJRVVVzUTBGQlF6dFpRVU55UkN4UFFVRlBMRzFDUVVGdFFpeERRVUZETEd0Q1FVRnJRaXhEUVVNelF5eFhRVUZYTEVWQlExZ3NUMEZCVHl4RlFVTlFMRzFDUVVGdFFpeERRVUZETEc5Q1FVRnZRaXhEUVVOMFF5eFhRVUZYTEVWQlExZ3NZMEZCWXl4RlFVTmtMR0ZCUVdFc1EwRkRaQ3hGUVVORU8yZENRVU5GTEVWQlFVVXNVMEZCVXl4RlFVRkZMRXRCUVVzc1EwRkJReXhMUVVGTExFTkJRVkVzUlVGQlJTeExRVUZMTEVWQlFVVXNRMEZCUXl4RlFVRkZPMmRDUVVNMVF5eEZRVUZGTEZOQlFWTXNSVUZCUlN4UlFVRlJMRU5CUVVNc1JVRkJSU3hYUVVGWExFVkJRVVVzU1VGQlNTeEZRVUZGTEVOQlFWRXNSVUZCUlN4TFFVRkxMRVZCUVVVc1EwRkJReXhGUVVGRk8yRkJRMmhGTEVOQlEwWXNRMEZCUXp0UlFVTktMRU5CUVVNN1VVRkZSQ3hKUVVGSkxFMUJRVTBzUzBGQlN5eExRVUZMTEVsQlFVa3NZMEZCWXl4TFFVRkxMRTFCUVUwc1JVRkJSU3hEUVVGRE8xbEJRMnhFTEU5QlFVOHNiVUpCUVcxQ0xFTkJRVU1zYTBKQlFXdENMRU5CUXpORExFMUJRVTBzUlVGRFRpeFBRVUZQTEVWQlExQXNiVUpCUVcxQ0xFTkJRVU1zWTBGQll5eERRVU5vUXl4WFFVRlhMRVZCUTFnc1kwRkJZeXhGUVVOa0xHRkJRV0VzUlVGRFlpeE5RVUZOTEVOQlExQXNSVUZEUkN4dFFrRkJiVUlzUTBGQlF5eHZRa0ZCYjBJc1EwRkJReXhqUVVGakxFTkJRVU1zUTBGRGVrUXNRMEZCUXp0UlFVTktMRU5CUVVNN1VVRkZSQ3hKUVVGSkxFMUJRVTBzUzBGQlN5eExRVUZMTEVsQlFVa3NZMEZCWXl4TFFVRkxMRTFCUVUwc1JVRkJSU3hEUVVGRE8xbEJRMnhFTEUxQlFVMHNWMEZCVnl4SFFVTm1MRzFDUVVGdFFpeERRVUZETEc5Q1FVRnZRaXhEUVVGRExHTkJRV01zUTBGQlF5eERRVUZETzFsQlF6TkVMRTlCUVU4c2JVSkJRVzFDTEVOQlFVTXNhMEpCUVd0Q0xFTkJRek5ETEZGQlFWRXNSVUZEVWl4UFFVRlBMRVZCUTFBc2JVSkJRVzFDTEVOQlFVTXNaMEpCUVdkQ0xFTkJRMnhETEZkQlFWY3NSVUZEV0N4alFVRmpMRVZCUTJRc1lVRkJZU3hGUVVOaUxFMUJRVTBzUTBGRFVDeEZRVU5FTzJkQ1FVTkZMRVZCUVVVc1UwRkJVeXhGUVVGRkxGTkJRVk1zUlVGQlV5eEZRVUZGTEV0QlFVc3NSVUZCUlN4RFFVRkRMRVZCUVVVN1owSkJRek5ETEVkQlFVY3NWMEZCVnl4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFVkJRVVVzVTBGQlV5eEZRVUZGTEV0QlFVc3NSVUZCUlN4RlFVRkZMRVZCUVVVc1EwRkJReXhEUVVGRE8yOUNRVU0xUXl4VFFVRlRPMjlDUVVOVUxFdEJRVXNzUlVGQlJTeExRVUZMTEVkQlFVY3NRMEZCUXp0cFFrRkRha0lzUTBGQlF5eERRVUZETzJGQlEwb3NRMEZEUml4RFFVRkRPMUZCUTBvc1EwRkJRenRSUVVWRUxFbEJRVWtzVFVGQlRTeExRVUZMTEZGQlFWRXNTVUZCU1N4alFVRmpMRXRCUVVzc1RVRkJUU3hGUVVGRkxFTkJRVU03V1VGRGNrUXNUVUZCVFN4WFFVRlhMRWRCUTJZc2JVSkJRVzFDTEVOQlFVTXNiMEpCUVc5Q0xFTkJRVU1zWTBGQll5eERRVUZETEVOQlFVTTdXVUZETTBRc1QwRkJUeXh0UWtGQmJVSXNRMEZCUXl4clFrRkJhMElzUTBGRE0wTXNVVUZCVVN4RlFVTlNMRTlCUVU4c1JVRkRVQ3h0UWtGQmJVSXNRMEZCUXl4blFrRkJaMElzUTBGRGJFTXNWMEZCVnl4RlFVTllMR05CUVdNc1JVRkRaQ3hoUVVGaExFVkJRMklzVFVGQlRTeERRVU5RTEVWQlEwUXNWMEZCVnl4RFFVTmFMRU5CUVVNN1VVRkRTaXhEUVVGRE8xRkJSVVFzZFVWQlFYVkZPMUZCUTNaRkxFMUJRVTBzWjBKQlFXZENMRWRCUVVjc1kwRkJZeXhEUVVGRExFdEJRVXNzUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4TlFVRk5MRU5CUVVNc1QwRkJUeXhEUVVGRExFTkJRVU03VVVGRGJrVXNUVUZCVFN4WFFVRlhMRWRCUTJZc1owSkJRV2RDTEVOQlFVTXNUVUZCVFN4SFFVRkhMRU5CUVVNN1dVRkRNMElzWjBKQlFXZENMRU5CUVVNc1MwRkJTeXhEUVVGRExFTkJRVU1zUTBGQlF5eEZRVUZGTEVWQlFVVXNRMEZCUXl4RFFVRkRMRU5CUVVNc1ZVRkJWU3hEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETEVOQlFVTTdVVUZEYmtRc1NVRkJTU3hYUVVGWExFbEJRVWtzWTBGQll5eExRVUZMTEUxQlFVMHNSVUZCUlN4RFFVRkRPMWxCUXpkRExFMUJRVTBzWjBKQlFXZENMRWRCUVVjc1owSkJRV2RDTzJsQ1FVTjBReXhIUVVGSExFTkJRVU1zUTBGQlF5eERRVUZETEVWQlFVVXNSVUZCUlN4RFFVRkRMRU5CUVVNc1EwRkJReXhMUVVGTExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdhVUpCUTNSQ0xFZEJRVWNzUTBGQlF5eERRVUZETEVsQlFVa3NSVUZCUlN4RlFVRkZMRU5CUVVNc1EwRkJRenRuUWtGRFpDeEpRVUZKTzJkQ1FVTktMRmRCUVZjc1JVRkJSU3hIUVVGSExFbEJRVWtzV1VGQldUdG5Ra0ZEYUVNc1VVRkJVU3hGUVVGRkxFbEJRVWs3WjBKQlEyUXNTVUZCU1N4RlFVRkZMRTFCUVUwN1lVRkRZaXhEUVVGRExFTkJRVU1zUTBGQlF6dFpRVU5PTEUxQlFVMHNUVUZCVFN4SFFVRkhMR2RDUVVGblFpeERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNc1JVRkJSU3hGUVVGRkxFTkJRVU1zUTBGQlF5eERRVUZETEV0QlFVc3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNRMEZCUXp0WlFVTnVSU3hOUVVGTkxGZEJRVmNzUjBGRFppeHRRa0ZCYlVJc1EwRkJReXh2UWtGQmIwSXNRMEZCUXl4alFVRmpMRU5CUVVNc1EwRkJRenRaUVVNelJDeEpRVUZKTEUxQlFVMHNTMEZCU3l4TFFVRkxMRVZCUVVVc1EwRkJRenRuUWtGRGNrSXNUMEZCVHl4dFFrRkJiVUlzUTBGQlF5eHJRa0ZCYTBJc1EwRkRNME1zVTBGQlV5eE5RVUZOTEVWQlFVVXNSVUZEYWtJc1QwRkJUeXhGUVVOUUxHMUNRVUZ0UWl4RFFVRkRMR05CUVdNc1EwRkRhRU1zVjBGQlZ5eEZRVU5ZTEdOQlFXTXNSVUZEWkN4blFrRkJaMElzUlVGRGFFSXNZMEZCWXl4RFFVTm1MRVZCUTBRc1YwRkJWeXhEUVVOYUxFTkJRVU03V1VGRFNpeERRVUZETzFsQlEwUXNTVUZCU1N4TlFVRk5MRXRCUVVzc1MwRkJTeXhGUVVGRkxFTkJRVU03WjBKQlEzSkNMRTlCUVU4c2JVSkJRVzFDTEVOQlFVTXNhMEpCUVd0Q0xFTkJRek5ETEZkQlFWY3NUVUZCVFN4RlFVRkZMRVZCUTI1Q0xFOUJRVThzUlVGRFVDeHRRa0ZCYlVJc1EwRkJReXhuUWtGQlowSXNRMEZEYkVNc1YwRkJWeXhGUVVOWUxHTkJRV01zUlVGRFpDeG5Ra0ZCWjBJc1JVRkRhRUlzWTBGQll5eERRVU5tTEVWQlEwUTdiMEpCUTBVc1JVRkJSU3hUUVVGVExFVkJRVVVzVTBGQlV5eEZRVUZUTEVWQlFVVXNTMEZCU3l4RlFVRkZMRU5CUVVNc1JVRkJSVHR2UWtGRE0wTXNSMEZCUnl4WFFVRlhMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU1zUlVGQlJTeFRRVUZUTEVWQlFVVXNTMEZCU3l4RlFVRkZMRVZCUVVVc1JVRkJSU3hEUVVGRExFTkJRVU03ZDBKQlF6VkRMRk5CUVZNN2QwSkJRMVFzUzBGQlN5eEZRVUZGTEV0QlFVc3NSMEZCUnl4RFFVRkRPM0ZDUVVOcVFpeERRVUZETEVOQlFVTTdhVUpCUTBvc1EwRkRSaXhEUVVGRE8xbEJRMG9zUTBGQlF6dFpRVU5FTEVsQlFVa3NUVUZCVFN4TFFVRkxMRkZCUVZFc1JVRkJSU3hEUVVGRE8yZENRVU40UWl4UFFVRlBMRzFDUVVGdFFpeERRVUZETEd0Q1FVRnJRaXhEUVVNelF5eFhRVUZYTEUxQlFVMHNSVUZCUlN4RlFVTnVRaXhQUVVGUExFVkJRMUFzYlVKQlFXMUNMRU5CUVVNc1owSkJRV2RDTEVOQlEyeERMRmRCUVZjc1JVRkRXQ3hqUVVGakxFVkJRMlFzWjBKQlFXZENMRVZCUTJoQ0xHTkJRV01zUTBGRFppeEZRVU5FTEZkQlFWY3NRMEZEV2l4RFFVRkRPMWxCUTBvc1EwRkJRenRSUVVOSUxFTkJRVU03VVVGRlJDeEpRVUZKTEUxQlFVMHNTMEZCU3l4TFFVRkxMRWxCUVVrc1kwRkJZeXhMUVVGTExIbENRVUY1UWl4RlFVRkZMRU5CUVVNN1dVRkRja1VzVDBGQlR5eHRRa0ZCYlVJc1EwRkJReXhyUWtGQmEwSXNRMEZETTBNc1YwRkJWeXhGUVVOWUxFOUJRVThzUlVGRFVDeHRRa0ZCYlVJc1EwRkJReXh0UWtGQmJVSXNRMEZCUXl4WFFVRlhMRVZCUVVVc1kwRkJZeXhEUVVGRExFVkJRM0JGTzJkQ1FVTkZMRVZCUVVVc1UwRkJVeXhGUVVGRkxFdEJRVXNzUTBGQlF5eFJRVUZSTEVOQlFWRXNSVUZCUlN4TFFVRkxMRVZCUVVVc1EwRkJReXhGUVVGRk8yZENRVU12UXl4RlFVRkZMRk5CUVZNc1JVRkJSU3hMUVVGTExFTkJRVU1zVFVGQlRTeERRVUZSTEVWQlFVVXNTMEZCU3l4RlFVRkZMRU5CUVVNc1JVRkJSVHRuUWtGRE4wTXNSVUZCUlN4VFFVRlRMRVZCUVVVc1ZVRkJWU3hGUVVGVExFVkJRVVVzUzBGQlN5eEZRVUZGTEVOQlFVTXNSVUZCUlR0aFFVTTNReXhEUVVOR0xFTkJRVU03VVVGRFNpeERRVUZETzFGQlJVUXNTVUZCU1N4TlFVRk5MRXRCUVVzc1MwRkJTeXhKUVVGSkxHTkJRV01zUzBGQlN5eDFRa0ZCZFVJc1JVRkJSU3hEUVVGRE8xbEJRMjVGTEU5QlFVOHNiVUpCUVcxQ0xFTkJRVU1zYTBKQlFXdENMRU5CUXpORExGZEJRVmNzUlVGRFdDeFBRVUZQTEVWQlExQXNiVUpCUVcxQ0xFTkJRVU1zTWtKQlFUSkNMRU5CUXpkRExGZEJRVmNzUlVGRFdDeGpRVUZqTEVWQlEyUXNZMEZCWXl4RlFVTmtMSEZDUVVGeFFpeERRVUZETEZkQlFWY3NRMEZEYkVNc1JVRkRSQ3h0UWtGQmJVSXNRMEZCUXl4MVFrRkJkVUlzUTBGQlF5eGpRVUZqTEVOQlFVTXNRMEZETlVRc1EwRkJRenRSUVVOS0xFTkJRVU03VVVGRlJDeE5RVUZOTEdWQlFXVXNSMEZCTWtJN1dVRkRPVU1zWVVGQllTeEZRVUZGTEhGQ1FVRnhRaXhEUVVGRExFOUJRVTg3V1VGRE5VTXNkVUpCUVhWQ0xFVkJRVVVzY1VKQlFYRkNMRU5CUVVNc1QwRkJUenRaUVVOMFJDeGhRVUZoTEVWQlFVVXNjVUpCUVhGQ0xFTkJRVU1zU1VGQlNUdFpRVU42UXl4aFFVRmhMRVZCUVVVc2NVSkJRWEZDTEVOQlFVTXNTVUZCU1R0WlFVTjZReXgxUWtGQmRVSXNSVUZCUlN4eFFrRkJjVUlzUTBGQlF5eFhRVUZYTzFsQlF6RkVMRzlDUVVGdlFpeEZRVUZGTEhGQ1FVRnhRaXhEUVVGRExFOUJRVTg3V1VGRGJrUXNaMEpCUVdkQ0xFVkJRVVVzY1VKQlFYRkNMRU5CUVVNc1VVRkJVVHRaUVVOb1JDeGpRVUZqTEVWQlFVVXNjVUpCUVhGQ0xFTkJRVU1zVFVGQlRUdFpRVU0xUXl4alFVRmpMRVZCUVVVc2NVSkJRWEZDTEVOQlFVTXNUVUZCVFR0WlFVTTFReXhqUVVGakxFVkJRVVVzY1VKQlFYRkNMRU5CUVVNc1RVRkJUVHRaUVVNMVF5eGpRVUZqTEVWQlFVVXNjVUpCUVhGQ0xFTkJRVU1zVFVGQlRUdFpRVU0xUXl4dFFrRkJiVUlzUlVGQlJTeHhRa0ZCY1VJc1EwRkJReXhYUVVGWE8xbEJRM1JFTEdkQ1FVRm5RaXhGUVVGRkxIRkNRVUZ4UWl4RFFVRkRMRkZCUVZFN1UwRkRha1FzUTBGQlF6dFJRVVZHTEUxQlFVMHNXVUZCV1N4SFFVRkhMR1ZCUVdVc1EwRkJReXhqUVVGakxFTkJRVU1zUTBGQlF6dFJRVU55UkN4SlFVRkpMRmxCUVZrc1NVRkJTU3hOUVVGTkxFdEJRVXNzUzBGQlN5eEZRVUZGTEVOQlFVTTdXVUZEY2tNc1QwRkJUeXh0UWtGQmJVSXNRMEZCUXl4clFrRkJhMElzUTBGRE0wTXNiVUpCUVcxQ0xFTkJRVU1zYlVKQlFXMUNMRU5CUVVNc1kwRkJZeXhEUVVGRExFVkJRM1pFTEU5QlFVOHNSVUZEVUN4dFFrRkJiVUlzUTBGQlF5d3lRa0ZCTWtJc1EwRkROME1zVjBGQlZ5eEZRVU5ZTEdOQlFXTXNSVUZEWkN4alFVRmpMRVZCUTJRc1dVRkJXU3hEUVVOaUxFVkJRMFFzYlVKQlFXMUNMRU5CUVVNc2RVSkJRWFZDTEVOQlFVTXNZMEZCWXl4RFFVRkRMRU5CUXpWRUxFTkJRVU03VVVGRFNpeERRVUZETzFGQlJVUXNTVUZCU1N4TlFVRk5MRXRCUVVzc1MwRkJTeXhKUVVGSkxHTkJRV01zUTBGQlF5eFZRVUZWTEVOQlFVTXNVVUZCVVN4RFFVRkRMRVZCUVVVc1EwRkJRenRaUVVNMVJDeE5RVUZOTEZkQlFWY3NSMEZCUnl4alFVRmpMRU5CUVVNc1QwRkJUeXhEUVVGRExGVkJRVlVzUlVGQlJTeEZRVUZGTEVOQlFVTXNRMEZCUXl4TFFVRkxMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdXVUZEZWtVc1QwRkJUeXh0UWtGQmJVSXNRMEZCUXl4clFrRkJhMElzUTBGRE0wTXNWMEZCVnl4RlFVTllMRTlCUVU4c1JVRkRVQ3h0UWtGQmJVSXNRMEZCUXl4clFrRkJhMElzUTBGRGNFTXNWMEZCVnl4RlFVTllMR05CUVdNc1JVRkRaQ3hMUVVGTExFVkJRMHdzU1VGQlNTeERRVU5NTEVWQlEwUXNiVUpCUVcxQ0xFTkJRVU1zYTBKQlFXdENMRU5CUVVNc1kwRkJZeXhEUVVGRExFTkJRM1pFTEVOQlFVTTdVVUZEU2l4RFFVRkRPMUZCUlVRc1RVRkJUU3haUVVGWkxFZEJRVWNzWTBGQll5eERRVUZETEV0QlFVc3NRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhOUVVGTkxFTkJRVU1zVDBGQlR5eERRVUZETEVOQlFVTTdVVUZETDBRc1RVRkJUU3hoUVVGaExFZEJRVWNzU1VGQlNTeEhRVUZITEVOQlFWTTdXVUZEY0VNc1VVRkJVVHRaUVVOU0xGRkJRVkU3V1VGRFVpeG5Ra0ZCWjBJN1dVRkRhRUlzVjBGQlZ6dFpRVU5ZTEZsQlFWazdXVUZEV2l4TlFVRk5PMWxCUTA0c1RVRkJUVHRaUVVOT0xGTkJRVk03V1VGRFZDeFBRVUZQTzFsQlExQXNUMEZCVHp0WlFVTlFMRTlCUVU4N1dVRkRVQ3hQUVVGUE8xbEJRMUFzV1VGQldUdFpRVU5hTEZOQlFWTTdXVUZEVkN4WFFVRlhPMWxCUTFnc1RVRkJUVHRaUVVOT0xFOUJRVTg3VTBGRFVpeERRVUZETEVOQlFVTTdVVUZEU0N4SlFVTkZMRmxCUVZrc1EwRkJReXhOUVVGTkxFZEJRVWNzUTBGQlF6dFpRVU4yUWl4RFFVRkRMR05CUVdNc1EwRkJReXhWUVVGVkxFTkJRVU1zVVVGQlVTeERRVUZETzFsQlEzQkRMRU5CUVVNc1kwRkJZeXhEUVVGRExGVkJRVlVzUTBGQlF5eFpRVUZaTEVOQlFVTTdXVUZEZUVNc1EwRkJReXhoUVVGaExFTkJRVU1zUjBGQlJ5eERRVUZETEZsQlFWa3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhGUVVOdVF5eERRVUZETzFsQlEwUXNUVUZCVFN4aFFVRmhMRWRCUVVjc1dVRkJXVHRwUWtGREwwSXNUVUZCVFN4RFFVRkRMRU5CUVVNc1EwRkJReXhGUVVGRkxFVkJRVVVzUTBGQlF5eERRVUZETEVOQlFVTXNWVUZCVlN4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRE8ybENRVU5vUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhEUVVGRExFVkJRVVVzUlVGQlJTeERRVUZETEVOQlFVTXNRMEZCUXl4TFFVRkxMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03YVVKQlEzUkNMRWRCUVVjc1EwRkJReXhEUVVGRExFbEJRVWtzUlVGQlJTeEZRVUZGTEVOQlFVTXNRMEZCUXp0blFrRkRaQ3hKUVVGSk8yZENRVU5LTEZkQlFWY3NSVUZCUlN4SFFVRkhMRWxCUVVrc01FSkJRVEJDTzJkQ1FVTTVReXhSUVVGUkxFVkJRVVVzU1VGQlNUdG5Ra0ZEWkN4SlFVRkpMRVZCUVVVc1RVRkJUVHRoUVVOaUxFTkJRVU1zUTBGQlF5eERRVUZETzFsQlJVNHNUMEZCVHl4dFFrRkJiVUlzUTBGQlF5eHJRa0ZCYTBJc1EwRkRNME1zVlVGQlZTeEZRVU5XTEU5QlFVOHNSVUZEVUR0blFrRkRSU3hIUVVGSExHRkJRV0VzUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4RFFVRkRMRVZCUVVVc1JVRkJSU3hEUVVGRExGRkJRVkVzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0blFrRkRlRU1zV1VGQldTeERRVUZETEVWQlFVVXNUMEZCVHl4RlFVRkZMREpDUVVFeVFpeFZRVUZWTEVsQlFVa3NSVUZCUlN4RFFVRkRPMmRDUVVOd1JTeGhRVUZoTEVOQlFVTXNSVUZCUlN4WFFVRlhMRVZCUVVVc1owTkJRV2RETEVWQlFVVXNRMEZCUXp0blFrRkRhRVVzYjBKQlFXOUNMRU5CUVVNN2IwSkJRMjVDTEZkQlFWY3NSVUZCUlN4dlEwRkJiME03YVVKQlEyeEVMRU5CUVVNN1lVRkRTQ3hGUVVORUxHMUNRVUZ0UWl4RFFVRkRMRzlDUVVGdlFpeERRVUZETEdOQlFXTXNRMEZCUXl4RFFVTjZSQ3hEUVVGRE8xRkJRMG9zUTBGQlF6dFJRVVZFTEU5QlFVOHNVMEZCVXl4RFFVRkRPMGxCUTI1Q0xFTkJRVU03U1VGRlR5eE5RVUZOTEVOQlFVTXNhMEpCUVd0Q0xFTkJReTlDTEZWQlFXdENMRVZCUTJ4Q0xFOUJRV2RETEVWQlEyaERMRlZCUVdkRkxFVkJRMmhGTEdWQlFYZEZPMUZCUlhoRkxFOUJRVThzUlVGQlJTeFZRVUZWTEVWQlFVVXNUMEZCVHl4RlFVRkZMRlZCUVZVc1JVRkJSU3hsUVVGbExFVkJRVVVzUTBGQlF6dEpRVU01UkN4RFFVRkRPMGxCUlU4c1RVRkJUU3hEUVVGRExHMUNRVUZ0UWl4RFFVRkRMRWxCUVZrN1VVRkROME1zVFVGQlRTeFpRVUZaTEVkQlFVY3NTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0UlFVTjRReXhQUVVGUExGbEJRVmtzUTBGQlF6dEpRVU4wUWl4RFFVRkRPMGxCUlU4c1RVRkJUU3hEUVVGRExIVkNRVUYxUWl4RFFVTndReXhKUVVGWk8xRkJSVm9zVFVGQlRTeFJRVUZSTEVkQlFVY3NTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eE5RVUZOTEVOQlFVTXNRMEZCUXl4RFFVRkRMRVZCUVVVc1JVRkJSU3hEUVVGRExFTkJRVU1zUTBGQlF5eFZRVUZWTEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNc1EwRkJRenRSUVVOc1JTeE5RVUZOTEUxQlFVMHNSMEZCTkVRc1JVRkJSU3hEUVVGRE8xRkJRek5GTEZGQlFWRXNRMEZCUXl4UFFVRlBMRU5CUVVNc1EwRkJReXhIUVVGSExFVkJRVVVzUTBGQlF5eEZRVUZGTEVWQlFVVTdXVUZETVVJc1RVRkJUU3hKUVVGSkxFZEJRVWNzUjBGQlJ5eERRVUZETEU5QlFVOHNRMEZCUXl4SFFVRkhMRVZCUVVVc1JVRkJSU3hEUVVGRExFTkJRVU03V1VGRGJFTXNUVUZCVFN4RFFVRkRMRWxCUVVrc1EwRkJReXhGUVVGRkxGTkJRVk1zUlVGQlJTeExRVUZMTEVOQlFVTXNTVUZCU1N4RFFVRlJMRVZCUVVVc1MwRkJTeXhGUVVGRkxFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTTdVVUZETTBRc1EwRkJReXhEUVVGRExFTkJRVU03VVVGRFNDeEpRVU5GTEVsQlFVa3NRMEZCUXl4VlFVRlZMRU5CUVVNc1UwRkJVeXhEUVVGRE8xbEJRekZDTEVsQlFVa3NRMEZCUXl4VlFVRlZMRU5CUVVNc1lVRkJZU3hEUVVGRE8xbEJRemxDTEVsQlFVa3NRMEZCUXl4VlFVRlZMRU5CUVVNc1QwRkJUeXhEUVVGRE8xbEJRM2hDTEVsQlFVa3NRMEZCUXl4VlFVRlZMRU5CUVVNc1QwRkJUeXhEUVVGRExFVkJRM2hDTEVOQlFVTTdXVUZEUkN4TlFVRk5MRU5CUVVNc1NVRkJTU3hEUVVGRExFVkJRVVVzVTBGQlV5eEZRVUZGTEZWQlFWVXNSVUZCVXl4RlFVRkZMRXRCUVVzc1JVRkJSU3hSUVVGUkxFTkJRVU1zVFVGQlRTeEZRVUZGTEVOQlFVTXNRMEZCUXp0UlFVTXhSU3hEUVVGRE8xRkJRMFFzVDBGQlR5eE5RVUZOTEVOQlFVTTdTVUZEYUVJc1EwRkJRenRKUVVWUExFMUJRVTBzUTBGQlF5eHJRa0ZCYTBJc1EwRkRMMElzU1VGQldUdFJRVVZhTEUxQlFVMHNVVUZCVVN4SFFVRkhMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTXNUVUZCVFN4RFFVRkRMRU5CUVVNc1EwRkJReXhGUVVGRkxFVkJRVVVzUTBGQlF5eERRVUZETEVOQlFVTXNWVUZCVlN4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU03VVVGRGJFVXNUVUZCVFN4TlFVRk5MRWRCUVRSRUxFVkJRVVVzUTBGQlF6dFJRVU16UlN4UlFVRlJMRU5CUVVNc1QwRkJUeXhEUVVGRExFTkJRVU1zUjBGQlJ5eEZRVUZGTEVOQlFVTXNSVUZCUlN4RlFVRkZPMWxCUXpGQ0xFMUJRVTBzU1VGQlNTeEhRVUZITEVkQlFVY3NRMEZCUXl4UFFVRlBMRU5CUVVNc1IwRkJSeXhGUVVGRkxFVkJRVVVzUTBGQlF5eERRVUZETzFsQlEyeERMRTFCUVUwc1EwRkJReXhKUVVGSkxFTkJRVU1zUlVGQlJTeFRRVUZUTEVWQlFVVXNTMEZCU3l4RFFVRkRMRWxCUVVrc1EwRkJVU3hGUVVGRkxFdEJRVXNzUlVGQlJTeERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRPMUZCUXpORUxFTkJRVU1zUTBGQlF5eERRVUZETzFGQlEwZ3NTVUZCU1N4SlFVRkpMRU5CUVVNc1ZVRkJWU3hEUVVGRExGRkJRVkVzUTBGQlF5eEZRVUZGTEVOQlFVTTdXVUZET1VJc1RVRkJUU3hEUVVGRExFbEJRVWtzUTBGQlF5eEZRVUZGTEZOQlFWTXNSVUZCUlN4VlFVRlZMRVZCUVZNc1JVRkJSU3hMUVVGTExFVkJRVVVzVVVGQlVTeERRVUZETEUxQlFVMHNSVUZCUlN4RFFVRkRMRU5CUVVNN1VVRkRNVVVzUTBGQlF6dFJRVU5FTEU5QlFVOHNUVUZCVFN4RFFVRkRPMGxCUTJoQ0xFTkJRVU03U1VGRlR5eE5RVUZOTEVOQlFVTXNlVUpCUVhsQ0xFTkJRVU1zVlVGQmEwSTdVVUZEZWtRc1QwRkJUeXhMUVVGTExGVkJRVlVzV1VGQldTeERRVVZvUXl4SFFVRkhMRWxCUVZjN1dVRkZaQ3hOUVVGTkxFZEJRVWNzUjBGQlVTeEpRVUZKTEVOQlFVTXNSMEZCUnl4RlFVRkZMRWRCUVVjc1JVRkJSU3hEUVVGRExGbEJRVmtzUTBGQlF5eERRVUZETzFsQlF5OURMRWxCUVVrc1EwRkJRenRuUWtGRFNDeEpRVUZKTEVkQlFVYzdiMEpCUVVVc1IwRkJSeXhEUVVGRExFdEJRVXNzUTBGQlF5d3dRa0ZCTUVJc1ZVRkJWU3hIUVVGSExFTkJRVU1zUTBGQlF6dG5Ra0ZETlVRc1RVRkJUU3hGUVVGRkxFZEJRVWNzUlVGQlJTeEhRVUZITEVOQlFVTXNUVUZCVFN4SlFVRkpMRU5CUVVNc1RVRkJUU3hEUVVGRExFVkJRVVVzUlVGQlJTeFZRVUZWTEVWQlFVVXNTVUZCU1N4RFFVRkRMRU5CUVVNc1EwRkJReXhIUVVGSExFTkJRek5FTEZsQlFWa3NRMEZEWWl4RFFVRkRPMmRDUVVOR0xFMUJRVTBzVjBGQlZ5eEhRVUZITEVsQlFVa3NRMEZCUXl4WFFVRlhMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU03WjBKQlF6RkRMRTFCUVUwc1ZVRkJWU3hIUVVGSExHMUNRVUZ0UWl4RFFVRkRMR3RDUVVGclFpeERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRPMmRDUVVOb1JTeEpRVU5GTEZkQlFWY3NSVUZCUlN4SlFVRkpPMjlDUVVOcVFpeFBRVUZQTEZkQlFWY3NRMEZCUXl4SlFVRkpMRU5CUVVNc1ZVRkJWU3hEUVVGRExFdEJRVXNzVlVGQlZTeEZRVU5zUkN4RFFVRkRPMjlDUVVORUxFOUJRVThzVjBGQlZ5eERRVUZETEVsQlFVa3NRMEZCUXl4VlFVRlZMRU5CUVVNc1EwRkJReXhIUVVGSExGVkJRVlVzUTBGQlF5eERRVUZETzJkQ1FVTnlSQ3hEUVVGRE8yZENRVU5FTEVsQlFVa3NUMEZCVHl4WFFVRlhMRU5CUVVNc1ZVRkJWU3hEUVVGRExFdEJRVXNzVlVGQlZTeEZRVUZGTEVOQlFVTTdiMEpCUTJ4RUxFOUJRVThzVjBGQlZ5eERRVUZETEZWQlFWVXNRMEZCUXl4RFFVRkRMRWRCUVVjc1ZVRkJWU3hEUVVGRExFTkJRVU03WjBKQlEyaEVMRU5CUVVNN1owSkJRMFFzU1VGQlNTeFhRVUZYTEVWQlFVVXNTMEZCU3l4SlFVRkpMRTlCUVU4c1YwRkJWeXhEUVVGRExFdEJRVXNzUzBGQlN5eFZRVUZWTEVWQlFVVXNRMEZCUXp0dlFrRkRiRVVzVDBGQlR5eFhRVUZYTEVOQlFVTXNTMEZCU3l4RFFVRkRMRlZCUVZVc1JVRkJSU3hIUVVGSExGVkJRVlVzUTBGQlF5eERRVUZETzJkQ1FVTjBSQ3hEUVVGRE8yZENRVU5FTEVsQlFVa3NUMEZCVHl4WFFVRlhMRU5CUVVNc1UwRkJVeXhMUVVGTExGVkJRVlVzUlVGQlJTeERRVUZETzI5Q1FVTm9SQ3hQUVVGUExGZEJRVmNzUTBGQlF5eFRRVUZUTEVOQlFVTXNWVUZCVlN4RlFVRkZMRWRCUVVjc1ZVRkJWU3hGUVVGRkxFZEJRVWNzUTBGQlF5eERRVUZETzJkQ1FVTXZSQ3hEUVVGRE8yZENRVU5FTEUxQlFVMHNTVUZCU1N4aFFVRmhMRU5CUTNKQ0xIVkNRVUYxUWl4VlFVRlZMR3RDUVVGclFpeFhRVUZYTEVWQlFVVXNWMEZCVnl4RlFVRkZMRWxCUVVrc1JVRkJSU3hEUVVOd1JpeERRVUZETzFsQlEwb3NRMEZCUXp0WlFVRkRMRTlCUVU4c1EwRkJUU3hGUVVGRkxFTkJRVU03WjBKQlEyaENMRWxCUVVrc1IwRkJSenR2UWtGQlJTeEhRVUZITEVOQlFVTXNTMEZCU3l4RFFVRkRMR2xDUVVGcFFpeFZRVUZWTEZWQlFWVXNSVUZCUlN4RFFVRkRMRU5CUVVNc1EwRkJRenRuUWtGRE4wUXNUVUZCVFN4dFFrRkJiVUlzUTBGQlF5eFpRVUZaTEVOQlEzQkRMRU5CUVVNc1JVRkRSQ3hwUWtGQmFVSXNWVUZCVlN4VlFVRlZMRU5CUTNSRExFTkJRVU03V1VGRFNpeERRVUZETzFGQlEwZ3NRMEZCUXl4RFFVRkRPMGxCUTBvc1EwRkJRenRKUVVWUExFMUJRVTBzUTBGQlF5eG5Ra0ZCWjBJc1EwRkJReXhKUVVGWE8xRkJRM3BETEVsQlFVa3NTVUZCU1N4RFFVRkRMRTFCUVUwc1MwRkJTeXhEUVVGRE8xbEJRVVVzVDBGQlR5eEpRVUZKTEVOQlFVTTdVVUZEYmtNc1RVRkJUU3hKUVVGSkxFZEJRVWNzU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4TlFVRk5MRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU03VVVGRGJrTXNTVUZCU1N4SlFVRkpMRWxCUVVrc1QwRkJUeXhKUVVGSkxFdEJRVXNzVVVGQlVTeEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMRTlCUVU4c1EwRkJReXhKUVVGSkxFTkJRVU1zUlVGQlJTeERRVUZETzFsQlF6ZEVMRTFCUVUwc1VVRkJVU3hIUVVGSExFbEJRVWtzUTBGQlF5eEhRVUZITEVWQlFVVXNRMEZCUXp0WlFVTTFRaXhOUVVGTkxGbEJRVmtzUjBGQlJ5eFJRVUZSTEVOQlFVTXNVMEZCVXl4TFFVRkxMRk5CUVZNc1EwRkJRenRaUVVOMFJDeE5RVUZOTEZGQlFWRXNSMEZCUnl4UlFVRlJMRU5CUVVNc1MwRkJTeXhMUVVGTExGTkJRVk1zUTBGQlF6dFpRVU01UXl4TlFVRk5MRk5CUVZNc1IwRkJSeXhSUVVGUkxFTkJRVU1zVFVGQlRTeExRVUZMTEZOQlFWTXNRMEZCUXp0WlFVTm9SQ3hKUVVGSkxFTkJRVU1zV1VGQldTeEpRVUZKTEVOQlFVTXNVVUZCVVN4SlFVRkpMRU5CUVVNc1UwRkJVenRuUWtGQlJTeFBRVUZQTEVsQlFVa3NRMEZCUXp0WlFVTXhSQ3hOUVVGTkxFMUJRVTBzUjBGQlZTeEZRVUZGTEVOQlFVTTdXVUZEZWtJc1NVRkJTU3haUVVGWk8yZENRVUZGTEUxQlFVMHNRMEZCUXl4SlFVRkpMRU5CUVVNc1VVRkJVU3hEUVVGRExGTkJRVk1zUTBGQlF5eERRVUZETzJsQ1FVTTNReXhKUVVGSkxGRkJRVkVzU1VGQlNTeFRRVUZUTzJkQ1FVRkZMRTFCUVUwc1EwRkJReXhKUVVGSkxFTkJRVU1zVTBGQlV5eERRVUZETEVOQlFVTTdXVUZEZGtRc1NVRkJTU3hSUVVGUk8yZENRVUZGTEUxQlFVMHNRMEZCUXl4SlFVRkpMRU5CUVVNc1VVRkJVU3hEUVVGRExFdEJRVXNzUTBGQlF5eERRVUZETzFsQlF6RkRMRWxCUVVrc1UwRkJVenRuUWtGQlJTeE5RVUZOTEVOQlFVTXNTVUZCU1N4RFFVRkRMRkZCUVZFc1EwRkJReXhOUVVGTkxFTkJRVU1zUTBGQlF6dFpRVU0xUXl4UFFVRlBMRU5CUVVNc1IwRkJSeXhKUVVGSkxFVkJRVVVzUjBGQlJ5eE5RVUZOTEVOQlFVTXNRMEZCUXp0UlFVTTVRaXhEUVVGRE8xRkJRMFFzVDBGQlR5eEpRVUZKTEVOQlFVTTdTVUZEWkN4RFFVRkRPMGxCUlU4c1RVRkJUU3hEUVVGRExHdENRVUZyUWl4RFFVRkRMRWxCUVZjN1VVRkRNME1zVFVGQlRTeFZRVUZWTEVkQlFVY3NiVUpCUVcxQ0xFTkJRVU1zWjBKQlFXZENMRU5CUVVNc1NVRkJTU3hEUVVGRExFTkJRVU03VVVGRE9VUXNTVUZCU1N4VlFVRlZMRU5CUVVNc1RVRkJUU3hMUVVGTExFTkJRVU03V1VGQlJTeFBRVUZQTEZWQlFWVXNRMEZCUXp0UlFVVXZReXhOUVVGTkxFbEJRVWtzUjBGQlJ5eFZRVUZWTEVOQlFVTXNWVUZCVlN4RFFVRkRMRTFCUVUwc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF6dFJRVU12UXl4SlFVRkpMRU5CUVVNc1NVRkJTU3hKUVVGSkxFOUJRVThzU1VGQlNTeExRVUZMTEZGQlFWRXNTVUZCU1N4TFFVRkxMRU5CUVVNc1QwRkJUeXhEUVVGRExFbEJRVWtzUTBGQlF5eEZRVUZGTEVOQlFVTTdXVUZETjBRc1QwRkJUeXhWUVVGVkxFTkJRVU03VVVGRGNFSXNRMEZCUXp0UlFVVkVMRTFCUVUwc1VVRkJVU3hIUVVGSExFbEJRVEpDTEVOQlFVTTdVVUZETjBNc1RVRkJUU3hqUVVGakxFZEJRMnhDTEZGQlFWRXNRMEZCUXl4VFFVRlRMRXRCUVVzc1UwRkJVenRaUVVOb1F5eFJRVUZSTEVOQlFVTXNTMEZCU3l4TFFVRkxMRk5CUVZNN1dVRkROVUlzVVVGQlVTeERRVUZETEUxQlFVMHNTMEZCU3l4VFFVRlRPMWxCUXpkQ0xGRkJRVkVzUTBGQlF5eFJRVUZSTEV0QlFVc3NVMEZCVXl4RFFVRkRPMUZCUld4RExFbEJRVWtzUTBGQlF5eGpRVUZqTEVWQlFVVXNRMEZCUXp0WlFVTndRaXhWUVVGVkxFTkJRVU1zUjBGQlJ5eEZRVUZGTEVOQlFVTTdXVUZEYWtJc1QwRkJUeXhWUVVGVkxFTkJRVU03VVVGRGNFSXNRMEZCUXp0UlFVVkVMRlZCUVZVc1EwRkJReXhIUVVGSExFVkJRVVVzUTBGQlF6dFJRVU5xUWl4SlFVRkpMRkZCUVZFc1EwRkJReXhUUVVGVExFdEJRVXNzVTBGQlV6dFpRVUZGTEZWQlFWVXNRMEZCUXl4SlFVRkpMRU5CUVVNc1VVRkJVU3hEUVVGRExGTkJRVk1zUTBGQlF5eERRVUZETzFGQlF6RkZMRWxCUVVrc1VVRkJVU3hEUVVGRExFdEJRVXNzUzBGQlN5eFRRVUZUTzFsQlFVVXNWVUZCVlN4RFFVRkRMRWxCUVVrc1EwRkJReXhSUVVGUkxFTkJRVU1zUzBGQlN5eERRVUZETEVOQlFVTTdVVUZEYkVVc1NVRkJTU3hSUVVGUkxFTkJRVU1zVFVGQlRTeExRVUZMTEZOQlFWTTdXVUZCUlN4VlFVRlZMRU5CUVVNc1NVRkJTU3hEUVVGRExGRkJRVkVzUTBGQlF5eE5RVUZOTEVOQlFVTXNRMEZCUXp0UlFVTndSU3hKUVVGSkxGRkJRVkVzUTBGQlF5eFJRVUZSTEV0QlFVc3NVMEZCVXp0WlFVRkZMRlZCUVZVc1EwRkJReXhKUVVGSkxFTkJRVU1zVVVGQlVTeERRVUZETEZGQlFWRXNRMEZCUXl4RFFVRkRPMUZCUTNoRkxFOUJRVThzVlVGQlZTeERRVUZETzBsQlEzQkNMRU5CUVVNN1NVRkZUeXhOUVVGTkxFTkJRVU1zYzBKQlFYTkNMRU5CUTI1RExGZEJRV3RETEVWQlEyeERMR05CUVhOQ08xRkJSWFJDTEU5QlFVODdXVUZEVEN4eFFrRkJjVUlzUTBGQlF5eFhRVUZYTEVWQlFVVXNUVUZCVFN4RFFVRkRPMWxCUXpGRExGbEJRVmtzUTBGQlF5eEZRVUZGTEU5QlFVOHNSVUZCUlN4blFrRkJaMElzWTBGQll5eEhRVUZITEVWQlFVVXNRMEZCUXp0WlFVTTFSQ3hQUVVGUExFTkJRVU03WjBKQlEwNHNWMEZCVnl4RlFVRkZMR1ZCUVdVc1kwRkJZeXhGUVVGRk8yZENRVU0xUXl4SlFVRkpMRVZCUVVVc1RVRkJUU3hEUVVGRExHRkJRV0VzUTBGQlF5eE5RVUZOTEVWQlFVVXNWMEZCVnl4RFFVRkRPMkZCUTJoRUxFTkJRVU03V1VGRFJpeHJRa0ZCYTBJc1EwRkJRenRuUWtGRGFrSXNWMEZCVnl4RlFVRkZMRWRCUVVjc1kwRkJZeXgzUWtGQmQwSTdaMEpCUTNSRUxFMUJRVTBzUlVGQlJTeEZRVUZGTEVsQlFVa3NSVUZCUlN4aFFVRmhMRU5CUVVNc1YwRkJWeXhEUVVGRExFVkJRVVU3WVVGRE4wTXNRMEZCUXp0WlFVTkdMSEZDUVVGeFFpeERRVUZETEVWQlFVVXNWMEZCVnl4RlFVRkZMRFJDUVVFMFFpeEZRVUZGTEVOQlFVTTdXVUZEY0VVc09FSkJRVGhDTEVOQlFVTTdaMEpCUXpkQ0xGZEJRVmNzUlVGQlJTd3lRMEZCTWtNN1lVRkRla1FzUTBGQlF6dFRRVU5JTEVOQlFVTTdTVUZEU2l4RFFVRkRPMGxCUlU4c1RVRkJUU3hEUVVGRExHOUNRVUZ2UWl4RFFVTnFReXhYUVVGclF5eEZRVU5zUXl4alFVRnpRanRSUVVWMFFpeFBRVUZQTzFsQlEwd3NjVUpCUVhGQ0xFTkJRVU1zVjBGQlZ5eEZRVUZGTEUxQlFVMHNSVUZCUlN4TlFVRk5MRU5CUVVNN1dVRkRiRVFzV1VGQldTeERRVUZETEVWQlFVVXNUMEZCVHl4RlFVRkZMR2RDUVVGblFpeGpRVUZqTEVkQlFVY3NSVUZCUlN4RFFVRkRPMWxCUXpWRUxFOUJRVThzUTBGQlF6dG5Ra0ZEVGl4WFFVRlhMRVZCUVVVc1pVRkJaU3hqUVVGakxFVkJRVVU3WjBKQlF6VkRMRTFCUVUwc1JVRkJSVHR2UWtGRFRpeEpRVUZKTEVWQlFVVXNUMEZCVHp0dlFrRkRZaXhMUVVGTExFVkJRVVVzUlVGQlJTeEpRVUZKTEVWQlFVVXNZVUZCWVN4RFFVRkRMRmRCUVZjc1EwRkJReXhGUVVGRk8ybENRVU0xUXp0aFFVTkdMRU5CUVVNN1dVRkRSaXhyUWtGQmEwSXNRMEZCUXp0blFrRkRha0lzVjBGQlZ5eEZRVUZGTEVkQlFVY3NZMEZCWXl4M1FrRkJkMEk3WjBKQlEzUkVMRTFCUVUwc1JVRkJSVHR2UWtGRFRpeEpRVUZKTEVWQlFVVXNUMEZCVHp0dlFrRkRZaXhMUVVGTExFVkJRVVVzUlVGQlJTeEpRVUZKTEVWQlFVVXNZVUZCWVN4RFFVRkRMRmRCUVZjc1EwRkJReXhGUVVGRk8ybENRVU0xUXp0aFFVTkdMRU5CUVVNN1dVRkRSaXh4UWtGQmNVSXNRMEZCUXl4RlFVRkZMRmRCUVZjc1JVRkJSU3cwUWtGQk5FSXNSVUZCUlN4RFFVRkRPMWxCUTNCRkxEaENRVUU0UWl4RFFVRkRPMmRDUVVNM1FpeFhRVUZYTEVWQlFVVXNNa05CUVRKRE8yRkJRM3BFTEVOQlFVTTdVMEZEU0N4RFFVRkRPMGxCUTBvc1EwRkJRenRKUVVWUExFMUJRVTBzUTBGQlF5eHJRa0ZCYTBJc1EwRkRMMElzVjBGQmEwTXNSVUZEYkVNc1kwRkJjMEk3VVVGRmRFSXNUMEZCVHp0WlFVTk1MSEZDUVVGeFFpeERRVUZETEZkQlFWY3NSVUZCUlN4TFFVRkxMRVZCUVVVc1RVRkJUU3hEUVVGRE8xbEJRMnBFTEZsQlFWa3NRMEZCUXl4RlFVRkZMRTlCUVU4c1JVRkJSU3haUVVGWkxHTkJRV01zYTBKQlFXdENMRVZCUVVVc1EwRkJRenRaUVVOMlJTeFJRVUZSTEVOQlFVTXNSVUZCUlN4SlFVRkpMRVZCUVVVc1MwRkJTeXhGUVVGRkxGRkJRVkVzUlVGQlJTeEpRVUZKTEVWQlFVVXNTVUZCU1N4RlFVRkZMRTlCUVU4c1JVRkJSU3hEUVVGRE8xbEJRM2hFTEdGQlFXRXNRMEZCUXp0blFrRkRXaXhYUVVGWExFVkJRVVVzUjBGQlJ5eGpRVUZqTERCQ1FVRXdRanRuUWtGRGVFUXNUVUZCVFN4RlFVRkZPMjlDUVVOT0xFbEJRVWtzUlVGQlJTeFBRVUZQTzI5Q1FVTmlMRXRCUVVzc1JVRkJSU3hGUVVGRkxFbEJRVWtzUlVGQlJTeGhRVUZoTEVOQlFVTXNWMEZCVnl4RFFVRkRMRVZCUVVVN2FVSkJRelZETzJGQlEwWXNRMEZCUXp0WlFVTkdMRzFDUVVGdFFpeERRVUZETzJkQ1FVTnNRaXhYUVVGWExFVkJRVVVzVFVGQlRTeGpRVUZqTERCRFFVRXdRenRoUVVNMVJTeERRVUZETzFOQlEwZ3NRMEZCUXp0SlFVTktMRU5CUVVNN1NVRkZUeXhOUVVGTkxFTkJRVU1zYjBKQlFXOUNMRU5CUTJwRExGZEJRV3RETEVWQlEyeERMR05CUVhOQ0xFVkJRM1JDTEdGQlFXbERPMUZCUldwRExFOUJRVTg3V1VGRFRDeHhRa0ZCY1VJc1EwRkJReXhYUVVGWExFVkJRVVVzUzBGQlN5eEZRVUZGTEUxQlFVMHNRMEZCUXp0WlFVTnFSQ3hyUWtGQmEwSXNRMEZCUXl4aFFVRmhMRU5CUVVNN1dVRkRha01zV1VGQldTeERRVUZETzJkQ1FVTllMRTlCUVU4c1JVRkJSU3h2UWtGQmIwSXNZMEZCWXl3MlFrRkJOa0k3WVVGRGVrVXNRMEZCUXp0WlFVTkdMRTlCUVU4c1EwRkJRenRuUWtGRFRpeFhRVUZYTEVWQlFVVXNOa05CUVRaRExHTkJRV01zUlVGQlJUdG5Ra0ZETVVVc1RVRkJUU3hGUVVGRk8yOUNRVU5PTEVsQlFVa3NSVUZCUlN4UFFVRlBPMjlDUVVOaUxFbEJRVWtzUlVGQlJTeGhRVUZoTEVOQlFVTXNUVUZCVFN4RFFVRkRMR0ZCUVdFc1EwRkJReXhOUVVGTkxFVkJRVVVzVjBGQlZ5eERRVUZETEVOQlFVTTdhVUpCUXk5RU8yRkJRMFlzUTBGQlF6dFpRVU5HTEdGQlFXRXNRMEZCUXp0blFrRkRXaXhYUVVGWExFVkJRVVVzUjBGQlJ5eGpRVUZqTEhkQ1FVRjNRanRuUWtGRGRFUXNUVUZCVFN4RlFVRkZPMjlDUVVOT0xFbEJRVWtzUlVGQlJTeFBRVUZQTzI5Q1FVTmlMRXRCUVVzc1JVRkJSU3hGUVVGRkxFbEJRVWtzUlVGQlJTeGhRVUZoTEVOQlFVTXNWMEZCVnl4RFFVRkRMRVZCUVVVN2FVSkJRelZETzJGQlEwWXNRMEZCUXp0WlFVTkdMRzFDUVVGdFFpeERRVUZETzJkQ1FVTnNRaXhYUVVGWExFVkJRVVVzVFVGQlRTeGpRVUZqTERCRFFVRXdRenRoUVVNMVJTeERRVUZETzFsQlEwWXNjVUpCUVhGQ0xFTkJRVU1zUlVGQlJTeFhRVUZYTEVWQlFVVXNORUpCUVRSQ0xFVkJRVVVzUTBGQlF6dFRRVU55UlN4RFFVRkRPMGxCUTBvc1EwRkJRenRKUVVWUExFMUJRVTBzUTBGQlF5eHZRa0ZCYjBJc1EwRkRha01zVjBGQmEwTXNSVUZEYkVNc1kwRkJjMElzUlVGRGRFSXNZVUZCYVVNN1VVRkZha01zVDBGQlR6dFpRVU5NTEhGQ1FVRnhRaXhEUVVGRExGZEJRVmNzUlVGQlJTeFJRVUZSTEVWQlFVVXNUVUZCVFN4RFFVRkRPMWxCUTNCRUxHdENRVUZyUWl4RFFVRkRMR0ZCUVdFc1EwRkJRenRaUVVOcVF5eFpRVUZaTEVOQlFVTXNSVUZCUlN4UFFVRlBMRVZCUVVVc1ZVRkJWU3hqUVVGakxHdENRVUZyUWl4RlFVRkZMRU5CUVVNN1dVRkRja1VzVVVGQlVTeERRVUZETEVWQlFVVXNTVUZCU1N4RlFVRkZMRXRCUVVzc1JVRkJSU3hSUVVGUkxFVkJRVVVzU1VGQlNTeEZRVUZGTEVsQlFVa3NSVUZCUlN4UFFVRlBMRVZCUVVVc1EwRkJRenRaUVVONFJDeGhRVUZoTEVOQlFVTTdaMEpCUTFvc1YwRkJWeXhGUVVGRkxFZEJRVWNzWTBGQll5eDNRa0ZCZDBJN1owSkJRM1JFTEUxQlFVMHNSVUZCUlR0dlFrRkRUaXhKUVVGSkxFVkJRVVVzVDBGQlR6dHZRa0ZEWWl4TFFVRkxMRVZCUVVVc1JVRkJSU3hKUVVGSkxFVkJRVVVzWVVGQllTeERRVUZETEZkQlFWY3NRMEZCUXl4RlFVRkZPMmxDUVVNMVF6dGhRVU5HTEVOQlFVTTdXVUZEUml4dFFrRkJiVUlzUTBGQlF6dG5Ra0ZEYkVJc1YwRkJWeXhGUVVGRkxFMUJRVTBzWTBGQll5d3dRMEZCTUVNN1lVRkROVVVzUTBGQlF6dFRRVU5JTEVOQlFVTTdTVUZEU2l4RFFVRkRPMGxCUlU4c1RVRkJUU3hEUVVGRExHTkJRV01zUTBGRE0wSXNWMEZCYTBNc1JVRkRiRU1zWTBGQmMwSXNSVUZEZEVJc1lVRkJhVU1zUlVGRGFrTXNUVUZCWXp0UlFVVmtMRTlCUVU4N1dVRkRUQ3h4UWtGQmNVSXNRMEZCUXl4WFFVRlhMRVZCUVVVc1MwRkJTeXhGUVVGRkxFMUJRVTBzUTBGQlF6dFpRVU5xUkN4clFrRkJhMElzUTBGQlF5eGhRVUZoTEVOQlFVTTdXVUZEYWtNc1dVRkJXU3hEUVVGRExFVkJRVVVzVDBGQlR5eEZRVUZGTEdOQlFXTXNZMEZCWXl4blFrRkJaMElzUlVGQlJTeERRVUZETzFsQlEzWkZMR0ZCUVdFc1EwRkJRenRuUWtGRFdpeFhRVUZYTEVWQlFVVXNSMEZCUnl4alFVRmpMREJDUVVFd1FqdG5Ra0ZEZUVRc1RVRkJUU3hGUVVGRkxFVkJRVVVzU1VGQlNTeEZRVUZGTEdGQlFXRXNRMEZCUXl4WFFVRlhMRU5CUVVNc1JVRkJSVHRoUVVNM1F5eERRVUZETzFsQlEwWXNiVUpCUVcxQ0xFTkJRVU03WjBKQlEyeENMRmRCUVZjc1JVRkJSU3hOUVVGTkxHTkJRV01zTUVOQlFUQkRPMkZCUXpWRkxFTkJRVU03VTBGRFNDeERRVUZETzBsQlEwb3NRMEZCUXp0SlFVVlBMRTFCUVUwc1EwRkJReXhuUWtGQlowSXNRMEZETjBJc1YwRkJhME1zUlVGRGJFTXNZMEZCYzBJc1JVRkRkRUlzWVVGQmFVTXNSVUZEYWtNc1RVRkJZenRSUVVWa0xFOUJRVTg3V1VGRFRDeHhRa0ZCY1VJc1EwRkJReXhYUVVGWExFVkJRVVVzUzBGQlN5eEZRVUZGTEUxQlFVMHNRMEZCUXp0WlFVTnFSQ3hyUWtGQmEwSXNRMEZCUXl4aFFVRmhMRU5CUVVNN1dVRkRha01zV1VGQldTeERRVUZETzJkQ1FVTllMRTlCUVU4c1JVRkJSU3gxUWtGQmRVSXNZMEZCWXl3MlFrRkJOa0k3WVVGRE5VVXNRMEZCUXp0WlFVTkdMRTlCUVU4c1EwRkJRenRuUWtGRFRpeFhRVUZYTEVWQlFVVXNLME5CUVN0RExHTkJRV01zUlVGQlJUdG5Ra0ZETlVVc1NVRkJTU3hGUVVGRkxFMUJRVTBzUTBGQlF5eGhRVUZoTEVOQlFVTXNUVUZCVFN4RlFVRkZMRmRCUVZjc1EwRkJRenRoUVVOb1JDeERRVUZETzFsQlEwWXNZVUZCWVN4RFFVRkRPMmRDUVVOYUxGZEJRVmNzUlVGQlJTeEhRVUZITEdOQlFXTXNkMEpCUVhkQ08yZENRVU4wUkN4TlFVRk5MRVZCUVVVc1JVRkJSU3hKUVVGSkxFVkJRVVVzWVVGQllTeERRVUZETEZkQlFWY3NRMEZCUXl4RlFVRkZPMkZCUXpkRExFTkJRVU03V1VGRFJpeHRRa0ZCYlVJc1EwRkJRenRuUWtGRGJFSXNWMEZCVnl4RlFVRkZMRTFCUVUwc1kwRkJZeXd3UTBGQk1FTTdZVUZETlVVc1EwRkJRenRaUVVOR0xIRkNRVUZ4UWl4RFFVRkRMRVZCUVVVc1YwRkJWeXhGUVVGRkxEUkNRVUUwUWl4RlFVRkZMRU5CUVVNN1UwRkRja1VzUTBGQlF6dEpRVU5LTEVOQlFVTTdTVUZGVHl4TlFVRk5MRU5CUVVNc1owSkJRV2RDTEVOQlF6ZENMRmRCUVd0RExFVkJRMnhETEdOQlFYTkNMRVZCUTNSQ0xHRkJRV2xETEVWQlEycERMRTFCUVdNN1VVRkZaQ3hQUVVGUE8xbEJRMHdzY1VKQlFYRkNMRU5CUVVNc1YwRkJWeXhGUVVGRkxGRkJRVkVzUlVGQlJTeE5RVUZOTEVOQlFVTTdXVUZEY0VRc2EwSkJRV3RDTEVOQlFVTXNZVUZCWVN4RFFVRkRPMWxCUTJwRExGbEJRVmtzUTBGQlF5eEZRVUZGTEU5QlFVOHNSVUZCUlN4WlFVRlpMR05CUVdNc1owSkJRV2RDTEVWQlFVVXNRMEZCUXp0WlFVTnlSU3hoUVVGaExFTkJRVU03WjBKQlExb3NWMEZCVnl4RlFVRkZMRWRCUVVjc1kwRkJZeXgzUWtGQmQwSTdaMEpCUTNSRUxFMUJRVTBzUlVGQlJTeEZRVUZGTEVsQlFVa3NSVUZCUlN4aFFVRmhMRU5CUVVNc1YwRkJWeXhEUVVGRExFVkJRVVU3WVVGRE4wTXNRMEZCUXp0WlFVTkdMRzFDUVVGdFFpeERRVUZETzJkQ1FVTnNRaXhYUVVGWExFVkJRVVVzVFVGQlRTeGpRVUZqTERCRFFVRXdRenRoUVVNMVJTeERRVUZETzFOQlEwZ3NRMEZCUXp0SlFVTktMRU5CUVVNN1NVRkZUeXhOUVVGTkxFTkJRVU1zYlVKQlFXMUNMRU5CUTJoRExGZEJRV3RETEVWQlEyeERMR05CUVhOQ08xRkJSWFJDTEU5QlFVODdXVUZEVEN4eFFrRkJjVUlzUTBGQlF5eFhRVUZYTEVWQlFVVXNTMEZCU3l4RlFVRkZMSGxDUVVGNVFpeERRVUZETzFsQlEzQkZMRmxCUVZrc1EwRkJRenRuUWtGRFdDeFBRVUZQTEVWQlFVVXNiME5CUVc5RExHTkJRV01zUjBGQlJ6dGhRVU12UkN4RFFVRkRPMWxCUTBZc1VVRkJVU3hEUVVGRE8yZENRVU5RTEVsQlFVa3NSVUZCUlN4UlFVRlJPMmRDUVVOa0xGZEJRVmNzUlVGQlJTeHRRMEZCYlVNN1lVRkRha1FzUTBGQlF6dFpRVU5HTEZGQlFWRXNRMEZCUXp0blFrRkRVQ3hKUVVGSkxFVkJRVVVzVFVGQlRUdG5Ra0ZEV2l4WFFVRlhMRVZCUTFRc2EwVkJRV3RGTzJGQlEzSkZMRU5CUVVNN1dVRkRSaXhSUVVGUkxFTkJRVU03WjBKQlExQXNTVUZCU1N4RlFVRkZMRmRCUVZjN1owSkJRMnBDTEZGQlFWRXNSVUZCUlN4SlFVRkpPMmRDUVVOa0xFbEJRVWtzUlVGQlJTeGpRVUZqTzJkQ1FVTndRaXhYUVVGWExFVkJRVVVzWjBOQlFXZERPMkZCUXpsRExFTkJRVU03V1VGRFJpeFJRVUZSTEVOQlFVTTdaMEpCUTFBc1NVRkJTU3hGUVVGRkxFOUJRVTg3WjBKQlEySXNVVUZCVVN4RlFVRkZMRWxCUVVrN1owSkJRMlFzVjBGQlZ5eEZRVUZGTEc5RFFVRnZRenRoUVVOc1JDeERRVUZETzFsQlEwWXNVVUZCVVN4RFFVRkRPMmRDUVVOUUxFbEJRVWtzUlVGQlJTeFJRVUZSTzJkQ1FVTmtMRkZCUVZFc1JVRkJSU3hKUVVGSk8yZENRVU5rTEZkQlFWY3NSVUZCUlN4dlEwRkJiME03WVVGRGJFUXNRMEZCUXp0WlFVTkdMR0ZCUVdFc1EwRkJReXhGUVVGRkxGZEJRVmNzUlVGQlJTeEhRVUZITEdOQlFXTXNaMEpCUVdkQ0xFVkJRVVVzUTBGQlF6dFpRVU5xUlN4dFFrRkJiVUlzUTBGQlF6dG5Ra0ZEYkVJc1YwRkJWeXhGUVVGRkxFMUJRVTBzWTBGQll5d3dRMEZCTUVNN1lVRkROVVVzUTBGQlF6dFRRVU5JTEVOQlFVTTdTVUZEU2l4RFFVRkRPMGxCUlU4c1RVRkJUU3hEUVVGRExESkNRVUV5UWl4RFFVTjRReXhYUVVGclF5eEZRVU5zUXl4alFVRnpRaXhGUVVOMFFpeEpRVUZaTEVWQlExb3NXVUZCYjBJN1VVRkZjRUlzVFVGQlRTeEpRVUZKTEVkQlFYbEVPMWxCUTJwRkxIRkNRVUZ4UWl4RFFVRkRMRmRCUVZjc1JVRkJSU3hMUVVGTExFVkJRVVVzU1VGQlNTeERRVUZETzFsQlF5OURMRmxCUVZrc1EwRkJReXhGUVVGRkxFOUJRVThzUlVGQlJTeFpRVUZaTEdOQlFXTXNWMEZCVnl4RlFVRkZMRU5CUVVNN1dVRkRhRVVzWVVGQllTeERRVUZETzJkQ1FVTmFMRmRCUVZjc1JVRkJSU3hIUVVGSExHTkJRV01zTUVKQlFUQkNPMkZCUTNwRUxFTkJRVU03VTBGRFNDeERRVUZETzFGQlJVWXNUVUZCVFN4UlFVRlJMRWRCUVVjc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4TlFVRk5MRU5CUVVNc1EwRkJReXhEUVVGRExFVkJRVVVzUlVGQlJTeERRVUZETEVOQlFVTXNRMEZCUXl4VlFVRlZMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF6dFJRVU5zUlN4UlFVRlJMRU5CUVVNc1QwRkJUeXhEUVVGRExFTkJRVU1zUjBGQlJ5eEZRVUZGTEVWQlFVVTdXVUZEZGtJc1RVRkJUU3hKUVVGSkxFZEJRVWNzUjBGQlJ5eERRVUZETEU5QlFVOHNRMEZCUXl4SFFVRkhMRVZCUVVVc1JVRkJSU3hEUVVGRExFTkJRVU03V1VGRGJFTXNTVUZCU1N4RFFVRkRMRWxCUVVrc1EwRkJReXhSUVVGUkxFTkJRVU1zUlVGQlJTeEpRVUZKTEVWQlFVVXNWMEZCVnl4RlFVRkZMRTlCUVU4c1NVRkJTU3haUVVGWkxFVkJRVVVzUTBGQlF5eERRVUZETEVOQlFVTTdVVUZEZEVVc1EwRkJReXhEUVVGRExFTkJRVU03VVVGRlNDeEpRVU5GTEVsQlFVa3NRMEZCUXl4VlFVRlZMRU5CUVVNc1UwRkJVeXhEUVVGRE8xbEJRekZDTEVsQlFVa3NRMEZCUXl4VlFVRlZMRU5CUVVNc1lVRkJZU3hEUVVGRE8xbEJRemxDTEVsQlFVa3NRMEZCUXl4VlFVRlZMRU5CUVVNc1QwRkJUeXhEUVVGRE8xbEJRM2hDTEVsQlFVa3NRMEZCUXl4VlFVRlZMRU5CUVVNc1QwRkJUeXhEUVVGRExFVkJRM2hDTEVOQlFVTTdXVUZEUkN4SlFVRkpMRU5CUVVNc1NVRkJTU3hEUVVOUUxGRkJRVkVzUTBGQlF6dG5Ra0ZEVUN4SlFVRkpMRVZCUVVVc1YwRkJWenRuUWtGRGFrSXNVVUZCVVN4RlFVRkZMRWxCUVVrN1owSkJRMlFzU1VGQlNTeEZRVUZGTEdOQlFXTTdaMEpCUTNCQ0xGZEJRVmNzUlVGQlJTeG5Ra0ZCWjBJN1lVRkRPVUlzUTBGQlF5eERRVU5JTEVOQlFVTTdVVUZEU2l4RFFVRkRPMUZCUTBRc1NVRkJTU3hKUVVGSkxFTkJRVU1zVlVGQlZTeERRVUZETEdGQlFXRXNRMEZCUXl4SlFVRkpMRWxCUVVrc1EwRkJReXhWUVVGVkxFTkJRVU1zVDBGQlR5eERRVUZETEVWQlFVVXNRMEZCUXp0WlFVTXZSQ3hKUVVGSkxFTkJRVU1zU1VGQlNTeERRVU5RTEZGQlFWRXNRMEZCUXl4RlFVRkZMRWxCUVVrc1JVRkJSU3hQUVVGUExFVkJRVVVzVVVGQlVTeEZRVUZGTEV0QlFVc3NSVUZCUlN4WFFVRlhMRVZCUVVVc1YwRkJWeXhGUVVGRkxFTkJRVU1zUlVGRGRFVXNVVUZCVVN4RFFVRkRPMmRDUVVOUUxFbEJRVWtzUlVGQlJTeFJRVUZSTzJkQ1FVTmtMRkZCUVZFc1JVRkJSU3hMUVVGTE8yZENRVU5tTEZkQlFWY3NSVUZCUlN4aFFVRmhPMkZCUXpOQ0xFTkJRVU1zUlVGRFJpeFJRVUZSTEVOQlFVTTdaMEpCUTFBc1NVRkJTU3hGUVVGRkxGVkJRVlU3WjBKQlEyaENMRkZCUVZFc1JVRkJSU3hMUVVGTE8yZENRVU5tTEZkQlFWY3NSVUZCUlN4blEwRkJaME03WVVGRE9VTXNRMEZCUXl4RFFVTklMRU5CUVVNN1VVRkRTaXhEUVVGRE8xRkJSVVFzU1VGQlNTeEpRVUZKTEVOQlFVTXNWVUZCVlN4RFFVRkRMRmxCUVZrc1EwRkJReXhKUVVGSkxFbEJRVWtzUTBGQlF5eFZRVUZWTEVOQlFVTXNVMEZCVXl4RFFVRkRMRVZCUVVVc1EwRkJRenRaUVVOb1JTeEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVTlFMRzFDUVVGdFFpeERRVUZETzJkQ1FVTnNRaXhYUVVGWExFVkJRVVVzVFVGQlRTeGpRVUZqTERCRFFVRXdRenRoUVVNMVJTeERRVUZETEVOQlEwZ3NRMEZCUXp0UlFVTktMRU5CUVVNN1VVRkZSQ3hKUVVORkxGbEJRVmtzUzBGQlN5eHhRa0ZCY1VJc1EwRkJReXhSUVVGUk8xbEJReTlETEZsQlFWa3NTMEZCU3l4eFFrRkJjVUlzUTBGQlF5eE5RVUZOTzFsQlF6ZERMRmxCUVZrc1MwRkJTeXh4UWtGQmNVSXNRMEZCUXl4TlFVRk5MRVZCUXpkRExFTkJRVU03V1VGRFJDeEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVTlFMR0ZCUVdFc1EwRkJRenRuUWtGRFdpeFhRVUZYTEVWQlFVVXNZMEZCWXl4alFVRmpMRWRCUVVjN1owSkJRelZETEVsQlFVa3NSVUZCUlN4TlFVRk5PMkZCUTJJc1EwRkJReXhEUVVOSUxFTkJRVU03VVVGRFNpeERRVUZETzFGQlEwUXNTVUZCU1N4WlFVRlpMRXRCUVVzc2NVSkJRWEZDTEVOQlFVTXNWMEZCVnl4RlFVRkZMRU5CUVVNN1dVRkRka1FzU1VGQlNTeERRVUZETEVsQlFVa3NRMEZEVUN4aFFVRmhMRU5CUVVNN1owSkJRMW9zVjBGQlZ5eEZRVUZGTEhWQ1FVRjFRaXhqUVVGakxFZEJRVWM3WjBKQlEzSkVMRWxCUVVrc1JVRkJSU3hEUVVGRExFMUJRVTBzUTBGQlF6dGhRVU5tTEVOQlFVTXNRMEZEU0N4RFFVRkRPMUZCUTBvc1EwRkJRenRSUVVWRUxFOUJRVThzU1VGQlNTeERRVUZETzBsQlEyUXNRMEZCUXp0SlFVVlBMRTFCUVUwc1EwRkJReXhyUWtGQmEwSXNRMEZETDBJc1ZVRkJhMElzUlVGRGJFSXNVMEZCYVVJc1JVRkRha0lzVVVGQlowSXNSVUZEYUVJc2NVSkJRVGhDTEV0QlFVczdVVUZGYmtNc1RVRkJUU3hwUWtGQmFVSXNSMEZCUnl4RFFVRkRMRU5CUVZNc1JVRkJXU3hGUVVGRkxFTkJRMmhFTEVOQlFVTTdZVUZEUlN4TFFVRkxMRU5CUVVNc1IwRkJSeXhEUVVGRE8yRkJRMVlzVFVGQlRTeERRVUZETEVOQlFVTXNRMEZCUXl4RlFVRkZMRVZCUVVVc1EwRkJReXhEUVVGRExFTkJRVU1zVlVGQlZTeERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRPMkZCUTJoRExFZEJRVWNzUTBGQlF5eERRVUZETEVOQlFVTXNSVUZCUlN4RlFVRkZMRU5CUVVNc1EwRkJReXhEUVVGRExFdEJRVXNzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPMUZCUlRWQ0xFMUJRVTBzWVVGQllTeEhRVUZITEdsQ1FVRnBRaXhEUVVGRExGTkJRVk1zUTBGQlF5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRWxCUVVrc1JVRkJSU3hGUVVGRkxFTkJRVU1zUTBGQlF6dFpRVU5vUlN4SlFVRkpPMWxCUTBvc1YwRkJWeXhGUVVGRkxFZEJRVWNzU1VGQlNTd3dRa0ZCTUVJN1dVRkRPVU1zVVVGQlVTeEZRVUZGTEVsQlFVazdXVUZEWkN4SlFVRkpMRVZCUVVVc1RVRkJUVHRUUVVOaUxFTkJRVU1zUTBGQlF5eERRVUZETzFGQlJVb3NUVUZCVFN4VlFVRlZMRWRCUVhsRU8xbEJRM1pGTEVkQlFVY3NZVUZCWVN4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU1zUlVGQlJTeEZRVUZGTEVOQlFVTXNVVUZCVVN4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRE8xbEJRM2hETEZsQlFWa3NRMEZCUXl4RlFVRkZMRTlCUVU4c1JVRkJSU3d5UWtGQk1rSXNWVUZCVlN4SlFVRkpMRVZCUVVVc1EwRkJRenRaUVVOd1JTeGhRVUZoTEVOQlFVTXNSVUZCUlN4WFFVRlhMRVZCUVVVc1owTkJRV2RETEVWQlFVVXNRMEZCUXp0WlFVTm9SU3h2UWtGQmIwSXNRMEZCUXp0blFrRkRia0lzVjBGQlZ5eEZRVUZGTEc5RFFVRnZRenRoUVVOc1JDeERRVUZETzFOQlEwZ3NRMEZCUXp0UlFVVkdMRWxCUVVrc1VVRkJVU3hMUVVGTExFdEJRVXNzU1VGQlNTeHJRa0ZCYTBJc1JVRkJSU3hEUVVGRE8xbEJRemRETEZWQlFWVXNRMEZCUXl4SlFVRkpMRU5CUTJJc1VVRkJVU3hEUVVGRE8yZENRVU5RTEVsQlFVa3NSVUZCUlN4WFFVRlhPMmRDUVVOcVFpeFJRVUZSTEVWQlFVVXNTMEZCU3p0blFrRkRaaXhKUVVGSkxFVkJRVVVzWTBGQll6dG5Ra0ZEY0VJc1YwRkJWeXhGUVVGRkxHZERRVUZuUXp0aFFVTTVReXhEUVVGRExFVkJRMFlzVVVGQlVTeERRVUZETzJkQ1FVTlFMRWxCUVVrc1JVRkJSU3hQUVVGUE8yZENRVU5pTEZGQlFWRXNSVUZCUlN4TFFVRkxPMmRDUVVObUxGZEJRVmNzUlVGQlJTeHZRa0ZCYjBJN1lVRkRiRU1zUTBGQlF5eEZRVU5HTEZGQlFWRXNRMEZCUXp0blFrRkRVQ3hKUVVGSkxFVkJRVVVzVVVGQlVUdG5Ra0ZEWkN4UlFVRlJMRVZCUVVVc1MwRkJTenRuUWtGRFppeFhRVUZYTEVWQlFVVXNiMEpCUVc5Q08yRkJRMnhETEVOQlFVTXNRMEZEU0N4RFFVRkRPMUZCUTBvc1EwRkJRenRSUVVWRUxFOUJRVThzVlVGQlZTeERRVUZETzBsQlEzQkNMRU5CUVVNaUxDSnpiM1Z5WTJWelEyOXVkR1Z1ZENJNld5SnBiWEJ2Y25RZ2UxeHVJQ0JEYjI1MGNtOXNiR1Z5TEZ4dUlDQlFZWEpoYlN4Y2JpQWdVWFZsY25rc1hHNGdJRkpsYzNCdmJuTmxMRnh1SUNCVFpYUk5aWFJoWkdGMFlTeGNibjBnWm5KdmJTQmNJa0J1WlhOMGFuTXZZMjl0Ylc5dVhDSTdYRzVwYlhCdmNuUWdlMXh1SUNCQmNHbENZV1JTWlhGMVpYTjBVbVZ6Y0c5dWMyVXNYRzRnSUVGd2FVSnZaSGtzWEc0Z0lFRndhVU55WldGMFpXUlNaWE53YjI1elpTeGNiaUFnUVhCcFJYaDBjbUZOYjJSbGJITXNYRzRnSUVGd2FVNXZRMjl1ZEdWdWRGSmxjM0J2Ym5ObExGeHVJQ0JCY0dsT2IzUkdiM1Z1WkZKbGMzQnZibk5sTEZ4dUlDQkJjR2xQYTFKbGMzQnZibk5sTEZ4dUlDQkJjR2xQY0dWeVlYUnBiMjRzWEc0Z0lFRndhVkJoY21GdExGeHVJQ0JCY0dsUmRXVnllU3hjYmlBZ1FYQnBWR0ZuY3l4Y2JpQWdRWEJwVlc1d2NtOWpaWE56WVdKc1pVVnVkR2wwZVZKbGMzQnZibk5sTEZ4dUlDQm5aWFJUWTJobGJXRlFZWFJvTEZ4dWZTQm1jbTl0SUZ3aVFHNWxjM1JxY3k5emQyRm5aMlZ5WENJN1hHNXBiWEJ2Y25RZ2UxeHVJQ0JOYjJSbGJGTmxjblpwWTJVc1hHNGdJRTl5WkdWeVJHbHlaV04wYVc5dUxGeHVJQ0JRWlhKemFYTjBaVzVqWlV0bGVYTXNYRzRnSUZCeVpYQmhjbVZrVTNSaGRHVnRaVzUwUzJWNWN5eGNiaUFnZEhsd1pTQlNaWEJ2TEZ4dUlDQlNaWEJ2YzJsMGIzSjVMRnh1SUNCVFpYSjJhV05sTEZ4dWZTQm1jbTl0SUZ3aVFHUmxZMkZtTFhSekwyTnZjbVZjSWp0Y2JtbHRjRzl5ZENCN0lFMXZaR1ZzTENCTmIyUmxiRU52Ym5OMGNuVmpkRzl5SUgwZ1puSnZiU0JjSWtCa1pXTmhaaTEwY3k5a1pXTnZjbUYwYjNJdGRtRnNhV1JoZEdsdmJsd2lPMXh1YVcxd2IzSjBJSHNnVEc5bloybHVaeXdnZEc5TFpXSmhZa05oYzJVZ2ZTQm1jbTl0SUZ3aVFHUmxZMkZtTFhSekwyeHZaMmRwYm1kY0lqdGNibWx0Y0c5eWRDQjdYRzRnSUVSQ1MyVjVjeXhjYmlBZ1FtRnpaVVZ5Y205eUxGeHVJQ0JKYm5SbGNtNWhiRVZ5Y205eUxGeHVJQ0JQY0dWeVlYUnBiMjVMWlhsekxGeHVmU0JtY205dElGd2lRR1JsWTJGbUxYUnpMMlJpTFdSbFkyOXlZWFJ2Y25OY0lqdGNibWx0Y0c5eWRDQjdJRU52Ym5OMGNuVmpkRzl5TENCTlpYUmhaR0YwWVNCOUlHWnliMjBnWENKQVpHVmpZV1l0ZEhNdlpHVmpiM0poZEdsdmJsd2lPMXh1YVcxd2IzSjBJSHRjYmlBZ1FYQnBUM0JsY21GMGFXOXVSbkp2YlUxdlpHVnNMRnh1SUNCQmNHbFFZWEpoYlhOR2NtOXRUVzlrWld3c1hHNGdJSFI1Y0dVZ1JHVmpZV1pCY0dsUWNtOXdaWEowZVN4Y2JpQWdSR1ZqWVdaQ2IyUjVMRnh1SUNCRVpXTmhabEYxWlhKNUxGeHVmU0JtY205dElGd2lMaTlrWldOdmNtRjBiM0p6WENJN1hHNXBiWEJ2Y25RZ2V5QklkSFJ3Vm1WeVlsUnZSR1ZqYjNKaGRHOXlJSDBnWm5KdmJTQmNJaTR2WkdWamIzSmhkRzl5Y3k5MWRHbHNjMXdpTzF4dWFXMXdiM0owSUhSNWNHVWdleUJJZEhSd1ZtVnlZbk1nZlNCbWNtOXRJRndpTGk5a1pXTnZjbUYwYjNKekwzUjVjR1Z6WENJN1hHNXBiWEJ2Y25RZ2V5QkVaV05oWmxKbGNYVmxjM1JEYjI1MFpYaDBJSDBnWm5KdmJTQmNJaTR1TDNKbGNYVmxjM1JjSWp0Y2JtbHRjRzl5ZENCN0lFUkZRMEZHWDBOUFRsUlNUMHhNUlZKZlEwOU9Sa2xITENCRVJVTkJSbDlTVDFWVVJTQjlJR1p5YjIwZ1hDSXVMaTlqYjI1emRHRnVkSE5jSWp0Y2JtbHRjRzl5ZENCN1hHNGdJRk5MU1ZCZlRVOUVSVXhmVGtGTlJWTlFRVU5GVTE5TFJWa3NYRzRnSUZOTFNWQmZUVTlFUlV4ZlVrOU1SVk5mUzBWWkxGeHVmU0JtY205dElGd2lMaTR2WVhWMGFDOWpiMjV6ZEdGdWRITmNJanRjYm1sdGNHOXlkQ0I3WEc0Z0lFRjFkR2dzWEc0Z0lGQjFZbXhwWXl4Y2JpQWdVbVZ4ZFdseVpVNWhiV1Z6Y0dGalpYTXNYRzRnSUZKbGNYVnBjbVZTYjJ4bGN5eGNibjBnWm5KdmJTQmNJaTR1TDJGMWRHZ3ZaR1ZqYjNKaGRHOXljMXdpTzF4dWFXMXdiM0owSUhzZ1EyOXVkSEp2Ykd4bGNrTnZibk4wY25WamRHOXlJSDBnWm5KdmJTQmNJaTR2ZEhsd1pYTmNJanRjYm1sdGNHOXlkQ0I3SUVSbFkyRm1UVzlrWld4RGIyNTBjbTlzYkdWeUlIMGdabkp2YlNCY0lpNHVMMk52Ym5SeWIyeHNaWEp6WENJN1hHNXBiWEJ2Y25RZ2V5QkVkRzlHYjNJZ2ZTQm1jbTl0SUZ3aUxpNHZabUZqZEc5eWVTOXZjR1Z1WVhCcEwwUjBiMEoxYVd4a1pYSmNJanRjYm1sdGNHOXlkQ0JjSWk0dUwyOTJaWEp5YVdSbGMxd2lPMXh1YVcxd2IzSjBJSHRjYmlBZ1RXOWtaV3hEYjI1MGNtOXNiR1Z5Um1GamRHOXllU3hjYmlBZ2RIbHdaU0JOYjJSbGJFTnZiblJ5YjJ4c1pYSkdZV04wYjNKNVEyOXVabWxuTEZ4dUlDQjBlWEJsSUVGMWRHaERiMjVtYVdjc1hHNGdJSFI1Y0dVZ1UyVnlkbVZ5VW05MWRHVXNYRzU5SUdaeWIyMGdYQ0pBWkdWallXWXRkSE12Wm05eUxXaDBkSEF2YzJWeWRtVnlYQ0k3WEc1Y2JtVjRjRzl5ZENCamJHRnpjeUJHY205dFRXOWtaV3hEYjI1MGNtOXNiR1Z5SUh0Y2JpQWdjSEpwZG1GMFpTQnpkR0YwYVdNZ2NtVmhaRzl1YkhrZ2JHOW5JRDBnVEc5bloybHVaeTVtYjNJb1JuSnZiVTF2WkdWc1EyOXVkSEp2Ykd4bGNpNXVZVzFsS1R0Y2JseHVJQ0J3Y21sMllYUmxJSE4wWVhScFl5QjBiMFJsWTJGbVJYSnliM0lvWEc0Z0lDQWdaWEp5YjNJNklIVnVhMjV2ZDI0c1hHNGdJQ0FnWm1Gc2JHSmhZMnROWlhOellXZGxPaUJ6ZEhKcGJtZGNiaUFnS1RvZ1FtRnpaVVZ5Y205eUlIdGNiaUFnSUNCcFppQW9aWEp5YjNJZ2FXNXpkR0Z1WTJWdlppQkNZWE5sUlhKeWIzSXBJSEpsZEhWeWJpQmxjbkp2Y2p0Y2JpQWdJQ0J5WlhSMWNtNGdibVYzSUVsdWRHVnlibUZzUlhKeWIzSW9YRzRnSUNBZ0lDQmxjbkp2Y2lCcGJuTjBZVzVqWlc5bUlFVnljbTl5WEc0Z0lDQWdJQ0FnSUQ4Z1lDUjdabUZzYkdKaFkydE5aWE56WVdkbGZUb2dKSHRsY25KdmNpNXRaWE56WVdkbGZXQmNiaUFnSUNBZ0lDQWdPaUJtWVd4c1ltRmphMDFsYzNOaFoyVmNiaUFnSUNBcE8xeHVJQ0I5WEc1Y2JpQWdjM1JoZEdsaklHZGxkRkJsY25OcGMzUmxibU5sUEZRZ1pYaDBaVzVrY3lCTmIyUmxiRHhpYjI5c1pXRnVQajRvWEc0Z0lDQWdUVzlrWld4RGJHRjZlam9nVFc5a1pXeERiMjV6ZEhKMVkzUnZjanhVUGx4dUlDQXBPaUJTWlhCdlBGUStJSHdnVFc5a1pXeFRaWEoyYVdObFBGUStJSHRjYmlBZ0lDQjBjbmtnZTF4dUlDQWdJQ0FnY21WMGRYSnVJRk5sY25acFkyVXVaMlYwUEUxdlpHVnNVMlZ5ZG1salpUeFVQajRvVFc5a1pXeERiR0Y2ZWlrN1hHNGdJQ0FnZlNCallYUmphQ0FvWlRvZ2RXNXJibTkzYmlrZ2UxeHVJQ0FnSUNBZ2RISjVJSHRjYmlBZ0lDQWdJQ0FnY21WMGRYSnVJRTF2WkdWc1UyVnlkbWxqWlM1blpYUlRaWEoyYVdObEtFMXZaR1ZzUTJ4aGVub3BJR0Z6SUUxdlpHVnNVMlZ5ZG1salpUeFVQanRjYmlBZ0lDQWdJSDBnWTJGMFkyZ2dLR1V5T2lCMWJtdHViM2R1S1NCN1hHNGdJQ0FnSUNBZ0lISmxkSFZ5YmlCU1pYQnZjMmwwYjNKNUxtWnZjazF2WkdWc0tFMXZaR1ZzUTJ4aGVub3BJR0Z6SUZKbGNHODhWRDQ3WEc0Z0lDQWdJQ0I5WEc0Z0lDQWdmVnh1SUNCOVhHNWNiaUFnYzNSaGRHbGpJR055WldGMFpWRjFaWEo1VW05MWRHVnpSbkp2YlZKbGNHOXphWFJ2Y25rOFZDQmxlSFJsYm1SeklFMXZaR1ZzUEdKdmIyeGxZVzQrUGloY2JpQWdJQ0J3WlhKemFYTjBaVzVqWlRvZ1VtVndienhVUGlCOElFMXZaR1ZzVTJWeWRtbGpaVHhVUGl4Y2JpQWdJQ0J3Y21WbWFYZzZJSE4wY21sdVp5QTlJRkJsY25OcGMzUmxibU5sUzJWNWN5NVJWVVZTV1Z4dUlDQXBPaUJEYjI1MGNtOXNiR1Z5UTI5dWMzUnlkV04wYjNJOFZENGdlMXh1SUNBZ0lHTnZibk4wSUhKbGNHODZJRkpsY0c4OFZENGdQVnh1SUNBZ0lDQWdjR1Z5YzJsemRHVnVZMlVnYVc1emRHRnVZMlZ2WmlCTmIyUmxiRk5sY25acFkyVWdQeUJ3WlhKemFYTjBaVzVqWlM1eVpYQnZJRG9nY0dWeWMybHpkR1Z1WTJVN1hHNGdJQ0FnWTI5dWMzUWdjWFZsY25sTlpYUm9iMlJ6T2lCU1pXTnZjbVE4YzNSeWFXNW5MQ0I3SUdacFpXeGtjejg2SUhOMGNtbHVaMXRkSUh3Z2RXNWtaV1pwYm1Wa0lIMCtJRDFjYmlBZ0lDQWdJRTFsZEdGa1lYUmhMbWRsZENoY2JpQWdJQ0FnSUNBZ2NtVndieTVqYjI1emRISjFZM1J2Y2lCaGN5QkRiMjV6ZEhKMVkzUnZjaXhjYmlBZ0lDQWdJQ0FnVFdWMFlXUmhkR0V1YTJWNUtGQmxjbk5wYzNSbGJtTmxTMlY1Y3k1UlZVVlNXU2xjYmlBZ0lDQWdJQ2tnUHo4Z2UzMDdYRzVjYmlBZ0lDQmpiMjV6ZENCeWIzVjBaVTFsZEdodlpITTZJRkpsWTI5eVpEeHpkSEpwYm1jc0lHRnVlVDRnUFZ4dUlDQWdJQ0FnVFdWMFlXUmhkR0V1WjJWMEtGeHVJQ0FnSUNBZ0lDQndaWEp6YVhOMFpXNWpaUzVqYjI1emRISjFZM1J2Y2lCaGN5QkRiMjV6ZEhKMVkzUnZjaXhjYmlBZ0lDQWdJQ0FnVFdWMFlXUmhkR0V1YTJWNUtFUkZRMEZHWDFKUFZWUkZLVnh1SUNBZ0lDQWdLU0EvUHlCN2ZUdGNibHh1SUNBZ0lHTnNZWE56SUZGMVpYSjVRMjl1ZEhKdmJHeGxjaUJsZUhSbGJtUnpJRVJsWTJGbVRXOWtaV3hEYjI1MGNtOXNiR1Z5UEZRK0lIdGNiaUFnSUNBZ0lHOTJaWEp5YVdSbElHZGxkQ0JqYkdGemN5Z3BPaUJOYjJSbGJFTnZibk4wY25WamRHOXlQRlErSUh0Y2JpQWdJQ0FnSUNBZ2RHaHliM2NnYm1WM0lFbHVkR1Z5Ym1Gc1JYSnliM0lvWENKTlpYUm9iMlFnYm05MElHbHRjR3hsYldWdWRHVmtMbHdpS1R0Y2JpQWdJQ0FnSUgxY2JpQWdJQ0FnSUdOdmJuTjBjblZqZEc5eUtHTnNhV1Z1ZEVOdmJuUmxlSFE2SUVSbFkyRm1VbVZ4ZFdWemRFTnZiblJsZUhRc0lHNWhiV1U2SUhOMGNtbHVaeWtnZTF4dUlDQWdJQ0FnSUNCemRYQmxjaWhqYkdsbGJuUkRiMjUwWlhoMExDQnVZVzFsS1R0Y2JpQWdJQ0FnSUgxY2JpQWdJQ0I5WEc1Y2JpQWdJQ0JtYjNJZ0tHTnZibk4wSUZ0dFpYUm9iMlJPWVcxbExDQndZWEpoYlhOZElHOW1JRTlpYW1WamRDNWxiblJ5YVdWektISnZkWFJsVFdWMGFHOWtjeWtwSUh0Y2JpQWdJQ0FnSUdOdmJuTjBJSEp2ZFhSbFVHRjBhQ0E5SUZ0d1lYSmhiWE11Y0dGMGFDNXlaWEJzWVdObEtDOWVYRnd2SzN4Y1hDOHJKQzluTENCY0lsd2lLVjFjYmlBZ0lDQWdJQ0FnTG1acGJIUmxjaWdvYzJWbmJXVnVkRG9nYzNSeWFXNW5LU0E5UGlCelpXZHRaVzUwSUNZbUlITmxaMjFsYm5RdWRISnBiU2dwS1Z4dUlDQWdJQ0FnSUNBdWFtOXBiaWhjSWk5Y0lpazdYRzVjYmlBZ0lDQWdJR052Ym5OMElHaGhibVJzWlhJZ1BTQkdjbTl0VFc5a1pXeERiMjUwY205c2JHVnlMbU55WldGMFpVTnZiWEJzWlhoUmRXVnllVWhoYm1Sc1pYSW9YRzRnSUNBZ0lDQWdJRzFsZEdodlpFNWhiV1ZjYmlBZ0lDQWdJQ2tnWVhNZ1lXNTVPMXh1SUNBZ0lDQWdSbkp2YlUxdlpHVnNRMjl1ZEhKdmJHeGxjaTVrWldacGJtVk5aWFJvYjJRb1VYVmxjbmxEYjI1MGNtOXNiR1Z5TENCdFpYUm9iMlJPWVcxbExDQm9ZVzVrYkdWeUtUdGNibHh1SUNBZ0lDQWdZMjl1YzNRZ2FIUjBjRVJsWTI5eVlYUnZjaUE5SUVoMGRIQldaWEppVkc5RVpXTnZjbUYwYjNJb2NHRnlZVzF6TG1oMGRIQk5aWFJvYjJRZ1lYTWdTSFIwY0ZabGNtSnpLU2hjYmlBZ0lDQWdJQ0FnY205MWRHVlFZWFJvSUh4OElIVnVaR1ZtYVc1bFpGeHVJQ0FnSUNBZ0tUdGNiaUFnSUNBZ0lHTnZibk4wSUdSbFkyOXlZWFJ2Y25NZ1BTQkdjbTl0VFc5a1pXeERiMjUwY205c2JHVnlMbWRsZEZGMVpYSjVSR1ZqYjNKaGRHOXljeWhjYmlBZ0lDQWdJQ0FnYldWMGFHOWtUbUZ0WlN4Y2JpQWdJQ0FnSUNBZ2NtOTFkR1ZRWVhSb0xGeHVJQ0FnSUNBZ0lDQndZWEpoYlhNdWFIUjBjRTFsZEdodlpGeHVJQ0FnSUNBZ0tUdGNiaUFnSUNBZ0lFWnliMjFOYjJSbGJFTnZiblJ5YjJ4c1pYSXVZWEJ3YkhsRVpXTnZjbUYwYjNKektGRjFaWEo1UTI5dWRISnZiR3hsY2l3Z2JXVjBhRzlrVG1GdFpTd2dXMXh1SUNBZ0lDQWdJQ0JvZEhSd1JHVmpiM0poZEc5eUxGeHVJQ0FnSUNBZ0lDQXVMaTVrWldOdmNtRjBiM0p6TEZ4dUlDQWdJQ0FnWFNrN1hHNGdJQ0FnZlZ4dVhHNGdJQ0FnWm05eUlDaGpiMjV6ZENCYmJXVjBhRzlrVG1GdFpTd2diMkpxVm1Gc2RXVnpYU0J2WmlCUFltcGxZM1F1Wlc1MGNtbGxjeWh4ZFdWeWVVMWxkR2h2WkhNcEtTQjdYRzRnSUNBZ0lDQmpiMjV6ZENCbWFXVnNaSE1nUFNCdlltcFdZV3gxWlhNdVptbGxiR1J6SUQ4L0lGdGRPMXh1SUNBZ0lDQWdZMjl1YzNRZ2NtOTFkR1ZRWVhSb0lEMGdXM0J5WldacGVDd2diV1YwYUc5a1RtRnRaU3dnTGk0dVptbGxiR1J6TG0xaGNDZ29aaWtnUFQ0Z1lEb2tlMlo5WUNsZFhHNGdJQ0FnSUNBZ0lDNW1hV3gwWlhJb0tITmxaMjFsYm5RcElEMCtJSE5sWjIxbGJuUWdKaVlnYzJWbmJXVnVkQzUwY21sdEtDa3BYRzRnSUNBZ0lDQWdJQzVxYjJsdUtGd2lMMXdpS1R0Y2JseHVJQ0FnSUNBZ1kyOXVjM1FnYUdGdVpHeGxjaUE5SUVaeWIyMU5iMlJsYkVOdmJuUnliMnhzWlhJdVkzSmxZWFJsUTI5dGNHeGxlRkYxWlhKNVNHRnVaR3hsY2loY2JpQWdJQ0FnSUNBZ2JXVjBhRzlrVG1GdFpWeHVJQ0FnSUNBZ0tTQmhjeUJoYm5rN1hHNGdJQ0FnSUNCR2NtOXRUVzlrWld4RGIyNTBjbTlzYkdWeUxtUmxabWx1WlUxbGRHaHZaQ2hSZFdWeWVVTnZiblJ5YjJ4c1pYSXNJRzFsZEdodlpFNWhiV1VzSUdoaGJtUnNaWElwTzF4dVhHNGdJQ0FnSUNCamIyNXpkQ0JvZEhSd1JHVmpiM0poZEc5eUlEMGdTSFIwY0ZabGNtSlViMFJsWTI5eVlYUnZjaWhjSWtkRlZGd2lJR0Z6SUVoMGRIQldaWEppY3lrb1hHNGdJQ0FnSUNBZ0lISnZkWFJsVUdGMGFDQjhmQ0IxYm1SbFptbHVaV1JjYmlBZ0lDQWdJQ2s3WEc0Z0lDQWdJQ0JqYjI1emRDQmtaV052Y21GMGIzSnpJRDBnUm5KdmJVMXZaR1ZzUTI5dWRISnZiR3hsY2k1blpYUlJkV1Z5ZVVSbFkyOXlZWFJ2Y25Nb1hHNGdJQ0FnSUNBZ0lHMWxkR2h2WkU1aGJXVXNYRzRnSUNBZ0lDQWdJSEp2ZFhSbFVHRjBhQ3hjYmlBZ0lDQWdJQ0FnWENKSFJWUmNJaXhjYmlBZ0lDQWdJQ0FnZEhKMVpWeHVJQ0FnSUNBZ0tUdGNiaUFnSUNBZ0lFWnliMjFOYjJSbGJFTnZiblJ5YjJ4c1pYSXVZWEJ3YkhsRVpXTnZjbUYwYjNKektGRjFaWEo1UTI5dWRISnZiR3hsY2l3Z2JXVjBhRzlrVG1GdFpTd2dXMXh1SUNBZ0lDQWdJQ0JvZEhSd1JHVmpiM0poZEc5eUxGeHVJQ0FnSUNBZ0lDQXVMaTVrWldOdmNtRjBiM0p6TEZ4dUlDQWdJQ0FnWFNrN1hHNGdJQ0FnZlZ4dVhHNGdJQ0FnY21WMGRYSnVJRkYxWlhKNVEyOXVkSEp2Ykd4bGNqdGNiaUFnZlZ4dVhHNGdJSE4wWVhScFl5QmpjbVZoZEdVOFZDQmxlSFJsYm1SeklFMXZaR1ZzUEdGdWVUNCtLRnh1SUNBZ0lFMXZaR1ZzUTI5dWMzUnlPaUJOYjJSbGJFTnZibk4wY25WamRHOXlQRlErTEZ4dUlDQWdJRzF2WkhWc1pVTnZibVpwWjA5MlpYSnlhV1JsY3o4NklGSmxZMjl5WkR4emRISnBibWNzSUUxdlpHVnNRMjl1ZEhKdmJHeGxja1poWTNSdmNubERiMjVtYVdjK0xGeHVJQ0FnSUdkc2IySmhiRVJsWm1GMWJIUnpQem9nVUdGeWRHbGhiRHhOYjJSbGJFTnZiblJ5YjJ4c1pYSkdZV04wYjNKNVEyOXVabWxuUGx4dUlDQXBPaUJEYjI1MGNtOXNiR1Z5UTI5dWMzUnlkV04wYjNJOFZENGdlMXh1SUNBZ0lHTnZibk4wSUd4dlp5QTlJRVp5YjIxTmIyUmxiRU52Ym5SeWIyeHNaWEl1Ykc5bkxtWnZjaWhHY205dFRXOWtaV3hEYjI1MGNtOXNiR1Z5TG1OeVpXRjBaU2s3WEc0Z0lDQWdZMjl1YzNRZ2RHRmliR1ZPWVcxbElEMGdUVzlrWld3dWRHRmliR1ZPWVcxbEtFMXZaR1ZzUTI5dWMzUnlLVHRjYmlBZ0lDQmpiMjV6ZENCeWIzVjBaVkJoZEdnZ1BTQjBiMHRsWW1GaVEyRnpaU2gwWVdKc1pVNWhiV1VwTzF4dUlDQWdJR052Ym5OMElHMXZaR1ZzUTJ4aGVucE9ZVzFsSUQwZ1RXOWtaV3hEYjI1emRISXVibUZ0WlR0Y2JpQWdJQ0JqYjI1emRDQndaWEp6YVhOMFpXNWpaU0E5SUVaeWIyMU5iMlJsYkVOdmJuUnliMnhzWlhJdVoyVjBVR1Z5YzJsemRHVnVZMlVvVFc5a1pXeERiMjV6ZEhJcE8xeHVYRzRnSUNBZ0x5OGdWMmhsYmlCd1pYSnphWE4wWlc1alpTQnBjeUJoSUUxdlpHVnNVMlZ5ZG1salpTd2dkR2hsSUVCeGRXVnllUzlBY205MWRHVWdiV1YwWVdSaGRHRWdiR2wyWlhNZ2IyNWNiaUFnSUNBdkx5QjBhR1VnZFc1a1pYSnNlV2x1WnlCeVpYQnZjMmwwYjNKNUlHTnNZWE56SUNoamRYTjBiMjBnY21Wd2J5a3NJRzV2ZENCdmJpQk5iMlJsYkZObGNuWnBZMlVnYVhSelpXeG1MbHh1SUNBZ0lDOHZJRkJoYzNNZ2RHaGxJSEpsY0c4Z2RHOGdkR2hsSUdaaFkzUnZjbmtnYzI4Z1lXUmtRMjl0Y0d4bGVGRjFaWEpwWlhNb0tTQmpZVzRnWkdselkyOTJaWElnZEdobGJTNWNiaUFnSUNCamIyNXpkQ0JtWVdOMGIzSjVVR1Z5YzJsemRHVnVZMlVnUFZ4dUlDQWdJQ0FnY0dWeWMybHpkR1Z1WTJVZ2FXNXpkR0Z1WTJWdlppQk5iMlJsYkZObGNuWnBZMlVnUHlCd1pYSnphWE4wWlc1alpTNXlaWEJ2SURvZ2NHVnljMmx6ZEdWdVkyVTdYRzVjYmlBZ0lDQmpiMjV6ZENCa1pXTnZjbUYwYjNKRGIyNW1hV2NnUFNCTlpYUmhaR0YwWVM1blpYUW9YRzRnSUNBZ0lDQk5iMlJsYkVOdmJuTjBjaXhjYmlBZ0lDQWdJRTFsZEdGa1lYUmhMbXRsZVNoRVJVTkJSbDlEVDA1VVVrOU1URVZTWDBOUFRrWkpSeWxjYmlBZ0lDQXBJR0Z6SUUxdlpHVnNRMjl1ZEhKdmJHeGxja1poWTNSdmNubERiMjVtYVdjZ2ZDQjFibVJsWm1sdVpXUTdYRzRnSUNBZ1kyOXVjM1FnYlc5a2RXeGxUM1psY25KcFpHVWdQU0J0YjJSMWJHVkRiMjVtYVdkUGRtVnljbWxrWlhNL0xsdE5iMlJsYkVOdmJuTjBjaTV1WVcxbFhUdGNiaUFnSUNCamIyNXpkQ0J0WlhKblpXUkRiMjVtYVdjNklFMXZaR1ZzUTI5dWRISnZiR3hsY2taaFkzUnZjbmxEYjI1bWFXY2dQU0I3WEc0Z0lDQWdJQ0F1TGk0b1oyeHZZbUZzUkdWbVlYVnNkSE1nZkh3Z2UzMHBMRnh1SUNBZ0lDQWdMaTR1S0dSbFkyOXlZWFJ2Y2tOdmJtWnBaeUI4ZkNCN2ZTa3NYRzRnSUNBZ0lDQXVMaTRvYlc5a2RXeGxUM1psY25KcFpHVWdmSHdnZTMwcExGeHVJQ0FnSUgwN1hHNWNiaUFnSUNCamIyNXpkQ0JHWVdOMGIzSjVRMjl1ZEhKdmJHeGxjaUE5SUUxdlpHVnNRMjl1ZEhKdmJHeGxja1poWTNSdmNua3VZM0psWVhSbFBGUStLRnh1SUNBZ0lDQWdUVzlrWld4RGIyNXpkSElzWEc0Z0lDQWdJQ0JtWVdOMGIzSjVVR1Z5YzJsemRHVnVZMlVzWEc0Z0lDQWdJQ0J0WlhKblpXUkRiMjVtYVdkY2JpQWdJQ0FwTzF4dUlDQWdJR052Ym5OMElHWmhZM1J2Y25sU2IzVjBaWE1nUFNBb1JtRmpkRzl5ZVVOdmJuUnliMnhzWlhJZ1lYTWdZVzU1S1M1ZlgzSnZkWFJsYzE5ZklHRnpYRzRnSUNBZ0lDQjhJRk5sY25abGNsSnZkWFJsVzExY2JpQWdJQ0FnSUh3Z2RXNWtaV1pwYm1Wa08xeHVYRzRnSUNBZ1kyOXVjM1FnZTF4dUlDQWdJQ0FnWjJWMFVFc3NYRzRnSUNBZ0lDQmhjR2xRY205d1pYSjBhV1Z6TEZ4dUlDQWdJQ0FnY0dGMGFEb2djR3RRWVhSb0xGeHVJQ0FnSUgwZ1BTQkdjbTl0VFc5a1pXeERiMjUwY205c2JHVnlMbWRsZEZKdmRYUmxVR0Z5WVcxbGRHVnljMFp5YjIxTmIyUmxiQ2hOYjJSbGJFTnZibk4wY2lrN1hHNWNiaUFnSUNCc2IyY3VaR1ZpZFdjb1hHNGdJQ0FnSUNCZ1EzSmxZWFJwYm1jZ1kyOXVkSEp2Ykd4bGNpQm1iM0lnYlc5a1pXdzZJQ1I3Ylc5a1pXeERiR0Y2ZWs1aGJXVjlJSGRwZEdnZ0pIdG1ZV04wYjNKNVVtOTFkR1Z6UHk1c1pXNW5kR2dnUHo4Z01IMGdabUZqZEc5eWVTQnliM1YwWlhOZ1hHNGdJQ0FnS1R0Y2JseHVJQ0FnSUdOdmJuTjBJR0YxZEdoRGIyNW1hV2M2SUVGMWRHaERiMjVtYVdjZ2ZDQjFibVJsWm1sdVpXUWdQU0J0WlhKblpXUkRiMjVtYVdjdVlYVjBhRHRjYmx4dUlDQWdJR1oxYm1OMGFXOXVJR0Z3Y0d4NVEyeGhjM05CZFhSb0tIUmhjbWRsZERvZ1lXNTVLU0I3WEc0Z0lDQWdJQ0JwWmlBb1lYVjBhRU52Ym1acFp6OHVjSFZpYkdsaktTQjdYRzRnSUNBZ0lDQWdJRkIxWW14cFl5Z3BLSFJoY21kbGRDazdYRzRnSUNBZ0lDQjlJR1ZzYzJVZ2FXWWdLR0YxZEdoRGIyNW1hV2MvTG5KdmJHVnpQeTVzWlc1bmRHZ3BJSHRjYmlBZ0lDQWdJQ0FnVW1WeGRXbHlaVkp2YkdWektDNHVMbUYxZEdoRGIyNW1hV2N1Y205c1pYTXBLSFJoY21kbGRDazdYRzRnSUNBZ0lDQjlJR1ZzYzJVZ2UxeHVJQ0FnSUNBZ0lDQkJkWFJvS0UxdlpHVnNRMjl1YzNSeUtTaDBZWEpuWlhRcE8xeHVJQ0FnSUNBZ2ZWeHVJQ0FnSUNBZ2FXWWdLR0YxZEdoRGIyNW1hV2MvTG01aGJXVnpjR0ZqWlhNL0xteGxibWQwYUNrZ2UxeHVJQ0FnSUNBZ0lDQlNaWEYxYVhKbFRtRnRaWE53WVdObGN5Z3VMaTVoZFhSb1EyOXVabWxuTG01aGJXVnpjR0ZqWlhNcEtIUmhjbWRsZENrN1hHNGdJQ0FnSUNCOVhHNGdJQ0FnSUNCcFppQW9ZWFYwYUVOdmJtWnBaejh1YzJ0cGNFMXZaR1ZzVW05c1pYTXBJSHRjYmlBZ0lDQWdJQ0FnVTJWMFRXVjBZV1JoZEdFb1UwdEpVRjlOVDBSRlRGOVNUMHhGVTE5TFJWa3NJSFJ5ZFdVcEtIUmhjbWRsZENrN1hHNGdJQ0FnSUNCOVhHNGdJQ0FnSUNCcFppQW9ZWFYwYUVOdmJtWnBaejh1YzJ0cGNFMXZaR1ZzVG1GdFpYTndZV05sY3lrZ2UxeHVJQ0FnSUNBZ0lDQlRaWFJOWlhSaFpHRjBZU2hUUzBsUVgwMVBSRVZNWDA1QlRVVlRVRUZEUlZOZlMwVlpMQ0IwY25WbEtTaDBZWEpuWlhRcE8xeHVJQ0FnSUNBZ2ZWeHVJQ0FnSUgxY2JseHVJQ0FnSUVCRGIyNTBjbTlzYkdWeUtISnZkWFJsVUdGMGFDbGNiaUFnSUNCQVFYQnBWR0ZuY3lodGIyUmxiRU5zWVhwNlRtRnRaU2xjYmlBZ0lDQkFRWEJwUlhoMGNtRk5iMlJsYkhNb1RXOWtaV3hEYjI1emRISXBYRzRnSUNBZ1kyeGhjM01nUkhsdVlXMXBZMDF2WkdWc1EyOXVkSEp2Ykd4bGNpQmxlSFJsYm1SeklFUmxZMkZtVFc5a1pXeERiMjUwY205c2JHVnlQRlErSUh0Y2JpQWdJQ0FnSUhCeWFYWmhkR1VnY21WaFpHOXViSGtnY0dzNklITjBjbWx1WnlBOUlFMXZaR1ZzTG5CcktFMXZaR1ZzUTI5dWMzUnlLU0JoY3lCemRISnBibWM3WEc1Y2JpQWdJQ0FnSUhCeWIzUmxZM1JsWkNCemRHRjBhV01nWjJWMElHTnNZWE56S0NrZ2UxeHVJQ0FnSUNBZ0lDQnlaWFIxY200Z1RXOWtaV3hEYjI1emRISTdYRzRnSUNBZ0lDQjlYRzVjYmlBZ0lDQWdJRzkyWlhKeWFXUmxJR2RsZENCamJHRnpjeWdwT2lCTmIyUmxiRU52Ym5OMGNuVmpkRzl5UEZRK0lIdGNiaUFnSUNBZ0lDQWdjbVYwZFhKdUlFMXZaR1ZzUTI5dWMzUnlPMXh1SUNBZ0lDQWdmVnh1WEc0Z0lDQWdJQ0JqYjI1emRISjFZM1J2Y2loamJHbGxiblJEYjI1MFpYaDBPaUJFWldOaFpsSmxjWFZsYzNSRGIyNTBaWGgwS1NCN1hHNGdJQ0FnSUNBZ0lITjFjR1Z5S0dOc2FXVnVkRU52Ym5SbGVIUXNJRVI1Ym1GdGFXTk5iMlJsYkVOdmJuUnliMnhzWlhJdWJtRnRaU2s3WEc0Z0lDQWdJQ0FnSUd4dlp5NXBibVp2S0Z4dUlDQWdJQ0FnSUNBZ0lHQlNaV2RwYzNSbGNtbHVaeUJrZVc1aGJXbGpJR052Ym5SeWIyeHNaWElnWm05eUlHMXZaR1ZzT2lBa2UzUm9hWE11WTJ4aGMzTXVibUZ0WlgwZ2NtOTFkR1U2SUM4a2UzSnZkWFJsVUdGMGFIMWdYRzRnSUNBZ0lDQWdJQ2s3WEc0Z0lDQWdJQ0I5WEc0Z0lDQWdmVnh1WEc0Z0lDQWdZWEJ3YkhsRGJHRnpjMEYxZEdnb1JIbHVZVzFwWTAxdlpHVnNRMjl1ZEhKdmJHeGxjaWs3WEc1Y2JpQWdJQ0JwWmlBb1ptRmpkRzl5ZVZKdmRYUmxjeWtnZTF4dUlDQWdJQ0FnWTI5dWMzUWdjMjl5ZEdWa1VtOTFkR1Z6SUQwZ1d5NHVMbVpoWTNSdmNubFNiM1YwWlhOZExuTnZjblFvS0dFc0lHSXBJRDArSUh0Y2JpQWdJQ0FnSUNBZ1kyOXVjM1FnWVZObFoyMWxiblJ6SUQwZ1lTNXdZWFJvTG5Od2JHbDBLRndpTDF3aUtTNW1hV3gwWlhJb1FtOXZiR1ZoYmlrN1hHNGdJQ0FnSUNBZ0lHTnZibk4wSUdKVFpXZHRaVzUwY3lBOUlHSXVjR0YwYUM1emNHeHBkQ2hjSWk5Y0lpa3VabWxzZEdWeUtFSnZiMnhsWVc0cE8xeHVJQ0FnSUNBZ0lDQmpiMjV6ZENCaFVHRnlZVzFEYjNWdWRDQTlJR0ZUWldkdFpXNTBjeTVtYVd4MFpYSW9LSE1wSUQwK0lITXVjM1JoY25SelYybDBhQ2hjSWpwY0lpa3BMbXhsYm1kMGFEdGNiaUFnSUNBZ0lDQWdZMjl1YzNRZ1lsQmhjbUZ0UTI5MWJuUWdQU0JpVTJWbmJXVnVkSE11Wm1sc2RHVnlLQ2h6S1NBOVBpQnpMbk4wWVhKMGMxZHBkR2dvWENJNlhDSXBLUzVzWlc1bmRHZzdYRzRnSUNBZ0lDQWdJR052Ym5OMElHRk1hWFJsY21Gc1EyOTFiblFnUFNCaFUyVm5iV1Z1ZEhNdWJHVnVaM1JvSUMwZ1lWQmhjbUZ0UTI5MWJuUTdYRzRnSUNBZ0lDQWdJR052Ym5OMElHSk1hWFJsY21Gc1EyOTFiblFnUFNCaVUyVm5iV1Z1ZEhNdWJHVnVaM1JvSUMwZ1lsQmhjbUZ0UTI5MWJuUTdYRzRnSUNBZ0lDQWdJR2xtSUNoaFRHbDBaWEpoYkVOdmRXNTBJQ0U5UFNCaVRHbDBaWEpoYkVOdmRXNTBLVnh1SUNBZ0lDQWdJQ0FnSUhKbGRIVnliaUJpVEdsMFpYSmhiRU52ZFc1MElDMGdZVXhwZEdWeVlXeERiM1Z1ZER0Y2JpQWdJQ0FnSUNBZ2FXWWdLR0ZRWVhKaGJVTnZkVzUwSUNFOVBTQmlVR0Z5WVcxRGIzVnVkQ2tnY21WMGRYSnVJR0ZRWVhKaGJVTnZkVzUwSUMwZ1lsQmhjbUZ0UTI5MWJuUTdYRzRnSUNBZ0lDQWdJSEpsZEhWeWJpQXdPMXh1SUNBZ0lDQWdmU2s3WEc1Y2JpQWdJQ0FnSUdadmNpQW9ZMjl1YzNRZ2NtOTFkR1VnYjJZZ2MyOXlkR1ZrVW05MWRHVnpLU0I3WEc0Z0lDQWdJQ0FnSUdOdmJuTjBJRzFsZEdodlpFNWhiV1VnUFZ4dUlDQWdJQ0FnSUNBZ0lISnZkWFJsTG1sdGNHeGxiV1Z1ZEdGMGFXOXVQeTV1WVcxbElIeDhJSEp2ZFhSbExtMWxkR2h2WkM1MGIweHZkMlZ5UTJGelpTZ3BPMXh1SUNBZ0lDQWdJQ0JqYjI1emRDQnlaV2RwYzNSeVlYUnBiMjRnUFNCR2NtOXRUVzlrWld4RGIyNTBjbTlzYkdWeUxtMWhkR05vVW05MWRHVW9YRzRnSUNBZ0lDQWdJQ0FnYldWMGFHOWtUbUZ0WlN4Y2JpQWdJQ0FnSUNBZ0lDQnliM1YwWlN4Y2JpQWdJQ0FnSUNBZ0lDQndhMUJoZEdnc1hHNGdJQ0FnSUNBZ0lDQWdZWEJwVUhKdmNHVnlkR2xsY3l4Y2JpQWdJQ0FnSUNBZ0lDQm5aWFJRU3l4Y2JpQWdJQ0FnSUNBZ0lDQk5iMlJsYkVOdmJuTjBjaXhjYmlBZ0lDQWdJQ0FnSUNCdGIyUmxiRU5zWVhwNlRtRnRaVnh1SUNBZ0lDQWdJQ0FwTzF4dUlDQWdJQ0FnSUNCcFppQW9JWEpsWjJsemRISmhkR2x2YmlrZ1kyOXVkR2x1ZFdVN1hHNWNiaUFnSUNBZ0lDQWdZMjl1YzNRZ2UxeHVJQ0FnSUNBZ0lDQWdJRzFsZEdodlpFNWhiV1U2SUhKbFoybHpkR1Z5WldSTlpYUm9iMlJPWVcxbExGeHVJQ0FnSUNBZ0lDQWdJR2hoYm1Sc1pYSXNYRzRnSUNBZ0lDQWdJQ0FnWkdWamIzSmhkRzl5Y3l4Y2JpQWdJQ0FnSUNBZ0lDQndZWEpoYlVSbFkyOXlZWFJ2Y25Nc1hHNGdJQ0FnSUNBZ0lIMGdQU0J5WldkcGMzUnlZWFJwYjI0N1hHNWNiaUFnSUNBZ0lDQWdZMjl1YzNRZ1pHVnpZM0pwY0hSdmNpQTlJRVp5YjIxTmIyUmxiRU52Ym5SeWIyeHNaWEl1WkdWbWFXNWxUV1YwYUc5a0tGeHVJQ0FnSUNBZ0lDQWdJRVI1Ym1GdGFXTk5iMlJsYkVOdmJuUnliMnhzWlhJc1hHNGdJQ0FnSUNBZ0lDQWdjbVZuYVhOMFpYSmxaRTFsZEdodlpFNWhiV1VzWEc0Z0lDQWdJQ0FnSUNBZ2FHRnVaR3hsY2x4dUlDQWdJQ0FnSUNBcE8xeHVYRzRnSUNBZ0lDQWdJR2xtSUNoa1pYTmpjbWx3ZEc5eUtTQjdYRzRnSUNBZ0lDQWdJQ0FnWTI5dWMzUWdhSFIwY0VSbFkyOXlZWFJ2Y2lBOUlFaDBkSEJXWlhKaVZHOUVaV052Y21GMGIzSW9jbTkxZEdVdWJXVjBhRzlrSUdGeklFaDBkSEJXWlhKaWN5a29YRzRnSUNBZ0lDQWdJQ0FnSUNCeWIzVjBaUzV3WVhSb0xuSmxjR3hoWTJVb0wxNWNYQzhyZkZ4Y0x5c2tMMmNzSUZ3aVhDSXBJSHg4SUhWdVpHVm1hVzVsWkZ4dUlDQWdJQ0FnSUNBZ0lDazdYRzRnSUNBZ0lDQWdJQ0FnUm5KdmJVMXZaR1ZzUTI5dWRISnZiR3hsY2k1aGNIQnNlVVJsWTI5eVlYUnZjbk1vWEc0Z0lDQWdJQ0FnSUNBZ0lDQkVlVzVoYldsalRXOWtaV3hEYjI1MGNtOXNiR1Z5TEZ4dUlDQWdJQ0FnSUNBZ0lDQWdjbVZuYVhOMFpYSmxaRTFsZEdodlpFNWhiV1VzWEc0Z0lDQWdJQ0FnSUNBZ0lDQmJhSFIwY0VSbFkyOXlZWFJ2Y2l3Z0xpNHVaR1ZqYjNKaGRHOXljMTBzWEc0Z0lDQWdJQ0FnSUNBZ0lDQndZWEpoYlVSbFkyOXlZWFJ2Y25OY2JpQWdJQ0FnSUNBZ0lDQXBPMXh1SUNBZ0lDQWdJQ0I5WEc0Z0lDQWdJQ0I5WEc0Z0lDQWdmVnh1WEc0Z0lDQWdjbVYwZFhKdUlFUjVibUZ0YVdOTmIyUmxiRU52Ym5SeWIyeHNaWElnWVhNZ1lXNTVPMXh1SUNCOVhHNWNiaUFnYzNSaGRHbGpJR2RsZEZKdmRYUmxVR0Z5WVcxbGRHVnljMFp5YjIxTmIyUmxiRHhVSUdWNGRHVnVaSE1nVFc5a1pXdzhZVzU1UGo0b1hHNGdJQ0FnVFc5a1pXeERiR0Y2ZWpvZ1RXOWtaV3hEYjI1emRISjFZM1J2Y2p4VVBseHVJQ0FwT2lCN1hHNGdJQ0FnY0dGMGFEb2djM1J5YVc1bk8xeHVJQ0FnSUdSbGMyTnlhWEIwYVc5dU9pQnpkSEpwYm1jN1hHNGdJQ0FnWVhCcFVISnZjR1Z5ZEdsbGN6b2dSR1ZqWVdaQmNHbFFjbTl3WlhKMGVWdGRPMXh1SUNBZ0lHZGxkRkJMT2lBb0xpNHVjR0Z5WVcxek9pQkJjbkpoZVR4emRISnBibWNnZkNCdWRXMWlaWEkrS1NBOVBpQnpkSEpwYm1jN1hHNGdJSDBnZTF4dUlDQWdJR052Ym5OMElIQnJJRDBnVFc5a1pXd3VjR3NvVFc5a1pXeERiR0Y2ZWlrZ1lYTWdhMlY1YjJZZ1RXOWtaV3c4WVc1NVBqdGNiaUFnSUNCamIyNXpkQ0JqYjIxd2IzTmxaQ0E5SUUxbGRHRmtZWFJoTG1kbGRDaGNiaUFnSUNBZ0lFMXZaR1ZzUTJ4aGVub3NYRzRnSUNBZ0lDQk5aWFJoWkdGMFlTNXJaWGtvUkVKTFpYbHpMa05QVFZCUFUwVkVMQ0J3YXlsY2JpQWdJQ0FwTzF4dUlDQWdJR052Ym5OMElHTnZiWEJ2YzJWa1MyVjVjeUE5SUdOdmJYQnZjMlZrUHk1aGNtZHpJRDgvSUZ0ZE8xeHVYRzRnSUNBZ1kyOXVjM1FnZFc1cGNYVmxTMlY1Y3lBOVhHNGdJQ0FnSUNCQmNuSmhlUzVwYzBGeWNtRjVLR052YlhCdmMyVmtTMlY1Y3lrZ0ppWWdZMjl0Y0c5elpXUkxaWGx6TG14bGJtZDBhQ0ErSURCY2JpQWdJQ0FnSUNBZ1B5QkJjbkpoZVM1bWNtOXRLRzVsZHlCVFpYUW9XeTR1TG1OdmJYQnZjMlZrUzJWNWMxMHBLVnh1SUNBZ0lDQWdJQ0E2SUVGeWNtRjVMbVp5YjIwb2JtVjNJRk5sZENoYmNHdGRLU2s3WEc1Y2JpQWdJQ0JqYjI1emRDQmtaWE5qY21sd2RHbHZiaUE5SUUxbGRHRmtZWFJoTG1SbGMyTnlhWEIwYVc5dUtFMXZaR1ZzUTJ4aGVub3BJRDgvSUZ3aVhDSTdYRzRnSUNBZ1kyOXVjM1FnY0dGMGFDQTlJR0E2Skh0MWJtbHhkV1ZMWlhsekxtcHZhVzRvWENJdk9sd2lLWDFnTzF4dUlDQWdJR052Ym5OMElHRndhVkJ5YjNCbGNuUnBaWE02SUVSbFkyRm1RWEJwVUhKdmNHVnlkSGxiWFNBOUlIVnVhWEYxWlV0bGVYTXViV0Z3S0NoclpYa3BJRDArSUh0Y2JpQWdJQ0FnSUhKbGRIVnliaUI3WEc0Z0lDQWdJQ0FnSUc1aGJXVTZJR3RsZVN4Y2JpQWdJQ0FnSUNBZ1pHVnpZM0pwY0hScGIyNDZJRTFsZEdGa1lYUmhMbVJsYzJOeWFYQjBhVzl1S0UxdlpHVnNRMnhoZW5vc0lHdGxlU2tzWEc0Z0lDQWdJQ0FnSUhKbGNYVnBjbVZrT2lCMGNuVmxMRnh1SUNBZ0lDQWdJQ0IwZVhCbE9pQlRkSEpwYm1jc1hHNGdJQ0FnSUNCOU8xeHVJQ0FnSUgwcE8xeHVYRzRnSUNBZ2NtVjBkWEp1SUh0Y2JpQWdJQ0FnSUhCaGRHZ3NYRzRnSUNBZ0lDQmtaWE5qY21sd2RHbHZiaXhjYmlBZ0lDQWdJR0Z3YVZCeWIzQmxjblJwWlhNc1hHNGdJQ0FnSUNCblpYUlFTem9nS0M0dUxuQmhjbUZ0Y3pvZ1FYSnlZWGs4YzNSeWFXNW5JSHdnYm5WdFltVnlQaWtnUFQ1Y2JpQWdJQ0FnSUNBZ1kyOXRjRzl6WldRL0xuTmxjR0Z5WVhSdmNpQS9JSEJoY21GdGN5NXFiMmx1S0dOdmJYQnZjMlZrTG5ObGNHRnlZWFJ2Y2lrZ09pQndZWEpoYlhNdWFtOXBiaWhjSWx3aUtTeGNiaUFnSUNCOU8xeHVJQ0I5WEc1Y2JpQWdjSEpwZG1GMFpTQnpkR0YwYVdNZ2NtOTFkR1ZRWVhKaGJVUmxZMjl5WVhSdmNuTW9YRzRnSUNBZ2NHRjBhRG9nYzNSeWFXNW5YRzRnSUNrNklFRnljbUY1UEhzZ1pHVmpiM0poZEc5eU9pQlFZWEpoYldWMFpYSkVaV052Y21GMGIzSTdJR2x1WkdWNE9pQnVkVzFpWlhJZ2ZUNGdlMXh1SUNBZ0lHeGxkQ0J3WVhKaGJVbHVaR1Y0SUQwZ01EdGNiaUFnSUNCeVpYUjFjbTRnY0dGMGFGeHVJQ0FnSUNBZ0xuTndiR2wwS0Z3aUwxd2lLVnh1SUNBZ0lDQWdMbVpwYkhSbGNpaENiMjlzWldGdUtWeHVJQ0FnSUNBZ0xtWnNZWFJOWVhBb0tITmxaMjFsYm5RcElEMCtJSHRjYmlBZ0lDQWdJQ0FnYVdZZ0tITmxaMjFsYm5RdWMzUmhjblJ6VjJsMGFDaGNJanBjSWlrcElIdGNiaUFnSUNBZ0lDQWdJQ0J5WlhSMWNtNGdXMXh1SUNBZ0lDQWdJQ0FnSUNBZ2V5QmtaV052Y21GMGIzSTZJRkJoY21GdEtITmxaMjFsYm5RdWMyeHBZMlVvTVNrcElHRnpJR0Z1ZVN3Z2FXNWtaWGc2SUhCaGNtRnRTVzVrWlhnckt5QjlMRnh1SUNBZ0lDQWdJQ0FnSUYwN1hHNGdJQ0FnSUNBZ0lIMWNiaUFnSUNBZ0lDQWdhV1lnS0hObFoyMWxiblF1YzNSaGNuUnpWMmwwYUNoY0lpcGNJaWtwSUh0Y2JpQWdJQ0FnSUNBZ0lDQnlaWFIxY200Z1cxeHVJQ0FnSUNBZ0lDQWdJQ0FnZXlCa1pXTnZjbUYwYjNJNklGQmhjbUZ0S0hObFoyMWxiblF1YzJ4cFkyVW9NU2twSUdGeklHRnVlU3dnYVc1a1pYZzZJSEJoY21GdFNXNWtaWGdyS3lCOUxGeHVJQ0FnSUNBZ0lDQWdJRjA3WEc0Z0lDQWdJQ0FnSUgxY2JpQWdJQ0FnSUNBZ2NtVjBkWEp1SUZ0ZE8xeHVJQ0FnSUNBZ2ZTazdYRzRnSUgxY2JseHVJQ0J3Y21sMllYUmxJSE4wWVhScFl5QmtaV1pwYm1WTlpYUm9iMlFvWEc0Z0lDQWdkR0Z5WjJWME9pQmhibmtzWEc0Z0lDQWdiV1YwYUc5a1RtRnRaVG9nYzNSeWFXNW5MRnh1SUNBZ0lHaGhibVJzWlhJNklDZ3VMaTVoY21kek9pQmhibmxiWFNrZ1BUNGdZVzU1WEc0Z0lDazZJRkJ5YjNCbGNuUjVSR1Z6WTNKcGNIUnZjaUI4SUhWdVpHVm1hVzVsWkNCN1hHNGdJQ0FnVDJKcVpXTjBMbVJsWm1sdVpWQnliM0JsY25SNUtIUmhjbWRsZEM1d2NtOTBiM1I1Y0dVZ2ZId2dkR0Z5WjJWMExDQnRaWFJvYjJST1lXMWxMQ0I3WEc0Z0lDQWdJQ0IyWVd4MVpUb2dhR0Z1Wkd4bGNpeGNiaUFnSUNBZ0lIZHlhWFJoWW14bE9pQm1ZV3h6WlN4Y2JpQWdJQ0FnSUdOdmJtWnBaM1Z5WVdKc1pUb2dkSEoxWlN4Y2JpQWdJQ0FnSUdWdWRXMWxjbUZpYkdVNklHWmhiSE5sTEZ4dUlDQWdJSDBwTzF4dVhHNGdJQ0FnY21WMGRYSnVJRTlpYW1WamRDNW5aWFJQZDI1UWNtOXdaWEowZVVSbGMyTnlhWEIwYjNJb1hHNGdJQ0FnSUNCMFlYSm5aWFF1Y0hKdmRHOTBlWEJsSUh4OElIUmhjbWRsZEN4Y2JpQWdJQ0FnSUcxbGRHaHZaRTVoYldWY2JpQWdJQ0FwTzF4dUlDQjlYRzVjYmlBZ2NISnBkbUYwWlNCemRHRjBhV01nWVhCd2JIbEVaV052Y21GMGIzSnpLRnh1SUNBZ0lIUmhjbWRsZERvZ1lXNTVMRnh1SUNBZ0lHMWxkR2h2WkU1aGJXVTZJSE4wY21sdVp5eGNiaUFnSUNCdFpYUm9iMlJFWldOdmNtRjBiM0p6T2lCQmNuSmhlVHdvZEdGeVoyVjBPaUJoYm5rc0lHdGxlVG9nYzNSeWFXNW5MQ0JrWlhOak9pQmhibmtwSUQwK0lIWnZhV1ErTEZ4dUlDQWdJSEJoY21GdFJHVmpiM0poZEc5eWN6b2dRWEp5WVhrOGUxeHVJQ0FnSUNBZ1pHVmpiM0poZEc5eU9pQlFZWEpoYldWMFpYSkVaV052Y21GMGIzSTdYRzRnSUNBZ0lDQnBibVJsZURvZ2JuVnRZbVZ5TzF4dUlDQWdJSDArSUQwZ1cxMWNiaUFnS1NCN1hHNGdJQ0FnWTI5dWMzUWdjSEp2ZEc4Z1BTQjBZWEpuWlhRL0xuQnliM1J2ZEhsd1pTQS9QeUIwWVhKblpYUTdYRzRnSUNBZ1kyOXVjM1FnWkdWelkzSnBjSFJ2Y2lBOUlFOWlhbVZqZEM1blpYUlBkMjVRY205d1pYSjBlVVJsYzJOeWFYQjBiM0lvY0hKdmRHOHNJRzFsZEdodlpFNWhiV1VwTzF4dUlDQWdJRzFsZEdodlpFUmxZMjl5WVhSdmNuTXVabTl5UldGamFDZ29aQ2tnUFQ0Z1pDaHdjbTkwYnl3Z2JXVjBhRzlrVG1GdFpTd2daR1Z6WTNKcGNIUnZjaWtwTzF4dUlDQWdJSEJoY21GdFJHVmpiM0poZEc5eWN5NW1iM0pGWVdOb0tDaDdJR1JsWTI5eVlYUnZjaXdnYVc1a1pYZ2dmU2tnUFQ1Y2JpQWdJQ0FnSUdSbFkyOXlZWFJ2Y2lod2NtOTBieXdnYldWMGFHOWtUbUZ0WlN3Z2FXNWtaWGdwWEc0Z0lDQWdLVHRjYmlBZ2ZWeHVYRzRnSUhCeWFYWmhkR1VnYzNSaGRHbGpJRzFoZEdOb1VtOTFkR1VvWEc0Z0lDQWdiV1YwYUc5a1RtRnRaVG9nYzNSeWFXNW5MRnh1SUNBZ0lISnZkWFJsT2lCVFpYSjJaWEpTYjNWMFpTeGNiaUFnSUNCd2ExQmhkR2c2SUhOMGNtbHVaeXhjYmlBZ0lDQmhjR2xRY205d1pYSjBhV1Z6T2lCRVpXTmhaa0Z3YVZCeWIzQmxjblI1VzEwc1hHNGdJQ0FnWjJWMFVFczZJQ2d1TGk1d09pQkJjbkpoZVR4emRISnBibWNnZkNCdWRXMWlaWEkrS1NBOVBpQnpkSEpwYm1jc1hHNGdJQ0FnVFc5a1pXeERiMjV6ZEhJNklFMXZaR1ZzUTI5dWMzUnlkV04wYjNJOFlXNTVQaXhjYmlBZ0lDQnRiMlJsYkVOc1lYcDZUbUZ0WlRvZ2MzUnlhVzVuWEc0Z0lDazZYRzRnSUNBZ2ZDQjdYRzRnSUNBZ0lDQWdJRzFsZEdodlpFNWhiV1U2SUhOMGNtbHVaenRjYmlBZ0lDQWdJQ0FnYUdGdVpHeGxjam9nS0M0dUxtRnlaM002SUdGdWVWdGRLU0E5UGlCaGJuazdYRzRnSUNBZ0lDQWdJR1JsWTI5eVlYUnZjbk02SUVGeWNtRjVQQ2gwWVhKblpYUTZJR0Z1ZVN3Z2EyVjVPaUJ6ZEhKcGJtY3NJR1JsYzJNNklHRnVlU2tnUFQ0Z2RtOXBaRDQ3WEc0Z0lDQWdJQ0FnSUhCaGNtRnRSR1ZqYjNKaGRHOXljem9nUVhKeVlYazhlMXh1SUNBZ0lDQWdJQ0FnSUdSbFkyOXlZWFJ2Y2pvZ1VHRnlZVzFsZEdWeVJHVmpiM0poZEc5eU8xeHVJQ0FnSUNBZ0lDQWdJR2x1WkdWNE9pQnVkVzFpWlhJN1hHNGdJQ0FnSUNBZ0lIMCtPMXh1SUNBZ0lDQWdmVnh1SUNBZ0lId2dkVzVrWldacGJtVmtJSHRjYmlBZ0lDQmpiMjV6ZENCN0lHMWxkR2h2WkN3Z2NHRjBhQ0I5SUQwZ2NtOTFkR1U3WEc0Z0lDQWdZMjl1YzNRZ2JtOXliV0ZzYVhwbFpGQmhkR2dnUFNCd1lYUm9MbkpsY0d4aFkyVW9MMTVjWEM4cmZGeGNMeXNrTDJjc0lGd2lYQ0lwTzF4dUlDQWdJR052Ym5OMElHaGhibVJzWlhJZ1BTQnliM1YwWlM1cGJYQnNaVzFsYm5SaGRHbHZiaUJoY3lBb0xpNHVZWEpuY3pvZ1lXNTVXMTBwSUQwK0lHRnVlVHRjYmx4dUlDQWdJR2xtSUNodFpYUm9iMlFnUFQwOUlGd2lVRTlUVkZ3aUlDWW1JRzV2Y20xaGJHbDZaV1JRWVhSb0lEMDlQU0JjSWx3aUtTQjdYRzRnSUNBZ0lDQnlaWFIxY200Z1JuSnZiVTF2WkdWc1EyOXVkSEp2Ykd4bGNpNWpjbVZoZEdWU1pXZHBjM1J5WVhScGIyNG9YRzRnSUNBZ0lDQWdJRndpWTNKbFlYUmxYQ0lzWEc0Z0lDQWdJQ0FnSUdoaGJtUnNaWElzWEc0Z0lDQWdJQ0FnSUVaeWIyMU5iMlJsYkVOdmJuUnliMnhzWlhJdVkzSmxZWFJsUTNKbFlYUmxSR1ZqYjNKaGRHOXljeWhOYjJSbGJFTnZibk4wY2l3Z2JXOWtaV3hEYkdGNmVrNWhiV1VwTEZ4dUlDQWdJQ0FnSUNCYlhHNGdJQ0FnSUNBZ0lDQWdleUJrWldOdmNtRjBiM0k2SUVSbFkyRm1RbTlrZVNncElHRnpJR0Z1ZVN3Z2FXNWtaWGc2SURBZ2ZTeGNiaUFnSUNBZ0lDQWdJQ0I3SUdSbFkyOXlZWFJ2Y2pvZ1VtVnpjRzl1YzJVb2V5QndZWE56ZEdoeWIzVm5hRG9nZEhKMVpTQjlLU0JoY3lCaGJua3NJR2x1WkdWNE9pQXhJSDBzWEc0Z0lDQWdJQ0FnSUYxY2JpQWdJQ0FnSUNrN1hHNGdJQ0FnZlZ4dVhHNGdJQ0FnYVdZZ0tHMWxkR2h2WkNBOVBUMGdYQ0pRVDFOVVhDSWdKaVlnYm05eWJXRnNhWHBsWkZCaGRHZ2dQVDA5SUZ3aVluVnNhMXdpS1NCN1hHNGdJQ0FnSUNCeVpYUjFjbTRnUm5KdmJVMXZaR1ZzUTI5dWRISnZiR3hsY2k1amNtVmhkR1ZTWldkcGMzUnlZWFJwYjI0b1hHNGdJQ0FnSUNBZ0lGd2lZM0psWVhSbFFXeHNYQ0lzWEc0Z0lDQWdJQ0FnSUdoaGJtUnNaWElzWEc0Z0lDQWdJQ0FnSUVaeWIyMU5iMlJsYkVOdmJuUnliMnhzWlhJdVluVnNhME55WldGMFpVUmxZMjl5WVhSdmNuTW9UVzlrWld4RGIyNXpkSElzSUcxdlpHVnNRMnhoZW5wT1lXMWxLU3hjYmlBZ0lDQWdJQ0FnVzF4dUlDQWdJQ0FnSUNBZ0lIc2daR1ZqYjNKaGRHOXlPaUJFWldOaFprSnZaSGtvS1NCaGN5QmhibmtzSUdsdVpHVjRPaUF3SUgwc1hHNGdJQ0FnSUNBZ0lDQWdleUJrWldOdmNtRjBiM0k2SUZKbGMzQnZibk5sS0hzZ2NHRnpjM1JvY205MVoyZzZJSFJ5ZFdVZ2ZTa2dZWE1nWVc1NUxDQnBibVJsZURvZ01TQjlMRnh1SUNBZ0lDQWdJQ0JkWEc0Z0lDQWdJQ0FwTzF4dUlDQWdJSDFjYmx4dUlDQWdJR2xtSUNodFpYUm9iMlFnUFQwOUlGd2lSMFZVWENJZ0ppWWdibTl5YldGc2FYcGxaRkJoZEdnZ1BUMDlJRndpWW5Wc2Exd2lLU0I3WEc0Z0lDQWdJQ0J5WlhSMWNtNGdSbkp2YlUxdlpHVnNRMjl1ZEhKdmJHeGxjaTVqY21WaGRHVlNaV2RwYzNSeVlYUnBiMjRvWEc0Z0lDQWdJQ0FnSUZ3aWNtVmhaRUZzYkZ3aUxGeHVJQ0FnSUNBZ0lDQm9ZVzVrYkdWeUxGeHVJQ0FnSUNBZ0lDQkdjbTl0VFc5a1pXeERiMjUwY205c2JHVnlMbUoxYkd0U1pXRmtSR1ZqYjNKaGRHOXljeWhOYjJSbGJFTnZibk4wY2l3Z2JXOWtaV3hEYkdGNmVrNWhiV1VwTEZ4dUlDQWdJQ0FnSUNCYmV5QmtaV052Y21GMGIzSTZJRkYxWlhKNUtGd2lhV1J6WENJcElHRnpJR0Z1ZVN3Z2FXNWtaWGc2SURBZ2ZWMWNiaUFnSUNBZ0lDazdYRzRnSUNBZ2ZWeHVYRzRnSUNBZ2FXWWdLRzFsZEdodlpDQTlQVDBnWENKUVZWUmNJaUFtSmlCdWIzSnRZV3hwZW1Wa1VHRjBhQ0E5UFQwZ1hDSmlkV3hyWENJcElIdGNiaUFnSUNBZ0lISmxkSFZ5YmlCR2NtOXRUVzlrWld4RGIyNTBjbTlzYkdWeUxtTnlaV0YwWlZKbFoybHpkSEpoZEdsdmJpaGNiaUFnSUNBZ0lDQWdYQ0oxY0dSaGRHVkJiR3hjSWl4Y2JpQWdJQ0FnSUNBZ2FHRnVaR3hsY2l4Y2JpQWdJQ0FnSUNBZ1JuSnZiVTF2WkdWc1EyOXVkSEp2Ykd4bGNpNWlkV3hyVlhCa1lYUmxSR1ZqYjNKaGRHOXljeWhjYmlBZ0lDQWdJQ0FnSUNCTmIyUmxiRU52Ym5OMGNpeGNiaUFnSUNBZ0lDQWdJQ0J0YjJSbGJFTnNZWHA2VG1GdFpTeGNiaUFnSUNBZ0lDQWdJQ0JoY0dsUWNtOXdaWEowYVdWelhHNGdJQ0FnSUNBZ0lDa3NYRzRnSUNBZ0lDQWdJRnRjYmlBZ0lDQWdJQ0FnSUNCN0lHUmxZMjl5WVhSdmNqb2dSR1ZqWVdaQ2IyUjVLQ2tnWVhNZ1lXNTVMQ0JwYm1SbGVEb2dNQ0I5TEZ4dUlDQWdJQ0FnSUNBZ0lIc2daR1ZqYjNKaGRHOXlPaUJTWlhOd2IyNXpaU2g3SUhCaGMzTjBhSEp2ZFdkb09pQjBjblZsSUgwcElHRnpJR0Z1ZVN3Z2FXNWtaWGc2SURFZ2ZTeGNiaUFnSUNBZ0lDQWdYVnh1SUNBZ0lDQWdLVHRjYmlBZ0lDQjlYRzVjYmlBZ0lDQnBaaUFvYldWMGFHOWtJRDA5UFNCY0lrUkZURVZVUlZ3aUlDWW1JRzV2Y20xaGJHbDZaV1JRWVhSb0lEMDlQU0JjSW1KMWJHdGNJaWtnZTF4dUlDQWdJQ0FnY21WMGRYSnVJRVp5YjIxTmIyUmxiRU52Ym5SeWIyeHNaWEl1WTNKbFlYUmxVbVZuYVhOMGNtRjBhVzl1S0Z4dUlDQWdJQ0FnSUNCY0ltUmxiR1YwWlVGc2JGd2lMRnh1SUNBZ0lDQWdJQ0JvWVc1a2JHVnlMRnh1SUNBZ0lDQWdJQ0JHY205dFRXOWtaV3hEYjI1MGNtOXNiR1Z5TG1KMWJHdEVaV3hsZEdWRVpXTnZjbUYwYjNKektGeHVJQ0FnSUNBZ0lDQWdJRTF2WkdWc1EyOXVjM1J5TEZ4dUlDQWdJQ0FnSUNBZ0lHMXZaR1ZzUTJ4aGVucE9ZVzFsTEZ4dUlDQWdJQ0FnSUNBZ0lHRndhVkJ5YjNCbGNuUnBaWE5jYmlBZ0lDQWdJQ0FnS1N4Y2JpQWdJQ0FnSUNBZ1cxeHVJQ0FnSUNBZ0lDQWdJSHNnWkdWamIzSmhkRzl5T2lCUmRXVnllU2hjSW1sa2Mxd2lLU0JoY3lCaGJua3NJR2x1WkdWNE9pQXdJSDBzWEc0Z0lDQWdJQ0FnSUNBZ2V5QmtaV052Y21GMGIzSTZJRkpsYzNCdmJuTmxLSHNnY0dGemMzUm9jbTkxWjJnNklIUnlkV1VnZlNrZ1lYTWdZVzU1TENCcGJtUmxlRG9nTVNCOUxGeHVJQ0FnSUNBZ0lDQmRYRzRnSUNBZ0lDQXBPMXh1SUNBZ0lIMWNibHh1SUNBZ0lHbG1JQ2h0WlhSb2IyUWdQVDA5SUZ3aVIwVlVYQ0lnSmlZZ2JtOXliV0ZzYVhwbFpGQmhkR2dnUFQwOUlIQnJVR0YwYUNrZ2UxeHVJQ0FnSUNBZ2NtVjBkWEp1SUVaeWIyMU5iMlJsYkVOdmJuUnliMnhzWlhJdVkzSmxZWFJsVW1WbmFYTjBjbUYwYVc5dUtGeHVJQ0FnSUNBZ0lDQmNJbkpsWVdSY0lpeGNiaUFnSUNBZ0lDQWdhR0Z1Wkd4bGNpeGNiaUFnSUNBZ0lDQWdSbkp2YlUxdlpHVnNRMjl1ZEhKdmJHeGxjaTV5WldGa1JHVmpiM0poZEc5eWN5aGNiaUFnSUNBZ0lDQWdJQ0JOYjJSbGJFTnZibk4wY2l4Y2JpQWdJQ0FnSUNBZ0lDQnRiMlJsYkVOc1lYcDZUbUZ0WlN4Y2JpQWdJQ0FnSUNBZ0lDQmhjR2xRY205d1pYSjBhV1Z6TEZ4dUlDQWdJQ0FnSUNBZ0lIQnJVR0YwYUZ4dUlDQWdJQ0FnSUNBcExGeHVJQ0FnSUNBZ0lDQkdjbTl0VFc5a1pXeERiMjUwY205c2JHVnlMbkp2ZFhSbFVHRnlZVzFFWldOdmNtRjBiM0p6S0c1dmNtMWhiR2w2WldSUVlYUm9LVnh1SUNBZ0lDQWdLVHRjYmlBZ0lDQjlYRzVjYmlBZ0lDQnBaaUFvYldWMGFHOWtJRDA5UFNCY0lsQlZWRndpSUNZbUlHNXZjbTFoYkdsNlpXUlFZWFJvSUQwOVBTQndhMUJoZEdncElIdGNiaUFnSUNBZ0lHTnZibk4wSUhKdmRYUmxVR0Z5WVcxeklEMWNiaUFnSUNBZ0lDQWdSbkp2YlUxdlpHVnNRMjl1ZEhKdmJHeGxjaTV5YjNWMFpWQmhjbUZ0UkdWamIzSmhkRzl5Y3lodWIzSnRZV3hwZW1Wa1VHRjBhQ2s3WEc0Z0lDQWdJQ0J5WlhSMWNtNGdSbkp2YlUxdlpHVnNRMjl1ZEhKdmJHeGxjaTVqY21WaGRHVlNaV2RwYzNSeVlYUnBiMjRvWEc0Z0lDQWdJQ0FnSUZ3aWRYQmtZWFJsWENJc1hHNGdJQ0FnSUNBZ0lHaGhibVJzWlhJc1hHNGdJQ0FnSUNBZ0lFWnliMjFOYjJSbGJFTnZiblJ5YjJ4c1pYSXVkWEJrWVhSbFJHVmpiM0poZEc5eWN5aGNiaUFnSUNBZ0lDQWdJQ0JOYjJSbGJFTnZibk4wY2l4Y2JpQWdJQ0FnSUNBZ0lDQnRiMlJsYkVOc1lYcDZUbUZ0WlN4Y2JpQWdJQ0FnSUNBZ0lDQmhjR2xRY205d1pYSjBhV1Z6TEZ4dUlDQWdJQ0FnSUNBZ0lIQnJVR0YwYUZ4dUlDQWdJQ0FnSUNBcExGeHVJQ0FnSUNBZ0lDQmJYRzRnSUNBZ0lDQWdJQ0FnZXlCa1pXTnZjbUYwYjNJNklFUmxZMkZtUW05a2VTZ3BJR0Z6SUdGdWVTd2dhVzVrWlhnNklEQWdmU3hjYmlBZ0lDQWdJQ0FnSUNBdUxpNXliM1YwWlZCaGNtRnRjeTV0WVhBb0tIc2daR1ZqYjNKaGRHOXlMQ0JwYm1SbGVDQjlLU0E5UGlBb2UxeHVJQ0FnSUNBZ0lDQWdJQ0FnWkdWamIzSmhkRzl5TEZ4dUlDQWdJQ0FnSUNBZ0lDQWdhVzVrWlhnNklHbHVaR1Y0SUNzZ01TeGNiaUFnSUNBZ0lDQWdJQ0I5S1Nrc1hHNGdJQ0FnSUNBZ0lGMWNiaUFnSUNBZ0lDazdYRzRnSUNBZ2ZWeHVYRzRnSUNBZ2FXWWdLRzFsZEdodlpDQTlQVDBnWENKRVJVeEZWRVZjSWlBbUppQnViM0p0WVd4cGVtVmtVR0YwYUNBOVBUMGdjR3RRWVhSb0tTQjdYRzRnSUNBZ0lDQmpiMjV6ZENCeWIzVjBaVkJoY21GdGN5QTlYRzRnSUNBZ0lDQWdJRVp5YjIxTmIyUmxiRU52Ym5SeWIyeHNaWEl1Y205MWRHVlFZWEpoYlVSbFkyOXlZWFJ2Y25Nb2JtOXliV0ZzYVhwbFpGQmhkR2dwTzF4dUlDQWdJQ0FnY21WMGRYSnVJRVp5YjIxTmIyUmxiRU52Ym5SeWIyeHNaWEl1WTNKbFlYUmxVbVZuYVhOMGNtRjBhVzl1S0Z4dUlDQWdJQ0FnSUNCY0ltUmxiR1YwWlZ3aUxGeHVJQ0FnSUNBZ0lDQm9ZVzVrYkdWeUxGeHVJQ0FnSUNBZ0lDQkdjbTl0VFc5a1pXeERiMjUwY205c2JHVnlMbVJsYkdWMFpVUmxZMjl5WVhSdmNuTW9YRzRnSUNBZ0lDQWdJQ0FnVFc5a1pXeERiMjV6ZEhJc1hHNGdJQ0FnSUNBZ0lDQWdiVzlrWld4RGJHRjZlazVoYldVc1hHNGdJQ0FnSUNBZ0lDQWdZWEJwVUhKdmNHVnlkR2xsY3l4Y2JpQWdJQ0FnSUNBZ0lDQndhMUJoZEdoY2JpQWdJQ0FnSUNBZ0tTeGNiaUFnSUNBZ0lDQWdjbTkxZEdWUVlYSmhiWE5jYmlBZ0lDQWdJQ2s3WEc0Z0lDQWdmVnh1WEc0Z0lDQWdMeThnUTI5dGNHOXpaV1FnVUVzZ1ptRnNiR0poWTJzZ2NtOTFkR1Z6SUNobWFXeDBaWEpGYlhCMGVTa2c0b0NVSUhCaGRHZ2daR2xtWm1WeWN5Qm1jbTl0SUhCclVHRjBhRnh1SUNBZ0lHTnZibk4wSUdaaGJHeGlZV05yVTJWbmJXVnVkSE1nUFNCdWIzSnRZV3hwZW1Wa1VHRjBhQzV6Y0d4cGRDaGNJaTljSWlrdVptbHNkR1Z5S0VKdmIyeGxZVzRwTzF4dUlDQWdJR052Ym5OMElHbHpRV3hzVUdGeVlXMXpJRDFjYmlBZ0lDQWdJR1poYkd4aVlXTnJVMlZuYldWdWRITXViR1Z1WjNSb0lENGdNQ0FtSmx4dUlDQWdJQ0FnWm1Gc2JHSmhZMnRUWldkdFpXNTBjeTVsZG1WeWVTZ29jeWtnUFQ0Z2N5NXpkR0Z5ZEhOWGFYUm9LRndpT2x3aUtTazdYRzRnSUNBZ2FXWWdLR2x6UVd4c1VHRnlZVzF6SUNZbUlHNXZjbTFoYkdsNlpXUlFZWFJvSUNFOVBTQndhMUJoZEdncElIdGNiaUFnSUNBZ0lHTnZibk4wSUdaaGJHeGlZV05yUVhCcFVISnZjSE1nUFNCbVlXeHNZbUZqYTFObFoyMWxiblJ6WEc0Z0lDQWdJQ0FnSUM1dFlYQW9LSE1wSUQwK0lITXVjMnhwWTJVb01Ta3BYRzRnSUNBZ0lDQWdJQzV0WVhBb0tHNWhiV1VwSUQwK0lDaDdYRzRnSUNBZ0lDQWdJQ0FnYm1GdFpTeGNiaUFnSUNBZ0lDQWdJQ0JrWlhOamNtbHdkR2x2YmpvZ1lDUjdibUZ0WlgwZ2NHRnlZVzFsZEdWeVlDeGNiaUFnSUNBZ0lDQWdJQ0J5WlhGMWFYSmxaRG9nZEhKMVpTeGNiaUFnSUNBZ0lDQWdJQ0IwZVhCbE9pQlRkSEpwYm1jc1hHNGdJQ0FnSUNBZ0lIMHBLVHRjYmlBZ0lDQWdJR052Ym5OMElITjFabVpwZUNBOUlHWmhiR3hpWVdOclUyVm5iV1Z1ZEhNdWJXRndLQ2h6S1NBOVBpQnpMbk5zYVdObEtERXBLUzVxYjJsdUtGd2lRVzVrWENJcE8xeHVJQ0FnSUNBZ1kyOXVjM1FnY205MWRHVlFZWEpoYlhNZ1BWeHVJQ0FnSUNBZ0lDQkdjbTl0VFc5a1pXeERiMjUwY205c2JHVnlMbkp2ZFhSbFVHRnlZVzFFWldOdmNtRjBiM0p6S0c1dmNtMWhiR2w2WldSUVlYUm9LVHRjYmlBZ0lDQWdJR2xtSUNodFpYUm9iMlFnUFQwOUlGd2lSMFZVWENJcElIdGNiaUFnSUNBZ0lDQWdjbVYwZFhKdUlFWnliMjFOYjJSbGJFTnZiblJ5YjJ4c1pYSXVZM0psWVhSbFVtVm5hWE4wY21GMGFXOXVLRnh1SUNBZ0lDQWdJQ0FnSUdCeVpXRmtRbmtrZTNOMVptWnBlSDFnTEZ4dUlDQWdJQ0FnSUNBZ0lHaGhibVJzWlhJc1hHNGdJQ0FnSUNBZ0lDQWdSbkp2YlUxdlpHVnNRMjl1ZEhKdmJHeGxjaTV5WldGa1JHVmpiM0poZEc5eWN5aGNiaUFnSUNBZ0lDQWdJQ0FnSUUxdlpHVnNRMjl1YzNSeUxGeHVJQ0FnSUNBZ0lDQWdJQ0FnYlc5a1pXeERiR0Y2ZWs1aGJXVXNYRzRnSUNBZ0lDQWdJQ0FnSUNCbVlXeHNZbUZqYTBGd2FWQnliM0J6TEZ4dUlDQWdJQ0FnSUNBZ0lDQWdibTl5YldGc2FYcGxaRkJoZEdoY2JpQWdJQ0FnSUNBZ0lDQXBMRnh1SUNBZ0lDQWdJQ0FnSUhKdmRYUmxVR0Z5WVcxelhHNGdJQ0FnSUNBZ0lDazdYRzRnSUNBZ0lDQjlYRzRnSUNBZ0lDQnBaaUFvYldWMGFHOWtJRDA5UFNCY0lsQlZWRndpS1NCN1hHNGdJQ0FnSUNBZ0lISmxkSFZ5YmlCR2NtOXRUVzlrWld4RGIyNTBjbTlzYkdWeUxtTnlaV0YwWlZKbFoybHpkSEpoZEdsdmJpaGNiaUFnSUNBZ0lDQWdJQ0JnZFhCa1lYUmxRbmtrZTNOMVptWnBlSDFnTEZ4dUlDQWdJQ0FnSUNBZ0lHaGhibVJzWlhJc1hHNGdJQ0FnSUNBZ0lDQWdSbkp2YlUxdlpHVnNRMjl1ZEhKdmJHeGxjaTUxY0dSaGRHVkVaV052Y21GMGIzSnpLRnh1SUNBZ0lDQWdJQ0FnSUNBZ1RXOWtaV3hEYjI1emRISXNYRzRnSUNBZ0lDQWdJQ0FnSUNCdGIyUmxiRU5zWVhwNlRtRnRaU3hjYmlBZ0lDQWdJQ0FnSUNBZ0lHWmhiR3hpWVdOclFYQnBVSEp2Y0hNc1hHNGdJQ0FnSUNBZ0lDQWdJQ0J1YjNKdFlXeHBlbVZrVUdGMGFGeHVJQ0FnSUNBZ0lDQWdJQ2tzWEc0Z0lDQWdJQ0FnSUNBZ1cxeHVJQ0FnSUNBZ0lDQWdJQ0FnZXlCa1pXTnZjbUYwYjNJNklFUmxZMkZtUW05a2VTZ3BJR0Z6SUdGdWVTd2dhVzVrWlhnNklEQWdmU3hjYmlBZ0lDQWdJQ0FnSUNBZ0lDNHVMbkp2ZFhSbFVHRnlZVzF6TG0xaGNDZ29leUJrWldOdmNtRjBiM0lzSUdsdVpHVjRJSDBwSUQwK0lDaDdYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lHUmxZMjl5WVhSdmNpeGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ2FXNWtaWGc2SUdsdVpHVjRJQ3NnTVN4Y2JpQWdJQ0FnSUNBZ0lDQWdJSDBwS1N4Y2JpQWdJQ0FnSUNBZ0lDQmRYRzRnSUNBZ0lDQWdJQ2s3WEc0Z0lDQWdJQ0I5WEc0Z0lDQWdJQ0JwWmlBb2JXVjBhRzlrSUQwOVBTQmNJa1JGVEVWVVJWd2lLU0I3WEc0Z0lDQWdJQ0FnSUhKbGRIVnliaUJHY205dFRXOWtaV3hEYjI1MGNtOXNiR1Z5TG1OeVpXRjBaVkpsWjJsemRISmhkR2x2YmloY2JpQWdJQ0FnSUNBZ0lDQmdaR1ZzWlhSbFFua2tlM04xWm1acGVIMWdMRnh1SUNBZ0lDQWdJQ0FnSUdoaGJtUnNaWElzWEc0Z0lDQWdJQ0FnSUNBZ1JuSnZiVTF2WkdWc1EyOXVkSEp2Ykd4bGNpNWtaV3hsZEdWRVpXTnZjbUYwYjNKektGeHVJQ0FnSUNBZ0lDQWdJQ0FnVFc5a1pXeERiMjV6ZEhJc1hHNGdJQ0FnSUNBZ0lDQWdJQ0J0YjJSbGJFTnNZWHA2VG1GdFpTeGNiaUFnSUNBZ0lDQWdJQ0FnSUdaaGJHeGlZV05yUVhCcFVISnZjSE1zWEc0Z0lDQWdJQ0FnSUNBZ0lDQnViM0p0WVd4cGVtVmtVR0YwYUZ4dUlDQWdJQ0FnSUNBZ0lDa3NYRzRnSUNBZ0lDQWdJQ0FnY205MWRHVlFZWEpoYlhOY2JpQWdJQ0FnSUNBZ0tUdGNiaUFnSUNBZ0lIMWNiaUFnSUNCOVhHNWNiaUFnSUNCcFppQW9iV1YwYUc5a0lEMDlQU0JjSWtkRlZGd2lJQ1ltSUc1dmNtMWhiR2w2WldSUVlYUm9JRDA5UFNCY0luTjBZWFJsYldWdWRDODZiV1YwYUc5a0x5cGhjbWR6WENJcElIdGNiaUFnSUNBZ0lISmxkSFZ5YmlCR2NtOXRUVzlrWld4RGIyNTBjbTlzYkdWeUxtTnlaV0YwWlZKbFoybHpkSEpoZEdsdmJpaGNiaUFnSUNBZ0lDQWdYQ0p6ZEdGMFpXMWxiblJjSWl4Y2JpQWdJQ0FnSUNBZ2FHRnVaR3hsY2l4Y2JpQWdJQ0FnSUNBZ1JuSnZiVTF2WkdWc1EyOXVkSEp2Ykd4bGNpNXpkR0YwWlcxbGJuUkVaV052Y21GMGIzSnpLRTF2WkdWc1EyOXVjM1J5TENCdGIyUmxiRU5zWVhwNlRtRnRaU2tzWEc0Z0lDQWdJQ0FnSUZ0Y2JpQWdJQ0FnSUNBZ0lDQjdJR1JsWTI5eVlYUnZjam9nVUdGeVlXMG9YQ0p0WlhSb2IyUmNJaWtnWVhNZ1lXNTVMQ0JwYm1SbGVEb2dNQ0I5TEZ4dUlDQWdJQ0FnSUNBZ0lIc2daR1ZqYjNKaGRHOXlPaUJRWVhKaGJTaGNJbUZ5WjNOY0lpa2dZWE1nWVc1NUxDQnBibVJsZURvZ01TQjlMRnh1SUNBZ0lDQWdJQ0FnSUhzZ1pHVmpiM0poZEc5eU9pQkVaV05oWmxGMVpYSjVLQ2tnWVhNZ1lXNTVMQ0JwYm1SbGVEb2dNaUI5TEZ4dUlDQWdJQ0FnSUNCZFhHNGdJQ0FnSUNBcE8xeHVJQ0FnSUgxY2JseHVJQ0FnSUdsbUlDaHRaWFJvYjJRZ1BUMDlJRndpUjBWVVhDSWdKaVlnYm05eWJXRnNhWHBsWkZCaGRHZ2dQVDA5SUZ3aVptbHVaRTl1WlVKNUx6cHJaWGt2T25aaGJIVmxYQ0lwSUh0Y2JpQWdJQ0FnSUhKbGRIVnliaUJHY205dFRXOWtaV3hEYjI1MGNtOXNiR1Z5TG1OeVpXRjBaVkpsWjJsemRISmhkR2x2YmloY2JpQWdJQ0FnSUNBZ1hDSm1hVzVrVDI1bFFubGNJaXhjYmlBZ0lDQWdJQ0FnYUdGdVpHeGxjaXhjYmlBZ0lDQWdJQ0FnUm5KdmJVMXZaR1ZzUTI5dWRISnZiR3hsY2k1emRHRjBaVzFsYm5SVGFHOXlkR04xZEVSbFkyOXlZWFJ2Y25Nb1hHNGdJQ0FnSUNBZ0lDQWdUVzlrWld4RGIyNXpkSElzWEc0Z0lDQWdJQ0FnSUNBZ2JXOWtaV3hEYkdGNmVrNWhiV1VzWEc0Z0lDQWdJQ0FnSUNBZ2JtOXliV0ZzYVhwbFpGQmhkR2dzWEc0Z0lDQWdJQ0FnSUNBZ1VISmxjR0Z5WldSVGRHRjBaVzFsYm5STFpYbHpMa1pKVGtSZlQwNUZYMEpaWEc0Z0lDQWdJQ0FnSUNrc1hHNGdJQ0FnSUNBZ0lFWnliMjFOYjJSbGJFTnZiblJ5YjJ4c1pYSXVjM1JoZEdWdFpXNTBVMmh2Y25SamRYUlFZWEpoYlhNb2JtOXliV0ZzYVhwbFpGQmhkR2dwWEc0Z0lDQWdJQ0FwTzF4dUlDQWdJSDFjYmx4dUlDQWdJR052Ym5OMElITjBZWFJsYldWdWRGSnZkWFJsY3pvZ1VtVmpiM0prUEhOMGNtbHVaeXdnYzNSeWFXNW5QaUE5SUh0Y2JpQWdJQ0FnSUZ3aWJHbHpkRUo1THpwclpYbGNJam9nVUhKbGNHRnlaV1JUZEdGMFpXMWxiblJMWlhsekxreEpVMVJmUWxrc1hHNGdJQ0FnSUNCY0luQmhaMmx1WVhSbFFua3ZPbXRsZVM4NmNHRm5aVndpT2lCUWNtVndZWEpsWkZOMFlYUmxiV1Z1ZEV0bGVYTXVVRUZIUlY5Q1dTeGNiaUFnSUNBZ0lGd2labWx1WkM4NmRtRnNkV1ZjSWpvZ1VISmxjR0Z5WldSVGRHRjBaVzFsYm5STFpYbHpMa1pKVGtRc1hHNGdJQ0FnSUNCY0luQmhaMlV2T25aaGJIVmxYQ0k2SUZCeVpYQmhjbVZrVTNSaGRHVnRaVzUwUzJWNWN5NVFRVWRGTEZ4dUlDQWdJQ0FnWENKbWFXNWtUMjVsUW5rdk9tdGxlUzg2ZG1Gc2RXVmNJam9nVUhKbGNHRnlaV1JUZEdGMFpXMWxiblJMWlhsekxrWkpUa1JmVDA1RlgwSlpMRnh1SUNBZ0lDQWdYQ0ptYVc1a1Fua3ZPbXRsZVM4NmRtRnNkV1ZjSWpvZ1VISmxjR0Z5WldSVGRHRjBaVzFsYm5STFpYbHpMa1pKVGtSZlFsa3NYRzRnSUNBZ0lDQmNJbU52ZFc1MFQyWXZPbVpwWld4a1hDSTZJRkJ5WlhCaGNtVmtVM1JoZEdWdFpXNTBTMlY1Y3k1RFQxVk9WRjlQUml4Y2JpQWdJQ0FnSUZ3aWJXRjRUMll2T21acFpXeGtYQ0k2SUZCeVpYQmhjbVZrVTNSaGRHVnRaVzUwUzJWNWN5NU5RVmhmVDBZc1hHNGdJQ0FnSUNCY0ltMXBiazltTHpwbWFXVnNaRndpT2lCUWNtVndZWEpsWkZOMFlYUmxiV1Z1ZEV0bGVYTXVUVWxPWDA5R0xGeHVJQ0FnSUNBZ1hDSmhkbWRQWmk4NlptbGxiR1JjSWpvZ1VISmxjR0Z5WldSVGRHRjBaVzFsYm5STFpYbHpMa0ZXUjE5UFJpeGNiaUFnSUNBZ0lGd2ljM1Z0VDJZdk9tWnBaV3hrWENJNklGQnlaWEJoY21Wa1UzUmhkR1Z0Wlc1MFMyVjVjeTVUVlUxZlQwWXNYRzRnSUNBZ0lDQmNJbVJwYzNScGJtTjBUMll2T21acFpXeGtYQ0k2SUZCeVpYQmhjbVZrVTNSaGRHVnRaVzUwUzJWNWN5NUVTVk5VU1U1RFZGOVBSaXhjYmlBZ0lDQWdJRndpWjNKdmRYQlBaaTg2Wm1sbGJHUmNJam9nVUhKbGNHRnlaV1JUZEdGMFpXMWxiblJMWlhsekxrZFNUMVZRWDA5R0xGeHVJQ0FnSUgwN1hHNWNiaUFnSUNCamIyNXpkQ0J6ZEdGMFpXMWxiblJMWlhrZ1BTQnpkR0YwWlcxbGJuUlNiM1YwWlhOYmJtOXliV0ZzYVhwbFpGQmhkR2hkTzF4dUlDQWdJR2xtSUNoemRHRjBaVzFsYm5STFpYa2dKaVlnYldWMGFHOWtJRDA5UFNCY0lrZEZWRndpS1NCN1hHNGdJQ0FnSUNCeVpYUjFjbTRnUm5KdmJVMXZaR1ZzUTI5dWRISnZiR3hsY2k1amNtVmhkR1ZTWldkcGMzUnlZWFJwYjI0b1hHNGdJQ0FnSUNBZ0lFWnliMjFOYjJSbGJFTnZiblJ5YjJ4c1pYSXVjM1JoZEdWdFpXNTBUV1YwYUc5a1RtRnRaU2h1YjNKdFlXeHBlbVZrVUdGMGFDa3NYRzRnSUNBZ0lDQWdJR2hoYm1Sc1pYSXNYRzRnSUNBZ0lDQWdJRVp5YjIxTmIyUmxiRU52Ym5SeWIyeHNaWEl1YzNSaGRHVnRaVzUwVTJodmNuUmpkWFJFWldOdmNtRjBiM0p6S0Z4dUlDQWdJQ0FnSUNBZ0lFMXZaR1ZzUTI5dWMzUnlMRnh1SUNBZ0lDQWdJQ0FnSUcxdlpHVnNRMnhoZW5wT1lXMWxMRnh1SUNBZ0lDQWdJQ0FnSUc1dmNtMWhiR2w2WldSUVlYUm9MRnh1SUNBZ0lDQWdJQ0FnSUhOMFlYUmxiV1Z1ZEV0bGVWeHVJQ0FnSUNBZ0lDQXBMRnh1SUNBZ0lDQWdJQ0JHY205dFRXOWtaV3hEYjI1MGNtOXNiR1Z5TG5OMFlYUmxiV1Z1ZEZOb2IzSjBZM1YwVUdGeVlXMXpLRzV2Y20xaGJHbDZaV1JRWVhSb0tWeHVJQ0FnSUNBZ0tUdGNiaUFnSUNCOVhHNWNiaUFnSUNCcFppQW9iV1YwYUc5a0lEMDlQU0JjSWtkRlZGd2lJQ1ltSUc1dmNtMWhiR2w2WldSUVlYUm9Mbk4wWVhKMGMxZHBkR2dvWENKeGRXVnllUzljSWlrcElIdGNiaUFnSUNBZ0lHTnZibk4wSUhGMVpYSjVUV1YwYUc5a0lEMGdibTl5YldGc2FYcGxaRkJoZEdndWNtVndiR0ZqWlNndlhuRjFaWEo1WEZ3dkx5d2dYQ0pjSWlrdWMzQnNhWFFvWENJdlhDSXBXekJkTzF4dUlDQWdJQ0FnY21WMGRYSnVJRVp5YjIxTmIyUmxiRU52Ym5SeWIyeHNaWEl1WTNKbFlYUmxVbVZuYVhOMGNtRjBhVzl1S0Z4dUlDQWdJQ0FnSUNCeGRXVnllVTFsZEdodlpDeGNiaUFnSUNBZ0lDQWdhR0Z1Wkd4bGNpeGNiaUFnSUNBZ0lDQWdSbkp2YlUxdlpHVnNRMjl1ZEhKdmJHeGxjaTVuWlhSUmRXVnllVVJsWTI5eVlYUnZjbk1vWEc0Z0lDQWdJQ0FnSUNBZ2NYVmxjbmxOWlhSb2IyUXNYRzRnSUNBZ0lDQWdJQ0FnYm05eWJXRnNhWHBsWkZCaGRHZ3NYRzRnSUNBZ0lDQWdJQ0FnWENKSFJWUmNJaXhjYmlBZ0lDQWdJQ0FnSUNCMGNuVmxYRzRnSUNBZ0lDQWdJQ2tzWEc0Z0lDQWdJQ0FnSUVaeWIyMU5iMlJsYkVOdmJuUnliMnhzWlhJdVkyOXRjR3hsZUZGMVpYSjVVR0Z5WVcxektHNXZjbTFoYkdsNlpXUlFZWFJvS1Z4dUlDQWdJQ0FnS1R0Y2JpQWdJQ0I5WEc1Y2JpQWdJQ0JqYjI1emRDQndZWFJvVTJWbmJXVnVkSE1nUFNCdWIzSnRZV3hwZW1Wa1VHRjBhQzV6Y0d4cGRDaGNJaTljSWlrdVptbHNkR1Z5S0VKdmIyeGxZVzRwTzF4dUlDQWdJR052Ym5OMElHdHViM2R1VUhKbFptbDRaWE1nUFNCdVpYY2dVMlYwUEhOMGNtbHVaejRvVzF4dUlDQWdJQ0FnWENKc2FYTjBRbmxjSWl4Y2JpQWdJQ0FnSUZ3aVptbHVaRUo1WENJc1hHNGdJQ0FnSUNCY0ltWnBibVJDZVZCaFoybHVZWFJsWENJc1hHNGdJQ0FnSUNCY0ltWnBibVJQYm1WQ2VWd2lMRnh1SUNBZ0lDQWdYQ0p3WVdkcGJtRjBaVUo1WENJc1hHNGdJQ0FnSUNCY0ltWnBibVJjSWl4Y2JpQWdJQ0FnSUZ3aWNHRm5aVndpTEZ4dUlDQWdJQ0FnWENKamIzVnVkRTltWENJc1hHNGdJQ0FnSUNCY0ltMWhlRTltWENJc1hHNGdJQ0FnSUNCY0ltMXBiazltWENJc1hHNGdJQ0FnSUNCY0ltRjJaMDltWENJc1hHNGdJQ0FnSUNCY0luTjFiVTltWENJc1hHNGdJQ0FnSUNCY0ltUnBjM1JwYm1OMFQyWmNJaXhjYmlBZ0lDQWdJRndpWjNKdmRYQlBabHdpTEZ4dUlDQWdJQ0FnWENKemRHRjBaVzFsYm5SY0lpeGNiaUFnSUNBZ0lGd2lZblZzYTF3aUxGeHVJQ0FnSUNBZ1hDSnhkV1Z5ZVZ3aUxGeHVJQ0FnSUYwcE8xeHVJQ0FnSUdsbUlDaGNiaUFnSUNBZ0lIQmhkR2hUWldkdFpXNTBjeTVzWlc1bmRHZ2dQaUF3SUNZbVhHNGdJQ0FnSUNBaGJtOXliV0ZzYVhwbFpGQmhkR2d1YzNSaGNuUnpWMmwwYUNoY0luRjFaWEo1TDF3aUtTQW1KbHh1SUNBZ0lDQWdJVzV2Y20xaGJHbDZaV1JRWVhSb0xuTjBZWEowYzFkcGRHZ29YQ0p6ZEdGMFpXMWxiblF2WENJcElDWW1YRzRnSUNBZ0lDQWhhMjV2ZDI1UWNtVm1hWGhsY3k1b1lYTW9jR0YwYUZObFoyMWxiblJ6V3pCZEtWeHVJQ0FnSUNrZ2UxeHVJQ0FnSUNBZ1kyOXVjM1FnWVhCcFVHRjBhRkJoY21GdGN5QTlJSEJoZEdoVFpXZHRaVzUwYzF4dUlDQWdJQ0FnSUNBdVptbHNkR1Z5S0NoektTQTlQaUJ6TG5OMFlYSjBjMWRwZEdnb1hDSTZYQ0lwS1Z4dUlDQWdJQ0FnSUNBdWJXRndLQ2h6S1NBOVBpQnpMbk5zYVdObEtERXBLVnh1SUNBZ0lDQWdJQ0F1YldGd0tDaHVZVzFsS1NBOVBpQW9lMXh1SUNBZ0lDQWdJQ0FnSUc1aGJXVXNYRzRnSUNBZ0lDQWdJQ0FnWkdWelkzSnBjSFJwYjI0NklHQWtlMjVoYldWOUlIQmhjbUZ0WlhSbGNpQm1iM0lnZEdobElIRjFaWEo1WUN4Y2JpQWdJQ0FnSUNBZ0lDQnlaWEYxYVhKbFpEb2dkSEoxWlN4Y2JpQWdJQ0FnSUNBZ0lDQjBlWEJsT2lCVGRISnBibWNzWEc0Z0lDQWdJQ0FnSUgwcEtUdGNibHh1SUNBZ0lDQWdjbVYwZFhKdUlFWnliMjFOYjJSbGJFTnZiblJ5YjJ4c1pYSXVZM0psWVhSbFVtVm5hWE4wY21GMGFXOXVLRnh1SUNBZ0lDQWdJQ0J0WlhSb2IyUk9ZVzFsTEZ4dUlDQWdJQ0FnSUNCb1lXNWtiR1Z5TEZ4dUlDQWdJQ0FnSUNCYlhHNGdJQ0FnSUNBZ0lDQWdMaTR1WVhCcFVHRjBhRkJoY21GdGN5NXRZWEFvS0hBcElEMCtJRUZ3YVZCaGNtRnRLSEFwS1N4Y2JpQWdJQ0FnSUNBZ0lDQkJjR2xQY0dWeVlYUnBiMjRvZXlCemRXMXRZWEo1T2lCZ1VtVjBjbWxsZG1VZ2NtVmpiM0prY3lCMWMybHVaeUJjSWlSN2JXVjBhRzlrVG1GdFpYMWNJaTVnSUgwcExGeHVJQ0FnSUNBZ0lDQWdJRUZ3YVU5clVtVnpjRzl1YzJVb2V5QmtaWE5qY21sd2RHbHZiam9nWENKU1pYTjFiSFFnYzNWalkyVnpjMloxYkd4NUlISmxkSEpwWlhabFpDNWNJaUI5S1N4Y2JpQWdJQ0FnSUNBZ0lDQkJjR2xPYjBOdmJuUmxiblJTWlhOd2IyNXpaU2g3WEc0Z0lDQWdJQ0FnSUNBZ0lDQmtaWE5qY21sd2RHbHZiam9nWENKT2J5QmpiMjUwWlc1MElISmxkSFZ5Ym1Wa0lHSjVJSFJvWlNCdFpYUm9iMlF1WENJc1hHNGdJQ0FnSUNBZ0lDQWdmU2tzWEc0Z0lDQWdJQ0FnSUYwc1hHNGdJQ0FnSUNBZ0lFWnliMjFOYjJSbGJFTnZiblJ5YjJ4c1pYSXVjbTkxZEdWUVlYSmhiVVJsWTI5eVlYUnZjbk1vYm05eWJXRnNhWHBsWkZCaGRHZ3BYRzRnSUNBZ0lDQXBPMXh1SUNBZ0lIMWNibHh1SUNBZ0lISmxkSFZ5YmlCMWJtUmxabWx1WldRN1hHNGdJSDFjYmx4dUlDQndjbWwyWVhSbElITjBZWFJwWXlCamNtVmhkR1ZTWldkcGMzUnlZWFJwYjI0b1hHNGdJQ0FnYldWMGFHOWtUbUZ0WlRvZ2MzUnlhVzVuTEZ4dUlDQWdJR2hoYm1Sc1pYSTZJQ2d1TGk1aGNtZHpPaUJoYm5sYlhTa2dQVDRnWVc1NUxGeHVJQ0FnSUdSbFkyOXlZWFJ2Y25NNklFRnljbUY1UENoMFlYSm5aWFE2SUdGdWVTd2dhMlY1T2lCemRISnBibWNzSUdSbGMyTTZJR0Z1ZVNrZ1BUNGdkbTlwWkQ0c1hHNGdJQ0FnY0dGeVlXMUVaV052Y21GMGIzSnpPaUJCY25KaGVUeDdJR1JsWTI5eVlYUnZjam9nVUdGeVlXMWxkR1Z5UkdWamIzSmhkRzl5T3lCcGJtUmxlRG9nYm5WdFltVnlJSDArWEc0Z0lDa2dlMXh1SUNBZ0lISmxkSFZ5YmlCN0lHMWxkR2h2WkU1aGJXVXNJR2hoYm1Sc1pYSXNJR1JsWTI5eVlYUnZjbk1zSUhCaGNtRnRSR1ZqYjNKaGRHOXljeUI5TzF4dUlDQjlYRzVjYmlBZ2NISnBkbUYwWlNCemRHRjBhV01nYzNSaGRHVnRaVzUwVFdWMGFHOWtUbUZ0WlNod1lYUm9PaUJ6ZEhKcGJtY3BPaUJ6ZEhKcGJtY2dlMXh1SUNBZ0lHTnZibk4wSUdacGNuTjBVMlZuYldWdWRDQTlJSEJoZEdndWMzQnNhWFFvWENJdlhDSXBXekJkTzF4dUlDQWdJSEpsZEhWeWJpQm1hWEp6ZEZObFoyMWxiblE3WEc0Z0lIMWNibHh1SUNCd2NtbDJZWFJsSUhOMFlYUnBZeUJ6ZEdGMFpXMWxiblJUYUc5eWRHTjFkRkJoY21GdGN5aGNiaUFnSUNCd1lYUm9PaUJ6ZEhKcGJtZGNiaUFnS1RvZ1FYSnlZWGs4ZXlCa1pXTnZjbUYwYjNJNklGQmhjbUZ0WlhSbGNrUmxZMjl5WVhSdmNqc2dhVzVrWlhnNklHNTFiV0psY2lCOVBpQjdYRzRnSUNBZ1kyOXVjM1FnYzJWbmJXVnVkSE1nUFNCd1lYUm9Mbk53YkdsMEtGd2lMMXdpS1M1bWFXeDBaWElvS0hNcElEMCtJSE11YzNSaGNuUnpWMmwwYUNoY0lqcGNJaWtwTzF4dUlDQWdJR052Ym5OMElIQmhjbUZ0Y3pvZ1FYSnlZWGs4ZXlCa1pXTnZjbUYwYjNJNklGQmhjbUZ0WlhSbGNrUmxZMjl5WVhSdmNqc2dhVzVrWlhnNklHNTFiV0psY2lCOVBpQTlJRnRkTzF4dUlDQWdJSE5sWjIxbGJuUnpMbVp2Y2tWaFkyZ29LSE5sWnl3Z2FTa2dQVDRnZTF4dUlDQWdJQ0FnWTI5dWMzUWdibUZ0WlNBOUlITmxaeTV5WlhCc1lXTmxLRndpT2x3aUxDQmNJbHdpS1R0Y2JpQWdJQ0FnSUhCaGNtRnRjeTV3ZFhOb0tIc2daR1ZqYjNKaGRHOXlPaUJRWVhKaGJTaHVZVzFsS1NCaGN5QmhibmtzSUdsdVpHVjRPaUJwSUgwcE8xeHVJQ0FnSUgwcE8xeHVJQ0FnSUdsbUlDaGNiaUFnSUNBZ0lIQmhkR2d1YzNSaGNuUnpWMmwwYUNoY0lteHBjM1JDZVM5Y0lpa2dmSHhjYmlBZ0lDQWdJSEJoZEdndWMzUmhjblJ6VjJsMGFDaGNJbkJoWjJsdVlYUmxRbmt2WENJcElIeDhYRzRnSUNBZ0lDQndZWFJvTG5OMFlYSjBjMWRwZEdnb1hDSm1hVzVrTDF3aUtTQjhmRnh1SUNBZ0lDQWdjR0YwYUM1emRHRnlkSE5YYVhSb0tGd2ljR0ZuWlM5Y0lpbGNiaUFnSUNBcElIdGNiaUFnSUNBZ0lIQmhjbUZ0Y3k1d2RYTm9LSHNnWkdWamIzSmhkRzl5T2lCRVpXTmhabEYxWlhKNUtDa2dZWE1nWVc1NUxDQnBibVJsZURvZ2MyVm5iV1Z1ZEhNdWJHVnVaM1JvSUgwcE8xeHVJQ0FnSUgxY2JpQWdJQ0J5WlhSMWNtNGdjR0Z5WVcxek8xeHVJQ0I5WEc1Y2JpQWdjSEpwZG1GMFpTQnpkR0YwYVdNZ1kyOXRjR3hsZUZGMVpYSjVVR0Z5WVcxektGeHVJQ0FnSUhCaGRHZzZJSE4wY21sdVoxeHVJQ0FwT2lCQmNuSmhlVHg3SUdSbFkyOXlZWFJ2Y2pvZ1VHRnlZVzFsZEdWeVJHVmpiM0poZEc5eU95QnBibVJsZURvZ2JuVnRZbVZ5SUgwK0lIdGNiaUFnSUNCamIyNXpkQ0J6WldkdFpXNTBjeUE5SUhCaGRHZ3VjM0JzYVhRb1hDSXZYQ0lwTG1acGJIUmxjaWdvY3lrZ1BUNGdjeTV6ZEdGeWRITlhhWFJvS0Z3aU9sd2lLU2s3WEc0Z0lDQWdZMjl1YzNRZ2NHRnlZVzF6T2lCQmNuSmhlVHg3SUdSbFkyOXlZWFJ2Y2pvZ1VHRnlZVzFsZEdWeVJHVmpiM0poZEc5eU95QnBibVJsZURvZ2JuVnRZbVZ5SUgwK0lEMGdXMTA3WEc0Z0lDQWdjMlZuYldWdWRITXVabTl5UldGamFDZ29jMlZuTENCcEtTQTlQaUI3WEc0Z0lDQWdJQ0JqYjI1emRDQnVZVzFsSUQwZ2MyVm5MbkpsY0d4aFkyVW9YQ0k2WENJc0lGd2lYQ0lwTzF4dUlDQWdJQ0FnY0dGeVlXMXpMbkIxYzJnb2V5QmtaV052Y21GMGIzSTZJRkJoY21GdEtHNWhiV1VwSUdGeklHRnVlU3dnYVc1a1pYZzZJR2tnZlNrN1hHNGdJQ0FnZlNrN1hHNGdJQ0FnYVdZZ0tIQmhkR2d1YzNSaGNuUnpWMmwwYUNoY0luRjFaWEo1TDF3aUtTa2dlMXh1SUNBZ0lDQWdjR0Z5WVcxekxuQjFjMmdvZXlCa1pXTnZjbUYwYjNJNklFUmxZMkZtVVhWbGNua29LU0JoY3lCaGJua3NJR2x1WkdWNE9pQnpaV2R0Wlc1MGN5NXNaVzVuZEdnZ2ZTazdYRzRnSUNBZ2ZWeHVJQ0FnSUhKbGRIVnliaUJ3WVhKaGJYTTdYRzRnSUgxY2JseHVJQ0J3Y21sMllYUmxJSE4wWVhScFl5QmpjbVZoZEdWRGIyMXdiR1Y0VVhWbGNubElZVzVrYkdWeUtHMWxkR2h2WkU1aGJXVTZJSE4wY21sdVp5a2dlMXh1SUNBZ0lISmxkSFZ5YmlCaGMzbHVZeUJtZFc1amRHbHZiaUJqYjIxd2JHVjRVWFZsY25rb1hHNGdJQ0FnSUNCMGFHbHpPaUJoYm5rc1hHNGdJQ0FnSUNBdUxpNWhjbWR6T2lCaGJubGJYVnh1SUNBZ0lDazZJRkJ5YjIxcGMyVThZVzU1UGlCN1hHNGdJQ0FnSUNCamIyNXpkQ0JzYjJjNklHRnVlU0E5SUhSb2FYTXViRzluUHk1bWIzSS9MaWhqYjIxd2JHVjRVWFZsY25rcE8xeHVJQ0FnSUNBZ2RISjVJSHRjYmlBZ0lDQWdJQ0FnYVdZZ0tHeHZaeWtnYkc5bkxtUmxZblZuS0dCSmJuWnZhMmx1WnlCamRYTjBiMjBnY1hWbGNua2dYQ0lrZTIxbGRHaHZaRTVoYldWOVhDSmdLVHRjYmlBZ0lDQWdJQ0FnWTI5dWMzUWdleUJqZEhnZ2ZTQTlJQ2hoZDJGcGRDQjBhR2x6TG14dlowTjBlQ2hiWFN3Z2JXVjBhRzlrVG1GdFpTd2dkSEoxWlNrcExtWnZjaWhjYmlBZ0lDQWdJQ0FnSUNCamIyMXdiR1Y0VVhWbGNubGNiaUFnSUNBZ0lDQWdLVHRjYmlBZ0lDQWdJQ0FnWTI5dWMzUWdjR1Z5YzJsemRHVnVZMlVnUFNCMGFHbHpMbkJsY25OcGMzUmxibU5sS0dOMGVDazdYRzRnSUNBZ0lDQWdJR052Ym5OMElITndjbVZoWkVGeVozTWdQU0JHY205dFRXOWtaV3hEYjI1MGNtOXNiR1Z5TG01dmNtMWhiR2w2WlZGMVpYSjVRWEpuY3loaGNtZHpLVHRjYmlBZ0lDQWdJQ0FnYVdZZ0tGeHVJQ0FnSUNBZ0lDQWdJSEJsY25OcGMzUmxibU5sUHk1eVpYQnZJQ1ltWEc0Z0lDQWdJQ0FnSUNBZ2RIbHdaVzltSUhCbGNuTnBjM1JsYm1ObExuSmxjRzliYldWMGFHOWtUbUZ0WlYwZ1BUMDlJRndpWm5WdVkzUnBiMjVjSWx4dUlDQWdJQ0FnSUNBcElIdGNiaUFnSUNBZ0lDQWdJQ0J5WlhSMWNtNGdjR1Z5YzJsemRHVnVZMlV1Y21Wd2IxdHRaWFJvYjJST1lXMWxYU2d1TGk1emNISmxZV1JCY21kektUdGNiaUFnSUNBZ0lDQWdmVnh1SUNBZ0lDQWdJQ0JwWmlBb2RIbHdaVzltSUhCbGNuTnBjM1JsYm1ObFcyMWxkR2h2WkU1aGJXVmRJRDA5UFNCY0ltWjFibU4wYVc5dVhDSXBJSHRjYmlBZ0lDQWdJQ0FnSUNCeVpYUjFjbTRnY0dWeWMybHpkR1Z1WTJWYmJXVjBhRzlrVG1GdFpWMG9MaTR1YzNCeVpXRmtRWEpuY3lrN1hHNGdJQ0FnSUNBZ0lIMWNiaUFnSUNBZ0lDQWdhV1lnS0hCbGNuTnBjM1JsYm1ObFB5NXhkV1Z5ZVNBbUppQjBlWEJsYjJZZ2NHVnljMmx6ZEdWdVkyVXVjWFZsY25rZ1BUMDlJRndpWm5WdVkzUnBiMjVjSWlrZ2UxeHVJQ0FnSUNBZ0lDQWdJSEpsZEhWeWJpQndaWEp6YVhOMFpXNWpaUzV4ZFdWeWVTaHRaWFJvYjJST1lXMWxMQ0F1TGk1emNISmxZV1JCY21kektUdGNiaUFnSUNBZ0lDQWdmVnh1SUNBZ0lDQWdJQ0JwWmlBb2RIbHdaVzltSUhCbGNuTnBjM1JsYm1ObExuTjBZWFJsYldWdWRDQTlQVDBnWENKbWRXNWpkR2x2Ymx3aUtTQjdYRzRnSUNBZ0lDQWdJQ0FnY21WMGRYSnVJSEJsY25OcGMzUmxibU5sTG5OMFlYUmxiV1Z1ZENodFpYUm9iMlJPWVcxbExDQXVMaTV6Y0hKbFlXUkJjbWR6TENCamRIZ3BPMXh1SUNBZ0lDQWdJQ0I5WEc0Z0lDQWdJQ0FnSUhSb2NtOTNJRzVsZHlCSmJuUmxjbTVoYkVWeWNtOXlLRnh1SUNBZ0lDQWdJQ0FnSUdCUVpYSnphWE4wWlc1alpTQnRaWFJvYjJRZ1hDSWtlMjFsZEdodlpFNWhiV1Y5WENJZ2JtOTBJR1p2ZFc1a0lHOXVJQ1I3Y0dWeWMybHpkR1Z1WTJVL0xtTnZibk4wY25WamRHOXlQeTV1WVcxbGZXQmNiaUFnSUNBZ0lDQWdLVHRjYmlBZ0lDQWdJSDBnWTJGMFkyZ2dLR1U2SUdGdWVTa2dlMXh1SUNBZ0lDQWdJQ0JwWmlBb2JHOW5LU0JzYjJjdVpYSnliM0lvWUVOMWMzUnZiU0J4ZFdWeWVTQmNJaVI3YldWMGFHOWtUbUZ0WlgxY0lpQm1ZV2xzWldSZ0xDQmxLVHRjYmlBZ0lDQWdJQ0FnZEdoeWIzY2dSbkp2YlUxdlpHVnNRMjl1ZEhKdmJHeGxjaTUwYjBSbFkyRm1SWEp5YjNJb1hHNGdJQ0FnSUNBZ0lDQWdaU3hjYmlBZ0lDQWdJQ0FnSUNCZ1EzVnpkRzl0SUhGMVpYSjVJRndpSkh0dFpYUm9iMlJPWVcxbGZWd2lJR1poYVd4bFpHQmNiaUFnSUNBZ0lDQWdLVHRjYmlBZ0lDQWdJSDFjYmlBZ0lDQjlPMXh1SUNCOVhHNWNiaUFnY0hKcGRtRjBaU0J6ZEdGMGFXTWdaWGgwY21GamRGRjFaWEo1UVhKbmN5aGhjbWR6T2lCaGJubGJYU2s2SUdGdWVWdGRJSHRjYmlBZ0lDQnBaaUFvWVhKbmN5NXNaVzVuZEdnZ1BUMDlJREFwSUhKbGRIVnliaUJoY21kek8xeHVJQ0FnSUdOdmJuTjBJR3hoYzNRZ1BTQmhjbWR6VzJGeVozTXViR1Z1WjNSb0lDMGdNVjA3WEc0Z0lDQWdhV1lnS0d4aGMzUWdKaVlnZEhsd1pXOW1JR3hoYzNRZ1BUMDlJRndpYjJKcVpXTjBYQ0lnSmlZZ0lVRnljbUY1TG1selFYSnlZWGtvYkdGemRDa3BJSHRjYmlBZ0lDQWdJR052Ym5OMElIRjFaWEo1VDJKcUlEMGdZWEpuY3k1d2IzQW9LVHRjYmlBZ0lDQWdJR052Ym5OMElHaGhjMFJwY21WamRHbHZiaUE5SUhGMVpYSjVUMkpxTG1ScGNtVmpkR2x2YmlBaFBUMGdkVzVrWldacGJtVmtPMXh1SUNBZ0lDQWdZMjl1YzNRZ2FHRnpUR2x0YVhRZ1BTQnhkV1Z5ZVU5aWFpNXNhVzFwZENBaFBUMGdkVzVrWldacGJtVmtPMXh1SUNBZ0lDQWdZMjl1YzNRZ2FHRnpUMlptYzJWMElEMGdjWFZsY25sUFltb3ViMlptYzJWMElDRTlQU0IxYm1SbFptbHVaV1E3WEc0Z0lDQWdJQ0JwWmlBb0lXaGhjMFJwY21WamRHbHZiaUFtSmlBaGFHRnpUR2x0YVhRZ0ppWWdJV2hoYzA5bVpuTmxkQ2tnY21WMGRYSnVJR0Z5WjNNN1hHNGdJQ0FnSUNCamIyNXpkQ0JsZUhSeVlYTTZJR0Z1ZVZ0ZElEMGdXMTA3WEc0Z0lDQWdJQ0JwWmlBb2FHRnpSR2x5WldOMGFXOXVLU0JsZUhSeVlYTXVjSFZ6YUNoeGRXVnllVTlpYWk1a2FYSmxZM1JwYjI0cE8xeHVJQ0FnSUNBZ1pXeHpaU0JwWmlBb2FHRnpUR2x0YVhRZ2ZId2dhR0Z6VDJabWMyVjBLU0JsZUhSeVlYTXVjSFZ6YUNoMWJtUmxabWx1WldRcE8xeHVJQ0FnSUNBZ2FXWWdLR2hoYzB4cGJXbDBLU0JsZUhSeVlYTXVjSFZ6YUNoeGRXVnllVTlpYWk1c2FXMXBkQ2s3WEc0Z0lDQWdJQ0JwWmlBb2FHRnpUMlptYzJWMEtTQmxlSFJ5WVhNdWNIVnphQ2h4ZFdWeWVVOWlhaTV2Wm1aelpYUXBPMXh1SUNBZ0lDQWdjbVYwZFhKdUlGc3VMaTVoY21kekxDQXVMaTVsZUhSeVlYTmRPMXh1SUNBZ0lIMWNiaUFnSUNCeVpYUjFjbTRnWVhKbmN6dGNiaUFnZlZ4dVhHNGdJSEJ5YVhaaGRHVWdjM1JoZEdsaklHNXZjbTFoYkdsNlpWRjFaWEo1UVhKbmN5aGhjbWR6T2lCaGJubGJYU2s2SUdGdWVWdGRJSHRjYmlBZ0lDQmpiMjV6ZENCdWIzSnRZV3hwZW1Wa0lEMGdSbkp2YlUxdlpHVnNRMjl1ZEhKdmJHeGxjaTVsZUhSeVlXTjBVWFZsY25sQmNtZHpLR0Z5WjNNcE8xeHVJQ0FnSUdsbUlDaHViM0p0WVd4cGVtVmtMbXhsYm1kMGFDQTlQVDBnTUNrZ2NtVjBkWEp1SUc1dmNtMWhiR2w2WldRN1hHNWNiaUFnSUNCamIyNXpkQ0JzWVhOMElEMGdibTl5YldGc2FYcGxaRnR1YjNKdFlXeHBlbVZrTG14bGJtZDBhQ0F0SURGZE8xeHVJQ0FnSUdsbUlDZ2hiR0Z6ZENCOGZDQjBlWEJsYjJZZ2JHRnpkQ0FoUFQwZ1hDSnZZbXBsWTNSY0lpQjhmQ0JCY25KaGVTNXBjMEZ5Y21GNUtHeGhjM1FwS1NCN1hHNGdJQ0FnSUNCeVpYUjFjbTRnYm05eWJXRnNhWHBsWkR0Y2JpQWdJQ0I5WEc1Y2JpQWdJQ0JqYjI1emRDQnhkV1Z5ZVU5aWFpQTlJR3hoYzNRZ1lYTWdVbVZqYjNKa1BITjBjbWx1Wnl3Z1lXNTVQanRjYmlBZ0lDQmpiMjV6ZENCb1lYTlJkV1Z5ZVVacFpXeGtjeUE5WEc0Z0lDQWdJQ0J4ZFdWeWVVOWlhaTVrYVhKbFkzUnBiMjRnSVQwOUlIVnVaR1ZtYVc1bFpDQjhmRnh1SUNBZ0lDQWdjWFZsY25sUFltb3ViR2x0YVhRZ0lUMDlJSFZ1WkdWbWFXNWxaQ0I4ZkZ4dUlDQWdJQ0FnY1hWbGNubFBZbW91YjJabWMyVjBJQ0U5UFNCMWJtUmxabWx1WldRZ2ZIeGNiaUFnSUNBZ0lIRjFaWEo1VDJKcUxtSnZiMnR0WVhKcklDRTlQU0IxYm1SbFptbHVaV1E3WEc1Y2JpQWdJQ0JwWmlBb0lXaGhjMUYxWlhKNVJtbGxiR1J6S1NCN1hHNGdJQ0FnSUNCdWIzSnRZV3hwZW1Wa0xuQnZjQ2dwTzF4dUlDQWdJQ0FnY21WMGRYSnVJRzV2Y20xaGJHbDZaV1E3WEc0Z0lDQWdmVnh1WEc0Z0lDQWdibTl5YldGc2FYcGxaQzV3YjNBb0tUdGNiaUFnSUNCcFppQW9jWFZsY25sUFltb3VaR2x5WldOMGFXOXVJQ0U5UFNCMWJtUmxabWx1WldRcElHNXZjbTFoYkdsNlpXUXVjSFZ6YUNoeGRXVnllVTlpYWk1a2FYSmxZM1JwYjI0cE8xeHVJQ0FnSUdsbUlDaHhkV1Z5ZVU5aWFpNXNhVzFwZENBaFBUMGdkVzVrWldacGJtVmtLU0J1YjNKdFlXeHBlbVZrTG5CMWMyZ29jWFZsY25sUFltb3ViR2x0YVhRcE8xeHVJQ0FnSUdsbUlDaHhkV1Z5ZVU5aWFpNXZabVp6WlhRZ0lUMDlJSFZ1WkdWbWFXNWxaQ2tnYm05eWJXRnNhWHBsWkM1d2RYTm9LSEYxWlhKNVQySnFMbTltWm5ObGRDazdYRzRnSUNBZ2FXWWdLSEYxWlhKNVQySnFMbUp2YjJ0dFlYSnJJQ0U5UFNCMWJtUmxabWx1WldRcElHNXZjbTFoYkdsNlpXUXVjSFZ6YUNoeGRXVnllVTlpYWk1aWIyOXJiV0Z5YXlrN1hHNGdJQ0FnY21WMGRYSnVJRzV2Y20xaGJHbDZaV1E3WEc0Z0lIMWNibHh1SUNCd2NtbDJZWFJsSUhOMFlYUnBZeUJqY21WaGRHVkRjbVZoZEdWRVpXTnZjbUYwYjNKektGeHVJQ0FnSUUxdlpHVnNRMjl1YzNSeU9pQk5iMlJsYkVOdmJuTjBjblZqZEc5eVBHRnVlVDRzWEc0Z0lDQWdiVzlrWld4RGJHRjZlazVoYldVNklITjBjbWx1WjF4dUlDQXBPaUJCY25KaGVUd29kR0Z5WjJWME9pQmhibmtzSUd0bGVUb2djM1J5YVc1bkxDQmtaWE5qT2lCaGJua3BJRDArSUhadmFXUStJSHRjYmlBZ0lDQnlaWFIxY200Z1cxeHVJQ0FnSUNBZ1FYQnBUM0JsY21GMGFXOXVSbkp2YlUxdlpHVnNLRTF2WkdWc1EyOXVjM1J5TENCY0lsQlBVMVJjSWlrc1hHNGdJQ0FnSUNCQmNHbFBjR1Z5WVhScGIyNG9leUJ6ZFcxdFlYSjVPaUJnUTNKbFlYUmxJR0VnYm1WM0lDUjdiVzlrWld4RGJHRjZlazVoYldWOUxtQWdmU2tzWEc0Z0lDQWdJQ0JCY0dsQ2IyUjVLSHRjYmlBZ0lDQWdJQ0FnWkdWelkzSnBjSFJwYjI0NklHQlFZWGxzYjJGa0lHWnZjaUFrZTIxdlpHVnNRMnhoZW5wT1lXMWxmV0FzWEc0Z0lDQWdJQ0FnSUhSNWNHVTZJRVIwYjBadmNpaFBjR1Z5WVhScGIyNUxaWGx6TGtOU1JVRlVSU3dnVFc5a1pXeERiMjV6ZEhJcExGeHVJQ0FnSUNBZ2ZTa3NYRzRnSUNBZ0lDQkJjR2xEY21WaGRHVmtVbVZ6Y0c5dWMyVW9lMXh1SUNBZ0lDQWdJQ0JrWlhOamNtbHdkR2x2YmpvZ1lDUjdiVzlrWld4RGJHRjZlazVoYldWOUlHTnlaV0YwWldRZ2MzVmpZMlZ6YzJaMWJHeDVMbUFzWEc0Z0lDQWdJQ0FnSUhOamFHVnRZVG9nZXlBa2NtVm1PaUJuWlhSVFkyaGxiV0ZRWVhSb0tFMXZaR1ZzUTI5dWMzUnlLU0I5TEZ4dUlDQWdJQ0FnZlNrc1hHNGdJQ0FnSUNCQmNHbENZV1JTWlhGMVpYTjBVbVZ6Y0c5dWMyVW9leUJrWlhOamNtbHdkR2x2YmpvZ1hDSlFZWGxzYjJGa0lIWmhiR2xrWVhScGIyNGdabUZwYkdWa0xsd2lJSDBwTEZ4dUlDQWdJQ0FnUVhCcFZXNXdjbTlqWlhOellXSnNaVVZ1ZEdsMGVWSmxjM0J2Ym5ObEtIdGNiaUFnSUNBZ0lDQWdaR1Z6WTNKcGNIUnBiMjQ2SUZ3aVVtVndiM05wZEc5eWVTQnlaV3BsWTNSbFpDQjBhR1VnY0hKdmRtbGtaV1FnY0dGNWJHOWhaQzVjSWl4Y2JpQWdJQ0FnSUgwcExGeHVJQ0FnSUYwN1hHNGdJSDFjYmx4dUlDQndjbWwyWVhSbElITjBZWFJwWXlCaWRXeHJRM0psWVhSbFJHVmpiM0poZEc5eWN5aGNiaUFnSUNCTmIyUmxiRU52Ym5OMGNqb2dUVzlrWld4RGIyNXpkSEoxWTNSdmNqeGhibmsrTEZ4dUlDQWdJRzF2WkdWc1EyeGhlbnBPWVcxbE9pQnpkSEpwYm1kY2JpQWdLVG9nUVhKeVlYazhLSFJoY21kbGREb2dZVzU1TENCclpYazZJSE4wY21sdVp5d2daR1Z6WXpvZ1lXNTVLU0E5UGlCMmIybGtQaUI3WEc0Z0lDQWdjbVYwZFhKdUlGdGNiaUFnSUNBZ0lFRndhVTl3WlhKaGRHbHZia1p5YjIxTmIyUmxiQ2hOYjJSbGJFTnZibk4wY2l3Z1hDSlFUMU5VWENJc0lGd2lZblZzYTF3aUtTeGNiaUFnSUNBZ0lFRndhVTl3WlhKaGRHbHZiaWg3SUhOMWJXMWhjbms2SUdCRGNtVmhkR1VnWVNCdVpYY2dKSHR0YjJSbGJFTnNZWHA2VG1GdFpYMHVZQ0I5S1N4Y2JpQWdJQ0FnSUVGd2FVSnZaSGtvZTF4dUlDQWdJQ0FnSUNCa1pYTmpjbWx3ZEdsdmJqb2dZRkJoZVd4dllXUWdabTl5SUNSN2JXOWtaV3hEYkdGNmVrNWhiV1Y5WUN4Y2JpQWdJQ0FnSUNBZ2MyTm9aVzFoT2lCN1hHNGdJQ0FnSUNBZ0lDQWdkSGx3WlRvZ1hDSmhjbkpoZVZ3aUxGeHVJQ0FnSUNBZ0lDQWdJR2wwWlcxek9pQjdJQ1J5WldZNklHZGxkRk5qYUdWdFlWQmhkR2dvVFc5a1pXeERiMjV6ZEhJcElIMHNYRzRnSUNBZ0lDQWdJSDBzWEc0Z0lDQWdJQ0I5S1N4Y2JpQWdJQ0FnSUVGd2FVTnlaV0YwWldSU1pYTndiMjV6WlNoN1hHNGdJQ0FnSUNBZ0lHUmxjMk55YVhCMGFXOXVPaUJnSkh0dGIyUmxiRU5zWVhwNlRtRnRaWDBnWTNKbFlYUmxaQ0J6ZFdOalpYTnpablZzYkhrdVlDeGNiaUFnSUNBZ0lDQWdjMk5vWlcxaE9pQjdYRzRnSUNBZ0lDQWdJQ0FnZEhsd1pUb2dYQ0poY25KaGVWd2lMRnh1SUNBZ0lDQWdJQ0FnSUdsMFpXMXpPaUI3SUNSeVpXWTZJR2RsZEZOamFHVnRZVkJoZEdnb1RXOWtaV3hEYjI1emRISXBJSDBzWEc0Z0lDQWdJQ0FnSUgwc1hHNGdJQ0FnSUNCOUtTeGNiaUFnSUNBZ0lFRndhVUpoWkZKbGNYVmxjM1JTWlhOd2IyNXpaU2g3SUdSbGMyTnlhWEIwYVc5dU9pQmNJbEJoZVd4dllXUWdkbUZzYVdSaGRHbHZiaUJtWVdsc1pXUXVYQ0lnZlNrc1hHNGdJQ0FnSUNCQmNHbFZibkJ5YjJObGMzTmhZbXhsUlc1MGFYUjVVbVZ6Y0c5dWMyVW9lMXh1SUNBZ0lDQWdJQ0JrWlhOamNtbHdkR2x2YmpvZ1hDSlNaWEJ2YzJsMGIzSjVJSEpsYW1WamRHVmtJSFJvWlNCd2NtOTJhV1JsWkNCd1lYbHNiMkZrTGx3aUxGeHVJQ0FnSUNBZ2ZTa3NYRzRnSUNBZ1hUdGNiaUFnZlZ4dVhHNGdJSEJ5YVhaaGRHVWdjM1JoZEdsaklHSjFiR3RTWldGa1JHVmpiM0poZEc5eWN5aGNiaUFnSUNCTmIyUmxiRU52Ym5OMGNqb2dUVzlrWld4RGIyNXpkSEoxWTNSdmNqeGhibmsrTEZ4dUlDQWdJRzF2WkdWc1EyeGhlbnBPWVcxbE9pQnpkSEpwYm1kY2JpQWdLVG9nUVhKeVlYazhLSFJoY21kbGREb2dZVzU1TENCclpYazZJSE4wY21sdVp5d2daR1Z6WXpvZ1lXNTVLU0E5UGlCMmIybGtQaUI3WEc0Z0lDQWdjbVYwZFhKdUlGdGNiaUFnSUNBZ0lFRndhVTl3WlhKaGRHbHZia1p5YjIxTmIyUmxiQ2hOYjJSbGJFTnZibk4wY2l3Z1hDSkhSVlJjSWl3Z1hDSmlkV3hyWENJcExGeHVJQ0FnSUNBZ1FYQnBUM0JsY21GMGFXOXVLSHNnYzNWdGJXRnllVG9nWUZKbGRISnBaWFpsSUNSN2JXOWtaV3hEYkdGNmVrNWhiV1Y5SUhKbFkyOXlaSE1nWW5rZ2FXUnpMbUFnZlNrc1hHNGdJQ0FnSUNCQmNHbFJkV1Z5ZVNoN0lHNWhiV1U2SUZ3aWFXUnpYQ0lzSUhKbGNYVnBjbVZrT2lCMGNuVmxMQ0IwZVhCbE9pQmNJbUZ5Y21GNVhDSWdmU2tzWEc0Z0lDQWdJQ0JCY0dsUGExSmxjM0J2Ym5ObEtIdGNiaUFnSUNBZ0lDQWdaR1Z6WTNKcGNIUnBiMjQ2SUdBa2UyMXZaR1ZzUTJ4aGVucE9ZVzFsZlNCeVpYUnlhV1YyWldRZ2MzVmpZMlZ6YzJaMWJHeDVMbUFzWEc0Z0lDQWdJQ0FnSUhOamFHVnRZVG9nZTF4dUlDQWdJQ0FnSUNBZ0lIUjVjR1U2SUZ3aVlYSnlZWGxjSWl4Y2JpQWdJQ0FnSUNBZ0lDQnBkR1Z0Y3pvZ2V5QWtjbVZtT2lCblpYUlRZMmhsYldGUVlYUm9LRTF2WkdWc1EyOXVjM1J5S1NCOUxGeHVJQ0FnSUNBZ0lDQjlMRnh1SUNBZ0lDQWdmU2tzWEc0Z0lDQWdJQ0JCY0dsT2IzUkdiM1Z1WkZKbGMzQnZibk5sS0h0Y2JpQWdJQ0FnSUNBZ1pHVnpZM0pwY0hScGIyNDZJR0JPYnlBa2UyMXZaR1ZzUTJ4aGVucE9ZVzFsZlNCeVpXTnZjbVFnYldGMFkyaGxjeUIwYUdVZ2NISnZkbWxrWldRZ2FXUmxiblJwWm1sbGNpNWdMRnh1SUNBZ0lDQWdmU2tzWEc0Z0lDQWdYVHRjYmlBZ2ZWeHVYRzRnSUhCeWFYWmhkR1VnYzNSaGRHbGpJR0oxYkd0VmNHUmhkR1ZFWldOdmNtRjBiM0p6S0Z4dUlDQWdJRTF2WkdWc1EyOXVjM1J5T2lCTmIyUmxiRU52Ym5OMGNuVmpkRzl5UEdGdWVUNHNYRzRnSUNBZ2JXOWtaV3hEYkdGNmVrNWhiV1U2SUhOMGNtbHVaeXhjYmlBZ0lDQmhjR2xRY205d1pYSjBhV1Z6T2lCRVpXTmhaa0Z3YVZCeWIzQmxjblI1VzExY2JpQWdLVG9nUVhKeVlYazhLSFJoY21kbGREb2dZVzU1TENCclpYazZJSE4wY21sdVp5d2daR1Z6WXpvZ1lXNTVLU0E5UGlCMmIybGtQaUI3WEc0Z0lDQWdjbVYwZFhKdUlGdGNiaUFnSUNBZ0lFRndhVTl3WlhKaGRHbHZia1p5YjIxTmIyUmxiQ2hOYjJSbGJFTnZibk4wY2l3Z1hDSlFWVlJjSWl3Z1hDSmlkV3hyWENJcExGeHVJQ0FnSUNBZ1FYQnBVR0Z5WVcxelJuSnZiVTF2WkdWc0tHRndhVkJ5YjNCbGNuUnBaWE1wTEZ4dUlDQWdJQ0FnUVhCcFQzQmxjbUYwYVc5dUtIdGNiaUFnSUNBZ0lDQWdjM1Z0YldGeWVUb2dZRkpsY0d4aFkyVWdaWGhwYzNScGJtY2dKSHR0YjJSbGJFTnNZWHA2VG1GdFpYMGdjbVZqYjNKa2N5QjNhWFJvSUc1bGR5QndZWGxzYjJGa2N5NWdMRnh1SUNBZ0lDQWdmU2tzWEc0Z0lDQWdJQ0JCY0dsQ2IyUjVLSHRjYmlBZ0lDQWdJQ0FnWkdWelkzSnBjSFJwYjI0NklHQlFZWGxzYjJGa0lHWnZjaUJ5WlhCc1lXTnBibWNnWlhocGMzUnBibWNnY21WamIzSmtjeUJ2WmlBa2UyMXZaR1ZzUTJ4aGVucE9ZVzFsZldBc1hHNGdJQ0FnSUNBZ0lITmphR1Z0WVRvZ2UxeHVJQ0FnSUNBZ0lDQWdJSFI1Y0dVNklGd2lZWEp5WVhsY0lpeGNiaUFnSUNBZ0lDQWdJQ0FrY21WbU9pQm5aWFJUWTJobGJXRlFZWFJvS0VSMGIwWnZjaWhQY0dWeVlYUnBiMjVMWlhsekxsVlFSRUZVUlN3Z1RXOWtaV3hEYjI1emRISXBLU3hjYmlBZ0lDQWdJQ0FnZlN4Y2JpQWdJQ0FnSUgwcExGeHVJQ0FnSUNBZ1FYQnBUMnRTWlhOd2IyNXpaU2g3WEc0Z0lDQWdJQ0FnSUdSbGMyTnlhWEIwYVc5dU9pQmdKSHR0YjJSbGJFTnNZWHA2VG1GdFpYMGdkWEJrWVhSbFpDQnpkV05qWlhOelpuVnNiSGt1WUN4Y2JpQWdJQ0FnSUNBZ2MyTm9aVzFoT2lCN1hHNGdJQ0FnSUNBZ0lDQWdkSGx3WlRvZ1hDSmhjbkpoZVZ3aUxGeHVJQ0FnSUNBZ0lDQWdJR2wwWlcxek9pQjdJQ1J5WldZNklHZGxkRk5qYUdWdFlWQmhkR2dvVFc5a1pXeERiMjV6ZEhJcElIMHNYRzRnSUNBZ0lDQWdJSDBzWEc0Z0lDQWdJQ0I5S1N4Y2JpQWdJQ0FnSUVGd2FVNXZkRVp2ZFc1a1VtVnpjRzl1YzJVb2UxeHVJQ0FnSUNBZ0lDQmtaWE5qY21sd2RHbHZiam9nWUU1dklDUjdiVzlrWld4RGJHRjZlazVoYldWOUlISmxZMjl5WkNCdFlYUmphR1Z6SUhSb1pTQndjbTkyYVdSbFpDQnBaR1Z1ZEdsbWFXVnlMbUFzWEc0Z0lDQWdJQ0I5S1N4Y2JpQWdJQ0FnSUVGd2FVSmhaRkpsY1hWbGMzUlNaWE53YjI1elpTaDdJR1JsYzJOeWFYQjBhVzl1T2lCY0lsQmhlV3h2WVdRZ2RtRnNhV1JoZEdsdmJpQm1ZV2xzWldRdVhDSWdmU2tzWEc0Z0lDQWdYVHRjYmlBZ2ZWeHVYRzRnSUhCeWFYWmhkR1VnYzNSaGRHbGpJR0oxYkd0RVpXeGxkR1ZFWldOdmNtRjBiM0p6S0Z4dUlDQWdJRTF2WkdWc1EyOXVjM1J5T2lCTmIyUmxiRU52Ym5OMGNuVmpkRzl5UEdGdWVUNHNYRzRnSUNBZ2JXOWtaV3hEYkdGNmVrNWhiV1U2SUhOMGNtbHVaeXhjYmlBZ0lDQmhjR2xRY205d1pYSjBhV1Z6T2lCRVpXTmhaa0Z3YVZCeWIzQmxjblI1VzExY2JpQWdLVG9nUVhKeVlYazhLSFJoY21kbGREb2dZVzU1TENCclpYazZJSE4wY21sdVp5d2daR1Z6WXpvZ1lXNTVLU0E5UGlCMmIybGtQaUI3WEc0Z0lDQWdjbVYwZFhKdUlGdGNiaUFnSUNBZ0lFRndhVTl3WlhKaGRHbHZia1p5YjIxTmIyUmxiQ2hOYjJSbGJFTnZibk4wY2l3Z1hDSkVSVXhGVkVWY0lpd2dYQ0ppZFd4clhDSXBMRnh1SUNBZ0lDQWdRWEJwVUdGeVlXMXpSbkp2YlUxdlpHVnNLR0Z3YVZCeWIzQmxjblJwWlhNcExGeHVJQ0FnSUNBZ1FYQnBUM0JsY21GMGFXOXVLSHNnYzNWdGJXRnllVG9nWUVSbGJHVjBaU0FrZTIxdlpHVnNRMnhoZW5wT1lXMWxmU0J5WldOdmNtUnpJR0o1SUdsa2N5NWdJSDBwTEZ4dUlDQWdJQ0FnUVhCcFVYVmxjbmtvZXlCdVlXMWxPaUJjSW1sa2Mxd2lMQ0J5WlhGMWFYSmxaRG9nZEhKMVpTd2dkSGx3WlRvZ1hDSmhjbkpoZVZ3aUlIMHBMRnh1SUNBZ0lDQWdRWEJwVDJ0U1pYTndiMjV6WlNoN1hHNGdJQ0FnSUNBZ0lHUmxjMk55YVhCMGFXOXVPaUJnSkh0dGIyUmxiRU5zWVhwNlRtRnRaWDBnWkdWc1pYUmxaQ0J6ZFdOalpYTnpablZzYkhrdVlDeGNiaUFnSUNBZ0lDQWdjMk5vWlcxaE9pQjdYRzRnSUNBZ0lDQWdJQ0FnZEhsd1pUb2dYQ0poY25KaGVWd2lMRnh1SUNBZ0lDQWdJQ0FnSUdsMFpXMXpPaUI3SUNSeVpXWTZJR2RsZEZOamFHVnRZVkJoZEdnb1RXOWtaV3hEYjI1emRISXBJSDBzWEc0Z0lDQWdJQ0FnSUgwc1hHNGdJQ0FnSUNCOUtTeGNiaUFnSUNBZ0lFRndhVTV2ZEVadmRXNWtVbVZ6Y0c5dWMyVW9lMXh1SUNBZ0lDQWdJQ0JrWlhOamNtbHdkR2x2YmpvZ1lFNXZJQ1I3Ylc5a1pXeERiR0Y2ZWs1aGJXVjlJSEpsWTI5eVpDQnRZWFJqYUdWeklIUm9aU0J3Y205MmFXUmxaQ0JwWkdWdWRHbG1hV1Z5TG1Bc1hHNGdJQ0FnSUNCOUtTeGNiaUFnSUNCZE8xeHVJQ0I5WEc1Y2JpQWdjSEpwZG1GMFpTQnpkR0YwYVdNZ2NtVmhaRVJsWTI5eVlYUnZjbk1vWEc0Z0lDQWdUVzlrWld4RGIyNXpkSEk2SUUxdlpHVnNRMjl1YzNSeWRXTjBiM0k4WVc1NVBpeGNiaUFnSUNCdGIyUmxiRU5zWVhwNlRtRnRaVG9nYzNSeWFXNW5MRnh1SUNBZ0lHRndhVkJ5YjNCbGNuUnBaWE02SUVSbFkyRm1RWEJwVUhKdmNHVnlkSGxiWFN4Y2JpQWdJQ0J3YTFCaGRHZzZJSE4wY21sdVoxeHVJQ0FwT2lCQmNuSmhlVHdvZEdGeVoyVjBPaUJoYm5rc0lHdGxlVG9nYzNSeWFXNW5MQ0JrWlhOak9pQmhibmtwSUQwK0lIWnZhV1ErSUh0Y2JpQWdJQ0J5WlhSMWNtNGdXMXh1SUNBZ0lDQWdRWEJwVDNCbGNtRjBhVzl1Um5KdmJVMXZaR1ZzS0UxdlpHVnNRMjl1YzNSeUxDQmNJa2RGVkZ3aUxDQndhMUJoZEdncExGeHVJQ0FnSUNBZ1FYQnBVR0Z5WVcxelJuSnZiVTF2WkdWc0tHRndhVkJ5YjNCbGNuUnBaWE1wTEZ4dUlDQWdJQ0FnUVhCcFQzQmxjbUYwYVc5dUtIc2djM1Z0YldGeWVUb2dZRkpsZEhKcFpYWmxJR0VnSkh0dGIyUmxiRU5zWVhwNlRtRnRaWDBnY21WamIzSmtJR0o1SUdsa0xtQWdmU2tzWEc0Z0lDQWdJQ0JCY0dsUGExSmxjM0J2Ym5ObEtIdGNiaUFnSUNBZ0lDQWdaR1Z6WTNKcGNIUnBiMjQ2SUdBa2UyMXZaR1ZzUTJ4aGVucE9ZVzFsZlNCeVpYUnlhV1YyWldRZ2MzVmpZMlZ6YzJaMWJHeDVMbUFzWEc0Z0lDQWdJQ0FnSUhOamFHVnRZVG9nZXlBa2NtVm1PaUJuWlhSVFkyaGxiV0ZRWVhSb0tFMXZaR1ZzUTI5dWMzUnlLU0I5TEZ4dUlDQWdJQ0FnZlNrc1hHNGdJQ0FnSUNCQmNHbE9iM1JHYjNWdVpGSmxjM0J2Ym5ObEtIdGNiaUFnSUNBZ0lDQWdaR1Z6WTNKcGNIUnBiMjQ2SUdCT2J5QWtlMjF2WkdWc1EyeGhlbnBPWVcxbGZTQnlaV052Y21RZ2JXRjBZMmhsY3lCMGFHVWdjSEp2ZG1sa1pXUWdhV1JsYm5ScFptbGxjaTVnTEZ4dUlDQWdJQ0FnZlNrc1hHNGdJQ0FnWFR0Y2JpQWdmVnh1WEc0Z0lIQnlhWFpoZEdVZ2MzUmhkR2xqSUhWd1pHRjBaVVJsWTI5eVlYUnZjbk1vWEc0Z0lDQWdUVzlrWld4RGIyNXpkSEk2SUUxdlpHVnNRMjl1YzNSeWRXTjBiM0k4WVc1NVBpeGNiaUFnSUNCdGIyUmxiRU5zWVhwNlRtRnRaVG9nYzNSeWFXNW5MRnh1SUNBZ0lHRndhVkJ5YjNCbGNuUnBaWE02SUVSbFkyRm1RWEJwVUhKdmNHVnlkSGxiWFN4Y2JpQWdJQ0J3YTFCaGRHZzZJSE4wY21sdVoxeHVJQ0FwT2lCQmNuSmhlVHdvZEdGeVoyVjBPaUJoYm5rc0lHdGxlVG9nYzNSeWFXNW5MQ0JrWlhOak9pQmhibmtwSUQwK0lIWnZhV1ErSUh0Y2JpQWdJQ0J5WlhSMWNtNGdXMXh1SUNBZ0lDQWdRWEJwVDNCbGNtRjBhVzl1Um5KdmJVMXZaR1ZzS0UxdlpHVnNRMjl1YzNSeUxDQmNJbEJWVkZ3aUxDQndhMUJoZEdncExGeHVJQ0FnSUNBZ1FYQnBVR0Z5WVcxelJuSnZiVTF2WkdWc0tHRndhVkJ5YjNCbGNuUnBaWE1wTEZ4dUlDQWdJQ0FnUVhCcFQzQmxjbUYwYVc5dUtIdGNiaUFnSUNBZ0lDQWdjM1Z0YldGeWVUb2dZRkpsY0d4aFkyVWdZVzRnWlhocGMzUnBibWNnSkh0dGIyUmxiRU5zWVhwNlRtRnRaWDBnY21WamIzSmtJSGRwZEdnZ1lTQnVaWGNnY0dGNWJHOWhaQzVnTEZ4dUlDQWdJQ0FnZlNrc1hHNGdJQ0FnSUNCQmNHbENiMlI1S0h0Y2JpQWdJQ0FnSUNBZ1pHVnpZM0pwY0hScGIyNDZJR0JRWVhsc2IyRmtJR1p2Y2lCeVpYQnNZV05wYm1jZ1lXNGdaWGhwYzNScGJtY2djbVZqYjNKa0lHOW1JQ1I3Ylc5a1pXeERiR0Y2ZWs1aGJXVjlZQ3hjYmlBZ0lDQWdJQ0FnZEhsd1pUb2dSSFJ2Um05eUtFOXdaWEpoZEdsdmJrdGxlWE11VlZCRVFWUkZMQ0JOYjJSbGJFTnZibk4wY2lrc1hHNGdJQ0FnSUNCOUtTeGNiaUFnSUNBZ0lFRndhVTlyVW1WemNHOXVjMlVvZTF4dUlDQWdJQ0FnSUNCa1pYTmpjbWx3ZEdsdmJqb2dZQ1I3Ylc5a1pXeERiR0Y2ZWs1aGJXVjlJSFZ3WkdGMFpXUWdjM1ZqWTJWemMyWjFiR3g1TG1Bc1hHNGdJQ0FnSUNBZ0lITmphR1Z0WVRvZ2V5QWtjbVZtT2lCblpYUlRZMmhsYldGUVlYUm9LRTF2WkdWc1EyOXVjM1J5S1NCOUxGeHVJQ0FnSUNBZ2ZTa3NYRzRnSUNBZ0lDQkJjR2xPYjNSR2IzVnVaRkpsYzNCdmJuTmxLSHRjYmlBZ0lDQWdJQ0FnWkdWelkzSnBjSFJwYjI0NklHQk9ieUFrZTIxdlpHVnNRMnhoZW5wT1lXMWxmU0J5WldOdmNtUWdiV0YwWTJobGN5QjBhR1VnY0hKdmRtbGtaV1FnYVdSbGJuUnBabWxsY2k1Z0xGeHVJQ0FnSUNBZ2ZTa3NYRzRnSUNBZ0lDQkJjR2xDWVdSU1pYRjFaWE4wVW1WemNHOXVjMlVvZXlCa1pYTmpjbWx3ZEdsdmJqb2dYQ0pRWVhsc2IyRmtJSFpoYkdsa1lYUnBiMjRnWm1GcGJHVmtMbHdpSUgwcExGeHVJQ0FnSUYwN1hHNGdJSDFjYmx4dUlDQndjbWwyWVhSbElITjBZWFJwWXlCa1pXeGxkR1ZFWldOdmNtRjBiM0p6S0Z4dUlDQWdJRTF2WkdWc1EyOXVjM1J5T2lCTmIyUmxiRU52Ym5OMGNuVmpkRzl5UEdGdWVUNHNYRzRnSUNBZ2JXOWtaV3hEYkdGNmVrNWhiV1U2SUhOMGNtbHVaeXhjYmlBZ0lDQmhjR2xRY205d1pYSjBhV1Z6T2lCRVpXTmhaa0Z3YVZCeWIzQmxjblI1VzEwc1hHNGdJQ0FnY0d0UVlYUm9PaUJ6ZEhKcGJtZGNiaUFnS1RvZ1FYSnlZWGs4S0hSaGNtZGxkRG9nWVc1NUxDQnJaWGs2SUhOMGNtbHVaeXdnWkdWell6b2dZVzU1S1NBOVBpQjJiMmxrUGlCN1hHNGdJQ0FnY21WMGRYSnVJRnRjYmlBZ0lDQWdJRUZ3YVU5d1pYSmhkR2x2YmtaeWIyMU5iMlJsYkNoTmIyUmxiRU52Ym5OMGNpd2dYQ0pFUlV4RlZFVmNJaXdnY0d0UVlYUm9LU3hjYmlBZ0lDQWdJRUZ3YVZCaGNtRnRjMFp5YjIxTmIyUmxiQ2hoY0dsUWNtOXdaWEowYVdWektTeGNiaUFnSUNBZ0lFRndhVTl3WlhKaGRHbHZiaWg3SUhOMWJXMWhjbms2SUdCRVpXeGxkR1VnWVNBa2UyMXZaR1ZzUTJ4aGVucE9ZVzFsZlNCeVpXTnZjbVFnWW5rZ2FXUXVZQ0I5S1N4Y2JpQWdJQ0FnSUVGd2FVOXJVbVZ6Y0c5dWMyVW9lMXh1SUNBZ0lDQWdJQ0JrWlhOamNtbHdkR2x2YmpvZ1lDUjdiVzlrWld4RGJHRjZlazVoYldWOUlHUmxiR1YwWldRZ2MzVmpZMlZ6YzJaMWJHeDVMbUFzWEc0Z0lDQWdJQ0FnSUhOamFHVnRZVG9nZXlBa2NtVm1PaUJuWlhSVFkyaGxiV0ZRWVhSb0tFMXZaR1ZzUTI5dWMzUnlLU0I5TEZ4dUlDQWdJQ0FnZlNrc1hHNGdJQ0FnSUNCQmNHbE9iM1JHYjNWdVpGSmxjM0J2Ym5ObEtIdGNiaUFnSUNBZ0lDQWdaR1Z6WTNKcGNIUnBiMjQ2SUdCT2J5QWtlMjF2WkdWc1EyeGhlbnBPWVcxbGZTQnlaV052Y21RZ2JXRjBZMmhsY3lCMGFHVWdjSEp2ZG1sa1pXUWdhV1JsYm5ScFptbGxjaTVnTEZ4dUlDQWdJQ0FnZlNrc1hHNGdJQ0FnWFR0Y2JpQWdmVnh1WEc0Z0lIQnlhWFpoZEdVZ2MzUmhkR2xqSUhOMFlYUmxiV1Z1ZEVSbFkyOXlZWFJ2Y25Nb1hHNGdJQ0FnVFc5a1pXeERiMjV6ZEhJNklFMXZaR1ZzUTI5dWMzUnlkV04wYjNJOFlXNTVQaXhjYmlBZ0lDQnRiMlJsYkVOc1lYcDZUbUZ0WlRvZ2MzUnlhVzVuWEc0Z0lDazZJRUZ5Y21GNVBDaDBZWEpuWlhRNklHRnVlU3dnYTJWNU9pQnpkSEpwYm1jc0lHUmxjMk02SUdGdWVTa2dQVDRnZG05cFpENGdlMXh1SUNBZ0lISmxkSFZ5YmlCYlhHNGdJQ0FnSUNCQmNHbFBjR1Z5WVhScGIyNUdjbTl0VFc5a1pXd29UVzlrWld4RGIyNXpkSElzSUZ3aVIwVlVYQ0lzSUZ3aWMzUmhkR1Z0Wlc1MEx6cHRaWFJvYjJRdkttRnlaM05jSWlrc1hHNGdJQ0FnSUNCQmNHbFBjR1Z5WVhScGIyNG9lMXh1SUNBZ0lDQWdJQ0J6ZFcxdFlYSjVPaUJnUlhobFkzVjBaWE1nWVNCd2NtVndZWEpsWkNCemRHRjBaVzFsYm5RZ2IyNGdKSHR0YjJSbGJFTnNZWHA2VG1GdFpYMHVZQ3hjYmlBZ0lDQWdJSDBwTEZ4dUlDQWdJQ0FnUVhCcFVHRnlZVzBvZTF4dUlDQWdJQ0FnSUNCdVlXMWxPaUJjSW0xbGRHaHZaRndpTEZ4dUlDQWdJQ0FnSUNCa1pYTmpjbWx3ZEdsdmJqb2dYQ0owYUdVZ2NISmxjR0Z5WldRZ2MzUmhkR1Z0Wlc1MElIUnZJR1Y0WldOMWRHVmNJaXhjYmlBZ0lDQWdJSDBwTEZ4dUlDQWdJQ0FnUVhCcFVHRnlZVzBvZTF4dUlDQWdJQ0FnSUNCdVlXMWxPaUJjSW1GeVozTmNJaXhjYmlBZ0lDQWdJQ0FnWkdWelkzSnBjSFJwYjI0NlhHNGdJQ0FnSUNBZ0lDQWdYQ0pqYjI1allYUmxibUYwWldRZ2JHbHpkQ0J2WmlCaGNtZDFiV1Z1ZEhNZ2RHaGxJSEJ5WlhCaGNtVmtJSE4wWVhSbGJXVnVkQ0JqWVc0Z1lXTmpaWEIwWENJc1hHNGdJQ0FnSUNCOUtTeGNiaUFnSUNBZ0lFRndhVkYxWlhKNUtIdGNiaUFnSUNBZ0lDQWdibUZ0WlRvZ1hDSmthWEpsWTNScGIyNWNJaXhjYmlBZ0lDQWdJQ0FnY21WeGRXbHlaV1E2SUhSeWRXVXNYRzRnSUNBZ0lDQWdJR1Z1ZFcwNklFOXlaR1Z5UkdseVpXTjBhVzl1TEZ4dUlDQWdJQ0FnSUNCa1pYTmpjbWx3ZEdsdmJqb2dYQ0owYUdVZ2MyOXlkQ0J2Y21SbGNpQjNhR1Z1SUdGd2NHeHBZMkZpYkdWY0lpeGNiaUFnSUNBZ0lIMHBMRnh1SUNBZ0lDQWdRWEJwVVhWbGNua29lMXh1SUNBZ0lDQWdJQ0J1WVcxbE9pQmNJbXhwYldsMFhDSXNYRzRnSUNBZ0lDQWdJSEpsY1hWcGNtVmtPaUIwY25WbExGeHVJQ0FnSUNBZ0lDQmtaWE5qY21sd2RHbHZiam9nWENKc2FXMXBkQ0J2Y2lCd1lXZGxJSE5wZW1VZ2QyaGxiaUJoY0hCc2FXTmhZbXhsWENJc1hHNGdJQ0FnSUNCOUtTeGNiaUFnSUNBZ0lFRndhVkYxWlhKNUtIdGNiaUFnSUNBZ0lDQWdibUZ0WlRvZ1hDSnZabVp6WlhSY0lpeGNiaUFnSUNBZ0lDQWdjbVZ4ZFdseVpXUTZJSFJ5ZFdVc1hHNGdJQ0FnSUNBZ0lHUmxjMk55YVhCMGFXOXVPaUJjSW05bVpuTmxkQ0J2Y2lCaWIyOXJiV0Z5YXlCM2FHVnVJR0Z3Y0d4cFkyRmliR1ZjSWl4Y2JpQWdJQ0FnSUgwcExGeHVJQ0FnSUNBZ1FYQnBUMnRTWlhOd2IyNXpaU2g3SUdSbGMyTnlhWEIwYVc5dU9pQmdKSHR0YjJSbGJFTnNZWHA2VG1GdFpYMGdiR2x6ZEdWa0lHWnZkVzVrTG1BZ2ZTa3NYRzRnSUNBZ0lDQkJjR2xPYjNSR2IzVnVaRkpsYzNCdmJuTmxLSHRjYmlBZ0lDQWdJQ0FnWkdWelkzSnBjSFJwYjI0NklHQk9ieUFrZTIxdlpHVnNRMnhoZW5wT1lXMWxmU0J5WldOdmNtUWdiV0YwWTJobGN5QjBhR1VnY0hKdmRtbGtaV1FnYVdSbGJuUnBabWxsY2k1Z0xGeHVJQ0FnSUNBZ2ZTa3NYRzRnSUNBZ1hUdGNiaUFnZlZ4dVhHNGdJSEJ5YVhaaGRHVWdjM1JoZEdsaklITjBZWFJsYldWdWRGTm9iM0owWTNWMFJHVmpiM0poZEc5eWN5aGNiaUFnSUNCTmIyUmxiRU52Ym5OMGNqb2dUVzlrWld4RGIyNXpkSEoxWTNSdmNqeGhibmsrTEZ4dUlDQWdJRzF2WkdWc1EyeGhlbnBPWVcxbE9pQnpkSEpwYm1jc1hHNGdJQ0FnY0dGMGFEb2djM1J5YVc1bkxGeHVJQ0FnSUhOMFlYUmxiV1Z1ZEV0bGVUb2djM1J5YVc1blhHNGdJQ2s2SUVGeWNtRjVQQ2gwWVhKblpYUTZJR0Z1ZVN3Z2EyVjVPaUJ6ZEhKcGJtY3NJR1JsYzJNNklHRnVlU2tnUFQ0Z2RtOXBaRDRnZTF4dUlDQWdJR052Ym5OMElHSmhjMlU2SUVGeWNtRjVQQ2gwWVhKblpYUTZJR0Z1ZVN3Z2EyVjVPaUJ6ZEhKcGJtY3NJR1JsYzJNNklHRnVlU2tnUFQ0Z2RtOXBaRDRnUFNCYlhHNGdJQ0FnSUNCQmNHbFBjR1Z5WVhScGIyNUdjbTl0VFc5a1pXd29UVzlrWld4RGIyNXpkSElzSUZ3aVIwVlVYQ0lzSUhCaGRHZ3BMRnh1SUNBZ0lDQWdRWEJwVDNCbGNtRjBhVzl1S0hzZ2MzVnRiV0Z5ZVRvZ1lGSmxkSEpwWlhabElDUjdiVzlrWld4RGJHRjZlazVoYldWOUlISmxZMjl5WkhNdVlDQjlLU3hjYmlBZ0lDQWdJRUZ3YVU5clVtVnpjRzl1YzJVb2UxeHVJQ0FnSUNBZ0lDQmtaWE5qY21sd2RHbHZiam9nWUNSN2JXOWtaV3hEYkdGNmVrNWhiV1Y5SUhKbGRISnBaWFpsWkNCemRXTmpaWE56Wm5Wc2JIa3VZQ3hjYmlBZ0lDQWdJSDBwTEZ4dUlDQWdJRjA3WEc1Y2JpQWdJQ0JqYjI1emRDQnpaV2R0Wlc1MGN5QTlJSEJoZEdndWMzQnNhWFFvWENJdlhDSXBMbVpwYkhSbGNpZ29jeWtnUFQ0Z2N5NXpkR0Z5ZEhOWGFYUm9LRndpT2x3aUtTazdYRzRnSUNBZ2MyVm5iV1Z1ZEhNdVptOXlSV0ZqYUNnb2MyVm5LU0E5UGlCN1hHNGdJQ0FnSUNCamIyNXpkQ0J1WVcxbElEMGdjMlZuTG5KbGNHeGhZMlVvWENJNlhDSXNJRndpWENJcE8xeHVJQ0FnSUNBZ1ltRnpaUzV3ZFhOb0tFRndhVkJoY21GdEtIc2dibUZ0WlN3Z1pHVnpZM0pwY0hScGIyNDZJR0JVYUdVZ0pIdHVZVzFsZlNCd1lYSmhiV1YwWlhKZ0lIMHBLVHRjYmlBZ0lDQjlLVHRjYmx4dUlDQWdJR2xtSUNoY2JpQWdJQ0FnSUhCaGRHZ3VjM1JoY25SelYybDBhQ2hjSW14cGMzUkNlUzljSWlrZ2ZIeGNiaUFnSUNBZ0lIQmhkR2d1YzNSaGNuUnpWMmwwYUNoY0luQmhaMmx1WVhSbFFua3ZYQ0lwSUh4OFhHNGdJQ0FnSUNCd1lYUm9Mbk4wWVhKMGMxZHBkR2dvWENKbWFXNWtMMXdpS1NCOGZGeHVJQ0FnSUNBZ2NHRjBhQzV6ZEdGeWRITlhhWFJvS0Z3aWNHRm5aUzljSWlsY2JpQWdJQ0FwSUh0Y2JpQWdJQ0FnSUdKaGMyVXVjSFZ6YUNoY2JpQWdJQ0FnSUNBZ1FYQnBVWFZsY25rb2UxeHVJQ0FnSUNBZ0lDQWdJRzVoYldVNklGd2laR2x5WldOMGFXOXVYQ0lzWEc0Z0lDQWdJQ0FnSUNBZ2NtVnhkV2x5WldRNklIUnlkV1VzWEc0Z0lDQWdJQ0FnSUNBZ1pXNTFiVG9nVDNKa1pYSkVhWEpsWTNScGIyNHNYRzRnSUNBZ0lDQWdJQ0FnWkdWelkzSnBjSFJwYjI0NklGd2lkR2hsSUhOdmNuUWdiM0prWlhKY0lpeGNiaUFnSUNBZ0lDQWdmU2xjYmlBZ0lDQWdJQ2s3WEc0Z0lDQWdmVnh1SUNBZ0lHbG1JQ2h3WVhSb0xuTjBZWEowYzFkcGRHZ29YQ0p3WVdkcGJtRjBaVUo1TDF3aUtTQjhmQ0J3WVhSb0xuTjBZWEowYzFkcGRHZ29YQ0p3WVdkbEwxd2lLU2tnZTF4dUlDQWdJQ0FnWW1GelpTNXdkWE5vS0Z4dUlDQWdJQ0FnSUNCQmNHbFJkV1Z5ZVNoN0lHNWhiV1U2SUZ3aWJHbHRhWFJjSWl3Z2NtVnhkV2x5WldRNklHWmhiSE5sTENCa1pYTmpjbWx3ZEdsdmJqb2dYQ0p3WVdkbElITnBlbVZjSWlCOUtTeGNiaUFnSUNBZ0lDQWdRWEJwVVhWbGNua29lMXh1SUNBZ0lDQWdJQ0FnSUc1aGJXVTZJRndpYjJabWMyVjBYQ0lzWEc0Z0lDQWdJQ0FnSUNBZ2NtVnhkV2x5WldRNklHWmhiSE5sTEZ4dUlDQWdJQ0FnSUNBZ0lHUmxjMk55YVhCMGFXOXVPaUJjSW5CaFoyVWdiblZ0WW1WeVhDSXNYRzRnSUNBZ0lDQWdJSDBwTEZ4dUlDQWdJQ0FnSUNCQmNHbFJkV1Z5ZVNoN1hHNGdJQ0FnSUNBZ0lDQWdibUZ0WlRvZ1hDSmliMjlyYldGeWExd2lMRnh1SUNBZ0lDQWdJQ0FnSUhKbGNYVnBjbVZrT2lCbVlXeHpaU3hjYmlBZ0lDQWdJQ0FnSUNCa1pYTmpjbWx3ZEdsdmJqb2dYQ0ppYjI5cmJXRnlheUJtYjNJZ1kzVnljMjl5SUhCaFoybHVZWFJwYjI1Y0lpeGNiaUFnSUNBZ0lDQWdmU2xjYmlBZ0lDQWdJQ2s3WEc0Z0lDQWdmVnh1WEc0Z0lDQWdhV1lnS0hCaGRHZ3VjM1JoY25SelYybDBhQ2hjSW1acGJtUlBibVZDZVM5Y0lpa2dmSHdnY0dGMGFDNXpkR0Z5ZEhOWGFYUm9LRndpWm1sdVpFSjVMMXdpS1NrZ2UxeHVJQ0FnSUNBZ1ltRnpaUzV3ZFhOb0tGeHVJQ0FnSUNBZ0lDQkJjR2xPYjNSR2IzVnVaRkpsYzNCdmJuTmxLSHRjYmlBZ0lDQWdJQ0FnSUNCa1pYTmpjbWx3ZEdsdmJqb2dZRTV2SUNSN2JXOWtaV3hEYkdGNmVrNWhiV1Y5SUhKbFkyOXlaQ0J0WVhSamFHVnpJSFJvWlNCd2NtOTJhV1JsWkNCcFpHVnVkR2xtYVdWeUxtQXNYRzRnSUNBZ0lDQWdJSDBwWEc0Z0lDQWdJQ0FwTzF4dUlDQWdJSDFjYmx4dUlDQWdJR2xtSUNoY2JpQWdJQ0FnSUhOMFlYUmxiV1Z1ZEV0bGVTQTlQVDBnVUhKbGNHRnlaV1JUZEdGMFpXMWxiblJMWlhsekxrTlBWVTVVWDA5R0lIeDhYRzRnSUNBZ0lDQnpkR0YwWlcxbGJuUkxaWGtnUFQwOUlGQnlaWEJoY21Wa1UzUmhkR1Z0Wlc1MFMyVjVjeTVCVmtkZlQwWWdmSHhjYmlBZ0lDQWdJSE4wWVhSbGJXVnVkRXRsZVNBOVBUMGdVSEpsY0dGeVpXUlRkR0YwWlcxbGJuUkxaWGx6TGxOVlRWOVBSbHh1SUNBZ0lDa2dlMXh1SUNBZ0lDQWdZbUZ6WlM1d2RYTm9LRnh1SUNBZ0lDQWdJQ0JCY0dsUGExSmxjM0J2Ym5ObEtIdGNiaUFnSUNBZ0lDQWdJQ0JrWlhOamNtbHdkR2x2YmpvZ1lGSmxjM1ZzZENCbWIzSWdKSHR0YjJSbGJFTnNZWHA2VG1GdFpYMHVZQ3hjYmlBZ0lDQWdJQ0FnSUNCMGVYQmxPaUJPZFcxaVpYSXNYRzRnSUNBZ0lDQWdJSDBwWEc0Z0lDQWdJQ0FwTzF4dUlDQWdJSDFjYmlBZ0lDQnBaaUFvYzNSaGRHVnRaVzUwUzJWNUlEMDlQU0JRY21Wd1lYSmxaRk4wWVhSbGJXVnVkRXRsZVhNdVJFbFRWRWxPUTFSZlQwWXBJSHRjYmlBZ0lDQWdJR0poYzJVdWNIVnphQ2hjYmlBZ0lDQWdJQ0FnUVhCcFQydFNaWE53YjI1elpTaDdYRzRnSUNBZ0lDQWdJQ0FnWkdWelkzSnBjSFJwYjI0NklHQkVhWE4wYVc1amRDQjJZV3gxWlhNZ1ptOXlJQ1I3Ylc5a1pXeERiR0Y2ZWs1aGJXVjlMbUFzWEc0Z0lDQWdJQ0FnSUNBZ2RIbHdaVG9nVzFOMGNtbHVaMTBzWEc0Z0lDQWdJQ0FnSUgwcFhHNGdJQ0FnSUNBcE8xeHVJQ0FnSUgxY2JseHVJQ0FnSUhKbGRIVnliaUJpWVhObE8xeHVJQ0I5WEc1Y2JpQWdjSEpwZG1GMFpTQnpkR0YwYVdNZ1oyVjBVWFZsY25sRVpXTnZjbUYwYjNKektGeHVJQ0FnSUcxbGRHaHZaRTVoYldVNklITjBjbWx1Wnl4Y2JpQWdJQ0J5YjNWMFpWQmhkR2c2SUhOMGNtbHVaeXhjYmlBZ0lDQm9kSFJ3Vm1WeVlqb2djM1J5YVc1bkxGeHVJQ0FnSUdsdVkyeDFaR1ZSZFdWeWVWQmhjbUZ0Y3pvZ1ltOXZiR1ZoYmlBOUlHWmhiSE5sWEc0Z0lDazZJRUZ5Y21GNVBDaDBZWEpuWlhRNklHRnVlU3dnYTJWNU9pQnpkSEpwYm1jc0lHUmxjMk02SUdGdWVTa2dQVDRnZG05cFpENGdlMXh1SUNBZ0lHTnZibk4wSUdWNGRISmhZM1JRWVhSb1VHRnlZVzF6SUQwZ0tIQTZJSE4wY21sdVp5azZJSE4wY21sdVoxdGRJRDArWEc0Z0lDQWdJQ0J3WEc0Z0lDQWdJQ0FnSUM1emNHeHBkQ2hjSWk5Y0lpbGNiaUFnSUNBZ0lDQWdMbVpwYkhSbGNpZ29jeWtnUFQ0Z2N5NXpkR0Z5ZEhOWGFYUm9LRndpT2x3aUtTbGNiaUFnSUNBZ0lDQWdMbTFoY0Nnb2N5a2dQVDRnY3k1emJHbGpaU2d4S1NrN1hHNWNiaUFnSUNCamIyNXpkQ0JoY0dsUVlYUm9VR0Z5WVcxeklEMGdaWGgwY21GamRGQmhkR2hRWVhKaGJYTW9jbTkxZEdWUVlYUm9LUzV0WVhBb0tHNWhiV1VwSUQwK0lDaDdYRzRnSUNBZ0lDQnVZVzFsTEZ4dUlDQWdJQ0FnWkdWelkzSnBjSFJwYjI0NklHQWtlMjVoYldWOUlIQmhjbUZ0WlhSbGNpQm1iM0lnZEdobElIRjFaWEo1WUN4Y2JpQWdJQ0FnSUhKbGNYVnBjbVZrT2lCMGNuVmxMRnh1SUNBZ0lDQWdkSGx3WlRvZ1UzUnlhVzVuTEZ4dUlDQWdJSDBwS1R0Y2JseHVJQ0FnSUdOdmJuTjBJR1JsWTI5eVlYUnZjbk02SUVGeWNtRjVQQ2gwWVhKblpYUTZJR0Z1ZVN3Z2EyVjVPaUJ6ZEhKcGJtY3NJR1JsYzJNNklHRnVlU2tnUFQ0Z2RtOXBaRDRnUFNCYlhHNGdJQ0FnSUNBdUxpNWhjR2xRWVhSb1VHRnlZVzF6TG0xaGNDZ29jQ2tnUFQ0Z1FYQnBVR0Z5WVcwb2NDa3BMRnh1SUNBZ0lDQWdRWEJwVDNCbGNtRjBhVzl1S0hzZ2MzVnRiV0Z5ZVRvZ1lGSmxkSEpwWlhabElISmxZMjl5WkhNZ2RYTnBibWNnWENJa2UyMWxkR2h2WkU1aGJXVjlYQ0l1WUNCOUtTeGNiaUFnSUNBZ0lFRndhVTlyVW1WemNHOXVjMlVvZXlCa1pYTmpjbWx3ZEdsdmJqb2dYQ0pTWlhOMWJIUWdjM1ZqWTJWemMyWjFiR3g1SUhKbGRISnBaWFpsWkM1Y0lpQjlLU3hjYmlBZ0lDQWdJRUZ3YVU1dlEyOXVkR1Z1ZEZKbGMzQnZibk5sS0h0Y2JpQWdJQ0FnSUNBZ1pHVnpZM0pwY0hScGIyNDZJRndpVG04Z1kyOXVkR1Z1ZENCeVpYUjFjbTVsWkNCaWVTQjBhR1VnYldWMGFHOWtMbHdpTEZ4dUlDQWdJQ0FnZlNrc1hHNGdJQ0FnWFR0Y2JseHVJQ0FnSUdsbUlDaG9kSFJ3Vm1WeVlpQTlQVDBnWENKSFJWUmNJaUFtSmlCcGJtTnNkV1JsVVhWbGNubFFZWEpoYlhNcElIdGNiaUFnSUNBZ0lHUmxZMjl5WVhSdmNuTXVjSFZ6YUNoY2JpQWdJQ0FnSUNBZ1FYQnBVWFZsY25rb2UxeHVJQ0FnSUNBZ0lDQWdJRzVoYldVNklGd2laR2x5WldOMGFXOXVYQ0lzWEc0Z0lDQWdJQ0FnSUNBZ2NtVnhkV2x5WldRNklHWmhiSE5sTEZ4dUlDQWdJQ0FnSUNBZ0lHVnVkVzA2SUU5eVpHVnlSR2x5WldOMGFXOXVMRnh1SUNBZ0lDQWdJQ0FnSUdSbGMyTnlhWEIwYVc5dU9pQmNJblJvWlNCemIzSjBJRzl5WkdWeUlIZG9aVzRnWVhCd2JHbGpZV0pzWlZ3aUxGeHVJQ0FnSUNBZ0lDQjlLU3hjYmlBZ0lDQWdJQ0FnUVhCcFVYVmxjbmtvZTF4dUlDQWdJQ0FnSUNBZ0lHNWhiV1U2SUZ3aWJHbHRhWFJjSWl4Y2JpQWdJQ0FnSUNBZ0lDQnlaWEYxYVhKbFpEb2dabUZzYzJVc1hHNGdJQ0FnSUNBZ0lDQWdaR1Z6WTNKcGNIUnBiMjQ2SUZ3aWJHbHRhWFFnYjNJZ2NHRm5aU0J6YVhwbFhDSXNYRzRnSUNBZ0lDQWdJSDBwTEZ4dUlDQWdJQ0FnSUNCQmNHbFJkV1Z5ZVNoN1hHNGdJQ0FnSUNBZ0lDQWdibUZ0WlRvZ1hDSnZabVp6WlhSY0lpeGNiaUFnSUNBZ0lDQWdJQ0J5WlhGMWFYSmxaRG9nWm1Gc2MyVXNYRzRnSUNBZ0lDQWdJQ0FnWkdWelkzSnBjSFJwYjI0NklGd2liMlptYzJWMElHOXlJR0p2YjJ0dFlYSnJYQ0lzWEc0Z0lDQWdJQ0FnSUgwcFhHNGdJQ0FnSUNBcE8xeHVJQ0FnSUgxY2JseHVJQ0FnSUhKbGRIVnliaUJrWldOdmNtRjBiM0p6TzF4dUlDQjlYRzU5WEc0aVhYMD0iXX0=
|
|
805
|
+
//# sourceMappingURL=FromModelController.js.map
|
|
806
|
+
//# sourceMappingURL=FromModelController.cjs.map
|