@decaf-ts/integrations 0.14.0 → 0.14.3
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 +11 -1
- package/dist/integrations.cjs +3317 -2
- package/dist/integrations.js +3665 -2
- package/lib/cjs/blob/azure/AzureBlobEnvironment.cjs +2 -2
- package/lib/cjs/blob/azure/AzureBlobStoreService.cjs +2 -2
- package/lib/cjs/blob/azure/index.cjs +2 -2
- package/lib/cjs/blob/core/BlobEnvironment.cjs +2 -2
- package/lib/cjs/blob/core/BlobErrors.cjs +2 -2
- package/lib/cjs/blob/core/BlobKey.cjs +2 -2
- package/lib/cjs/blob/core/BlobStoreFactory.cjs +2 -2
- package/lib/cjs/blob/core/BlobStoreService.cjs +2 -2
- package/lib/cjs/blob/core/BlobTypes.cjs +2 -2
- package/lib/cjs/blob/core/BlobValue.cjs +2 -2
- package/lib/cjs/blob/core/index.cjs +2 -2
- package/lib/cjs/blob/gcp/GcsBlobEnvironment.cjs +2 -2
- package/lib/cjs/blob/gcp/GcsBlobStoreService.cjs +2 -2
- package/lib/cjs/blob/gcp/index.cjs +2 -2
- package/lib/cjs/blob/index.cjs +2 -2
- package/lib/cjs/blob/local/LocalBlobEnvironment.cjs +2 -2
- package/lib/cjs/blob/local/LocalBlobStoreService.cjs +2 -2
- package/lib/cjs/blob/local/index.cjs +2 -2
- package/lib/cjs/blob/memory/MemoryBlobEnvironment.cjs +2 -2
- package/lib/cjs/blob/memory/MemoryBlobStoreService.cjs +2 -2
- package/lib/cjs/blob/memory/index.cjs +2 -2
- package/lib/cjs/blob/s3/MinioBlobEnvironment.cjs +2 -2
- package/lib/cjs/blob/s3/MinioBlobStoreService.cjs +2 -2
- package/lib/cjs/blob/s3/R2BlobEnvironment.cjs +2 -2
- package/lib/cjs/blob/s3/R2BlobStoreService.cjs +2 -2
- package/lib/cjs/blob/s3/S3BlobEnvironment.cjs +2 -2
- package/lib/cjs/blob/s3/S3BlobStoreService.cjs +2 -2
- package/lib/cjs/blob/s3/S3CompatibleBlobStoreService.cjs +2 -2
- package/lib/cjs/blob/s3/index.cjs +2 -2
- package/lib/cjs/calendar/CalendarService.cjs +2 -2
- package/lib/cjs/calendar/environment.cjs +2 -2
- package/lib/cjs/calendar/google-calendar/GoogleCalendarService.cjs +2 -2
- package/lib/cjs/calendar/google-calendar/index.cjs +2 -2
- package/lib/cjs/calendar/index.cjs +2 -2
- package/lib/cjs/calendar/types.cjs +2 -2
- package/lib/cjs/calendar/validators/cron.cjs +2 -2
- package/lib/cjs/calendar/writers/CalendarFsWriter.cjs +2 -2
- package/lib/cjs/calendar/writers/CalenderDownloader.cjs +2 -2
- package/lib/cjs/calendar/writers/ICalendarWriter.cjs +2 -2
- package/lib/cjs/comms/discord/DiscordService.cjs +2 -2
- package/lib/cjs/comms/discord/index.cjs +2 -2
- package/lib/cjs/comms/email/EmailService.cjs +2 -2
- package/lib/cjs/comms/email/index.cjs +2 -2
- package/lib/cjs/comms/email/mime.cjs +2 -2
- package/lib/cjs/comms/email/smtp.cjs +2 -2
- package/lib/cjs/comms/environment.cjs +2 -2
- package/lib/cjs/comms/gmail/GmailService.cjs +2 -2
- package/lib/cjs/comms/gmail/index.cjs +2 -2
- package/lib/cjs/comms/index.cjs +2 -2
- package/lib/cjs/comms/outlook/MicrosoftOutlookService.cjs +2 -2
- package/lib/cjs/comms/outlook/index.cjs +2 -2
- package/lib/cjs/comms/slack/SlackService.cjs +2 -2
- package/lib/cjs/comms/slack/index.cjs +2 -2
- package/lib/cjs/comms/teams/TeamsService.cjs +2 -2
- package/lib/cjs/comms/teams/index.cjs +2 -2
- package/lib/cjs/comms/telegram/TelegramService.cjs +2 -2
- package/lib/cjs/comms/telegram/index.cjs +2 -2
- package/lib/cjs/comms/whatsapp/WhatsAppService.cjs +2 -2
- package/lib/cjs/comms/whatsapp/index.cjs +2 -2
- package/lib/cjs/devops/environment.cjs +2 -2
- package/lib/cjs/devops/github/GithubService.cjs +2 -2
- package/lib/cjs/devops/github/index.cjs +2 -2
- package/lib/cjs/devops/gitlab/GitlabService.cjs +2 -2
- package/lib/cjs/devops/gitlab/index.cjs +2 -2
- package/lib/cjs/devops/index.cjs +2 -2
- package/lib/cjs/docker/DockerComposeService.cjs +2 -2
- package/lib/cjs/docker/index.cjs +2 -2
- package/lib/cjs/feature-flags/EngineCapabilityFeatureFlag.service.cjs +2 -2
- package/lib/cjs/feature-flags/constants.cjs +2 -2
- package/lib/cjs/feature-flags/decorators.cjs +2 -2
- package/lib/cjs/feature-flags/environment.cjs +2 -2
- package/lib/cjs/feature-flags/index.cjs +2 -2
- package/lib/cjs/feature-flags/models/FeatureFlag.model.cjs +2 -2
- package/lib/cjs/feature-flags/models/FeatureFlagAccess.model.cjs +2 -2
- package/lib/cjs/feature-flags/readers/FeatureFlagReader.cjs +2 -2
- package/lib/cjs/feature-flags/readers/index.cjs +2 -2
- package/lib/cjs/feature-flags/services/FeatureFlag.service.cjs +2 -2
- package/lib/cjs/feature-flags/types.cjs +2 -2
- package/lib/cjs/feature-flags/utils.cjs +2 -2
- package/lib/cjs/index.cjs +5 -5
- package/lib/cjs/io/airtable/AirtableService.cjs +2 -2
- package/lib/cjs/io/airtable/index.cjs +2 -2
- package/lib/cjs/io/confluence/ConfluenceService.cjs +2 -2
- package/lib/cjs/io/confluence/index.cjs +2 -2
- package/lib/cjs/io/environment.cjs +2 -2
- package/lib/cjs/io/google-docs/GoogleDocsService.cjs +2 -2
- package/lib/cjs/io/google-docs/index.cjs +2 -2
- package/lib/cjs/io/google-sheets/GoogleSheetsService.cjs +2 -2
- package/lib/cjs/io/google-sheets/index.cjs +2 -2
- package/lib/cjs/io/graphql/GraphqlService.cjs +2 -2
- package/lib/cjs/io/graphql/index.cjs +2 -2
- package/lib/cjs/io/index.cjs +2 -2
- package/lib/cjs/io/jira/JiraService.cjs +2 -2
- package/lib/cjs/io/jira/index.cjs +2 -2
- package/lib/cjs/io/microsoft-excel/MicrosoftExcelService.cjs +2 -2
- package/lib/cjs/io/microsoft-excel/index.cjs +2 -2
- package/lib/cjs/io/microsoft-sharepoint/MicrosoftSharePointService.cjs +2 -2
- package/lib/cjs/io/microsoft-sharepoint/index.cjs +2 -2
- package/lib/cjs/io/spreadsheet/SpreadsheetService.cjs +2 -2
- package/lib/cjs/io/spreadsheet/index.cjs +2 -2
- package/lib/cjs/keycloak/broker.cjs +2 -2
- package/lib/cjs/keycloak/index.cjs +2 -2
- package/lib/cjs/keycloak/services/KeycloakAuthService.cjs +2 -2
- package/lib/cjs/keycloak/services/KeycloakClientService.cjs +2 -2
- package/lib/cjs/keycloak/services/KeycloakIdentityProviderService.cjs +2 -2
- package/lib/cjs/keycloak/services/KeycloakRealmService.cjs +2 -2
- package/lib/cjs/keycloak/services/KeycloakRoleService.cjs +2 -2
- package/lib/cjs/keycloak/services/KeycloakService.cjs +2 -2
- package/lib/cjs/keycloak/services/KeycloakUserService.cjs +2 -2
- package/lib/cjs/keycloak/services/index.cjs +2 -2
- package/lib/cjs/keycloak/services/runtime.cjs +2 -2
- package/lib/cjs/keycloak/types.cjs +2 -2
- package/lib/cjs/kibana/builders/KibanaIndexBuilder.cjs +2 -2
- package/lib/cjs/kibana/builders/KibanaIndexBuilderCollection.cjs +2 -2
- package/lib/cjs/kibana/builders/index.cjs +2 -2
- package/lib/cjs/kibana/helpers.cjs +2 -2
- package/lib/cjs/kibana/index.cjs +2 -2
- package/lib/cjs/kibana/services/KibanaAuthService.cjs +2 -2
- package/lib/cjs/kibana/services/KibanaDashboardService.cjs +2 -2
- package/lib/cjs/kibana/services/KibanaDataViewService.cjs +2 -2
- package/lib/cjs/kibana/services/KibanaRoleService.cjs +2 -2
- package/lib/cjs/kibana/services/KibanaService.cjs +2 -2
- package/lib/cjs/kibana/services/KibanaSpaceService.cjs +2 -2
- package/lib/cjs/kibana/services/KibanaUserService.cjs +2 -2
- package/lib/cjs/kibana/services/index.cjs +2 -2
- package/lib/cjs/kibana/services/runtime.cjs +2 -2
- package/lib/cjs/kibana/types.cjs +2 -2
- package/lib/cjs/loader/ObjectLoader.cjs +2 -2
- package/lib/cjs/loader/assets.cjs +2 -2
- package/lib/cjs/loader/config.cjs +2 -2
- package/lib/cjs/loader/families.cjs +2 -2
- package/lib/cjs/loader/index.cjs +2 -2
- package/lib/cjs/loader/nest.cjs +2 -2
- package/lib/cjs/loader/types.cjs +2 -2
- package/lib/cjs/namespaces/index.cjs +2 -2
- package/lib/cjs/namespaces/models/authorization-model.cjs +2 -2
- package/lib/cjs/namespaces/models/credential.model.cjs +2 -2
- package/lib/cjs/namespaces/models/effective-permission.model.cjs +2 -2
- package/lib/cjs/namespaces/models/group-membership.model.cjs +2 -2
- package/lib/cjs/namespaces/models/group.model.cjs +2 -2
- package/lib/cjs/namespaces/models/index.cjs +2 -2
- package/lib/cjs/namespaces/models/inheritance-block.model.cjs +2 -2
- package/lib/cjs/namespaces/models/org-unit-closure.model.cjs +2 -2
- package/lib/cjs/namespaces/models/org-unit-membership.model.cjs +2 -2
- package/lib/cjs/namespaces/models/org-unit-profile.model.cjs +2 -2
- package/lib/cjs/namespaces/models/org-unit.model.cjs +2 -2
- package/lib/cjs/namespaces/models/permission.model.cjs +2 -2
- package/lib/cjs/namespaces/models/principal.model.cjs +2 -2
- package/lib/cjs/namespaces/models/protected-resource.model.cjs +2 -2
- package/lib/cjs/namespaces/models/resource-grant.model.cjs +2 -2
- package/lib/cjs/namespaces/models/role-assignment.model.cjs +2 -2
- package/lib/cjs/namespaces/models/role-permission.model.cjs +2 -2
- package/lib/cjs/namespaces/models/role.model.cjs +2 -2
- package/lib/cjs/namespaces/models/storage-binding.model.cjs +2 -2
- package/lib/cjs/namespaces/models/tenant-membership.model.cjs +2 -2
- package/lib/cjs/namespaces/models/tenant-profile.model.cjs +2 -2
- package/lib/cjs/namespaces/models/tenant.model.cjs +2 -2
- package/lib/cjs/namespaces/models/user.model.cjs +2 -2
- package/lib/cjs/namespaces/org-based-authorization-system.cjs +2 -2
- package/lib/cjs/namespaces/org-based-authorization-system.models.cjs +2 -2
- package/lib/cjs/namespaces/org-based-authorization-system.services.cjs +2 -2
- package/lib/cjs/namespaces/rls/index.cjs +2 -2
- package/lib/cjs/namespaces/rls/principal-resolver.cjs +2 -2
- package/lib/cjs/namespaces/rls/rls-bootstrap.service.cjs +2 -2
- package/lib/cjs/namespaces/rls/rls.constants.cjs +2 -2
- package/lib/cjs/namespaces/rls/rls.template.cjs +2 -2
- package/lib/cjs/namespaces/rls/rls.types.cjs +2 -2
- package/lib/cjs/namespaces/rls/session-binding.cjs +2 -2
- package/lib/cjs/namespaces/services/authz.service.cjs +2 -2
- package/lib/cjs/namespaces/services/bootstrap.service.cjs +2 -2
- package/lib/cjs/namespaces/services/credential.service.cjs +2 -2
- package/lib/cjs/namespaces/services/effective-permission.service.cjs +2 -2
- package/lib/cjs/namespaces/services/group-membership.service.cjs +2 -2
- package/lib/cjs/namespaces/services/group.service.cjs +2 -2
- package/lib/cjs/namespaces/services/index.cjs +2 -2
- package/lib/cjs/namespaces/services/inheritance-block.service.cjs +2 -2
- package/lib/cjs/namespaces/services/org-unit-closure.service.cjs +2 -2
- package/lib/cjs/namespaces/services/org-unit-membership.service.cjs +2 -2
- package/lib/cjs/namespaces/services/org-unit-profile.service.cjs +2 -2
- package/lib/cjs/namespaces/services/org-unit.service.cjs +2 -2
- package/lib/cjs/namespaces/services/permission.service.cjs +2 -2
- package/lib/cjs/namespaces/services/principal.service.cjs +2 -2
- package/lib/cjs/namespaces/services/protected-resource.service.cjs +2 -2
- package/lib/cjs/namespaces/services/resource-grant.service.cjs +2 -2
- package/lib/cjs/namespaces/services/resource-lifecycle.service.cjs +2 -2
- package/lib/cjs/namespaces/services/role-assignment.service.cjs +2 -2
- package/lib/cjs/namespaces/services/role-permission.service.cjs +2 -2
- package/lib/cjs/namespaces/services/role.service.cjs +2 -2
- package/lib/cjs/namespaces/services/storage-binding.service.cjs +2 -2
- package/lib/cjs/namespaces/services/system-management.service.cjs +2 -2
- package/lib/cjs/namespaces/services/tenant-membership.service.cjs +2 -2
- package/lib/cjs/namespaces/services/tenant-profile.service.cjs +2 -2
- package/lib/cjs/namespaces/services/tenant.service.cjs +2 -2
- package/lib/cjs/namespaces/services/user.service.cjs +2 -2
- package/lib/cjs/namespaces/types.cjs +2 -2
- package/lib/cjs/namespaces/utils.cjs +2 -2
- package/lib/cjs/nest/decorators.cjs +2 -2
- package/lib/cjs/nest/index.cjs +2 -2
- package/lib/cjs/nest/keycloakAuthHandler.cjs +2 -2
- package/lib/cjs/nest/keycloakModule.cjs +2 -2
- package/lib/cjs/nest/logging.cjs +2 -2
- package/lib/cjs/nest/types.cjs +2 -2
- package/lib/cjs/nest/utils.cjs +2 -2
- package/lib/cjs/plugins/contract.cjs +2 -2
- package/lib/cjs/plugins/index.cjs +2 -2
- package/lib/cjs/plugins/kibana/host.cjs +2 -2
- package/lib/cjs/plugins/kibana/index.cjs +2 -2
- package/lib/cjs/plugins/kibana/installer.cjs +2 -2
- package/lib/cjs/plugins/kibana/manifest.cjs +2 -2
- package/lib/cjs/plugins/kibana/templates.cjs +2 -2
- package/lib/cjs/plugins/kibana/types.cjs +2 -2
- package/lib/cjs/plugins/superset/host.cjs +2 -2
- package/lib/cjs/plugins/superset/index.cjs +2 -2
- package/lib/cjs/plugins/superset/installer.cjs +2 -2
- package/lib/cjs/plugins/superset/manifest.cjs +2 -2
- package/lib/cjs/plugins/superset/templates.cjs +2 -2
- package/lib/cjs/plugins/superset/types.cjs +2 -2
- package/lib/cjs/redis/RedisContextLock.cjs +2 -2
- package/lib/cjs/redis/RedisDispatch.cjs +2 -2
- package/lib/cjs/redis/RedisPaginator.cjs +2 -2
- package/lib/cjs/redis/RedisStatement.cjs +2 -2
- package/lib/cjs/redis/adapter.cjs +2 -2
- package/lib/cjs/redis/constants.cjs +2 -2
- package/lib/cjs/redis/handlers.cjs +2 -2
- package/lib/cjs/redis/index.cjs +2 -2
- package/lib/cjs/redis/serialization.cjs +2 -2
- package/lib/cjs/redis/types.cjs +2 -2
- package/lib/cjs/secrets/InfraCredentialBootstrap.cjs +2 -2
- package/lib/cjs/secrets/aws/AwsSecretEnvironment.cjs +2 -2
- package/lib/cjs/secrets/aws/AwsSecretService.cjs +2 -2
- package/lib/cjs/secrets/aws/AwsSecretServiceConfig.cjs +2 -2
- package/lib/cjs/secrets/aws/index.cjs +2 -2
- package/lib/cjs/secrets/azure/AzureKeyVaultSecretService.cjs +2 -2
- package/lib/cjs/secrets/azure/AzureKeyVaultSecretServiceConfig.cjs +2 -2
- package/lib/cjs/secrets/azure/AzureSecretEnvironment.cjs +2 -2
- package/lib/cjs/secrets/azure/index.cjs +2 -2
- package/lib/cjs/secrets/core/ClientBasedSecretService.cjs +2 -2
- package/lib/cjs/secrets/core/SecretEnvironment.cjs +2 -2
- package/lib/cjs/secrets/core/SecretErrors.cjs +2 -2
- package/lib/cjs/secrets/core/SecretName.cjs +2 -2
- package/lib/cjs/secrets/core/SecretReference.cjs +3 -2
- package/lib/cjs/secrets/core/SecretSerialization.cjs +2 -2
- package/lib/cjs/secrets/core/SecretService.cjs +2 -2
- package/lib/cjs/secrets/core/SecretTypes.cjs +2 -2
- package/lib/cjs/secrets/core/index.cjs +2 -2
- package/lib/cjs/secrets/fs/FsSecretEnvironment.cjs +2 -2
- package/lib/cjs/secrets/fs/FsSecretService.cjs +2 -2
- package/lib/cjs/secrets/fs/FsSecretServiceConfig.cjs +2 -2
- package/lib/cjs/secrets/fs/index.cjs +2 -2
- package/lib/cjs/secrets/gcp/GcpSecretEnvironment.cjs +2 -2
- package/lib/cjs/secrets/gcp/GcpSecretManagerService.cjs +2 -2
- package/lib/cjs/secrets/gcp/GcpSecretManagerServiceConfig.cjs +2 -2
- package/lib/cjs/secrets/gcp/index.cjs +2 -2
- package/lib/cjs/secrets/index.cjs +2 -2
- package/lib/cjs/secrets/kubernetes/KubernetesSecretEnvironment.cjs +34 -0
- package/lib/cjs/secrets/kubernetes/KubernetesSecretService.cjs +479 -0
- package/lib/cjs/secrets/kubernetes/KubernetesSecretServiceConfig.cjs +4 -0
- package/lib/cjs/secrets/kubernetes/index.cjs +27 -0
- package/lib/cjs/secrets/model/ModelSecretCrypto.cjs +2 -2
- package/lib/cjs/secrets/model/ModelSecretEnvironment.cjs +2 -2
- package/lib/cjs/secrets/model/ModelSecretService.cjs +2 -2
- package/lib/cjs/secrets/model/ModelSecretServiceConfig.cjs +2 -2
- package/lib/cjs/secrets/model/Secret.cjs +2 -2
- package/lib/cjs/secrets/model/index.cjs +2 -2
- package/lib/cjs/secrets/onepassword/OnePasswordSecretEnvironment.cjs +2 -2
- package/lib/cjs/secrets/onepassword/OnePasswordSecretService.cjs +2 -2
- package/lib/cjs/secrets/onepassword/OnePasswordSecretServiceConfig.cjs +2 -2
- package/lib/cjs/secrets/onepassword/index.cjs +2 -2
- package/lib/cjs/secrets/vault/VaultSecretEnvironment.cjs +2 -2
- package/lib/cjs/secrets/vault/VaultSecretService.cjs +2 -2
- package/lib/cjs/secrets/vault/VaultSecretServiceConfig.cjs +2 -2
- package/lib/cjs/secrets/vault/index.cjs +2 -2
- package/lib/cjs/sftp/aws/AwsSftpEnvironment.cjs +2 -2
- package/lib/cjs/sftp/aws/AwsSftpService.cjs +2 -2
- package/lib/cjs/sftp/aws/index.cjs +24 -0
- package/lib/cjs/sftp/core/SftpEnvironment.cjs +2 -2
- package/lib/cjs/sftp/core/SftpSource.cjs +2 -2
- package/lib/cjs/sftp/core/index.cjs +2 -2
- package/lib/cjs/sftp/index.cjs +2 -2
- package/lib/cjs/sftp/ssh2/Ssh2SftpEnvironment.cjs +2 -2
- package/lib/cjs/sftp/ssh2/Ssh2SftpService.cjs +2 -2
- package/lib/cjs/sftp/ssh2/index.cjs +24 -0
- package/lib/cjs/shared/environmentValue.cjs +2 -2
- package/lib/cjs/shared/http/HttpApiService.cjs +2 -2
- package/lib/cjs/shared/http/hermeticBoot.cjs +2 -2
- package/lib/cjs/shared/http/index.cjs +2 -2
- package/lib/cjs/shared/runtime.cjs +2 -2
- package/lib/cjs/user-requests/index.cjs +2 -2
- package/lib/cjs/utils.cjs +2 -2
- package/lib/esm/blob/azure/AzureBlobEnvironment.js +1 -1
- package/lib/esm/blob/azure/AzureBlobStoreService.js +1 -1
- package/lib/esm/blob/azure/index.js +1 -1
- package/lib/esm/blob/core/BlobEnvironment.js +1 -1
- package/lib/esm/blob/core/BlobErrors.js +1 -1
- package/lib/esm/blob/core/BlobKey.js +1 -1
- package/lib/esm/blob/core/BlobStoreFactory.js +1 -1
- package/lib/esm/blob/core/BlobStoreService.js +1 -1
- package/lib/esm/blob/core/BlobTypes.js +1 -1
- package/lib/esm/blob/core/BlobValue.js +1 -1
- package/lib/esm/blob/core/index.js +1 -1
- package/lib/esm/blob/gcp/GcsBlobEnvironment.js +1 -1
- package/lib/esm/blob/gcp/GcsBlobStoreService.js +1 -1
- package/lib/esm/blob/gcp/index.js +1 -1
- package/lib/esm/blob/index.js +1 -1
- package/lib/esm/blob/local/LocalBlobEnvironment.js +1 -1
- package/lib/esm/blob/local/LocalBlobStoreService.js +1 -1
- package/lib/esm/blob/local/index.js +1 -1
- package/lib/esm/blob/memory/MemoryBlobEnvironment.js +1 -1
- package/lib/esm/blob/memory/MemoryBlobStoreService.js +1 -1
- package/lib/esm/blob/memory/index.js +1 -1
- package/lib/esm/blob/s3/MinioBlobEnvironment.js +1 -1
- package/lib/esm/blob/s3/MinioBlobStoreService.js +1 -1
- package/lib/esm/blob/s3/R2BlobEnvironment.js +1 -1
- package/lib/esm/blob/s3/R2BlobStoreService.js +1 -1
- package/lib/esm/blob/s3/S3BlobEnvironment.js +1 -1
- package/lib/esm/blob/s3/S3BlobStoreService.js +1 -1
- package/lib/esm/blob/s3/S3CompatibleBlobStoreService.js +1 -1
- package/lib/esm/blob/s3/index.js +1 -1
- package/lib/esm/calendar/CalendarService.js +1 -1
- package/lib/esm/calendar/environment.js +1 -1
- package/lib/esm/calendar/google-calendar/GoogleCalendarService.js +1 -1
- package/lib/esm/calendar/google-calendar/index.js +1 -1
- package/lib/esm/calendar/index.js +1 -1
- package/lib/esm/calendar/types.js +1 -1
- package/lib/esm/calendar/validators/cron.js +1 -1
- package/lib/esm/calendar/writers/CalendarFsWriter.js +1 -1
- package/lib/esm/calendar/writers/CalenderDownloader.js +1 -1
- package/lib/esm/calendar/writers/ICalendarWriter.js +1 -1
- package/lib/esm/comms/discord/DiscordService.js +1 -1
- package/lib/esm/comms/discord/index.js +1 -1
- package/lib/esm/comms/email/EmailService.js +1 -1
- package/lib/esm/comms/email/index.js +1 -1
- package/lib/esm/comms/email/mime.js +1 -1
- package/lib/esm/comms/email/smtp.js +1 -1
- package/lib/esm/comms/environment.js +1 -1
- package/lib/esm/comms/gmail/GmailService.js +1 -1
- package/lib/esm/comms/gmail/index.js +1 -1
- package/lib/esm/comms/index.js +1 -1
- package/lib/esm/comms/outlook/MicrosoftOutlookService.js +1 -1
- package/lib/esm/comms/outlook/index.js +1 -1
- package/lib/esm/comms/slack/SlackService.js +1 -1
- package/lib/esm/comms/slack/index.js +1 -1
- package/lib/esm/comms/teams/TeamsService.js +1 -1
- package/lib/esm/comms/teams/index.js +1 -1
- package/lib/esm/comms/telegram/TelegramService.js +1 -1
- package/lib/esm/comms/telegram/index.js +1 -1
- package/lib/esm/comms/whatsapp/WhatsAppService.js +1 -1
- package/lib/esm/comms/whatsapp/index.js +1 -1
- package/lib/esm/devops/environment.js +1 -1
- package/lib/esm/devops/github/GithubService.js +1 -1
- package/lib/esm/devops/github/index.js +1 -1
- package/lib/esm/devops/gitlab/GitlabService.js +1 -1
- package/lib/esm/devops/gitlab/index.js +1 -1
- package/lib/esm/devops/index.js +1 -1
- package/lib/esm/docker/DockerComposeService.js +1 -1
- package/lib/esm/docker/index.js +1 -1
- package/lib/esm/feature-flags/EngineCapabilityFeatureFlag.service.js +1 -1
- package/lib/esm/feature-flags/constants.js +1 -1
- package/lib/esm/feature-flags/decorators.js +1 -1
- package/lib/esm/feature-flags/environment.js +1 -1
- package/lib/esm/feature-flags/index.js +1 -1
- package/lib/esm/feature-flags/models/FeatureFlag.model.js +1 -1
- package/lib/esm/feature-flags/models/FeatureFlagAccess.model.js +1 -1
- package/lib/esm/feature-flags/readers/FeatureFlagReader.js +1 -1
- package/lib/esm/feature-flags/readers/index.js +1 -1
- package/lib/esm/feature-flags/services/FeatureFlag.service.js +1 -1
- package/lib/esm/feature-flags/types.js +1 -1
- package/lib/esm/feature-flags/utils.js +1 -1
- package/lib/esm/index.js +4 -4
- package/lib/esm/io/airtable/AirtableService.js +1 -1
- package/lib/esm/io/airtable/index.js +1 -1
- package/lib/esm/io/confluence/ConfluenceService.js +1 -1
- package/lib/esm/io/confluence/index.js +1 -1
- package/lib/esm/io/environment.js +1 -1
- package/lib/esm/io/google-docs/GoogleDocsService.js +1 -1
- package/lib/esm/io/google-docs/index.js +1 -1
- package/lib/esm/io/google-sheets/GoogleSheetsService.js +1 -1
- package/lib/esm/io/google-sheets/index.js +1 -1
- package/lib/esm/io/graphql/GraphqlService.js +1 -1
- package/lib/esm/io/graphql/index.js +1 -1
- package/lib/esm/io/index.js +1 -1
- package/lib/esm/io/jira/JiraService.js +1 -1
- package/lib/esm/io/jira/index.js +1 -1
- package/lib/esm/io/microsoft-excel/MicrosoftExcelService.js +1 -1
- package/lib/esm/io/microsoft-excel/index.js +1 -1
- package/lib/esm/io/microsoft-sharepoint/MicrosoftSharePointService.js +1 -1
- package/lib/esm/io/microsoft-sharepoint/index.js +1 -1
- package/lib/esm/io/spreadsheet/SpreadsheetService.js +1 -1
- package/lib/esm/io/spreadsheet/index.js +1 -1
- package/lib/esm/keycloak/broker.js +1 -1
- package/lib/esm/keycloak/index.js +1 -1
- package/lib/esm/keycloak/services/KeycloakAuthService.js +1 -1
- package/lib/esm/keycloak/services/KeycloakClientService.js +1 -1
- package/lib/esm/keycloak/services/KeycloakIdentityProviderService.js +1 -1
- package/lib/esm/keycloak/services/KeycloakRealmService.js +1 -1
- package/lib/esm/keycloak/services/KeycloakRoleService.js +1 -1
- package/lib/esm/keycloak/services/KeycloakService.js +1 -1
- package/lib/esm/keycloak/services/KeycloakUserService.js +1 -1
- package/lib/esm/keycloak/services/index.js +1 -1
- package/lib/esm/keycloak/services/runtime.js +1 -1
- package/lib/esm/keycloak/types.js +1 -1
- package/lib/esm/kibana/builders/KibanaIndexBuilder.js +1 -1
- package/lib/esm/kibana/builders/KibanaIndexBuilderCollection.js +1 -1
- package/lib/esm/kibana/builders/index.js +1 -1
- package/lib/esm/kibana/helpers.js +1 -1
- package/lib/esm/kibana/index.js +1 -1
- package/lib/esm/kibana/services/KibanaAuthService.js +1 -1
- package/lib/esm/kibana/services/KibanaDashboardService.js +1 -1
- package/lib/esm/kibana/services/KibanaDataViewService.js +1 -1
- package/lib/esm/kibana/services/KibanaRoleService.js +1 -1
- package/lib/esm/kibana/services/KibanaService.js +1 -1
- package/lib/esm/kibana/services/KibanaSpaceService.js +1 -1
- package/lib/esm/kibana/services/KibanaUserService.js +1 -1
- package/lib/esm/kibana/services/index.js +1 -1
- package/lib/esm/kibana/services/runtime.js +1 -1
- package/lib/esm/kibana/types.js +1 -1
- package/lib/esm/loader/ObjectLoader.js +1 -1
- package/lib/esm/loader/assets.js +1 -1
- package/lib/esm/loader/config.js +1 -1
- package/lib/esm/loader/families.js +1 -1
- package/lib/esm/loader/index.js +1 -1
- package/lib/esm/loader/nest.js +1 -1
- package/lib/esm/loader/types.js +1 -1
- package/lib/esm/namespaces/index.js +1 -1
- package/lib/esm/namespaces/models/authorization-model.js +1 -1
- package/lib/esm/namespaces/models/credential.model.js +1 -1
- package/lib/esm/namespaces/models/effective-permission.model.js +1 -1
- package/lib/esm/namespaces/models/group-membership.model.js +1 -1
- package/lib/esm/namespaces/models/group.model.js +1 -1
- package/lib/esm/namespaces/models/index.js +1 -1
- package/lib/esm/namespaces/models/inheritance-block.model.js +1 -1
- package/lib/esm/namespaces/models/org-unit-closure.model.js +1 -1
- package/lib/esm/namespaces/models/org-unit-membership.model.js +1 -1
- package/lib/esm/namespaces/models/org-unit-profile.model.js +1 -1
- package/lib/esm/namespaces/models/org-unit.model.js +1 -1
- package/lib/esm/namespaces/models/permission.model.js +1 -1
- package/lib/esm/namespaces/models/principal.model.js +1 -1
- package/lib/esm/namespaces/models/protected-resource.model.js +1 -1
- package/lib/esm/namespaces/models/resource-grant.model.js +1 -1
- package/lib/esm/namespaces/models/role-assignment.model.js +1 -1
- package/lib/esm/namespaces/models/role-permission.model.js +1 -1
- package/lib/esm/namespaces/models/role.model.js +1 -1
- package/lib/esm/namespaces/models/storage-binding.model.js +1 -1
- package/lib/esm/namespaces/models/tenant-membership.model.js +1 -1
- package/lib/esm/namespaces/models/tenant-profile.model.js +1 -1
- package/lib/esm/namespaces/models/tenant.model.js +1 -1
- package/lib/esm/namespaces/models/user.model.js +1 -1
- package/lib/esm/namespaces/org-based-authorization-system.js +1 -1
- package/lib/esm/namespaces/org-based-authorization-system.models.js +1 -1
- package/lib/esm/namespaces/org-based-authorization-system.services.js +1 -1
- package/lib/esm/namespaces/rls/index.js +1 -1
- package/lib/esm/namespaces/rls/principal-resolver.js +1 -1
- package/lib/esm/namespaces/rls/rls-bootstrap.service.js +1 -1
- package/lib/esm/namespaces/rls/rls.constants.js +1 -1
- package/lib/esm/namespaces/rls/rls.template.js +1 -1
- package/lib/esm/namespaces/rls/rls.types.js +1 -1
- package/lib/esm/namespaces/rls/session-binding.js +1 -1
- package/lib/esm/namespaces/services/authz.service.js +1 -1
- package/lib/esm/namespaces/services/bootstrap.service.js +1 -1
- package/lib/esm/namespaces/services/credential.service.js +1 -1
- package/lib/esm/namespaces/services/effective-permission.service.js +1 -1
- package/lib/esm/namespaces/services/group-membership.service.js +1 -1
- package/lib/esm/namespaces/services/group.service.js +1 -1
- package/lib/esm/namespaces/services/index.js +1 -1
- package/lib/esm/namespaces/services/inheritance-block.service.js +1 -1
- package/lib/esm/namespaces/services/org-unit-closure.service.js +1 -1
- package/lib/esm/namespaces/services/org-unit-membership.service.js +1 -1
- package/lib/esm/namespaces/services/org-unit-profile.service.js +1 -1
- package/lib/esm/namespaces/services/org-unit.service.js +1 -1
- package/lib/esm/namespaces/services/permission.service.js +1 -1
- package/lib/esm/namespaces/services/principal.service.js +1 -1
- package/lib/esm/namespaces/services/protected-resource.service.js +1 -1
- package/lib/esm/namespaces/services/resource-grant.service.js +1 -1
- package/lib/esm/namespaces/services/resource-lifecycle.service.js +1 -1
- package/lib/esm/namespaces/services/role-assignment.service.js +1 -1
- package/lib/esm/namespaces/services/role-permission.service.js +1 -1
- package/lib/esm/namespaces/services/role.service.js +1 -1
- package/lib/esm/namespaces/services/storage-binding.service.js +1 -1
- package/lib/esm/namespaces/services/system-management.service.js +1 -1
- package/lib/esm/namespaces/services/tenant-membership.service.js +1 -1
- package/lib/esm/namespaces/services/tenant-profile.service.js +1 -1
- package/lib/esm/namespaces/services/tenant.service.js +1 -1
- package/lib/esm/namespaces/services/user.service.js +1 -1
- package/lib/esm/namespaces/types.js +1 -1
- package/lib/esm/namespaces/utils.js +1 -1
- package/lib/esm/nest/decorators.js +1 -1
- package/lib/esm/nest/index.js +1 -1
- package/lib/esm/nest/keycloakAuthHandler.js +1 -1
- package/lib/esm/nest/keycloakModule.js +1 -1
- package/lib/esm/nest/logging.js +1 -1
- package/lib/esm/nest/types.js +1 -1
- package/lib/esm/nest/utils.js +1 -1
- package/lib/esm/plugins/contract.js +1 -1
- package/lib/esm/plugins/index.js +1 -1
- package/lib/esm/plugins/kibana/host.js +1 -1
- package/lib/esm/plugins/kibana/index.js +1 -1
- package/lib/esm/plugins/kibana/installer.js +1 -1
- package/lib/esm/plugins/kibana/manifest.js +1 -1
- package/lib/esm/plugins/kibana/templates.js +1 -1
- package/lib/esm/plugins/kibana/types.js +1 -1
- package/lib/esm/plugins/superset/host.js +1 -1
- package/lib/esm/plugins/superset/index.js +1 -1
- package/lib/esm/plugins/superset/installer.js +1 -1
- package/lib/esm/plugins/superset/manifest.js +1 -1
- package/lib/esm/plugins/superset/templates.js +1 -1
- package/lib/esm/plugins/superset/types.js +1 -1
- package/lib/esm/redis/RedisContextLock.js +1 -1
- package/lib/esm/redis/RedisDispatch.js +1 -1
- package/lib/esm/redis/RedisPaginator.js +1 -1
- package/lib/esm/redis/RedisStatement.js +1 -1
- package/lib/esm/redis/adapter.js +1 -1
- package/lib/esm/redis/constants.js +1 -1
- package/lib/esm/redis/handlers.js +1 -1
- package/lib/esm/redis/index.js +1 -1
- package/lib/esm/redis/serialization.js +1 -1
- package/lib/esm/redis/types.js +1 -1
- package/lib/esm/secrets/InfraCredentialBootstrap.js +1 -1
- package/lib/esm/secrets/aws/AwsSecretEnvironment.js +1 -1
- package/lib/esm/secrets/aws/AwsSecretService.js +1 -1
- package/lib/esm/secrets/aws/AwsSecretServiceConfig.js +1 -1
- package/lib/esm/secrets/aws/index.js +1 -1
- package/lib/esm/secrets/azure/AzureKeyVaultSecretService.js +1 -1
- package/lib/esm/secrets/azure/AzureKeyVaultSecretServiceConfig.js +1 -1
- package/lib/esm/secrets/azure/AzureSecretEnvironment.js +1 -1
- package/lib/esm/secrets/azure/index.js +1 -1
- package/lib/esm/secrets/core/ClientBasedSecretService.js +1 -1
- package/lib/esm/secrets/core/SecretEnvironment.js +1 -1
- package/lib/esm/secrets/core/SecretErrors.js +1 -1
- package/lib/esm/secrets/core/SecretName.js +1 -1
- package/lib/esm/secrets/core/SecretReference.js +2 -1
- package/lib/esm/secrets/core/SecretSerialization.js +1 -1
- package/lib/esm/secrets/core/SecretService.js +1 -1
- package/lib/esm/secrets/core/SecretTypes.js +1 -1
- package/lib/esm/secrets/core/index.js +1 -1
- package/lib/esm/secrets/fs/FsSecretEnvironment.js +1 -1
- package/lib/esm/secrets/fs/FsSecretService.js +1 -1
- package/lib/esm/secrets/fs/FsSecretServiceConfig.js +1 -1
- package/lib/esm/secrets/fs/index.js +1 -1
- package/lib/esm/secrets/gcp/GcpSecretEnvironment.js +1 -1
- package/lib/esm/secrets/gcp/GcpSecretManagerService.js +1 -1
- package/lib/esm/secrets/gcp/GcpSecretManagerServiceConfig.js +1 -1
- package/lib/esm/secrets/gcp/index.js +1 -1
- package/lib/esm/secrets/index.js +1 -1
- package/lib/esm/secrets/kubernetes/KubernetesSecretEnvironment.js +30 -0
- package/lib/esm/secrets/kubernetes/KubernetesSecretService.js +474 -0
- package/lib/esm/secrets/kubernetes/KubernetesSecretServiceConfig.js +9 -0
- package/lib/esm/secrets/kubernetes/index.js +10 -0
- package/lib/esm/secrets/model/ModelSecretCrypto.js +1 -1
- package/lib/esm/secrets/model/ModelSecretEnvironment.js +1 -1
- package/lib/esm/secrets/model/ModelSecretService.js +1 -1
- package/lib/esm/secrets/model/ModelSecretServiceConfig.js +1 -1
- package/lib/esm/secrets/model/Secret.js +1 -1
- package/lib/esm/secrets/model/index.js +1 -1
- package/lib/esm/secrets/onepassword/OnePasswordSecretEnvironment.js +1 -1
- package/lib/esm/secrets/onepassword/OnePasswordSecretService.js +1 -1
- package/lib/esm/secrets/onepassword/OnePasswordSecretServiceConfig.js +1 -1
- package/lib/esm/secrets/onepassword/index.js +1 -1
- package/lib/esm/secrets/vault/VaultSecretEnvironment.js +1 -1
- package/lib/esm/secrets/vault/VaultSecretService.js +1 -1
- package/lib/esm/secrets/vault/VaultSecretServiceConfig.js +1 -1
- package/lib/esm/secrets/vault/index.js +1 -1
- package/lib/esm/sftp/aws/AwsSftpEnvironment.js +1 -1
- package/lib/esm/sftp/aws/AwsSftpService.js +1 -1
- package/lib/esm/sftp/aws/index.js +7 -0
- package/lib/esm/sftp/core/SftpEnvironment.js +1 -1
- package/lib/esm/sftp/core/SftpSource.js +1 -1
- package/lib/esm/sftp/core/index.js +1 -1
- package/lib/esm/sftp/index.js +1 -1
- package/lib/esm/sftp/ssh2/Ssh2SftpEnvironment.js +1 -1
- package/lib/esm/sftp/ssh2/Ssh2SftpService.js +1 -1
- package/lib/esm/sftp/ssh2/index.js +7 -0
- package/lib/esm/shared/environmentValue.js +1 -1
- package/lib/esm/shared/http/HttpApiService.js +1 -1
- package/lib/esm/shared/http/hermeticBoot.js +1 -1
- package/lib/esm/shared/http/index.js +1 -1
- package/lib/esm/shared/runtime.js +1 -1
- package/lib/esm/user-requests/index.js +1 -1
- package/lib/esm/utils.js +1 -1
- package/lib/types/index.d.cts +2 -2
- package/lib/types/index.d.mts +2 -2
- package/lib/types/secrets/core/SecretTypes.d.cts +13 -1
- package/lib/types/secrets/core/SecretTypes.d.mts +13 -1
- package/lib/types/secrets/kubernetes/KubernetesSecretEnvironment.d.cts +34 -0
- package/lib/types/secrets/kubernetes/KubernetesSecretEnvironment.d.mts +34 -0
- package/lib/types/secrets/kubernetes/KubernetesSecretService.d.cts +45 -0
- package/lib/types/secrets/kubernetes/KubernetesSecretService.d.mts +45 -0
- package/lib/types/secrets/kubernetes/KubernetesSecretServiceConfig.d.cts +49 -0
- package/lib/types/secrets/kubernetes/KubernetesSecretServiceConfig.d.mts +49 -0
- package/lib/types/secrets/kubernetes/index.d.cts +9 -0
- package/lib/types/secrets/kubernetes/index.d.mts +9 -0
- package/lib/types/sftp/aws/index.d.cts +6 -0
- package/lib/types/sftp/aws/index.d.mts +6 -0
- package/lib/types/sftp/ssh2/index.d.cts +6 -0
- package/lib/types/sftp/ssh2/index.d.mts +6 -0
- package/package.json +180 -55
- package/dist/integrations.cjs.map +0 -1
- package/dist/integrations.js.map +0 -1
- package/lib/cjs/blob/azure/AzureBlobEnvironment.cjs.map +0 -1
- package/lib/cjs/blob/azure/AzureBlobStoreService.cjs.map +0 -1
- package/lib/cjs/blob/azure/index.cjs.map +0 -1
- package/lib/cjs/blob/core/BlobEnvironment.cjs.map +0 -1
- package/lib/cjs/blob/core/BlobErrors.cjs.map +0 -1
- package/lib/cjs/blob/core/BlobKey.cjs.map +0 -1
- package/lib/cjs/blob/core/BlobStoreFactory.cjs.map +0 -1
- package/lib/cjs/blob/core/BlobStoreService.cjs.map +0 -1
- package/lib/cjs/blob/core/BlobTypes.cjs.map +0 -1
- package/lib/cjs/blob/core/BlobValue.cjs.map +0 -1
- package/lib/cjs/blob/core/index.cjs.map +0 -1
- package/lib/cjs/blob/gcp/GcsBlobEnvironment.cjs.map +0 -1
- package/lib/cjs/blob/gcp/GcsBlobStoreService.cjs.map +0 -1
- package/lib/cjs/blob/gcp/index.cjs.map +0 -1
- package/lib/cjs/blob/index.cjs.map +0 -1
- package/lib/cjs/blob/local/LocalBlobEnvironment.cjs.map +0 -1
- package/lib/cjs/blob/local/LocalBlobStoreService.cjs.map +0 -1
- package/lib/cjs/blob/local/index.cjs.map +0 -1
- package/lib/cjs/blob/memory/MemoryBlobEnvironment.cjs.map +0 -1
- package/lib/cjs/blob/memory/MemoryBlobStoreService.cjs.map +0 -1
- package/lib/cjs/blob/memory/index.cjs.map +0 -1
- package/lib/cjs/blob/s3/MinioBlobEnvironment.cjs.map +0 -1
- package/lib/cjs/blob/s3/MinioBlobStoreService.cjs.map +0 -1
- package/lib/cjs/blob/s3/R2BlobEnvironment.cjs.map +0 -1
- package/lib/cjs/blob/s3/R2BlobStoreService.cjs.map +0 -1
- package/lib/cjs/blob/s3/S3BlobEnvironment.cjs.map +0 -1
- package/lib/cjs/blob/s3/S3BlobStoreService.cjs.map +0 -1
- package/lib/cjs/blob/s3/S3CompatibleBlobStoreService.cjs.map +0 -1
- package/lib/cjs/blob/s3/index.cjs.map +0 -1
- package/lib/cjs/calendar/CalendarService.cjs.map +0 -1
- package/lib/cjs/calendar/environment.cjs.map +0 -1
- package/lib/cjs/calendar/google-calendar/GoogleCalendarService.cjs.map +0 -1
- package/lib/cjs/calendar/google-calendar/index.cjs.map +0 -1
- package/lib/cjs/calendar/index.cjs.map +0 -1
- package/lib/cjs/calendar/types.cjs.map +0 -1
- package/lib/cjs/calendar/validators/cron.cjs.map +0 -1
- package/lib/cjs/calendar/writers/CalendarFsWriter.cjs.map +0 -1
- package/lib/cjs/calendar/writers/CalenderDownloader.cjs.map +0 -1
- package/lib/cjs/calendar/writers/ICalendarWriter.cjs.map +0 -1
- package/lib/cjs/comms/discord/DiscordService.cjs.map +0 -1
- package/lib/cjs/comms/discord/index.cjs.map +0 -1
- package/lib/cjs/comms/email/EmailService.cjs.map +0 -1
- package/lib/cjs/comms/email/index.cjs.map +0 -1
- package/lib/cjs/comms/email/mime.cjs.map +0 -1
- package/lib/cjs/comms/email/smtp.cjs.map +0 -1
- package/lib/cjs/comms/environment.cjs.map +0 -1
- package/lib/cjs/comms/gmail/GmailService.cjs.map +0 -1
- package/lib/cjs/comms/gmail/index.cjs.map +0 -1
- package/lib/cjs/comms/index.cjs.map +0 -1
- package/lib/cjs/comms/outlook/MicrosoftOutlookService.cjs.map +0 -1
- package/lib/cjs/comms/outlook/index.cjs.map +0 -1
- package/lib/cjs/comms/slack/SlackService.cjs.map +0 -1
- package/lib/cjs/comms/slack/index.cjs.map +0 -1
- package/lib/cjs/comms/teams/TeamsService.cjs.map +0 -1
- package/lib/cjs/comms/teams/index.cjs.map +0 -1
- package/lib/cjs/comms/telegram/TelegramService.cjs.map +0 -1
- package/lib/cjs/comms/telegram/index.cjs.map +0 -1
- package/lib/cjs/comms/whatsapp/WhatsAppService.cjs.map +0 -1
- package/lib/cjs/comms/whatsapp/index.cjs.map +0 -1
- package/lib/cjs/devops/environment.cjs.map +0 -1
- package/lib/cjs/devops/github/GithubService.cjs.map +0 -1
- package/lib/cjs/devops/github/index.cjs.map +0 -1
- package/lib/cjs/devops/gitlab/GitlabService.cjs.map +0 -1
- package/lib/cjs/devops/gitlab/index.cjs.map +0 -1
- package/lib/cjs/devops/index.cjs.map +0 -1
- package/lib/cjs/docker/DockerComposeService.cjs.map +0 -1
- package/lib/cjs/docker/index.cjs.map +0 -1
- package/lib/cjs/feature-flags/EngineCapabilityFeatureFlag.service.cjs.map +0 -1
- package/lib/cjs/feature-flags/constants.cjs.map +0 -1
- package/lib/cjs/feature-flags/decorators.cjs.map +0 -1
- package/lib/cjs/feature-flags/environment.cjs.map +0 -1
- package/lib/cjs/feature-flags/index.cjs.map +0 -1
- package/lib/cjs/feature-flags/models/FeatureFlag.model.cjs.map +0 -1
- package/lib/cjs/feature-flags/models/FeatureFlagAccess.model.cjs.map +0 -1
- package/lib/cjs/feature-flags/readers/FeatureFlagReader.cjs.map +0 -1
- package/lib/cjs/feature-flags/readers/index.cjs.map +0 -1
- package/lib/cjs/feature-flags/services/FeatureFlag.service.cjs.map +0 -1
- package/lib/cjs/feature-flags/types.cjs.map +0 -1
- package/lib/cjs/feature-flags/utils.cjs.map +0 -1
- package/lib/cjs/index.cjs.map +0 -1
- package/lib/cjs/io/airtable/AirtableService.cjs.map +0 -1
- package/lib/cjs/io/airtable/index.cjs.map +0 -1
- package/lib/cjs/io/confluence/ConfluenceService.cjs.map +0 -1
- package/lib/cjs/io/confluence/index.cjs.map +0 -1
- package/lib/cjs/io/environment.cjs.map +0 -1
- package/lib/cjs/io/google-docs/GoogleDocsService.cjs.map +0 -1
- package/lib/cjs/io/google-docs/index.cjs.map +0 -1
- package/lib/cjs/io/google-sheets/GoogleSheetsService.cjs.map +0 -1
- package/lib/cjs/io/google-sheets/index.cjs.map +0 -1
- package/lib/cjs/io/graphql/GraphqlService.cjs.map +0 -1
- package/lib/cjs/io/graphql/index.cjs.map +0 -1
- package/lib/cjs/io/index.cjs.map +0 -1
- package/lib/cjs/io/jira/JiraService.cjs.map +0 -1
- package/lib/cjs/io/jira/index.cjs.map +0 -1
- package/lib/cjs/io/microsoft-excel/MicrosoftExcelService.cjs.map +0 -1
- package/lib/cjs/io/microsoft-excel/index.cjs.map +0 -1
- package/lib/cjs/io/microsoft-sharepoint/MicrosoftSharePointService.cjs.map +0 -1
- package/lib/cjs/io/microsoft-sharepoint/index.cjs.map +0 -1
- package/lib/cjs/io/spreadsheet/SpreadsheetService.cjs.map +0 -1
- package/lib/cjs/io/spreadsheet/index.cjs.map +0 -1
- package/lib/cjs/keycloak/broker.cjs.map +0 -1
- package/lib/cjs/keycloak/index.cjs.map +0 -1
- package/lib/cjs/keycloak/services/KeycloakAuthService.cjs.map +0 -1
- package/lib/cjs/keycloak/services/KeycloakClientService.cjs.map +0 -1
- package/lib/cjs/keycloak/services/KeycloakIdentityProviderService.cjs.map +0 -1
- package/lib/cjs/keycloak/services/KeycloakRealmService.cjs.map +0 -1
- package/lib/cjs/keycloak/services/KeycloakRoleService.cjs.map +0 -1
- package/lib/cjs/keycloak/services/KeycloakService.cjs.map +0 -1
- package/lib/cjs/keycloak/services/KeycloakUserService.cjs.map +0 -1
- package/lib/cjs/keycloak/services/index.cjs.map +0 -1
- package/lib/cjs/keycloak/services/runtime.cjs.map +0 -1
- package/lib/cjs/keycloak/types.cjs.map +0 -1
- package/lib/cjs/kibana/builders/KibanaIndexBuilder.cjs.map +0 -1
- package/lib/cjs/kibana/builders/KibanaIndexBuilderCollection.cjs.map +0 -1
- package/lib/cjs/kibana/builders/index.cjs.map +0 -1
- package/lib/cjs/kibana/helpers.cjs.map +0 -1
- package/lib/cjs/kibana/index.cjs.map +0 -1
- package/lib/cjs/kibana/services/KibanaAuthService.cjs.map +0 -1
- package/lib/cjs/kibana/services/KibanaDashboardService.cjs.map +0 -1
- package/lib/cjs/kibana/services/KibanaDataViewService.cjs.map +0 -1
- package/lib/cjs/kibana/services/KibanaRoleService.cjs.map +0 -1
- package/lib/cjs/kibana/services/KibanaService.cjs.map +0 -1
- package/lib/cjs/kibana/services/KibanaSpaceService.cjs.map +0 -1
- package/lib/cjs/kibana/services/KibanaUserService.cjs.map +0 -1
- package/lib/cjs/kibana/services/index.cjs.map +0 -1
- package/lib/cjs/kibana/services/runtime.cjs.map +0 -1
- package/lib/cjs/kibana/types.cjs.map +0 -1
- package/lib/cjs/loader/ObjectLoader.cjs.map +0 -1
- package/lib/cjs/loader/assets.cjs.map +0 -1
- package/lib/cjs/loader/config.cjs.map +0 -1
- package/lib/cjs/loader/families.cjs.map +0 -1
- package/lib/cjs/loader/index.cjs.map +0 -1
- package/lib/cjs/loader/nest.cjs.map +0 -1
- package/lib/cjs/loader/types.cjs.map +0 -1
- package/lib/cjs/namespaces/index.cjs.map +0 -1
- package/lib/cjs/namespaces/models/authorization-model.cjs.map +0 -1
- package/lib/cjs/namespaces/models/credential.model.cjs.map +0 -1
- package/lib/cjs/namespaces/models/effective-permission.model.cjs.map +0 -1
- package/lib/cjs/namespaces/models/group-membership.model.cjs.map +0 -1
- package/lib/cjs/namespaces/models/group.model.cjs.map +0 -1
- package/lib/cjs/namespaces/models/index.cjs.map +0 -1
- package/lib/cjs/namespaces/models/inheritance-block.model.cjs.map +0 -1
- package/lib/cjs/namespaces/models/org-unit-closure.model.cjs.map +0 -1
- package/lib/cjs/namespaces/models/org-unit-membership.model.cjs.map +0 -1
- package/lib/cjs/namespaces/models/org-unit-profile.model.cjs.map +0 -1
- package/lib/cjs/namespaces/models/org-unit.model.cjs.map +0 -1
- package/lib/cjs/namespaces/models/permission.model.cjs.map +0 -1
- package/lib/cjs/namespaces/models/principal.model.cjs.map +0 -1
- package/lib/cjs/namespaces/models/protected-resource.model.cjs.map +0 -1
- package/lib/cjs/namespaces/models/resource-grant.model.cjs.map +0 -1
- package/lib/cjs/namespaces/models/role-assignment.model.cjs.map +0 -1
- package/lib/cjs/namespaces/models/role-permission.model.cjs.map +0 -1
- package/lib/cjs/namespaces/models/role.model.cjs.map +0 -1
- package/lib/cjs/namespaces/models/storage-binding.model.cjs.map +0 -1
- package/lib/cjs/namespaces/models/tenant-membership.model.cjs.map +0 -1
- package/lib/cjs/namespaces/models/tenant-profile.model.cjs.map +0 -1
- package/lib/cjs/namespaces/models/tenant.model.cjs.map +0 -1
- package/lib/cjs/namespaces/models/user.model.cjs.map +0 -1
- package/lib/cjs/namespaces/org-based-authorization-system.cjs.map +0 -1
- package/lib/cjs/namespaces/org-based-authorization-system.models.cjs.map +0 -1
- package/lib/cjs/namespaces/org-based-authorization-system.services.cjs.map +0 -1
- package/lib/cjs/namespaces/rls/index.cjs.map +0 -1
- package/lib/cjs/namespaces/rls/principal-resolver.cjs.map +0 -1
- package/lib/cjs/namespaces/rls/rls-bootstrap.service.cjs.map +0 -1
- package/lib/cjs/namespaces/rls/rls.constants.cjs.map +0 -1
- package/lib/cjs/namespaces/rls/rls.template.cjs.map +0 -1
- package/lib/cjs/namespaces/rls/rls.types.cjs.map +0 -1
- package/lib/cjs/namespaces/rls/session-binding.cjs.map +0 -1
- package/lib/cjs/namespaces/services/authz.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/bootstrap.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/credential.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/effective-permission.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/group-membership.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/group.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/index.cjs.map +0 -1
- package/lib/cjs/namespaces/services/inheritance-block.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/org-unit-closure.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/org-unit-membership.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/org-unit-profile.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/org-unit.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/permission.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/principal.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/protected-resource.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/resource-grant.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/resource-lifecycle.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/role-assignment.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/role-permission.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/role.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/storage-binding.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/system-management.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/tenant-membership.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/tenant-profile.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/tenant.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/user.service.cjs.map +0 -1
- package/lib/cjs/namespaces/types.cjs.map +0 -1
- package/lib/cjs/namespaces/utils.cjs.map +0 -1
- package/lib/cjs/nest/decorators.cjs.map +0 -1
- package/lib/cjs/nest/index.cjs.map +0 -1
- package/lib/cjs/nest/keycloakAuthHandler.cjs.map +0 -1
- package/lib/cjs/nest/keycloakModule.cjs.map +0 -1
- package/lib/cjs/nest/logging.cjs.map +0 -1
- package/lib/cjs/nest/types.cjs.map +0 -1
- package/lib/cjs/nest/utils.cjs.map +0 -1
- package/lib/cjs/plugins/contract.cjs.map +0 -1
- package/lib/cjs/plugins/index.cjs.map +0 -1
- package/lib/cjs/plugins/kibana/host.cjs.map +0 -1
- package/lib/cjs/plugins/kibana/index.cjs.map +0 -1
- package/lib/cjs/plugins/kibana/installer.cjs.map +0 -1
- package/lib/cjs/plugins/kibana/manifest.cjs.map +0 -1
- package/lib/cjs/plugins/kibana/templates.cjs.map +0 -1
- package/lib/cjs/plugins/kibana/types.cjs.map +0 -1
- package/lib/cjs/plugins/superset/host.cjs.map +0 -1
- package/lib/cjs/plugins/superset/index.cjs.map +0 -1
- package/lib/cjs/plugins/superset/installer.cjs.map +0 -1
- package/lib/cjs/plugins/superset/manifest.cjs.map +0 -1
- package/lib/cjs/plugins/superset/templates.cjs.map +0 -1
- package/lib/cjs/plugins/superset/types.cjs.map +0 -1
- package/lib/cjs/redis/RedisContextLock.cjs.map +0 -1
- package/lib/cjs/redis/RedisDispatch.cjs.map +0 -1
- package/lib/cjs/redis/RedisPaginator.cjs.map +0 -1
- package/lib/cjs/redis/RedisStatement.cjs.map +0 -1
- package/lib/cjs/redis/adapter.cjs.map +0 -1
- package/lib/cjs/redis/constants.cjs.map +0 -1
- package/lib/cjs/redis/handlers.cjs.map +0 -1
- package/lib/cjs/redis/index.cjs.map +0 -1
- package/lib/cjs/redis/serialization.cjs.map +0 -1
- package/lib/cjs/redis/types.cjs.map +0 -1
- package/lib/cjs/secrets/InfraCredentialBootstrap.cjs.map +0 -1
- package/lib/cjs/secrets/aws/AwsSecretEnvironment.cjs.map +0 -1
- package/lib/cjs/secrets/aws/AwsSecretService.cjs.map +0 -1
- package/lib/cjs/secrets/aws/AwsSecretServiceConfig.cjs.map +0 -1
- package/lib/cjs/secrets/aws/index.cjs.map +0 -1
- package/lib/cjs/secrets/azure/AzureKeyVaultSecretService.cjs.map +0 -1
- package/lib/cjs/secrets/azure/AzureKeyVaultSecretServiceConfig.cjs.map +0 -1
- package/lib/cjs/secrets/azure/AzureSecretEnvironment.cjs.map +0 -1
- package/lib/cjs/secrets/azure/index.cjs.map +0 -1
- package/lib/cjs/secrets/core/ClientBasedSecretService.cjs.map +0 -1
- package/lib/cjs/secrets/core/SecretEnvironment.cjs.map +0 -1
- package/lib/cjs/secrets/core/SecretErrors.cjs.map +0 -1
- package/lib/cjs/secrets/core/SecretName.cjs.map +0 -1
- package/lib/cjs/secrets/core/SecretReference.cjs.map +0 -1
- package/lib/cjs/secrets/core/SecretSerialization.cjs.map +0 -1
- package/lib/cjs/secrets/core/SecretService.cjs.map +0 -1
- package/lib/cjs/secrets/core/SecretTypes.cjs.map +0 -1
- package/lib/cjs/secrets/core/index.cjs.map +0 -1
- package/lib/cjs/secrets/fs/FsSecretEnvironment.cjs.map +0 -1
- package/lib/cjs/secrets/fs/FsSecretService.cjs.map +0 -1
- package/lib/cjs/secrets/fs/FsSecretServiceConfig.cjs.map +0 -1
- package/lib/cjs/secrets/fs/index.cjs.map +0 -1
- package/lib/cjs/secrets/gcp/GcpSecretEnvironment.cjs.map +0 -1
- package/lib/cjs/secrets/gcp/GcpSecretManagerService.cjs.map +0 -1
- package/lib/cjs/secrets/gcp/GcpSecretManagerServiceConfig.cjs.map +0 -1
- package/lib/cjs/secrets/gcp/index.cjs.map +0 -1
- package/lib/cjs/secrets/index.cjs.map +0 -1
- package/lib/cjs/secrets/model/ModelSecretCrypto.cjs.map +0 -1
- package/lib/cjs/secrets/model/ModelSecretEnvironment.cjs.map +0 -1
- package/lib/cjs/secrets/model/ModelSecretService.cjs.map +0 -1
- package/lib/cjs/secrets/model/ModelSecretServiceConfig.cjs.map +0 -1
- package/lib/cjs/secrets/model/Secret.cjs.map +0 -1
- package/lib/cjs/secrets/model/index.cjs.map +0 -1
- package/lib/cjs/secrets/onepassword/OnePasswordSecretEnvironment.cjs.map +0 -1
- package/lib/cjs/secrets/onepassword/OnePasswordSecretService.cjs.map +0 -1
- package/lib/cjs/secrets/onepassword/OnePasswordSecretServiceConfig.cjs.map +0 -1
- package/lib/cjs/secrets/onepassword/index.cjs.map +0 -1
- package/lib/cjs/secrets/vault/VaultSecretEnvironment.cjs.map +0 -1
- package/lib/cjs/secrets/vault/VaultSecretService.cjs.map +0 -1
- package/lib/cjs/secrets/vault/VaultSecretServiceConfig.cjs.map +0 -1
- package/lib/cjs/secrets/vault/index.cjs.map +0 -1
- package/lib/cjs/sftp/aws/AwsSftpEnvironment.cjs.map +0 -1
- package/lib/cjs/sftp/aws/AwsSftpService.cjs.map +0 -1
- package/lib/cjs/sftp/core/SftpEnvironment.cjs.map +0 -1
- package/lib/cjs/sftp/core/SftpSource.cjs.map +0 -1
- package/lib/cjs/sftp/core/index.cjs.map +0 -1
- package/lib/cjs/sftp/index.cjs.map +0 -1
- package/lib/cjs/sftp/ssh2/Ssh2SftpEnvironment.cjs.map +0 -1
- package/lib/cjs/sftp/ssh2/Ssh2SftpService.cjs.map +0 -1
- package/lib/cjs/shared/environmentValue.cjs.map +0 -1
- package/lib/cjs/shared/http/HttpApiService.cjs.map +0 -1
- package/lib/cjs/shared/http/hermeticBoot.cjs.map +0 -1
- package/lib/cjs/shared/http/index.cjs.map +0 -1
- package/lib/cjs/shared/runtime.cjs.map +0 -1
- package/lib/cjs/user-requests/index.cjs.map +0 -1
- package/lib/cjs/utils.cjs.map +0 -1
- package/lib/esm/blob/azure/AzureBlobEnvironment.js.map +0 -1
- package/lib/esm/blob/azure/AzureBlobStoreService.js.map +0 -1
- package/lib/esm/blob/azure/index.js.map +0 -1
- package/lib/esm/blob/core/BlobEnvironment.js.map +0 -1
- package/lib/esm/blob/core/BlobErrors.js.map +0 -1
- package/lib/esm/blob/core/BlobKey.js.map +0 -1
- package/lib/esm/blob/core/BlobStoreFactory.js.map +0 -1
- package/lib/esm/blob/core/BlobStoreService.js.map +0 -1
- package/lib/esm/blob/core/BlobTypes.js.map +0 -1
- package/lib/esm/blob/core/BlobValue.js.map +0 -1
- package/lib/esm/blob/core/index.js.map +0 -1
- package/lib/esm/blob/gcp/GcsBlobEnvironment.js.map +0 -1
- package/lib/esm/blob/gcp/GcsBlobStoreService.js.map +0 -1
- package/lib/esm/blob/gcp/index.js.map +0 -1
- package/lib/esm/blob/index.js.map +0 -1
- package/lib/esm/blob/local/LocalBlobEnvironment.js.map +0 -1
- package/lib/esm/blob/local/LocalBlobStoreService.js.map +0 -1
- package/lib/esm/blob/local/index.js.map +0 -1
- package/lib/esm/blob/memory/MemoryBlobEnvironment.js.map +0 -1
- package/lib/esm/blob/memory/MemoryBlobStoreService.js.map +0 -1
- package/lib/esm/blob/memory/index.js.map +0 -1
- package/lib/esm/blob/s3/MinioBlobEnvironment.js.map +0 -1
- package/lib/esm/blob/s3/MinioBlobStoreService.js.map +0 -1
- package/lib/esm/blob/s3/R2BlobEnvironment.js.map +0 -1
- package/lib/esm/blob/s3/R2BlobStoreService.js.map +0 -1
- package/lib/esm/blob/s3/S3BlobEnvironment.js.map +0 -1
- package/lib/esm/blob/s3/S3BlobStoreService.js.map +0 -1
- package/lib/esm/blob/s3/S3CompatibleBlobStoreService.js.map +0 -1
- package/lib/esm/blob/s3/index.js.map +0 -1
- package/lib/esm/calendar/CalendarService.js.map +0 -1
- package/lib/esm/calendar/environment.js.map +0 -1
- package/lib/esm/calendar/google-calendar/GoogleCalendarService.js.map +0 -1
- package/lib/esm/calendar/google-calendar/index.js.map +0 -1
- package/lib/esm/calendar/index.js.map +0 -1
- package/lib/esm/calendar/types.js.map +0 -1
- package/lib/esm/calendar/validators/cron.js.map +0 -1
- package/lib/esm/calendar/writers/CalendarFsWriter.js.map +0 -1
- package/lib/esm/calendar/writers/CalenderDownloader.js.map +0 -1
- package/lib/esm/calendar/writers/ICalendarWriter.js.map +0 -1
- package/lib/esm/comms/discord/DiscordService.js.map +0 -1
- package/lib/esm/comms/discord/index.js.map +0 -1
- package/lib/esm/comms/email/EmailService.js.map +0 -1
- package/lib/esm/comms/email/index.js.map +0 -1
- package/lib/esm/comms/email/mime.js.map +0 -1
- package/lib/esm/comms/email/smtp.js.map +0 -1
- package/lib/esm/comms/environment.js.map +0 -1
- package/lib/esm/comms/gmail/GmailService.js.map +0 -1
- package/lib/esm/comms/gmail/index.js.map +0 -1
- package/lib/esm/comms/index.js.map +0 -1
- package/lib/esm/comms/outlook/MicrosoftOutlookService.js.map +0 -1
- package/lib/esm/comms/outlook/index.js.map +0 -1
- package/lib/esm/comms/slack/SlackService.js.map +0 -1
- package/lib/esm/comms/slack/index.js.map +0 -1
- package/lib/esm/comms/teams/TeamsService.js.map +0 -1
- package/lib/esm/comms/teams/index.js.map +0 -1
- package/lib/esm/comms/telegram/TelegramService.js.map +0 -1
- package/lib/esm/comms/telegram/index.js.map +0 -1
- package/lib/esm/comms/whatsapp/WhatsAppService.js.map +0 -1
- package/lib/esm/comms/whatsapp/index.js.map +0 -1
- package/lib/esm/devops/environment.js.map +0 -1
- package/lib/esm/devops/github/GithubService.js.map +0 -1
- package/lib/esm/devops/github/index.js.map +0 -1
- package/lib/esm/devops/gitlab/GitlabService.js.map +0 -1
- package/lib/esm/devops/gitlab/index.js.map +0 -1
- package/lib/esm/devops/index.js.map +0 -1
- package/lib/esm/docker/DockerComposeService.js.map +0 -1
- package/lib/esm/docker/index.js.map +0 -1
- package/lib/esm/feature-flags/EngineCapabilityFeatureFlag.service.js.map +0 -1
- package/lib/esm/feature-flags/constants.js.map +0 -1
- package/lib/esm/feature-flags/decorators.js.map +0 -1
- package/lib/esm/feature-flags/environment.js.map +0 -1
- package/lib/esm/feature-flags/index.js.map +0 -1
- package/lib/esm/feature-flags/models/FeatureFlag.model.js.map +0 -1
- package/lib/esm/feature-flags/models/FeatureFlagAccess.model.js.map +0 -1
- package/lib/esm/feature-flags/readers/FeatureFlagReader.js.map +0 -1
- package/lib/esm/feature-flags/readers/index.js.map +0 -1
- package/lib/esm/feature-flags/services/FeatureFlag.service.js.map +0 -1
- package/lib/esm/feature-flags/types.js.map +0 -1
- package/lib/esm/feature-flags/utils.js.map +0 -1
- package/lib/esm/index.js.map +0 -1
- package/lib/esm/io/airtable/AirtableService.js.map +0 -1
- package/lib/esm/io/airtable/index.js.map +0 -1
- package/lib/esm/io/confluence/ConfluenceService.js.map +0 -1
- package/lib/esm/io/confluence/index.js.map +0 -1
- package/lib/esm/io/environment.js.map +0 -1
- package/lib/esm/io/google-docs/GoogleDocsService.js.map +0 -1
- package/lib/esm/io/google-docs/index.js.map +0 -1
- package/lib/esm/io/google-sheets/GoogleSheetsService.js.map +0 -1
- package/lib/esm/io/google-sheets/index.js.map +0 -1
- package/lib/esm/io/graphql/GraphqlService.js.map +0 -1
- package/lib/esm/io/graphql/index.js.map +0 -1
- package/lib/esm/io/index.js.map +0 -1
- package/lib/esm/io/jira/JiraService.js.map +0 -1
- package/lib/esm/io/jira/index.js.map +0 -1
- package/lib/esm/io/microsoft-excel/MicrosoftExcelService.js.map +0 -1
- package/lib/esm/io/microsoft-excel/index.js.map +0 -1
- package/lib/esm/io/microsoft-sharepoint/MicrosoftSharePointService.js.map +0 -1
- package/lib/esm/io/microsoft-sharepoint/index.js.map +0 -1
- package/lib/esm/io/spreadsheet/SpreadsheetService.js.map +0 -1
- package/lib/esm/io/spreadsheet/index.js.map +0 -1
- package/lib/esm/keycloak/broker.js.map +0 -1
- package/lib/esm/keycloak/index.js.map +0 -1
- package/lib/esm/keycloak/services/KeycloakAuthService.js.map +0 -1
- package/lib/esm/keycloak/services/KeycloakClientService.js.map +0 -1
- package/lib/esm/keycloak/services/KeycloakIdentityProviderService.js.map +0 -1
- package/lib/esm/keycloak/services/KeycloakRealmService.js.map +0 -1
- package/lib/esm/keycloak/services/KeycloakRoleService.js.map +0 -1
- package/lib/esm/keycloak/services/KeycloakService.js.map +0 -1
- package/lib/esm/keycloak/services/KeycloakUserService.js.map +0 -1
- package/lib/esm/keycloak/services/index.js.map +0 -1
- package/lib/esm/keycloak/services/runtime.js.map +0 -1
- package/lib/esm/keycloak/types.js.map +0 -1
- package/lib/esm/kibana/builders/KibanaIndexBuilder.js.map +0 -1
- package/lib/esm/kibana/builders/KibanaIndexBuilderCollection.js.map +0 -1
- package/lib/esm/kibana/builders/index.js.map +0 -1
- package/lib/esm/kibana/helpers.js.map +0 -1
- package/lib/esm/kibana/index.js.map +0 -1
- package/lib/esm/kibana/services/KibanaAuthService.js.map +0 -1
- package/lib/esm/kibana/services/KibanaDashboardService.js.map +0 -1
- package/lib/esm/kibana/services/KibanaDataViewService.js.map +0 -1
- package/lib/esm/kibana/services/KibanaRoleService.js.map +0 -1
- package/lib/esm/kibana/services/KibanaService.js.map +0 -1
- package/lib/esm/kibana/services/KibanaSpaceService.js.map +0 -1
- package/lib/esm/kibana/services/KibanaUserService.js.map +0 -1
- package/lib/esm/kibana/services/index.js.map +0 -1
- package/lib/esm/kibana/services/runtime.js.map +0 -1
- package/lib/esm/kibana/types.js.map +0 -1
- package/lib/esm/loader/ObjectLoader.js.map +0 -1
- package/lib/esm/loader/assets.js.map +0 -1
- package/lib/esm/loader/config.js.map +0 -1
- package/lib/esm/loader/families.js.map +0 -1
- package/lib/esm/loader/index.js.map +0 -1
- package/lib/esm/loader/nest.js.map +0 -1
- package/lib/esm/loader/types.js.map +0 -1
- package/lib/esm/namespaces/index.js.map +0 -1
- package/lib/esm/namespaces/models/authorization-model.js.map +0 -1
- package/lib/esm/namespaces/models/credential.model.js.map +0 -1
- package/lib/esm/namespaces/models/effective-permission.model.js.map +0 -1
- package/lib/esm/namespaces/models/group-membership.model.js.map +0 -1
- package/lib/esm/namespaces/models/group.model.js.map +0 -1
- package/lib/esm/namespaces/models/index.js.map +0 -1
- package/lib/esm/namespaces/models/inheritance-block.model.js.map +0 -1
- package/lib/esm/namespaces/models/org-unit-closure.model.js.map +0 -1
- package/lib/esm/namespaces/models/org-unit-membership.model.js.map +0 -1
- package/lib/esm/namespaces/models/org-unit-profile.model.js.map +0 -1
- package/lib/esm/namespaces/models/org-unit.model.js.map +0 -1
- package/lib/esm/namespaces/models/permission.model.js.map +0 -1
- package/lib/esm/namespaces/models/principal.model.js.map +0 -1
- package/lib/esm/namespaces/models/protected-resource.model.js.map +0 -1
- package/lib/esm/namespaces/models/resource-grant.model.js.map +0 -1
- package/lib/esm/namespaces/models/role-assignment.model.js.map +0 -1
- package/lib/esm/namespaces/models/role-permission.model.js.map +0 -1
- package/lib/esm/namespaces/models/role.model.js.map +0 -1
- package/lib/esm/namespaces/models/storage-binding.model.js.map +0 -1
- package/lib/esm/namespaces/models/tenant-membership.model.js.map +0 -1
- package/lib/esm/namespaces/models/tenant-profile.model.js.map +0 -1
- package/lib/esm/namespaces/models/tenant.model.js.map +0 -1
- package/lib/esm/namespaces/models/user.model.js.map +0 -1
- package/lib/esm/namespaces/org-based-authorization-system.js.map +0 -1
- package/lib/esm/namespaces/org-based-authorization-system.models.js.map +0 -1
- package/lib/esm/namespaces/org-based-authorization-system.services.js.map +0 -1
- package/lib/esm/namespaces/rls/index.js.map +0 -1
- package/lib/esm/namespaces/rls/principal-resolver.js.map +0 -1
- package/lib/esm/namespaces/rls/rls-bootstrap.service.js.map +0 -1
- package/lib/esm/namespaces/rls/rls.constants.js.map +0 -1
- package/lib/esm/namespaces/rls/rls.template.js.map +0 -1
- package/lib/esm/namespaces/rls/rls.types.js.map +0 -1
- package/lib/esm/namespaces/rls/session-binding.js.map +0 -1
- package/lib/esm/namespaces/services/authz.service.js.map +0 -1
- package/lib/esm/namespaces/services/bootstrap.service.js.map +0 -1
- package/lib/esm/namespaces/services/credential.service.js.map +0 -1
- package/lib/esm/namespaces/services/effective-permission.service.js.map +0 -1
- package/lib/esm/namespaces/services/group-membership.service.js.map +0 -1
- package/lib/esm/namespaces/services/group.service.js.map +0 -1
- package/lib/esm/namespaces/services/index.js.map +0 -1
- package/lib/esm/namespaces/services/inheritance-block.service.js.map +0 -1
- package/lib/esm/namespaces/services/org-unit-closure.service.js.map +0 -1
- package/lib/esm/namespaces/services/org-unit-membership.service.js.map +0 -1
- package/lib/esm/namespaces/services/org-unit-profile.service.js.map +0 -1
- package/lib/esm/namespaces/services/org-unit.service.js.map +0 -1
- package/lib/esm/namespaces/services/permission.service.js.map +0 -1
- package/lib/esm/namespaces/services/principal.service.js.map +0 -1
- package/lib/esm/namespaces/services/protected-resource.service.js.map +0 -1
- package/lib/esm/namespaces/services/resource-grant.service.js.map +0 -1
- package/lib/esm/namespaces/services/resource-lifecycle.service.js.map +0 -1
- package/lib/esm/namespaces/services/role-assignment.service.js.map +0 -1
- package/lib/esm/namespaces/services/role-permission.service.js.map +0 -1
- package/lib/esm/namespaces/services/role.service.js.map +0 -1
- package/lib/esm/namespaces/services/storage-binding.service.js.map +0 -1
- package/lib/esm/namespaces/services/system-management.service.js.map +0 -1
- package/lib/esm/namespaces/services/tenant-membership.service.js.map +0 -1
- package/lib/esm/namespaces/services/tenant-profile.service.js.map +0 -1
- package/lib/esm/namespaces/services/tenant.service.js.map +0 -1
- package/lib/esm/namespaces/services/user.service.js.map +0 -1
- package/lib/esm/namespaces/types.js.map +0 -1
- package/lib/esm/namespaces/utils.js.map +0 -1
- package/lib/esm/nest/decorators.js.map +0 -1
- package/lib/esm/nest/index.js.map +0 -1
- package/lib/esm/nest/keycloakAuthHandler.js.map +0 -1
- package/lib/esm/nest/keycloakModule.js.map +0 -1
- package/lib/esm/nest/logging.js.map +0 -1
- package/lib/esm/nest/types.js.map +0 -1
- package/lib/esm/nest/utils.js.map +0 -1
- package/lib/esm/plugins/contract.js.map +0 -1
- package/lib/esm/plugins/index.js.map +0 -1
- package/lib/esm/plugins/kibana/host.js.map +0 -1
- package/lib/esm/plugins/kibana/index.js.map +0 -1
- package/lib/esm/plugins/kibana/installer.js.map +0 -1
- package/lib/esm/plugins/kibana/manifest.js.map +0 -1
- package/lib/esm/plugins/kibana/templates.js.map +0 -1
- package/lib/esm/plugins/kibana/types.js.map +0 -1
- package/lib/esm/plugins/superset/host.js.map +0 -1
- package/lib/esm/plugins/superset/index.js.map +0 -1
- package/lib/esm/plugins/superset/installer.js.map +0 -1
- package/lib/esm/plugins/superset/manifest.js.map +0 -1
- package/lib/esm/plugins/superset/templates.js.map +0 -1
- package/lib/esm/plugins/superset/types.js.map +0 -1
- package/lib/esm/redis/RedisContextLock.js.map +0 -1
- package/lib/esm/redis/RedisDispatch.js.map +0 -1
- package/lib/esm/redis/RedisPaginator.js.map +0 -1
- package/lib/esm/redis/RedisStatement.js.map +0 -1
- package/lib/esm/redis/adapter.js.map +0 -1
- package/lib/esm/redis/constants.js.map +0 -1
- package/lib/esm/redis/handlers.js.map +0 -1
- package/lib/esm/redis/index.js.map +0 -1
- package/lib/esm/redis/serialization.js.map +0 -1
- package/lib/esm/redis/types.js.map +0 -1
- package/lib/esm/secrets/InfraCredentialBootstrap.js.map +0 -1
- package/lib/esm/secrets/aws/AwsSecretEnvironment.js.map +0 -1
- package/lib/esm/secrets/aws/AwsSecretService.js.map +0 -1
- package/lib/esm/secrets/aws/AwsSecretServiceConfig.js.map +0 -1
- package/lib/esm/secrets/aws/index.js.map +0 -1
- package/lib/esm/secrets/azure/AzureKeyVaultSecretService.js.map +0 -1
- package/lib/esm/secrets/azure/AzureKeyVaultSecretServiceConfig.js.map +0 -1
- package/lib/esm/secrets/azure/AzureSecretEnvironment.js.map +0 -1
- package/lib/esm/secrets/azure/index.js.map +0 -1
- package/lib/esm/secrets/core/ClientBasedSecretService.js.map +0 -1
- package/lib/esm/secrets/core/SecretEnvironment.js.map +0 -1
- package/lib/esm/secrets/core/SecretErrors.js.map +0 -1
- package/lib/esm/secrets/core/SecretName.js.map +0 -1
- package/lib/esm/secrets/core/SecretReference.js.map +0 -1
- package/lib/esm/secrets/core/SecretSerialization.js.map +0 -1
- package/lib/esm/secrets/core/SecretService.js.map +0 -1
- package/lib/esm/secrets/core/SecretTypes.js.map +0 -1
- package/lib/esm/secrets/core/index.js.map +0 -1
- package/lib/esm/secrets/fs/FsSecretEnvironment.js.map +0 -1
- package/lib/esm/secrets/fs/FsSecretService.js.map +0 -1
- package/lib/esm/secrets/fs/FsSecretServiceConfig.js.map +0 -1
- package/lib/esm/secrets/fs/index.js.map +0 -1
- package/lib/esm/secrets/gcp/GcpSecretEnvironment.js.map +0 -1
- package/lib/esm/secrets/gcp/GcpSecretManagerService.js.map +0 -1
- package/lib/esm/secrets/gcp/GcpSecretManagerServiceConfig.js.map +0 -1
- package/lib/esm/secrets/gcp/index.js.map +0 -1
- package/lib/esm/secrets/index.js.map +0 -1
- package/lib/esm/secrets/model/ModelSecretCrypto.js.map +0 -1
- package/lib/esm/secrets/model/ModelSecretEnvironment.js.map +0 -1
- package/lib/esm/secrets/model/ModelSecretService.js.map +0 -1
- package/lib/esm/secrets/model/ModelSecretServiceConfig.js.map +0 -1
- package/lib/esm/secrets/model/Secret.js.map +0 -1
- package/lib/esm/secrets/model/index.js.map +0 -1
- package/lib/esm/secrets/onepassword/OnePasswordSecretEnvironment.js.map +0 -1
- package/lib/esm/secrets/onepassword/OnePasswordSecretService.js.map +0 -1
- package/lib/esm/secrets/onepassword/OnePasswordSecretServiceConfig.js.map +0 -1
- package/lib/esm/secrets/onepassword/index.js.map +0 -1
- package/lib/esm/secrets/vault/VaultSecretEnvironment.js.map +0 -1
- package/lib/esm/secrets/vault/VaultSecretService.js.map +0 -1
- package/lib/esm/secrets/vault/VaultSecretServiceConfig.js.map +0 -1
- package/lib/esm/secrets/vault/index.js.map +0 -1
- package/lib/esm/sftp/aws/AwsSftpEnvironment.js.map +0 -1
- package/lib/esm/sftp/aws/AwsSftpService.js.map +0 -1
- package/lib/esm/sftp/core/SftpEnvironment.js.map +0 -1
- package/lib/esm/sftp/core/SftpSource.js.map +0 -1
- package/lib/esm/sftp/core/index.js.map +0 -1
- package/lib/esm/sftp/index.js.map +0 -1
- package/lib/esm/sftp/ssh2/Ssh2SftpEnvironment.js.map +0 -1
- package/lib/esm/sftp/ssh2/Ssh2SftpService.js.map +0 -1
- package/lib/esm/shared/environmentValue.js.map +0 -1
- package/lib/esm/shared/http/HttpApiService.js.map +0 -1
- package/lib/esm/shared/http/hermeticBoot.js.map +0 -1
- package/lib/esm/shared/http/index.js.map +0 -1
- package/lib/esm/shared/runtime.js.map +0 -1
- package/lib/esm/user-requests/index.js.map +0 -1
- package/lib/esm/utils.js.map +0 -1
|
@@ -221,5 +221,5 @@ function buildEmail(input) {
|
|
|
221
221
|
messageId,
|
|
222
222
|
};
|
|
223
223
|
}
|
|
224
|
-
//# sourceMappingURL=mime.js.map
|
|
225
|
-
//# sourceMappingURL=mime.cjs.map
|
|
224
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWltZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21tcy9lbWFpbC9taW1lLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FrQkc7QUFDSCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQWtEMUQsTUFBTSxZQUFZLEdBQUcsZ0JBQWdCLENBQUM7QUFFdEM7Ozs7R0FJRztBQUNILDRHQUE0RztBQUM1RyxNQUFNLGlCQUFpQixHQUFHLHNCQUFzQixDQUFDO0FBRWpEOzs7OztHQUtHO0FBQ0gsTUFBTSxhQUFhLEdBQ2pCLHNJQUFzSSxDQUFDO0FBRXpJOzs7O0dBSUc7QUFDSCxNQUFNLFlBQVksR0FDaEIsaUhBQWlILENBQUM7QUFFcEg7Ozs7OztHQU1HO0FBQ0gsU0FBUyx1QkFBdUIsQ0FBQyxLQUFhLEVBQUUsS0FBYTtJQUMzRCxJQUFJLGlCQUFpQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQ2xDLE1BQU0sSUFBSSxlQUFlLENBQ3ZCLFNBQVMsS0FBSyx5Q0FBeUMsQ0FDeEQsQ0FBQztJQUNKLENBQUM7QUFDSCxDQUFDO0FBRUQ7Ozs7Ozs7R0FPRztBQUNILE1BQU0sVUFBVSxrQkFBa0IsQ0FDaEMsS0FBYSxFQUNiLEtBQUssR0FBRyxTQUFTO0lBRWpCLHVCQUF1QixDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQztJQUN0QyxNQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDN0IsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztRQUNqQyxNQUFNLElBQUksZUFBZSxDQUFDLFNBQVMsS0FBSyxpQ0FBaUMsQ0FBQyxDQUFDO0lBQzdFLENBQUM7SUFDRCxPQUFPLE9BQU8sQ0FBQztB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QztJQUNkLE1BQU0sT0FBTyxHQUFHO1FBQ2QsU0FBUyxJQUFJLEVBQUU7UUFDZixPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUU7UUFDdEIsR0FBRyxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQzlDLFlBQVksWUFBWSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsRUFBRTtRQUN6QyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLGFBQWEsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQzVDLFNBQVMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxXQUFXLEVBQUUsRUFBRTtRQUNuQyxlQUFlLFNBQVMsRUFBRTtRQUMxQixtQkFBbUI7S0FDcEIsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDZixPQUFPO1FBQ0wsR0FBRyxFQUFFLEdBQUcsT0FBTyxPQUFPLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRTtRQUNyQyxJQUFJO1FBQ0osVUFBVTtRQUNWLFNBQVM7S0FDVixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQG1vZHVsZSBpbnRlZ3JhdGlvbnMvY29tbXMvZW1haWwvbWltZVxuICogQHN1bW1hcnkgUkZDIDUzMjIvTUlNRSBtZXNzYWdlIGJ1aWxkaW5nIGFuZCBhZGRyZXNzIGhhbmRsaW5nIGZvciB0aGUgRW1haWwgc2VydmljZS5cbiAqIEBkZXNjcmlwdGlvbiBCdWlsZHMgYSBjb21wbGV0ZSByYXcgTUlNRSBtZXNzYWdlIGZyb20gYW5cbiAqIHtAbGluayBFbWFpbE1lc3NhZ2VJbnB1dH06IFVURi04IGhlYWRlcnMgYXJlIFJGQyAyMDQ3IGJhc2U2NC13b3JkIGVuY29kZWRcbiAqICh7QGxpbmsgZW5jb2RlSGVhZGVyfSksIHJlY2lwaWVudCBsaXN0cyBhcmUgY29tbWEtc3BsaXQgYW5kIHRyaW1tZWRcbiAqICh7QGxpbmsgcGFyc2VBZGRyZXNzTGlzdH0pLCBhbmQgdGhlIGJvZHkgYmVjb21lcyBhXG4gKiBgdGV4dC9wbGFpbmAvYHRleHQvaHRtbGAgYG11bHRpcGFydC9hbHRlcm5hdGl2ZWAgKHdoZW4gYm90aCBhcmUgcHJlc2VudCksXG4gKiBhIHNpbmdsZSBwYXJ0IG90aGVyd2lzZSDigJQgd3JhcHBlZCBpbiBgbXVsdGlwYXJ0L21peGVkYCB3aXRoIGJhc2U2NFxuICogYXR0YWNobWVudHMgd2hlbiBhbnkgYXJlIHN1cHBsaWVkLiBCb3VuZGFyeSBtYXJrZXJzIGFuZCB0aGUgYE1lc3NhZ2UtSURgXG4gKiBjYXJyeSBhIHJhbmRvbSBVVUlEIHBlciBtZXNzYWdlLlxuICpcbiAqIEV2ZXJ5IGFkZHJlc3MsIGF0dGFjaG1lbnQgZmlsZW5hbWUsIGFuZCBjb250ZW50IHR5cGUgaXMgdmFsaWRhdGVkIGFnYWluc3RcbiAqIGNvbnNlcnZhdGl2ZSBhbGxvd2xpc3RzICh7QGxpbmsgYXNzZXJ0RW1haWxBZGRyZXNzfSBhbmQgZnJpZW5kcykgYmVmb3JlIGl0IGlzXG4gKiB3cml0dGVuIGludG8gYSBoZWFkZXIsIHNvIHdvcmtmbG93IGlucHV0IGNhbiBuZXZlciBpbmplY3QgTUlNRSBoZWFkZXJzIG9yXG4gKiBTTVRQIGNvbW1hbmRzLiBBbGwgdmFsaWRhdGlvbiBhbmQgc3RydWN0dXJhbCBmYWlsdXJlcyAobWlzc2luZyByZWNpcGllbnQsXG4gKiBmb3JiaWRkZW4gY29udHJvbCBjaGFyYWN0ZXJzLCBub24tbWFpbGJveCBhZGRyZXNzZXMsIHVuc2FmZSBmaWxlbmFtZXMgb3JcbiAqIGNvbnRlbnQgdHlwZXMpIHRocm93IGRlY2FmIGBCYWRSZXF1ZXN0RXJyb3Jgcy5cbiAqL1xuaW1wb3J0IHsgcmFuZG9tVVVJRCB9IGZyb20gXCJub2RlOmNyeXB0b1wiO1xuaW1wb3J0IHsgQmFkUmVxdWVzdEVycm9yIH0gZnJvbSBcIkBkZWNhZi10cy9kYi1kZWNvcmF0b3JzXCI7XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uIEEgbWVzc2FnZSBhdHRhY2htZW50XG4gKiBAc3VtbWFyeSBDb250ZW50IGlzIGJhc2U2NCB0ZXh0IGJ5IGRlZmF1bHQ7IHdpdGggYGVuY29kaW5nOiBcInV0ZjhcImAgdGhlXG4gKiBidWlsZGVyIGJhc2U2NC1lbmNvZGVzIHRoZSBVVEYtOCBjb250ZW50IGl0c2VsZi5cbiAqIEBjYXRlZ29yeSBDb21tc1xuICogQG1lbWJlck9mIG1vZHVsZTppbnRlZ3JhdGlvbnMvY29tbXMvZW1haWwvbWltZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIEVtYWlsQXR0YWNobWVudCB7XG4gIGZpbGVuYW1lOiBzdHJpbmc7XG4gIGNvbnRlbnQ6IHN0cmluZztcbiAgZW5jb2Rpbmc/OiBcImJhc2U2NFwiIHwgXCJ1dGY4XCI7XG4gIGNvbnRlbnRUeXBlPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIEBkZXNjcmlwdGlvbiBJbnB1dCBmb3IgYnVpbGRpbmcgYSByYXcgTUlNRSBtZXNzYWdlXG4gKiBAc3VtbWFyeSBDYXJyaWVzIHRoZSBzZW5kZXIsIHJlY2lwaWVudHMgKHNpbmdsZSBhZGRyZXNzLCBjb21tYS1zZXBhcmF0ZWRcbiAqIHN0cmluZywgb3IgYXJyYXkpLCBzdWJqZWN0LCBvcHRpb25hbCB0ZXh0IGFuZCBIVE1MIGJvZGllcywgYFJlcGx5LVRvYCwgYW5kXG4gKiBhdHRhY2htZW50cy5cbiAqIEBjYXRlZ29yeSBDb21tc1xuICogQG1lbWJlck9mIG1vZHVsZTppbnRlZ3JhdGlvbnMvY29tbXMvZW1haWwvbWltZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIEVtYWlsTWVzc2FnZUlucHV0IHtcbiAgZnJvbTogc3RyaW5nO1xuICB0bzogc3RyaW5nIHwgc3RyaW5nW107XG4gIGNjPzogc3RyaW5nIHwgc3RyaW5nW107XG4gIGJjYz86IHN0cmluZyB8IHN0cmluZ1tdO1xuICBzdWJqZWN0OiBzdHJpbmc7XG4gIHRleHQ/OiBzdHJpbmc7XG4gIGh0bWw/OiBzdHJpbmc7XG4gIHJlcGx5VG8/OiBzdHJpbmc7XG4gIGF0dGFjaG1lbnRzPzogRW1haWxBdHRhY2htZW50W107XG59XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uIFRoZSBidWlsdCBNSU1FIG1lc3NhZ2UgcmVhZHkgZm9yIGRlbGl2ZXJ5XG4gKiBAc3VtbWFyeSBDYXJyaWVzIHRoZSByYXcgUkZDIDUzMjIgdGV4dCwgdGhlIHJlc29sdmVkIHNlbmRlciwgdGhlIGZsYXR0ZW5lZFxuICogcmVjaXBpZW50IGxpc3QgKFRvL0NjL0JjYyksIGFuZCB0aGUgZ2VuZXJhdGVkIGBNZXNzYWdlLUlEYC5cbiAqIEBjYXRlZ29yeSBDb21tc1xuICogQG1lbWJlck9mIG1vZHVsZTppbnRlZ3JhdGlvbnMvY29tbXMvZW1haWwvbWltZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJ1aWx0RW1haWwge1xuICByYXc6IHN0cmluZztcbiAgZnJvbTogc3RyaW5nO1xuICByZWNpcGllbnRzOiBzdHJpbmdbXTtcbiAgbWVzc2FnZUlkOiBzdHJpbmc7XG59XG5cbmNvbnN0IEFTQ0lJX0hFQURFUiA9IC9eW1xceDIwLVxceDdFXSokLztcblxuLyoqXG4gKiBDaGFyYWN0ZXJzIHRoYXQgbXVzdCBuZXZlciBhcHBlYXIgaW4gYW4gYWRkcmVzcywgYXR0YWNobWVudCBmaWxlbmFtZSwgb3JcbiAqIGNvbnRlbnQgdHlwZTogQ1IvTEYgKGhlYWRlciBhbmQgU01UUC1jb21tYW5kIGluamVjdGlvbiksIE5VTCwgYW5kIGFueSBvdGhlclxuICogQzAvQzEgY29udHJvbCBjaGFyYWN0ZXIuXG4gKi9cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb250cm9sLXJlZ2V4IC0tIG1hdGNoaW5nIGNvbnRyb2wgY2hhcmFjdGVycyBpcyB0aGUgcHVycG9zZSBvZiB0aGlzIGFsbG93bGlzdFxuY29uc3QgRk9SQklEREVOX0NPTlRST0wgPSAvW1xceDAwLVxceDFGXFx4N0YtXFx4OUZdLztcblxuLyoqXG4gKiBDb25zZXJ2YXRpdmUgbWFpbGJveCBhbGxvd2xpc3Q6IGEgZG90LWF0b20gbG9jYWwgcGFydCBmb2xsb3dlZCBieSBhXG4gKiBkb3Qtc2VwYXJhdGVkIGRvbWFpbi4gRGlzcGxheSBuYW1lcyBhcmUgZGVsaWJlcmF0ZWx5IG5vdCBhY2NlcHRlZCBiZWNhdXNlXG4gKiB0aGUgZW52ZWxvcGUgKGBNQUlMIEZST01gL2BSQ1BUIFRPYCkgYW5kIHRoZSBNSU1FIGhlYWRlcnMgc2hhcmUgdGhlIHNhbWVcbiAqIHZhbGlkYXRlZCB2YWx1ZS5cbiAqL1xuY29uc3QgRU1BSUxfQUREUkVTUyA9XG4gIC9eW0EtWmEtejAtOS4hIyQlJicqKy89P15fYHt8fX4tXStAW0EtWmEtejAtOV0oPzpbQS1aYS16MC05LV17MCw2MX1bQS1aYS16MC05XSk/KD86XFwuW0EtWmEtejAtOV0oPzpbQS1aYS16MC05LV17MCw2MX1bQS1aYS16MC05XSk/KSskLztcblxuLyoqXG4gKiBBbGxvd2xpc3RlZCBNSU1FIGNvbnRlbnQgdHlwZTogYHR5cGUvc3VidHlwZWAgcGx1cyBvcHRpb25hbFxuICogYDsgcGFyYW1ldGVyPXZhbHVlYCBwYWlycyB3aG9zZSB2YWx1ZXMgYXJlIHRva2VucyBvciBxdW90ZWQgc3RyaW5ncyB3aXRob3V0XG4gKiBjb250cm9sIGNoYXJhY3RlcnMsIHF1b3Rlcywgb3IgYmFja3NsYXNoZXMuXG4gKi9cbmNvbnN0IENPTlRFTlRfVFlQRSA9XG4gIC9eW0EtWmEtejAtOSEjJCZeXy4rLV0rXFwvW0EtWmEtejAtOSEjJCZeXy4rLV0rKD86XFxzKjtcXHMqW0EtWmEtejAtOS1dKz0oPzpcIlteXCJcXFxcXFxyXFxuXSpcInxbQS1aYS16MC05ISMkJl5fListXSspKSokLztcblxuLyoqXG4gKiBSZWplY3RzIGFueSB2YWx1ZSBjYXJyeWluZyBDUi9MRiwgTlVMLCBvciBhbm90aGVyIGNvbnRyb2wgY2hhcmFjdGVyLlxuICpcbiAqIEBwYXJhbSB2YWx1ZSAtIFZhbHVlIGFib3V0IHRvIGJlIHdyaXR0ZW4gaW50byBhIGhlYWRlciwgU01UUCBjb21tYW5kLCBvciBNSU1FIHBhcnQuXG4gKiBAcGFyYW0gZmllbGQgLSBIdW1hbi1yZWFkYWJsZSBmaWVsZCBuYW1lIHVzZWQgaW4gdGhlIGVycm9yIG1lc3NhZ2UuXG4gKiBAdGhyb3dzIHtCYWRSZXF1ZXN0RXJyb3J9IHdoZW4gdGhlIHZhbHVlIGNvbnRhaW5zIGEgZm9yYmlkZGVuIGNvbnRyb2wgY2hhcmFjdGVyLlxuICovXG5mdW5jdGlvbiByZWplY3RDb250cm9sQ2hhcmFjdGVycyh2YWx1ZTogc3RyaW5nLCBmaWVsZDogc3RyaW5nKTogdm9pZCB7XG4gIGlmIChGT1JCSURERU5fQ09OVFJPTC50ZXN0KHZhbHVlKSkge1xuICAgIHRocm93IG5ldyBCYWRSZXF1ZXN0RXJyb3IoXG4gICAgICBgRW1haWwgJHtmaWVsZH0gY29udGFpbnMgYSBmb3JiaWRkZW4gY29udHJvbCBjaGFyYWN0ZXJgXG4gICAgKTtcbiAgfVxufVxuXG4vKipcbiAqIFZhbGlkYXRlcyBhIG1haWxib3ggYWRkcmVzcyBhZ2FpbnN0IHRoZSBhbGxvd2xpc3QgYW5kIHJldHVybnMgaXQgdHJpbW1lZC5cbiAqXG4gKiBAcGFyYW0gdmFsdWUgLSBDYW5kaWRhdGUgYWRkcmVzcy5cbiAqIEBwYXJhbSBmaWVsZCAtIEh1bWFuLXJlYWRhYmxlIGZpZWxkIG5hbWUgdXNlZCBpbiB0aGUgZXJyb3IgbWVzc2FnZS5cbiAqIEByZXR1cm5zIFRoZSB0cmltbWVkLCB2YWxpZGF0ZWQgbWFpbGJveCBhZGRyZXNzLlxuICogQHRocm93cyB7QmFkUmVxdWVzdEVycm9yfSB3aGVuIHRoZSBhZGRyZXNzIGNvbnRhaW5zIGNvbnRyb2wgY2hhcmFjdGVycyBvciBpcyBub3QgYSBiYXJlIG1haWxib3guXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhc3NlcnRFbWFpbEFkZHJlc3MoXG4gIHZhbHVlOiBzdHJpbmcsXG4gIGZpZWxkID0gXCJhZGRyZXNzXCJcbik6IHN0cmluZyB7XG4gIHJlamVjdENvbnRyb2xDaGFyYWN0ZXJzKHZhbHVlLCBmaWVsZCk7XG4gIGNvbnN0IGFkZHJlc3MgPSB2YWx1ZS50cmltKCk7XG4gIGlmICghRU1BSUxfQUREUkVTUy50ZXN0KGFkZHJlc3MpKSB7XG4gICAgdGhyb3cgbmV3IEJhZFJlcXVlc3RFcnJvcihgRW1haWwgJHtmaWVsZH0gaXMgbm90IGEgdmFsaWQgbWFpbGJveCBhZGRyZXNzYCk7XG4gIH1cbiAgcmV0dXJuIGFkZHJlc3M7XG59XG5cbi8qKlxuICogVmFsaWRhdGVzIGFuIGF0dGFjaG1lbnQgZmlsZW5hbWUgZm9yIHNhZmUgaW5jbHVzaW9uIGluIGEgcXVvdGVkIE1JTUUgaGVhZGVyLlxuICpcbiAqIEBwYXJhbSB2YWx1ZSAtIENhbmRpZGF0ZSBmaWxlbmFtZS5cbiAqIEB0aHJvd3Mge0JhZFJlcXVlc3RFcnJvcn0gd2hlbiB0aGUgZmlsZW5hbWUgY2FycmllcyBjb250cm9sIGNoYXJhY3RlcnMsIGEgcXVvdGUsIG9yIGEgYmFja3NsYXNoLlxuICovXG5mdW5jdGlvbiBhc3NlcnRBdHRhY2htZW50RmlsZW5hbWUodmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICByZWplY3RDb250cm9sQ2hhcmFjdGVycyh2YWx1ZSwgXCJhdHRhY2htZW50IGZpbGVuYW1lXCIpO1xuICBpZiAoL1tcIlxcXFxdLy50ZXN0KHZhbHVlKSkge1xuICAgIHRocm93IG5ldyBCYWRSZXF1ZXN0RXJyb3IoXG4gICAgICBcIkVtYWlsIGF0dGFjaG1lbnQgZmlsZW5hbWUgY29udGFpbnMgYSBmb3JiaWRkZW4gY2hhcmFjdGVyXCJcbiAgICApO1xuICB9XG59XG5cbi8qKlxuICogVmFsaWRhdGVzIGFuIGF0dGFjaG1lbnQgY29udGVudCB0eXBlIGFnYWluc3QgdGhlIE1JTUUgYWxsb3dsaXN0LlxuICpcbiAqIEBwYXJhbSB2YWx1ZSAtIERlY2xhcmVkIGNvbnRlbnQgdHlwZS5cbiAqIEB0aHJvd3Mge0JhZFJlcXVlc3RFcnJvcn0gd2hlbiB0aGUgdmFsdWUgaXMgbm90IGFuIGFsbG93bGlzdGVkIGB0eXBlL3N1YnR5cGVgIHdpdGggc2FmZSBwYXJhbWV0ZXJzLlxuICovXG5mdW5jdGlvbiBhc3NlcnRDb250ZW50VHlwZSh2YWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gIHJlamVjdENvbnRyb2xDaGFyYWN0ZXJzKHZhbHVlLCBcImF0dGFjaG1lbnQgY29udGVudCB0eXBlXCIpO1xuICBpZiAoIUNPTlRFTlRfVFlQRS50ZXN0KHZhbHVlLnRyaW0oKSkpIHtcbiAgICB0aHJvdyBuZXcgQmFkUmVxdWVzdEVycm9yKFxuICAgICAgXCJFbWFpbCBhdHRhY2htZW50IGNvbnRlbnQgdHlwZSBpcyBub3QgYW4gYWxsb3dlZCBNSU1FIHR5cGVcIlxuICAgICk7XG4gIH1cbn1cblxuLyoqXG4gKiBAZGVzY3JpcHRpb24gRW5jb2RlcyBhIE1JTUUgaGVhZGVyIHZhbHVlIHNhZmVseVxuICogQHN1bW1hcnkgUHVyZS1BU0NJSSB2YWx1ZXMgcGFzcyB0aHJvdWdoOyBhbnl0aGluZyBlbHNlIGJlY29tZXMgYW4gUkZDIDIwNDdcbiAqIGA9P1VURi04P0I/Li4uPz1gIGVuY29kZWQgd29yZC5cbiAqIEBwYXJhbSB2YWx1ZSAtIFJhdyBoZWFkZXIgdmFsdWVcbiAqIEByZXR1cm5zIFRoZSBoZWFkZXIgdmFsdWUgc2FmZSBmb3IgcmF3IG1lc3NhZ2UgdHJhbnNwb3J0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBlbmNvZGVIZWFkZXIodmFsdWU6IHN0cmluZyk6IHN0cmluZyB7XG4gIGlmIChBU0NJSV9IRUFERVIudGVzdCh2YWx1ZSkpIHJldHVybiB2YWx1ZTtcbiAgcmV0dXJuIGA9P1VURi04P0I/JHtCdWZmZXIuZnJvbSh2YWx1ZSwgXCJ1dGY4XCIpLnRvU3RyaW5nKFwiYmFzZTY0XCIpfT89YDtcbn1cblxuLyoqXG4gKiBAZGVzY3JpcHRpb24gTm9ybWFsaXplcyBhIHJlY2lwaWVudCBpbnB1dCBpbnRvIGFuIGFsbG93bGlzdGVkIGFkZHJlc3MgbGlzdFxuICogQHN1bW1hcnkgU3BsaXRzIGNvbW1hLXNlcGFyYXRlZCBzdHJpbmdzLCB0cmltcyBlbnRyaWVzLCBkcm9wcyBlbXB0aWVzLCBhbmRcbiAqIHZhbGlkYXRlcyBldmVyeSByZW1haW5pbmcgZW50cnkgYXMgYSBiYXJlIG1haWxib3ggYWRkcmVzcy4gVmFsdWVzIGNhcnJ5aW5nXG4gKiBDUi9MRiwgTlVMLCBvciBvdGhlciBjb250cm9sIGNoYXJhY3RlcnMgYXJlIHJlamVjdGVkIG91dHJpZ2h0IHNvIHdvcmtmbG93XG4gKiBpbnB1dCBjYW4gbmV2ZXIgaW5qZWN0IE1JTUUgaGVhZGVycyBvciBTTVRQIGVudmVsb3BlIGNvbW1hbmRzLlxuICogQHBhcmFtIHZhbHVlIC0gU2luZ2xlIGFkZHJlc3MsIGNvbW1hLXNlcGFyYXRlZCBzdHJpbmcsIGFycmF5LCBvciBgdW5kZWZpbmVkYFxuICogQHJldHVybnMgVGhlIHRyaW1tZWQsIHZhbGlkYXRlZCBsaXN0IG9mIGFkZHJlc3Nlc1xuICogQHRocm93cyB7QmFkUmVxdWVzdEVycm9yfSB3aGVuIGFuIGVudHJ5IGlzIG5vdCBhIHZhbGlkIG1haWxib3ggYWRkcmVzc1xuICovXG5leHBvcnQgZnVuY3Rpb24gcGFyc2VBZGRyZXNzTGlzdChcbiAgdmFsdWU6IHN0cmluZyB8IHN0cmluZ1tdIHwgdW5kZWZpbmVkXG4pOiBzdHJpbmdbXSB7XG4gIGlmICghdmFsdWUpIHJldHVybiBbXTtcbiAgY29uc3QgdmFsdWVzID0gQXJyYXkuaXNBcnJheSh2YWx1ZSkgPyB2YWx1ZSA6IFt2YWx1ZV07XG4gIHJldHVybiB2YWx1ZXNcbiAgICAuZmxhdE1hcCgoZW50cnkpID0+IGVudHJ5LnNwbGl0KFwiLFwiKSlcbiAgICAubWFwKChlbnRyeSkgPT4gZW50cnkudHJpbSgpKVxuICAgIC5maWx0ZXIoKGVudHJ5KSA9PiBlbnRyeS5sZW5ndGggPiAwKVxuICAgIC5tYXAoKGVudHJ5KSA9PiBhc3NlcnRFbWFpbEFkZHJlc3MoZW50cnksIFwicmVjaXBpZW50XCIpKTtcbn1cblxuZnVuY3Rpb24gYmFzZTY0TGluZXModmFsdWU6IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiBCdWZmZXIuZnJvbSh2YWx1ZSwgXCJ1dGY4XCIpXG4gICAgLnRvU3RyaW5nKFwiYmFzZTY0XCIpXG4gICAgLnJlcGxhY2UoLyguezc2fSkvZywgXCIkMVxcclxcblwiKTtcbn1cblxuZnVuY3Rpb24gdGV4dFBhcnQoY29udGVudFR5cGU6IHN0cmluZywgdmFsdWU6IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiBgQ29udGVudC1UeXBlOiAke2NvbnRlbnRUeXBlfTsgY2hhcnNldD11dGYtOFxcclxcbkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IGJhc2U2NFxcclxcblxcclxcbiR7YmFzZTY0TGluZXMoXG4gICAgdmFsdWVcbiAgKX1gO1xufVxuXG5mdW5jdGlvbiBib2R5RW50aXR5KGlucHV0OiBFbWFpbE1lc3NhZ2VJbnB1dCk6IHN0cmluZyB7XG4gIGlmIChpbnB1dC50ZXh0ICE9PSB1bmRlZmluZWQgJiYgaW5wdXQuaHRtbCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgY29uc3QgYm91bmRhcnkgPSBgYWx0LSR7cmFuZG9tVVVJRCgpfWA7XG4gICAgcmV0dXJuIFtcbiAgICAgIGBDb250ZW50LVR5cGU6IG11bHRpcGFydC9hbHRlcm5hdGl2ZTsgYm91bmRhcnk9XCIke2JvdW5kYXJ5fVwiYCxcbiAgICAgIFwiXCIsXG4gICAgICBgLS0ke2JvdW5kYXJ5fWAsXG4gICAgICB0ZXh0UGFydChcInRleHQvcGxhaW5cIiwgaW5wdXQudGV4dCksXG4gICAgICBgLS0ke2JvdW5kYXJ5fWAsXG4gICAgICB0ZXh0UGFydChcInRleHQvaHRtbFwiLCBpbnB1dC5odG1sKSxcbiAgICAgIGAtLSR7Ym91bmRhcnl9LS1gLFxuICAgIF0uam9pbihcIlxcclxcblwiKTtcbiAgfVxuICBpZiAoaW5wdXQuaHRtbCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHRleHRQYXJ0KFwidGV4dC9odG1sXCIsIGlucHV0Lmh0bWwpO1xuICB9XG4gIHJldHVybiB0ZXh0UGFydChcInRleHQvcGxhaW5cIiwgaW5wdXQudGV4dCA/PyBcIlwiKTtcbn1cblxuZnVuY3Rpb24gYXR0YWNobWVudFBhcnQoYXR0YWNobWVudDogRW1haWxBdHRhY2htZW50KTogc3RyaW5nIHtcbiAgY29uc3QgY29udGVudCA9XG4gICAgYXR0YWNobWVudC5lbmNvZGluZyA9PT0gXCJ1dGY4XCJcbiAgICAgID8gYmFzZTY0TGluZXMoYXR0YWNobWVudC5jb250ZW50KVxuICAgICAgOiBhdHRhY2htZW50LmNvbnRlbnQucmVwbGFjZSgvXFxyP1xcbi9nLCBcIlwiKTtcbiAgY29uc3QgY29udGVudFR5cGUgPSBhdHRhY2htZW50LmNvbnRlbnRUeXBlID8/IFwiYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtXCI7XG4gIGFzc2VydEF0dGFjaG1lbnRGaWxlbmFtZShhdHRhY2htZW50LmZpbGVuYW1lKTtcbiAgYXNzZXJ0Q29udGVudFR5cGUoY29udGVudFR5cGUpO1xuICByZXR1cm4gW1xuICAgIGBDb250ZW50LVR5cGU6ICR7Y29udGVudFR5cGV9OyBuYW1lPVwiJHtlbmNvZGVIZWFkZXIoYXR0YWNobWVudC5maWxlbmFtZSl9XCJgLFxuICAgIFwiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogYmFzZTY0XCIsXG4gICAgYENvbnRlbnQtRGlzcG9zaXRpb246IGF0dGFjaG1lbnQ7IGZpbGVuYW1lPVwiJHtlbmNvZGVIZWFkZXIoXG4gICAgICBhdHRhY2htZW50LmZpbGVuYW1lXG4gICAgKX1cImAsXG4gICAgXCJcIixcbiAgICBjb250ZW50LFxuICBdLmpvaW4oXCJcXHJcXG5cIik7XG59XG5cbmZ1bmN0aW9uIGVudGl0eShpbnB1dDogRW1haWxNZXNzYWdlSW5wdXQpOiBzdHJpbmcge1xuICBjb25zdCBhdHRhY2htZW50cyA9IGlucHV0LmF0dGFjaG1lbnRzID8/IFtdO1xuICBpZiAoYXR0YWNobWVudHMubGVuZ3RoID09PSAwKSByZXR1cm4gYm9keUVudGl0eShpbnB1dCk7XG4gIGNvbnN0IGJvdW5kYXJ5ID0gYG1peC0ke3JhbmRvbVVVSUQoKX1gO1xuICBjb25zdCBwYXJ0cyA9IFtib2R5RW50aXR5KGlucHV0KSwgLi4uYXR0YWNobWVudHMubWFwKGF0dGFjaG1lbnRQYXJ0KV07XG4gIHJldHVybiBgQ29udGVudC1UeXBlOiBtdWx0aXBhcnQvbWl4ZWQ7IGJvdW5kYXJ5PVwiJHtib3VuZGFyeX1cIlxcclxcblxcclxcbiR7cGFydHNcbiAgICAubWFwKChwYXJ0KSA9PiBgLS0ke2JvdW5kYXJ5fVxcclxcbiR7cGFydH1gKVxuICAgIC5qb2luKFwiXFxyXFxuXCIpfVxcclxcbi0tJHtib3VuZGFyeX0tLWA7XG59XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uIEJ1aWxkcyB0aGUgY29tcGxldGUgcmF3IE1JTUUgbWVzc2FnZVxuICogQHN1bW1hcnkgR2VuZXJhdGVzIHRoZSBgTWVzc2FnZS1JRGAsIHJlc29sdmVzIHJlY2lwaWVudHMgKHRocm93aW5nIHdoZW5cbiAqIG5vbmUgcmVtYWluKSwgZW1pdHMgdGhlIHN0YW5kYXJkIGhlYWRlcnMsIGFuZCBhc3NlbWJsZXMgdGhlIGJvZHkgZW50aXR5XG4gKiAoYWx0ZXJuYXRpdmUgdGV4dC9IVE1MIHBhcnRzLCBwbHVzIGF0dGFjaG1lbnRzIHdoZW4gcHJlc2VudCkuXG4gKiBAcGFyYW0gaW5wdXQgLSBNZXNzYWdlIGlucHV0XG4gKiBAcmV0dXJucyBUaGUgYnVpbHQgbWVzc2FnZSB3aXRoIHJhdyB0ZXh0LCBzZW5kZXIsIHJlY2lwaWVudHMsIGFuZCBgTWVzc2FnZS1JRGBcbiAqIEB0aHJvd3Mge0JhZFJlcXVlc3RFcnJvcn0gd2hlbiB0aGUgbWVzc2FnZSBoYXMgbm8gcmVjaXBpZW50IG9yIGFueSBhZGRyZXNzLFxuICogICBhdHRhY2htZW50IGZpbGVuYW1lLCBvciBjb250ZW50IHR5cGUgZmFpbHMgdmFsaWRhdGlvblxuICovXG5leHBvcnQgZnVuY3Rpb24gYnVpbGRFbWFpbChpbnB1dDogRW1haWxNZXNzYWdlSW5wdXQpOiBCdWlsdEVtYWlsIHtcbiAgY29uc3QgbWVzc2FnZUlkID0gYDwke3JhbmRvbVVVSUQoKX1AYXMtZ3JhcGg+YDtcbiAgY29uc3QgZnJvbSA9IGFzc2VydEVtYWlsQWRkcmVzcyhpbnB1dC5mcm9tLCBcInNlbmRlclwiKTtcbiAgY29uc3QgdG8gPSBwYXJzZUFkZHJlc3NMaXN0KGlucHV0LnRvKTtcbiAgY29uc3QgY2MgPSBwYXJzZUFkZHJlc3NMaXN0KGlucHV0LmNjKTtcbiAgY29uc3QgYmNjID0gcGFyc2VBZGRyZXNzTGlzdChpbnB1dC5iY2MpO1xuICBjb25zdCByZWNpcGllbnRzID0gWy4uLnRvLCAuLi5jYywgLi4uYmNjXTtcbiAgaWYgKHJlY2lwaWVudHMubGVuZ3RoID09PSAwKSB7XG4gICAgdGhyb3cgbmV3IEJhZFJlcXVlc3RFcnJvcihcbiAgICAgIFwiRW1haWwgbWVzc2FnZSByZXF1aXJlcyBhdCBsZWFzdCBvbmUgcmVjaXBpZW50XCJcbiAgICApO1xuICB9XG4gIGNvbnN0IHJlcGx5VG8gPSBpbnB1dC5yZXBseVRvXG4gICAgPyBhc3NlcnRFbWFpbEFkZHJlc3MoaW5wdXQucmVwbHlUbywgXCJyZXBseS10b1wiKVxuICAgIDogdW5kZWZpbmVkO1xuICBjb25zdCBoZWFkZXJzID0gW1xuICAgIGBGcm9tOiAke2Zyb219YCxcbiAgICBgVG86ICR7dG8uam9pbihcIiwgXCIpfWAsXG4gICAgLi4uKGNjLmxlbmd0aCA/IFtgQ2M6ICR7Y2Muam9pbihcIiwgXCIpfWBdIDogW10pLFxuICAgIGBTdWJqZWN0OiAke2VuY29kZUhlYWRlcihpbnB1dC5zdWJqZWN0KX1gLFxuICAgIC4uLihyZXBseVRvID8gW2BSZXBseS1UbzogJHtyZXBseVRvfWBdIDogW10pLFxuICAgIGBEYXRlOiAke25ldyBEYXRlKCkudG9VVENTdHJpbmcoKX1gLFxuICAgIGBNZXNzYWdlLUlEOiAke21lc3NhZ2VJZH1gLFxuICAgIFwiTUlNRS1WZXJzaW9uOiAxLjBcIixcbiAgXS5qb2luKFwiXFxyXFxuXCIpO1xuICByZXR1cm4ge1xuICAgIHJhdzogYCR7aGVhZGVyc31cXHJcXG4ke2VudGl0eShpbnB1dCl9YCxcbiAgICBmcm9tLFxuICAgIHJlY2lwaWVudHMsXG4gICAgbWVzc2FnZUlkLFxuICB9O1xufVxuIl19
|
|
225
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWltZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIm1pbWUuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUE4REEsZ0RBT0M7QUFnQ0Qsb0NBSUM7QUFXRCw0Q0FTQztBQThERCxnQ0E2QkM7QUF4TkQ7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWtCRztBQUNILDZDQUF5QztBQUN6QywyREFBMEQ7QUFDMUQsTUFBTSxZQUFZLEdBQUcsZ0JBQWdCLENBQUM7QUFDdEM7Ozs7R0FJRztBQUNILDRHQUE0RztBQUM1RyxNQUFNLGlCQUFpQixHQUFHLHNCQUFzQixDQUFDO0FBQ2pEOzs7OztHQUtHO0FBQ0gsTUFBTSxhQUFhLEdBQUcsc0lBQXNJLENBQUM7QUFDN0o7Ozs7R0FJRztBQUNILE1BQU0sWUFBWSxHQUFHLGlIQUFpSCxDQUFDO0FBQ3ZJOzs7Ozs7R0FNRztBQUNILFNBQVMsdUJBQXVCLENBQUMsS0FBSyxFQUFFLEtBQUs7SUFDekMsSUFBSSxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUNoQyxNQUFNLElBQUksK0JBQWUsQ0FBQyxTQUFTLEtBQUsseUNBQXlDLENBQUMsQ0FBQztJQUN2RixDQUFDO0FBQ0wsQ0FBQztBQUNEOzs7Ozs7O0dBT0c7QUFDSCxTQUFnQixrQkFBa0IsQ0FBQyxLQUFLLEVBQUUsS0FBSyxHQUFHLFNBQVM7SUFDdkQsdUJBQXVCLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3RDLE1BQU0sT0FBTyxHQUFHLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUM3QixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1FBQy9CLE1BQU0sSUFBSSwrQkFBZSxDQUFDLFNBQVMsS0FBSyxpQ0FBaUMsQ0FBQyxDQUFDO0lBQy9FLENBQUM7SUFDRCxPQUFPLE9BQU8sQ0FBQztBQUNuQixDQUFDO0FBQ0Q7Ozs7O0dBS0c7QUFDSCxTQUFTLHdCQUF3QixD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UUFDZixPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUU7UUFDdEIsR0FBRyxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQzlDLFlBQVksWUFBWSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsRUFBRTtRQUN6QyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLGFBQWEsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQzVDLFNBQVMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxXQUFXLEVBQUUsRUFBRTtRQUNuQyxlQUFlLFNBQVMsRUFBRTtRQUMxQixtQkFBbUI7S0FDdEIsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDZixPQUFPO1FBQ0gsR0FBRyxFQUFFLEdBQUcsT0FBTyxPQUFPLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRTtRQUNyQyxJQUFJO1FBQ0osVUFBVTtRQUNWLFNBQVM7S0FDWixDQUFDO0FBQ04sQ0FBQztBQUNELGt1cUJBQWt1cUIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBtb2R1bGUgaW50ZWdyYXRpb25zL2NvbW1zL2VtYWlsL21pbWVcbiAqIEBzdW1tYXJ5IFJGQyA1MzIyL01JTUUgbWVzc2FnZSBidWlsZGluZyBhbmQgYWRkcmVzcyBoYW5kbGluZyBmb3IgdGhlIEVtYWlsIHNlcnZpY2UuXG4gKiBAZGVzY3JpcHRpb24gQnVpbGRzIGEgY29tcGxldGUgcmF3IE1JTUUgbWVzc2FnZSBmcm9tIGFuXG4gKiB7QGxpbmsgRW1haWxNZXNzYWdlSW5wdXR9OiBVVEYtOCBoZWFkZXJzIGFyZSBSRkMgMjA0NyBiYXNlNjQtd29yZCBlbmNvZGVkXG4gKiAoe0BsaW5rIGVuY29kZUhlYWRlcn0pLCByZWNpcGllbnQgbGlzdHMgYXJlIGNvbW1hLXNwbGl0IGFuZCB0cmltbWVkXG4gKiAoe0BsaW5rIHBhcnNlQWRkcmVzc0xpc3R9KSwgYW5kIHRoZSBib2R5IGJlY29tZXMgYVxuICogYHRleHQvcGxhaW5gL2B0ZXh0L2h0bWxgIGBtdWx0aXBhcnQvYWx0ZXJuYXRpdmVgICh3aGVuIGJvdGggYXJlIHByZXNlbnQpLFxuICogYSBzaW5nbGUgcGFydCBvdGhlcndpc2Ug4oCUIHdyYXBwZWQgaW4gYG11bHRpcGFydC9taXhlZGAgd2l0aCBiYXNlNjRcbiAqIGF0dGFjaG1lbnRzIHdoZW4gYW55IGFyZSBzdXBwbGllZC4gQm91bmRhcnkgbWFya2VycyBhbmQgdGhlIGBNZXNzYWdlLUlEYFxuICogY2FycnkgYSByYW5kb20gVVVJRCBwZXIgbWVzc2FnZS5cbiAqXG4gKiBFdmVyeSBhZGRyZXNzLCBhdHRhY2htZW50IGZpbGVuYW1lLCBhbmQgY29udGVudCB0eXBlIGlzIHZhbGlkYXRlZCBhZ2FpbnN0XG4gKiBjb25zZXJ2YXRpdmUgYWxsb3dsaXN0cyAoe0BsaW5rIGFzc2VydEVtYWlsQWRkcmVzc30gYW5kIGZyaWVuZHMpIGJlZm9yZSBpdCBpc1xuICogd3JpdHRlbiBpbnRvIGEgaGVhZGVyLCBzbyB3b3JrZmxvdyBpbnB1dCBjYW4gbmV2ZXIgaW5qZWN0IE1JTUUgaGVhZGVycyBvclxuICogU01UUCBjb21tYW5kcy4gQWxsIHZhbGlkYXRpb24gYW5kIHN0cnVjdHVyYWwgZmFpbHVyZXMgKG1pc3NpbmcgcmVjaXBpZW50LFxuICogZm9yYmlkZGVuIGNvbnRyb2wgY2hhcmFjdGVycywgbm9uLW1haWxib3ggYWRkcmVzc2VzLCB1bnNhZmUgZmlsZW5hbWVzIG9yXG4gKiBjb250ZW50IHR5cGVzKSB0aHJvdyBkZWNhZiBgQmFkUmVxdWVzdEVycm9yYHMuXG4gKi9cbmltcG9ydCB7IHJhbmRvbVVVSUQgfSBmcm9tIFwibm9kZTpjcnlwdG9cIjtcbmltcG9ydCB7IEJhZFJlcXVlc3RFcnJvciB9IGZyb20gXCJAZGVjYWYtdHMvZGItZGVjb3JhdG9yc1wiO1xuY29uc3QgQVNDSUlfSEVBREVSID0gL15bXFx4MjAtXFx4N0VdKiQvO1xuLyoqXG4gKiBDaGFyYWN0ZXJzIHRoYXQgbXVzdCBuZXZlciBhcHBlYXIgaW4gYW4gYWRkcmVzcywgYXR0YWNobWVudCBmaWxlbmFtZSwgb3JcbiAqIGNvbnRlbnQgdHlwZTogQ1IvTEYgKGhlYWRlciBhbmQgU01UUC1jb21tYW5kIGluamVjdGlvbiksIE5VTCwgYW5kIGFueSBvdGhlclxuICogQzAvQzEgY29udHJvbCBjaGFyYWN0ZXIuXG4gKi9cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb250cm9sLXJlZ2V4IC0tIG1hdGNoaW5nIGNvbnRyb2wgY2hhcmFjdGVycyBpcyB0aGUgcHVycG9zZSBvZiB0aGlzIGFsbG93bGlzdFxuY29uc3QgRk9SQklEREVOX0NPTlRST0wgPSAvW1xceDAwLVxceDFGXFx4N0YtXFx4OUZdLztcbi8qKlxuICogQ29uc2VydmF0aXZlIG1haWxib3ggYWxsb3dsaXN0OiBhIGRvdC1hdG9tIGxvY2FsIHBhcnQgZm9sbG93ZWQgYnkgYVxuICogZG90LXNlcGFyYXRlZCBkb21haW4uIERpc3BsYXkgbmFtZXMgYXJlIGRlbGliZXJhdGVseSBub3QgYWNjZXB0ZWQgYmVjYXVzZVxuICogdGhlIGVudmVsb3BlIChgTUFJTCBGUk9NYC9gUkNQVCBUT2ApIGFuZCB0aGUgTUlNRSBoZWFkZXJzIHNoYXJlIHRoZSBzYW1lXG4gKiB2YWxpZGF0ZWQgdmFsdWUuXG4gKi9cbmNvbnN0IEVNQUlMX0FERFJFU1MgPSAvXltBLVphLXowLTkuISMkJSYnKisvPT9eX2B7fH1+LV0rQFtBLVphLXowLTldKD86W0EtWmEtejAtOS1dezAsNjF9W0EtWmEtejAtOV0pPyg/OlxcLltBLVphLXowLTldKD86W0EtWmEtejAtOS1dezAsNjF9W0EtWmEtejAtOV0pPykrJC87XG4vKipcbiAqIEFsbG93bGlzdGVkIE1JTUUgY29udGVudCB0eXBlOiBgdHlwZS9zdWJ0eXBlYCBwbHVzIG9wdGlvbmFsXG4gKiBgOyBwYXJhbWV0ZXI9dmFsdWVgIHBhaXJzIHdob3NlIHZhbHVlcyBhcmUgdG9rZW5zIG9yIHF1b3RlZCBzdHJpbmdzIHdpdGhvdXRcbiAqIGNvbnRyb2wgY2hhcmFjdGVycywgcXVvdGVzLCBvciBiYWNrc2xhc2hlcy5cbiAqL1xuY29uc3QgQ09OVEVOVF9UWVBFID0gL15bQS1aYS16MC05ISMkJl5fListXStcXC9bQS1aYS16MC05ISMkJl5fListXSsoPzpcXHMqO1xccypbQS1aYS16MC05LV0rPSg/OlwiW15cIlxcXFxcXHJcXG5dKlwifFtBLVphLXowLTkhIyQmXl8uKy1dKykpKiQvO1xuLyoqXG4gKiBSZWplY3RzIGFueSB2YWx1ZSBjYXJyeWluZyBDUi9MRiwgTlVMLCBvciBhbm90aGVyIGNvbnRyb2wgY2hhcmFjdGVyLlxuICpcbiAqIEBwYXJhbSB2YWx1ZSAtIFZhbHVlIGFib3V0IHRvIGJlIHdyaXR0ZW4gaW50byBhIGhlYWRlciwgU01UUCBjb21tYW5kLCBvciBNSU1FIHBhcnQuXG4gKiBAcGFyYW0gZmllbGQgLSBIdW1hbi1yZWFkYWJsZSBmaWVsZCBuYW1lIHVzZWQgaW4gdGhlIGVycm9yIG1lc3NhZ2UuXG4gKiBAdGhyb3dzIHtCYWRSZXF1ZXN0RXJyb3J9IHdoZW4gdGhlIHZhbHVlIGNvbnRhaW5zIGEgZm9yYmlkZGVuIGNvbnRyb2wgY2hhcmFjdGVyLlxuICovXG5mdW5jdGlvbiByZWplY3RDb250cm9sQ2hhcmFjdGVycyh2YWx1ZSwgZmllbGQpIHtcbiAgICBpZiAoRk9SQklEREVOX0NPTlRST0wudGVzdCh2YWx1ZSkpIHtcbiAgICAgICAgdGhyb3cgbmV3IEJhZFJlcXVlc3RFcnJvcihgRW1haWwgJHtmaWVsZH0gY29udGFpbnMgYSBmb3JiaWRkZW4gY29udHJvbCBjaGFyYWN0ZXJgKTtcbiAgICB9XG59XG4vKipcbiAqIFZhbGlkYXRlcyBhIG1haWxib3ggYWRkcmVzcyBhZ2FpbnN0IHRoZSBhbGxvd2xpc3QgYW5kIHJldHVybnMgaXQgdHJpbW1lZC5cbiAqXG4gKiBAcGFyYW0gdmFsdWUgLSBDYW5kaWRhdGUgYWRkcmVzcy5cbiAqIEBwYXJhbSBmaWVsZCAtIEh1bWFuLXJlYWRhYmxlIGZpZWxkIG5hbWUgdXNlZCBpbiB0aGUgZXJyb3IgbWVzc2FnZS5cbiAqIEByZXR1cm5zIFRoZSB0cmltbWVkLCB2YWxpZGF0ZWQgbWFpbGJveCBhZGRyZXNzLlxuICogQHRocm93cyB7QmFkUmVxdWVzdEVycm9yfSB3aGVuIHRoZSBhZGRyZXNzIGNvbnRhaW5zIGNvbnRyb2wgY2hhcmFjdGVycyBvciBpcyBub3QgYSBiYXJlIG1haWxib3guXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhc3NlcnRFbWFpbEFkZHJlc3ModmFsdWUsIGZpZWxkID0gXCJhZGRyZXNzXCIpIHtcbiAgICByZWplY3RDb250cm9sQ2hhcmFjdGVycyh2YWx1ZSwgZmllbGQpO1xuICAgIGNvbnN0IGFkZHJlc3MgPSB2YWx1ZS50cmltKCk7XG4gICAgaWYgKCFFTUFJTF9BRERSRVNTLnRlc3QoYWRkcmVzcykpIHtcbiAgICAgICAgdGhyb3cgbmV3IEJhZFJlcXVlc3RFcnJvcihgRW1haWwgJHtmaWVsZH0gaXMgbm90IGEgdmFsaWQgbWFpbGJveCBhZGRyZXNzYCk7XG4gICAgfVxuICAgIHJldHVybiBhZGRyZXNzO1xufVxuLyoqXG4gKiBWYWxpZGF0ZXMgYW4gYXR0YWNobWVudCBmaWxlbmFtZSBmb3Igc2FmZSBpbmNsdXNpb24gaW4gYSBxdW90ZWQgTUlNRSBoZWFkZXIuXG4gKlxuICogQHBhcmFtIHZhbHVlIC0gQ2FuZGlkYXRlIGZpbGVuYW1lLlxuICogQHRocm93cyB7QmFkUmVxdWVzdEVycm9yfSB3aGVuIHRoZSBmaWxlbmFtZSBjYXJyaWVzIGNvbnRyb2wgY2hhcmFjdGVycywgYSBxdW90ZSwgb3IgYSBiYWNrc2xhc2guXG4gKi9cbmZ1bmN0aW9uIGFzc2VydEF0dGFjaG1lbnRGaWxlbmFtZSh2YWx1ZSkge1xuICAgIHJlamVjdENvbnRyb2xDaGFyYWN0ZXJzKHZhbHVlLCBcImF0dGFjaG1lbnQgZmlsZW5hbWVcIik7XG4gICAgaWYgKC9bXCJcXFxcXS8udGVzdCh2YWx1ZSkpIHtcbiAgICAgICAgdGhyb3cgbmV3IEJhZFJlcXVlc3RFcnJvcihcIkVtYWlsIGF0dGFjaG1lbnQgZmlsZW5hbWUgY29udGFpbnMgYSBmb3JiaWRkZW4gY2hhcmFjdGVyXCIpO1xuICAgIH1cbn1cbi8qKlxuICogVmFsaWRhdGVzIGFuIGF0dGFjaG1lbnQgY29udGVudCB0eXBlIGFnYWluc3QgdGhlIE1JTUUgYWxsb3dsaXN0LlxuICpcbiAqIEBwYXJhbSB2YWx1ZSAtIERlY2xhcmVkIGNvbnRlbnQgdHlwZS5cbiAqIEB0aHJvd3Mge0JhZFJlcXVlc3RFcnJvcn0gd2hlbiB0aGUgdmFsdWUgaXMgbm90IGFuIGFsbG93bGlzdGVkIGB0eXBlL3N1YnR5cGVgIHdpdGggc2FmZSBwYXJhbWV0ZXJzLlxuICovXG5mdW5jdGlvbiBhc3NlcnRDb250ZW50VHlwZSh2YWx1ZSkge1xuICAgIHJlamVjdENvbnRyb2xDaGFyYWN0ZXJzKHZhbHVlLCBcImF0dGFjaG1lbnQgY29udGVudCB0eXBlXCIpO1xuICAgIGlmICghQ09OVEVOVF9UWVBFLnRlc3QodmFsdWUudHJpbSgpKSkge1xuICAgICAgICB0aHJvdyBuZXcgQmFkUmVxdWVzdEVycm9yKFwiRW1haWwgYXR0YWNobWVudCBjb250ZW50IHR5cGUgaXMgbm90IGFuIGFsbG93ZWQgTUlNRSB0eXBlXCIpO1xuICAgIH1cbn1cbi8qKlxuICogQGRlc2NyaXB0aW9uIEVuY29kZXMgYSBNSU1FIGhlYWRlciB2YWx1ZSBzYWZlbHlcbiAqIEBzdW1tYXJ5IFB1cmUtQVNDSUkgdmFsdWVzIHBhc3MgdGhyb3VnaDsgYW55dGhpbmcgZWxzZSBiZWNvbWVzIGFuIFJGQyAyMDQ3XG4gKiBgPT9VVEYtOD9CPy4uLj89YCBlbmNvZGVkIHdvcmQuXG4gKiBAcGFyYW0gdmFsdWUgLSBSYXcgaGVhZGVyIHZhbHVlXG4gKiBAcmV0dXJucyBUaGUgaGVhZGVyIHZhbHVlIHNhZmUgZm9yIHJhdyBtZXNzYWdlIHRyYW5zcG9ydFxuICovXG5leHBvcnQgZnVuY3Rpb24gZW5jb2RlSGVhZGVyKHZhbHVlKSB7XG4gICAgaWYgKEFTQ0lJX0hFQURFUi50ZXN0KHZhbHVlKSlcbiAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIHJldHVybiBgPT9VVEYtOD9CPyR7QnVmZmVyLmZyb20odmFsdWUsIFwidXRmOFwiKS50b1N0cmluZyhcImJhc2U2NFwiKX0/PWA7XG59XG4vKipcbiAqIEBkZXNjcmlwdGlvbiBOb3JtYWxpemVzIGEgcmVjaXBpZW50IGlucHV0IGludG8gYW4gYWxsb3dsaXN0ZWQgYWRkcmVzcyBsaXN0XG4gKiBAc3VtbWFyeSBTcGxpdHMgY29tbWEtc2VwYXJhdGVkIHN0cmluZ3MsIHRyaW1zIGVudHJpZXMsIGRyb3BzIGVtcHRpZXMsIGFuZFxuICogdmFsaWRhdGVzIGV2ZXJ5IHJlbWFpbmluZyBlbnRyeSBhcyBhIGJhcmUgbWFpbGJveCBhZGRyZXNzLiBWYWx1ZXMgY2FycnlpbmdcbiAqIENSL0xGLCBOVUwsIG9yIG90aGVyIGNvbnRyb2wgY2hhcmFjdGVycyBhcmUgcmVqZWN0ZWQgb3V0cmlnaHQgc28gd29ya2Zsb3dcbiAqIGlucHV0IGNhbiBuZXZlciBpbmplY3QgTUlNRSBoZWFkZXJzIG9yIFNNVFAgZW52ZWxvcGUgY29tbWFuZHMuXG4gKiBAcGFyYW0gdmFsdWUgLSBTaW5nbGUgYWRkcmVzcywgY29tbWEtc2VwYXJhdGVkIHN0cmluZywgYXJyYXksIG9yIGB1bmRlZmluZWRgXG4gKiBAcmV0dXJucyBUaGUgdHJpbW1lZCwgdmFsaWRhdGVkIGxpc3Qgb2YgYWRkcmVzc2VzXG4gKiBAdGhyb3dzIHtCYWRSZXF1ZXN0RXJyb3J9IHdoZW4gYW4gZW50cnkgaXMgbm90IGEgdmFsaWQgbWFpbGJveCBhZGRyZXNzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBwYXJzZUFkZHJlc3NMaXN0KHZhbHVlKSB7XG4gICAgaWYgKCF2YWx1ZSlcbiAgICAgICAgcmV0dXJuIFtdO1xuICAgIGNvbnN0IHZhbHVlcyA9IEFycmF5LmlzQXJyYXkodmFsdWUpID8gdmFsdWUgOiBbdmFsdWVdO1xuICAgIHJldHVybiB2YWx1ZXNcbiAgICAgICAgLmZsYXRNYXAoKGVudHJ5KSA9PiBlbnRyeS5zcGxpdChcIixcIikpXG4gICAgICAgIC5tYXAoKGVudHJ5KSA9PiBlbnRyeS50cmltKCkpXG4gICAgICAgIC5maWx0ZXIoKGVudHJ5KSA9PiBlbnRyeS5sZW5ndGggPiAwKVxuICAgICAgICAubWFwKChlbnRyeSkgPT4gYXNzZXJ0RW1haWxBZGRyZXNzKGVudHJ5LCBcInJlY2lwaWVudFwiKSk7XG59XG5mdW5jdGlvbiBiYXNlNjRMaW5lcyh2YWx1ZSkge1xuICAgIHJldHVybiBCdWZmZXIuZnJvbSh2YWx1ZSwgXCJ1dGY4XCIpXG4gICAgICAgIC50b1N0cmluZyhcImJhc2U2NFwiKVxuICAgICAgICAucmVwbGFjZSgvKC57NzZ9KS9nLCBcIiQxXFxyXFxuXCIpO1xufVxuZnVuY3Rpb24gdGV4dFBhcnQoY29udGVudFR5cGUsIHZhbHVlKSB7XG4gICAgcmV0dXJuIGBDb250ZW50LVR5cGU6ICR7Y29udGVudFR5cGV9OyBjaGFyc2V0PXV0Zi04XFxyXFxuQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogYmFzZTY0XFxyXFxuXFxyXFxuJHtiYXNlNjRMaW5lcyh2YWx1ZSl9YDtcbn1cbmZ1bmN0aW9uIGJvZHlFbnRpdHkoaW5wdXQpIHtcbiAgICBpZiAoaW5wdXQudGV4dCAhPT0gdW5kZWZpbmVkICYmIGlucHV0Lmh0bWwgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICBjb25zdCBib3VuZGFyeSA9IGBhbHQtJHtyYW5kb21VVUlEKCl9YDtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgIGBDb250ZW50LVR5cGU6IG11bHRpcGFydC9hbHRlcm5hdGl2ZTsgYm91bmRhcnk9XCIke2JvdW5kYXJ5fVwiYCxcbiAgICAgICAgICAgIFwiXCIsXG4gICAgICAgICAgICBgLS0ke2JvdW5kYXJ5fWAsXG4gICAgICAgICAgICB0ZXh0UGFydChcInRleHQvcGxhaW5cIiwgaW5wdXQudGV4dCksXG4gICAgICAgICAgICBgLS0ke2JvdW5kYXJ5fWAsXG4gICAgICAgICAgICB0ZXh0UGFydChcInRleHQvaHRtbFwiLCBpbnB1dC5odG1sKSxcbiAgICAgICAgICAgIGAtLSR7Ym91bmRhcnl9LS1gLFxuICAgICAgICBdLmpvaW4oXCJcXHJcXG5cIik7XG4gICAgfVxuICAgIGlmIChpbnB1dC5odG1sICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgcmV0dXJuIHRleHRQYXJ0KFwidGV4dC9odG1sXCIsIGlucHV0Lmh0bWwpO1xuICAgIH1cbiAgICByZXR1cm4gdGV4dFBhcnQoXCJ0ZXh0L3BsYWluXCIsIGlucHV0LnRleHQgPz8gXCJcIik7XG59XG5mdW5jdGlvbiBhdHRhY2htZW50UGFydChhdHRhY2htZW50KSB7XG4gICAgY29uc3QgY29udGVudCA9IGF0dGFjaG1lbnQuZW5jb2RpbmcgPT09IFwidXRmOFwiXG4gICAgICAgID8gYmFzZTY0TGluZXMoYXR0YWNobWVudC5jb250ZW50KVxuICAgICAgICA6IGF0dGFjaG1lbnQuY29udGVudC5yZXBsYWNlKC9cXHI/XFxuL2csIFwiXCIpO1xuICAgIGNvbnN0IGNvbnRlbnRUeXBlID0gYXR0YWNobWVudC5jb250ZW50VHlwZSA/PyBcImFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbVwiO1xuICAgIGFzc2VydEF0dGFjaG1lbnRGaWxlbmFtZShhdHRhY2htZW50LmZpbGVuYW1lKTtcbiAgICBhc3NlcnRDb250ZW50VHlwZShjb250ZW50VHlwZSk7XG4gICAgcmV0dXJuIFtcbiAgICAgICAgYENvbnRlbnQtVHlwZTogJHtjb250ZW50VHlwZX07IG5hbWU9XCIke2VuY29kZUhlYWRlcihhdHRhY2htZW50LmZpbGVuYW1lKX1cImAsXG4gICAgICAgIFwiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogYmFzZTY0XCIsXG4gICAgICAgIGBDb250ZW50LURpc3Bvc2l0aW9uOiBhdHRhY2htZW50OyBmaWxlbmFtZT1cIiR7ZW5jb2RlSGVhZGVyKGF0dGFjaG1lbnQuZmlsZW5hbWUpfVwiYCxcbiAgICAgICAgXCJcIixcbiAgICAgICAgY29udGVudCxcbiAgICBdLmpvaW4oXCJcXHJcXG5cIik7XG59XG5mdW5jdGlvbiBlbnRpdHkoaW5wdXQpIHtcbiAgICBjb25zdCBhdHRhY2htZW50cyA9IGlucHV0LmF0dGFjaG1lbnRzID8/IFtdO1xuICAgIGlmIChhdHRhY2htZW50cy5sZW5ndGggPT09IDApXG4gICAgICAgIHJldHVybiBib2R5RW50aXR5KGlucHV0KTtcbiAgICBjb25zdCBib3VuZGFyeSA9IGBtaXgtJHtyYW5kb21VVUlEKCl9YDtcbiAgICBjb25zdCBwYXJ0cyA9IFtib2R5RW50aXR5KGlucHV0KSwgLi4uYXR0YWNobWVudHMubWFwKGF0dGFjaG1lbnRQYXJ0KV07XG4gICAgcmV0dXJuIGBDb250ZW50LVR5cGU6IG11bHRpcGFydC9taXhlZDsgYm91bmRhcnk9XCIke2JvdW5kYXJ5fVwiXFxyXFxuXFxyXFxuJHtwYXJ0c1xuICAgICAgICAubWFwKChwYXJ0KSA9PiBgLS0ke2JvdW5kYXJ5fVxcclxcbiR7cGFydH1gKVxuICAgICAgICAuam9pbihcIlxcclxcblwiKX1cXHJcXG4tLSR7Ym91bmRhcnl9LS1gO1xufVxuLyoqXG4gKiBAZGVzY3JpcHRpb24gQnVpbGRzIHRoZSBjb21wbGV0ZSByYXcgTUlNRSBtZXNzYWdlXG4gKiBAc3VtbWFyeSBHZW5lcmF0ZXMgdGhlIGBNZXNzYWdlLUlEYCwgcmVzb2x2ZXMgcmVjaXBpZW50cyAodGhyb3dpbmcgd2hlblxuICogbm9uZSByZW1haW4pLCBlbWl0cyB0aGUgc3RhbmRhcmQgaGVhZGVycywgYW5kIGFzc2VtYmxlcyB0aGUgYm9keSBlbnRpdHlcbiAqIChhbHRlcm5hdGl2ZSB0ZXh0L0hUTUwgcGFydHMsIHBsdXMgYXR0YWNobWVudHMgd2hlbiBwcmVzZW50KS5cbiAqIEBwYXJhbSBpbnB1dCAtIE1lc3NhZ2UgaW5wdXRcbiAqIEByZXR1cm5zIFRoZSBidWlsdCBtZXNzYWdlIHdpdGggcmF3IHRleHQsIHNlbmRlciwgcmVjaXBpZW50cywgYW5kIGBNZXNzYWdlLUlEYFxuICogQHRocm93cyB7QmFkUmVxdWVzdEVycm9yfSB3aGVuIHRoZSBtZXNzYWdlIGhhcyBubyByZWNpcGllbnQgb3IgYW55IGFkZHJlc3MsXG4gKiAgIGF0dGFjaG1lbnQgZmlsZW5hbWUsIG9yIGNvbnRlbnQgdHlwZSBmYWlscyB2YWxpZGF0aW9uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBidWlsZEVtYWlsKGlucHV0KSB7XG4gICAgY29uc3QgbWVzc2FnZUlkID0gYDwke3JhbmRvbVVVSUQoKX1AYXMtZ3JhcGg+YDtcbiAgICBjb25zdCBmcm9tID0gYXNzZXJ0RW1haWxBZGRyZXNzKGlucHV0LmZyb20sIFwic2VuZGVyXCIpO1xuICAgIGNvbnN0IHRvID0gcGFyc2VBZGRyZXNzTGlzdChpbnB1dC50byk7XG4gICAgY29uc3QgY2MgPSBwYXJzZUFkZHJlc3NMaXN0KGlucHV0LmNjKTtcbiAgICBjb25zdCBiY2MgPSBwYXJzZUFkZHJlc3NMaXN0KGlucHV0LmJjYyk7XG4gICAgY29uc3QgcmVjaXBpZW50cyA9IFsuLi50bywgLi4uY2MsIC4uLmJjY107XG4gICAgaWYgKHJlY2lwaWVudHMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIHRocm93IG5ldyBCYWRSZXF1ZXN0RXJyb3IoXCJFbWFpbCBtZXNzYWdlIHJlcXVpcmVzIGF0IGxlYXN0IG9uZSByZWNpcGllbnRcIik7XG4gICAgfVxuICAgIGNvbnN0IHJlcGx5VG8gPSBpbnB1dC5yZXBseVRvXG4gICAgICAgID8gYXNzZXJ0RW1haWxBZGRyZXNzKGlucHV0LnJlcGx5VG8sIFwicmVwbHktdG9cIilcbiAgICAgICAgOiB1bmRlZmluZWQ7XG4gICAgY29uc3QgaGVhZGVycyA9IFtcbiAgICAgICAgYEZyb206ICR7ZnJvbX1gLFxuICAgICAgICBgVG86ICR7dG8uam9pbihcIiwgXCIpfWAsXG4gICAgICAgIC4uLihjYy5sZW5ndGggPyBbYENjOiAke2NjLmpvaW4oXCIsIFwiKX1gXSA6IFtdKSxcbiAgICAgICAgYFN1YmplY3Q6ICR7ZW5jb2RlSGVhZGVyKGlucHV0LnN1YmplY3QpfWAsXG4gICAgICAgIC4uLihyZXBseVRvID8gW2BSZXBseS1UbzogJHtyZXBseVRvfWBdIDogW10pLFxuICAgICAgICBgRGF0ZTogJHtuZXcgRGF0ZSgpLnRvVVRDU3RyaW5nKCl9YCxcbiAgICAgICAgYE1lc3NhZ2UtSUQ6ICR7bWVzc2FnZUlkfWAsXG4gICAgICAgIFwiTUlNRS1WZXJzaW9uOiAxLjBcIixcbiAgICBdLmpvaW4oXCJcXHJcXG5cIik7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgcmF3OiBgJHtoZWFkZXJzfVxcclxcbiR7ZW50aXR5KGlucHV0KX1gLFxuICAgICAgICBmcm9tLFxuICAgICAgICByZWNpcGllbnRzLFxuICAgICAgICBtZXNzYWdlSWQsXG4gICAgfTtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtiYXNlNjQsZXlKMlpYSnphVzl1SWpvekxDSm1hV3hsSWpvaWJXbHRaUzVxY3lJc0luTnZkWEpqWlZKdmIzUWlPaUlpTENKemIzVnlZMlZ6SWpwYklpNHVMeTR1THk0dUx5NHVMM055WXk5amIyMXRjeTlsYldGcGJDOXRhVzFsTG5SeklsMHNJbTVoYldWeklqcGJYU3dpYldGd2NHbHVaM01pT2lKQlFVRkJPenM3T3pzN096czdPenM3T3pzN096czdSMEZyUWtjN1FVRkRTQ3hQUVVGUExFVkJRVVVzVlVGQlZTeEZRVUZGTEUxQlFVMHNZVUZCWVN4RFFVRkRPMEZCUTNwRExFOUJRVThzUlVGQlJTeGxRVUZsTEVWQlFVVXNUVUZCVFN4NVFrRkJlVUlzUTBGQlF6dEJRV3RFTVVRc1RVRkJUU3haUVVGWkxFZEJRVWNzWjBKQlFXZENMRU5CUVVNN1FVRkZkRU03T3pzN1IwRkpSenRCUVVOSUxEUkhRVUUwUnp0QlFVTTFSeXhOUVVGTkxHbENRVUZwUWl4SFFVRkhMSE5DUVVGelFpeERRVUZETzBGQlJXcEVPenM3T3p0SFFVdEhPMEZCUTBnc1RVRkJUU3hoUVVGaExFZEJRMnBDTEhOSlFVRnpTU3hEUVVGRE8wRkJSWHBKT3pzN08wZEJTVWM3UVVGRFNDeE5RVUZOTEZsQlFWa3NSMEZEYUVJc2FVaEJRV2xJTEVOQlFVTTdRVUZGY0VnN096czdPenRIUVUxSE8wRkJRMGdzVTBGQlV5eDFRa0ZCZFVJc1EwRkJReXhMUVVGaExFVkJRVVVzUzBGQllUdEpRVU16UkN4SlFVRkpMR2xDUVVGcFFpeERRVUZETEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1JVRkJSU3hEUVVGRE8xRkJRMnhETEUxQlFVMHNTVUZCU1N4bFFVRmxMRU5CUTNaQ0xGTkJRVk1zUzBGQlN5eDVRMEZCZVVNc1EwRkRlRVFzUTBGQlF6dEpRVU5LTEVOQlFVTTdRVUZEU0N4RFFVRkRPMEZCUlVRN096czdPenM3UjBGUFJ6dEJRVU5JTEUxQlFVMHNWVUZCVlN4clFrRkJhMElzUTBGRGFFTXNTMEZCWVN4RlFVTmlMRXRCUVVzc1IwRkJSeXhUUVVGVE8wbEJSV3BDTEhWQ1FVRjFRaXhEUVVGRExFdEJRVXNzUlVGQlJTeExRVUZMTEVOQlFVTXNRMEZCUXp0SlFVTjBReXhOUVVGTkxFOUJRVThzUjBGQlJ5eExRVUZMTEVOQlFVTXNTVUZCU1N4RlFVRkZMRU5CUVVNN1NVRkROMElzU1VGQlNTeERRVUZETEdGQlFXRXNRMEZCUXl4SlFVRkpMRU5CUVVNc1QwRkJUeXhEUVVGRExFVkJRVVVzUTBGQlF6dFJRVU5xUXl4TlFVRk5MRWxCUVVrc1pVRkJaU3hEUVVGRExGTkJRVk1zUzBGQlN5eHBRMEZCYVVNc1EwRkJReXhEUVVGRE8wbEJRemRGTEVOQlFVTTdTVUZEUkN4UFFVRlBMRTlCUVU4c1EwRkJRenRCUVVOcVFpeERRVUZETzBGQlJVUTdPenM3TzBkQlMwYzdRVUZEU0N4VFFVRlRMSGRDUVVGM1FpeERRVUZETEV0QlFXRTdTVUZETjBNc2RVSkJRWFZDTEVOQlFVTXNTMEZCU3l4RlFVRkZMSEZDUVVGeFFpeERRVUZETEVOQlFVTTdTVUZEZEVRc1NVRkJTU3hQUVVGUExFTkJRVU1zU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4RlFVRkZMRU5CUVVNN1VVRkRlRUlzVFVGQlRTeEpRVUZKTEdWQlFXVXNRMEZEZGtJc01FUkJRVEJFTEVOQlF6TkVMRU5CUVVNN1NVRkRTaXhEUVVGRE8wRkJRMGdzUTBGQlF6dEJRVVZFT3pzN096dEhRVXRITzBGQlEwZ3NVMEZCVXl4cFFrRkJhVUlzUTBGQlF5eExRVUZoTzBsQlEzUkRMSFZDUVVGMVFpeERRVUZETEV0QlFVc3NSVUZCUlN4NVFrRkJlVUlzUTBGQlF5eERRVUZETzBsQlF6RkVMRWxCUVVrc1EwRkJReXhaUVVGWkxFTkJRVU1zU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4SlFVRkpMRVZCUVVVc1EwRkJReXhGUVVGRkxFTkJRVU03VVVGRGNrTXNUVUZCVFN4SlFVRkpMR1ZCUVdVc1EwRkRka0lzTWtSQlFUSkVMRU5CUXpWRUxFTkJRVU03U1VGRFNpeERRVUZETzBGQlEwZ3NRMEZCUXp0QlFVVkVPenM3T3pzN1IwRk5SenRCUVVOSUxFMUJRVTBzVlVGQlZTeFpRVUZaTEVOQlFVTXNTMEZCWVR0SlFVTjRReXhKUVVGSkxGbEJRVmtzUTBGQlF5eEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRPMUZCUVVVc1QwRkJUeXhMUVVGTExFTkJRVU03U1VGRE0wTXNUMEZCVHl4aFFVRmhMRTFCUVUwc1EwRkJReXhKUVVGSkxFTkJRVU1zUzBGQlN5eEZRVUZGTEUxQlFVMHNRMEZCUXl4RFFVRkRMRkZCUVZFc1EwRkJReXhSUVVGUkxFTkJRVU1zU1VGQlNTeERRVUZETzBGQlEzaEZMRU5CUVVNN1FVRkZSRHM3T3pzN096czdPMGRCVTBjN1FVRkRTQ3hOUVVGTkxGVkJRVlVzWjBKQlFXZENMRU5CUXpsQ0xFdEJRVzlETzBsQlJYQkRMRWxCUVVrc1EwRkJReXhMUVVGTE8xRkJRVVVzVDBGQlR5eEZRVUZGTEVOQlFVTTdTVUZEZEVJc1RVRkJUU3hOUVVGTkxFZEJRVWNzUzBGQlN5eERRVUZETEU5QlFVOHNRMEZCUXl4TFFVRkxMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUzBGQlN5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRXRCUVVzc1EwRkJReXhEUVVGRE8wbEJRM1JFTEU5QlFVOHNUVUZCVFR0VFFVTldMRTlCUVU4c1EwRkJReXhEUVVGRExFdEJRVXNzUlVGQlJTeEZRVUZGTEVOQlFVTXNTMEZCU3l4RFFVRkRMRXRCUVVzc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF6dFRRVU53UXl4SFFVRkhMRU5CUVVNc1EwRkJReXhMUVVGTExFVkJRVVVzUlVGQlJTeERRVUZETEV0QlFVc3NRMEZCUXl4SlFVRkpMRVZCUVVVc1EwRkJRenRUUVVNMVFpeE5RVUZOTEVOQlFVTXNRMEZCUXl4TFFVRkxMRVZCUVVVc1JVRkJSU3hEUVVGRExFdEJRVXNzUTBGQlF5eE5RVUZOTEVkQlFVY3NRMEZCUXl4RFFVRkRPMU5CUTI1RExFZEJRVWNzUTBGQlF5eERRVUZETEV0QlFVc3NSVUZCUlN4RlFVRkZMRU5CUVVNc2EwSkJRV3RDTEVOQlFVTXNTMEZCU3l4RlFVRkZMRmRCUVZjc1EwRkJReXhEUVVGRExFTkJRVU03UVVGRE5VUXNRMEZCUXp0QlFVVkVMRk5CUVZNc1YwRkJWeXhEUVVGRExFdEJRV0U3U1VGRGFFTXNUMEZCVHl4TlFVRk5MRU5CUVVNc1NVRkJTU3hEUVVGRExFdEJRVXNzUlVGQlJTeE5RVUZOTEVOQlFVTTdVMEZET1VJc1VVRkJVU3hEUVVGRExGRkJRVkVzUTBGQlF6dFRRVU5zUWl4UFFVRlBMRU5CUVVNc1ZVRkJWU3hGUVVGRkxGRkJRVkVzUTBGQlF5eERRVUZETzBGQlEyNURMRU5CUVVNN1FVRkZSQ3hUUVVGVExGRkJRVkVzUTBGQlF5eFhRVUZ0UWl4RlFVRkZMRXRCUVdFN1NVRkRiRVFzVDBGQlR5eHBRa0ZCYVVJc1YwRkJWeXdyUkVGQkswUXNWMEZCVnl4RFFVTXpSeXhMUVVGTExFTkJRMDRzUlVGQlJTeERRVUZETzBGQlEwNHNRMEZCUXp0QlFVVkVMRk5CUVZNc1ZVRkJWU3hEUVVGRExFdEJRWGRDTzBsQlF6RkRMRWxCUVVrc1MwRkJTeXhEUVVGRExFbEJRVWtzUzBGQlN5eFRRVUZUTEVsQlFVa3NTMEZCU3l4RFFVRkRMRWxCUVVrc1MwRkJTeXhUUVVGVExFVkJRVVVzUTBGQlF6dFJRVU42UkN4TlFVRk5MRkZCUVZFc1IwRkJSeXhQUVVGUExGVkJRVlVzUlVGQlJTeEZRVUZGTEVOQlFVTTdVVUZEZGtNc1QwRkJUenRaUVVOTUxHdEVRVUZyUkN4UlFVRlJMRWRCUVVjN1dVRkROMFFzUlVGQlJUdFpRVU5HTEV0QlFVc3NVVUZCVVN4RlFVRkZPMWxCUTJZc1VVRkJVU3hEUVVGRExGbEJRVmtzUlVGQlJTeExRVUZMTEVOQlFVTXNTVUZCU1N4RFFVRkRPMWxCUTJ4RExFdEJRVXNzVVVGQlVTeEZRVUZGTzFsQlEyWXNVVUZCVVN4RFFVRkRMRmRCUVZjc1JVRkJSU3hMUVVGTExFTkJRVU1zU1VGQlNTeERRVUZETzFsQlEycERMRXRCUVVzc1VVRkJVU3hKUVVGSk8xTkJRMnhDTEVOQlFVTXNTVUZCU1N4RFFVRkRMRTFCUVUwc1EwRkJReXhEUVVGRE8wbEJRMnBDTEVOQlFVTTdTVUZEUkN4SlFVRkpMRXRCUVVzc1EwRkJReXhKUVVGSkxFdEJRVXNzVTBGQlV5eEZRVUZGTEVOQlFVTTdVVUZETjBJc1QwRkJUeXhSUVVGUkxFTkJRVU1zVjBGQlZ5eEZRVUZGTEV0QlFVc3NRMEZCUXl4SlFVRkpMRU5CUVVNc1EwRkJRenRKUVVNelF5eERRVUZETzBsQlEwUXNUMEZCVHl4UlFVRlJMRU5CUVVNc1dVRkJXU3hGUVVGRkxFdEJRVXNzUTBGQlF5eEpRVUZKTEVsQlFVa3NSVUZCUlN4RFFVRkRMRU5CUVVNN1FVRkRiRVFzUTBGQlF6dEJRVVZFTEZOQlFWTXNZMEZCWXl4RFFVRkRMRlZCUVRKQ08wbEJRMnBFTEUxQlFVMHNUMEZCVHl4SFFVTllMRlZCUVZVc1EwRkJReXhSUVVGUkxFdEJRVXNzVFVGQlRUdFJRVU0xUWl4RFFVRkRMRU5CUVVNc1YwRkJWeXhEUVVGRExGVkJRVlVzUTBGQlF5eFBRVUZQTEVOQlFVTTdVVUZEYWtNc1EwRkJReXhEUVVGRExGVkJRVlVzUTBGQlF5eFBRVUZQTEVOQlFVTXNUMEZCVHl4RFFVRkRMRkZCUVZFc1JVRkJSU3hGUVVGRkxFTkJRVU1zUTBGQlF6dEpRVU12UXl4TlFVRk5MRmRCUVZjc1IwRkJSeXhWUVVGVkxFTkJRVU1zVjBGQlZ5eEpRVUZKTERCQ1FVRXdRaXhEUVVGRE8wbEJRM3BGTEhkQ1FVRjNRaXhEUVVGRExGVkJRVlVzUTBGQlF5eFJRVUZSTEVOQlFVTXNRMEZCUXp0SlFVTTVReXhwUWtGQmFVSXNRMEZCUXl4WFFVRlhMRU5CUVVNc1EwRkJRenRKUVVNdlFpeFBRVUZQTzFGQlEwd3NhVUpCUVdsQ0xGZEJRVmNzVjBGQlZ5eFpRVUZaTEVOQlFVTXNWVUZCVlN4RFFVRkRMRkZCUVZFc1EwRkJReXhIUVVGSE8xRkJRek5GTEcxRFFVRnRRenRSUVVOdVF5dzRRMEZCT0VNc1dVRkJXU3hEUVVONFJDeFZRVUZWTEVOQlFVTXNVVUZCVVN4RFFVTndRaXhIUVVGSE8xRkJRMG9zUlVGQlJUdFJRVU5HTEU5QlFVODdTMEZEVWl4RFFVRkRMRWxCUVVrc1EwRkJReXhOUVVGTkxFTkJRVU1zUTBGQlF6dEJRVU5xUWl4RFFVRkRPMEZCUlVRc1UwRkJVeXhOUVVGTkxFTkJRVU1zUzBGQmQwSTdTVUZEZEVNc1RVRkJUU3hYUVVGWExFZEJRVWNzUzBGQlN5eERRVUZETEZkQlFWY3NTVUZCU1N4RlFVRkZMRU5CUVVNN1NVRkROVU1zU1VGQlNTeFhRVUZYTEVOQlFVTXNUVUZCVFN4TFFVRkxMRU5CUVVNN1VVRkJSU3hQUVVGUExGVkJRVlVzUTBGQlF5eExRVUZMTEVOQlFVTXNRMEZCUXp0SlFVTjJSQ3hOUVVGTkxGRkJRVkVzUjBGQlJ5eFBRVUZQTEZWQlFWVXNSVUZCUlN4RlFVRkZMRU5CUVVNN1NVRkRka01zVFVGQlRTeExRVUZMTEVkQlFVY3NRMEZCUXl4VlFVRlZMRU5CUVVNc1MwRkJTeXhEUVVGRExFVkJRVVVzUjBGQlJ5eFhRVUZYTEVOQlFVTXNSMEZCUnl4RFFVRkRMR05CUVdNc1EwRkJReXhEUVVGRExFTkJRVU03U1VGRGRFVXNUMEZCVHl3MFEwRkJORU1zVVVGQlVTeFpRVUZaTEV0QlFVczdVMEZEZWtVc1IwRkJSeXhEUVVGRExFTkJRVU1zU1VGQlNTeEZRVUZGTEVWQlFVVXNRMEZCUXl4TFFVRkxMRkZCUVZFc1QwRkJUeXhKUVVGSkxFVkJRVVVzUTBGQlF6dFRRVU42UXl4SlFVRkpMRU5CUVVNc1RVRkJUU3hEUVVGRExGTkJRVk1zVVVGQlVTeEpRVUZKTEVOQlFVTTdRVUZEZGtNc1EwRkJRenRCUVVWRU96czdPenM3T3pzN1IwRlRSenRCUVVOSUxFMUJRVTBzVlVGQlZTeFZRVUZWTEVOQlFVTXNTMEZCZDBJN1NVRkRha1FzVFVGQlRTeFRRVUZUTEVkQlFVY3NTVUZCU1N4VlFVRlZMRVZCUVVVc1dVRkJXU3hEUVVGRE8wbEJReTlETEUxQlFVMHNTVUZCU1N4SFFVRkhMR3RDUVVGclFpeERRVUZETEV0QlFVc3NRMEZCUXl4SlFVRkpMRVZCUVVVc1VVRkJVU3hEUVVGRExFTkJRVU03U1VGRGRFUXNUVUZCVFN4RlFVRkZMRWRCUVVjc1owSkJRV2RDTEVOQlFVTXNTMEZCU3l4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRE8wbEJRM1JETEUxQlFVMHNSVUZCUlN4SFFVRkhMR2RDUVVGblFpeERRVUZETEV0QlFVc3NRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJRenRKUVVOMFF5eE5RVUZOTEVkQlFVY3NSMEZCUnl4blFrRkJaMElzUTBGQlF5eExRVUZMTEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNN1NVRkRlRU1zVFVGQlRTeFZRVUZWTEVkQlFVY3NRMEZCUXl4SFFVRkhMRVZCUVVVc1JVRkJSU3hIUVVGSExFVkJRVVVzUlVGQlJTeEhRVUZITEVkQlFVY3NRMEZCUXl4RFFVRkRPMGxCUXpGRExFbEJRVWtzVlVGQlZTeERRVUZETEUxQlFVMHNTMEZCU3l4RFFVRkRMRVZCUVVVc1EwRkJRenRSUVVNMVFpeE5RVUZOTEVsQlFVa3NaVUZCWlN4RFFVTjJRaXdyUTBGQkswTXNRMEZEYUVRc1EwRkJRenRKUVVOS0xFTkJRVU03U1VGRFJDeE5RVUZOTEU5QlFVOHNSMEZCUnl4TFFVRkxMRU5CUVVNc1QwRkJUenRSUVVNelFpeERRVUZETEVOQlFVTXNhMEpCUVd0Q0xFTkJRVU1zUzBGQlN5eERRVUZETEU5QlFVOHNSVUZCUlN4VlFVRlZMRU5CUVVNN1VVRkRMME1zUTBGQlF5eERRVUZETEZOQlFWTXNRMEZCUXp0SlFVTmtMRTFCUVUwc1QwRkJUeXhIUVVGSE8xRkJRMlFzVTBGQlV5eEpRVUZKTEVWQlFVVTdVVUZEWml4UFFVRlBMRVZCUVVVc1EwRkJReXhKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEVWQlFVVTdVVUZEZEVJc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eE5RVUZOTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1QwRkJUeXhGUVVGRkxFTkJRVU1zU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETzFGQlF6bERMRmxCUVZrc1dVRkJXU3hEUVVGRExFdEJRVXNzUTBGQlF5eFBRVUZQTEVOQlFVTXNSVUZCUlR0UlFVTjZReXhIUVVGSExFTkJRVU1zVDBGQlR5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMR0ZCUVdFc1QwRkJUeXhGUVVGRkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRPMUZCUXpWRExGTkJRVk1zU1VGQlNTeEpRVUZKTEVWQlFVVXNRMEZCUXl4WFFVRlhMRVZCUVVVc1JVRkJSVHRSUVVOdVF5eGxRVUZsTEZOQlFWTXNSVUZCUlR0UlFVTXhRaXh0UWtGQmJVSTdTMEZEY0VJc1EwRkJReXhKUVVGSkxFTkJRVU1zVFVGQlRTeERRVUZETEVOQlFVTTdTVUZEWml4UFFVRlBPMUZCUTB3c1IwRkJSeXhGUVVGRkxFZEJRVWNzVDBGQlR5eFBRVUZQTEUxQlFVMHNRMEZCUXl4TFFVRkxMRU5CUVVNc1JVRkJSVHRSUVVOeVF5eEpRVUZKTzFGQlEwb3NWVUZCVlR0UlFVTldMRk5CUVZNN1MwRkRWaXhEUVVGRE8wRkJRMG9zUTBGQlF5SXNJbk52ZFhKalpYTkRiMjUwWlc1MElqcGJJaThxS2x4dUlDb2dRRzF2WkhWc1pTQnBiblJsWjNKaGRHbHZibk12WTI5dGJYTXZaVzFoYVd3dmJXbHRaVnh1SUNvZ1FITjFiVzFoY25rZ1VrWkRJRFV6TWpJdlRVbE5SU0J0WlhOellXZGxJR0oxYVd4a2FXNW5JR0Z1WkNCaFpHUnlaWE56SUdoaGJtUnNhVzVuSUdadmNpQjBhR1VnUlcxaGFXd2djMlZ5ZG1salpTNWNiaUFxSUVCa1pYTmpjbWx3ZEdsdmJpQkNkV2xzWkhNZ1lTQmpiMjF3YkdWMFpTQnlZWGNnVFVsTlJTQnRaWE56WVdkbElHWnliMjBnWVc1Y2JpQXFJSHRBYkdsdWF5QkZiV0ZwYkUxbGMzTmhaMlZKYm5CMWRIMDZJRlZVUmkwNElHaGxZV1JsY25NZ1lYSmxJRkpHUXlBeU1EUTNJR0poYzJVMk5DMTNiM0prSUdWdVkyOWtaV1JjYmlBcUlDaDdRR3hwYm1zZ1pXNWpiMlJsU0dWaFpHVnlmU2tzSUhKbFkybHdhV1Z1ZENCc2FYTjBjeUJoY21VZ1kyOXRiV0V0YzNCc2FYUWdZVzVrSUhSeWFXMXRaV1JjYmlBcUlDaDdRR3hwYm1zZ2NHRnljMlZCWkdSeVpYTnpUR2x6ZEgwcExDQmhibVFnZEdobElHSnZaSGtnWW1WamIyMWxjeUJoWEc0Z0tpQmdkR1Y0ZEM5d2JHRnBibUF2WUhSbGVIUXZhSFJ0YkdBZ1lHMTFiSFJwY0dGeWRDOWhiSFJsY201aGRHbDJaV0FnS0hkb1pXNGdZbTkwYUNCaGNtVWdjSEpsYzJWdWRDa3NYRzRnS2lCaElITnBibWRzWlNCd1lYSjBJRzkwYUdWeWQybHpaU0RpZ0pRZ2QzSmhjSEJsWkNCcGJpQmdiWFZzZEdsd1lYSjBMMjFwZUdWa1lDQjNhWFJvSUdKaGMyVTJORnh1SUNvZ1lYUjBZV05vYldWdWRITWdkMmhsYmlCaGJua2dZWEpsSUhOMWNIQnNhV1ZrTGlCQ2IzVnVaR0Z5ZVNCdFlYSnJaWEp6SUdGdVpDQjBhR1VnWUUxbGMzTmhaMlV0U1VSZ1hHNGdLaUJqWVhKeWVTQmhJSEpoYm1SdmJTQlZWVWxFSUhCbGNpQnRaWE56WVdkbExseHVJQ3BjYmlBcUlFVjJaWEo1SUdGa1pISmxjM01zSUdGMGRHRmphRzFsYm5RZ1ptbHNaVzVoYldVc0lHRnVaQ0JqYjI1MFpXNTBJSFI1Y0dVZ2FYTWdkbUZzYVdSaGRHVmtJR0ZuWVdsdWMzUmNiaUFxSUdOdmJuTmxjblpoZEdsMlpTQmhiR3h2ZDJ4cGMzUnpJQ2g3UUd4cGJtc2dZWE56WlhKMFJXMWhhV3hCWkdSeVpYTnpmU0JoYm1RZ1puSnBaVzVrY3lrZ1ltVm1iM0psSUdsMElHbHpYRzRnS2lCM2NtbDBkR1Z1SUdsdWRHOGdZU0JvWldGa1pYSXNJSE52SUhkdmNtdG1iRzkzSUdsdWNIVjBJR05oYmlCdVpYWmxjaUJwYm1wbFkzUWdUVWxOUlNCb1pXRmtaWEp6SUc5eVhHNGdLaUJUVFZSUUlHTnZiVzFoYm1SekxpQkJiR3dnZG1Gc2FXUmhkR2x2YmlCaGJtUWdjM1J5ZFdOMGRYSmhiQ0JtWVdsc2RYSmxjeUFvYldsemMybHVaeUJ5WldOcGNHbGxiblFzWEc0Z0tpQm1iM0ppYVdSa1pXNGdZMjl1ZEhKdmJDQmphR0Z5WVdOMFpYSnpMQ0J1YjI0dGJXRnBiR0p2ZUNCaFpHUnlaWE56WlhNc0lIVnVjMkZtWlNCbWFXeGxibUZ0WlhNZ2IzSmNiaUFxSUdOdmJuUmxiblFnZEhsd1pYTXBJSFJvY205M0lHUmxZMkZtSUdCQ1lXUlNaWEYxWlhOMFJYSnliM0pnY3k1Y2JpQXFMMXh1YVcxd2IzSjBJSHNnY21GdVpHOXRWVlZKUkNCOUlHWnliMjBnWENKdWIyUmxPbU55ZVhCMGIxd2lPMXh1YVcxd2IzSjBJSHNnUW1Ga1VtVnhkV1Z6ZEVWeWNtOXlJSDBnWm5KdmJTQmNJa0JrWldOaFppMTBjeTlrWWkxa1pXTnZjbUYwYjNKelhDSTdYRzVjYmk4cUtseHVJQ29nUUdSbGMyTnlhWEIwYVc5dUlFRWdiV1Z6YzJGblpTQmhkSFJoWTJodFpXNTBYRzRnS2lCQWMzVnRiV0Z5ZVNCRGIyNTBaVzUwSUdseklHSmhjMlUyTkNCMFpYaDBJR0o1SUdSbFptRjFiSFE3SUhkcGRHZ2dZR1Z1WTI5a2FXNW5PaUJjSW5WMFpqaGNJbUFnZEdobFhHNGdLaUJpZFdsc1pHVnlJR0poYzJVMk5DMWxibU52WkdWeklIUm9aU0JWVkVZdE9DQmpiMjUwWlc1MElHbDBjMlZzWmk1Y2JpQXFJRUJqWVhSbFoyOXllU0JEYjIxdGMxeHVJQ29nUUcxbGJXSmxjazltSUcxdlpIVnNaVHBwYm5SbFozSmhkR2x2Ym5NdlkyOXRiWE12WlcxaGFXd3ZiV2x0WlZ4dUlDb3ZYRzVsZUhCdmNuUWdhVzUwWlhKbVlXTmxJRVZ0WVdsc1FYUjBZV05vYldWdWRDQjdYRzRnSUdacGJHVnVZVzFsT2lCemRISnBibWM3WEc0Z0lHTnZiblJsYm5RNklITjBjbWx1Wnp0Y2JpQWdaVzVqYjJScGJtYy9PaUJjSW1KaGMyVTJORndpSUh3Z1hDSjFkR1k0WENJN1hHNGdJR052Ym5SbGJuUlVlWEJsUHpvZ2MzUnlhVzVuTzF4dWZWeHVYRzR2S2lwY2JpQXFJRUJrWlhOamNtbHdkR2x2YmlCSmJuQjFkQ0JtYjNJZ1luVnBiR1JwYm1jZ1lTQnlZWGNnVFVsTlJTQnRaWE56WVdkbFhHNGdLaUJBYzNWdGJXRnllU0JEWVhKeWFXVnpJSFJvWlNCelpXNWtaWElzSUhKbFkybHdhV1Z1ZEhNZ0tITnBibWRzWlNCaFpHUnlaWE56TENCamIyMXRZUzF6WlhCaGNtRjBaV1JjYmlBcUlITjBjbWx1Wnl3Z2IzSWdZWEp5WVhrcExDQnpkV0pxWldOMExDQnZjSFJwYjI1aGJDQjBaWGgwSUdGdVpDQklWRTFNSUdKdlpHbGxjeXdnWUZKbGNHeDVMVlJ2WUN3Z1lXNWtYRzRnS2lCaGRIUmhZMmh0Wlc1MGN5NWNiaUFxSUVCallYUmxaMjl5ZVNCRGIyMXRjMXh1SUNvZ1FHMWxiV0psY2s5bUlHMXZaSFZzWlRwcGJuUmxaM0poZEdsdmJuTXZZMjl0YlhNdlpXMWhhV3d2YldsdFpWeHVJQ292WEc1bGVIQnZjblFnYVc1MFpYSm1ZV05sSUVWdFlXbHNUV1Z6YzJGblpVbHVjSFYwSUh0Y2JpQWdabkp2YlRvZ2MzUnlhVzVuTzF4dUlDQjBiem9nYzNSeWFXNW5JSHdnYzNSeWFXNW5XMTA3WEc0Z0lHTmpQem9nYzNSeWFXNW5JSHdnYzNSeWFXNW5XMTA3WEc0Z0lHSmpZejg2SUhOMGNtbHVaeUI4SUhOMGNtbHVaMXRkTzF4dUlDQnpkV0pxWldOME9pQnpkSEpwYm1jN1hHNGdJSFJsZUhRL09pQnpkSEpwYm1jN1hHNGdJR2gwYld3L09pQnpkSEpwYm1jN1hHNGdJSEpsY0d4NVZHOC9PaUJ6ZEhKcGJtYzdYRzRnSUdGMGRHRmphRzFsYm5SelB6b2dSVzFoYVd4QmRIUmhZMmh0Wlc1MFcxMDdYRzU5WEc1Y2JpOHFLbHh1SUNvZ1FHUmxjMk55YVhCMGFXOXVJRlJvWlNCaWRXbHNkQ0JOU1UxRklHMWxjM05oWjJVZ2NtVmhaSGtnWm05eUlHUmxiR2wyWlhKNVhHNGdLaUJBYzNWdGJXRnllU0JEWVhKeWFXVnpJSFJvWlNCeVlYY2dVa1pESURVek1qSWdkR1Y0ZEN3Z2RHaGxJSEpsYzI5c2RtVmtJSE5sYm1SbGNpd2dkR2hsSUdac1lYUjBaVzVsWkZ4dUlDb2djbVZqYVhCcFpXNTBJR3hwYzNRZ0tGUnZMME5qTDBKall5a3NJR0Z1WkNCMGFHVWdaMlZ1WlhKaGRHVmtJR0JOWlhOellXZGxMVWxFWUM1Y2JpQXFJRUJqWVhSbFoyOXllU0JEYjIxdGMxeHVJQ29nUUcxbGJXSmxjazltSUcxdlpIVnNaVHBwYm5SbFozSmhkR2x2Ym5NdlkyOXRiWE12WlcxaGFXd3ZiV2x0WlZ4dUlDb3ZYRzVsZUhCdmNuUWdhVzUwWlhKbVlXTmxJRUoxYVd4MFJXMWhhV3dnZTF4dUlDQnlZWGM2SUhOMGNtbHVaenRjYmlBZ1puSnZiVG9nYzNSeWFXNW5PMXh1SUNCeVpXTnBjR2xsYm5Sek9pQnpkSEpwYm1kYlhUdGNiaUFnYldWemMyRm5aVWxrT2lCemRISnBibWM3WEc1OVhHNWNibU52Ym5OMElFRlRRMGxKWDBoRlFVUkZVaUE5SUM5ZVcxeGNlREl3TFZ4Y2VEZEZYU29rTHp0Y2JseHVMeW9xWEc0Z0tpQkRhR0Z5WVdOMFpYSnpJSFJvWVhRZ2JYVnpkQ0J1WlhabGNpQmhjSEJsWVhJZ2FXNGdZVzRnWVdSa2NtVnpjeXdnWVhSMFlXTm9iV1Z1ZENCbWFXeGxibUZ0WlN3Z2IzSmNiaUFxSUdOdmJuUmxiblFnZEhsd1pUb2dRMUl2VEVZZ0tHaGxZV1JsY2lCaGJtUWdVMDFVVUMxamIyMXRZVzVrSUdsdWFtVmpkR2x2Ymlrc0lFNVZUQ3dnWVc1a0lHRnVlU0J2ZEdobGNseHVJQ29nUXpBdlF6RWdZMjl1ZEhKdmJDQmphR0Z5WVdOMFpYSXVYRzRnS2k5Y2JpOHZJR1Z6YkdsdWRDMWthWE5oWW14bExXNWxlSFF0YkdsdVpTQnVieTFqYjI1MGNtOXNMWEpsWjJWNElDMHRJRzFoZEdOb2FXNW5JR052Ym5SeWIyd2dZMmhoY21GamRHVnljeUJwY3lCMGFHVWdjSFZ5Y0c5elpTQnZaaUIwYUdseklHRnNiRzkzYkdsemRGeHVZMjl1YzNRZ1JrOVNRa2xFUkVWT1gwTlBUbFJTVDB3Z1BTQXZXMXhjZURBd0xWeGNlREZHWEZ4NE4wWXRYRng0T1VaZEx6dGNibHh1THlvcVhHNGdLaUJEYjI1elpYSjJZWFJwZG1VZ2JXRnBiR0p2ZUNCaGJHeHZkMnhwYzNRNklHRWdaRzkwTFdGMGIyMGdiRzlqWVd3Z2NHRnlkQ0JtYjJ4c2IzZGxaQ0JpZVNCaFhHNGdLaUJrYjNRdGMyVndZWEpoZEdWa0lHUnZiV0ZwYmk0Z1JHbHpjR3hoZVNCdVlXMWxjeUJoY21VZ1pHVnNhV0psY21GMFpXeDVJRzV2ZENCaFkyTmxjSFJsWkNCaVpXTmhkWE5sWEc0Z0tpQjBhR1VnWlc1MlpXeHZjR1VnS0dCTlFVbE1JRVpTVDAxZ0wyQlNRMUJVSUZSUFlDa2dZVzVrSUhSb1pTQk5TVTFGSUdobFlXUmxjbk1nYzJoaGNtVWdkR2hsSUhOaGJXVmNiaUFxSUhaaGJHbGtZWFJsWkNCMllXeDFaUzVjYmlBcUwxeHVZMjl1YzNRZ1JVMUJTVXhmUVVSRVVrVlRVeUE5WEc0Z0lDOWVXMEV0V21FdGVqQXRPUzRoSXlRbEppY3FLeTg5UDE1ZllIdDhmWDR0WFN0QVcwRXRXbUV0ZWpBdE9WMG9QenBiUVMxYVlTMTZNQzA1TFYxN01DdzJNWDFiUVMxYVlTMTZNQzA1WFNrL0tEODZYRnd1VzBFdFdtRXRlakF0T1Ywb1B6cGJRUzFhWVMxNk1DMDVMVjE3TUN3Mk1YMWJRUzFhWVMxNk1DMDVYU2svS1Nza0x6dGNibHh1THlvcVhHNGdLaUJCYkd4dmQyeHBjM1JsWkNCTlNVMUZJR052Ym5SbGJuUWdkSGx3WlRvZ1lIUjVjR1V2YzNWaWRIbHdaV0FnY0d4MWN5QnZjSFJwYjI1aGJGeHVJQ29nWURzZ2NHRnlZVzFsZEdWeVBYWmhiSFZsWUNCd1lXbHljeUIzYUc5elpTQjJZV3gxWlhNZ1lYSmxJSFJ2YTJWdWN5QnZjaUJ4ZFc5MFpXUWdjM1J5YVc1bmN5QjNhWFJvYjNWMFhHNGdLaUJqYjI1MGNtOXNJR05vWVhKaFkzUmxjbk1zSUhGMWIzUmxjeXdnYjNJZ1ltRmphM05zWVhOb1pYTXVYRzRnS2k5Y2JtTnZibk4wSUVOUFRsUkZUbFJmVkZsUVJTQTlYRzRnSUM5ZVcwRXRXbUV0ZWpBdE9TRWpKQ1plWHk0ckxWMHJYRnd2VzBFdFdtRXRlakF0T1NFakpDWmVYeTRyTFYwcktEODZYRnh6S2p0Y1hITXFXMEV0V21FdGVqQXRPUzFkS3owb1B6cGNJbHRlWENKY1hGeGNYRnh5WEZ4dVhTcGNJbnhiUVMxYVlTMTZNQzA1SVNNa0psNWZMaXN0WFNzcEtTb2tMenRjYmx4dUx5b3FYRzRnS2lCU1pXcGxZM1J6SUdGdWVTQjJZV3gxWlNCallYSnllV2x1WnlCRFVpOU1SaXdnVGxWTUxDQnZjaUJoYm05MGFHVnlJR052Ym5SeWIyd2dZMmhoY21GamRHVnlMbHh1SUNwY2JpQXFJRUJ3WVhKaGJTQjJZV3gxWlNBdElGWmhiSFZsSUdGaWIzVjBJSFJ2SUdKbElIZHlhWFIwWlc0Z2FXNTBieUJoSUdobFlXUmxjaXdnVTAxVVVDQmpiMjF0WVc1a0xDQnZjaUJOU1UxRklIQmhjblF1WEc0Z0tpQkFjR0Z5WVcwZ1ptbGxiR1FnTFNCSWRXMWhiaTF5WldGa1lXSnNaU0JtYVdWc1pDQnVZVzFsSUhWelpXUWdhVzRnZEdobElHVnljbTl5SUcxbGMzTmhaMlV1WEc0Z0tpQkFkR2h5YjNkeklIdENZV1JTWlhGMVpYTjBSWEp5YjNKOUlIZG9aVzRnZEdobElIWmhiSFZsSUdOdmJuUmhhVzV6SUdFZ1ptOXlZbWxrWkdWdUlHTnZiblJ5YjJ3Z1kyaGhjbUZqZEdWeUxseHVJQ292WEc1bWRXNWpkR2x2YmlCeVpXcGxZM1JEYjI1MGNtOXNRMmhoY21GamRHVnljeWgyWVd4MVpUb2djM1J5YVc1bkxDQm1hV1ZzWkRvZ2MzUnlhVzVuS1RvZ2RtOXBaQ0I3WEc0Z0lHbG1JQ2hHVDFKQ1NVUkVSVTVmUTA5T1ZGSlBUQzUwWlhOMEtIWmhiSFZsS1NrZ2UxeHVJQ0FnSUhSb2NtOTNJRzVsZHlCQ1lXUlNaWEYxWlhOMFJYSnliM0lvWEc0Z0lDQWdJQ0JnUlcxaGFXd2dKSHRtYVdWc1pIMGdZMjl1ZEdGcGJuTWdZU0JtYjNKaWFXUmtaVzRnWTI5dWRISnZiQ0JqYUdGeVlXTjBaWEpnWEc0Z0lDQWdLVHRjYmlBZ2ZWeHVmVnh1WEc0dktpcGNiaUFxSUZaaGJHbGtZWFJsY3lCaElHMWhhV3hpYjNnZ1lXUmtjbVZ6Y3lCaFoyRnBibk4wSUhSb1pTQmhiR3h2ZDJ4cGMzUWdZVzVrSUhKbGRIVnlibk1nYVhRZ2RISnBiVzFsWkM1Y2JpQXFYRzRnS2lCQWNHRnlZVzBnZG1Gc2RXVWdMU0JEWVc1a2FXUmhkR1VnWVdSa2NtVnpjeTVjYmlBcUlFQndZWEpoYlNCbWFXVnNaQ0F0SUVoMWJXRnVMWEpsWVdSaFlteGxJR1pwWld4a0lHNWhiV1VnZFhObFpDQnBiaUIwYUdVZ1pYSnliM0lnYldWemMyRm5aUzVjYmlBcUlFQnlaWFIxY201eklGUm9aU0IwY21sdGJXVmtMQ0IyWVd4cFpHRjBaV1FnYldGcGJHSnZlQ0JoWkdSeVpYTnpMbHh1SUNvZ1FIUm9jbTkzY3lCN1FtRmtVbVZ4ZFdWemRFVnljbTl5ZlNCM2FHVnVJSFJvWlNCaFpHUnlaWE56SUdOdmJuUmhhVzV6SUdOdmJuUnliMndnWTJoaGNtRmpkR1Z5Y3lCdmNpQnBjeUJ1YjNRZ1lTQmlZWEpsSUcxaGFXeGliM2d1WEc0Z0tpOWNibVY0Y0c5eWRDQm1kVzVqZEdsdmJpQmhjM05sY25SRmJXRnBiRUZrWkhKbGMzTW9YRzRnSUhaaGJIVmxPaUJ6ZEhKcGJtY3NYRzRnSUdacFpXeGtJRDBnWENKaFpHUnlaWE56WENKY2JpazZJSE4wY21sdVp5QjdYRzRnSUhKbGFtVmpkRU52Ym5SeWIyeERhR0Z5WVdOMFpYSnpLSFpoYkhWbExDQm1hV1ZzWkNrN1hHNGdJR052Ym5OMElHRmtaSEpsYzNNZ1BTQjJZV3gxWlM1MGNtbHRLQ2s3WEc0Z0lHbG1JQ2doUlUxQlNVeGZRVVJFVWtWVFV5NTBaWE4wS0dGa1pISmxjM01wS1NCN1hHNGdJQ0FnZEdoeWIzY2dibVYzSUVKaFpGSmxjWFZsYzNSRmNuSnZjaWhnUlcxaGFXd2dKSHRtYVdWc1pIMGdhWE1nYm05MElHRWdkbUZzYVdRZ2JXRnBiR0p2ZUNCaFpHUnlaWE56WUNrN1hHNGdJSDFjYmlBZ2NtVjBkWEp1SUdGa1pISmxjM003WEc1OVhHNWNiaThxS2x4dUlDb2dWbUZzYVdSaGRHVnpJR0Z1SUdGMGRHRmphRzFsYm5RZ1ptbHNaVzVoYldVZ1ptOXlJSE5oWm1VZ2FXNWpiSFZ6YVc5dUlHbHVJR0VnY1hWdmRHVmtJRTFKVFVVZ2FHVmhaR1Z5TGx4dUlDcGNiaUFxSUVCd1lYSmhiU0IyWVd4MVpTQXRJRU5oYm1ScFpHRjBaU0JtYVd4bGJtRnRaUzVjYmlBcUlFQjBhSEp2ZDNNZ2UwSmhaRkpsY1hWbGMzUkZjbkp2Y24wZ2QyaGxiaUIwYUdVZ1ptbHNaVzVoYldVZ1kyRnljbWxsY3lCamIyNTBjbTlzSUdOb1lYSmhZM1JsY25Nc0lHRWdjWFZ2ZEdVc0lHOXlJR0VnWW1GamEzTnNZWE5vTGx4dUlDb3ZYRzVtZFc1amRHbHZiaUJoYzNObGNuUkJkSFJoWTJodFpXNTBSbWxzWlc1aGJXVW9kbUZzZFdVNklITjBjbWx1WnlrNklIWnZhV1FnZTF4dUlDQnlaV3BsWTNSRGIyNTBjbTlzUTJoaGNtRmpkR1Z5Y3loMllXeDFaU3dnWENKaGRIUmhZMmh0Wlc1MElHWnBiR1Z1WVcxbFhDSXBPMXh1SUNCcFppQW9MMXRjSWx4Y1hGeGRMeTUwWlhOMEtIWmhiSFZsS1NrZ2UxeHVJQ0FnSUhSb2NtOTNJRzVsZHlCQ1lXUlNaWEYxWlhOMFJYSnliM0lvWEc0Z0lDQWdJQ0JjSWtWdFlXbHNJR0YwZEdGamFHMWxiblFnWm1sc1pXNWhiV1VnWTI5dWRHRnBibk1nWVNCbWIzSmlhV1JrWlc0Z1kyaGhjbUZqZEdWeVhDSmNiaUFnSUNBcE8xeHVJQ0I5WEc1OVhHNWNiaThxS2x4dUlDb2dWbUZzYVdSaGRHVnpJR0Z1SUdGMGRHRmphRzFsYm5RZ1kyOXVkR1Z1ZENCMGVYQmxJR0ZuWVdsdWMzUWdkR2hsSUUxSlRVVWdZV3hzYjNkc2FYTjBMbHh1SUNwY2JpQXFJRUJ3WVhKaGJTQjJZV3gxWlNBdElFUmxZMnhoY21Wa0lHTnZiblJsYm5RZ2RIbHdaUzVjYmlBcUlFQjBhSEp2ZDNNZ2UwSmhaRkpsY1hWbGMzUkZjbkp2Y24wZ2QyaGxiaUIwYUdVZ2RtRnNkV1VnYVhNZ2JtOTBJR0Z1SUdGc2JHOTNiR2x6ZEdWa0lHQjBlWEJsTDNOMVluUjVjR1ZnSUhkcGRHZ2djMkZtWlNCd1lYSmhiV1YwWlhKekxseHVJQ292WEc1bWRXNWpkR2x2YmlCaGMzTmxjblJEYjI1MFpXNTBWSGx3WlNoMllXeDFaVG9nYzNSeWFXNW5LVG9nZG05cFpDQjdYRzRnSUhKbGFtVmpkRU52Ym5SeWIyeERhR0Z5WVdOMFpYSnpLSFpoYkhWbExDQmNJbUYwZEdGamFHMWxiblFnWTI5dWRHVnVkQ0IwZVhCbFhDSXBPMXh1SUNCcFppQW9JVU5QVGxSRlRsUmZWRmxRUlM1MFpYTjBLSFpoYkhWbExuUnlhVzBvS1NrcElIdGNiaUFnSUNCMGFISnZkeUJ1WlhjZ1FtRmtVbVZ4ZFdWemRFVnljbTl5S0Z4dUlDQWdJQ0FnWENKRmJXRnBiQ0JoZEhSaFkyaHRaVzUwSUdOdmJuUmxiblFnZEhsd1pTQnBjeUJ1YjNRZ1lXNGdZV3hzYjNkbFpDQk5TVTFGSUhSNWNHVmNJbHh1SUNBZ0lDazdYRzRnSUgxY2JuMWNibHh1THlvcVhHNGdLaUJBWkdWelkzSnBjSFJwYjI0Z1JXNWpiMlJsY3lCaElFMUpUVVVnYUdWaFpHVnlJSFpoYkhWbElITmhabVZzZVZ4dUlDb2dRSE4xYlcxaGNua2dVSFZ5WlMxQlUwTkpTU0IyWVd4MVpYTWdjR0Z6Y3lCMGFISnZkV2RvT3lCaGJubDBhR2x1WnlCbGJITmxJR0psWTI5dFpYTWdZVzRnVWtaRElESXdORGRjYmlBcUlHQTlQMVZVUmkwNFAwSS9MaTR1UHoxZ0lHVnVZMjlrWldRZ2QyOXlaQzVjYmlBcUlFQndZWEpoYlNCMllXeDFaU0F0SUZKaGR5Qm9aV0ZrWlhJZ2RtRnNkV1ZjYmlBcUlFQnlaWFIxY201eklGUm9aU0JvWldGa1pYSWdkbUZzZFdVZ2MyRm1aU0JtYjNJZ2NtRjNJRzFsYzNOaFoyVWdkSEpoYm5Od2IzSjBYRzRnS2k5Y2JtVjRjRzl5ZENCbWRXNWpkR2x2YmlCbGJtTnZaR1ZJWldGa1pYSW9kbUZzZFdVNklITjBjbWx1WnlrNklITjBjbWx1WnlCN1hHNGdJR2xtSUNoQlUwTkpTVjlJUlVGRVJWSXVkR1Z6ZENoMllXeDFaU2twSUhKbGRIVnliaUIyWVd4MVpUdGNiaUFnY21WMGRYSnVJR0E5UDFWVVJpMDRQMEkvSkh0Q2RXWm1aWEl1Wm5KdmJTaDJZV3gxWlN3Z1hDSjFkR1k0WENJcExuUnZVM1J5YVc1bktGd2lZbUZ6WlRZMFhDSXBmVDg5WUR0Y2JuMWNibHh1THlvcVhHNGdLaUJBWkdWelkzSnBjSFJwYjI0Z1RtOXliV0ZzYVhwbGN5QmhJSEpsWTJsd2FXVnVkQ0JwYm5CMWRDQnBiblJ2SUdGdUlHRnNiRzkzYkdsemRHVmtJR0ZrWkhKbGMzTWdiR2x6ZEZ4dUlDb2dRSE4xYlcxaGNua2dVM0JzYVhSeklHTnZiVzFoTFhObGNHRnlZWFJsWkNCemRISnBibWR6TENCMGNtbHRjeUJsYm5SeWFXVnpMQ0JrY205d2N5QmxiWEIwYVdWekxDQmhibVJjYmlBcUlIWmhiR2xrWVhSbGN5QmxkbVZ5ZVNCeVpXMWhhVzVwYm1jZ1pXNTBjbmtnWVhNZ1lTQmlZWEpsSUcxaGFXeGliM2dnWVdSa2NtVnpjeTRnVm1Gc2RXVnpJR05oY25KNWFXNW5YRzRnS2lCRFVpOU1SaXdnVGxWTUxDQnZjaUJ2ZEdobGNpQmpiMjUwY205c0lHTm9ZWEpoWTNSbGNuTWdZWEpsSUhKbGFtVmpkR1ZrSUc5MWRISnBaMmgwSUhOdklIZHZjbXRtYkc5M1hHNGdLaUJwYm5CMWRDQmpZVzRnYm1WMlpYSWdhVzVxWldOMElFMUpUVVVnYUdWaFpHVnljeUJ2Y2lCVFRWUlFJR1Z1ZG1Wc2IzQmxJR052YlcxaGJtUnpMbHh1SUNvZ1FIQmhjbUZ0SUhaaGJIVmxJQzBnVTJsdVoyeGxJR0ZrWkhKbGMzTXNJR052YlcxaExYTmxjR0Z5WVhSbFpDQnpkSEpwYm1jc0lHRnljbUY1TENCdmNpQmdkVzVrWldacGJtVmtZRnh1SUNvZ1FISmxkSFZ5Ym5NZ1ZHaGxJSFJ5YVcxdFpXUXNJSFpoYkdsa1lYUmxaQ0JzYVhOMElHOW1JR0ZrWkhKbGMzTmxjMXh1SUNvZ1FIUm9jbTkzY3lCN1FtRmtVbVZ4ZFdWemRFVnljbTl5ZlNCM2FHVnVJR0Z1SUdWdWRISjVJR2x6SUc1dmRDQmhJSFpoYkdsa0lHMWhhV3hpYjNnZ1lXUmtjbVZ6YzF4dUlDb3ZYRzVsZUhCdmNuUWdablZ1WTNScGIyNGdjR0Z5YzJWQlpHUnlaWE56VEdsemRDaGNiaUFnZG1Gc2RXVTZJSE4wY21sdVp5QjhJSE4wY21sdVoxdGRJSHdnZFc1a1pXWnBibVZrWEc0cE9pQnpkSEpwYm1kYlhTQjdYRzRnSUdsbUlDZ2hkbUZzZFdVcElISmxkSFZ5YmlCYlhUdGNiaUFnWTI5dWMzUWdkbUZzZFdWeklEMGdRWEp5WVhrdWFYTkJjbkpoZVNoMllXeDFaU2tnUHlCMllXeDFaU0E2SUZ0MllXeDFaVjA3WEc0Z0lISmxkSFZ5YmlCMllXeDFaWE5jYmlBZ0lDQXVabXhoZEUxaGNDZ29aVzUwY25rcElEMCtJR1Z1ZEhKNUxuTndiR2wwS0Z3aUxGd2lLU2xjYmlBZ0lDQXViV0Z3S0NobGJuUnllU2tnUFQ0Z1pXNTBjbmt1ZEhKcGJTZ3BLVnh1SUNBZ0lDNW1hV3gwWlhJb0tHVnVkSEo1S1NBOVBpQmxiblJ5ZVM1c1pXNW5kR2dnUGlBd0tWeHVJQ0FnSUM1dFlYQW9LR1Z1ZEhKNUtTQTlQaUJoYzNObGNuUkZiV0ZwYkVGa1pISmxjM01vWlc1MGNua3NJRndpY21WamFYQnBaVzUwWENJcEtUdGNibjFjYmx4dVpuVnVZM1JwYjI0Z1ltRnpaVFkwVEdsdVpYTW9kbUZzZFdVNklITjBjbWx1WnlrNklITjBjbWx1WnlCN1hHNGdJSEpsZEhWeWJpQkNkV1ptWlhJdVpuSnZiU2gyWVd4MVpTd2dYQ0oxZEdZNFhDSXBYRzRnSUNBZ0xuUnZVM1J5YVc1bktGd2lZbUZ6WlRZMFhDSXBYRzRnSUNBZ0xuSmxjR3hoWTJVb0x5Z3VlemMyZlNrdlp5d2dYQ0lrTVZ4Y2NseGNibHdpS1R0Y2JuMWNibHh1Wm5WdVkzUnBiMjRnZEdWNGRGQmhjblFvWTI5dWRHVnVkRlI1Y0dVNklITjBjbWx1Wnl3Z2RtRnNkV1U2SUhOMGNtbHVaeWs2SUhOMGNtbHVaeUI3WEc0Z0lISmxkSFZ5YmlCZ1EyOXVkR1Z1ZEMxVWVYQmxPaUFrZTJOdmJuUmxiblJVZVhCbGZUc2dZMmhoY25ObGREMTFkR1l0T0Z4Y2NseGNia052Ym5SbGJuUXRWSEpoYm5ObVpYSXRSVzVqYjJScGJtYzZJR0poYzJVMk5GeGNjbHhjYmx4Y2NseGNiaVI3WW1GelpUWTBUR2x1WlhNb1hHNGdJQ0FnZG1Gc2RXVmNiaUFnS1gxZ08xeHVmVnh1WEc1bWRXNWpkR2x2YmlCaWIyUjVSVzUwYVhSNUtHbHVjSFYwT2lCRmJXRnBiRTFsYzNOaFoyVkpibkIxZENrNklITjBjbWx1WnlCN1hHNGdJR2xtSUNocGJuQjFkQzUwWlhoMElDRTlQU0IxYm1SbFptbHVaV1FnSmlZZ2FXNXdkWFF1YUhSdGJDQWhQVDBnZFc1a1pXWnBibVZrS1NCN1hHNGdJQ0FnWTI5dWMzUWdZbTkxYm1SaGNua2dQU0JnWVd4MExTUjdjbUZ1Wkc5dFZWVkpSQ2dwZldBN1hHNGdJQ0FnY21WMGRYSnVJRnRjYmlBZ0lDQWdJR0JEYjI1MFpXNTBMVlI1Y0dVNklHMTFiSFJwY0dGeWRDOWhiSFJsY201aGRHbDJaVHNnWW05MWJtUmhjbms5WENJa2UySnZkVzVrWVhKNWZWd2lZQ3hjYmlBZ0lDQWdJRndpWENJc1hHNGdJQ0FnSUNCZ0xTMGtlMkp2ZFc1a1lYSjVmV0FzWEc0Z0lDQWdJQ0IwWlhoMFVHRnlkQ2hjSW5SbGVIUXZjR3hoYVc1Y0lpd2dhVzV3ZFhRdWRHVjRkQ2tzWEc0Z0lDQWdJQ0JnTFMwa2UySnZkVzVrWVhKNWZXQXNYRzRnSUNBZ0lDQjBaWGgwVUdGeWRDaGNJblJsZUhRdmFIUnRiRndpTENCcGJuQjFkQzVvZEcxc0tTeGNiaUFnSUNBZ0lHQXRMU1I3WW05MWJtUmhjbmw5TFMxZ0xGeHVJQ0FnSUYwdWFtOXBiaWhjSWx4Y2NseGNibHdpS1R0Y2JpQWdmVnh1SUNCcFppQW9hVzV3ZFhRdWFIUnRiQ0FoUFQwZ2RXNWtaV1pwYm1Wa0tTQjdYRzRnSUNBZ2NtVjBkWEp1SUhSbGVIUlFZWEowS0Z3aWRHVjRkQzlvZEcxc1hDSXNJR2x1Y0hWMExtaDBiV3dwTzF4dUlDQjlYRzRnSUhKbGRIVnliaUIwWlhoMFVHRnlkQ2hjSW5SbGVIUXZjR3hoYVc1Y0lpd2dhVzV3ZFhRdWRHVjRkQ0EvUHlCY0lsd2lLVHRjYm4xY2JseHVablZ1WTNScGIyNGdZWFIwWVdOb2JXVnVkRkJoY25Rb1lYUjBZV05vYldWdWREb2dSVzFoYVd4QmRIUmhZMmh0Wlc1MEtUb2djM1J5YVc1bklIdGNiaUFnWTI5dWMzUWdZMjl1ZEdWdWRDQTlYRzRnSUNBZ1lYUjBZV05vYldWdWRDNWxibU52WkdsdVp5QTlQVDBnWENKMWRHWTRYQ0pjYmlBZ0lDQWdJRDhnWW1GelpUWTBUR2x1WlhNb1lYUjBZV05vYldWdWRDNWpiMjUwWlc1MEtWeHVJQ0FnSUNBZ09pQmhkSFJoWTJodFpXNTBMbU52Ym5SbGJuUXVjbVZ3YkdGalpTZ3ZYRnh5UDF4Y2JpOW5MQ0JjSWx3aUtUdGNiaUFnWTI5dWMzUWdZMjl1ZEdWdWRGUjVjR1VnUFNCaGRIUmhZMmh0Wlc1MExtTnZiblJsYm5SVWVYQmxJRDgvSUZ3aVlYQndiR2xqWVhScGIyNHZiMk4wWlhRdGMzUnlaV0Z0WENJN1hHNGdJR0Z6YzJWeWRFRjBkR0ZqYUcxbGJuUkdhV3hsYm1GdFpTaGhkSFJoWTJodFpXNTBMbVpwYkdWdVlXMWxLVHRjYmlBZ1lYTnpaWEowUTI5dWRHVnVkRlI1Y0dVb1kyOXVkR1Z1ZEZSNWNHVXBPMXh1SUNCeVpYUjFjbTRnVzF4dUlDQWdJR0JEYjI1MFpXNTBMVlI1Y0dVNklDUjdZMjl1ZEdWdWRGUjVjR1Y5T3lCdVlXMWxQVndpSkh0bGJtTnZaR1ZJWldGa1pYSW9ZWFIwWVdOb2JXVnVkQzVtYVd4bGJtRnRaU2w5WENKZ0xGeHVJQ0FnSUZ3aVEyOXVkR1Z1ZEMxVWNtRnVjMlpsY2kxRmJtTnZaR2x1WnpvZ1ltRnpaVFkwWENJc1hHNGdJQ0FnWUVOdmJuUmxiblF0UkdsemNHOXphWFJwYjI0NklHRjBkR0ZqYUcxbGJuUTdJR1pwYkdWdVlXMWxQVndpSkh0bGJtTnZaR1ZJWldGa1pYSW9YRzRnSUNBZ0lDQmhkSFJoWTJodFpXNTBMbVpwYkdWdVlXMWxYRzRnSUNBZ0tYMWNJbUFzWEc0Z0lDQWdYQ0pjSWl4Y2JpQWdJQ0JqYjI1MFpXNTBMRnh1SUNCZExtcHZhVzRvWENKY1hISmNYRzVjSWlrN1hHNTlYRzVjYm1aMWJtTjBhVzl1SUdWdWRHbDBlU2hwYm5CMWREb2dSVzFoYVd4TlpYTnpZV2RsU1c1d2RYUXBPaUJ6ZEhKcGJtY2dlMXh1SUNCamIyNXpkQ0JoZEhSaFkyaHRaVzUwY3lBOUlHbHVjSFYwTG1GMGRHRmphRzFsYm5SeklEOC9JRnRkTzF4dUlDQnBaaUFvWVhSMFlXTm9iV1Z1ZEhNdWJHVnVaM1JvSUQwOVBTQXdLU0J5WlhSMWNtNGdZbTlrZVVWdWRHbDBlU2hwYm5CMWRDazdYRzRnSUdOdmJuTjBJR0p2ZFc1a1lYSjVJRDBnWUcxcGVDMGtlM0poYm1SdmJWVlZTVVFvS1gxZ08xeHVJQ0JqYjI1emRDQndZWEowY3lBOUlGdGliMlI1Ulc1MGFYUjVLR2x1Y0hWMEtTd2dMaTR1WVhSMFlXTm9iV1Z1ZEhNdWJXRndLR0YwZEdGamFHMWxiblJRWVhKMEtWMDdYRzRnSUhKbGRIVnliaUJnUTI5dWRHVnVkQzFVZVhCbE9pQnRkV3gwYVhCaGNuUXZiV2w0WldRN0lHSnZkVzVrWVhKNVBWd2lKSHRpYjNWdVpHRnllWDFjSWx4Y2NseGNibHhjY2x4Y2JpUjdjR0Z5ZEhOY2JpQWdJQ0F1YldGd0tDaHdZWEowS1NBOVBpQmdMUzBrZTJKdmRXNWtZWEo1ZlZ4Y2NseGNiaVI3Y0dGeWRIMWdLVnh1SUNBZ0lDNXFiMmx1S0Z3aVhGeHlYRnh1WENJcGZWeGNjbHhjYmkwdEpIdGliM1Z1WkdGeWVYMHRMV0E3WEc1OVhHNWNiaThxS2x4dUlDb2dRR1JsYzJOeWFYQjBhVzl1SUVKMWFXeGtjeUIwYUdVZ1kyOXRjR3hsZEdVZ2NtRjNJRTFKVFVVZ2JXVnpjMkZuWlZ4dUlDb2dRSE4xYlcxaGNua2dSMlZ1WlhKaGRHVnpJSFJvWlNCZ1RXVnpjMkZuWlMxSlJHQXNJSEpsYzI5c2RtVnpJSEpsWTJsd2FXVnVkSE1nS0hSb2NtOTNhVzVuSUhkb1pXNWNiaUFxSUc1dmJtVWdjbVZ0WVdsdUtTd2daVzFwZEhNZ2RHaGxJSE4wWVc1a1lYSmtJR2hsWVdSbGNuTXNJR0Z1WkNCaGMzTmxiV0pzWlhNZ2RHaGxJR0p2WkhrZ1pXNTBhWFI1WEc0Z0tpQW9ZV3gwWlhKdVlYUnBkbVVnZEdWNGRDOUlWRTFNSUhCaGNuUnpMQ0J3YkhWeklHRjBkR0ZqYUcxbGJuUnpJSGRvWlc0Z2NISmxjMlZ1ZENrdVhHNGdLaUJBY0dGeVlXMGdhVzV3ZFhRZ0xTQk5aWE56WVdkbElHbHVjSFYwWEc0Z0tpQkFjbVYwZFhKdWN5QlVhR1VnWW5WcGJIUWdiV1Z6YzJGblpTQjNhWFJvSUhKaGR5QjBaWGgwTENCelpXNWtaWElzSUhKbFkybHdhV1Z1ZEhNc0lHRnVaQ0JnVFdWemMyRm5aUzFKUkdCY2JpQXFJRUIwYUhKdmQzTWdlMEpoWkZKbGNYVmxjM1JGY25KdmNuMGdkMmhsYmlCMGFHVWdiV1Z6YzJGblpTQm9ZWE1nYm04Z2NtVmphWEJwWlc1MElHOXlJR0Z1ZVNCaFpHUnlaWE56TEZ4dUlDb2dJQ0JoZEhSaFkyaHRaVzUwSUdacGJHVnVZVzFsTENCdmNpQmpiMjUwWlc1MElIUjVjR1VnWm1GcGJITWdkbUZzYVdSaGRHbHZibHh1SUNvdlhHNWxlSEJ2Y25RZ1puVnVZM1JwYjI0Z1luVnBiR1JGYldGcGJDaHBibkIxZERvZ1JXMWhhV3hOWlhOellXZGxTVzV3ZFhRcE9pQkNkV2xzZEVWdFlXbHNJSHRjYmlBZ1kyOXVjM1FnYldWemMyRm5aVWxrSUQwZ1lEd2tlM0poYm1SdmJWVlZTVVFvS1gxQVlYTXRaM0poY0dnK1lEdGNiaUFnWTI5dWMzUWdabkp2YlNBOUlHRnpjMlZ5ZEVWdFlXbHNRV1JrY21WemN5aHBibkIxZEM1bWNtOXRMQ0JjSW5ObGJtUmxjbHdpS1R0Y2JpQWdZMjl1YzNRZ2RHOGdQU0J3WVhKelpVRmtaSEpsYzNOTWFYTjBLR2x1Y0hWMExuUnZLVHRjYmlBZ1kyOXVjM1FnWTJNZ1BTQndZWEp6WlVGa1pISmxjM05NYVhOMEtHbHVjSFYwTG1OaktUdGNiaUFnWTI5dWMzUWdZbU5qSUQwZ2NHRnljMlZCWkdSeVpYTnpUR2x6ZENocGJuQjFkQzVpWTJNcE8xeHVJQ0JqYjI1emRDQnlaV05wY0dsbGJuUnpJRDBnV3k0dUxuUnZMQ0F1TGk1all5d2dMaTR1WW1OalhUdGNiaUFnYVdZZ0tISmxZMmx3YVdWdWRITXViR1Z1WjNSb0lEMDlQU0F3S1NCN1hHNGdJQ0FnZEdoeWIzY2dibVYzSUVKaFpGSmxjWFZsYzNSRmNuSnZjaWhjYmlBZ0lDQWdJRndpUlcxaGFXd2diV1Z6YzJGblpTQnlaWEYxYVhKbGN5QmhkQ0JzWldGemRDQnZibVVnY21WamFYQnBaVzUwWENKY2JpQWdJQ0FwTzF4dUlDQjlYRzRnSUdOdmJuTjBJSEpsY0d4NVZHOGdQU0JwYm5CMWRDNXlaWEJzZVZSdlhHNGdJQ0FnUHlCaGMzTmxjblJGYldGcGJFRmtaSEpsYzNNb2FXNXdkWFF1Y21Wd2JIbFVieXdnWENKeVpYQnNlUzEwYjF3aUtWeHVJQ0FnSURvZ2RXNWtaV1pwYm1Wa08xeHVJQ0JqYjI1emRDQm9aV0ZrWlhKeklEMGdXMXh1SUNBZ0lHQkdjbTl0T2lBa2UyWnliMjE5WUN4Y2JpQWdJQ0JnVkc4NklDUjdkRzh1YW05cGJpaGNJaXdnWENJcGZXQXNYRzRnSUNBZ0xpNHVLR05qTG14bGJtZDBhQ0EvSUZ0Z1EyTTZJQ1I3WTJNdWFtOXBiaWhjSWl3Z1hDSXBmV0JkSURvZ1cxMHBMRnh1SUNBZ0lHQlRkV0pxWldOME9pQWtlMlZ1WTI5a1pVaGxZV1JsY2locGJuQjFkQzV6ZFdKcVpXTjBLWDFnTEZ4dUlDQWdJQzR1TGloeVpYQnNlVlJ2SUQ4Z1cyQlNaWEJzZVMxVWJ6b2dKSHR5WlhCc2VWUnZmV0JkSURvZ1cxMHBMRnh1SUNBZ0lHQkVZWFJsT2lBa2UyNWxkeUJFWVhSbEtDa3VkRzlWVkVOVGRISnBibWNvS1gxZ0xGeHVJQ0FnSUdCTlpYTnpZV2RsTFVsRU9pQWtlMjFsYzNOaFoyVkpaSDFnTEZ4dUlDQWdJRndpVFVsTlJTMVdaWEp6YVc5dU9pQXhMakJjSWl4Y2JpQWdYUzVxYjJsdUtGd2lYRnh5WEZ4dVhDSXBPMXh1SUNCeVpYUjFjbTRnZTF4dUlDQWdJSEpoZHpvZ1lDUjdhR1ZoWkdWeWMzMWNYSEpjWEc0a2UyVnVkR2wwZVNocGJuQjFkQ2w5WUN4Y2JpQWdJQ0JtY205dExGeHVJQ0FnSUhKbFkybHdhV1Z1ZEhNc1hHNGdJQ0FnYldWemMyRm5aVWxrTEZ4dUlDQjlPMXh1ZlZ4dUlsMTkiXX0=
|
|
@@ -200,5 +200,5 @@ class SmtpClient {
|
|
|
200
200
|
}
|
|
201
201
|
}
|
|
202
202
|
exports.SmtpClient = SmtpClient;
|
|
203
|
-
//# sourceMappingURL=smtp.js.map
|
|
204
|
-
//# sourceMappingURL=smtp.cjs.map
|
|
203
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic210cC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21tcy9lbWFpbC9zbXRwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7R0FZRztBQUNILE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUV4RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsa0JBQWU7QUFrRDVDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E4Qkc7QUFDSCxNQUFNLE9BQU8sVUFBVTtJQUdyQjs7Ozs7T0FLRztJQUNILFlBQW9CLE1BQWtCO1FBQWxCLFdBQU0sR0FBTixNQUFNLENBQVk7SUFBRyxDQUFDO0lBRWxDLGdCQUFnQjtRQUN0QixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sSUFBSSxLQUFLLENBQUM7UUFDM0MsTUFBTSxjQUFjLEdBQUcsT0FBTyxDQUM1QixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FDN0MsQ0FBQztRQUNGLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxJQUFJLEtBQUssQ0FBQztRQUM3QyxPQUFPO1lBQ0wsSUFBSSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSTtZQUN0QixJQUFJLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDO1lBQzlDLE1BQU07WUFDTixJQUFJLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxjQUFjLElBQUksVUFBVTtZQUM5QyxVQUFVLEVBQ1IsQ0FBQyxNQUFNLElBQUksY0FBYyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxrQkFBa0I7WUFDOUQsSUFBSSxFQUFFLGNBQWM7Z0JBQ2xCLENBQUMsQ0FB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Q0FBQztRQUMzQyxDQUFDO1FBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztZQUNmLE1BQU0sSUFBSSxDQUFDLGNBQWMsQ0FBQyxzQkFBc0IsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUMzRCxDQUFDO0lBQ0gsQ0FBQztJQUVEOzs7T0FHRztJQUNILEtBQUssQ0FBQyxLQUFLO1FBQ1QsSUFBSSxDQUFDO1lBQ0gsSUFBSSxDQUFDLFdBQVcsRUFBRSxLQUFLLEVBQUUsQ0FBQztRQUM1QixDQUFDO2dCQUFTLENBQUM7WUFDVCxJQUFJLENBQUMsV0FBVyxHQUFHLFNBQVMsQ0FBQztRQUMvQixDQUFDO0lBQ0gsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbW9kdWxlIGludGVncmF0aW9ucy9jb21tcy9lbWFpbC9zbXRwXG4gKiBAc3VtbWFyeSBTTVRQIGNsaWVudCB1c2VkIGJ5IHRoZSBFbWFpbCBzZXJ2aWNlIGZvciBkaXJlY3QgU01UUCBkZWxpdmVyeS5cbiAqIEBkZXNjcmlwdGlvbiBEZWxlZ2F0ZXMgdGhlIFNNVFAgcHJvdG9jb2wgdG8gdGhlIG9wdGlvbmFsIGBub2RlbWFpbGVyYFxuICogbGlicmFyeSAodGhlIHNhbWUgbGlicmFyeSBuOG4gdXNlcykgaW5zdGVhZCBvZiBoYW5kLXJvbGxpbmcgdGhlIHdpcmVcbiAqIHByb3RvY29sOiB0aGUgdHJhbnNwb3J0IHBlcmZvcm1zIEVITE8sIFNUQVJUVExTL2ltcGxpY2l0IFRMUywgQVVUSCBMT0dJTixcbiAqIGFuZCB0aGUgYE1BSUwgRlJPTWAvYFJDUFQgVE9gL2BEQVRBYCB0cmFuc2FjdGlvbiBmb3IgYSBwcmUtYnVpbHQgcmF3IE1JTUVcbiAqIG1lc3NhZ2UuIFRoZSBwdWJsaWMge0BsaW5rIFNtdHBDbGllbnR9IHN1cmZhY2UgaXMgdW5jaGFuZ2VkLiBFbnZlbG9wZVxuICogYWRkcmVzc2VzIGFyZSB2YWxpZGF0ZWQgdGhyb3VnaCB7QGxpbmsgYXNzZXJ0RW1haWxBZGRyZXNzfSAoZGVjYWZcbiAqIGBCYWRSZXF1ZXN0RXJyb3JgcykgYmVmb3JlIHRoZXkgcmVhY2ggYW55IFNNVFAgY29tbWFuZCwgYW5kIGNyZWRlbnRpYWxzIGFyZVxuICogbmV2ZXIgc2VudCBvdmVyIGEgcGxhaW50ZXh0IHNlc3Npb24gdW5sZXNzIGBTbXRwQ29uZmlnLmFsbG93UGxhaW50ZXh0QXV0aGBcbiAqIG9wdHMgaW4uXG4gKi9cbmltcG9ydCB7IEludGVybmFsRXJyb3IgfSBmcm9tIFwiQGRlY2FmLXRzL2RiLWRlY29yYXRvcnNcIjtcbmltcG9ydCB0eXBlIHsgU2VuZE1haWxPcHRpb25zLCBUcmFuc3BvcnRlciB9IGZyb20gXCJub2RlbWFpbGVyXCI7XG5pbXBvcnQgeyBhc3NlcnRFbWFpbEFkZHJlc3MgfSBmcm9tIFwiLi9taW1lXCI7XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uIFNNVFAgY29ubmVjdGlvbiBjb25maWd1cmF0aW9uXG4gKiBAc3VtbWFyeSBDYXJyaWVzIHRoZSBzZXJ2ZXIgYWRkcmVzcywgb3B0aW9uYWwgaW1wbGljaXQtVExTL1NUQVJUVExTXG4gKiBzZWxlY3Rpb24sIGNyZWRlbnRpYWxzLCBhbmQgdGltZW91dHMuXG4gKlxuICogYHNlY3VyZWAgc2VsZWN0cyBpbXBsaWNpdCBUTFM6IGB0cnVlYCBvcGVucyBhIFRMUyBzb2NrZXQgZnJvbSB0aGUgZmlyc3QgYnl0ZVxuICogKGRlZmF1bHQgcG9ydCA0NjUpLiBgZmFsc2VgIGNvbm5lY3RzIGluIHBsYWludGV4dCBhbmQgdXBncmFkZXMgd2l0aCBTVEFSVFRMU1xuICogd2hlbiB0aGUgc2VydmVyIGFkdmVydGlzZXMgaXQgKGRlZmF1bHQgcG9ydCA1ODcpLiBXaGVuIGNyZWRlbnRpYWxzIGFyZVxuICogY29uZmlndXJlZCwgYGNvbm5lY3QoKWAgcmVmdXNlcyB0byBhdXRoZW50aWNhdGUgdW5sZXNzIHRoZSBzZXNzaW9uIGlzXG4gKiBlbmNyeXB0ZWQ7IGBhbGxvd1BsYWludGV4dEF1dGhgIGlzIHRoZSBleHBsaWNpdCwgZG9jdW1lbnRlZCBvcHQtb3V0IGZvclxuICogc2VydmVycyB0aGF0IGNhbm5vdCBvZmZlciBUTFMuXG4gKiBAY2F0ZWdvcnkgQ29tbXNcbiAqIEBtZW1iZXJPZiBtb2R1bGU6aW50ZWdyYXRpb25zL2NvbW1zL2VtYWlsL3NtdHBcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTbXRwQ29uZmlnIHtcbiAgLyoqIEBkZXNjcmlwdGlvbiBTTVRQIHNlcnZlciBob3N0bmFtZSAocmVxdWlyZWQpICovXG4gIGhvc3Q6IHN0cmluZztcbiAgLyoqIEBkZXNjcmlwdGlvbiBTZXJ2ZXIgcG9ydDsgZGVmYXVsdHMgdG8gYDQ2NWAgd2hlbiBgc2VjdXJlYCBpcyBgdHJ1ZWAsIGA1ODdgIG90aGVyd2lzZSAqL1xuICBwb3J0PzogbnVtYmVyO1xuICAvKiogQGRlc2NyaXB0aW9uIGB0cnVlYCBvcGVucyBhbiBpbXBsaWNpdC1UTFMgc29ja2V0IGZyb20gdGhlIGZpcnN0IGJ5dGU7IGBmYWxzZWAgKGRlZmF1bHQpIGNvbm5lY3RzIGluIHBsYWludGV4dCBhbmQgdXBncmFkZXMgdmlhIFNUQVJUVExTICovXG4gIHNlY3VyZT86IGJvb2xlYW47XG4gIC8qKiBAZGVzY3JpcHRpb24gVXNlcm5hbWUgZm9yIGBBVVRIIExPR0lOYDsgd2hlbiBzZXQgd2l0aCBgcGFzc3dvcmRgLCBlbmFibGVzIHRoZSBmYWlsLWNsb3NlZCBwbGFpbnRleHQtQVVUSCBjaGVjayAqL1xuICB1c2VybmFtZT86IHN0cmluZztcbiAgLyoqIEBkZXNjcmlwdGlvbiBQYXNzd29yZCBmb3IgYEFVVEggTE9HSU5gICovXG4gIHBhc3N3b3JkPzogc3RyaW5nO1xuICAvKiogQGRlc2NyaXB0aW9uIENvbm5lY3Rpb24sIGdyZWV0aW5nLCBhbmQgc29ja2V0IHRpbWVvdXQgaW4gbWlsbGlzZWNvbmRzIChkZWZhdWx0IGAzMDAwMGApICovXG4gIHRpbWVvdXQ/OiBudW1iZXI7XG4gIC8qKiBAZGVzY3JpcHRpb24gRXhwbGljaXRseSBwZXJtaXQgYEFVVEggTE9HSU5gIG92ZXIgYSBwbGFpbnRleHQgc2Vzc2lvbiAoZGVmYXVsdCBgZmFsc2VgKSAqL1xuICBhbGxvd1BsYWludGV4dEF1dGg/OiBib29sZWFuO1xuICAvKiogQGRlc2NyaXB0aW9uIEV4cGxpY2l0bHkgYWNjZXB0IGFuIG90aGVyd2lzZS1pbnZhbGlkIFRMUyBjZXJ0aWZpY2F0ZSAoZGVmYXVsdCBgZmFsc2VgKSAqL1xuICBhbGxvd1VuYXV0aG9yaXplZENlcnRzPzogYm9vbGVhbjtcbiAgLyoqIEBkZXNjcmlwdGlvbiBDbGllbnQgaG9zdG5hbWUgYW5ub3VuY2VkIGluIGBFSExPYCAoZGVmYXVsdCBgYXMtZ3JhcGhgKSAqL1xuICBjbGllbnRIb3N0bmFtZT86IHN0cmluZztcbn1cblxuLyoqXG4gKiBTdHJ1Y3R1cmFsIHZpZXcgb2YgdGhlIG9wdGlvbmFsIGBub2RlbWFpbGVyYCBtb2R1bGUuXG4gKlxuICogRGVjbGFyZWQgbG9jYWxseSBzbyB0aGlzIGZpbGUgbmV2ZXIgc3RhdGljYWxseSBpbXBvcnRzIHRoZSBvcHRpb25hbCBwZWVyO1xuICogdGhlIG1vZHVsZSBpcyByZXNvbHZlZCB3aXRoIGEgZHluYW1pYyBpbXBvcnQgaW4ge0BsaW5rIFNtdHBDbGllbnQuY29ubmVjdH0uXG4gKi9cbmludGVyZmFjZSBOb2RlbWFpbGVyTW9kdWxlIHtcbiAgY3JlYXRlVHJhbnNwb3J0KFxuICAgIG9wdGlvbnM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuICAgIGRlZmF1bHRzPzogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgKTogVHJhbnNwb3J0ZXI7XG59XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uIFNNVFAgY2xpZW50IGZvciByYXcgTUlNRSBkZWxpdmVyeVxuICogQHN1bW1hcnkgQ29ubmVjdHMgYW5kIGF1dGhlbnRpY2F0ZXMgdGhyb3VnaCBhIG5vZGVtYWlsZXIgU01UUCB0cmFuc3BvcnRcbiAqIChpbXBsaWNpdCBUTFMgb24gYHNlY3VyZWAsIFNUQVJUVExTIG90aGVyd2lzZSksIHRoZW4gZGVsaXZlcnMgYSBwcmUtYnVpbHRcbiAqIG1lc3NhZ2Ugd2l0aCB0aGUgZW52ZWxvcGUgc2VuZGVyL3JlY2lwaWVudHMgYW5kIHRoZSByYXcgUkZDIDUzMjIgc291cmNlLlxuICogQ3JlZGVudGlhbHMgYXJlIG5ldmVyIHNlbnQgb3ZlciBhIHBsYWludGV4dCBzZXNzaW9uIHVubGVzc1xuICogYGFsbG93UGxhaW50ZXh0QXV0aGAgaXMgc2V0LCBhbmQgZXZlcnkgZW52ZWxvcGUgYWRkcmVzcyBpcyB2YWxpZGF0ZWQgYmVmb3JlXG4gKiBpdCByZWFjaGVzIHRoZSB0cmFuc3BvcnQuXG4gKiBAY2F0ZWdvcnkgQ29tbXNcbiAqIEBtZW1iZXJPZiBtb2R1bGU6aW50ZWdyYXRpb25zL2NvbW1zL2VtYWlsL3NtdHBcbiAqIEBleGFtcGxlXG4gKiBgYGB0c1xuICogaW1wb3J0IHsgU210cENsaWVudCwgYnVpbGRFbWFpbCB9IGZyb20gXCJAZGVjYWYtdHMvaW50ZWdyYXRpb25zL2NvbW1zL2VtYWlsXCI7XG4gKlxuICogY29uc3QgY2xpZW50ID0gbmV3IFNtdHBDbGllbnQoe1xuICogICBob3N0OiBcInNtdHAuZXhhbXBsZS5jb21cIixcbiAqICAgcG9ydDogNTg3LFxuICogICB1c2VybmFtZTogXCJub3JlcGx5QGV4YW1wbGUuY29tXCIsXG4gKiAgIHBhc3N3b3JkOiBwcm9jZXNzLmVudi5TTVRQX1BBU1NXT1JELFxuICogfSk7XG4gKiBhd2FpdCBjbGllbnQuY29ubmVjdCgpO1xuICogY29uc3QgbWFpbCA9IGJ1aWxkRW1haWwoe1xuICogICBmcm9tOiBcIm5vcmVwbHlAZXhhbXBsZS5jb21cIixcbiAqICAgdG86IFtcIm9wc0BleGFtcGxlLmNvbVwiXSxcbiAqICAgc3ViamVjdDogXCJOaWdodGx5IHJlcG9ydFwiLFxuICogICB0ZXh0OiBcIkFsbCBzeXN0ZW1zIG5vbWluYWwuXCIsXG4gKiB9KTtcbiAqIGF3YWl0IGNsaWVudC5zZW5kKG1haWwuZnJvbSwgbWFpbC5yZWNpcGllbnRzLCBtYWlsLnJhdyk7XG4gKiBhd2FpdCBjbGllbnQuY2xvc2UoKTtcbiAqIGBgYFxuICovXG5leHBvcnQgY2xhc3MgU210cENsaWVudCB7XG4gIHByaXZhdGUgdHJhbnNwb3J0ZXI/OiBUcmFuc3BvcnRlcjtcblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIENyZWF0ZXMgYW4gU01UUCBjbGllbnRcbiAgICogQHN1bW1hcnkgU3RvcmVzIHRoZSBjb25maWc7IHRoZSBub2RlbWFpbGVyIHRyYW5zcG9ydCBpcyBvbmx5IGNyZWF0ZWQgYW5kXG4gICAqIHZlcmlmaWVkIGJ5IHtAbGluayBTbXRwQ2xpZW50LmNvbm5lY3R9LlxuICAgKiBAcGFyYW0gY29uZmlnIC0gU2VydmVyIGFkZHJlc3MsIG9wdGlvbmFsIGNyZWRlbnRpYWxzLCBhbmQgVExTL3RpbWVvdXQgb3B0aW9uc1xuICAgKi9cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjb25maWc6IFNtdHBDb25maWcpIHt9XG5cbiAgcHJpdmF0ZSB0cmFuc3BvcnRPcHRpb25zKCk6IFJlY29yZDxzdHJpbmcsIHVua25vd24+IHtcbiAgICBjb25zdCBzZWN1cmUgPSB0aGlzLmNvbmZpZy5zZWN1cmUgPz8gZmFsc2U7XG4gICAgY29uc3QgaGFzQ3JlZGVudGlhbHMgPSBCb29sZWFuKFxuICAgICAgdGhpcy5jb25maWcudXNlcm5hbWUgJiYgdGhpcy5jb25maWcucGFzc3dvcmRcbiAgICApO1xuICAgIGNvbnN0IHRpbWVvdXQgPSB0aGlzLmNvbmZpZy50aW1lb3V0ID8/IDMwMDAwO1xuICAgIHJldHVybiB7XG4gICAgICBob3N0OiB0aGlzLmNvbmZpZy5ob3N0LFxuICAgICAgcG9ydDogdGhpcy5jb25maWcucG9ydCA/PyAoc2VjdXJlID8gNDY1IDogNTg3KSxcbiAgICAgIHNlY3VyZSxcbiAgICAgIG5hbWU6IHRoaXMuY29uZmlnLmNsaWVudEhvc3RuYW1lID8/IFwiYXMtZ3JhcGhcIixcbiAgICAgIHJlcXVpcmVUTFM6XG4gICAgICAgICFzZWN1cmUgJiYgaGFzQ3JlZGVudGlhbHMgJiYgIXRoaXMuY29uZmlnLmFsbG93UGxhaW50ZXh0QXV0aCxcbiAgICAgIGF1dGg6IGhhc0NyZWRlbnRpYWxzXG4gICAgICAgID8ge1xuICAgICAgICAgICAgdXNlcjogdGhpcy5jb25maWcudXNlcm5hbWUsXG4gICAgICAgICAgICBwYXNzOiB0aGlzLmNvbmZpZy5wYXNzd29yZCxcbiAgICAgICAgICAgIG1ldGhvZDogXCJMT0dJTlwiLFxuICAgICAgICAgIH1cbiAgICAgICAgOiB1bmRlZmluZWQsXG4gICAgICB0bHM6IHRoaXMuY29uZmlnLmFsbG93VW5hdXRob3JpemVkQ2VydHNcbiAgICAgICAgPyB7IHJlamVjdFVuYXV0aG9yaXplZDogZmFsc2UgfVxuICAgICAgICA6IHVuZGVmaW5lZCxcbiAgICAgIGNvbm5lY3Rpb25UaW1lb3V0OiB0aW1lb3V0LFxuICAgICAgZ3JlZXRpbmdUaW1lb3V0OiB0aW1lb3V0LFxuICAgICAgc29ja2V0VGltZW91dDogdGltZW91dCxcbiAgICB9O1xuICB9XG5cbiAgcHJpdmF0ZSB0cmFuc3BvcnRFcnJvcihwcmVmaXg6IHN0cmluZywgZXJyb3I6IHVua25vd24pOiBJbnRlcm5hbEVycm9yIHtcbiAgICBpZiAoZXJyb3IgaW5zdGFuY2VvZiBJbnRlcm5hbEVycm9yKSByZXR1cm4gZXJyb3I7XG4gICAgcmV0dXJuIG5ldyBJbnRlcm5hbEVycm9yKFxuICAgICAgYCR7cHJlZml4fTogJHtlcnJvciBpbnN0YW5jZW9mIEVycm9yID8gZXJyb3IubWVzc2FnZSA6IFN0cmluZyhlcnJvcil9YFxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIE9wZW5zIHRoZSBTTVRQIHNlc3Npb25cbiAgICogQHN1bW1hcnkgTGF6aWx5IGxvYWRzIHRoZSBvcHRpb25hbCBgbm9kZW1haWxlcmAgcGVlciwgYnVpbGRzIHRoZSBTTVRQXG4gICAqIHRyYW5zcG9ydCBmb3IgdGhlIGNvbmZpZ3VyZWQgaG9zdC9jcmVkZW50aWFscywgYW5kIHZlcmlmaWVzIGl0XG4gICAqIChgRUhMT2AgKyBUTFMgdXBncmFkZSArIGBBVVRIIExPR0lOYCB3aGVuIGNyZWRlbnRpYWxzIGFyZSBjb25maWd1cmVkKS5cbiAgICogQXV0aGVudGljYXRpb24gZmFpbHMgY2xvc2VkOiB3aXRoIGNyZWRlbnRpYWxzIGNvbmZpZ3VyZWQgYW5kIG5vIGVuY3J5cHRlZFxuICAgKiBzZXNzaW9uLCB0aGUgdHJhbnNwb3J0IHJlcXVpcmVzIFNUQVJUVExTIGFuZCB2ZXJpZmljYXRpb24gZmFpbHMgdW5sZXNzXG4gICAqIGBhbGxvd1BsYWludGV4dEF1dGhgIHdhcyBzZXQgb24gdGhlIGNvbmZpZy5cbiAgICogQHRocm93cyB7SW50ZXJuYWxFcnJvcn0gd2hlbiBgbm9kZW1haWxlcmAgaXMgbm90IGluc3RhbGxlZCwgb3Igb25cbiAgICogY29ubmVjdGlvbiwgVExTLCBvciBhdXRoIGZhaWx1cmVzXG4gICAqL1xuICBhc3luYyBjb25uZWN0KCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmICh0aGlzLnRyYW5zcG9ydGVyKSByZXR1cm47XG4gICAgY29uc3QgbW9kdWxlTmFtZSA9IFwibm9kZW1haWxlclwiO1xuICAgIGxldCBtb2R1bGU6IE5vZGVtYWlsZXJNb2R1bGU7XG4gICAgdHJ5IHtcbiAgICAgIG1vZHVsZSA9IChhd2FpdCBpbXBvcnQobW9kdWxlTmFtZSkpIGFzIHVua25vd24gYXMgTm9kZW1haWxlck1vZHVsZTtcbiAgICB9IGNhdGNoIHtcbiAgICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKFxuICAgICAgICBcIlNNVFAgZGVsaXZlcnkgcmVxdWlyZXMgdGhlIG9wdGlvbmFsICdub2RlbWFpbGVyJyBwYWNrYWdlOyBpbnN0YWxsIGl0IHRvIHVzZSB0aGlzIHN1cmZhY2VcIlxuICAgICAgKTtcbiAgICB9XG4gICAgaWYgKHR5cGVvZiBtb2R1bGUuY3JlYXRlVHJhbnNwb3J0ICE9PSBcImZ1bmN0aW9uXCIpIHtcbiAgICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKFxuICAgICAgICBcIlRoZSBvcHRpb25hbCAnbm9kZW1haWxlcicgcGFja2FnZSBkaWQgbm90IGV4cG9ydCBjcmVhdGVUcmFuc3BvcnRcIlxuICAgICAgKTtcbiAgICB9XG4gICAgY29uc3QgdHJhbnNwb3J0ZXIgPSBtb2R1bGUuY3JlYXRlVHJhbnNwb3J0KHRoaXMudHJhbnNwb3J0T3B0aW9ucygpLCB7XG4gICAgICBkaXNhYmxlRmlsZUFjY2VzczogdHJ1ZSxcbiAgICAgIGRpc2FibGVVcmxBY2Nlc3M6IHRydWUsXG4gICAgfSk7XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IHRyYW5zcG9ydGVyLnZlcmlmeSgpO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICB0cmFuc3BvcnRlci5jbG9zZSgpO1xuICAgICAgdGhyb3cgdGhpcy50cmFuc3BvcnRFcnJvcihcIlNNVFAgY29ubmVjdGlvbiBmYWlsZWRcIiwgZXJyb3IpO1xuICAgIH1cbiAgICB0aGlzLnRyYW5zcG9ydGVyID0gdHJhbnNwb3J0ZXI7XG4gIH1cblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIERlbGl2ZXJzIGEgcmF3IG1lc3NhZ2Ugb3ZlciB0aGUgZXN0YWJsaXNoZWQgc2Vzc2lvblxuICAgKiBAc3VtbWFyeSBWYWxpZGF0ZXMgdGhlIGVudmVsb3BlLCB0aGVuIGhhbmRzIHRoZSBzZW5kZXIsIHJlY2lwaWVudHMsIGFuZFxuICAgKiByYXcgUkZDIDUzMjIgc291cmNlIHRvIG5vZGVtYWlsZXIncyBgc2VuZE1haWxgICh0aGUgdHJhbnNwb3J0IHBlcmZvcm1zXG4gICAqIHF1ZXVlaW5nLCBkb3Qtc3R1ZmZpbmcsIGFuZCBDUkxGIG5vcm1hbGl6YXRpb24pLlxuICAgKiBAcGFyYW0gZnJvbSAtIEVudmVsb3BlIHNlbmRlciBhZGRyZXNzXG4gICAqIEBwYXJhbSByZWNpcGllbnRzIC0gRW52ZWxvcGUgcmVjaXBpZW50IGFkZHJlc3Nlc1xuICAgKiBAcGFyYW0gcmF3IC0gUmF3IFJGQyA1MzIyIG1lc3NhZ2UgdGV4dFxuICAgKiBAdGhyb3dzIHtJbnRlcm5hbEVycm9yfSB3aGVuIG5vdCBjb25uZWN0ZWQgb3IgdGhlIHNlcnZlciByZWplY3RzIGRlbGl2ZXJ5XG4gICAqIEB0aHJvd3Mge0JhZFJlcXVlc3RFcnJvcn0gd2hlbiB0aGUgZW52ZWxvcGUgc2VuZGVyIG9yIGEgcmVjaXBpZW50IGlzIG5vdCBhbiBhbGxvd2xpc3RlZCBtYWlsYm94XG4gICAqL1xuICBhc3luYyBzZW5kKGZyb206IHN0cmluZywgcmVjaXBpZW50czogc3RyaW5nW10sIHJhdzogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKCF0aGlzLnRyYW5zcG9ydGVyKSB7XG4gICAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihcIlNNVFAgY2xpZW50IGlzIG5vdCBjb25uZWN0ZWRcIik7XG4gICAgfVxuICAgIGNvbnN0IHNlbmRlciA9IGFzc2VydEVtYWlsQWRkcmVzcyhmcm9tLCBcImVudmVsb3BlIHNlbmRlclwiKTtcbiAgICBjb25zdCBlbnZlbG9wZXMgPSByZWNpcGllbnRzLm1hcCgocmVjaXBpZW50KSA9PlxuICAgICAgYXNzZXJ0RW1haWxBZGRyZXNzKHJlY2lwaWVudCwgXCJlbnZlbG9wZSByZWNpcGllbnRcIilcbiAgICApO1xuICAgIGNvbnN0IG1lc3NhZ2U6IFNlbmRNYWlsT3B0aW9ucyA9IHtcbiAgICAgIGVudmVsb3BlOiB7IGZyb206IHNlbmRlciwgdG86IGVudmVsb3BlcyB9LFxuICAgICAgcmF3LFxuICAgIH07XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IHRoaXMudHJhbnNwb3J0ZXIuc2VuZE1haWwobWVzc2FnZSk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHRocm93IHRoaXMudHJhbnNwb3J0RXJyb3IoXCJTTVRQIGRlbGl2ZXJ5IGZhaWxlZFwiLCBlcnJvcik7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBDbG9zZXMgdGhlIHNlc3Npb24gZ3JhY2VmdWxseVxuICAgKiBAc3VtbWFyeSBDbG9zZXMgdGhlIG5vZGVtYWlsZXIgdHJhbnNwb3J0LCBpZ25vcmluZyBzaHV0ZG93biBmYWlsdXJlcy5cbiAgICovXG4gIGFzeW5jIGNsb3NlKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRyeSB7XG4gICAgICB0aGlzLnRyYW5zcG9ydGVyPy5jbG9zZSgpO1xuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLnRyYW5zcG9ydGVyID0gdW5kZWZpbmVkO1xuICAgIH1cbiAgfVxufVxuIl19
|
|
204
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic210cC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInNtdHAuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7Ozs7Ozs7Ozs7OztHQVlHO0FBQ0gsMkRBQXdEO0FBQ3hELHVDQUErQztBQUMvQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBOEJHO0FBQ0gsTUFBYSxVQUFVO0lBQ25COzs7OztPQUtHO0lBQ0gsWUFBWSxNQUFNO1FBQ2QsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7SUFDekIsQ0FBQztJQUNELGdCQUFnQjtRQUNaLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxJQUFJLEtBQUssQ0FBQztRQUMzQyxNQUFNLGNBQWMsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM3RSxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sSUFBSSxLQUFLLENBQUM7UUFDN0MsT0FBTztZQUNILElBQUksRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUk7WUFDdEIsSUFBSSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQztZQUM5QyxNQUFNO1lBQ04sSUFBSSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxJQUFJLFVBQVU7WUFDOUMsVUFBVSxFQUFFLENBQUMsTUFBTSxJQUFJLGNBQWMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsa0JBQWtCO1lBQ3hFLElBQUksRUFBRSxjQUFjO2dCQUNoQixDQUFDLENBQUM7b0JBQ0UsSUFBSSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUTtv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TUFBTSxJQUFJLENBQUMsY0FBYyxDQUFDLHNCQUFzQixFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzdELENBQUM7SUFDTCxDQUFDO0lBQ0Q7OztPQUdHO0lBQ0gsS0FBSyxDQUFDLEtBQUs7UUFDUCxJQUFJLENBQUM7WUFDRCxJQUFJLENBQUMsV0FBVyxFQUFFLEtBQUssRUFBRSxDQUFDO1FBQzlCLENBQUM7Z0JBQ08sQ0FBQztZQUNMLElBQUksQ0FBQyxXQUFXLEdBQUcsU0FBUyxDQUFDO1FBQ2pDLENBQUM7SUFDTCxDQUFDO0NBQ0o7QUF0SEQsZ0NBc0hDO0FBQ0Qsc2dmQUFzZ2YiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBtb2R1bGUgaW50ZWdyYXRpb25zL2NvbW1zL2VtYWlsL3NtdHBcbiAqIEBzdW1tYXJ5IFNNVFAgY2xpZW50IHVzZWQgYnkgdGhlIEVtYWlsIHNlcnZpY2UgZm9yIGRpcmVjdCBTTVRQIGRlbGl2ZXJ5LlxuICogQGRlc2NyaXB0aW9uIERlbGVnYXRlcyB0aGUgU01UUCBwcm90b2NvbCB0byB0aGUgb3B0aW9uYWwgYG5vZGVtYWlsZXJgXG4gKiBsaWJyYXJ5ICh0aGUgc2FtZSBsaWJyYXJ5IG44biB1c2VzKSBpbnN0ZWFkIG9mIGhhbmQtcm9sbGluZyB0aGUgd2lyZVxuICogcHJvdG9jb2w6IHRoZSB0cmFuc3BvcnQgcGVyZm9ybXMgRUhMTywgU1RBUlRUTFMvaW1wbGljaXQgVExTLCBBVVRIIExPR0lOLFxuICogYW5kIHRoZSBgTUFJTCBGUk9NYC9gUkNQVCBUT2AvYERBVEFgIHRyYW5zYWN0aW9uIGZvciBhIHByZS1idWlsdCByYXcgTUlNRVxuICogbWVzc2FnZS4gVGhlIHB1YmxpYyB7QGxpbmsgU210cENsaWVudH0gc3VyZmFjZSBpcyB1bmNoYW5nZWQuIEVudmVsb3BlXG4gKiBhZGRyZXNzZXMgYXJlIHZhbGlkYXRlZCB0aHJvdWdoIHtAbGluayBhc3NlcnRFbWFpbEFkZHJlc3N9IChkZWNhZlxuICogYEJhZFJlcXVlc3RFcnJvcmBzKSBiZWZvcmUgdGhleSByZWFjaCBhbnkgU01UUCBjb21tYW5kLCBhbmQgY3JlZGVudGlhbHMgYXJlXG4gKiBuZXZlciBzZW50IG92ZXIgYSBwbGFpbnRleHQgc2Vzc2lvbiB1bmxlc3MgYFNtdHBDb25maWcuYWxsb3dQbGFpbnRleHRBdXRoYFxuICogb3B0cyBpbi5cbiAqL1xuaW1wb3J0IHsgSW50ZXJuYWxFcnJvciB9IGZyb20gXCJAZGVjYWYtdHMvZGItZGVjb3JhdG9yc1wiO1xuaW1wb3J0IHsgYXNzZXJ0RW1haWxBZGRyZXNzIH0gZnJvbSBcIi4vbWltZS5qc1wiO1xuLyoqXG4gKiBAZGVzY3JpcHRpb24gU01UUCBjbGllbnQgZm9yIHJhdyBNSU1FIGRlbGl2ZXJ5XG4gKiBAc3VtbWFyeSBDb25uZWN0cyBhbmQgYXV0aGVudGljYXRlcyB0aHJvdWdoIGEgbm9kZW1haWxlciBTTVRQIHRyYW5zcG9ydFxuICogKGltcGxpY2l0IFRMUyBvbiBgc2VjdXJlYCwgU1RBUlRUTFMgb3RoZXJ3aXNlKSwgdGhlbiBkZWxpdmVycyBhIHByZS1idWlsdFxuICogbWVzc2FnZSB3aXRoIHRoZSBlbnZlbG9wZSBzZW5kZXIvcmVjaXBpZW50cyBhbmQgdGhlIHJhdyBSRkMgNTMyMiBzb3VyY2UuXG4gKiBDcmVkZW50aWFscyBhcmUgbmV2ZXIgc2VudCBvdmVyIGEgcGxhaW50ZXh0IHNlc3Npb24gdW5sZXNzXG4gKiBgYWxsb3dQbGFpbnRleHRBdXRoYCBpcyBzZXQsIGFuZCBldmVyeSBlbnZlbG9wZSBhZGRyZXNzIGlzIHZhbGlkYXRlZCBiZWZvcmVcbiAqIGl0IHJlYWNoZXMgdGhlIHRyYW5zcG9ydC5cbiAqIEBjYXRlZ29yeSBDb21tc1xuICogQG1lbWJlck9mIG1vZHVsZTppbnRlZ3JhdGlvbnMvY29tbXMvZW1haWwvc210cFxuICogQGV4YW1wbGVcbiAqIGBgYHRzXG4gKiBpbXBvcnQgeyBTbXRwQ2xpZW50LCBidWlsZEVtYWlsIH0gZnJvbSBcIkBkZWNhZi10cy9pbnRlZ3JhdGlvbnMvY29tbXMvZW1haWxcIjtcbiAqXG4gKiBjb25zdCBjbGllbnQgPSBuZXcgU210cENsaWVudCh7XG4gKiAgIGhvc3Q6IFwic210cC5leGFtcGxlLmNvbVwiLFxuICogICBwb3J0OiA1ODcsXG4gKiAgIHVzZXJuYW1lOiBcIm5vcmVwbHlAZXhhbXBsZS5jb21cIixcbiAqICAgcGFzc3dvcmQ6IHByb2Nlc3MuZW52LlNNVFBfUEFTU1dPUkQsXG4gKiB9KTtcbiAqIGF3YWl0IGNsaWVudC5jb25uZWN0KCk7XG4gKiBjb25zdCBtYWlsID0gYnVpbGRFbWFpbCh7XG4gKiAgIGZyb206IFwibm9yZXBseUBleGFtcGxlLmNvbVwiLFxuICogICB0bzogW1wib3BzQGV4YW1wbGUuY29tXCJdLFxuICogICBzdWJqZWN0OiBcIk5pZ2h0bHkgcmVwb3J0XCIsXG4gKiAgIHRleHQ6IFwiQWxsIHN5c3RlbXMgbm9taW5hbC5cIixcbiAqIH0pO1xuICogYXdhaXQgY2xpZW50LnNlbmQobWFpbC5mcm9tLCBtYWlsLnJlY2lwaWVudHMsIG1haWwucmF3KTtcbiAqIGF3YWl0IGNsaWVudC5jbG9zZSgpO1xuICogYGBgXG4gKi9cbmV4cG9ydCBjbGFzcyBTbXRwQ2xpZW50IHtcbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb24gQ3JlYXRlcyBhbiBTTVRQIGNsaWVudFxuICAgICAqIEBzdW1tYXJ5IFN0b3JlcyB0aGUgY29uZmlnOyB0aGUgbm9kZW1haWxlciB0cmFuc3BvcnQgaXMgb25seSBjcmVhdGVkIGFuZFxuICAgICAqIHZlcmlmaWVkIGJ5IHtAbGluayBTbXRwQ2xpZW50LmNvbm5lY3R9LlxuICAgICAqIEBwYXJhbSBjb25maWcgLSBTZXJ2ZXIgYWRkcmVzcywgb3B0aW9uYWwgY3JlZGVudGlhbHMsIGFuZCBUTFMvdGltZW91dCBvcHRpb25zXG4gICAgICovXG4gICAgY29uc3RydWN0b3IoY29uZmlnKSB7XG4gICAgICAgIHRoaXMuY29uZmlnID0gY29uZmlnO1xuICAgIH1cbiAgICB0cmFuc3BvcnRPcHRpb25zKCkge1xuICAgICAgICBjb25zdCBzZWN1cmUgPSB0aGlzLmNvbmZpZy5zZWN1cmUgPz8gZmFsc2U7XG4gICAgICAgIGNvbnN0IGhhc0NyZWRlbnRpYWxzID0gQm9vbGVhbih0aGlzLmNvbmZpZy51c2VybmFtZSAmJiB0aGlzLmNvbmZpZy5wYXNzd29yZCk7XG4gICAgICAgIGNvbnN0IHRpbWVvdXQgPSB0aGlzLmNvbmZpZy50aW1lb3V0ID8/IDMwMDAwO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgaG9zdDogdGhpcy5jb25maWcuaG9zdCxcbiAgICAgICAgICAgIHBvcnQ6IHRoaXMuY29uZmlnLnBvcnQgPz8gKHNlY3VyZSA/IDQ2NSA6IDU4NyksXG4gICAgICAgICAgICBzZWN1cmUsXG4gICAgICAgICAgICBuYW1lOiB0aGlzLmNvbmZpZy5jbGllbnRIb3N0bmFtZSA/PyBcImFzLWdyYXBoXCIsXG4gICAgICAgICAgICByZXF1aXJlVExTOiAhc2VjdXJlICYmIGhhc0NyZWRlbnRpYWxzICYmICF0aGlzLmNvbmZpZy5hbGxvd1BsYWludGV4dEF1dGgsXG4gICAgICAgICAgICBhdXRoOiBoYXNDcmVkZW50aWFsc1xuICAgICAgICAgICAgICAgID8ge1xuICAgICAgICAgICAgICAgICAgICB1c2VyOiB0aGlzLmNvbmZpZy51c2VybmFtZSxcbiAgICAgICAgICAgICAgICAgICAgcGFzczogdGhpcy5jb25maWcucGFzc3dvcmQsXG4gICAgICAgICAgICAgICAgICAgIG1ldGhvZDogXCJMT0dJTlwiLFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIHRsczogdGhpcy5jb25maWcuYWxsb3dVbmF1dGhvcml6ZWRDZXJ0c1xuICAgICAgICAgICAgICAgID8geyByZWplY3RVbmF1dGhvcml6ZWQ6IGZhbHNlIH1cbiAgICAgICAgICAgICAgICA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIGNvbm5lY3Rpb25UaW1lb3V0OiB0aW1lb3V0LFxuICAgICAgICAgICAgZ3JlZXRpbmdUaW1lb3V0OiB0aW1lb3V0LFxuICAgICAgICAgICAgc29ja2V0VGltZW91dDogdGltZW91dCxcbiAgICAgICAgfTtcbiAgICB9XG4gICAgdHJhbnNwb3J0RXJyb3IocHJlZml4LCBlcnJvcikge1xuICAgICAgICBpZiAoZXJyb3IgaW5zdGFuY2VvZiBJbnRlcm5hbEVycm9yKVxuICAgICAgICAgICAgcmV0dXJuIGVycm9yO1xuICAgICAgICByZXR1cm4gbmV3IEludGVybmFsRXJyb3IoYCR7cHJlZml4fTogJHtlcnJvciBpbnN0YW5jZW9mIEVycm9yID8gZXJyb3IubWVzc2FnZSA6IFN0cmluZyhlcnJvcil9YCk7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvbiBPcGVucyB0aGUgU01UUCBzZXNzaW9uXG4gICAgICogQHN1bW1hcnkgTGF6aWx5IGxvYWRzIHRoZSBvcHRpb25hbCBgbm9kZW1haWxlcmAgcGVlciwgYnVpbGRzIHRoZSBTTVRQXG4gICAgICogdHJhbnNwb3J0IGZvciB0aGUgY29uZmlndXJlZCBob3N0L2NyZWRlbnRpYWxzLCBhbmQgdmVyaWZpZXMgaXRcbiAgICAgKiAoYEVITE9gICsgVExTIHVwZ3JhZGUgKyBgQVVUSCBMT0dJTmAgd2hlbiBjcmVkZW50aWFscyBhcmUgY29uZmlndXJlZCkuXG4gICAgICogQXV0aGVudGljYXRpb24gZmFpbHMgY2xvc2VkOiB3aXRoIGNyZWRlbnRpYWxzIGNvbmZpZ3VyZWQgYW5kIG5vIGVuY3J5cHRlZFxuICAgICAqIHNlc3Npb24sIHRoZSB0cmFuc3BvcnQgcmVxdWlyZXMgU1RBUlRUTFMgYW5kIHZlcmlmaWNhdGlvbiBmYWlscyB1bmxlc3NcbiAgICAgKiBgYWxsb3dQbGFpbnRleHRBdXRoYCB3YXMgc2V0IG9uIHRoZSBjb25maWcuXG4gICAgICogQHRocm93cyB7SW50ZXJuYWxFcnJvcn0gd2hlbiBgbm9kZW1haWxlcmAgaXMgbm90IGluc3RhbGxlZCwgb3Igb25cbiAgICAgKiBjb25uZWN0aW9uLCBUTFMsIG9yIGF1dGggZmFpbHVyZXNcbiAgICAgKi9cbiAgICBhc3luYyBjb25uZWN0KCkge1xuICAgICAgICBpZiAodGhpcy50cmFuc3BvcnRlcilcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgY29uc3QgbW9kdWxlTmFtZSA9IFwibm9kZW1haWxlclwiO1xuICAgICAgICBsZXQgbW9kdWxlO1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgbW9kdWxlID0gKGF3YWl0IGltcG9ydChtb2R1bGVOYW1lKSk7XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2gge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEludGVybmFsRXJyb3IoXCJTTVRQIGRlbGl2ZXJ5IHJlcXVpcmVzIHRoZSBvcHRpb25hbCAnbm9kZW1haWxlcicgcGFja2FnZTsgaW5zdGFsbCBpdCB0byB1c2UgdGhpcyBzdXJmYWNlXCIpO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0eXBlb2YgbW9kdWxlLmNyZWF0ZVRyYW5zcG9ydCAhPT0gXCJmdW5jdGlvblwiKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihcIlRoZSBvcHRpb25hbCAnbm9kZW1haWxlcicgcGFja2FnZSBkaWQgbm90IGV4cG9ydCBjcmVhdGVUcmFuc3BvcnRcIik7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgdHJhbnNwb3J0ZXIgPSBtb2R1bGUuY3JlYXRlVHJhbnNwb3J0KHRoaXMudHJhbnNwb3J0T3B0aW9ucygpLCB7XG4gICAgICAgICAgICBkaXNhYmxlRmlsZUFjY2VzczogdHJ1ZSxcbiAgICAgICAgICAgIGRpc2FibGVVcmxBY2Nlc3M6IHRydWUsXG4gICAgICAgIH0pO1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgYXdhaXQgdHJhbnNwb3J0ZXIudmVyaWZ5KCk7XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICB0cmFuc3BvcnRlci5jbG9zZSgpO1xuICAgICAgICAgICAgdGhyb3cgdGhpcy50cmFuc3BvcnRFcnJvcihcIlNNVFAgY29ubmVjdGlvbiBmYWlsZWRcIiwgZXJyb3IpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMudHJhbnNwb3J0ZXIgPSB0cmFuc3BvcnRlcjtcbiAgICB9XG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIERlbGl2ZXJzIGEgcmF3IG1lc3NhZ2Ugb3ZlciB0aGUgZXN0YWJsaXNoZWQgc2Vzc2lvblxuICAgICAqIEBzdW1tYXJ5IFZhbGlkYXRlcyB0aGUgZW52ZWxvcGUsIHRoZW4gaGFuZHMgdGhlIHNlbmRlciwgcmVjaXBpZW50cywgYW5kXG4gICAgICogcmF3IFJGQyA1MzIyIHNvdXJjZSB0byBub2RlbWFpbGVyJ3MgYHNlbmRNYWlsYCAodGhlIHRyYW5zcG9ydCBwZXJmb3Jtc1xuICAgICAqIHF1ZXVlaW5nLCBkb3Qtc3R1ZmZpbmcsIGFuZCBDUkxGIG5vcm1hbGl6YXRpb24pLlxuICAgICAqIEBwYXJhbSBmcm9tIC0gRW52ZWxvcGUgc2VuZGVyIGFkZHJlc3NcbiAgICAgKiBAcGFyYW0gcmVjaXBpZW50cyAtIEVudmVsb3BlIHJlY2lwaWVudCBhZGRyZXNzZXNcbiAgICAgKiBAcGFyYW0gcmF3IC0gUmF3IFJGQyA1MzIyIG1lc3NhZ2UgdGV4dFxuICAgICAqIEB0aHJvd3Mge0ludGVybmFsRXJyb3J9IHdoZW4gbm90IGNvbm5lY3RlZCBvciB0aGUgc2VydmVyIHJlamVjdHMgZGVsaXZlcnlcbiAgICAgKiBAdGhyb3dzIHtCYWRSZXF1ZXN0RXJyb3J9IHdoZW4gdGhlIGVudmVsb3BlIHNlbmRlciBvciBhIHJlY2lwaWVudCBpcyBub3QgYW4gYWxsb3dsaXN0ZWQgbWFpbGJveFxuICAgICAqL1xuICAgIGFzeW5jIHNlbmQoZnJvbSwgcmVjaXBpZW50cywgcmF3KSB7XG4gICAgICAgIGlmICghdGhpcy50cmFuc3BvcnRlcikge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEludGVybmFsRXJyb3IoXCJTTVRQIGNsaWVudCBpcyBub3QgY29ubmVjdGVkXCIpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHNlbmRlciA9IGFzc2VydEVtYWlsQWRkcmVzcyhmcm9tLCBcImVudmVsb3BlIHNlbmRlclwiKTtcbiAgICAgICAgY29uc3QgZW52ZWxvcGVzID0gcmVjaXBpZW50cy5tYXAoKHJlY2lwaWVudCkgPT4gYXNzZXJ0RW1haWxBZGRyZXNzKHJlY2lwaWVudCwgXCJlbnZlbG9wZSByZWNpcGllbnRcIikpO1xuICAgICAgICBjb25zdCBtZXNzYWdlID0ge1xuICAgICAgICAgICAgZW52ZWxvcGU6IHsgZnJvbTogc2VuZGVyLCB0bzogZW52ZWxvcGVzIH0sXG4gICAgICAgICAgICByYXcsXG4gICAgICAgIH07XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBhd2FpdCB0aGlzLnRyYW5zcG9ydGVyLnNlbmRNYWlsKG1lc3NhZ2UpO1xuICAgICAgICB9XG4gICAgICAgIGNhdGNoIChlcnJvcikge1xuICAgICAgICAgICAgdGhyb3cgdGhpcy50cmFuc3BvcnRFcnJvcihcIlNNVFAgZGVsaXZlcnkgZmFpbGVkXCIsIGVycm9yKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb24gQ2xvc2VzIHRoZSBzZXNzaW9uIGdyYWNlZnVsbHlcbiAgICAgKiBAc3VtbWFyeSBDbG9zZXMgdGhlIG5vZGVtYWlsZXIgdHJhbnNwb3J0LCBpZ25vcmluZyBzaHV0ZG93biBmYWlsdXJlcy5cbiAgICAgKi9cbiAgICBhc3luYyBjbG9zZSgpIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHRoaXMudHJhbnNwb3J0ZXI/LmNsb3NlKCk7XG4gICAgICAgIH1cbiAgICAgICAgZmluYWxseSB7XG4gICAgICAgICAgICB0aGlzLnRyYW5zcG9ydGVyID0gdW5kZWZpbmVkO1xuICAgICAgICB9XG4gICAgfVxufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvbi9qc29uO2Jhc2U2NCxleUoyWlhKemFXOXVJam96TENKbWFXeGxJam9pYzIxMGNDNXFjeUlzSW5OdmRYSmpaVkp2YjNRaU9pSWlMQ0p6YjNWeVkyVnpJanBiSWk0dUx5NHVMeTR1THk0dUwzTnlZeTlqYjIxdGN5OWxiV0ZwYkM5emJYUndMblJ6SWwwc0ltNWhiV1Z6SWpwYlhTd2liV0Z3Y0dsdVozTWlPaUpCUVVGQk96czdPenM3T3pzN096czdSMEZaUnp0QlFVTklMRTlCUVU4c1JVRkJSU3hoUVVGaExFVkJRVVVzVFVGQlRTeDVRa0ZCZVVJc1EwRkJRenRCUVVWNFJDeFBRVUZQTEVWQlFVVXNhMEpCUVd0Q0xFVkJRVVVzYTBKQlFXVTdRVUZyUkRWRE96czdPenM3T3pzN096czdPenM3T3pzN096czdPenM3T3pzN096czdSMEU0UWtjN1FVRkRTQ3hOUVVGTkxFOUJRVThzVlVGQlZUdEpRVWR5UWpzN096czdUMEZMUnp0SlFVTklMRmxCUVc5Q0xFMUJRV3RDTzFGQlFXeENMRmRCUVUwc1IwRkJUaXhOUVVGTkxFTkJRVms3U1VGQlJ5eERRVUZETzBsQlJXeERMR2RDUVVGblFqdFJRVU4wUWl4TlFVRk5MRTFCUVUwc1IwRkJSeXhKUVVGSkxFTkJRVU1zVFVGQlRTeERRVUZETEUxQlFVMHNTVUZCU1N4TFFVRkxMRU5CUVVNN1VVRkRNME1zVFVGQlRTeGpRVUZqTEVkQlFVY3NUMEZCVHl4RFFVTTFRaXhKUVVGSkxFTkJRVU1zVFVGQlRTeERRVUZETEZGQlFWRXNTVUZCU1N4SlFVRkpMRU5CUVVNc1RVRkJUU3hEUVVGRExGRkJRVkVzUTBGRE4wTXNRMEZCUXp0UlFVTkdMRTFCUVUwc1QwRkJUeXhIUVVGSExFbEJRVWtzUTBGQlF5eE5RVUZOTEVOQlFVTXNUMEZCVHl4SlFVRkpMRXRCUVVzc1EwRkJRenRSUVVNM1F5eFBRVUZQTzFsQlEwd3NTVUZCU1N4RlFVRkZMRWxCUVVrc1EwRkJReXhOUVVGTkxFTkJRVU1zU1VGQlNUdFpRVU4wUWl4SlFVRkpMRVZCUVVVc1NVRkJTU3hEUVVGRExFMUJRVTBzUTBGQlF5eEpRVUZKTEVsQlFVa3NRMEZCUXl4TlFVRk5MRU5CUVVNc1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETEVOQlFVTXNSMEZCUnl4RFFVRkRPMWxCUXpsRExFMUJRVTA3V1VGRFRpeEpRVUZKTEVWQlFVVXNTVUZCU1N4RFFVRkRMRTFCUVUwc1EwRkJReXhqUVVGakxFbEJRVWtzVlVGQlZUdFpRVU01UXl4VlFVRlZMRVZCUTFJc1EwRkJReXhOUVVGTkxFbEJRVWtzWTBGQll5eEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVRkRMRTFCUVUwc1EwRkJReXhyUWtGQmEwSTdXVUZET1VRc1NVRkJTU3hGUVVGRkxHTkJRV003WjBKQlEyeENMRU5CUVVNc1EwRkJRenR2UWtGRFJTeEpRVUZKTEVWQlFVVXNTVUZCU1N4RFFVRkRMRTFCUVUwc1EwRkJReXhSUVVGUk8yOUNRVU14UWl4SlFVRkpMRVZCUVVVc1NVRkJTU3hEUVVGRExFMUJRVTBzUTBGQlF5eFJRVUZSTzI5Q1FVTXhRaXhOUVVGTkxFVkJRVVVzVDBGQlR6dHBRa0ZEYUVJN1owSkJRMGdzUTBGQlF5eERRVUZETEZOQlFWTTdXVUZEWWl4SFFVRkhMRVZCUVVVc1NVRkJTU3hEUVVGRExFMUJRVTBzUTBGQlF5eHpRa0ZCYzBJN1owSkJRM0pETEVOQlFVTXNRMEZCUXl4RlFVRkZMR3RDUVVGclFpeEZRVUZGTEV0QlFVc3NSVUZCUlR0blFrRkRMMElzUTBGQlF5eERRVUZETEZOQlFWTTdXVUZEWWl4cFFrRkJhVUlzUlVGQlJTeFBRVUZQTzFsQlF6RkNMR1ZCUVdVc1JVRkJSU3hQUVVGUE8xbEJRM2hDTEdGQlFXRXNSVUZCUlN4UFFVRlBPMU5CUTNaQ0xFTkJRVU03U1VGRFNpeERRVUZETzBsQlJVOHNZMEZCWXl4RFFVRkRMRTFCUVdNc1JVRkJSU3hMUVVGak8xRkJRMjVFTEVsQlFVa3NTMEZCU3l4WlFVRlpMR0ZCUVdFN1dVRkJSU3hQUVVGUExFdEJRVXNzUTBGQlF6dFJRVU5xUkN4UFFVRlBMRWxCUVVrc1lVRkJZU3hEUVVOMFFpeEhRVUZITEUxQlFVMHNTMEZCU3l4TFFVRkxMRmxCUVZrc1MwRkJTeXhEUVVGRExFTkJRVU1zUTBGQlF5eExRVUZMTEVOQlFVTXNUMEZCVHl4RFFVRkRMRU5CUVVNc1EwRkJReXhOUVVGTkxFTkJRVU1zUzBGQlN5eERRVUZETEVWQlFVVXNRMEZEZGtVc1EwRkJRenRKUVVOS0xFTkJRVU03U1VGRlJEczdPenM3T3pzN096dFBRVlZITzBsQlEwZ3NTMEZCU3l4RFFVRkRMRTlCUVU4N1VVRkRXQ3hKUVVGSkxFbEJRVWtzUTBGQlF5eFhRVUZYTzFsQlFVVXNUMEZCVHp0UlFVTTNRaXhOUVVGTkxGVkJRVlVzUjBGQlJ5eFpRVUZaTEVOQlFVTTdVVUZEYUVNc1NVRkJTU3hOUVVGM1FpeERRVUZETzFGQlF6ZENMRWxCUVVrc1EwRkJRenRaUVVOSUxFMUJRVTBzUjBGQlJ5eERRVUZETEUxQlFVMHNUVUZCVFN4RFFVRkRMRlZCUVZVc1EwRkJReXhEUVVGblF5eERRVUZETzFGQlEzSkZMRU5CUVVNN1VVRkJReXhOUVVGTkxFTkJRVU03V1VGRFVDeE5RVUZOTEVsQlFVa3NZVUZCWVN4RFFVTnlRaXd3UmtGQk1FWXNRMEZETTBZc1EwRkJRenRSUVVOS0xFTkJRVU03VVVGRFJDeEpRVUZKTEU5QlFVOHNUVUZCVFN4RFFVRkRMR1ZCUVdVc1MwRkJTeXhWUVVGVkxFVkJRVVVzUTBGQlF6dFpRVU5xUkN4TlFVRk5MRWxCUVVrc1lVRkJZU3hEUVVOeVFpeHJSVUZCYTBVc1EwRkRia1VzUTBGQlF6dFJRVU5LTEVOQlFVTTdVVUZEUkN4TlFVRk5MRmRCUVZjc1IwRkJSeXhOUVVGTkxFTkJRVU1zWlVGQlpTeERRVUZETEVsQlFVa3NRMEZCUXl4blFrRkJaMElzUlVGQlJTeEZRVUZGTzFsQlEyeEZMR2xDUVVGcFFpeEZRVUZGTEVsQlFVazdXVUZEZGtJc1owSkJRV2RDTEVWQlFVVXNTVUZCU1R0VFFVTjJRaXhEUVVGRExFTkJRVU03VVVGRFNDeEpRVUZKTEVOQlFVTTdXVUZEU0N4TlFVRk5MRmRCUVZjc1EwRkJReXhOUVVGTkxFVkJRVVVzUTBGQlF6dFJRVU0zUWl4RFFVRkRPMUZCUVVNc1QwRkJUeXhMUVVGTExFVkJRVVVzUTBGQlF6dFpRVU5tTEZkQlFWY3NRMEZCUXl4TFFVRkxMRVZCUVVVc1EwRkJRenRaUVVOd1FpeE5RVUZOTEVsQlFVa3NRMEZCUXl4alFVRmpMRU5CUVVNc2QwSkJRWGRDTEVWQlFVVXNTMEZCU3l4RFFVRkRMRU5CUVVNN1VVRkROMFFzUTBGQlF6dFJRVU5FTEVsQlFVa3NRMEZCUXl4WFFVRlhMRWRCUVVjc1YwRkJWeXhEUVVGRE8wbEJRMnBETEVOQlFVTTdTVUZGUkRzN096czdPenM3T3p0UFFWVkhPMGxCUTBnc1MwRkJTeXhEUVVGRExFbEJRVWtzUTBGQlF5eEpRVUZaTEVWQlFVVXNWVUZCYjBJc1JVRkJSU3hIUVVGWE8xRkJRM2hFTEVsQlFVa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1YwRkJWeXhGUVVGRkxFTkJRVU03V1VGRGRFSXNUVUZCVFN4SlFVRkpMR0ZCUVdFc1EwRkJReXc0UWtGQk9FSXNRMEZCUXl4RFFVRkRPMUZCUXpGRUxFTkJRVU03VVVGRFJDeE5RVUZOTEUxQlFVMHNSMEZCUnl4clFrRkJhMElzUTBGQlF5eEpRVUZKTEVWQlFVVXNhVUpCUVdsQ0xFTkJRVU1zUTBGQlF6dFJRVU16UkN4TlFVRk5MRk5CUVZNc1IwRkJSeXhWUVVGVkxFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTXNVMEZCVXl4RlFVRkZMRVZCUVVVc1EwRkROME1zYTBKQlFXdENMRU5CUVVNc1UwRkJVeXhGUVVGRkxHOUNRVUZ2UWl4RFFVRkRMRU5CUTNCRUxFTkJRVU03VVVGRFJpeE5RVUZOTEU5QlFVOHNSMEZCYjBJN1dVRkRMMElzVVVGQlVTeEZRVUZGTEVWQlFVVXNTVUZCU1N4RlFVRkZMRTFCUVUwc1JVRkJSU3hGUVVGRkxFVkJRVVVzVTBGQlV5eEZRVUZGTzFsQlEzcERMRWRCUVVjN1UwRkRTaXhEUVVGRE8xRkJRMFlzU1VGQlNTeERRVUZETzFsQlEwZ3NUVUZCVFN4SlFVRkpMRU5CUVVNc1YwRkJWeXhEUVVGRExGRkJRVkVzUTBGQlF5eFBRVUZQTEVOQlFVTXNRMEZCUXp0UlFVTXpReXhEUVVGRE8xRkJRVU1zVDBGQlR5eExRVUZMTEVWQlFVVXNRMEZCUXp0WlFVTm1MRTFCUVUwc1NVRkJTU3hEUVVGRExHTkJRV01zUTBGQlF5eHpRa0ZCYzBJc1JVRkJSU3hMUVVGTExFTkJRVU1zUTBGQlF6dFJRVU16UkN4RFFVRkRPMGxCUTBnc1EwRkJRenRKUVVWRU96czdUMEZIUnp0SlFVTklMRXRCUVVzc1EwRkJReXhMUVVGTE8xRkJRMVFzU1VGQlNTeERRVUZETzFsQlEwZ3NTVUZCU1N4RFFVRkRMRmRCUVZjc1JVRkJSU3hMUVVGTExFVkJRVVVzUTBGQlF6dFJRVU0xUWl4RFFVRkRPMmRDUVVGVExFTkJRVU03V1VGRFZDeEpRVUZKTEVOQlFVTXNWMEZCVnl4SFFVRkhMRk5CUVZNc1EwRkJRenRSUVVNdlFpeERRVUZETzBsQlEwZ3NRMEZCUXp0RFFVTkdJaXdpYzI5MWNtTmxjME52Ym5SbGJuUWlPbHNpTHlvcVhHNGdLaUJBYlc5a2RXeGxJR2x1ZEdWbmNtRjBhVzl1Y3k5amIyMXRjeTlsYldGcGJDOXpiWFJ3WEc0Z0tpQkFjM1Z0YldGeWVTQlRUVlJRSUdOc2FXVnVkQ0IxYzJWa0lHSjVJSFJvWlNCRmJXRnBiQ0J6WlhKMmFXTmxJR1p2Y2lCa2FYSmxZM1FnVTAxVVVDQmtaV3hwZG1WeWVTNWNiaUFxSUVCa1pYTmpjbWx3ZEdsdmJpQkVaV3hsWjJGMFpYTWdkR2hsSUZOTlZGQWdjSEp2ZEc5amIyd2dkRzhnZEdobElHOXdkR2x2Ym1Gc0lHQnViMlJsYldGcGJHVnlZRnh1SUNvZ2JHbGljbUZ5ZVNBb2RHaGxJSE5oYldVZ2JHbGljbUZ5ZVNCdU9HNGdkWE5sY3lrZ2FXNXpkR1ZoWkNCdlppQm9ZVzVrTFhKdmJHeHBibWNnZEdobElIZHBjbVZjYmlBcUlIQnliM1J2WTI5c09pQjBhR1VnZEhKaGJuTndiM0owSUhCbGNtWnZjbTF6SUVWSVRFOHNJRk5VUVZKVVZFeFRMMmx0Y0d4cFkybDBJRlJNVXl3Z1FWVlVTQ0JNVDBkSlRpeGNiaUFxSUdGdVpDQjBhR1VnWUUxQlNVd2dSbEpQVFdBdllGSkRVRlFnVkU5Z0wyQkVRVlJCWUNCMGNtRnVjMkZqZEdsdmJpQm1iM0lnWVNCd2NtVXRZblZwYkhRZ2NtRjNJRTFKVFVWY2JpQXFJRzFsYzNOaFoyVXVJRlJvWlNCd2RXSnNhV01nZTBCc2FXNXJJRk50ZEhCRGJHbGxiblI5SUhOMWNtWmhZMlVnYVhNZ2RXNWphR0Z1WjJWa0xpQkZiblpsYkc5d1pWeHVJQ29nWVdSa2NtVnpjMlZ6SUdGeVpTQjJZV3hwWkdGMFpXUWdkR2h5YjNWbmFDQjdRR3hwYm1zZ1lYTnpaWEowUlcxaGFXeEJaR1J5WlhOemZTQW9aR1ZqWVdaY2JpQXFJR0JDWVdSU1pYRjFaWE4wUlhKeWIzSmdjeWtnWW1WbWIzSmxJSFJvWlhrZ2NtVmhZMmdnWVc1NUlGTk5WRkFnWTI5dGJXRnVaQ3dnWVc1a0lHTnlaV1JsYm5ScFlXeHpJR0Z5WlZ4dUlDb2dibVYyWlhJZ2MyVnVkQ0J2ZG1WeUlHRWdjR3hoYVc1MFpYaDBJSE5sYzNOcGIyNGdkVzVzWlhOeklHQlRiWFJ3UTI5dVptbG5MbUZzYkc5M1VHeGhhVzUwWlhoMFFYVjBhR0JjYmlBcUlHOXdkSE1nYVc0dVhHNGdLaTljYm1sdGNHOXlkQ0I3SUVsdWRHVnlibUZzUlhKeWIzSWdmU0JtY205dElGd2lRR1JsWTJGbUxYUnpMMlJpTFdSbFkyOXlZWFJ2Y25OY0lqdGNibWx0Y0c5eWRDQjBlWEJsSUhzZ1UyVnVaRTFoYVd4UGNIUnBiMjV6TENCVWNtRnVjM0J2Y25SbGNpQjlJR1p5YjIwZ1hDSnViMlJsYldGcGJHVnlYQ0k3WEc1cGJYQnZjblFnZXlCaGMzTmxjblJGYldGcGJFRmtaSEpsYzNNZ2ZTQm1jbTl0SUZ3aUxpOXRhVzFsWENJN1hHNWNiaThxS2x4dUlDb2dRR1JsYzJOeWFYQjBhVzl1SUZOTlZGQWdZMjl1Ym1WamRHbHZiaUJqYjI1bWFXZDFjbUYwYVc5dVhHNGdLaUJBYzNWdGJXRnllU0JEWVhKeWFXVnpJSFJvWlNCelpYSjJaWElnWVdSa2NtVnpjeXdnYjNCMGFXOXVZV3dnYVcxd2JHbGphWFF0VkV4VEwxTlVRVkpVVkV4VFhHNGdLaUJ6Wld4bFkzUnBiMjRzSUdOeVpXUmxiblJwWVd4ekxDQmhibVFnZEdsdFpXOTFkSE11WEc0Z0tseHVJQ29nWUhObFkzVnlaV0FnYzJWc1pXTjBjeUJwYlhCc2FXTnBkQ0JVVEZNNklHQjBjblZsWUNCdmNHVnVjeUJoSUZSTVV5QnpiMk5yWlhRZ1puSnZiU0IwYUdVZ1ptbHljM1FnWW5sMFpWeHVJQ29nS0dSbFptRjFiSFFnY0c5eWRDQTBOalVwTGlCZ1ptRnNjMlZnSUdOdmJtNWxZM1J6SUdsdUlIQnNZV2x1ZEdWNGRDQmhibVFnZFhCbmNtRmtaWE1nZDJsMGFDQlRWRUZTVkZSTVUxeHVJQ29nZDJobGJpQjBhR1VnYzJWeWRtVnlJR0ZrZG1WeWRHbHpaWE1nYVhRZ0tHUmxabUYxYkhRZ2NHOXlkQ0ExT0RjcExpQlhhR1Z1SUdOeVpXUmxiblJwWVd4eklHRnlaVnh1SUNvZ1kyOXVabWxuZFhKbFpDd2dZR052Ym01bFkzUW9LV0FnY21WbWRYTmxjeUIwYnlCaGRYUm9aVzUwYVdOaGRHVWdkVzVzWlhOeklIUm9aU0J6WlhOemFXOXVJR2x6WEc0Z0tpQmxibU55ZVhCMFpXUTdJR0JoYkd4dmQxQnNZV2x1ZEdWNGRFRjFkR2hnSUdseklIUm9aU0JsZUhCc2FXTnBkQ3dnWkc5amRXMWxiblJsWkNCdmNIUXRiM1YwSUdadmNseHVJQ29nYzJWeWRtVnljeUIwYUdGMElHTmhibTV2ZENCdlptWmxjaUJVVEZNdVhHNGdLaUJBWTJGMFpXZHZjbmtnUTI5dGJYTmNiaUFxSUVCdFpXMWlaWEpQWmlCdGIyUjFiR1U2YVc1MFpXZHlZWFJwYjI1ekwyTnZiVzF6TDJWdFlXbHNMM050ZEhCY2JpQXFMMXh1Wlhod2IzSjBJR2x1ZEdWeVptRmpaU0JUYlhSd1EyOXVabWxuSUh0Y2JpQWdMeW9xSUVCa1pYTmpjbWx3ZEdsdmJpQlRUVlJRSUhObGNuWmxjaUJvYjNOMGJtRnRaU0FvY21WeGRXbHlaV1FwSUNvdlhHNGdJR2h2YzNRNklITjBjbWx1Wnp0Y2JpQWdMeW9xSUVCa1pYTmpjbWx3ZEdsdmJpQlRaWEoyWlhJZ2NHOXlkRHNnWkdWbVlYVnNkSE1nZEc4Z1lEUTJOV0FnZDJobGJpQmdjMlZqZFhKbFlDQnBjeUJnZEhKMVpXQXNJR0ExT0RkZ0lHOTBhR1Z5ZDJselpTQXFMMXh1SUNCd2IzSjBQem9nYm5WdFltVnlPMXh1SUNBdktpb2dRR1JsYzJOeWFYQjBhVzl1SUdCMGNuVmxZQ0J2Y0dWdWN5QmhiaUJwYlhCc2FXTnBkQzFVVEZNZ2MyOWphMlYwSUdaeWIyMGdkR2hsSUdacGNuTjBJR0o1ZEdVN0lHQm1ZV3h6WldBZ0tHUmxabUYxYkhRcElHTnZibTVsWTNSeklHbHVJSEJzWVdsdWRHVjRkQ0JoYm1RZ2RYQm5jbUZrWlhNZ2RtbGhJRk5VUVZKVVZFeFRJQ292WEc0Z0lITmxZM1Z5WlQ4NklHSnZiMnhsWVc0N1hHNGdJQzhxS2lCQVpHVnpZM0pwY0hScGIyNGdWWE5sY201aGJXVWdabTl5SUdCQlZWUklJRXhQUjBsT1lEc2dkMmhsYmlCelpYUWdkMmwwYUNCZ2NHRnpjM2R2Y21SZ0xDQmxibUZpYkdWeklIUm9aU0JtWVdsc0xXTnNiM05sWkNCd2JHRnBiblJsZUhRdFFWVlVTQ0JqYUdWamF5QXFMMXh1SUNCMWMyVnlibUZ0WlQ4NklITjBjbWx1Wnp0Y2JpQWdMeW9xSUVCa1pYTmpjbWx3ZEdsdmJpQlFZWE56ZDI5eVpDQm1iM0lnWUVGVlZFZ2dURTlIU1U1Z0lDb3ZYRzRnSUhCaGMzTjNiM0prUHpvZ2MzUnlhVzVuTzF4dUlDQXZLaW9nUUdSbGMyTnlhWEIwYVc5dUlFTnZibTVsWTNScGIyNHNJR2R5WldWMGFXNW5MQ0JoYm1RZ2MyOWphMlYwSUhScGJXVnZkWFFnYVc0Z2JXbHNiR2x6WldOdmJtUnpJQ2hrWldaaGRXeDBJR0F6TURBd01HQXBJQ292WEc0Z0lIUnBiV1Z2ZFhRL09pQnVkVzFpWlhJN1hHNGdJQzhxS2lCQVpHVnpZM0pwY0hScGIyNGdSWGh3YkdsamFYUnNlU0J3WlhKdGFYUWdZRUZWVkVnZ1RFOUhTVTVnSUc5MlpYSWdZU0J3YkdGcGJuUmxlSFFnYzJWemMybHZiaUFvWkdWbVlYVnNkQ0JnWm1Gc2MyVmdLU0FxTDF4dUlDQmhiR3h2ZDFCc1lXbHVkR1Y0ZEVGMWRHZy9PaUJpYjI5c1pXRnVPMXh1SUNBdktpb2dRR1JsYzJOeWFYQjBhVzl1SUVWNGNHeHBZMmwwYkhrZ1lXTmpaWEIwSUdGdUlHOTBhR1Z5ZDJselpTMXBiblpoYkdsa0lGUk1VeUJqWlhKMGFXWnBZMkYwWlNBb1pHVm1ZWFZzZENCZ1ptRnNjMlZnS1NBcUwxeHVJQ0JoYkd4dmQxVnVZWFYwYUc5eWFYcGxaRU5sY25SelB6b2dZbTl2YkdWaGJqdGNiaUFnTHlvcUlFQmtaWE5qY21sd2RHbHZiaUJEYkdsbGJuUWdhRzl6ZEc1aGJXVWdZVzV1YjNWdVkyVmtJR2x1SUdCRlNFeFBZQ0FvWkdWbVlYVnNkQ0JnWVhNdFozSmhjR2hnS1NBcUwxeHVJQ0JqYkdsbGJuUkliM04wYm1GdFpUODZJSE4wY21sdVp6dGNibjFjYmx4dUx5b3FYRzRnS2lCVGRISjFZM1IxY21Gc0lIWnBaWGNnYjJZZ2RHaGxJRzl3ZEdsdmJtRnNJR0J1YjJSbGJXRnBiR1Z5WUNCdGIyUjFiR1V1WEc0Z0tseHVJQ29nUkdWamJHRnlaV1FnYkc5allXeHNlU0J6YnlCMGFHbHpJR1pwYkdVZ2JtVjJaWElnYzNSaGRHbGpZV3hzZVNCcGJYQnZjblJ6SUhSb1pTQnZjSFJwYjI1aGJDQndaV1Z5TzF4dUlDb2dkR2hsSUcxdlpIVnNaU0JwY3lCeVpYTnZiSFpsWkNCM2FYUm9JR0VnWkhsdVlXMXBZeUJwYlhCdmNuUWdhVzRnZTBCc2FXNXJJRk50ZEhCRGJHbGxiblF1WTI5dWJtVmpkSDB1WEc0Z0tpOWNibWx1ZEdWeVptRmpaU0JPYjJSbGJXRnBiR1Z5VFc5a2RXeGxJSHRjYmlBZ1kzSmxZWFJsVkhKaGJuTndiM0owS0Z4dUlDQWdJRzl3ZEdsdmJuTTZJRkpsWTI5eVpEeHpkSEpwYm1jc0lIVnVhMjV2ZDI0K0xGeHVJQ0FnSUdSbFptRjFiSFJ6UHpvZ1VtVmpiM0prUEhOMGNtbHVaeXdnZFc1cmJtOTNiajVjYmlBZ0tUb2dWSEpoYm5Od2IzSjBaWEk3WEc1OVhHNWNiaThxS2x4dUlDb2dRR1JsYzJOeWFYQjBhVzl1SUZOTlZGQWdZMnhwWlc1MElHWnZjaUJ5WVhjZ1RVbE5SU0JrWld4cGRtVnllVnh1SUNvZ1FITjFiVzFoY25rZ1EyOXVibVZqZEhNZ1lXNWtJR0YxZEdobGJuUnBZMkYwWlhNZ2RHaHliM1ZuYUNCaElHNXZaR1Z0WVdsc1pYSWdVMDFVVUNCMGNtRnVjM0J2Y25SY2JpQXFJQ2hwYlhCc2FXTnBkQ0JVVEZNZ2IyNGdZSE5sWTNWeVpXQXNJRk5VUVZKVVZFeFRJRzkwYUdWeWQybHpaU2tzSUhSb1pXNGdaR1ZzYVhabGNuTWdZU0J3Y21VdFluVnBiSFJjYmlBcUlHMWxjM05oWjJVZ2QybDBhQ0IwYUdVZ1pXNTJaV3h2Y0dVZ2MyVnVaR1Z5TDNKbFkybHdhV1Z1ZEhNZ1lXNWtJSFJvWlNCeVlYY2dVa1pESURVek1qSWdjMjkxY21ObExseHVJQ29nUTNKbFpHVnVkR2xoYkhNZ1lYSmxJRzVsZG1WeUlITmxiblFnYjNabGNpQmhJSEJzWVdsdWRHVjRkQ0J6WlhOemFXOXVJSFZ1YkdWemMxeHVJQ29nWUdGc2JHOTNVR3hoYVc1MFpYaDBRWFYwYUdBZ2FYTWdjMlYwTENCaGJtUWdaWFpsY25rZ1pXNTJaV3h2Y0dVZ1lXUmtjbVZ6Y3lCcGN5QjJZV3hwWkdGMFpXUWdZbVZtYjNKbFhHNGdLaUJwZENCeVpXRmphR1Z6SUhSb1pTQjBjbUZ1YzNCdmNuUXVYRzRnS2lCQVkyRjBaV2R2Y25rZ1EyOXRiWE5jYmlBcUlFQnRaVzFpWlhKUFppQnRiMlIxYkdVNmFXNTBaV2R5WVhScGIyNXpMMk52YlcxekwyVnRZV2xzTDNOdGRIQmNiaUFxSUVCbGVHRnRjR3hsWEc0Z0tpQmdZR0IwYzF4dUlDb2dhVzF3YjNKMElIc2dVMjEwY0VOc2FXVnVkQ3dnWW5WcGJHUkZiV0ZwYkNCOUlHWnliMjBnWENKQVpHVmpZV1l0ZEhNdmFXNTBaV2R5WVhScGIyNXpMMk52YlcxekwyVnRZV2xzWENJN1hHNGdLbHh1SUNvZ1kyOXVjM1FnWTJ4cFpXNTBJRDBnYm1WM0lGTnRkSEJEYkdsbGJuUW9lMXh1SUNvZ0lDQm9iM04wT2lCY0luTnRkSEF1WlhoaGJYQnNaUzVqYjIxY0lpeGNiaUFxSUNBZ2NHOXlkRG9nTlRnM0xGeHVJQ29nSUNCMWMyVnlibUZ0WlRvZ1hDSnViM0psY0d4NVFHVjRZVzF3YkdVdVkyOXRYQ0lzWEc0Z0tpQWdJSEJoYzNOM2IzSmtPaUJ3Y205alpYTnpMbVZ1ZGk1VFRWUlFYMUJCVTFOWFQxSkVMRnh1SUNvZ2ZTazdYRzRnS2lCaGQyRnBkQ0JqYkdsbGJuUXVZMjl1Ym1WamRDZ3BPMXh1SUNvZ1kyOXVjM1FnYldGcGJDQTlJR0oxYVd4a1JXMWhhV3dvZTF4dUlDb2dJQ0JtY205dE9pQmNJbTV2Y21Wd2JIbEFaWGhoYlhCc1pTNWpiMjFjSWl4Y2JpQXFJQ0FnZEc4NklGdGNJbTl3YzBCbGVHRnRjR3hsTG1OdmJWd2lYU3hjYmlBcUlDQWdjM1ZpYW1WamREb2dYQ0pPYVdkb2RHeDVJSEpsY0c5eWRGd2lMRnh1SUNvZ0lDQjBaWGgwT2lCY0lrRnNiQ0J6ZVhOMFpXMXpJRzV2YldsdVlXd3VYQ0lzWEc0Z0tpQjlLVHRjYmlBcUlHRjNZV2wwSUdOc2FXVnVkQzV6Wlc1a0tHMWhhV3d1Wm5KdmJTd2diV0ZwYkM1eVpXTnBjR2xsYm5SekxDQnRZV2xzTG5KaGR5azdYRzRnS2lCaGQyRnBkQ0JqYkdsbGJuUXVZMnh2YzJVb0tUdGNiaUFxSUdCZ1lGeHVJQ292WEc1bGVIQnZjblFnWTJ4aGMzTWdVMjEwY0VOc2FXVnVkQ0I3WEc0Z0lIQnlhWFpoZEdVZ2RISmhibk53YjNKMFpYSS9PaUJVY21GdWMzQnZjblJsY2p0Y2JseHVJQ0F2S2lwY2JpQWdJQ29nUUdSbGMyTnlhWEIwYVc5dUlFTnlaV0YwWlhNZ1lXNGdVMDFVVUNCamJHbGxiblJjYmlBZ0lDb2dRSE4xYlcxaGNua2dVM1J2Y21WeklIUm9aU0JqYjI1bWFXYzdJSFJvWlNCdWIyUmxiV0ZwYkdWeUlIUnlZVzV6Y0c5eWRDQnBjeUJ2Ym14NUlHTnlaV0YwWldRZ1lXNWtYRzRnSUNBcUlIWmxjbWxtYVdWa0lHSjVJSHRBYkdsdWF5QlRiWFJ3UTJ4cFpXNTBMbU52Ym01bFkzUjlMbHh1SUNBZ0tpQkFjR0Z5WVcwZ1kyOXVabWxuSUMwZ1UyVnlkbVZ5SUdGa1pISmxjM01zSUc5d2RHbHZibUZzSUdOeVpXUmxiblJwWVd4ekxDQmhibVFnVkV4VEwzUnBiV1Z2ZFhRZ2IzQjBhVzl1YzF4dUlDQWdLaTljYmlBZ1kyOXVjM1J5ZFdOMGIzSW9jSEpwZG1GMFpTQmpiMjVtYVdjNklGTnRkSEJEYjI1bWFXY3BJSHQ5WEc1Y2JpQWdjSEpwZG1GMFpTQjBjbUZ1YzNCdmNuUlBjSFJwYjI1ektDazZJRkpsWTI5eVpEeHpkSEpwYm1jc0lIVnVhMjV2ZDI0K0lIdGNiaUFnSUNCamIyNXpkQ0J6WldOMWNtVWdQU0IwYUdsekxtTnZibVpwWnk1elpXTjFjbVVnUHo4Z1ptRnNjMlU3WEc0Z0lDQWdZMjl1YzNRZ2FHRnpRM0psWkdWdWRHbGhiSE1nUFNCQ2IyOXNaV0Z1S0Z4dUlDQWdJQ0FnZEdocGN5NWpiMjVtYVdjdWRYTmxjbTVoYldVZ0ppWWdkR2hwY3k1amIyNW1hV2N1Y0dGemMzZHZjbVJjYmlBZ0lDQXBPMXh1SUNBZ0lHTnZibk4wSUhScGJXVnZkWFFnUFNCMGFHbHpMbU52Ym1acFp5NTBhVzFsYjNWMElEOC9JRE13TURBd08xeHVJQ0FnSUhKbGRIVnliaUI3WEc0Z0lDQWdJQ0JvYjNOME9pQjBhR2x6TG1OdmJtWnBaeTVvYjNOMExGeHVJQ0FnSUNBZ2NHOXlkRG9nZEdocGN5NWpiMjVtYVdjdWNHOXlkQ0EvUHlBb2MyVmpkWEpsSUQ4Z05EWTFJRG9nTlRnM0tTeGNiaUFnSUNBZ0lITmxZM1Z5WlN4Y2JpQWdJQ0FnSUc1aGJXVTZJSFJvYVhNdVkyOXVabWxuTG1Oc2FXVnVkRWh2YzNSdVlXMWxJRDgvSUZ3aVlYTXRaM0poY0doY0lpeGNiaUFnSUNBZ0lISmxjWFZwY21WVVRGTTZYRzRnSUNBZ0lDQWdJQ0Z6WldOMWNtVWdKaVlnYUdGelEzSmxaR1Z1ZEdsaGJITWdKaVlnSVhSb2FYTXVZMjl1Wm1sbkxtRnNiRzkzVUd4aGFXNTBaWGgwUVhWMGFDeGNiaUFnSUNBZ0lHRjFkR2c2SUdoaGMwTnlaV1JsYm5ScFlXeHpYRzRnSUNBZ0lDQWdJRDhnZTF4dUlDQWdJQ0FnSUNBZ0lDQWdkWE5sY2pvZ2RHaHBjeTVqYjI1bWFXY3VkWE5sY201aGJXVXNYRzRnSUNBZ0lDQWdJQ0FnSUNCd1lYTnpPaUIwYUdsekxtTnZibVpwWnk1d1lYTnpkMjl5WkN4Y2JpQWdJQ0FnSUNBZ0lDQWdJRzFsZEdodlpEb2dYQ0pNVDBkSlRsd2lMRnh1SUNBZ0lDQWdJQ0FnSUgxY2JpQWdJQ0FnSUNBZ09pQjFibVJsWm1sdVpXUXNYRzRnSUNBZ0lDQjBiSE02SUhSb2FYTXVZMjl1Wm1sbkxtRnNiRzkzVlc1aGRYUm9iM0pwZW1Wa1EyVnlkSE5jYmlBZ0lDQWdJQ0FnUHlCN0lISmxhbVZqZEZWdVlYVjBhRzl5YVhwbFpEb2dabUZzYzJVZ2ZWeHVJQ0FnSUNBZ0lDQTZJSFZ1WkdWbWFXNWxaQ3hjYmlBZ0lDQWdJR052Ym01bFkzUnBiMjVVYVcxbGIzVjBPaUIwYVcxbGIzVjBMRnh1SUNBZ0lDQWdaM0psWlhScGJtZFVhVzFsYjNWME9pQjBhVzFsYjNWMExGeHVJQ0FnSUNBZ2MyOWphMlYwVkdsdFpXOTFkRG9nZEdsdFpXOTFkQ3hjYmlBZ0lDQjlPMXh1SUNCOVhHNWNiaUFnY0hKcGRtRjBaU0IwY21GdWMzQnZjblJGY25KdmNpaHdjbVZtYVhnNklITjBjbWx1Wnl3Z1pYSnliM0k2SUhWdWEyNXZkMjRwT2lCSmJuUmxjbTVoYkVWeWNtOXlJSHRjYmlBZ0lDQnBaaUFvWlhKeWIzSWdhVzV6ZEdGdVkyVnZaaUJKYm5SbGNtNWhiRVZ5Y205eUtTQnlaWFIxY200Z1pYSnliM0k3WEc0Z0lDQWdjbVYwZFhKdUlHNWxkeUJKYm5SbGNtNWhiRVZ5Y205eUtGeHVJQ0FnSUNBZ1lDUjdjSEpsWm1sNGZUb2dKSHRsY25KdmNpQnBibk4wWVc1alpXOW1JRVZ5Y205eUlEOGdaWEp5YjNJdWJXVnpjMkZuWlNBNklGTjBjbWx1WnlobGNuSnZjaWw5WUZ4dUlDQWdJQ2s3WEc0Z0lIMWNibHh1SUNBdktpcGNiaUFnSUNvZ1FHUmxjMk55YVhCMGFXOXVJRTl3Wlc1eklIUm9aU0JUVFZSUUlITmxjM05wYjI1Y2JpQWdJQ29nUUhOMWJXMWhjbmtnVEdGNmFXeDVJR3h2WVdSeklIUm9aU0J2Y0hScGIyNWhiQ0JnYm05a1pXMWhhV3hsY21BZ2NHVmxjaXdnWW5WcGJHUnpJSFJvWlNCVFRWUlFYRzRnSUNBcUlIUnlZVzV6Y0c5eWRDQm1iM0lnZEdobElHTnZibVpwWjNWeVpXUWdhRzl6ZEM5amNtVmtaVzUwYVdGc2N5d2dZVzVrSUhabGNtbG1hV1Z6SUdsMFhHNGdJQ0FxSUNoZ1JVaE1UMkFnS3lCVVRGTWdkWEJuY21Ga1pTQXJJR0JCVlZSSUlFeFBSMGxPWUNCM2FHVnVJR055WldSbGJuUnBZV3h6SUdGeVpTQmpiMjVtYVdkMWNtVmtLUzVjYmlBZ0lDb2dRWFYwYUdWdWRHbGpZWFJwYjI0Z1ptRnBiSE1nWTJ4dmMyVmtPaUIzYVhSb0lHTnlaV1JsYm5ScFlXeHpJR052Ym1acFozVnlaV1FnWVc1a0lHNXZJR1Z1WTNKNWNIUmxaRnh1SUNBZ0tpQnpaWE56YVc5dUxDQjBhR1VnZEhKaGJuTndiM0owSUhKbGNYVnBjbVZ6SUZOVVFWSlVWRXhUSUdGdVpDQjJaWEpwWm1sallYUnBiMjRnWm1GcGJITWdkVzVzWlhOelhHNGdJQ0FxSUdCaGJHeHZkMUJzWVdsdWRHVjRkRUYxZEdoZ0lIZGhjeUJ6WlhRZ2IyNGdkR2hsSUdOdmJtWnBaeTVjYmlBZ0lDb2dRSFJvY205M2N5QjdTVzUwWlhKdVlXeEZjbkp2Y24wZ2QyaGxiaUJnYm05a1pXMWhhV3hsY21BZ2FYTWdibTkwSUdsdWMzUmhiR3hsWkN3Z2IzSWdiMjVjYmlBZ0lDb2dZMjl1Ym1WamRHbHZiaXdnVkV4VExDQnZjaUJoZFhSb0lHWmhhV3gxY21WelhHNGdJQ0FxTDF4dUlDQmhjM2x1WXlCamIyNXVaV04wS0NrNklGQnliMjFwYzJVOGRtOXBaRDRnZTF4dUlDQWdJR2xtSUNoMGFHbHpMblJ5WVc1emNHOXlkR1Z5S1NCeVpYUjFjbTQ3WEc0Z0lDQWdZMjl1YzNRZ2JXOWtkV3hsVG1GdFpTQTlJRndpYm05a1pXMWhhV3hsY2x3aU8xeHVJQ0FnSUd4bGRDQnRiMlIxYkdVNklFNXZaR1Z0WVdsc1pYSk5iMlIxYkdVN1hHNGdJQ0FnZEhKNUlIdGNiaUFnSUNBZ0lHMXZaSFZzWlNBOUlDaGhkMkZwZENCcGJYQnZjblFvYlc5a2RXeGxUbUZ0WlNrcElHRnpJSFZ1YTI1dmQyNGdZWE1nVG05a1pXMWhhV3hsY2sxdlpIVnNaVHRjYmlBZ0lDQjlJR05oZEdOb0lIdGNiaUFnSUNBZ0lIUm9jbTkzSUc1bGR5QkpiblJsY201aGJFVnljbTl5S0Z4dUlDQWdJQ0FnSUNCY0lsTk5WRkFnWkdWc2FYWmxjbmtnY21WeGRXbHlaWE1nZEdobElHOXdkR2x2Ym1Gc0lDZHViMlJsYldGcGJHVnlKeUJ3WVdOcllXZGxPeUJwYm5OMFlXeHNJR2wwSUhSdklIVnpaU0IwYUdseklITjFjbVpoWTJWY0lseHVJQ0FnSUNBZ0tUdGNiaUFnSUNCOVhHNGdJQ0FnYVdZZ0tIUjVjR1Z2WmlCdGIyUjFiR1V1WTNKbFlYUmxWSEpoYm5Od2IzSjBJQ0U5UFNCY0ltWjFibU4wYVc5dVhDSXBJSHRjYmlBZ0lDQWdJSFJvY205M0lHNWxkeUJKYm5SbGNtNWhiRVZ5Y205eUtGeHVJQ0FnSUNBZ0lDQmNJbFJvWlNCdmNIUnBiMjVoYkNBbmJtOWtaVzFoYVd4bGNpY2djR0ZqYTJGblpTQmthV1FnYm05MElHVjRjRzl5ZENCamNtVmhkR1ZVY21GdWMzQnZjblJjSWx4dUlDQWdJQ0FnS1R0Y2JpQWdJQ0I5WEc0Z0lDQWdZMjl1YzNRZ2RISmhibk53YjNKMFpYSWdQU0J0YjJSMWJHVXVZM0psWVhSbFZISmhibk53YjNKMEtIUm9hWE11ZEhKaGJuTndiM0owVDNCMGFXOXVjeWdwTENCN1hHNGdJQ0FnSUNCa2FYTmhZbXhsUm1sc1pVRmpZMlZ6Y3pvZ2RISjFaU3hjYmlBZ0lDQWdJR1JwYzJGaWJHVlZjbXhCWTJObGMzTTZJSFJ5ZFdVc1hHNGdJQ0FnZlNrN1hHNGdJQ0FnZEhKNUlIdGNiaUFnSUNBZ0lHRjNZV2wwSUhSeVlXNXpjRzl5ZEdWeUxuWmxjbWxtZVNncE8xeHVJQ0FnSUgwZ1kyRjBZMmdnS0dWeWNtOXlLU0I3WEc0Z0lDQWdJQ0IwY21GdWMzQnZjblJsY2k1amJHOXpaU2dwTzF4dUlDQWdJQ0FnZEdoeWIzY2dkR2hwY3k1MGNtRnVjM0J2Y25SRmNuSnZjaWhjSWxOTlZGQWdZMjl1Ym1WamRHbHZiaUJtWVdsc1pXUmNJaXdnWlhKeWIzSXBPMXh1SUNBZ0lIMWNiaUFnSUNCMGFHbHpMblJ5WVc1emNHOXlkR1Z5SUQwZ2RISmhibk53YjNKMFpYSTdYRzRnSUgxY2JseHVJQ0F2S2lwY2JpQWdJQ29nUUdSbGMyTnlhWEIwYVc5dUlFUmxiR2wyWlhKeklHRWdjbUYzSUcxbGMzTmhaMlVnYjNabGNpQjBhR1VnWlhOMFlXSnNhWE5vWldRZ2MyVnpjMmx2Ymx4dUlDQWdLaUJBYzNWdGJXRnllU0JXWVd4cFpHRjBaWE1nZEdobElHVnVkbVZzYjNCbExDQjBhR1Z1SUdoaGJtUnpJSFJvWlNCelpXNWtaWElzSUhKbFkybHdhV1Z1ZEhNc0lHRnVaRnh1SUNBZ0tpQnlZWGNnVWtaRElEVXpNaklnYzI5MWNtTmxJSFJ2SUc1dlpHVnRZV2xzWlhJbmN5QmdjMlZ1WkUxaGFXeGdJQ2gwYUdVZ2RISmhibk53YjNKMElIQmxjbVp2Y20xelhHNGdJQ0FxSUhGMVpYVmxhVzVuTENCa2IzUXRjM1IxWm1acGJtY3NJR0Z1WkNCRFVreEdJRzV2Y20xaGJHbDZZWFJwYjI0cExseHVJQ0FnS2lCQWNHRnlZVzBnWm5KdmJTQXRJRVZ1ZG1Wc2IzQmxJSE5sYm1SbGNpQmhaR1J5WlhOelhHNGdJQ0FxSUVCd1lYSmhiU0J5WldOcGNHbGxiblJ6SUMwZ1JXNTJaV3h2Y0dVZ2NtVmphWEJwWlc1MElHRmtaSEpsYzNObGMxeHVJQ0FnS2lCQWNHRnlZVzBnY21GM0lDMGdVbUYzSUZKR1F5QTFNekl5SUcxbGMzTmhaMlVnZEdWNGRGeHVJQ0FnS2lCQWRHaHliM2R6SUh0SmJuUmxjbTVoYkVWeWNtOXlmU0IzYUdWdUlHNXZkQ0JqYjI1dVpXTjBaV1FnYjNJZ2RHaGxJSE5sY25abGNpQnlaV3BsWTNSeklHUmxiR2wyWlhKNVhHNGdJQ0FxSUVCMGFISnZkM01nZTBKaFpGSmxjWFZsYzNSRmNuSnZjbjBnZDJobGJpQjBhR1VnWlc1MlpXeHZjR1VnYzJWdVpHVnlJRzl5SUdFZ2NtVmphWEJwWlc1MElHbHpJRzV2ZENCaGJpQmhiR3h2ZDJ4cGMzUmxaQ0J0WVdsc1ltOTRYRzRnSUNBcUwxeHVJQ0JoYzNsdVl5QnpaVzVrS0daeWIyMDZJSE4wY21sdVp5d2djbVZqYVhCcFpXNTBjem9nYzNSeWFXNW5XMTBzSUhKaGR6b2djM1J5YVc1bktUb2dVSEp2YldselpUeDJiMmxrUGlCN1hHNGdJQ0FnYVdZZ0tDRjBhR2x6TG5SeVlXNXpjRzl5ZEdWeUtTQjdYRzRnSUNBZ0lDQjBhSEp2ZHlCdVpYY2dTVzUwWlhKdVlXeEZjbkp2Y2loY0lsTk5WRkFnWTJ4cFpXNTBJR2x6SUc1dmRDQmpiMjV1WldOMFpXUmNJaWs3WEc0Z0lDQWdmVnh1SUNBZ0lHTnZibk4wSUhObGJtUmxjaUE5SUdGemMyVnlkRVZ0WVdsc1FXUmtjbVZ6Y3lobWNtOXRMQ0JjSW1WdWRtVnNiM0JsSUhObGJtUmxjbHdpS1R0Y2JpQWdJQ0JqYjI1emRDQmxiblpsYkc5d1pYTWdQU0J5WldOcGNHbGxiblJ6TG0xaGNDZ29jbVZqYVhCcFpXNTBLU0E5UGx4dUlDQWdJQ0FnWVhOelpYSjBSVzFoYVd4QlpHUnlaWE56S0hKbFkybHdhV1Z1ZEN3Z1hDSmxiblpsYkc5d1pTQnlaV05wY0dsbGJuUmNJaWxjYmlBZ0lDQXBPMXh1SUNBZ0lHTnZibk4wSUcxbGMzTmhaMlU2SUZObGJtUk5ZV2xzVDNCMGFXOXVjeUE5SUh0Y2JpQWdJQ0FnSUdWdWRtVnNiM0JsT2lCN0lHWnliMjA2SUhObGJtUmxjaXdnZEc4NklHVnVkbVZzYjNCbGN5QjlMRnh1SUNBZ0lDQWdjbUYzTEZ4dUlDQWdJSDA3WEc0Z0lDQWdkSEo1SUh0Y2JpQWdJQ0FnSUdGM1lXbDBJSFJvYVhNdWRISmhibk53YjNKMFpYSXVjMlZ1WkUxaGFXd29iV1Z6YzJGblpTazdYRzRnSUNBZ2ZTQmpZWFJqYUNBb1pYSnliM0lwSUh0Y2JpQWdJQ0FnSUhSb2NtOTNJSFJvYVhNdWRISmhibk53YjNKMFJYSnliM0lvWENKVFRWUlFJR1JsYkdsMlpYSjVJR1poYVd4bFpGd2lMQ0JsY25KdmNpazdYRzRnSUNBZ2ZWeHVJQ0I5WEc1Y2JpQWdMeW9xWEc0Z0lDQXFJRUJrWlhOamNtbHdkR2x2YmlCRGJHOXpaWE1nZEdobElITmxjM05wYjI0Z1ozSmhZMlZtZFd4c2VWeHVJQ0FnS2lCQWMzVnRiV0Z5ZVNCRGJHOXpaWE1nZEdobElHNXZaR1Z0WVdsc1pYSWdkSEpoYm5Od2IzSjBMQ0JwWjI1dmNtbHVaeUJ6YUhWMFpHOTNiaUJtWVdsc2RYSmxjeTVjYmlBZ0lDb3ZYRzRnSUdGemVXNWpJR05zYjNObEtDazZJRkJ5YjIxcGMyVThkbTlwWkQ0Z2UxeHVJQ0FnSUhSeWVTQjdYRzRnSUNBZ0lDQjBhR2x6TG5SeVlXNXpjRzl5ZEdWeVB5NWpiRzl6WlNncE8xeHVJQ0FnSUgwZ1ptbHVZV3hzZVNCN1hHNGdJQ0FnSUNCMGFHbHpMblJ5WVc1emNHOXlkR1Z5SUQwZ2RXNWtaV1pwYm1Wa08xeHVJQ0FnSUgxY2JpQWdmVnh1ZlZ4dUlsMTkiXX0=
|
|
@@ -75,5 +75,5 @@ exports.CommsEnvironment = logging_1.LoggedEnvironment.accumulate({
|
|
|
75
75
|
},
|
|
76
76
|
},
|
|
77
77
|
});
|
|
78
|
-
//# sourceMappingURL=
|
|
79
|
-
//# sourceMappingURL=environment.cjs.map
|
|
78
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52aXJvbm1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tbXMvZW52aXJvbm1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUF5RnREOzs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FrQkc7QUFDSCxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxpQkFBaUIsQ0FBQyxVQUFVLENBQUM7SUFDM0QsS0FBSyxFQUFFO1FBQ0wsS0FBSyxFQUFFO1lBQ0wsS0FBSyxFQUFFLEVBQUU7WUFDVCxPQUFPLEVBQUUsRUFBRTtZQUNYLE9BQU8sRUFBRSxTQUE4QjtTQUN4QztRQUNELFFBQVEsRUFBRTtZQUNSLEtBQUssRUFBRSxFQUFFO1lBQ1QsT0FBTyxFQUFFLEVBQUU7WUFDWCxPQUFPLEVBQUUsU0FBOEI7U0FDeEM7UUFDRCxLQUFLLEVBQUU7WUFDTCxLQUFLLEVBQUUsRUFBRTtZQUNULFVBQVUsRUFBRSxFQUFFO1lBQ2QsT0FBTyxFQUFFLEVBQUU7WUFDWCxPQUFPLEVBQUUsU0FBOEI7U0FDeEM7UUFDRCxLQUFLLEVBQUU7WUFDTCxRQUFRLEVBQUUsRUFBRTtZQUNaLElBQUksRUFBRSxFQUFFO1lBQ1IsSUFBSSxFQUFFLFNBQThCO1lBQ3BDLE1BQU0sRUFBRSxTQUErQjtZQUN2QyxRQUFRLEVBQUUsRUFBRTtZQUNaLFFBQVEsRUFBRSxFQUFFO1lBQ1osSUFBSSxFQUFFLEVBQUU7WUFDUixLQUFLLEVBQUUsRUFBRTtZQUNULFlBQVksRUFBRSxFQUFFO1lBQ2hCLE9BQU8sRUFBRSxTQUE4QjtTQUN4QztRQUNELEtBQUssRUFBRTtZQUNMLEtBQUssRUFBRSxFQUFFO1lBQ1QsTUFBTSxFQUFFLEVBQUU7WUFDVixPQUFPLEVBQUUsRUFBRTtZQUNYLE9BQU8sRUFBRSxTQUE4QjtTQUN4QztRQUNELE9BQU8sRUFBRTtZQUNQLEtBQUssRUFBRSxFQUFFO1lBQ1QsT0FBTyxFQUFFLEVBQUU7WUFDWCxPQUFPLEVBQUUsU0FBOEI7U0FDeEM7UUFDRCxRQUFRLEVBQUU7WUFDUixLQUFLLEVBQUUsRUFBRTtZQUNULGFBQWEsRUFBRSxFQUFFO1lBQ2pCLE9BQU8sRUFBRSxFQUFFO1lBQ1gsT0FBTyxFQUFFLFNBQThCO1NBQ3hDO1FBQ0QsT0FBTyxFQUFFO1lBQ1AsS0FBSyxFQUFFLEVBQUU7WUFDVCxPQUFPLEVBQUUsRUFBRTtZQUNYLE9BQU8sRUFBRSxTQUE4QjtTQUN4QztLQUNGO0NBQ3VCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IExvZ2dlZEVudmlyb25tZW50IH0gZnJvbSBcIkBkZWNhZi10cy9sb2dnaW5nXCI7XG5cbi8qKlxuICogQG1vZHVsZSBpbnRlZ3JhdGlvbnMvY29tbXMvZW52aXJvbm1lbnRcbiAqIEBzdW1tYXJ5IEVudmlyb25tZW50IGNvbnRyYWN0IGFuZCBhY2N1bXVsYXRlZCBlbnZpcm9ubWVudCBmb3IgdGhlIGNvbW1zIGludGVncmF0aW9uIHNlcnZpY2VzLlxuICogQGRlc2NyaXB0aW9uIERlY2xhcmVzIHRoZSBgQ29tbXNFbnZpcm9ubWVudFNoYXBlYCBjb25zdW1lZCBieSB0aGUgU2xhY2ssXG4gKiBUZWxlZ3JhbSwgVGVhbXMsIEdtYWlsLCBEaXNjb3JkLCBXaGF0c0FwcCwgYW5kIE91dGxvb2sgc2VydmljZXMnXG4gKiBgY29uZmlnRnJvbUVudmlyb25tZW50KClgIGltcGxlbWVudGF0aW9ucyBhbmQgdGhlIGBDb21tc0Vudmlyb25tZW50YFxuICogc2luZ2xldG9uIGNyZWF0ZWQgdmlhIGBMb2dnZWRFbnZpcm9ubWVudC5hY2N1bXVsYXRlYC4gU2VydmljZXMgcmVhZCB0aGVpclxuICogY3JlZGVudGlhbHMgYW5kIGRlZmF1bHRzIGZyb20gdGhlIG1hdGNoaW5nIGBjb21tcy48cHJvdmlkZXI+YCBzbGljZSwgdXNpbmdcbiAqIHRoZSBgZW52U3RyaW5nYC9gZW52TnVtYmVyYCBoZWxwZXJzIGZyb20gYHNoYXJlZC9lbnZpcm9ubWVudFZhbHVlYCB0byByZWplY3RcbiAqIHVuc2V0LWxlYWYgcHJveGllcy4gVGhlIG1hdGNoaW5nIHB1YmxpYyBzdWJwYXRoIGV4cG9ydHMgYXJlXG4gKiBgQGRlY2FmLXRzL2ludGVncmF0aW9ucy9jb21tcy9kaXNjb3JkYCxcbiAqIGBAZGVjYWYtdHMvaW50ZWdyYXRpb25zL2NvbW1zL3doYXRzYXBwYCwgYW5kXG4gKiBgQGRlY2FmLXRzL2ludGVncmF0aW9ucy9jb21tcy9vdXRsb29rYC5cbiAqL1xuLyoqXG4gKiBAZGVzY3JpcHRpb24gRW52aXJvbm1lbnQgc2hhcGUgZm9yIHRoZSBjb21tcyBpbnRlZ3JhdGlvbiBzZXJ2aWNlc1xuICogQHN1bW1hcnkgRGVmaW5lcyB0aGUgYGNvbW1zYCByb290IHdpdGggb25lIHNsaWNlIHBlciBwcm92aWRlciAoYHNsYWNrYCxcbiAqIGB0ZWxlZ3JhbWAsIGB0ZWFtc2AsIGBlbWFpbGAsIGBnbWFpbGAsIGBkaXNjb3JkYCwgYHdoYXRzQXBwYCwgYG91dGxvb2tgKS5cbiAqIEVhY2ggc2xpY2UgY2FycmllcyB0aGUgcHJvdmlkZXIncyByZXF1aXJlZCBjcmVkZW50aWFscyAoZS5nLiBgdG9rZW5gLFxuICogYHdlYmhvb2tVcmxgLCBgcGhvbmVOdW1iZXJJZGApIHBsdXMgb3B0aW9uYWwgYGJhc2VVcmxgIG92ZXJyaWRlIGFuZFxuICogYHRpbWVvdXRgLiBGaWVsZHMgYXJlIHR5cGVkIGFzIHJlcXVpcmVkIGhlcmUgc29cbiAqIGBMb2dnZWRFbnZpcm9ubWVudC5hY2N1bXVsYXRlYCByZWdpc3RlcnMgdGhlbTsgYWJzZW50IHZhbHVlcyByZXNvbHZlIHRvXG4gKiBwcm94eSBwbGFjZWhvbGRlcnMgYXQgcnVudGltZSBhbmQgbXVzdCBwYXNzIHRocm91Z2ggYGVudlN0cmluZ2AvYGVudk51bWJlcmAuXG4gKiBWYWx1ZXMgYXJlIGNyZWRlbnRpYWwgcmVmZXJlbmNlcyBzdXBwbGllZCBieSB0aGUgZW52aXJvbm1lbnQsIG5ldmVyIGxpdGVyYWxzXG4gKiBlbWJlZGRlZCBpbiBzb3VyY2UuXG4gKiBAbWVtYmVyT2YgbW9kdWxlOmludGVncmF0aW9ucy9jb21tcy9lbnZpcm9ubWVudFxuICovXG5leHBvcnQgaW50ZXJmYWNlIENvbW1zRW52aXJvbm1lbnRTaGFwZSB7XG4gIGNvbW1zOiB7XG4gICAgc2xhY2s6IHtcbiAgICAgIHRva2VuOiBzdHJpbmc7XG4gICAgICBiYXNlVXJsOiBzdHJpbmc7XG4gICAgICB0aW1lb3V0PzogbnVtYmVyO1xuICAgIH07XG4gICAgdGVsZWdyYW06IHtcbiAgICAgIHRva2VuOiBzdHJpbmc7XG4gICAgICBiYXNlVXJsOiBzdHJpbmc7XG4gICAgICB0aW1lb3V0PzogbnVtYmVyO1xuICAgIH07XG4gICAgdGVhbXM6IHtcbiAgICAgIHRva2VuOiBzdHJpbmc7XG4gICAgICB3ZWJob29rVXJsOiBzdHJpbmc7XG4gICAgICBiYXNlVXJsOiBzdHJpbmc7XG4gICAgICB0aW1lb3V0PzogbnVtYmVyO1xuICAgIH07XG4gICAgZW1haWw6IHtcbiAgICAgIHByb3ZpZGVyOiBzdHJpbmc7XG4gICAgICBob3N0OiBzdHJpbmc7XG4gICAgICBwb3J0PzogbnVtYmVyO1xuICAgICAgc2VjdXJlPzogYm9vbGVhbjtcbiAgICAgIHVzZXJuYW1lOiBzdHJpbmc7XG4gICAgICBwYXNzd29yZDogc3RyaW5nO1xuICAgICAgZnJvbTogc3RyaW5nO1xuICAgICAgdG9rZW46IHN0cmluZztcbiAgICAgIGdyYXBoQmFzZVVybDogc3RyaW5nO1xuICAgICAgLyoqIEV4cGxpY2l0IG9wdC1pbiBmb3IgU01UUCBBVVRIIG92ZXIgYSBwbGFpbnRleHQgc2Vzc2lvbiAoZGVmYXVsdCBmYWxzZSkuICovXG4gICAgICBhbGxvd1BsYWludGV4dEF1dGg/OiBib29sZWFuO1xuICAgICAgdGltZW91dD86IG51bWJlcjtcbiAgICB9O1xuICAgIGdtYWlsOiB7XG4gICAgICB0b2tlbjogc3RyaW5nO1xuICAgICAgdXNlcklkOiBzdHJpbmc7XG4gICAgICBiYXNlVXJsOiBzdHJpbmc7XG4gICAgICB0aW1lb3V0PzogbnVtYmVyO1xuICAgIH07XG4gICAgLyoqIERpc2NvcmQgYm90IHRva2VuIGFuZCBvcHRpb25hbCBBUEkgb3ZlcnJpZGVzIChgY29tbXMvZGlzY29yZGApLiAqL1xuICAgIGRpc2NvcmQ6IHtcbiAgICAgIHRva2VuOiBzdHJpbmc7XG4gICAgICBiYXNlVXJsOiBzdHJpbmc7XG4gICAgICB0aW1lb3V0PzogbnVtYmVyO1xuICAgIH07XG4gICAgLyoqIFdoYXRzQXBwIENsb3VkIEFQSSB0b2tlbiBhbmQgc2VuZGVyIHBob25lIG51bWJlciBJRCAoYGNvbW1zL3doYXRzYXBwYCkuICovXG4gICAgd2hhdHNBcHA6IHtcbiAgICAgIHRva2VuOiBzdHJpbmc7XG4gICAgICBwaG9uZU51bWJlcklkOiBzdHJpbmc7XG4gICAgICBiYXNlVXJsOiBzdHJpbmc7XG4gICAgICB0aW1lb3V0PzogbnVtYmVyO1xuICAgIH07XG4gICAgLyoqIE1pY3Jvc29mdCBHcmFwaCBhY2Nlc3MgdG9rZW4gZm9yIE91dGxvb2sgbWFpbC9jYWxlbmRhciAoYGNvbW1zL291dGxvb2tgKS4gKi9cbiAgICBvdXRsb29rOiB7XG4gICAgICB0b2tlbjogc3RyaW5nO1xuICAgICAgYmFzZVVybDogc3RyaW5nO1xuICAgICAgdGltZW91dD86IG51bWJlcjtcbiAgICB9O1xuICB9O1xufVxuXG4vKipcbiAqIEBkZXNjcmlwdGlvbiBBY2N1bXVsYXRlZCBjb21tcyBlbnZpcm9ubWVudCBzaW5nbGV0b25cbiAqIEBzdW1tYXJ5IFRoZSBgTG9nZ2VkRW52aXJvbm1lbnQuYWNjdW11bGF0ZWAtcmVnaXN0ZXJlZCBpbnN0YW5jZSBiYWNraW5nIHRoZVxuICogYENvbW1zRW52aXJvbm1lbnRTaGFwZWAgY29udHJhY3QuIENvbW1zIHNlcnZpY2VzIHJlYWQgdGhlaXIgcHJvdmlkZXIgc2xpY2VcbiAqIChlLmcuIGBDb21tc0Vudmlyb25tZW50LmNvbW1zLnNsYWNrYCkgaW5zaWRlIGBjb25maWdGcm9tRW52aXJvbm1lbnQoKWAgYW5kXG4gKiB0cmFuc2xhdGUgaXQgaW50byBhbiBgSHR0cEFwaVNlcnZpY2VDb25maWdgLWRlcml2ZWQgY29uZmlnLiBDcmVkZW50aWFscyBjb21lXG4gKiBmcm9tIGVudmlyb25tZW50IHZhcmlhYmxlczsgZm9yIGFzLWdyYXBoIG5vZGUgdXNhZ2UgdGhvc2UgYXJlIHByb3ZpZGVkIGFzXG4gKiBgR1JBUEhfQ1JFREVOVElBTF8qYCB2YWx1ZXMgKHBsYWNlaG9sZGVycyBpbiB0aGlzIGV4YW1wbGUpLlxuICogQGV4YW1wbGVcbiAqIGBgYHRzXG4gKiBpbXBvcnQgeyBTbGFja1NlcnZpY2UgfSBmcm9tIFwiQGRlY2FmLXRzL2ludGVncmF0aW9ucy9jb21tcy9zbGFja1wiO1xuICpcbiAqIC8vIHdpdGggY29tbXMuc2xhY2sudG9rZW4gLyBjb21tcy5zbGFjay5iYXNlVXJsIGNvbmZpZ3VyZWQgaW4gdGhlIGVudmlyb25tZW50XG4gKiBjb25zdCBzbGFjayA9IG5ldyBTbGFja1NlcnZpY2UoKTtcbiAqIGF3YWl0IHNsYWNrLmluaXRpYWxpemUoKTtcbiAqIGBgYFxuICogQGNvbnN0YW50IHtMb2dnZWRFbnZpcm9ubWVudH0gQ29tbXNFbnZpcm9ubWVudFxuICogQG1lbWJlck9mIG1vZHVsZTppbnRlZ3JhdGlvbnMvY29tbXMvZW52aXJvbm1lbnRcbiAqL1xuZXhwb3J0IGNvbnN0IENvbW1zRW52aXJvbm1lbnQgPSBMb2dnZWRFbnZpcm9ubWVudC5hY2N1bXVsYXRlKHtcbiAgY29tbXM6IHtcbiAgICBzbGFjazoge1xuICAgICAgdG9rZW46IFwiXCIsXG4gICAgICBiYXNlVXJsOiBcIlwiLFxuICAgICAgdGltZW91dDogdW5kZWZpbmVkIGFzIHVua25vd24gYXMgbnVtYmVyLFxuICAgIH0sXG4gICAgdGVsZWdyYW06IHtcbiAgICAgIHRva2VuOiBcIlwiLFxuICAgICAgYmFzZVVybDogXCJcIixcbiAgICAgIHRpbWVvdXQ6IHVuZGVmaW5lZCBhcyB1bmtub3duIGFzIG51bWJlcixcbiAgICB9LFxuICAgIHRlYW1zOiB7XG4gICAgICB0b2tlbjogXCJcIixcbiAgICAgIHdlYmhvb2tVcmw6IFwiXCIsXG4gICAgICBiYXNlVXJsOiBcIlwiLFxuICAgICAgdGltZW91dDogdW5kZWZpbmVkIGFzIHVua25vd24gYXMgbnVtYmVyLFxuICAgIH0sXG4gICAgZW1haWw6IHtcbiAgICAgIHByb3ZpZGVyOiBcIlwiLFxuICAgICAgaG9zdDogXCJcIixcbiAgICAgIHBvcnQ6IHVuZGVmaW5lZCBhcyB1bmtub3duIGFzIG51bWJlcixcbiAgICAgIHNlY3VyZTogdW5kZWZpbmVkIGFzIHVua25vd24gYXMgYm9vbGVhbixcbiAgICAgIHVzZXJuYW1lOiBcIlwiLFxuICAgICAgcGFzc3dvcmQ6IFwiXCIsXG4gICAgICBmcm9tOiBcIlwiLFxuICAgICAgdG9rZW46IFwiXCIsXG4gICAgICBncmFwaEJhc2VVcmw6IFwiXCIsXG4gICAgICB0aW1lb3V0OiB1bmRlZmluZWQgYXMgdW5rbm93biBhcyBudW1iZXIsXG4gICAgfSxcbiAgICBnbWFpbDoge1xuICAgICAgdG9rZW46IFwiXCIsXG4gICAgICB1c2VySWQ6IFwiXCIsXG4gICAgICBiYXNlVXJsOiBcIlwiLFxuICAgICAgdGltZW91dDogdW5kZWZpbmVkIGFzIHVua25vd24gYXMgbnVtYmVyLFxuICAgIH0sXG4gICAgZGlzY29yZDoge1xuICAgICAgdG9rZW46IFwiXCIsXG4gICAgICBiYXNlVXJsOiBcIlwiLFxuICAgICAgdGltZW91dDogdW5kZWZpbmVkIGFzIHVua25vd24gYXMgbnVtYmVyLFxuICAgIH0sXG4gICAgd2hhdHNBcHA6IHtcbiAgICAgIHRva2VuOiBcIlwiLFxuICAgICAgcGhvbmVOdW1iZXJJZDogXCJcIixcbiAgICAgIGJhc2VVcmw6IFwiXCIsXG4gICAgICB0aW1lb3V0OiB1bmRlZmluZWQgYXMgdW5rbm93biBhcyBudW1iZXIsXG4gICAgfSxcbiAgICBvdXRsb29rOiB7XG4gICAgICB0b2tlbjogXCJcIixcbiAgICAgIGJhc2VVcmw6IFwiXCIsXG4gICAgICB0aW1lb3V0OiB1bmRlZmluZWQgYXMgdW5rbm93biBhcyBudW1iZXIsXG4gICAgfSxcbiAgfSxcbn0gYXMgQ29tbXNFbnZpcm9ubWVudFNoYXBlKTtcbiJdfQ==
|
|
79
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52aXJvbm1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJlbnZpcm9ubWVudC5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwrQ0FBc0Q7QUFDdEQ7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWtCRztBQUNVLFFBQUEsZ0JBQWdCLEdBQUcsMkJBQWlCLENBQUMsVUFBVSxDQUFDO0lBQ3pELEtBQUssRUFBRTtRQUNILEtBQUssRUFBRTtZQUNILEtBQUssRUFBRSxFQUFFO1lBQ1QsT0FBTyxFQUFFLEVBQUU7WUFDWCxPQUFPLEVBQUUsU0FBUztTQUNyQjtRQUNELFFBQVEsRUFBRTtZQUNOLEtBQUssRUFBRSxFQUFFO1lBQ1QsT0FBTyxFQUFFLEVBQUU7WUFDWCxPQUFPLEVBQUUsU0FBUztTQUNyQjtRQUNELEtBQUssRUFBRTtZQUNILEtBQUssRUFBRSxFQUFFO1lBQ1QsVUFBVSxFQUFFLEVBQUU7WUFDZCxPQUFPLEVBQUUsRUFBRTtZQUNYLE9BQU8sRUFBRSxTQUFTO1NBQ3JCO1FBQ0QsS0FBSyxFQUFFO1lBQ0gsUUFBUSxFQUFFLEVBQUU7WUFDWixJQUFJLEVBQUUsRUFBRTtZQUNSLElBQUksRUFBRSxTQUFTO1lBQ2YsTUFBTSxFQUFFLFNBQVM7WUFDakIsUUFBUSxFQUFFLEVBQUU7WUFDWixRQUFRLEVBQUUsRUFBRTtZQUNaLElBQUksRUFBRSxFQUFFO1lBQ1IsS0FBSyxFQUFFLEVBQUU7WUFDVCxZQUFZLEVBQUUsRUFBRTtZQUNoQixPQUFPLEVBQUUsU0FBUztTQUNyQjtRQUNELEtBQUssRUFBRTtZQUNILEtBQUssRUFBRSxFQUFFO1lBQ1QsTUFBTSxFQUFFLEVBQUU7WUFDVixPQUFPLEVBQUUsRUFBRTtZQUNYLE9BQU8sRUFBRSxTQUFTO1NBQ3JCO1FBQ0QsT0FBTyxFQUFFO1lBQ0wsS0FBSyxFQUFFLEVBQUU7WUFDVCxPQUFPLEVBQUUsRUFBRTtZQUNYLE9BQU8sRUFBRSxTQUFTO1NBQ3JCO1FBQ0QsUUFBUSxFQUFFO1lBQ04sS0FBSyxFQUFFLEVBQUU7WUFDVCxhQUFhLEVBQUUsRUFBRTtZQUNqQixPQUFPLEVBQUUsRUFBRTtZQUNYLE9BQU8sRUFBRSxTQUFTO1NBQ3JCO1FBQ0QsT0FBTyxFQUFFO1lBQ0wsS0FBSyxFQUFFLEVBQUU7WUFDVCxPQUFPLEVBQUUsRUFBRTtZQUNYLE9BQU8sRUFBRSxTQUFTO1NBQ3JCO0tBQ0o7Q0FDSixDQUFDLENBQUM7QUFDSCwwNVFBQTA1USIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IExvZ2dlZEVudmlyb25tZW50IH0gZnJvbSBcIkBkZWNhZi10cy9sb2dnaW5nXCI7XG4vKipcbiAqIEBkZXNjcmlwdGlvbiBBY2N1bXVsYXRlZCBjb21tcyBlbnZpcm9ubWVudCBzaW5nbGV0b25cbiAqIEBzdW1tYXJ5IFRoZSBgTG9nZ2VkRW52aXJvbm1lbnQuYWNjdW11bGF0ZWAtcmVnaXN0ZXJlZCBpbnN0YW5jZSBiYWNraW5nIHRoZVxuICogYENvbW1zRW52aXJvbm1lbnRTaGFwZWAgY29udHJhY3QuIENvbW1zIHNlcnZpY2VzIHJlYWQgdGhlaXIgcHJvdmlkZXIgc2xpY2VcbiAqIChlLmcuIGBDb21tc0Vudmlyb25tZW50LmNvbW1zLnNsYWNrYCkgaW5zaWRlIGBjb25maWdGcm9tRW52aXJvbm1lbnQoKWAgYW5kXG4gKiB0cmFuc2xhdGUgaXQgaW50byBhbiBgSHR0cEFwaVNlcnZpY2VDb25maWdgLWRlcml2ZWQgY29uZmlnLiBDcmVkZW50aWFscyBjb21lXG4gKiBmcm9tIGVudmlyb25tZW50IHZhcmlhYmxlczsgZm9yIGFzLWdyYXBoIG5vZGUgdXNhZ2UgdGhvc2UgYXJlIHByb3ZpZGVkIGFzXG4gKiBgR1JBUEhfQ1JFREVOVElBTF8qYCB2YWx1ZXMgKHBsYWNlaG9sZGVycyBpbiB0aGlzIGV4YW1wbGUpLlxuICogQGV4YW1wbGVcbiAqIGBgYHRzXG4gKiBpbXBvcnQgeyBTbGFja1NlcnZpY2UgfSBmcm9tIFwiQGRlY2FmLXRzL2ludGVncmF0aW9ucy9jb21tcy9zbGFja1wiO1xuICpcbiAqIC8vIHdpdGggY29tbXMuc2xhY2sudG9rZW4gLyBjb21tcy5zbGFjay5iYXNlVXJsIGNvbmZpZ3VyZWQgaW4gdGhlIGVudmlyb25tZW50XG4gKiBjb25zdCBzbGFjayA9IG5ldyBTbGFja1NlcnZpY2UoKTtcbiAqIGF3YWl0IHNsYWNrLmluaXRpYWxpemUoKTtcbiAqIGBgYFxuICogQGNvbnN0YW50IHtMb2dnZWRFbnZpcm9ubWVudH0gQ29tbXNFbnZpcm9ubWVudFxuICogQG1lbWJlck9mIG1vZHVsZTppbnRlZ3JhdGlvbnMvY29tbXMvZW52aXJvbm1lbnRcbiAqL1xuZXhwb3J0IGNvbnN0IENvbW1zRW52aXJvbm1lbnQgPSBMb2dnZWRFbnZpcm9ubWVudC5hY2N1bXVsYXRlKHtcbiAgICBjb21tczoge1xuICAgICAgICBzbGFjazoge1xuICAgICAgICAgICAgdG9rZW46IFwiXCIsXG4gICAgICAgICAgICBiYXNlVXJsOiBcIlwiLFxuICAgICAgICAgICAgdGltZW91dDogdW5kZWZpbmVkLFxuICAgICAgICB9LFxuICAgICAgICB0ZWxlZ3JhbToge1xuICAgICAgICAgICAgdG9rZW46IFwiXCIsXG4gICAgICAgICAgICBiYXNlVXJsOiBcIlwiLFxuICAgICAgICAgICAgdGltZW91dDogdW5kZWZpbmVkLFxuICAgICAgICB9LFxuICAgICAgICB0ZWFtczoge1xuICAgICAgICAgICAgdG9rZW46IFwiXCIsXG4gICAgICAgICAgICB3ZWJob29rVXJsOiBcIlwiLFxuICAgICAgICAgICAgYmFzZVVybDogXCJcIixcbiAgICAgICAgICAgIHRpbWVvdXQ6IHVuZGVmaW5lZCxcbiAgICAgICAgfSxcbiAgICAgICAgZW1haWw6IHtcbiAgICAgICAgICAgIHByb3ZpZGVyOiBcIlwiLFxuICAgICAgICAgICAgaG9zdDogXCJcIixcbiAgICAgICAgICAgIHBvcnQ6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIHNlY3VyZTogdW5kZWZpbmVkLFxuICAgICAgICAgICAgdXNlcm5hbWU6IFwiXCIsXG4gICAgICAgICAgICBwYXNzd29yZDogXCJcIixcbiAgICAgICAgICAgIGZyb206IFwiXCIsXG4gICAgICAgICAgICB0b2tlbjogXCJcIixcbiAgICAgICAgICAgIGdyYXBoQmFzZVVybDogXCJcIixcbiAgICAgICAgICAgIHRpbWVvdXQ6IHVuZGVmaW5lZCxcbiAgICAgICAgfSxcbiAgICAgICAgZ21haWw6IHtcbiAgICAgICAgICAgIHRva2VuOiBcIlwiLFxuICAgICAgICAgICAgdXNlcklkOiBcIlwiLFxuICAgICAgICAgICAgYmFzZVVybDogXCJcIixcbiAgICAgICAgICAgIHRpbWVvdXQ6IHVuZGVmaW5lZCxcbiAgICAgICAgfSxcbiAgICAgICAgZGlzY29yZDoge1xuICAgICAgICAgICAgdG9rZW46IFwiXCIsXG4gICAgICAgICAgICBiYXNlVXJsOiBcIlwiLFxuICAgICAgICAgICAgdGltZW91dDogdW5kZWZpbmVkLFxuICAgICAgICB9LFxuICAgICAgICB3aGF0c0FwcDoge1xuICAgICAgICAgICAgdG9rZW46IFwiXCIsXG4gICAgICAgICAgICBwaG9uZU51bWJlcklkOiBcIlwiLFxuICAgICAgICAgICAgYmFzZVVybDogXCJcIixcbiAgICAgICAgICAgIHRpbWVvdXQ6IHVuZGVmaW5lZCxcbiAgICAgICAgfSxcbiAgICAgICAgb3V0bG9vazoge1xuICAgICAgICAgICAgdG9rZW46IFwiXCIsXG4gICAgICAgICAgICBiYXNlVXJsOiBcIlwiLFxuICAgICAgICAgICAgdGltZW91dDogdW5kZWZpbmVkLFxuICAgICAgICB9LFxuICAgIH0sXG59KTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtiYXNlNjQsZXlKMlpYSnphVzl1SWpvekxDSm1hV3hsSWpvaVpXNTJhWEp2Ym0xbGJuUXVhbk1pTENKemIzVnlZMlZTYjI5MElqb2lJaXdpYzI5MWNtTmxjeUk2V3lJdUxpOHVMaTh1TGk5emNtTXZZMjl0YlhNdlpXNTJhWEp2Ym0xbGJuUXVkSE1pWFN3aWJtRnRaWE1pT2x0ZExDSnRZWEJ3YVc1bmN5STZJa0ZCUVVFc1QwRkJUeXhGUVVGRkxHbENRVUZwUWl4RlFVRkZMRTFCUVUwc2JVSkJRVzFDTEVOQlFVTTdRVUY1Um5SRU96czdPenM3T3pzN096czdPenM3T3pzN1IwRnJRa2M3UVVGRFNDeE5RVUZOTEVOQlFVTXNUVUZCVFN4blFrRkJaMElzUjBGQlJ5eHBRa0ZCYVVJc1EwRkJReXhWUVVGVkxFTkJRVU03U1VGRE0wUXNTMEZCU3l4RlFVRkZPMUZCUTB3c1MwRkJTeXhGUVVGRk8xbEJRMHdzUzBGQlN5eEZRVUZGTEVWQlFVVTdXVUZEVkN4UFFVRlBMRVZCUVVVc1JVRkJSVHRaUVVOWUxFOUJRVThzUlVGQlJTeFRRVUU0UWp0VFFVTjRRenRSUVVORUxGRkJRVkVzUlVGQlJUdFpRVU5TTEV0QlFVc3NSVUZCUlN4RlFVRkZPMWxCUTFRc1QwRkJUeXhGUVVGRkxFVkJRVVU3V1VGRFdDeFBRVUZQTEVWQlFVVXNVMEZCT0VJN1UwRkRlRU03VVVGRFJDeExRVUZMTEVWQlFVVTdXVUZEVEN4TFFVRkxMRVZCUVVVc1JVRkJSVHRaUVVOVUxGVkJRVlVzUlVGQlJTeEZRVUZGTzFsQlEyUXNUMEZCVHl4RlFVRkZMRVZCUVVVN1dVRkRXQ3hQUVVGUExFVkJRVVVzVTBGQk9FSTdVMEZEZUVNN1VVRkRSQ3hMUVVGTExFVkJRVVU3V1VGRFRDeFJRVUZSTEVWQlFVVXNSVUZCUlR0WlFVTmFMRWxCUVVrc1JVRkJSU3hGUVVGRk8xbEJRMUlzU1VGQlNTeEZRVUZGTEZOQlFUaENPMWxCUTNCRExFMUJRVTBzUlVGQlJTeFRRVUVyUWp0WlFVTjJReXhSUVVGUkxFVkJRVVVzUlVGQlJUdFpRVU5hTEZGQlFWRXNSVUZCUlN4RlFVRkZPMWxCUTFvc1NVRkJTU3hGUVVGRkxFVkJRVVU3V1VGRFVpeExRVUZMTEVWQlFVVXNSVUZCUlR0WlFVTlVMRmxCUVZrc1JVRkJSU3hGUVVGRk8xbEJRMmhDTEU5QlFVOHNSVUZCUlN4VFFVRTRRanRUUVVONFF6dFJRVU5FTEV0QlFVc3NSVUZCUlR0WlFVTk1MRXRCUVVzc1JVRkJSU3hGUVVGRk8xbEJRMVFzVFVGQlRTeEZRVUZGTEVWQlFVVTdXVUZEVml4UFFVRlBMRVZCUVVVc1JVRkJSVHRaUVVOWUxFOUJRVThzUlVGQlJTeFRRVUU0UWp0VFFVTjRRenRSUVVORUxFOUJRVThzUlVGQlJUdFpRVU5RTEV0QlFVc3NSVUZCUlN4RlFVRkZPMWxCUTFRc1QwRkJUeXhGUVVGRkxFVkJRVVU3V1VGRFdDeFBRVUZQTEVWQlFVVXNVMEZCT0VJN1UwRkRlRU03VVVGRFJDeFJRVUZSTEVWQlFVVTdXVUZEVWl4TFFVRkxMRVZCUVVVc1JVRkJSVHRaUVVOVUxHRkJRV0VzUlVGQlJTeEZRVUZGTzFsQlEycENMRTlCUVU4c1JVRkJSU3hGUVVGRk8xbEJRMWdzVDBGQlR5eEZRVUZGTEZOQlFUaENPMU5CUTNoRE8xRkJRMFFzVDBGQlR5eEZRVUZGTzFsQlExQXNTMEZCU3l4RlFVRkZMRVZCUVVVN1dVRkRWQ3hQUVVGUExFVkJRVVVzUlVGQlJUdFpRVU5ZTEU5QlFVOHNSVUZCUlN4VFFVRTRRanRUUVVONFF6dExRVU5HTzBOQlEzVkNMRU5CUVVNc1EwRkJReUlzSW5OdmRYSmpaWE5EYjI1MFpXNTBJanBiSW1sdGNHOXlkQ0I3SUV4dloyZGxaRVZ1ZG1seWIyNXRaVzUwSUgwZ1puSnZiU0JjSWtCa1pXTmhaaTEwY3k5c2IyZG5hVzVuWENJN1hHNWNiaThxS2x4dUlDb2dRRzF2WkhWc1pTQnBiblJsWjNKaGRHbHZibk12WTI5dGJYTXZaVzUyYVhKdmJtMWxiblJjYmlBcUlFQnpkVzF0WVhKNUlFVnVkbWx5YjI1dFpXNTBJR052Ym5SeVlXTjBJR0Z1WkNCaFkyTjFiWFZzWVhSbFpDQmxiblpwY205dWJXVnVkQ0JtYjNJZ2RHaGxJR052YlcxeklHbHVkR1ZuY21GMGFXOXVJSE5sY25acFkyVnpMbHh1SUNvZ1FHUmxjMk55YVhCMGFXOXVJRVJsWTJ4aGNtVnpJSFJvWlNCZ1EyOXRiWE5GYm5acGNtOXViV1Z1ZEZOb1lYQmxZQ0JqYjI1emRXMWxaQ0JpZVNCMGFHVWdVMnhoWTJzc1hHNGdLaUJVWld4bFozSmhiU3dnVkdWaGJYTXNJRWR0WVdsc0xDQkVhWE5qYjNKa0xDQlhhR0YwYzBGd2NDd2dZVzVrSUU5MWRHeHZiMnNnYzJWeWRtbGpaWE1uWEc0Z0tpQmdZMjl1Wm1sblJuSnZiVVZ1ZG1seWIyNXRaVzUwS0NsZ0lHbHRjR3hsYldWdWRHRjBhVzl1Y3lCaGJtUWdkR2hsSUdCRGIyMXRjMFZ1ZG1seWIyNXRaVzUwWUZ4dUlDb2djMmx1WjJ4bGRHOXVJR055WldGMFpXUWdkbWxoSUdCTWIyZG5aV1JGYm5acGNtOXViV1Z1ZEM1aFkyTjFiWFZzWVhSbFlDNGdVMlZ5ZG1salpYTWdjbVZoWkNCMGFHVnBjbHh1SUNvZ1kzSmxaR1Z1ZEdsaGJITWdZVzVrSUdSbFptRjFiSFJ6SUdaeWIyMGdkR2hsSUcxaGRHTm9hVzVuSUdCamIyMXRjeTQ4Y0hKdmRtbGtaWEkrWUNCemJHbGpaU3dnZFhOcGJtZGNiaUFxSUhSb1pTQmdaVzUyVTNSeWFXNW5ZQzlnWlc1MlRuVnRZbVZ5WUNCb1pXeHdaWEp6SUdaeWIyMGdZSE5vWVhKbFpDOWxiblpwY205dWJXVnVkRlpoYkhWbFlDQjBieUJ5WldwbFkzUmNiaUFxSUhWdWMyVjBMV3hsWVdZZ2NISnZlR2xsY3k0Z1ZHaGxJRzFoZEdOb2FXNW5JSEIxWW14cFl5QnpkV0p3WVhSb0lHVjRjRzl5ZEhNZ1lYSmxYRzRnS2lCZ1FHUmxZMkZtTFhSekwybHVkR1ZuY21GMGFXOXVjeTlqYjIxdGN5OWthWE5qYjNKa1lDeGNiaUFxSUdCQVpHVmpZV1l0ZEhNdmFXNTBaV2R5WVhScGIyNXpMMk52YlcxekwzZG9ZWFJ6WVhCd1lDd2dZVzVrWEc0Z0tpQmdRR1JsWTJGbUxYUnpMMmx1ZEdWbmNtRjBhVzl1Y3k5amIyMXRjeTl2ZFhSc2IyOXJZQzVjYmlBcUwxeHVMeW9xWEc0Z0tpQkFaR1Z6WTNKcGNIUnBiMjRnUlc1MmFYSnZibTFsYm5RZ2MyaGhjR1VnWm05eUlIUm9aU0JqYjIxdGN5QnBiblJsWjNKaGRHbHZiaUJ6WlhKMmFXTmxjMXh1SUNvZ1FITjFiVzFoY25rZ1JHVm1hVzVsY3lCMGFHVWdZR052YlcxellDQnliMjkwSUhkcGRHZ2diMjVsSUhOc2FXTmxJSEJsY2lCd2NtOTJhV1JsY2lBb1lITnNZV05yWUN4Y2JpQXFJR0IwWld4bFozSmhiV0FzSUdCMFpXRnRjMkFzSUdCbGJXRnBiR0FzSUdCbmJXRnBiR0FzSUdCa2FYTmpiM0prWUN3Z1lIZG9ZWFJ6UVhCd1lDd2dZRzkxZEd4dmIydGdLUzVjYmlBcUlFVmhZMmdnYzJ4cFkyVWdZMkZ5Y21sbGN5QjBhR1VnY0hKdmRtbGtaWEluY3lCeVpYRjFhWEpsWkNCamNtVmtaVzUwYVdGc2N5QW9aUzVuTGlCZ2RHOXJaVzVnTEZ4dUlDb2dZSGRsWW1odmIydFZjbXhnTENCZ2NHaHZibVZPZFcxaVpYSkpaR0FwSUhCc2RYTWdiM0IwYVc5dVlXd2dZR0poYzJWVmNteGdJRzkyWlhKeWFXUmxJR0Z1WkZ4dUlDb2dZSFJwYldWdmRYUmdMaUJHYVdWc1pITWdZWEpsSUhSNWNHVmtJR0Z6SUhKbGNYVnBjbVZrSUdobGNtVWdjMjljYmlBcUlHQk1iMmRuWldSRmJuWnBjbTl1YldWdWRDNWhZMk4xYlhWc1lYUmxZQ0J5WldkcGMzUmxjbk1nZEdobGJUc2dZV0p6Wlc1MElIWmhiSFZsY3lCeVpYTnZiSFpsSUhSdlhHNGdLaUJ3Y205NGVTQndiR0ZqWldodmJHUmxjbk1nWVhRZ2NuVnVkR2x0WlNCaGJtUWdiWFZ6ZENCd1lYTnpJSFJvY205MVoyZ2dZR1Z1ZGxOMGNtbHVaMkF2WUdWdWRrNTFiV0psY21BdVhHNGdLaUJXWVd4MVpYTWdZWEpsSUdOeVpXUmxiblJwWVd3Z2NtVm1aWEpsYm1ObGN5QnpkWEJ3YkdsbFpDQmllU0IwYUdVZ1pXNTJhWEp2Ym0xbGJuUXNJRzVsZG1WeUlHeHBkR1Z5WVd4elhHNGdLaUJsYldKbFpHUmxaQ0JwYmlCemIzVnlZMlV1WEc0Z0tpQkFiV1Z0WW1WeVQyWWdiVzlrZFd4bE9tbHVkR1ZuY21GMGFXOXVjeTlqYjIxdGN5OWxiblpwY205dWJXVnVkRnh1SUNvdlhHNWxlSEJ2Y25RZ2FXNTBaWEptWVdObElFTnZiVzF6Ulc1MmFYSnZibTFsYm5SVGFHRndaU0I3WEc0Z0lHTnZiVzF6T2lCN1hHNGdJQ0FnYzJ4aFkyczZJSHRjYmlBZ0lDQWdJSFJ2YTJWdU9pQnpkSEpwYm1jN1hHNGdJQ0FnSUNCaVlYTmxWWEpzT2lCemRISnBibWM3WEc0Z0lDQWdJQ0IwYVcxbGIzVjBQem9nYm5WdFltVnlPMXh1SUNBZ0lIMDdYRzRnSUNBZ2RHVnNaV2R5WVcwNklIdGNiaUFnSUNBZ0lIUnZhMlZ1T2lCemRISnBibWM3WEc0Z0lDQWdJQ0JpWVhObFZYSnNPaUJ6ZEhKcGJtYzdYRzRnSUNBZ0lDQjBhVzFsYjNWMFB6b2diblZ0WW1WeU8xeHVJQ0FnSUgwN1hHNGdJQ0FnZEdWaGJYTTZJSHRjYmlBZ0lDQWdJSFJ2YTJWdU9pQnpkSEpwYm1jN1hHNGdJQ0FnSUNCM1pXSm9iMjlyVlhKc09pQnpkSEpwYm1jN1hHNGdJQ0FnSUNCaVlYTmxWWEpzT2lCemRISnBibWM3WEc0Z0lDQWdJQ0IwYVcxbGIzVjBQem9nYm5WdFltVnlPMXh1SUNBZ0lIMDdYRzRnSUNBZ1pXMWhhV3c2SUh0Y2JpQWdJQ0FnSUhCeWIzWnBaR1Z5T2lCemRISnBibWM3WEc0Z0lDQWdJQ0JvYjNOME9pQnpkSEpwYm1jN1hHNGdJQ0FnSUNCd2IzSjBQem9nYm5WdFltVnlPMXh1SUNBZ0lDQWdjMlZqZFhKbFB6b2dZbTl2YkdWaGJqdGNiaUFnSUNBZ0lIVnpaWEp1WVcxbE9pQnpkSEpwYm1jN1hHNGdJQ0FnSUNCd1lYTnpkMjl5WkRvZ2MzUnlhVzVuTzF4dUlDQWdJQ0FnWm5KdmJUb2djM1J5YVc1bk8xeHVJQ0FnSUNBZ2RHOXJaVzQ2SUhOMGNtbHVaenRjYmlBZ0lDQWdJR2R5WVhCb1FtRnpaVlZ5YkRvZ2MzUnlhVzVuTzF4dUlDQWdJQ0FnTHlvcUlFVjRjR3hwWTJsMElHOXdkQzFwYmlCbWIzSWdVMDFVVUNCQlZWUklJRzkyWlhJZ1lTQndiR0ZwYm5SbGVIUWdjMlZ6YzJsdmJpQW9aR1ZtWVhWc2RDQm1ZV3h6WlNrdUlDb3ZYRzRnSUNBZ0lDQmhiR3h2ZDFCc1lXbHVkR1Y0ZEVGMWRHZy9PaUJpYjI5c1pXRnVPMXh1SUNBZ0lDQWdkR2x0Wlc5MWREODZJRzUxYldKbGNqdGNiaUFnSUNCOU8xeHVJQ0FnSUdkdFlXbHNPaUI3WEc0Z0lDQWdJQ0IwYjJ0bGJqb2djM1J5YVc1bk8xeHVJQ0FnSUNBZ2RYTmxja2xrT2lCemRISnBibWM3WEc0Z0lDQWdJQ0JpWVhObFZYSnNPaUJ6ZEhKcGJtYzdYRzRnSUNBZ0lDQjBhVzFsYjNWMFB6b2diblZ0WW1WeU8xeHVJQ0FnSUgwN1hHNGdJQ0FnTHlvcUlFUnBjMk52Y21RZ1ltOTBJSFJ2YTJWdUlHRnVaQ0J2Y0hScGIyNWhiQ0JCVUVrZ2IzWmxjbkpwWkdWeklDaGdZMjl0YlhNdlpHbHpZMjl5WkdBcExpQXFMMXh1SUNBZ0lHUnBjMk52Y21RNklIdGNiaUFnSUNBZ0lIUnZhMlZ1T2lCemRISnBibWM3WEc0Z0lDQWdJQ0JpWVhObFZYSnNPaUJ6ZEhKcGJtYzdYRzRnSUNBZ0lDQjBhVzFsYjNWMFB6b2diblZ0WW1WeU8xeHVJQ0FnSUgwN1hHNGdJQ0FnTHlvcUlGZG9ZWFJ6UVhCd0lFTnNiM1ZrSUVGUVNTQjBiMnRsYmlCaGJtUWdjMlZ1WkdWeUlIQm9iMjVsSUc1MWJXSmxjaUJKUkNBb1lHTnZiVzF6TDNkb1lYUnpZWEJ3WUNrdUlDb3ZYRzRnSUNBZ2QyaGhkSE5CY0hBNklIdGNiaUFnSUNBZ0lIUnZhMlZ1T2lCemRISnBibWM3WEc0Z0lDQWdJQ0J3YUc5dVpVNTFiV0psY2tsa09pQnpkSEpwYm1jN1hHNGdJQ0FnSUNCaVlYTmxWWEpzT2lCemRISnBibWM3WEc0Z0lDQWdJQ0IwYVcxbGIzVjBQem9nYm5WdFltVnlPMXh1SUNBZ0lIMDdYRzRnSUNBZ0x5b3FJRTFwWTNKdmMyOW1kQ0JIY21Gd2FDQmhZMk5sYzNNZ2RHOXJaVzRnWm05eUlFOTFkR3h2YjJzZ2JXRnBiQzlqWVd4bGJtUmhjaUFvWUdOdmJXMXpMMjkxZEd4dmIydGdLUzRnS2k5Y2JpQWdJQ0J2ZFhSc2IyOXJPaUI3WEc0Z0lDQWdJQ0IwYjJ0bGJqb2djM1J5YVc1bk8xeHVJQ0FnSUNBZ1ltRnpaVlZ5YkRvZ2MzUnlhVzVuTzF4dUlDQWdJQ0FnZEdsdFpXOTFkRDg2SUc1MWJXSmxjanRjYmlBZ0lDQjlPMXh1SUNCOU8xeHVmVnh1WEc0dktpcGNiaUFxSUVCa1pYTmpjbWx3ZEdsdmJpQkJZMk4xYlhWc1lYUmxaQ0JqYjIxdGN5QmxiblpwY205dWJXVnVkQ0J6YVc1bmJHVjBiMjVjYmlBcUlFQnpkVzF0WVhKNUlGUm9aU0JnVEc5bloyVmtSVzUyYVhKdmJtMWxiblF1WVdOamRXMTFiR0YwWldBdGNtVm5hWE4wWlhKbFpDQnBibk4wWVc1alpTQmlZV05yYVc1bklIUm9aVnh1SUNvZ1lFTnZiVzF6Ulc1MmFYSnZibTFsYm5SVGFHRndaV0FnWTI5dWRISmhZM1F1SUVOdmJXMXpJSE5sY25acFkyVnpJSEpsWVdRZ2RHaGxhWElnY0hKdmRtbGtaWElnYzJ4cFkyVmNiaUFxSUNobExtY3VJR0JEYjIxdGMwVnVkbWx5YjI1dFpXNTBMbU52YlcxekxuTnNZV05yWUNrZ2FXNXphV1JsSUdCamIyNW1hV2RHY205dFJXNTJhWEp2Ym0xbGJuUW9LV0FnWVc1a1hHNGdLaUIwY21GdWMyeGhkR1VnYVhRZ2FXNTBieUJoYmlCZ1NIUjBjRUZ3YVZObGNuWnBZMlZEYjI1bWFXZGdMV1JsY21sMlpXUWdZMjl1Wm1sbkxpQkRjbVZrWlc1MGFXRnNjeUJqYjIxbFhHNGdLaUJtY205dElHVnVkbWx5YjI1dFpXNTBJSFpoY21saFlteGxjenNnWm05eUlHRnpMV2R5WVhCb0lHNXZaR1VnZFhOaFoyVWdkR2h2YzJVZ1lYSmxJSEJ5YjNacFpHVmtJR0Z6WEc0Z0tpQmdSMUpCVUVoZlExSkZSRVZPVkVsQlRGOHFZQ0IyWVd4MVpYTWdLSEJzWVdObGFHOXNaR1Z5Y3lCcGJpQjBhR2x6SUdWNFlXMXdiR1VwTGx4dUlDb2dRR1Y0WVcxd2JHVmNiaUFxSUdCZ1lIUnpYRzRnS2lCcGJYQnZjblFnZXlCVGJHRmphMU5sY25acFkyVWdmU0JtY205dElGd2lRR1JsWTJGbUxYUnpMMmx1ZEdWbmNtRjBhVzl1Y3k5amIyMXRjeTl6YkdGamExd2lPMXh1SUNwY2JpQXFJQzh2SUhkcGRHZ2dZMjl0YlhNdWMyeGhZMnN1ZEc5clpXNGdMeUJqYjIxdGN5NXpiR0ZqYXk1aVlYTmxWWEpzSUdOdmJtWnBaM1Z5WldRZ2FXNGdkR2hsSUdWdWRtbHliMjV0Wlc1MFhHNGdLaUJqYjI1emRDQnpiR0ZqYXlBOUlHNWxkeUJUYkdGamExTmxjblpwWTJVb0tUdGNiaUFxSUdGM1lXbDBJSE5zWVdOckxtbHVhWFJwWVd4cGVtVW9LVHRjYmlBcUlHQmdZRnh1SUNvZ1FHTnZibk4wWVc1MElIdE1iMmRuWldSRmJuWnBjbTl1YldWdWRIMGdRMjl0YlhORmJuWnBjbTl1YldWdWRGeHVJQ29nUUcxbGJXSmxjazltSUcxdlpIVnNaVHBwYm5SbFozSmhkR2x2Ym5NdlkyOXRiWE12Wlc1MmFYSnZibTFsYm5SY2JpQXFMMXh1Wlhod2IzSjBJR052Ym5OMElFTnZiVzF6Ulc1MmFYSnZibTFsYm5RZ1BTQk1iMmRuWldSRmJuWnBjbTl1YldWdWRDNWhZMk4xYlhWc1lYUmxLSHRjYmlBZ1kyOXRiWE02SUh0Y2JpQWdJQ0J6YkdGamF6b2dlMXh1SUNBZ0lDQWdkRzlyWlc0NklGd2lYQ0lzWEc0Z0lDQWdJQ0JpWVhObFZYSnNPaUJjSWx3aUxGeHVJQ0FnSUNBZ2RHbHRaVzkxZERvZ2RXNWtaV1pwYm1Wa0lHRnpJSFZ1YTI1dmQyNGdZWE1nYm5WdFltVnlMRnh1SUNBZ0lIMHNYRzRnSUNBZ2RHVnNaV2R5WVcwNklIdGNiaUFnSUNBZ0lIUnZhMlZ1T2lCY0lsd2lMRnh1SUNBZ0lDQWdZbUZ6WlZWeWJEb2dYQ0pjSWl4Y2JpQWdJQ0FnSUhScGJXVnZkWFE2SUhWdVpHVm1hVzVsWkNCaGN5QjFibXR1YjNkdUlHRnpJRzUxYldKbGNpeGNiaUFnSUNCOUxGeHVJQ0FnSUhSbFlXMXpPaUI3WEc0Z0lDQWdJQ0IwYjJ0bGJqb2dYQ0pjSWl4Y2JpQWdJQ0FnSUhkbFltaHZiMnRWY213NklGd2lYQ0lzWEc0Z0lDQWdJQ0JpWVhObFZYSnNPaUJjSWx3aUxGeHVJQ0FnSUNBZ2RHbHRaVzkxZERvZ2RXNWtaV1pwYm1Wa0lHRnpJSFZ1YTI1dmQyNGdZWE1nYm5WdFltVnlMRnh1SUNBZ0lIMHNYRzRnSUNBZ1pXMWhhV3c2SUh0Y2JpQWdJQ0FnSUhCeWIzWnBaR1Z5T2lCY0lsd2lMRnh1SUNBZ0lDQWdhRzl6ZERvZ1hDSmNJaXhjYmlBZ0lDQWdJSEJ2Y25RNklIVnVaR1ZtYVc1bFpDQmhjeUIxYm10dWIzZHVJR0Z6SUc1MWJXSmxjaXhjYmlBZ0lDQWdJSE5sWTNWeVpUb2dkVzVrWldacGJtVmtJR0Z6SUhWdWEyNXZkMjRnWVhNZ1ltOXZiR1ZoYml4Y2JpQWdJQ0FnSUhWelpYSnVZVzFsT2lCY0lsd2lMRnh1SUNBZ0lDQWdjR0Z6YzNkdmNtUTZJRndpWENJc1hHNGdJQ0FnSUNCbWNtOXRPaUJjSWx3aUxGeHVJQ0FnSUNBZ2RHOXJaVzQ2SUZ3aVhDSXNYRzRnSUNBZ0lDQm5jbUZ3YUVKaGMyVlZjbXc2SUZ3aVhDSXNYRzRnSUNBZ0lDQjBhVzFsYjNWME9pQjFibVJsWm1sdVpXUWdZWE1nZFc1cmJtOTNiaUJoY3lCdWRXMWlaWElzWEc0Z0lDQWdmU3hjYmlBZ0lDQm5iV0ZwYkRvZ2UxeHVJQ0FnSUNBZ2RHOXJaVzQ2SUZ3aVhDSXNYRzRnSUNBZ0lDQjFjMlZ5U1dRNklGd2lYQ0lzWEc0Z0lDQWdJQ0JpWVhObFZYSnNPaUJjSWx3aUxGeHVJQ0FnSUNBZ2RHbHRaVzkxZERvZ2RXNWtaV1pwYm1Wa0lHRnpJSFZ1YTI1dmQyNGdZWE1nYm5WdFltVnlMRnh1SUNBZ0lIMHNYRzRnSUNBZ1pHbHpZMjl5WkRvZ2UxeHVJQ0FnSUNBZ2RHOXJaVzQ2SUZ3aVhDSXNYRzRnSUNBZ0lDQmlZWE5sVlhKc09pQmNJbHdpTEZ4dUlDQWdJQ0FnZEdsdFpXOTFkRG9nZFc1a1pXWnBibVZrSUdGeklIVnVhMjV2ZDI0Z1lYTWdiblZ0WW1WeUxGeHVJQ0FnSUgwc1hHNGdJQ0FnZDJoaGRITkJjSEE2SUh0Y2JpQWdJQ0FnSUhSdmEyVnVPaUJjSWx3aUxGeHVJQ0FnSUNBZ2NHaHZibVZPZFcxaVpYSkpaRG9nWENKY0lpeGNiaUFnSUNBZ0lHSmhjMlZWY213NklGd2lYQ0lzWEc0Z0lDQWdJQ0IwYVcxbGIzVjBPaUIxYm1SbFptbHVaV1FnWVhNZ2RXNXJibTkzYmlCaGN5QnVkVzFpWlhJc1hHNGdJQ0FnZlN4Y2JpQWdJQ0J2ZFhSc2IyOXJPaUI3WEc0Z0lDQWdJQ0IwYjJ0bGJqb2dYQ0pjSWl4Y2JpQWdJQ0FnSUdKaGMyVlZjbXc2SUZ3aVhDSXNYRzRnSUNBZ0lDQjBhVzFsYjNWME9pQjFibVJsWm1sdVpXUWdZWE1nZFc1cmJtOTNiaUJoY3lCdWRXMWlaWElzWEc0Z0lDQWdmU3hjYmlBZ2ZTeGNibjBnWVhNZ1EyOXRiWE5GYm5acGNtOXViV1Z1ZEZOb1lYQmxLVHRjYmlKZGZRPT0iXX0=
|
|
@@ -231,5 +231,5 @@ class GmailService extends index_js_1.HttpApiService {
|
|
|
231
231
|
}
|
|
232
232
|
}
|
|
233
233
|
exports.GmailService = GmailService;
|
|
234
|
-
//# sourceMappingURL=GmailService.js.map
|
|
235
|
-
//# sourceMappingURL=GmailService.cjs.map
|
|
234
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR21haWxTZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbW1zL2dtYWlsL0dtYWlsU2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7OztHQVVHO0FBQ0gsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3hELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSw0QkFBdUI7QUFDbEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsMkNBQXNDO0FBQ3JFLE9BQU8sRUFDTCxjQUFjLEVBRWQsU0FBUyxHQUNWLHFDQUEwQjtBQUMzQixPQUFPLEVBQUUsVUFBVSxFQUEwQiwyQkFBc0I7QUFtRG5FOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTBCRztBQUNILE1BQU0sT0FBTyxZQUFhLFNBQVEsY0FBa0M7SUFBcEU7O1FBQ0U7O1dBRUc7UUFDZ0IsZ0JBQVcsR0FBRyxPQUFPLENBQUM7SUEyTTNDLENBQUM7SUF6TUM7Ozs7T0FJRztJQUNPLGNBQWM7UUFDdEIsT0FBTyx1Q0FBdUMsQ0FBQztJQUNqRCxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ08sV0FBVyxDQUFDLE1BQTBCO1FBQzlDLE9BQU8sTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxhQUFhLEVBQUUsVUFBVSxNQUFNLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQ3pFLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDTyxxQkFBcUI7UUFDN0IsTUFBTSxHQUFHLEdBQUcsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQztRQUN6QyxNQUFNLEtBQUssR0FBRyxTQUFTLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3BDLElBQUksQ0FBQyxLQUFLO1lBQUUsT0FBTyxTQUFTLENBQUM7UUFDN0IsT0FBTztZQUNMLEtBQUs7WUFDTCxNQUFN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Q0FBd0MsQ0FBQyxDQUFDO1FBQzNFLElBQUksQ0FBQztZQUNILE1BQU0sUUFBUSxHQUFHLE1BQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQ3BDLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxhQUFhLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQ3ZELEVBQUUsTUFBTSxFQUFFLEVBQUUsTUFBTSxFQUFFLEVBQUUsQ0FDdkIsQ0FBQztZQUNGLE9BQU8sUUFBUSxDQUFDLElBQUksQ0FBQztRQUN2QixDQUFDO1FBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztZQUNmLE1BQU0sU0FBUyxDQUFDLE9BQU8sRUFBRSxhQUFhLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDakQsQ0FBQztJQUNILENBQUM7SUFFRDs7Ozs7Ozs7O09BU0c7SUFDSCxLQUFLLENBQUMsVUFBVTtRQUNkLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUM7WUFDSCxNQUFNLFFBQVEsR0FBRyxNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUVuQyxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsU0FBUyxDQUFDLENBQUM7WUFDaEMsT0FBTyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sSUFBSSxFQUFFLENBQUM7UUFDcEMsQ0FBQztRQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7WUFDZixNQUFNLFNBQVMsQ0FBQyxPQUFPLEVBQUUsYUFBYSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ2pELENBQUM7SUFDSCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBtb2R1bGUgaW50ZWdyYXRpb25zL2NvbW1zL2dtYWlsL3NlcnZpY2VcbiAqIEBzdW1tYXJ5IEdtYWlsIEFQSSBpbnRlZ3JhdGlvbiBzZXJ2aWNlIGZvciBzZW5kaW5nIGFuZCBsaXN0aW5nIG1lc3NhZ2VzLlxuICogQGRlc2NyaXB0aW9uIEV4cG9zZXMgdGhlIEdtYWlsIFJFU1QgQVBJIChgdXNlcnMubWVzc2FnZXMuc2VuZGAsXG4gKiBgdXNlcnMubWVzc2FnZXMubGlzdGAsIGB1c2Vycy5tZXNzYWdlcy5nZXRgLCBgdXNlcnMubGFiZWxzLmxpc3RgKSBhcyBhblxuICogdW5kZWNvcmF0ZWQgY2xpZW50LWJhc2VkIHNlcnZpY2UgYnVpbHQgb24ge0BsaW5rIEh0dHBBcGlTZXJ2aWNlfS5cbiAqIE1lc3NhZ2Ugc2VuZGluZyByZXVzZXMgdGhlIHNoYXJlZCBNSU1FIGJ1aWxkZXIgZnJvbSB0aGUgZW1haWwgaW50ZWdyYXRpb25cbiAqIChgYnVpbGRFbWFpbGApIGFuZCBwb3N0cyB0aGUgcmF3IE1JTUUgbWVzc2FnZSBhcyBiYXNlNjR1cmwuIENvbmZpZ3VyYXRpb25cbiAqIGNvbWVzIGZyb20gYW4gZXhwbGljaXQgYEdtYWlsU2VydmljZUNvbmZpZ2Agb3IgdGhlIGBjb21tcy5nbWFpbGAgZW52aXJvbm1lbnRcbiAqIHNsaWNlLCBhbmQgZmFpbHVyZXMgYXJlIG1hcHBlZCB0byBkZWNhZiBlcnJvcnMgdmlhIHtAbGluayBodHRwRXJyb3J9LlxuICovXG5pbXBvcnQgeyBJbnRlcm5hbEVycm9yIH0gZnJvbSBcIkBkZWNhZi10cy9kYi1kZWNvcmF0b3JzXCI7XG5pbXBvcnQgeyBDb21tc0Vudmlyb25tZW50IH0gZnJvbSBcIi4uL2Vudmlyb25tZW50XCI7XG5pbXBvcnQgeyBlbnZOdW1iZXIsIGVudlN0cmluZyB9IGZyb20gXCIuLi8uLi9zaGFyZWQvZW52aXJvbm1lbnRWYWx1ZVwiO1xuaW1wb3J0IHtcbiAgSHR0cEFwaVNlcnZpY2UsXG4gIHR5cGUgSHR0cEFwaVNlcnZpY2VDb25maWcsXG4gIGh0dHBFcnJvcixcbn0gZnJvbSBcIi4uLy4uL3NoYXJlZC9odHRwXCI7XG5pbXBvcnQgeyBidWlsZEVtYWlsLCB0eXBlIEVtYWlsTWVzc2FnZUlucHV0IH0gZnJvbSBcIi4uL2VtYWlsL21pbWVcIjtcblxuLyoqXG4gKiBAZGVzY3JpcHRpb24gQ29uZmlndXJhdGlvbiBmb3IgdGhlIEdtYWlsIHNlcnZpY2VcbiAqIEBzdW1tYXJ5IEV4dGVuZHMge0BsaW5rIEh0dHBBcGlTZXJ2aWNlQ29uZmlnfSB3aXRoIHRoZSBPQXV0aCBhY2Nlc3MgdG9rZW5cbiAqIChzZW50IGFzIGEgYmVhcmVyIHRva2VuKSBhbmQgdGhlIG1haWxib3ggYHVzZXJJZGAgdXNlZCBpbiB0aGUgQVBJIHBhdGhcbiAqIChkZWZhdWx0cyB0byBgXCJtZVwiYCkuIFdoZW4gb21pdHRlZCwgdGhlIGBjb21tcy5nbWFpbGAgZW52aXJvbm1lbnQgc2xpY2VcbiAqIHN1cHBsaWVzIHRoZSB0b2tlbiAoYW5kIG9wdGlvbmFsIGB1c2VySWRgLCBgYmFzZVVybGAsIGB0aW1lb3V0YCkuXG4gKiBAY2F0ZWdvcnkgQ29tbXNcbiAqIEBtZW1iZXJPZiBtb2R1bGU6aW50ZWdyYXRpb25zL2NvbW1zL2dtYWlsL3NlcnZpY2VcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBHbWFpbFNlcnZpY2VDb25maWcgZXh0ZW5kcyBIdHRwQXBpU2VydmljZUNvbmZpZyB7XG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gR21haWwgQVBJIE9BdXRoIGFjY2VzcyB0b2tlblxuICAgKiBAc3VtbWFyeSBTZW50IGFzIGBBdXRob3JpemF0aW9uOiBCZWFyZXIgPHRva2VuPmAgd2l0aCBldmVyeSBBUEkgY2FsbC5cbiAgICovXG4gIHRva2VuPzogc3RyaW5nO1xuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIE1haWxib3ggdXNlciBpZGVudGlmaWVyXG4gICAqIEBzdW1tYXJ5IFRoZSBzcGVjaWFsIHZhbHVlIGBcIm1lXCJgICh0aGUgZGVmYXVsdCkgcmVmZXJzIHRvIHRoZSBhdXRoZW50aWNhdGVkIHVzZXIuXG4gICAqL1xuICB1c2VySWQ/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uIFJlc3VsdCBvZiBhIHNlbnQgR21haWwgbWVzc2FnZVxuICogQHN1bW1hcnkgRWNob2VzIEdtYWlsJ3MgaWRlbnRpZmllcnMgZm9yIHRoZSBzZW50IG1lc3NhZ2U6IHRoZSBtZXNzYWdlIGBpZGAsXG4gKiBpdHMgYHRocmVhZElkYCB3aGVuIEdtYWlsIGFzc2lnbmVkIG9uZSwgYW5kIHRoZSBhcHBsaWVkIGBsYWJlbElkc2AuXG4gKiBAY2F0ZWdvcnkgQ29tbXNcbiAqIEBtZW1iZXJPZiBtb2R1bGU6aW50ZWdyYXRpb25zL2NvbW1zL2dtYWlsL3NlcnZpY2VcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBHbWFpbFNlbmRSZXN1bHQge1xuICBpZDogc3RyaW5nO1xuICB0aHJlYWRJZD86IHN0cmluZztcbiAgbGFiZWxJZHM/OiBzdHJpbmdbXTtcbn1cblxuLyoqXG4gKiBAZGVzY3JpcHRpb24gUmVzdWx0IG9mIGEgR21haWwgbWVzc2FnZSBsaXN0IGNhbGxcbiAqIEBzdW1tYXJ5IENhcnJpZXMgb25lIHBhZ2Ugb2YgbWVzc2FnZSByZWZlcmVuY2VzIChgbWVzc2FnZXNgIHdpdGggYGlkYCBhbmRcbiAqIG9wdGlvbmFsIGB0aHJlYWRJZGApLCB0aGUgYG5leHRQYWdlVG9rZW5gIHRvIHBhc3MgYmFjayBhcyBgcGFnZVRva2VuYCBmb3JcbiAqIHRoZSBuZXh0IHBhZ2UsIGFuZCBHbWFpbCdzIGByZXN1bHRTaXplRXN0aW1hdGVgLlxuICogQGNhdGVnb3J5IENvbW1zXG4gKiBAbWVtYmVyT2YgbW9kdWxlOmludGVncmF0aW9ucy9jb21tcy9nbWFpbC9zZXJ2aWNlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgR21haWxMaXN0UmVzdWx0IHtcbiAgbWVzc2FnZXM6IEFycmF5PHsgaWQ6IHN0cmluZzsgdGhyZWFkSWQ/OiBzdHJpbmcgfT47XG4gIG5leHRQYWdlVG9rZW4/OiBzdHJpbmc7XG4gIHJlc3VsdFNpemVFc3RpbWF0ZT86IG51bWJlcjtcbn1cblxuLyoqXG4gKiBAZGVzY3JpcHRpb24gR21haWwgQVBJIGludGVncmF0aW9uIHNlcnZpY2VcbiAqIEBzdW1tYXJ5IEFuIHVuZGVjb3JhdGVkIEhUVFAgc2VydmljZSBmb3Igc2VuZGluZyBNSU1FLWJ1aWx0XG4gKiBlbWFpbHMsIGxpc3RpbmcgbWVzc2FnZXMgd2l0aCBHbWFpbCBxdWVyeSBzeW50YXggYW5kIHBhZ2UgdG9rZW5zLCBmZXRjaGluZ1xuICogYSBzaW5nbGUgbWVzc2FnZSBpbiBhIGNob3NlbiBmb3JtYXQsIGFuZCBsaXN0aW5nIGxhYmVscy4gQWxsIG9wZXJhdGlvbnNcbiAqIHJlcXVpcmUgYW4gT0F1dGggdG9rZW4gKGByZXF1aXJlVG9rZW4oKWApIGFuZCBvcGVyYXRlIG9uIHRoZSBjb25maWd1cmVkXG4gKiBgdXNlcklkYCBtYWlsYm94IChkZWZhdWx0IGBcIm1lXCJgKTsgdHJhbnNwb3J0IGZhaWx1cmVzIGFyZSBtYXBwZWQgdG8gZGVjYWZcbiAqIGVycm9ycyB2aWEge0BsaW5rIGh0dHBFcnJvcn0uXG4gKiBAY2xhc3MgR21haWxTZXJ2aWNlXG4gKiBAY2F0ZWdvcnkgQ29tbXNcbiAqIEBleGFtcGxlXG4gKiBgYGB0c1xuICogaW1wb3J0IHsgR21haWxTZXJ2aWNlIH0gZnJvbSBcIkBkZWNhZi10cy9pbnRlZ3JhdGlvbnMvY29tbXMvZ21haWxcIjtcbiAqXG4gKiBjb25zdCBnbWFpbCA9IG5ldyBHbWFpbFNlcnZpY2UoKTtcbiAqIGF3YWl0IGdtYWlsLmluaXRpYWxpemUoe1xuICogICB0b2tlbjogcHJvY2Vzcy5lbnYuR1JBUEhfQ1JFREVOVElBTF9HTUFJTF9UT0tFTixcbiAqIH0pO1xuICogYXdhaXQgZ21haWwuc2VuZCh7XG4gKiAgIGZyb206IFwiYm90QGV4YW1wbGUuY29tXCIsXG4gKiAgIHRvOiBcIm9wc0BleGFtcGxlLmNvbVwiLFxuICogICBzdWJqZWN0OiBcIkRlcGxveVwiLFxuICogICB0ZXh0OiBcIlJlbGVhc2UgMS4yLjAgaXMgbGl2ZVwiLFxuICogfSk7XG4gKiBgYGBcbiAqIEBtZW1iZXJPZiBtb2R1bGU6aW50ZWdyYXRpb25zL2NvbW1zL2dtYWlsL3NlcnZpY2VcbiAqL1xuZXhwb3J0IGNsYXNzIEdtYWlsU2VydmljZSBleHRlbmRzIEh0dHBBcGlTZXJ2aWNlPEdtYWlsU2VydmljZUNvbmZpZz4ge1xuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIFRoZSBwcm92aWRlciBuYW1lIHVzZWQgaW4gZXJyb3IgbWVzc2FnZXNcbiAgICovXG4gIHByb3RlY3RlZCByZWFkb25seSBzZXJ2aWNlTmFtZSA9IFwiR21haWxcIjtcblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIFRoZSBHbWFpbCBSRVNUIEFQSSBiYXNlIFVSTFxuICAgKiBAc3VtbWFyeSBVc2VkIHdoZW4gdGhlIHJlc29sdmVkIGNvbmZpZyBjYXJyaWVzIG5vIGBiYXNlVXJsYC5cbiAgICogQHJldHVybnMge3N0cmluZ30gYFwiaHR0cHM6Ly9nbWFpbC5nb29nbGVhcGlzLmNvbS9nbWFpbC92MVwiYC5cbiAgICovXG4gIHByb3RlY3RlZCBkZWZhdWx0QmFzZVVybCgpOiBzdHJpbmcge1xuICAgIHJldHVybiBcImh0dHBzOi8vZ21haWwuZ29vZ2xlYXBpcy5jb20vZ21haWwvdjFcIjtcbiAgfVxuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gQnVpbGRzIHRoZSBHbWFpbCBPQXV0aCBiZWFyZXIgYXV0aG9yaXphdGlvbiBoZWFkZXJzXG4gICAqIEBzdW1tYXJ5IFJldHVybnMgdGhlIGBBdXRob3JpemF0aW9uOiBCZWFyZXIgPHRva2VuPmAgaGVhZGVyIHdoZW4gdGhlXG4gICAqIGNvbmZpZyBjYXJyaWVzIGEgdG9rZW4sIGFuZCBubyBoZWFkZXJzIG90aGVyd2lzZS5cbiAgICogQHBhcmFtIHtHbWFpbFNlcnZpY2VDb25maWd9IGNvbmZpZyAtIFRoZSByZXNvbHZlZCBzZXJ2aWNlIGNvbmZpZ3VyYXRpb24uXG4gICAqIEByZXR1cm5zIHtSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+fSBUaGUgYXV0aG9yaXphdGlvbiBoZWFkZXJzIChlbXB0eSB3aXRob3V0IGEgdG9rZW4pLlxuICAgKi9cbiAgcHJvdGVjdGVkIGF1dGhIZWFkZXJzKGNvbmZpZzogR21haWxTZXJ2aWNlQ29uZmlnKTogUmVjb3JkPHN0cmluZywgc3RyaW5nPiB7XG4gICAgcmV0dXJuIGNvbmZpZy50b2tlbiA/IHsgQXV0aG9yaXphdGlvbjogYEJlYXJlciAke2NvbmZpZy50b2tlbn1gIH0gOiB7fTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gUmVhZHMgdGhlIEdtYWlsIGNyZWRlbnRpYWxzIGFuZCBkZWZhdWx0cyBmcm9tIHRoZSBlbnZpcm9ubWVudFxuICAgKiBAc3VtbWFyeSBSZWFkcyB0aGUgYGNvbW1zLmdtYWlsYCBlbnZpcm9ubWVudCBzbGljZSBhbmQgcmV0dXJucyBhIHBhcnRpYWxcbiAgICogY29uZmlnIHdoZW4gYSB0b2tlbiBpcyBjb25maWd1cmVkLCBgdW5kZWZpbmVkYCBvdGhlcndpc2UuIFZhbHVlcyBwYXNzXG4gICAqIHRocm91Z2ggYGVudlN0cmluZ2AvYGVudk51bWJlcmAgdG8gcmVqZWN0IHVuc2V0LWxlYWYgcHJveGllcy5cbiAgICogQHJldHVybnMge1BhcnRpYWw8R21haWxTZXJ2aWNlQ29uZmlnPiB8IHVuZGVmaW5lZH0gQSBwYXJ0aWFsIGNvbmZpZywgb3IgYHVuZGVmaW5lZGAgd2hlbiBubyBHbWFpbCB0b2tlbiBpcyBjb25maWd1cmVkLlxuICAgKi9cbiAgcHJvdGVjdGVkIGNvbmZpZ0Zyb21FbnZpcm9ubWVudCgpOiBQYXJ0aWFsPEdtYWlsU2VydmljZUNvbmZpZz4gfCB1bmRlZmluZWQge1xuICAgIGNvbnN0IGVudiA9IENvbW1zRW52aXJvbm1lbnQuY29tbXMuZ21haWw7XG4gICAgY29uc3QgdG9rZW4gPSBlbnZTdHJpbmcoZW52Py50b2tlbik7XG4gICAgaWYgKCF0b2tlbikgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICByZXR1cm4ge1xuICAgICAgdG9rZW4sXG4gICAgICB1c2VySWQ6IGVudlN0cmluZyhlbnYudXNlcklkKSxcbiAgICAgIGJhc2VVcmw6IGVudlN0cmluZyhlbnYuYmFzZVVybCksXG4gICAgICB0aW1lb3V0OiBlbnZOdW1iZXIoZW52LnRpbWVvdXQpLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIEJ1aWxkcyB0aGUgbWFpbGJveC1zY29wZWQgQVBJIHBhdGhcbiAgICogQHN1bW1hcnkgUmV0dXJucyBgL3VzZXJzLzx1c2VySWQ+YCB3aXRoIHRoZSBjb25maWd1cmVkIGB1c2VySWRgIChvclxuICAgKiBgXCJtZVwiYCB3aGVuIHVuc2V0KSBVUkwtZW5jb2RlZDsgYWxsIG1lc3NhZ2UgYW5kIGxhYmVsIG9wZXJhdGlvbnMgYXJlXG4gICAqIHJlbGF0aXZlIHRvIHRoaXMgcGF0aC5cbiAgICogQHJldHVybnMge3N0cmluZ30gVGhlIFVSTC1lbmNvZGVkIG1haWxib3ggcGF0aC5cbiAgICovXG4gIHByb3RlY3RlZCB1c2VyUGF0aCgpOiBzdHJpbmcge1xuICAgIHJldHVybiBgL3VzZXJzLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHRoaXMuY29uZmlnLnVzZXJJZCA/PyBcIm1lXCIpfWA7XG4gIH1cblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIFNlbmRzIGFuIGVtYWlsIHRocm91Z2ggdGhlIEdtYWlsIEFQSVxuICAgKiBAc3VtbWFyeSBCdWlsZHMgYSByYXcgTUlNRSBtZXNzYWdlIGZyb20gdGhlIGlucHV0IHdpdGggdGhlIHNoYXJlZCBlbWFpbFxuICAgKiBNSU1FIGJ1aWxkZXIgKGBidWlsZEVtYWlsYCksIGJhc2U2NHVybC1lbmNvZGVzIGl0LCBhbmQgYFBPU1RgcyBpdCB0b1xuICAgKiBgdXNlcnMubWVzc2FnZXMuc2VuZGAuIFJlcXVpcmVzIGEgdG9rZW4gYW5kIGEgYGZyb21gIHNlbmRlciBhZGRyZXNzLlxuICAgKiBAcGFyYW0ge0VtYWlsTWVzc2FnZUlucHV0fSBpbnB1dCAtIFRoZSBtZXNzYWdlIGVudmVsb3BlIGFuZCBib2R5IChgZnJvbWAsIGB0b2AsIGBzdWJqZWN0YCwgYW5kIG9wdGlvbmFsIGBjY2AvYGJjY2AvYHRleHRgL2BodG1sYC9gcmVwbHlUb2AvYGF0dGFjaG1lbnRzYCkuXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPEdtYWlsU2VuZFJlc3VsdD59IEdtYWlsJ3MgaWRlbnRpZmllcnMgZm9yIHRoZSBzZW50IG1lc3NhZ2UuXG4gICAqIEB0aHJvd3Mge0ludGVybmFsRXJyb3J9IFdoZW4gbm8gdG9rZW4gaXMgY29uZmlndXJlZCBvciB0aGUgc2VuZGVyIGFkZHJlc3MgaXMgbWlzc2luZy5cbiAgICogQHRocm93cyB7Tm90Rm91bmRFcnJvcn0gV2hlbiB0aGUgZW5kcG9pbnQgYW5zd2VycyB3aXRoIEhUVFAgNDA0LlxuICAgKiBAdGhyb3dzIHtDb25mbGljdEVycm9yfSBXaGVuIEdtYWlsIGFuc3dlcnMgd2l0aCBIVFRQIDQwOS5cbiAgICogQHRocm93cyB7QmFkUmVxdWVzdEVycm9yfSBXaGVuIEdtYWlsIGFuc3dlcnMgd2l0aCBhbnkgb3RoZXIgSFRUUCBlcnJvciBzdGF0dXMgKGUuZy4gaW52YWxpZCByZWNpcGllbnRzKS5cbiAgICovXG4gIGFzeW5jIHNlbmQoaW5wdXQ6IEVtYWlsTWVzc2FnZUlucHV0KTogUHJvbWlzZTxHbWFpbFNlbmRSZXN1bHQ+IHtcbiAgICB0aGlzLnJlcXVpcmVUb2tlbigpO1xuICAgIGlmICghaW5wdXQuZnJvbSkge1xuICAgICAgdGhyb3cgbmV3IEludGVybmFsRXJyb3IoXCJHbWFpbCBzZW5kIHJlcXVpcmVzIGEgc2VuZGVyIGFkZHJlc3NcIik7XG4gICAgfVxuICAgIGNvbnN0IGJ1aWx0ID0gYnVpbGRFbWFpbChpbnB1dCk7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5jbGllbnQucG9zdDx7XG4gICAgICAgIGlkPzogc3RyaW5nO1xuICAgICAgICB0aHJlYWRJZD86IHN0cmluZztcbiAgICAgICAgbGFiZWxJZHM/OiBzdHJpbmdbXTtcbiAgICAgIH0+KGAke3RoaXMudXNlclBhdGgoKX0vbWVzc2FnZXMvc2VuZGAsIHtcbiAgICAgICAgcmF3OiBCdWZmZXIuZnJvbShidWlsdC5yYXcsIFwidXRmOFwiKS50b1N0cmluZyhcImJhc2U2NHVybFwiKSxcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaWQ6IFN0cmluZyhyZXNwb25zZS5kYXRhLmlkID8/IGJ1aWx0Lm1lc3NhZ2VJZCksXG4gICAgICAgIHRocmVhZElkOiByZXNwb25zZS5kYXRhLnRocmVhZElkLFxuICAgICAgICBsYWJlbElkczogcmVzcG9uc2UuZGF0YS5sYWJlbElkcyxcbiAgICAgIH07XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHRocm93IGh0dHBFcnJvcihcIkdtYWlsXCIsIFwic2VuZCBtZXNzYWdlXCIsIGVycm9yKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIExpc3RzIG1haWxib3ggbWVzc2FnZXMgd2l0aCBHbWFpbCBxdWVyeSBwYWdpbmdcbiAgICogQHN1bW1hcnkgYEdFVGBzIGB1c2Vycy5tZXNzYWdlcy5saXN0YCB3aXRoIGFuIG9wdGlvbmFsIEdtYWlsIGBxdWVyeWBcbiAgICogKGBxYCBwYXJhbWV0ZXIsIGUuZy4gYFwiZnJvbTp1c2VyQGV4YW1wbGUuY29tIGlzOnVucmVhZFwiYCksIGEgcGFnZSBzaXplXG4gICAqIChkZWZhdWx0IGAyNWApLCBhIGBwYWdlVG9rZW5gIGZyb20gdGhlIHByZXZpb3VzIHBhZ2UsIGFuZCBgbGFiZWxJZHNgXG4gICAqIGZpbHRlcmluZy4gUmV0dXJucyB0aGUgbWVzc2FnZSByZWZlcmVuY2VzIGFuZCB0aGUgYG5leHRQYWdlVG9rZW5gIHRvIHBhc3NcbiAgICogYmFjayBhcyBgcGFnZVRva2VuYCBmb3IgdGhlIG5leHQgcGFnZS5cbiAgICogQHBhcmFtIHtvYmplY3R9IFtvcHRpb25zXSAtIFF1ZXJ5IGFuZCBwYWdpbmcgb3B0aW9ucy5cbiAgICogQHBhcmFtIHtzdHJpbmd9IFtvcHRpb25zLnF1ZXJ5XSAtIEdtYWlsIHNlYXJjaCBxdWVyeSAoYHFgIHBhcmFtZXRlcikuXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBbb3B0aW9ucy5tYXhSZXN1bHRzXSAtIFBhZ2Ugc2l6ZTsgZGVmYXVsdHMgdG8gYDI1YC5cbiAgICogQHBhcmFtIHtzdHJpbmd9IFtvcHRpb25zLnBhZ2VUb2tlbl0gLSBUaGUgYG5leHRQYWdlVG9rZW5gIGZyb20gdGhlIHByZXZpb3VzIHBhZ2UuXG4gICAqIEBwYXJhbSB7c3RyaW5nW119IFtvcHRpb25zLmxhYmVsSWRzXSAtIExhYmVsIElEcyB0aGUgbWVzc2FnZXMgbXVzdCBjYXJyeS5cbiAgICogQHJldHVybnMge1Byb21pc2U8R21haWxMaXN0UmVzdWx0Pn0gT25lIHBhZ2Ugb2YgbWVzc2FnZSByZWZlcmVuY2VzIHdpdGggdGhlIG5leHQgcGFnZSB0b2tlbiB3aGVuIG1vcmUgcGFnZXMgZXhpc3QuXG4gICAqIEB0aHJvd3Mge0ludGVybmFsRXJyb3J9IFdoZW4gbm8gdG9rZW4gaXMgY29uZmlndXJlZC5cbiAgICogQHRocm93cyB7Tm90Rm91bmRFcnJvcn0gV2hlbiB0aGUgZW5kcG9pbnQgYW5zd2VycyB3aXRoIEhUVFAgNDA0LlxuICAgKiBAdGhyb3dzIHtDb25mbGljdEVycm9yfSBXaGVuIEdtYWlsIGFuc3dlcnMgd2l0aCBIVFRQIDQwOS5cbiAgICogQHRocm93cyB7QmFkUmVxdWVzdEVycm9yfSBXaGVuIEdtYWlsIGFuc3dlcnMgd2l0aCBhbnkgb3RoZXIgSFRUUCBlcnJvciBzdGF0dXMgKGUuZy4gaW52YWxpZCBxdWVyeSkuXG4gICAqIEBleGFtcGxlXG4gICAqIGBgYHRzXG4gICAqIGxldCBwYWdlVG9rZW46IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICogZG8ge1xuICAgKiAgIGNvbnN0IHBhZ2UgPSBhd2FpdCBnbWFpbC5saXN0TWVzc2FnZXMoe1xuICAgKiAgICAgcXVlcnk6IFwiaXM6dW5yZWFkXCIsXG4gICAqICAgICBtYXhSZXN1bHRzOiAxMDAsXG4gICAqICAgICBwYWdlVG9rZW4sXG4gICAqICAgfSk7XG4gICAqICAgY29uc29sZS5sb2cocGFnZS5tZXNzYWdlcyk7XG4gICAqICAgcGFnZVRva2VuID0gcGFnZS5uZXh0UGFnZVRva2VuO1xuICAgKiB9IHdoaWxlIChwYWdlVG9rZW4pO1xuICAgKiBgYGBcbiAgICovXG4gIGFzeW5jIGxpc3RNZXNzYWdlcyhcbiAgICBvcHRpb25zOiB7XG4gICAgICBxdWVyeT86IHN0cmluZztcbiAgICAgIG1heFJlc3VsdHM/OiBudW1iZXI7XG4gICAgICBwYWdlVG9rZW4/OiBzdHJpbmc7XG4gICAgICBsYWJlbElkcz86IHN0cmluZ1tdO1xuICAgIH0gPSB7fVxuICApOiBQcm9taXNlPEdtYWlsTGlzdFJlc3VsdD4ge1xuICAgIHRoaXMucmVxdWlyZVRva2VuKCk7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5jbGllbnQuZ2V0PHtcbiAgICAgICAgbWVzc2FnZXM/OiBBcnJheTx7IGlkOiBzdHJpbmc7IHRocmVhZElkPzogc3RyaW5nIH0+O1xuICAgICAgICBuZXh0UGFnZVRva2VuPzogc3RyaW5nO1xuICAgICAgICByZXN1bHRTaXplRXN0aW1hdGU/OiBudW1iZXI7XG4gICAgICB9PihgJHt0aGlzLnVzZXJQYXRoKCl9L21lc3NhZ2VzYCwge1xuICAgICAgICBwYXJhbXM6IHtcbiAgICAgICAgICBxOiBvcHRpb25zLnF1ZXJ5LFxuICAgICAgICAgIG1heFJlc3VsdHM6IG9wdGlvbnMubWF4UmVzdWx0cyA/PyAyNSxcbiAgICAgICAgICBwYWdlVG9rZW46IG9wdGlvbnMucGFnZVRva2VuLFxuICAgICAgICAgIGxhYmVsSWRzOiBvcHRpb25zLmxhYmVsSWRzLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBtZXNzYWdlczogcmVzcG9uc2UuZGF0YS5tZXNzYWdlcyA/PyBbXSxcbiAgICAgICAgbmV4dFBhZ2VUb2tlbjogcmVzcG9uc2UuZGF0YS5uZXh0UGFnZVRva2VuLFxuICAgICAgICByZXN1bHRTaXplRXN0aW1hdGU6IHJlc3BvbnNlLmRhdGEucmVzdWx0U2l6ZUVzdGltYXRlLFxuICAgICAgfTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgdGhyb3cgaHR0cEVycm9yKFwiR21haWxcIiwgXCJsaXN0IG1lc3NhZ2VzXCIsIGVycm9yKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIEZldGNoZXMgYSBzaW5nbGUgR21haWwgbWVzc2FnZVxuICAgKiBAc3VtbWFyeSBgR0VUYHMgYHVzZXJzLm1lc3NhZ2VzLmdldGAgZm9yIHRoZSBnaXZlbiBtZXNzYWdlIElEIHdpdGggdGhlXG4gICAqIHJlcXVlc3RlZCBgZm9ybWF0YC4gV2l0aCBgXCJmdWxsXCJgICh0aGUgZGVmYXVsdCkgdGhlIHBheWxvYWQgaW5jbHVkZXMgdGhlXG4gICAqIHBhcnNlZCBib2R5IHBhcnRzOyBgXCJtZXRhZGF0YVwiYCBsaW1pdHMgaXQgdG8gaGVhZGVycyBhbmQgbGFiZWxzLFxuICAgKiBgXCJtaW5pbWFsXCJgIHRvIGlkZW50aWZpZXJzIG9ubHksIGFuZCBgXCJyYXdcImAgcmV0dXJucyB0aGUgcmF3IE1JTUUgc3RyaW5nLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gaWQgLSBUaGUgR21haWwgbWVzc2FnZSBJRC5cbiAgICogQHBhcmFtIHtcImZ1bGxcIiB8IFwibWV0YWRhdGFcIiB8IFwibWluaW1hbFwiIHwgXCJyYXdcIn0gW2Zvcm1hdF0gLSBUaGUgbWVzc2FnZSBmb3JtYXQgdG8gcmVxdWVzdDsgZGVmYXVsdHMgdG8gYFwiZnVsbFwiYC5cbiAgICogQHJldHVybnMge1Byb21pc2U8UmVjb3JkPHN0cmluZywgdW5rbm93bj4+fSBUaGUgcmF3IEdtYWlsIG1lc3NhZ2UgcGF5bG9hZCBpbiB0aGUgcmVxdWVzdGVkIGZvcm1hdC5cbiAgICogQHRocm93cyB7SW50ZXJuYWxFcnJvcn0gV2hlbiBubyB0b2tlbiBpcyBjb25maWd1cmVkIG9yIHRoZSBtZXNzYWdlIElEIGlzIGVtcHR5LlxuICAgKiBAdGhyb3dzIHtOb3RGb3VuZEVycm9yfSBXaGVuIHRoZSBtZXNzYWdlIGRvZXMgbm90IGV4aXN0IChIVFRQIDQwNCkuXG4gICAqIEB0aHJvd3Mge0NvbmZsaWN0RXJyb3J9IFdoZW4gR21haWwgYW5zd2VycyB3aXRoIEhUVFAgNDA5LlxuICAgKiBAdGhyb3dzIHtCYWRSZXF1ZXN0RXJyb3J9IFdoZW4gR21haWwgYW5zd2VycyB3aXRoIGFueSBvdGhlciBIVFRQIGVycm9yIHN0YXR1cy5cbiAgICovXG4gIGFzeW5jIGdldE1lc3NhZ2UoXG4gICAgaWQ6IHN0cmluZyxcbiAgICBmb3JtYXQ6IFwiZnVsbFwiIHwgXCJtZXRhZGF0YVwiIHwgXCJtaW5pbWFsXCIgfCBcInJhd1wiID0gXCJmdWxsXCJcbiAgKTogUHJvbWlzZTxSZWNvcmQ8c3RyaW5nLCB1bmtub3duPj4ge1xuICAgIHRoaXMucmVxdWlyZVRva2VuKCk7XG4gICAgaWYgKCFpZCkgdGhyb3cgbmV3IEludGVybmFsRXJyb3IoXCJHbWFpbCBnZXRNZXNzYWdlIHJlcXVpcmVzIGEgbWVzc2FnZSBJRFwiKTtcbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLmNsaWVudC5nZXQ8UmVjb3JkPHN0cmluZywgdW5rbm93bj4+KFxuICAgICAgICBgJHt0aGlzLnVzZXJQYXRoKCl9L21lc3NhZ2VzLyR7ZW5jb2RlVVJJQ29tcG9uZW50KGlkKX1gLFxuICAgICAgICB7IHBhcmFtczogeyBmb3JtYXQgfSB9XG4gICAgICApO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHRocm93IGh0dHBFcnJvcihcIkdtYWlsXCIsIFwiZ2V0IG1lc3NhZ2VcIiwgZXJyb3IpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gTGlzdHMgdGhlIG1haWxib3gncyBHbWFpbCBsYWJlbHNcbiAgICogQHN1bW1hcnkgYEdFVGBzIGB1c2Vycy5sYWJlbHMubGlzdGAgYW5kIHJldHVybnMgdGhlIHJhdyBsYWJlbCBwYXlsb2Fkc1xuICAgKiAoaW5jbHVkaW5nIGBpZGAsIGBuYW1lYCwgYW5kIGB0eXBlYCkuXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPEFycmF5PFJlY29yZDxzdHJpbmcsIHVua25vd24+Pj59IFRoZSByYXcgR21haWwgbGFiZWwgcGF5bG9hZHMuXG4gICAqIEB0aHJvd3Mge0ludGVybmFsRXJyb3J9IFdoZW4gbm8gdG9rZW4gaXMgY29uZmlndXJlZC5cbiAgICogQHRocm93cyB7Tm90Rm91bmRFcnJvcn0gV2hlbiB0aGUgZW5kcG9pbnQgYW5zd2VycyB3aXRoIEhUVFAgNDA0LlxuICAgKiBAdGhyb3dzIHtDb25mbGljdEVycm9yfSBXaGVuIEdtYWlsIGFuc3dlcnMgd2l0aCBIVFRQIDQwOS5cbiAgICogQHRocm93cyB7QmFkUmVxdWVzdEVycm9yfSBXaGVuIEdtYWlsIGFuc3dlcnMgd2l0aCBhbnkgb3RoZXIgSFRUUCBlcnJvciBzdGF0dXMuXG4gICAqL1xuICBhc3luYyBsaXN0TGFiZWxzKCk6IFByb21pc2U8QXJyYXk8UmVjb3JkPHN0cmluZywgdW5rbm93bj4+PiB7XG4gICAgdGhpcy5yZXF1aXJlVG9rZW4oKTtcbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLmNsaWVudC5nZXQ8e1xuICAgICAgICBsYWJlbHM/OiBBcnJheTxSZWNvcmQ8c3RyaW5nLCB1bmtub3duPj47XG4gICAgICB9PihgJHt0aGlzLnVzZXJQYXRoKCl9L2xhYmVsc2ApO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGEubGFiZWxzID8/IFtdO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICB0aHJvdyBodHRwRXJyb3IoXCJHbWFpbFwiLCBcImxpc3QgbGFiZWxzXCIsIGVycm9yKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
235
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR21haWxTZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiR21haWxTZXJ2aWNlLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBOzs7Ozs7Ozs7O0dBVUc7QUFDSCwyREFBd0Q7QUFDeEQsd0RBQXVEO0FBQ3ZELDRFQUEwRTtBQUMxRSwyREFBMEU7QUFDMUUsZ0RBQWdEO0FBQ2hEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTBCRztBQUNILE1BQWEsWUFBYSxTQUFRLHlCQUFjO0lBQzVDO1FBQ0ksS0FBSyxDQUFDLEdBQUcsU0FBUyxDQUFDLENBQUM7UUFDcEI7O1dBRUc7UUFDSCxJQUFJLENBQUMsV0FBVyxHQUFHLE9BQU8sQ0FBQztJQUMvQixDQUFDO0lBQ0Q7Ozs7T0FJRztJQUNILGNBQWM7UUFDVixPQUFPLHVDQUF1QyxDQUFDO0lBQ25ELENBQUM7SUFDRDs7Ozs7O09BTUc7SUFDSCxXQUFXLENBQUMsTUFBTTtRQUNkLE9BQU8sTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxhQUFhLEVBQUUsVUFBVSxNQUFNLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQzNFLENBQUM7SUFDRDs7Ozs7O09BTUc7SUFDSCxxQkFBcUI7UUFDakIsTUFBTSxHQUFHLEdBQUcsaUNBQWdCLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQztRQUN6QyxNQUFNLEtBQUssR0FBRyxJQUFBLCtCQUFTLEVBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3BDLElBQUksQ0FBQyxLQUFLO1lBQ04sT0FBTyxTQUFTLENBQUM7UUFDckIsT0FBTztZQUNILEtBQUs7WUFDTCxNQUFNLEVBQUUsSUFBQSwrQkFBUyxFQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUM7WUFDN0IsT0FBTyxFQUFFLElBQUEsK0JBQVMsRUFBQyxHQUFHLENBQUMsT0FBTyxDQUFDO1lBQy9CLE9BQU8sRUFBRSxJQUFBLCtCQUFT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QUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsYUFBYSxrQkFBa0IsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLEVBQUUsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ3hILE9BQU8sUUFBUSxDQUFDLElBQUksQ0FBQztRQUN6QixDQUFDO1FBQ0QsT0FBTyxLQUFLLEVBQUUsQ0FBQztZQUNYLE1BQU0sSUFBQSxvQkFBUyxFQUFDLE9BQU8sRUFBRSxhQUFhLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDbkQsQ0FBQztJQUNMLENBQUM7SUFDRDs7Ozs7Ozs7O09BU0c7SUFDSCxLQUFLLENBQUMsVUFBVTtRQUNaLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUM7WUFDRCxNQUFNLFFBQVEsR0FBRyxNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxTQUFTLENBQUMsQ0FBQztZQUNwRSxPQUFPLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxJQUFJLEVBQUUsQ0FBQztRQUN0QyxDQUFDO1FBQ0QsT0FBTyxLQUFLLEVBQUUsQ0FBQztZQUNYLE1BQU0sSUFBQSxvQkFBUyxFQUFDLE9BQU8sRUFBRSxhQUFhLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDbkQsQ0FBQztJQUNMLENBQUM7Q0FDSjtBQXpMRCxvQ0F5TEM7QUFDRCwwNnBCQUEwNnBCIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbW9kdWxlIGludGVncmF0aW9ucy9jb21tcy9nbWFpbC9zZXJ2aWNlXG4gKiBAc3VtbWFyeSBHbWFpbCBBUEkgaW50ZWdyYXRpb24gc2VydmljZSBmb3Igc2VuZGluZyBhbmQgbGlzdGluZyBtZXNzYWdlcy5cbiAqIEBkZXNjcmlwdGlvbiBFeHBvc2VzIHRoZSBHbWFpbCBSRVNUIEFQSSAoYHVzZXJzLm1lc3NhZ2VzLnNlbmRgLFxuICogYHVzZXJzLm1lc3NhZ2VzLmxpc3RgLCBgdXNlcnMubWVzc2FnZXMuZ2V0YCwgYHVzZXJzLmxhYmVscy5saXN0YCkgYXMgYW5cbiAqIHVuZGVjb3JhdGVkIGNsaWVudC1iYXNlZCBzZXJ2aWNlIGJ1aWx0IG9uIHtAbGluayBIdHRwQXBpU2VydmljZX0uXG4gKiBNZXNzYWdlIHNlbmRpbmcgcmV1c2VzIHRoZSBzaGFyZWQgTUlNRSBidWlsZGVyIGZyb20gdGhlIGVtYWlsIGludGVncmF0aW9uXG4gKiAoYGJ1aWxkRW1haWxgKSBhbmQgcG9zdHMgdGhlIHJhdyBNSU1FIG1lc3NhZ2UgYXMgYmFzZTY0dXJsLiBDb25maWd1cmF0aW9uXG4gKiBjb21lcyBmcm9tIGFuIGV4cGxpY2l0IGBHbWFpbFNlcnZpY2VDb25maWdgIG9yIHRoZSBgY29tbXMuZ21haWxgIGVudmlyb25tZW50XG4gKiBzbGljZSwgYW5kIGZhaWx1cmVzIGFyZSBtYXBwZWQgdG8gZGVjYWYgZXJyb3JzIHZpYSB7QGxpbmsgaHR0cEVycm9yfS5cbiAqL1xuaW1wb3J0IHsgSW50ZXJuYWxFcnJvciB9IGZyb20gXCJAZGVjYWYtdHMvZGItZGVjb3JhdG9yc1wiO1xuaW1wb3J0IHsgQ29tbXNFbnZpcm9ubWVudCB9IGZyb20gXCIuLy4uL2Vudmlyb25tZW50LmpzXCI7XG5pbXBvcnQgeyBlbnZOdW1iZXIsIGVudlN0cmluZyB9IGZyb20gXCIuLy4uLy4uL3NoYXJlZC9lbnZpcm9ubWVudFZhbHVlLmpzXCI7XG5pbXBvcnQgeyBIdHRwQXBpU2VydmljZSwgaHR0cEVycm9yLCB9IGZyb20gXCIuLy4uLy4uL3NoYXJlZC9odHRwL2luZGV4LmpzXCI7XG5pbXBvcnQgeyBidWlsZEVtYWlsIH0gZnJvbSBcIi4vLi4vZW1haWwvbWltZS5qc1wiO1xuLyoqXG4gKiBAZGVzY3JpcHRpb24gR21haWwgQVBJIGludGVncmF0aW9uIHNlcnZpY2VcbiAqIEBzdW1tYXJ5IEFuIHVuZGVjb3JhdGVkIEhUVFAgc2VydmljZSBmb3Igc2VuZGluZyBNSU1FLWJ1aWx0XG4gKiBlbWFpbHMsIGxpc3RpbmcgbWVzc2FnZXMgd2l0aCBHbWFpbCBxdWVyeSBzeW50YXggYW5kIHBhZ2UgdG9rZW5zLCBmZXRjaGluZ1xuICogYSBzaW5nbGUgbWVzc2FnZSBpbiBhIGNob3NlbiBmb3JtYXQsIGFuZCBsaXN0aW5nIGxhYmVscy4gQWxsIG9wZXJhdGlvbnNcbiAqIHJlcXVpcmUgYW4gT0F1dGggdG9rZW4gKGByZXF1aXJlVG9rZW4oKWApIGFuZCBvcGVyYXRlIG9uIHRoZSBjb25maWd1cmVkXG4gKiBgdXNlcklkYCBtYWlsYm94IChkZWZhdWx0IGBcIm1lXCJgKTsgdHJhbnNwb3J0IGZhaWx1cmVzIGFyZSBtYXBwZWQgdG8gZGVjYWZcbiAqIGVycm9ycyB2aWEge0BsaW5rIGh0dHBFcnJvcn0uXG4gKiBAY2xhc3MgR21haWxTZXJ2aWNlXG4gKiBAY2F0ZWdvcnkgQ29tbXNcbiAqIEBleGFtcGxlXG4gKiBgYGB0c1xuICogaW1wb3J0IHsgR21haWxTZXJ2aWNlIH0gZnJvbSBcIkBkZWNhZi10cy9pbnRlZ3JhdGlvbnMvY29tbXMvZ21haWxcIjtcbiAqXG4gKiBjb25zdCBnbWFpbCA9IG5ldyBHbWFpbFNlcnZpY2UoKTtcbiAqIGF3YWl0IGdtYWlsLmluaXRpYWxpemUoe1xuICogICB0b2tlbjogcHJvY2Vzcy5lbnYuR1JBUEhfQ1JFREVOVElBTF9HTUFJTF9UT0tFTixcbiAqIH0pO1xuICogYXdhaXQgZ21haWwuc2VuZCh7XG4gKiAgIGZyb206IFwiYm90QGV4YW1wbGUuY29tXCIsXG4gKiAgIHRvOiBcIm9wc0BleGFtcGxlLmNvbVwiLFxuICogICBzdWJqZWN0OiBcIkRlcGxveVwiLFxuICogICB0ZXh0OiBcIlJlbGVhc2UgMS4yLjAgaXMgbGl2ZVwiLFxuICogfSk7XG4gKiBgYGBcbiAqIEBtZW1iZXJPZiBtb2R1bGU6aW50ZWdyYXRpb25zL2NvbW1zL2dtYWlsL3NlcnZpY2VcbiAqL1xuZXhwb3J0IGNsYXNzIEdtYWlsU2VydmljZSBleHRlbmRzIEh0dHBBcGlTZXJ2aWNlIHtcbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgc3VwZXIoLi4uYXJndW1lbnRzKTtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIEBkZXNjcmlwdGlvbiBUaGUgcHJvdmlkZXIgbmFtZSB1c2VkIGluIGVycm9yIG1lc3NhZ2VzXG4gICAgICAgICAqL1xuICAgICAgICB0aGlzLnNlcnZpY2VOYW1lID0gXCJHbWFpbFwiO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb24gVGhlIEdtYWlsIFJFU1QgQVBJIGJhc2UgVVJMXG4gICAgICogQHN1bW1hcnkgVXNlZCB3aGVuIHRoZSByZXNvbHZlZCBjb25maWcgY2FycmllcyBubyBgYmFzZVVybGAuXG4gICAgICogQHJldHVybnMge3N0cmluZ30gYFwiaHR0cHM6Ly9nbWFpbC5nb29nbGVhcGlzLmNvbS9nbWFpbC92MVwiYC5cbiAgICAgKi9cbiAgICBkZWZhdWx0QmFzZVVybCgpIHtcbiAgICAgICAgcmV0dXJuIFwiaHR0cHM6Ly9nbWFpbC5nb29nbGVhcGlzLmNvbS9nbWFpbC92MVwiO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb24gQnVpbGRzIHRoZSBHbWFpbCBPQXV0aCBiZWFyZXIgYXV0aG9yaXphdGlvbiBoZWFkZXJzXG4gICAgICogQHN1bW1hcnkgUmV0dXJucyB0aGUgYEF1dGhvcml6YXRpb246IEJlYXJlciA8dG9rZW4+YCBoZWFkZXIgd2hlbiB0aGVcbiAgICAgKiBjb25maWcgY2FycmllcyBhIHRva2VuLCBhbmQgbm8gaGVhZGVycyBvdGhlcndpc2UuXG4gICAgICogQHBhcmFtIHtHbWFpbFNlcnZpY2VDb25maWd9IGNvbmZpZyAtIFRoZSByZXNvbHZlZCBzZXJ2aWNlIGNvbmZpZ3VyYXRpb24uXG4gICAgICogQHJldHVybnMge1JlY29yZDxzdHJpbmcsIHN0cmluZz59IFRoZSBhdXRob3JpemF0aW9uIGhlYWRlcnMgKGVtcHR5IHdpdGhvdXQgYSB0b2tlbikuXG4gICAgICovXG4gICAgYXV0aEhlYWRlcnMoY29uZmlnKSB7XG4gICAgICAgIHJldHVybiBjb25maWcudG9rZW4gPyB7IEF1dGhvcml6YXRpb246IGBCZWFyZXIgJHtjb25maWcudG9rZW59YCB9IDoge307XG4gICAgfVxuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvbiBSZWFkcyB0aGUgR21haWwgY3JlZGVudGlhbHMgYW5kIGRlZmF1bHRzIGZyb20gdGhlIGVudmlyb25tZW50XG4gICAgICogQHN1bW1hcnkgUmVhZHMgdGhlIGBjb21tcy5nbWFpbGAgZW52aXJvbm1lbnQgc2xpY2UgYW5kIHJldHVybnMgYSBwYXJ0aWFsXG4gICAgICogY29uZmlnIHdoZW4gYSB0b2tlbiBpcyBjb25maWd1cmVkLCBgdW5kZWZpbmVkYCBvdGhlcndpc2UuIFZhbHVlcyBwYXNzXG4gICAgICogdGhyb3VnaCBgZW52U3RyaW5nYC9gZW52TnVtYmVyYCB0byByZWplY3QgdW5zZXQtbGVhZiBwcm94aWVzLlxuICAgICAqIEByZXR1cm5zIHtQYXJ0aWFsPEdtYWlsU2VydmljZUNvbmZpZz4gfCB1bmRlZmluZWR9IEEgcGFydGlhbCBjb25maWcsIG9yIGB1bmRlZmluZWRgIHdoZW4gbm8gR21haWwgdG9rZW4gaXMgY29uZmlndXJlZC5cbiAgICAgKi9cbiAgICBjb25maWdGcm9tRW52aXJvbm1lbnQoKSB7XG4gICAgICAgIGNvbnN0IGVudiA9IENvbW1zRW52aXJvbm1lbnQuY29tbXMuZ21haWw7XG4gICAgICAgIGNvbnN0IHRva2VuID0gZW52U3RyaW5nKGVudj8udG9rZW4pO1xuICAgICAgICBpZiAoIXRva2VuKVxuICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIHRva2VuLFxuICAgICAgICAgICAgdXNlcklkOiBlbnZTdHJpbmcoZW52LnVzZXJJZCksXG4gICAgICAgICAgICBiYXNlVXJsOiBlbnZTdHJpbmcoZW52LmJhc2VVcmwpLFxuICAgICAgICAgICAgdGltZW91dDogZW52TnVtYmVyKGVudi50aW1lb3V0KSxcbiAgICAgICAgfTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIEJ1aWxkcyB0aGUgbWFpbGJveC1zY29wZWQgQVBJIHBhdGhcbiAgICAgKiBAc3VtbWFyeSBSZXR1cm5zIGAvdXNlcnMvPHVzZXJJZD5gIHdpdGggdGhlIGNvbmZpZ3VyZWQgYHVzZXJJZGAgKG9yXG4gICAgICogYFwibWVcImAgd2hlbiB1bnNldCkgVVJMLWVuY29kZWQ7IGFsbCBtZXNzYWdlIGFuZCBsYWJlbCBvcGVyYXRpb25zIGFyZVxuICAgICAqIHJlbGF0aXZlIHRvIHRoaXMgcGF0aC5cbiAgICAgKiBAcmV0dXJucyB7c3RyaW5nfSBUaGUgVVJMLWVuY29kZWQgbWFpbGJveCBwYXRoLlxuICAgICAqL1xuICAgIHVzZXJQYXRoKCkge1xuICAgICAgICByZXR1cm4gYC91c2Vycy8ke2VuY29kZVVSSUNvbXBvbmVudCh0aGlzLmNvbmZpZy51c2VySWQgPz8gXCJtZVwiKX1gO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb24gU2VuZHMgYW4gZW1haWwgdGhyb3VnaCB0aGUgR21haWwgQVBJXG4gICAgICogQHN1bW1hcnkgQnVpbGRzIGEgcmF3IE1JTUUgbWVzc2FnZSBmcm9tIHRoZSBpbnB1dCB3aXRoIHRoZSBzaGFyZWQgZW1haWxcbiAgICAgKiBNSU1FIGJ1aWxkZXIgKGBidWlsZEVtYWlsYCksIGJhc2U2NHVybC1lbmNvZGVzIGl0LCBhbmQgYFBPU1RgcyBpdCB0b1xuICAgICAqIGB1c2Vycy5tZXNzYWdlcy5zZW5kYC4gUmVxdWlyZXMgYSB0b2tlbiBhbmQgYSBgZnJvbWAgc2VuZGVyIGFkZHJlc3MuXG4gICAgICogQHBhcmFtIHtFbWFpbE1lc3NhZ2VJbnB1dH0gaW5wdXQgLSBUaGUgbWVzc2FnZSBlbnZlbG9wZSBhbmQgYm9keSAoYGZyb21gLCBgdG9gLCBgc3ViamVjdGAsIGFuZCBvcHRpb25hbCBgY2NgL2BiY2NgL2B0ZXh0YC9gaHRtbGAvYHJlcGx5VG9gL2BhdHRhY2htZW50c2ApLlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlPEdtYWlsU2VuZFJlc3VsdD59IEdtYWlsJ3MgaWRlbnRpZmllcnMgZm9yIHRoZSBzZW50IG1lc3NhZ2UuXG4gICAgICogQHRocm93cyB7SW50ZXJuYWxFcnJvcn0gV2hlbiBubyB0b2tlbiBpcyBjb25maWd1cmVkIG9yIHRoZSBzZW5kZXIgYWRkcmVzcyBpcyBtaXNzaW5nLlxuICAgICAqIEB0aHJvd3Mge05vdEZvdW5kRXJyb3J9IFdoZW4gdGhlIGVuZHBvaW50IGFuc3dlcnMgd2l0aCBIVFRQIDQwNC5cbiAgICAgKiBAdGhyb3dzIHtDb25mbGljdEVycm9yfSBXaGVuIEdtYWlsIGFuc3dlcnMgd2l0aCBIVFRQIDQwOS5cbiAgICAgKiBAdGhyb3dzIHtCYWRSZXF1ZXN0RXJyb3J9IFdoZW4gR21haWwgYW5zd2VycyB3aXRoIGFueSBvdGhlciBIVFRQIGVycm9yIHN0YXR1cyAoZS5nLiBpbnZhbGlkIHJlY2lwaWVudHMpLlxuICAgICAqL1xuICAgIGFzeW5jIHNlbmQoaW5wdXQpIHtcbiAgICAgICAgdGhpcy5yZXF1aXJlVG9rZW4oKTtcbiAgICAgICAgaWYgKCFpbnB1dC5mcm9tKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihcIkdtYWlsIHNlbmQgcmVxdWlyZXMgYSBzZW5kZXIgYWRkcmVzc1wiKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBidWlsdCA9IGJ1aWxkRW1haWwoaW5wdXQpO1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLmNsaWVudC5wb3N0KGAke3RoaXMudXNlclBhdGgoKX0vbWVzc2FnZXMvc2VuZGAsIHtcbiAgICAgICAgICAgICAgICByYXc6IEJ1ZmZlci5mcm9tKGJ1aWx0LnJhdywgXCJ1dGY4XCIpLnRvU3RyaW5nKFwiYmFzZTY0dXJsXCIpLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIGlkOiBTdHJpbmcocmVzcG9uc2UuZGF0YS5pZCA/PyBidWlsdC5tZXNzYWdlSWQpLFxuICAgICAgICAgICAgICAgIHRocmVhZElkOiByZXNwb25zZS5kYXRhLnRocmVhZElkLFxuICAgICAgICAgICAgICAgIGxhYmVsSWRzOiByZXNwb25zZS5kYXRhLmxhYmVsSWRzLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgICBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgICAgIHRocm93IGh0dHBFcnJvcihcIkdtYWlsXCIsIFwic2VuZCBtZXNzYWdlXCIsIGVycm9yKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb24gTGlzdHMgbWFpbGJveCBtZXNzYWdlcyB3aXRoIEdtYWlsIHF1ZXJ5IHBhZ2luZ1xuICAgICAqIEBzdW1tYXJ5IGBHRVRgcyBgdXNlcnMubWVzc2FnZXMubGlzdGAgd2l0aCBhbiBvcHRpb25hbCBHbWFpbCBgcXVlcnlgXG4gICAgICogKGBxYCBwYXJhbWV0ZXIsIGUuZy4gYFwiZnJvbTp1c2VyQGV4YW1wbGUuY29tIGlzOnVucmVhZFwiYCksIGEgcGFnZSBzaXplXG4gICAgICogKGRlZmF1bHQgYDI1YCksIGEgYHBhZ2VUb2tlbmAgZnJvbSB0aGUgcHJldmlvdXMgcGFnZSwgYW5kIGBsYWJlbElkc2BcbiAgICAgKiBmaWx0ZXJpbmcuIFJldHVybnMgdGhlIG1lc3NhZ2UgcmVmZXJlbmNlcyBhbmQgdGhlIGBuZXh0UGFnZVRva2VuYCB0byBwYXNzXG4gICAgICogYmFjayBhcyBgcGFnZVRva2VuYCBmb3IgdGhlIG5leHQgcGFnZS5cbiAgICAgKiBAcGFyYW0ge29iamVjdH0gW29wdGlvbnNdIC0gUXVlcnkgYW5kIHBhZ2luZyBvcHRpb25zLlxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBbb3B0aW9ucy5xdWVyeV0gLSBHbWFpbCBzZWFyY2ggcXVlcnkgKGBxYCBwYXJhbWV0ZXIpLlxuICAgICAqIEBwYXJhbSB7bnVtYmVyfSBbb3B0aW9ucy5tYXhSZXN1bHRzXSAtIFBhZ2Ugc2l6ZTsgZGVmYXVsdHMgdG8gYDI1YC5cbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gW29wdGlvbnMucGFnZVRva2VuXSAtIFRoZSBgbmV4dFBhZ2VUb2tlbmAgZnJvbSB0aGUgcHJldmlvdXMgcGFnZS5cbiAgICAgKiBAcGFyYW0ge3N0cmluZ1tdfSBbb3B0aW9ucy5sYWJlbElkc10gLSBMYWJlbCBJRHMgdGhlIG1lc3NhZ2VzIG11c3QgY2FycnkuXG4gICAgICogQHJldHVybnMge1Byb21pc2U8R21haWxMaXN0UmVzdWx0Pn0gT25lIHBhZ2Ugb2YgbWVzc2FnZSByZWZlcmVuY2VzIHdpdGggdGhlIG5leHQgcGFnZSB0b2tlbiB3aGVuIG1vcmUgcGFnZXMgZXhpc3QuXG4gICAgICogQHRocm93cyB7SW50ZXJuYWxFcnJvcn0gV2hlbiBubyB0b2tlbiBpcyBjb25maWd1cmVkLlxuICAgICAqIEB0aHJvd3Mge05vdEZvdW5kRXJyb3J9IFdoZW4gdGhlIGVuZHBvaW50IGFuc3dlcnMgd2l0aCBIVFRQIDQwNC5cbiAgICAgKiBAdGhyb3dzIHtDb25mbGljdEVycm9yfSBXaGVuIEdtYWlsIGFuc3dlcnMgd2l0aCBIVFRQIDQwOS5cbiAgICAgKiBAdGhyb3dzIHtCYWRSZXF1ZXN0RXJyb3J9IFdoZW4gR21haWwgYW5zd2VycyB3aXRoIGFueSBvdGhlciBIVFRQIGVycm9yIHN0YXR1cyAoZS5nLiBpbnZhbGlkIHF1ZXJ5KS5cbiAgICAgKiBAZXhhbXBsZVxuICAgICAqIGBgYHRzXG4gICAgICogbGV0IHBhZ2VUb2tlbjogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgICAqIGRvIHtcbiAgICAgKiAgIGNvbnN0IHBhZ2UgPSBhd2FpdCBnbWFpbC5saXN0TWVzc2FnZXMoe1xuICAgICAqICAgICBxdWVyeTogXCJpczp1bnJlYWRcIixcbiAgICAgKiAgICAgbWF4UmVzdWx0czogMTAwLFxuICAgICAqICAgICBwYWdlVG9rZW4sXG4gICAgICogICB9KTtcbiAgICAgKiAgIGNvbnNvbGUubG9nKHBhZ2UubWVzc2FnZXMpO1xuICAgICAqICAgcGFnZVRva2VuID0gcGFnZS5uZXh0UGFnZVRva2VuO1xuICAgICAqIH0gd2hpbGUgKHBhZ2VUb2tlbik7XG4gICAgICogYGBgXG4gICAgICovXG4gICAgYXN5bmMgbGlzdE1lc3NhZ2VzKG9wdGlvbnMgPSB7fSkge1xuICAgICAgICB0aGlzLnJlcXVpcmVUb2tlbigpO1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLmNsaWVudC5nZXQoYCR7dGhpcy51c2VyUGF0aCgpfS9tZXNzYWdlc2AsIHtcbiAgICAgICAgICAgICAgICBwYXJhbXM6IHtcbiAgICAgICAgICAgICAgICAgICAgcTogb3B0aW9ucy5xdWVyeSxcbiAgICAgICAgICAgICAgICAgICAgbWF4UmVzdWx0czogb3B0aW9ucy5tYXhSZXN1bHRzID8/IDI1LFxuICAgICAgICAgICAgICAgICAgICBwYWdlVG9rZW46IG9wdGlvbnMucGFnZVRva2VuLFxuICAgICAgICAgICAgICAgICAgICBsYWJlbElkczogb3B0aW9ucy5sYWJlbElkcyxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIG1lc3NhZ2VzOiByZXNwb25zZS5kYXRhLm1lc3NhZ2VzID8/IFtdLFxuICAgICAgICAgICAgICAgIG5leHRQYWdlVG9rZW46IHJlc3BvbnNlLmRhdGEubmV4dFBhZ2VUb2tlbixcbiAgICAgICAgICAgICAgICByZXN1bHRTaXplRXN0aW1hdGU6IHJlc3BvbnNlLmRhdGEucmVzdWx0U2l6ZUVzdGltYXRlLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgICBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgICAgIHRocm93IGh0dHBFcnJvcihcIkdtYWlsXCIsIFwibGlzdCBtZXNzYWdlc1wiLCBlcnJvcik7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIEZldGNoZXMgYSBzaW5nbGUgR21haWwgbWVzc2FnZVxuICAgICAqIEBzdW1tYXJ5IGBHRVRgcyBgdXNlcnMubWVzc2FnZXMuZ2V0YCBmb3IgdGhlIGdpdmVuIG1lc3NhZ2UgSUQgd2l0aCB0aGVcbiAgICAgKiByZXF1ZXN0ZWQgYGZvcm1hdGAuIFdpdGggYFwiZnVsbFwiYCAodGhlIGRlZmF1bHQpIHRoZSBwYXlsb2FkIGluY2x1ZGVzIHRoZVxuICAgICAqIHBhcnNlZCBib2R5IHBhcnRzOyBgXCJtZXRhZGF0YVwiYCBsaW1pdHMgaXQgdG8gaGVhZGVycyBhbmQgbGFiZWxzLFxuICAgICAqIGBcIm1pbmltYWxcImAgdG8gaWRlbnRpZmllcnMgb25seSwgYW5kIGBcInJhd1wiYCByZXR1cm5zIHRoZSByYXcgTUlNRSBzdHJpbmcuXG4gICAgICogQHBhcmFtIHtzdHJpbmd9IGlkIC0gVGhlIEdtYWlsIG1lc3NhZ2UgSUQuXG4gICAgICogQHBhcmFtIHtcImZ1bGxcIiB8IFwibWV0YWRhdGFcIiB8IFwibWluaW1hbFwiIHwgXCJyYXdcIn0gW2Zvcm1hdF0gLSBUaGUgbWVzc2FnZSBmb3JtYXQgdG8gcmVxdWVzdDsgZGVmYXVsdHMgdG8gYFwiZnVsbFwiYC5cbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZTxSZWNvcmQ8c3RyaW5nLCB1bmtub3duPj59IFRoZSByYXcgR21haWwgbWVzc2FnZSBwYXlsb2FkIGluIHRoZSByZXF1ZXN0ZWQgZm9ybWF0LlxuICAgICAqIEB0aHJvd3Mge0ludGVybmFsRXJyb3J9IFdoZW4gbm8gdG9rZW4gaXMgY29uZmlndXJlZCBvciB0aGUgbWVzc2FnZSBJRCBpcyBlbXB0eS5cbiAgICAgKiBAdGhyb3dzIHtOb3RGb3VuZEVycm9yfSBXaGVuIHRoZSBtZXNzYWdlIGRvZXMgbm90IGV4aXN0IChIVFRQIDQwNCkuXG4gICAgICogQHRocm93cyB7Q29uZmxpY3RFcnJvcn0gV2hlbiBHbWFpbCBhbnN3ZXJzIHdpdGggSFRUUCA0MDkuXG4gICAgICogQHRocm93cyB7QmFkUmVxdWVzdEVycm9yfSBXaGVuIEdtYWlsIGFuc3dlcnMgd2l0aCBhbnkgb3RoZXIgSFRUUCBlcnJvciBzdGF0dXMuXG4gICAgICovXG4gICAgYXN5bmMgZ2V0TWVzc2FnZShpZCwgZm9ybWF0ID0gXCJmdWxsXCIpIHtcbiAgICAgICAgdGhpcy5yZXF1aXJlVG9rZW4oKTtcbiAgICAgICAgaWYgKCFpZClcbiAgICAgICAgICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKFwiR21haWwgZ2V0TWVzc2FnZSByZXF1aXJlcyBhIG1lc3NhZ2UgSURcIik7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHRoaXMuY2xpZW50LmdldChgJHt0aGlzLnVzZXJQYXRoKCl9L21lc3NhZ2VzLyR7ZW5jb2RlVVJJQ29tcG9uZW50KGlkKX1gLCB7IHBhcmFtczogeyBmb3JtYXQgfSB9KTtcbiAgICAgICAgICAgIHJldHVybiByZXNwb25zZS5kYXRhO1xuICAgICAgICB9XG4gICAgICAgIGNhdGNoIChlcnJvcikge1xuICAgICAgICAgICAgdGhyb3cgaHR0cEVycm9yKFwiR21haWxcIiwgXCJnZXQgbWVzc2FnZVwiLCBlcnJvcik7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIExpc3RzIHRoZSBtYWlsYm94J3MgR21haWwgbGFiZWxzXG4gICAgICogQHN1bW1hcnkgYEdFVGBzIGB1c2Vycy5sYWJlbHMubGlzdGAgYW5kIHJldHVybnMgdGhlIHJhdyBsYWJlbCBwYXlsb2Fkc1xuICAgICAqIChpbmNsdWRpbmcgYGlkYCwgYG5hbWVgLCBhbmQgYHR5cGVgKS5cbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZTxBcnJheTxSZWNvcmQ8c3RyaW5nLCB1bmtub3duPj4+fSBUaGUgcmF3IEdtYWlsIGxhYmVsIHBheWxvYWRzLlxuICAgICAqIEB0aHJvd3Mge0ludGVybmFsRXJyb3J9IFdoZW4gbm8gdG9rZW4gaXMgY29uZmlndXJlZC5cbiAgICAgKiBAdGhyb3dzIHtOb3RGb3VuZEVycm9yfSBXaGVuIHRoZSBlbmRwb2ludCBhbnN3ZXJzIHdpdGggSFRUUCA0MDQuXG4gICAgICogQHRocm93cyB7Q29uZmxpY3RFcnJvcn0gV2hlbiBHbWFpbCBhbnN3ZXJzIHdpdGggSFRUUCA0MDkuXG4gICAgICogQHRocm93cyB7QmFkUmVxdWVzdEVycm9yfSBXaGVuIEdtYWlsIGFuc3dlcnMgd2l0aCBhbnkgb3RoZXIgSFRUUCBlcnJvciBzdGF0dXMuXG4gICAgICovXG4gICAgYXN5bmMgbGlzdExhYmVscygpIHtcbiAgICAgICAgdGhpcy5yZXF1aXJlVG9rZW4oKTtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5jbGllbnQuZ2V0KGAke3RoaXMudXNlclBhdGgoKX0vbGFiZWxzYCk7XG4gICAgICAgICAgICByZXR1cm4gcmVzcG9uc2UuZGF0YS5sYWJlbHMgPz8gW107XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICB0aHJvdyBodHRwRXJyb3IoXCJHbWFpbFwiLCBcImxpc3QgbGFiZWxzXCIsIGVycm9yKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtiYXNlNjQsZXlKMlpYSnphVzl1SWpvekxDSm1hV3hsSWpvaVIyMWhhV3hUWlhKMmFXTmxMbXB6SWl3aWMyOTFjbU5sVW05dmRDSTZJaUlzSW5OdmRYSmpaWE1pT2xzaUxpNHZMaTR2TGk0dkxpNHZjM0pqTDJOdmJXMXpMMmR0WVdsc0wwZHRZV2xzVTJWeWRtbGpaUzUwY3lKZExDSnVZVzFsY3lJNlcxMHNJbTFoY0hCcGJtZHpJam9pUVVGQlFUczdPenM3T3pzN096dEhRVlZITzBGQlEwZ3NUMEZCVHl4RlFVRkZMR0ZCUVdFc1JVRkJSU3hOUVVGTkxIbENRVUY1UWl4RFFVRkRPMEZCUTNoRUxFOUJRVThzUlVGQlJTeG5Ra0ZCWjBJc1JVRkJSU3cwUWtGQmRVSTdRVUZEYkVRc1QwRkJUeXhGUVVGRkxGTkJRVk1zUlVGQlJTeFRRVUZUTEVWQlFVVXNNa05CUVhORE8wRkJRM0pGTEU5QlFVOHNSVUZEVEN4alFVRmpMRVZCUldRc1UwRkJVeXhIUVVOV0xIRkRRVUV3UWp0QlFVTXpRaXhQUVVGUExFVkJRVVVzVlVGQlZTeEZRVUV3UWl3eVFrRkJjMEk3UVVGdFJHNUZPenM3T3pzN096czdPenM3T3pzN096czdPenM3T3pzN096dEhRVEJDUnp0QlFVTklMRTFCUVUwc1QwRkJUeXhaUVVGaExGTkJRVkVzWTBGQmEwTTdTVUZCY0VVN08xRkJRMFU3TzFkQlJVYzdVVUZEWjBJc1owSkJRVmNzUjBGQlJ5eFBRVUZQTEVOQlFVTTdTVUV5VFRORExFTkJRVU03U1VGNlRVTTdPenM3VDBGSlJ6dEpRVU5QTEdOQlFXTTdVVUZEZEVJc1QwRkJUeXgxUTBGQmRVTXNRMEZCUXp0SlFVTnFSQ3hEUVVGRE8wbEJSVVE3T3pzN096dFBRVTFITzBsQlEwOHNWMEZCVnl4RFFVRkRMRTFCUVRCQ08xRkJRemxETEU5QlFVOHNUVUZCVFN4RFFVRkRMRXRCUVVzc1EwRkJReXhEUVVGRExFTkJRVU1zUlVGQlJTeGhRVUZoTEVWQlFVVXNWVUZCVlN4TlFVRk5MRU5CUVVNc1MwRkJTeXhGUVVGRkxFVkJRVVVzUTBGQlF5eERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRPMGxCUTNwRkxFTkJRVU03U1VGRlJEczdPenM3TzA5QlRVYzdTVUZEVHl4eFFrRkJjVUk3VVVGRE4wSXNUVUZCVFN4SFFVRkhMRWRCUVVjc1owSkJRV2RDTEVOQlFVTXNTMEZCU3l4RFFVRkRMRXRCUVVzc1EwRkJRenRSUVVONlF5eE5RVUZOTEV0QlFVc3NSMEZCUnl4VFFVRlRMRU5CUVVNc1IwRkJSeXhGUVVGRkxFdEJRVXNzUTBGQlF5eERRVUZETzFGQlEzQkRMRWxCUVVrc1EwRkJReXhMUVVGTE8xbEJRVVVzVDBGQlR5eFRRVUZUTEVOQlFVTTdVVUZETjBJc1QwRkJUenRaUVVOTUxFdEJRVXM3V1VGRFRDeE5RVUZOTEVWQlFVVXNVMEZCVXl4RFFVRkRMRWRCUVVjc1EwRkJReXhOUVVGTkxFTkJRVU03V1VGRE4wSXNUMEZCVHl4RlFVRkZMRk5CUVZNc1EwRkJReXhIUVVGSExFTkJRVU1zVDBGQlR5eERRVUZETzFsQlF5OUNMRTlCUVU4c1JVRkJSU3hUUVVGVExFTkJRVU1zUjBGQlJ5eERRVUZETEU5QlFVOHNRMEZCUXp0VFFVTm9ReXhEUVVGRE8wbEJRMG9zUTBGQlF6dEpRVVZFT3pzN096czdUMEZOUnp0SlFVTlBMRkZCUVZFN1VVRkRhRUlzVDBGQlR5eFZRVUZWTEd0Q1FVRnJRaXhEUVVGRExFbEJRVWtzUTBGQlF5eE5RVUZOTEVOQlFVTXNUVUZCVFN4SlFVRkpMRWxCUVVrc1EwRkJReXhGUVVGRkxFTkJRVU03U1VGRGNFVXNRMEZCUXp0SlFVVkVPenM3T3pzN096czdPenRQUVZkSE8wbEJRMGdzUzBGQlN5eERRVUZETEVsQlFVa3NRMEZCUXl4TFFVRjNRanRSUVVOcVF5eEpRVUZKTEVOQlFVTXNXVUZCV1N4RlFVRkZMRU5CUVVNN1VVRkRjRUlzU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4SlFVRkpMRVZCUVVVc1EwRkJRenRaUVVOb1FpeE5RVUZOTEVsQlFVa3NZVUZCWVN4RFFVRkRMSE5EUVVGelF5eERRVUZETEVOQlFVTTdVVUZEYkVVc1EwRkJRenRSUVVORUxFMUJRVTBzUzBGQlN5eEhRVUZITEZWQlFWVXNRMEZCUXl4TFFVRkxMRU5CUVVNc1EwRkJRenRSUVVOb1F5eEpRVUZKTEVOQlFVTTdXVUZEU0N4TlFVRk5MRkZCUVZFc1IwRkJSeXhOUVVGTkxFbEJRVWtzUTBGQlF5eE5RVUZOTEVOQlFVTXNTVUZCU1N4RFFVbHdReXhIUVVGSExFbEJRVWtzUTBGQlF5eFJRVUZSTEVWQlFVVXNaMEpCUVdkQ0xFVkJRVVU3WjBKQlEzSkRMRWRCUVVjc1JVRkJSU3hOUVVGTkxFTkJRVU1zU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4SFFVRkhMRVZCUVVVc1RVRkJUU3hEUVVGRExFTkJRVU1zVVVGQlVTeERRVUZETEZkQlFWY3NRMEZCUXp0aFFVTXhSQ3hEUVVGRExFTkJRVU03V1VGRFNDeFBRVUZQTzJkQ1FVTk1MRVZCUVVVc1JVRkJSU3hOUVVGTkxFTkJRVU1zVVVGQlVTeERRVUZETEVsQlFVa3NRMEZCUXl4RlFVRkZMRWxCUVVrc1MwRkJTeXhEUVVGRExGTkJRVk1zUTBGQlF6dG5Ra0ZETDBNc1VVRkJVU3hGUVVGRkxGRkJRVkVzUTBGQlF5eEpRVUZKTEVOQlFVTXNVVUZCVVR0blFrRkRhRU1zVVVGQlVTeEZRVUZGTEZGQlFWRXNRMEZCUXl4SlFVRkpMRU5CUVVNc1VVRkJVVHRoUVVOcVF5eERRVUZETzFGQlEwb3NRMEZCUXp0UlFVRkRMRTlCUVU4c1MwRkJTeXhGUVVGRkxFTkJRVU03V1VGRFppeE5RVUZOTEZOQlFWTXNRMEZCUXl4UFFVRlBMRVZCUVVVc1kwRkJZeXhGUVVGRkxFdEJRVXNzUTBGQlF5eERRVUZETzFGQlEyeEVMRU5CUVVNN1NVRkRTQ3hEUVVGRE8wbEJSVVE3T3pzN096czdPenM3T3pzN096czdPenM3T3pzN096czdPenM3T3p0UFFUaENSenRKUVVOSUxFdEJRVXNzUTBGQlF5eFpRVUZaTEVOQlEyaENMRlZCUzBrc1JVRkJSVHRSUVVWT0xFbEJRVWtzUTBGQlF5eFpRVUZaTEVWQlFVVXNRMEZCUXp0UlFVTndRaXhKUVVGSkxFTkJRVU03V1VGRFNDeE5RVUZOTEZGQlFWRXNSMEZCUnl4TlFVRk5MRWxCUVVrc1EwRkJReXhOUVVGTkxFTkJRVU1zUjBGQlJ5eERRVWx1UXl4SFFVRkhMRWxCUVVrc1EwRkJReXhSUVVGUkxFVkJRVVVzVjBGQlZ5eEZRVUZGTzJkQ1FVTm9ReXhOUVVGTkxFVkJRVVU3YjBKQlEwNHNRMEZCUXl4RlFVRkZMRTlCUVU4c1EwRkJReXhMUVVGTE8yOUNRVU5vUWl4VlFVRlZMRVZCUVVVc1QwRkJUeXhEUVVGRExGVkJRVlVzU1VGQlNTeEZRVUZGTzI5Q1FVTndReXhUUVVGVExFVkJRVVVzVDBGQlR5eERRVUZETEZOQlFWTTdiMEpCUXpWQ0xGRkJRVkVzUlVGQlJTeFBRVUZQTEVOQlFVTXNVVUZCVVR0cFFrRkRNMEk3WVVGRFJpeERRVUZETEVOQlFVTTdXVUZEU0N4UFFVRlBPMmRDUVVOTUxGRkJRVkVzUlVGQlJTeFJRVUZSTEVOQlFVTXNTVUZCU1N4RFFVRkRMRkZCUVZFc1NVRkJTU3hGUVVGRk8yZENRVU4wUXl4aFFVRmhMRVZCUVVVc1VVRkJVU3hEUVVGRExFbEJRVWtzUTBGQlF5eGhRVUZoTzJkQ1FVTXhReXhyUWtGQmEwSXNSVUZCUlN4UlFVRlJMRU5CUVVNc1NVRkJTU3hEUVVGRExHdENRVUZyUWp0aFFVTnlSQ3hEUVVGRE8xRkJRMG9zUTBGQlF6dFJRVUZETEU5QlFVOHNTMEZCU3l4RlFVRkZMRU5CUVVNN1dVRkRaaXhOUVVGTkxGTkJRVk1zUTBGQlF5eFBRVUZQTEVWQlFVVXNaVUZCWlN4RlFVRkZMRXRCUVVzc1EwRkJReXhEUVVGRE8xRkJRMjVFTEVOQlFVTTdTVUZEU0N4RFFVRkRPMGxCUlVRN096czdPenM3T3pzN096czdUMEZoUnp0SlFVTklMRXRCUVVzc1EwRkJReXhWUVVGVkxFTkJRMlFzUlVGQlZTeEZRVU5XTEZOQlFXdEVMRTFCUVUwN1VVRkZlRVFzU1VGQlNTeERRVUZETEZsQlFWa3NSVUZCUlN4RFFVRkRPMUZCUTNCQ0xFbEJRVWtzUTBGQlF5eEZRVUZGTzFsQlFVVXNUVUZCVFN4SlFVRkpMR0ZCUVdFc1EwRkJReXgzUTBGQmQwTXNRMEZCUXl4RFFVRkRPMUZCUXpORkxFbEJRVWtzUTBGQlF6dFpRVU5JTEUxQlFVMHNVVUZCVVN4SFFVRkhMRTFCUVUwc1NVRkJTU3hEUVVGRExFMUJRVTBzUTBGQlF5eEhRVUZITEVOQlEzQkRMRWRCUVVjc1NVRkJTU3hEUVVGRExGRkJRVkVzUlVGQlJTeGhRVUZoTEd0Q1FVRnJRaXhEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTEVWQlEzWkVMRVZCUVVVc1RVRkJUU3hGUVVGRkxFVkJRVVVzVFVGQlRTeEZRVUZGTEVWQlFVVXNRMEZEZGtJc1EwRkJRenRaUVVOR0xFOUJRVThzVVVGQlVTeERRVUZETEVsQlFVa3NRMEZCUXp0UlFVTjJRaXhEUVVGRE8xRkJRVU1zVDBGQlR5eExRVUZMTEVWQlFVVXNRMEZCUXp0WlFVTm1MRTFCUVUwc1UwRkJVeXhEUVVGRExFOUJRVThzUlVGQlJTeGhRVUZoTEVWQlFVVXNTMEZCU3l4RFFVRkRMRU5CUVVNN1VVRkRha1FzUTBGQlF6dEpRVU5JTEVOQlFVTTdTVUZGUkRzN096czdPenM3TzA5QlUwYzdTVUZEU0N4TFFVRkxMRU5CUVVNc1ZVRkJWVHRSUVVOa0xFbEJRVWtzUTBGQlF5eFpRVUZaTEVWQlFVVXNRMEZCUXp0UlFVTndRaXhKUVVGSkxFTkJRVU03V1VGRFNDeE5RVUZOTEZGQlFWRXNSMEZCUnl4TlFVRk5MRWxCUVVrc1EwRkJReXhOUVVGTkxFTkJRVU1zUjBGQlJ5eERRVVZ1UXl4SFFVRkhMRWxCUVVrc1EwRkJReXhSUVVGUkxFVkJRVVVzVTBGQlV5eERRVUZETEVOQlFVTTdXVUZEYUVNc1QwRkJUeXhSUVVGUkxFTkJRVU1zU1VGQlNTeERRVUZETEUxQlFVMHNTVUZCU1N4RlFVRkZMRU5CUVVNN1VVRkRjRU1zUTBGQlF6dFJRVUZETEU5QlFVOHNTMEZCU3l4RlFVRkZMRU5CUVVNN1dVRkRaaXhOUVVGTkxGTkJRVk1zUTBGQlF5eFBRVUZQTEVWQlFVVXNZVUZCWVN4RlFVRkZMRXRCUVVzc1EwRkJReXhEUVVGRE8xRkJRMnBFTEVOQlFVTTdTVUZEU0N4RFFVRkRPME5CUTBZaUxDSnpiM1Z5WTJWelEyOXVkR1Z1ZENJNld5SXZLaXBjYmlBcUlFQnRiMlIxYkdVZ2FXNTBaV2R5WVhScGIyNXpMMk52YlcxekwyZHRZV2xzTDNObGNuWnBZMlZjYmlBcUlFQnpkVzF0WVhKNUlFZHRZV2xzSUVGUVNTQnBiblJsWjNKaGRHbHZiaUJ6WlhKMmFXTmxJR1p2Y2lCelpXNWthVzVuSUdGdVpDQnNhWE4wYVc1bklHMWxjM05oWjJWekxseHVJQ29nUUdSbGMyTnlhWEIwYVc5dUlFVjRjRzl6WlhNZ2RHaGxJRWR0WVdsc0lGSkZVMVFnUVZCSklDaGdkWE5sY25NdWJXVnpjMkZuWlhNdWMyVnVaR0FzWEc0Z0tpQmdkWE5sY25NdWJXVnpjMkZuWlhNdWJHbHpkR0FzSUdCMWMyVnljeTV0WlhOellXZGxjeTVuWlhSZ0xDQmdkWE5sY25NdWJHRmlaV3h6TG14cGMzUmdLU0JoY3lCaGJseHVJQ29nZFc1a1pXTnZjbUYwWldRZ1kyeHBaVzUwTFdKaGMyVmtJSE5sY25acFkyVWdZblZwYkhRZ2IyNGdlMEJzYVc1cklFaDBkSEJCY0dsVFpYSjJhV05sZlM1Y2JpQXFJRTFsYzNOaFoyVWdjMlZ1WkdsdVp5QnlaWFZ6WlhNZ2RHaGxJSE5vWVhKbFpDQk5TVTFGSUdKMWFXeGtaWElnWm5KdmJTQjBhR1VnWlcxaGFXd2dhVzUwWldkeVlYUnBiMjVjYmlBcUlDaGdZblZwYkdSRmJXRnBiR0FwSUdGdVpDQndiM04wY3lCMGFHVWdjbUYzSUUxSlRVVWdiV1Z6YzJGblpTQmhjeUJpWVhObE5qUjFjbXd1SUVOdmJtWnBaM1Z5WVhScGIyNWNiaUFxSUdOdmJXVnpJR1p5YjIwZ1lXNGdaWGh3YkdsamFYUWdZRWR0WVdsc1UyVnlkbWxqWlVOdmJtWnBaMkFnYjNJZ2RHaGxJR0JqYjIxdGN5NW5iV0ZwYkdBZ1pXNTJhWEp2Ym0xbGJuUmNiaUFxSUhOc2FXTmxMQ0JoYm1RZ1ptRnBiSFZ5WlhNZ1lYSmxJRzFoY0hCbFpDQjBieUJrWldOaFppQmxjbkp2Y25NZ2RtbGhJSHRBYkdsdWF5Qm9kSFJ3UlhKeWIzSjlMbHh1SUNvdlhHNXBiWEJ2Y25RZ2V5QkpiblJsY201aGJFVnljbTl5SUgwZ1puSnZiU0JjSWtCa1pXTmhaaTEwY3k5a1lpMWtaV052Y21GMGIzSnpYQ0k3WEc1cGJYQnZjblFnZXlCRGIyMXRjMFZ1ZG1seWIyNXRaVzUwSUgwZ1puSnZiU0JjSWk0dUwyVnVkbWx5YjI1dFpXNTBYQ0k3WEc1cGJYQnZjblFnZXlCbGJuWk9kVzFpWlhJc0lHVnVkbE4wY21sdVp5QjlJR1p5YjIwZ1hDSXVMaTh1TGk5emFHRnlaV1F2Wlc1MmFYSnZibTFsYm5SV1lXeDFaVndpTzF4dWFXMXdiM0owSUh0Y2JpQWdTSFIwY0VGd2FWTmxjblpwWTJVc1hHNGdJSFI1Y0dVZ1NIUjBjRUZ3YVZObGNuWnBZMlZEYjI1bWFXY3NYRzRnSUdoMGRIQkZjbkp2Y2l4Y2JuMGdabkp2YlNCY0lpNHVMeTR1TDNOb1lYSmxaQzlvZEhSd1hDSTdYRzVwYlhCdmNuUWdleUJpZFdsc1pFVnRZV2xzTENCMGVYQmxJRVZ0WVdsc1RXVnpjMkZuWlVsdWNIVjBJSDBnWm5KdmJTQmNJaTR1TDJWdFlXbHNMMjFwYldWY0lqdGNibHh1THlvcVhHNGdLaUJBWkdWelkzSnBjSFJwYjI0Z1EyOXVabWxuZFhKaGRHbHZiaUJtYjNJZ2RHaGxJRWR0WVdsc0lITmxjblpwWTJWY2JpQXFJRUJ6ZFcxdFlYSjVJRVY0ZEdWdVpITWdlMEJzYVc1cklFaDBkSEJCY0dsVFpYSjJhV05sUTI5dVptbG5mU0IzYVhSb0lIUm9aU0JQUVhWMGFDQmhZMk5sYzNNZ2RHOXJaVzVjYmlBcUlDaHpaVzUwSUdGeklHRWdZbVZoY21WeUlIUnZhMlZ1S1NCaGJtUWdkR2hsSUcxaGFXeGliM2dnWUhWelpYSkpaR0FnZFhObFpDQnBiaUIwYUdVZ1FWQkpJSEJoZEdoY2JpQXFJQ2hrWldaaGRXeDBjeUIwYnlCZ1hDSnRaVndpWUNrdUlGZG9aVzRnYjIxcGRIUmxaQ3dnZEdobElHQmpiMjF0Y3k1bmJXRnBiR0FnWlc1MmFYSnZibTFsYm5RZ2MyeHBZMlZjYmlBcUlITjFjSEJzYVdWeklIUm9aU0IwYjJ0bGJpQW9ZVzVrSUc5d2RHbHZibUZzSUdCMWMyVnlTV1JnTENCZ1ltRnpaVlZ5YkdBc0lHQjBhVzFsYjNWMFlDa3VYRzRnS2lCQVkyRjBaV2R2Y25rZ1EyOXRiWE5jYmlBcUlFQnRaVzFpWlhKUFppQnRiMlIxYkdVNmFXNTBaV2R5WVhScGIyNXpMMk52YlcxekwyZHRZV2xzTDNObGNuWnBZMlZjYmlBcUwxeHVaWGh3YjNKMElHbHVkR1Z5Wm1GalpTQkhiV0ZwYkZObGNuWnBZMlZEYjI1bWFXY2daWGgwWlc1a2N5QklkSFJ3UVhCcFUyVnlkbWxqWlVOdmJtWnBaeUI3WEc0Z0lDOHFLbHh1SUNBZ0tpQkFaR1Z6WTNKcGNIUnBiMjRnUjIxaGFXd2dRVkJKSUU5QmRYUm9JR0ZqWTJWemN5QjBiMnRsYmx4dUlDQWdLaUJBYzNWdGJXRnllU0JUWlc1MElHRnpJR0JCZFhSb2IzSnBlbUYwYVc5dU9pQkNaV0Z5WlhJZ1BIUnZhMlZ1UG1BZ2QybDBhQ0JsZG1WeWVTQkJVRWtnWTJGc2JDNWNiaUFnSUNvdlhHNGdJSFJ2YTJWdVB6b2djM1J5YVc1bk8xeHVJQ0F2S2lwY2JpQWdJQ29nUUdSbGMyTnlhWEIwYVc5dUlFMWhhV3hpYjNnZ2RYTmxjaUJwWkdWdWRHbG1hV1Z5WEc0Z0lDQXFJRUJ6ZFcxdFlYSjVJRlJvWlNCemNHVmphV0ZzSUhaaGJIVmxJR0JjSW0xbFhDSmdJQ2gwYUdVZ1pHVm1ZWFZzZENrZ2NtVm1aWEp6SUhSdklIUm9aU0JoZFhSb1pXNTBhV05oZEdWa0lIVnpaWEl1WEc0Z0lDQXFMMXh1SUNCMWMyVnlTV1EvT2lCemRISnBibWM3WEc1OVhHNWNiaThxS2x4dUlDb2dRR1JsYzJOeWFYQjBhVzl1SUZKbGMzVnNkQ0J2WmlCaElITmxiblFnUjIxaGFXd2diV1Z6YzJGblpWeHVJQ29nUUhOMWJXMWhjbmtnUldOb2IyVnpJRWR0WVdsc0ozTWdhV1JsYm5ScFptbGxjbk1nWm05eUlIUm9aU0J6Wlc1MElHMWxjM05oWjJVNklIUm9aU0J0WlhOellXZGxJR0JwWkdBc1hHNGdLaUJwZEhNZ1lIUm9jbVZoWkVsa1lDQjNhR1Z1SUVkdFlXbHNJR0Z6YzJsbmJtVmtJRzl1WlN3Z1lXNWtJSFJvWlNCaGNIQnNhV1ZrSUdCc1lXSmxiRWxrYzJBdVhHNGdLaUJBWTJGMFpXZHZjbmtnUTI5dGJYTmNiaUFxSUVCdFpXMWlaWEpQWmlCdGIyUjFiR1U2YVc1MFpXZHlZWFJwYjI1ekwyTnZiVzF6TDJkdFlXbHNMM05sY25acFkyVmNiaUFxTDF4dVpYaHdiM0owSUdsdWRHVnlabUZqWlNCSGJXRnBiRk5sYm1SU1pYTjFiSFFnZTF4dUlDQnBaRG9nYzNSeWFXNW5PMXh1SUNCMGFISmxZV1JKWkQ4NklITjBjbWx1Wnp0Y2JpQWdiR0ZpWld4SlpITS9PaUJ6ZEhKcGJtZGJYVHRjYm4xY2JseHVMeW9xWEc0Z0tpQkFaR1Z6WTNKcGNIUnBiMjRnVW1WemRXeDBJRzltSUdFZ1IyMWhhV3dnYldWemMyRm5aU0JzYVhOMElHTmhiR3hjYmlBcUlFQnpkVzF0WVhKNUlFTmhjbkpwWlhNZ2IyNWxJSEJoWjJVZ2IyWWdiV1Z6YzJGblpTQnlaV1psY21WdVkyVnpJQ2hnYldWemMyRm5aWE5nSUhkcGRHZ2dZR2xrWUNCaGJtUmNiaUFxSUc5d2RHbHZibUZzSUdCMGFISmxZV1JKWkdBcExDQjBhR1VnWUc1bGVIUlFZV2RsVkc5clpXNWdJSFJ2SUhCaGMzTWdZbUZqYXlCaGN5QmdjR0ZuWlZSdmEyVnVZQ0JtYjNKY2JpQXFJSFJvWlNCdVpYaDBJSEJoWjJVc0lHRnVaQ0JIYldGcGJDZHpJR0J5WlhOMWJIUlRhWHBsUlhOMGFXMWhkR1ZnTGx4dUlDb2dRR05oZEdWbmIzSjVJRU52YlcxelhHNGdLaUJBYldWdFltVnlUMllnYlc5a2RXeGxPbWx1ZEdWbmNtRjBhVzl1Y3k5amIyMXRjeTluYldGcGJDOXpaWEoyYVdObFhHNGdLaTljYm1WNGNHOXlkQ0JwYm5SbGNtWmhZMlVnUjIxaGFXeE1hWE4wVW1WemRXeDBJSHRjYmlBZ2JXVnpjMkZuWlhNNklFRnljbUY1UEhzZ2FXUTZJSE4wY21sdVp6c2dkR2h5WldGa1NXUS9PaUJ6ZEhKcGJtY2dmVDQ3WEc0Z0lHNWxlSFJRWVdkbFZHOXJaVzQvT2lCemRISnBibWM3WEc0Z0lISmxjM1ZzZEZOcGVtVkZjM1JwYldGMFpUODZJRzUxYldKbGNqdGNibjFjYmx4dUx5b3FYRzRnS2lCQVpHVnpZM0pwY0hScGIyNGdSMjFoYVd3Z1FWQkpJR2x1ZEdWbmNtRjBhVzl1SUhObGNuWnBZMlZjYmlBcUlFQnpkVzF0WVhKNUlFRnVJSFZ1WkdWamIzSmhkR1ZrSUVoVVZGQWdjMlZ5ZG1salpTQm1iM0lnYzJWdVpHbHVaeUJOU1UxRkxXSjFhV3gwWEc0Z0tpQmxiV0ZwYkhNc0lHeHBjM1JwYm1jZ2JXVnpjMkZuWlhNZ2QybDBhQ0JIYldGcGJDQnhkV1Z5ZVNCemVXNTBZWGdnWVc1a0lIQmhaMlVnZEc5clpXNXpMQ0JtWlhSamFHbHVaMXh1SUNvZ1lTQnphVzVuYkdVZ2JXVnpjMkZuWlNCcGJpQmhJR05vYjNObGJpQm1iM0p0WVhRc0lHRnVaQ0JzYVhOMGFXNW5JR3hoWW1Wc2N5NGdRV3hzSUc5d1pYSmhkR2x2Ym5OY2JpQXFJSEpsY1hWcGNtVWdZVzRnVDBGMWRHZ2dkRzlyWlc0Z0tHQnlaWEYxYVhKbFZHOXJaVzRvS1dBcElHRnVaQ0J2Y0dWeVlYUmxJRzl1SUhSb1pTQmpiMjVtYVdkMWNtVmtYRzRnS2lCZ2RYTmxja2xrWUNCdFlXbHNZbTk0SUNoa1pXWmhkV3gwSUdCY0ltMWxYQ0pnS1RzZ2RISmhibk53YjNKMElHWmhhV3gxY21WeklHRnlaU0J0WVhCd1pXUWdkRzhnWkdWallXWmNiaUFxSUdWeWNtOXljeUIyYVdFZ2UwQnNhVzVySUdoMGRIQkZjbkp2Y24wdVhHNGdLaUJBWTJ4aGMzTWdSMjFoYVd4VFpYSjJhV05sWEc0Z0tpQkFZMkYwWldkdmNua2dRMjl0YlhOY2JpQXFJRUJsZUdGdGNHeGxYRzRnS2lCZ1lHQjBjMXh1SUNvZ2FXMXdiM0owSUhzZ1IyMWhhV3hUWlhKMmFXTmxJSDBnWm5KdmJTQmNJa0JrWldOaFppMTBjeTlwYm5SbFozSmhkR2x2Ym5NdlkyOXRiWE12WjIxaGFXeGNJanRjYmlBcVhHNGdLaUJqYjI1emRDQm5iV0ZwYkNBOUlHNWxkeUJIYldGcGJGTmxjblpwWTJVb0tUdGNiaUFxSUdGM1lXbDBJR2R0WVdsc0xtbHVhWFJwWVd4cGVtVW9lMXh1SUNvZ0lDQjBiMnRsYmpvZ2NISnZZMlZ6Y3k1bGJuWXVSMUpCVUVoZlExSkZSRVZPVkVsQlRGOUhUVUZKVEY5VVQwdEZUaXhjYmlBcUlIMHBPMXh1SUNvZ1lYZGhhWFFnWjIxaGFXd3VjMlZ1WkNoN1hHNGdLaUFnSUdaeWIyMDZJRndpWW05MFFHVjRZVzF3YkdVdVkyOXRYQ0lzWEc0Z0tpQWdJSFJ2T2lCY0ltOXdjMEJsZUdGdGNHeGxMbU52YlZ3aUxGeHVJQ29nSUNCemRXSnFaV04wT2lCY0lrUmxjR3h2ZVZ3aUxGeHVJQ29nSUNCMFpYaDBPaUJjSWxKbGJHVmhjMlVnTVM0eUxqQWdhWE1nYkdsMlpWd2lMRnh1SUNvZ2ZTazdYRzRnS2lCZ1lHQmNiaUFxSUVCdFpXMWlaWEpQWmlCdGIyUjFiR1U2YVc1MFpXZHlZWFJwYjI1ekwyTnZiVzF6TDJkdFlXbHNMM05sY25acFkyVmNiaUFxTDF4dVpYaHdiM0owSUdOc1lYTnpJRWR0WVdsc1UyVnlkbWxqWlNCbGVIUmxibVJ6SUVoMGRIQkJjR2xUWlhKMmFXTmxQRWR0WVdsc1UyVnlkbWxqWlVOdmJtWnBaejRnZTF4dUlDQXZLaXBjYmlBZ0lDb2dRR1JsYzJOeWFYQjBhVzl1SUZSb1pTQndjbTkyYVdSbGNpQnVZVzFsSUhWelpXUWdhVzRnWlhKeWIzSWdiV1Z6YzJGblpYTmNiaUFnSUNvdlhHNGdJSEJ5YjNSbFkzUmxaQ0J5WldGa2IyNXNlU0J6WlhKMmFXTmxUbUZ0WlNBOUlGd2lSMjFoYVd4Y0lqdGNibHh1SUNBdktpcGNiaUFnSUNvZ1FHUmxjMk55YVhCMGFXOXVJRlJvWlNCSGJXRnBiQ0JTUlZOVUlFRlFTU0JpWVhObElGVlNURnh1SUNBZ0tpQkFjM1Z0YldGeWVTQlZjMlZrSUhkb1pXNGdkR2hsSUhKbGMyOXNkbVZrSUdOdmJtWnBaeUJqWVhKeWFXVnpJRzV2SUdCaVlYTmxWWEpzWUM1Y2JpQWdJQ29nUUhKbGRIVnlibk1nZTNOMGNtbHVaMzBnWUZ3aWFIUjBjSE02THk5bmJXRnBiQzVuYjI5bmJHVmhjR2x6TG1OdmJTOW5iV0ZwYkM5Mk1Wd2lZQzVjYmlBZ0lDb3ZYRzRnSUhCeWIzUmxZM1JsWkNCa1pXWmhkV3gwUW1GelpWVnliQ2dwT2lCemRISnBibWNnZTF4dUlDQWdJSEpsZEhWeWJpQmNJbWgwZEhCek9pOHZaMjFoYVd3dVoyOXZaMnhsWVhCcGN5NWpiMjB2WjIxaGFXd3ZkakZjSWp0Y2JpQWdmVnh1WEc0Z0lDOHFLbHh1SUNBZ0tpQkFaR1Z6WTNKcGNIUnBiMjRnUW5WcGJHUnpJSFJvWlNCSGJXRnBiQ0JQUVhWMGFDQmlaV0Z5WlhJZ1lYVjBhRzl5YVhwaGRHbHZiaUJvWldGa1pYSnpYRzRnSUNBcUlFQnpkVzF0WVhKNUlGSmxkSFZ5Ym5NZ2RHaGxJR0JCZFhSb2IzSnBlbUYwYVc5dU9pQkNaV0Z5WlhJZ1BIUnZhMlZ1UG1BZ2FHVmhaR1Z5SUhkb1pXNGdkR2hsWEc0Z0lDQXFJR052Ym1acFp5QmpZWEp5YVdWeklHRWdkRzlyWlc0c0lHRnVaQ0J1YnlCb1pXRmtaWEp6SUc5MGFHVnlkMmx6WlM1Y2JpQWdJQ29nUUhCaGNtRnRJSHRIYldGcGJGTmxjblpwWTJWRGIyNW1hV2Q5SUdOdmJtWnBaeUF0SUZSb1pTQnlaWE52YkhabFpDQnpaWEoyYVdObElHTnZibVpwWjNWeVlYUnBiMjR1WEc0Z0lDQXFJRUJ5WlhSMWNtNXpJSHRTWldOdmNtUThjM1J5YVc1bkxDQnpkSEpwYm1jK2ZTQlVhR1VnWVhWMGFHOXlhWHBoZEdsdmJpQm9aV0ZrWlhKeklDaGxiWEIwZVNCM2FYUm9iM1YwSUdFZ2RHOXJaVzRwTGx4dUlDQWdLaTljYmlBZ2NISnZkR1ZqZEdWa0lHRjFkR2hJWldGa1pYSnpLR052Ym1acFp6b2dSMjFoYVd4VFpYSjJhV05sUTI5dVptbG5LVG9nVW1WamIzSmtQSE4wY21sdVp5d2djM1J5YVc1blBpQjdYRzRnSUNBZ2NtVjBkWEp1SUdOdmJtWnBaeTUwYjJ0bGJpQS9JSHNnUVhWMGFHOXlhWHBoZEdsdmJqb2dZRUpsWVhKbGNpQWtlMk52Ym1acFp5NTBiMnRsYm4xZ0lIMGdPaUI3ZlR0Y2JpQWdmVnh1WEc0Z0lDOHFLbHh1SUNBZ0tpQkFaR1Z6WTNKcGNIUnBiMjRnVW1WaFpITWdkR2hsSUVkdFlXbHNJR055WldSbGJuUnBZV3h6SUdGdVpDQmtaV1poZFd4MGN5Qm1jbTl0SUhSb1pTQmxiblpwY205dWJXVnVkRnh1SUNBZ0tpQkFjM1Z0YldGeWVTQlNaV0ZrY3lCMGFHVWdZR052YlcxekxtZHRZV2xzWUNCbGJuWnBjbTl1YldWdWRDQnpiR2xqWlNCaGJtUWdjbVYwZFhKdWN5QmhJSEJoY25ScFlXeGNiaUFnSUNvZ1kyOXVabWxuSUhkb1pXNGdZU0IwYjJ0bGJpQnBjeUJqYjI1bWFXZDFjbVZrTENCZ2RXNWtaV1pwYm1Wa1lDQnZkR2hsY25kcGMyVXVJRlpoYkhWbGN5QndZWE56WEc0Z0lDQXFJSFJvY205MVoyZ2dZR1Z1ZGxOMGNtbHVaMkF2WUdWdWRrNTFiV0psY21BZ2RHOGdjbVZxWldOMElIVnVjMlYwTFd4bFlXWWdjSEp2ZUdsbGN5NWNiaUFnSUNvZ1FISmxkSFZ5Ym5NZ2UxQmhjblJwWVd3OFIyMWhhV3hUWlhKMmFXTmxRMjl1Wm1sblBpQjhJSFZ1WkdWbWFXNWxaSDBnUVNCd1lYSjBhV0ZzSUdOdmJtWnBaeXdnYjNJZ1lIVnVaR1ZtYVc1bFpHQWdkMmhsYmlCdWJ5QkhiV0ZwYkNCMGIydGxiaUJwY3lCamIyNW1hV2QxY21Wa0xseHVJQ0FnS2k5Y2JpQWdjSEp2ZEdWamRHVmtJR052Ym1acFowWnliMjFGYm5acGNtOXViV1Z1ZENncE9pQlFZWEowYVdGc1BFZHRZV2xzVTJWeWRtbGpaVU52Ym1acFp6NGdmQ0IxYm1SbFptbHVaV1FnZTF4dUlDQWdJR052Ym5OMElHVnVkaUE5SUVOdmJXMXpSVzUyYVhKdmJtMWxiblF1WTI5dGJYTXVaMjFoYVd3N1hHNGdJQ0FnWTI5dWMzUWdkRzlyWlc0Z1BTQmxiblpUZEhKcGJtY29aVzUyUHk1MGIydGxiaWs3WEc0Z0lDQWdhV1lnS0NGMGIydGxiaWtnY21WMGRYSnVJSFZ1WkdWbWFXNWxaRHRjYmlBZ0lDQnlaWFIxY200Z2UxeHVJQ0FnSUNBZ2RHOXJaVzRzWEc0Z0lDQWdJQ0IxYzJWeVNXUTZJR1Z1ZGxOMGNtbHVaeWhsYm5ZdWRYTmxja2xrS1N4Y2JpQWdJQ0FnSUdKaGMyVlZjbXc2SUdWdWRsTjBjbWx1WnlobGJuWXVZbUZ6WlZWeWJDa3NYRzRnSUNBZ0lDQjBhVzFsYjNWME9pQmxiblpPZFcxaVpYSW9aVzUyTG5ScGJXVnZkWFFwTEZ4dUlDQWdJSDA3WEc0Z0lIMWNibHh1SUNBdktpcGNiaUFnSUNvZ1FHUmxjMk55YVhCMGFXOXVJRUoxYVd4a2N5QjBhR1VnYldGcGJHSnZlQzF6WTI5d1pXUWdRVkJKSUhCaGRHaGNiaUFnSUNvZ1FITjFiVzFoY25rZ1VtVjBkWEp1Y3lCZ0wzVnpaWEp6THp4MWMyVnlTV1ErWUNCM2FYUm9JSFJvWlNCamIyNW1hV2QxY21Wa0lHQjFjMlZ5U1dSZ0lDaHZjbHh1SUNBZ0tpQmdYQ0p0WlZ3aVlDQjNhR1Z1SUhWdWMyVjBLU0JWVWt3dFpXNWpiMlJsWkRzZ1lXeHNJRzFsYzNOaFoyVWdZVzVrSUd4aFltVnNJRzl3WlhKaGRHbHZibk1nWVhKbFhHNGdJQ0FxSUhKbGJHRjBhWFpsSUhSdklIUm9hWE1nY0dGMGFDNWNiaUFnSUNvZ1FISmxkSFZ5Ym5NZ2UzTjBjbWx1WjMwZ1ZHaGxJRlZTVEMxbGJtTnZaR1ZrSUcxaGFXeGliM2dnY0dGMGFDNWNiaUFnSUNvdlhHNGdJSEJ5YjNSbFkzUmxaQ0IxYzJWeVVHRjBhQ2dwT2lCemRISnBibWNnZTF4dUlDQWdJSEpsZEhWeWJpQmdMM1Z6WlhKekx5UjdaVzVqYjJSbFZWSkpRMjl0Y0c5dVpXNTBLSFJvYVhNdVkyOXVabWxuTG5WelpYSkpaQ0EvUHlCY0ltMWxYQ0lwZldBN1hHNGdJSDFjYmx4dUlDQXZLaXBjYmlBZ0lDb2dRR1JsYzJOeWFYQjBhVzl1SUZObGJtUnpJR0Z1SUdWdFlXbHNJSFJvY205MVoyZ2dkR2hsSUVkdFlXbHNJRUZRU1Z4dUlDQWdLaUJBYzNWdGJXRnllU0JDZFdsc1pITWdZU0J5WVhjZ1RVbE5SU0J0WlhOellXZGxJR1p5YjIwZ2RHaGxJR2x1Y0hWMElIZHBkR2dnZEdobElITm9ZWEpsWkNCbGJXRnBiRnh1SUNBZ0tpQk5TVTFGSUdKMWFXeGtaWElnS0dCaWRXbHNaRVZ0WVdsc1lDa3NJR0poYzJVMk5IVnliQzFsYm1OdlpHVnpJR2wwTENCaGJtUWdZRkJQVTFSZ2N5QnBkQ0IwYjF4dUlDQWdLaUJnZFhObGNuTXViV1Z6YzJGblpYTXVjMlZ1WkdBdUlGSmxjWFZwY21WeklHRWdkRzlyWlc0Z1lXNWtJR0VnWUdaeWIyMWdJSE5sYm1SbGNpQmhaR1J5WlhOekxseHVJQ0FnS2lCQWNHRnlZVzBnZTBWdFlXbHNUV1Z6YzJGblpVbHVjSFYwZlNCcGJuQjFkQ0F0SUZSb1pTQnRaWE56WVdkbElHVnVkbVZzYjNCbElHRnVaQ0JpYjJSNUlDaGdabkp2YldBc0lHQjBiMkFzSUdCemRXSnFaV04wWUN3Z1lXNWtJRzl3ZEdsdmJtRnNJR0JqWTJBdllHSmpZMkF2WUhSbGVIUmdMMkJvZEcxc1lDOWdjbVZ3YkhsVWIyQXZZR0YwZEdGamFHMWxiblJ6WUNrdVhHNGdJQ0FxSUVCeVpYUjFjbTV6SUh0UWNtOXRhWE5sUEVkdFlXbHNVMlZ1WkZKbGMzVnNkRDU5SUVkdFlXbHNKM01nYVdSbGJuUnBabWxsY25NZ1ptOXlJSFJvWlNCelpXNTBJRzFsYzNOaFoyVXVYRzRnSUNBcUlFQjBhSEp2ZDNNZ2UwbHVkR1Z5Ym1Gc1JYSnliM0o5SUZkb1pXNGdibThnZEc5clpXNGdhWE1nWTI5dVptbG5kWEpsWkNCdmNpQjBhR1VnYzJWdVpHVnlJR0ZrWkhKbGMzTWdhWE1nYldsemMybHVaeTVjYmlBZ0lDb2dRSFJvY205M2N5QjdUbTkwUm05MWJtUkZjbkp2Y24wZ1YyaGxiaUIwYUdVZ1pXNWtjRzlwYm5RZ1lXNXpkMlZ5Y3lCM2FYUm9JRWhVVkZBZ05EQTBMbHh1SUNBZ0tpQkFkR2h5YjNkeklIdERiMjVtYkdsamRFVnljbTl5ZlNCWGFHVnVJRWR0WVdsc0lHRnVjM2RsY25NZ2QybDBhQ0JJVkZSUUlEUXdPUzVjYmlBZ0lDb2dRSFJvY205M2N5QjdRbUZrVW1WeGRXVnpkRVZ5Y205eWZTQlhhR1Z1SUVkdFlXbHNJR0Z1YzNkbGNuTWdkMmwwYUNCaGJua2diM1JvWlhJZ1NGUlVVQ0JsY25KdmNpQnpkR0YwZFhNZ0tHVXVaeTRnYVc1MllXeHBaQ0J5WldOcGNHbGxiblJ6S1M1Y2JpQWdJQ292WEc0Z0lHRnplVzVqSUhObGJtUW9hVzV3ZFhRNklFVnRZV2xzVFdWemMyRm5aVWx1Y0hWMEtUb2dVSEp2YldselpUeEhiV0ZwYkZObGJtUlNaWE4xYkhRK0lIdGNiaUFnSUNCMGFHbHpMbkpsY1hWcGNtVlViMnRsYmlncE8xeHVJQ0FnSUdsbUlDZ2hhVzV3ZFhRdVpuSnZiU2tnZTF4dUlDQWdJQ0FnZEdoeWIzY2dibVYzSUVsdWRHVnlibUZzUlhKeWIzSW9YQ0pIYldGcGJDQnpaVzVrSUhKbGNYVnBjbVZ6SUdFZ2MyVnVaR1Z5SUdGa1pISmxjM05jSWlrN1hHNGdJQ0FnZlZ4dUlDQWdJR052Ym5OMElHSjFhV3gwSUQwZ1luVnBiR1JGYldGcGJDaHBibkIxZENrN1hHNGdJQ0FnZEhKNUlIdGNiaUFnSUNBZ0lHTnZibk4wSUhKbGMzQnZibk5sSUQwZ1lYZGhhWFFnZEdocGN5NWpiR2xsYm5RdWNHOXpkRHg3WEc0Z0lDQWdJQ0FnSUdsa1B6b2djM1J5YVc1bk8xeHVJQ0FnSUNBZ0lDQjBhSEpsWVdSSlpEODZJSE4wY21sdVp6dGNiaUFnSUNBZ0lDQWdiR0ZpWld4SlpITS9PaUJ6ZEhKcGJtZGJYVHRjYmlBZ0lDQWdJSDArS0dBa2UzUm9hWE11ZFhObGNsQmhkR2dvS1gwdmJXVnpjMkZuWlhNdmMyVnVaR0FzSUh0Y2JpQWdJQ0FnSUNBZ2NtRjNPaUJDZFdabVpYSXVabkp2YlNoaWRXbHNkQzV5WVhjc0lGd2lkWFJtT0Z3aUtTNTBiMU4wY21sdVp5aGNJbUpoYzJVMk5IVnliRndpS1N4Y2JpQWdJQ0FnSUgwcE8xeHVJQ0FnSUNBZ2NtVjBkWEp1SUh0Y2JpQWdJQ0FnSUNBZ2FXUTZJRk4wY21sdVp5aHlaWE53YjI1elpTNWtZWFJoTG1sa0lEOC9JR0oxYVd4MExtMWxjM05oWjJWSlpDa3NYRzRnSUNBZ0lDQWdJSFJvY21WaFpFbGtPaUJ5WlhOd2IyNXpaUzVrWVhSaExuUm9jbVZoWkVsa0xGeHVJQ0FnSUNBZ0lDQnNZV0psYkVsa2N6b2djbVZ6Y0c5dWMyVXVaR0YwWVM1c1lXSmxiRWxrY3l4Y2JpQWdJQ0FnSUgwN1hHNGdJQ0FnZlNCallYUmphQ0FvWlhKeWIzSXBJSHRjYmlBZ0lDQWdJSFJvY205M0lHaDBkSEJGY25KdmNpaGNJa2R0WVdsc1hDSXNJRndpYzJWdVpDQnRaWE56WVdkbFhDSXNJR1Z5Y205eUtUdGNiaUFnSUNCOVhHNGdJSDFjYmx4dUlDQXZLaXBjYmlBZ0lDb2dRR1JsYzJOeWFYQjBhVzl1SUV4cGMzUnpJRzFoYVd4aWIzZ2diV1Z6YzJGblpYTWdkMmwwYUNCSGJXRnBiQ0J4ZFdWeWVTQndZV2RwYm1kY2JpQWdJQ29nUUhOMWJXMWhjbmtnWUVkRlZHQnpJR0IxYzJWeWN5NXRaWE56WVdkbGN5NXNhWE4wWUNCM2FYUm9JR0Z1SUc5d2RHbHZibUZzSUVkdFlXbHNJR0J4ZFdWeWVXQmNiaUFnSUNvZ0tHQnhZQ0J3WVhKaGJXVjBaWElzSUdVdVp5NGdZRndpWm5KdmJUcDFjMlZ5UUdWNFlXMXdiR1V1WTI5dElHbHpPblZ1Y21WaFpGd2lZQ2tzSUdFZ2NHRm5aU0J6YVhwbFhHNGdJQ0FxSUNoa1pXWmhkV3gwSUdBeU5XQXBMQ0JoSUdCd1lXZGxWRzlyWlc1Z0lHWnliMjBnZEdobElIQnlaWFpwYjNWeklIQmhaMlVzSUdGdVpDQmdiR0ZpWld4SlpITmdYRzRnSUNBcUlHWnBiSFJsY21sdVp5NGdVbVYwZFhKdWN5QjBhR1VnYldWemMyRm5aU0J5WldabGNtVnVZMlZ6SUdGdVpDQjBhR1VnWUc1bGVIUlFZV2RsVkc5clpXNWdJSFJ2SUhCaGMzTmNiaUFnSUNvZ1ltRmpheUJoY3lCZ2NHRm5aVlJ2YTJWdVlDQm1iM0lnZEdobElHNWxlSFFnY0dGblpTNWNiaUFnSUNvZ1FIQmhjbUZ0SUh0dlltcGxZM1I5SUZ0dmNIUnBiMjV6WFNBdElGRjFaWEo1SUdGdVpDQndZV2RwYm1jZ2IzQjBhVzl1Y3k1Y2JpQWdJQ29nUUhCaGNtRnRJSHR6ZEhKcGJtZDlJRnR2Y0hScGIyNXpMbkYxWlhKNVhTQXRJRWR0WVdsc0lITmxZWEpqYUNCeGRXVnllU0FvWUhGZ0lIQmhjbUZ0WlhSbGNpa3VYRzRnSUNBcUlFQndZWEpoYlNCN2JuVnRZbVZ5ZlNCYmIzQjBhVzl1Y3k1dFlYaFNaWE4xYkhSelhTQXRJRkJoWjJVZ2MybDZaVHNnWkdWbVlYVnNkSE1nZEc4Z1lESTFZQzVjYmlBZ0lDb2dRSEJoY21GdElIdHpkSEpwYm1kOUlGdHZjSFJwYjI1ekxuQmhaMlZVYjJ0bGJsMGdMU0JVYUdVZ1lHNWxlSFJRWVdkbFZHOXJaVzVnSUdaeWIyMGdkR2hsSUhCeVpYWnBiM1Z6SUhCaFoyVXVYRzRnSUNBcUlFQndZWEpoYlNCN2MzUnlhVzVuVzExOUlGdHZjSFJwYjI1ekxteGhZbVZzU1dSelhTQXRJRXhoWW1Wc0lFbEVjeUIwYUdVZ2JXVnpjMkZuWlhNZ2JYVnpkQ0JqWVhKeWVTNWNiaUFnSUNvZ1FISmxkSFZ5Ym5NZ2UxQnliMjFwYzJVOFIyMWhhV3hNYVhOMFVtVnpkV3gwUG4wZ1QyNWxJSEJoWjJVZ2IyWWdiV1Z6YzJGblpTQnlaV1psY21WdVkyVnpJSGRwZEdnZ2RHaGxJRzVsZUhRZ2NHRm5aU0IwYjJ0bGJpQjNhR1Z1SUcxdmNtVWdjR0ZuWlhNZ1pYaHBjM1F1WEc0Z0lDQXFJRUIwYUhKdmQzTWdlMGx1ZEdWeWJtRnNSWEp5YjNKOUlGZG9aVzRnYm04Z2RHOXJaVzRnYVhNZ1kyOXVabWxuZFhKbFpDNWNiaUFnSUNvZ1FIUm9jbTkzY3lCN1RtOTBSbTkxYm1SRmNuSnZjbjBnVjJobGJpQjBhR1VnWlc1a2NHOXBiblFnWVc1emQyVnljeUIzYVhSb0lFaFVWRkFnTkRBMExseHVJQ0FnS2lCQWRHaHliM2R6SUh0RGIyNW1iR2xqZEVWeWNtOXlmU0JYYUdWdUlFZHRZV2xzSUdGdWMzZGxjbk1nZDJsMGFDQklWRlJRSURRd09TNWNiaUFnSUNvZ1FIUm9jbTkzY3lCN1FtRmtVbVZ4ZFdWemRFVnljbTl5ZlNCWGFHVnVJRWR0WVdsc0lHRnVjM2RsY25NZ2QybDBhQ0JoYm5rZ2IzUm9aWElnU0ZSVVVDQmxjbkp2Y2lCemRHRjBkWE1nS0dVdVp5NGdhVzUyWVd4cFpDQnhkV1Z5ZVNrdVhHNGdJQ0FxSUVCbGVHRnRjR3hsWEc0Z0lDQXFJR0JnWUhSelhHNGdJQ0FxSUd4bGRDQndZV2RsVkc5clpXNDZJSE4wY21sdVp5QjhJSFZ1WkdWbWFXNWxaRHRjYmlBZ0lDb2daRzhnZTF4dUlDQWdLaUFnSUdOdmJuTjBJSEJoWjJVZ1BTQmhkMkZwZENCbmJXRnBiQzVzYVhOMFRXVnpjMkZuWlhNb2UxeHVJQ0FnS2lBZ0lDQWdjWFZsY25rNklGd2lhWE02ZFc1eVpXRmtYQ0lzWEc0Z0lDQXFJQ0FnSUNCdFlYaFNaWE4xYkhSek9pQXhNREFzWEc0Z0lDQXFJQ0FnSUNCd1lXZGxWRzlyWlc0c1hHNGdJQ0FxSUNBZ2ZTazdYRzRnSUNBcUlDQWdZMjl1YzI5c1pTNXNiMmNvY0dGblpTNXRaWE56WVdkbGN5azdYRzRnSUNBcUlDQWdjR0ZuWlZSdmEyVnVJRDBnY0dGblpTNXVaWGgwVUdGblpWUnZhMlZ1TzF4dUlDQWdLaUI5SUhkb2FXeGxJQ2h3WVdkbFZHOXJaVzRwTzF4dUlDQWdLaUJnWUdCY2JpQWdJQ292WEc0Z0lHRnplVzVqSUd4cGMzUk5aWE56WVdkbGN5aGNiaUFnSUNCdmNIUnBiMjV6T2lCN1hHNGdJQ0FnSUNCeGRXVnllVDg2SUhOMGNtbHVaenRjYmlBZ0lDQWdJRzFoZUZKbGMzVnNkSE0vT2lCdWRXMWlaWEk3WEc0Z0lDQWdJQ0J3WVdkbFZHOXJaVzQvT2lCemRISnBibWM3WEc0Z0lDQWdJQ0JzWVdKbGJFbGtjejg2SUhOMGNtbHVaMXRkTzF4dUlDQWdJSDBnUFNCN2ZWeHVJQ0FwT2lCUWNtOXRhWE5sUEVkdFlXbHNUR2x6ZEZKbGMzVnNkRDRnZTF4dUlDQWdJSFJvYVhNdWNtVnhkV2x5WlZSdmEyVnVLQ2s3WEc0Z0lDQWdkSEo1SUh0Y2JpQWdJQ0FnSUdOdmJuTjBJSEpsYzNCdmJuTmxJRDBnWVhkaGFYUWdkR2hwY3k1amJHbGxiblF1WjJWMFBIdGNiaUFnSUNBZ0lDQWdiV1Z6YzJGblpYTS9PaUJCY25KaGVUeDdJR2xrT2lCemRISnBibWM3SUhSb2NtVmhaRWxrUHpvZ2MzUnlhVzVuSUgwK08xeHVJQ0FnSUNBZ0lDQnVaWGgwVUdGblpWUnZhMlZ1UHpvZ2MzUnlhVzVuTzF4dUlDQWdJQ0FnSUNCeVpYTjFiSFJUYVhwbFJYTjBhVzFoZEdVL09pQnVkVzFpWlhJN1hHNGdJQ0FnSUNCOVBpaGdKSHQwYUdsekxuVnpaWEpRWVhSb0tDbDlMMjFsYzNOaFoyVnpZQ3dnZTF4dUlDQWdJQ0FnSUNCd1lYSmhiWE02SUh0Y2JpQWdJQ0FnSUNBZ0lDQnhPaUJ2Y0hScGIyNXpMbkYxWlhKNUxGeHVJQ0FnSUNBZ0lDQWdJRzFoZUZKbGMzVnNkSE02SUc5d2RHbHZibk11YldGNFVtVnpkV3gwY3lBL1B5QXlOU3hjYmlBZ0lDQWdJQ0FnSUNCd1lXZGxWRzlyWlc0NklHOXdkR2x2Ym5NdWNHRm5aVlJ2YTJWdUxGeHVJQ0FnSUNBZ0lDQWdJR3hoWW1Wc1NXUnpPaUJ2Y0hScGIyNXpMbXhoWW1Wc1NXUnpMRnh1SUNBZ0lDQWdJQ0I5TEZ4dUlDQWdJQ0FnZlNrN1hHNGdJQ0FnSUNCeVpYUjFjbTRnZTF4dUlDQWdJQ0FnSUNCdFpYTnpZV2RsY3pvZ2NtVnpjRzl1YzJVdVpHRjBZUzV0WlhOellXZGxjeUEvUHlCYlhTeGNiaUFnSUNBZ0lDQWdibVY0ZEZCaFoyVlViMnRsYmpvZ2NtVnpjRzl1YzJVdVpHRjBZUzV1WlhoMFVHRm5aVlJ2YTJWdUxGeHVJQ0FnSUNBZ0lDQnlaWE4xYkhSVGFYcGxSWE4wYVcxaGRHVTZJSEpsYzNCdmJuTmxMbVJoZEdFdWNtVnpkV3gwVTJsNlpVVnpkR2x0WVhSbExGeHVJQ0FnSUNBZ2ZUdGNiaUFnSUNCOUlHTmhkR05vSUNobGNuSnZjaWtnZTF4dUlDQWdJQ0FnZEdoeWIzY2dhSFIwY0VWeWNtOXlLRndpUjIxaGFXeGNJaXdnWENKc2FYTjBJRzFsYzNOaFoyVnpYQ0lzSUdWeWNtOXlLVHRjYmlBZ0lDQjlYRzRnSUgxY2JseHVJQ0F2S2lwY2JpQWdJQ29nUUdSbGMyTnlhWEIwYVc5dUlFWmxkR05vWlhNZ1lTQnphVzVuYkdVZ1IyMWhhV3dnYldWemMyRm5aVnh1SUNBZ0tpQkFjM1Z0YldGeWVTQmdSMFZVWUhNZ1lIVnpaWEp6TG0xbGMzTmhaMlZ6TG1kbGRHQWdabTl5SUhSb1pTQm5hWFpsYmlCdFpYTnpZV2RsSUVsRUlIZHBkR2dnZEdobFhHNGdJQ0FxSUhKbGNYVmxjM1JsWkNCZ1ptOXliV0YwWUM0Z1YybDBhQ0JnWENKbWRXeHNYQ0pnSUNoMGFHVWdaR1ZtWVhWc2RDa2dkR2hsSUhCaGVXeHZZV1FnYVc1amJIVmtaWE1nZEdobFhHNGdJQ0FxSUhCaGNuTmxaQ0JpYjJSNUlIQmhjblJ6T3lCZ1hDSnRaWFJoWkdGMFlWd2lZQ0JzYVcxcGRITWdhWFFnZEc4Z2FHVmhaR1Z5Y3lCaGJtUWdiR0ZpWld4ekxGeHVJQ0FnS2lCZ1hDSnRhVzVwYldGc1hDSmdJSFJ2SUdsa1pXNTBhV1pwWlhKeklHOXViSGtzSUdGdVpDQmdYQ0p5WVhkY0ltQWdjbVYwZFhKdWN5QjBhR1VnY21GM0lFMUpUVVVnYzNSeWFXNW5MbHh1SUNBZ0tpQkFjR0Z5WVcwZ2UzTjBjbWx1WjMwZ2FXUWdMU0JVYUdVZ1IyMWhhV3dnYldWemMyRm5aU0JKUkM1Y2JpQWdJQ29nUUhCaGNtRnRJSHRjSW1aMWJHeGNJaUI4SUZ3aWJXVjBZV1JoZEdGY0lpQjhJRndpYldsdWFXMWhiRndpSUh3Z1hDSnlZWGRjSW4wZ1cyWnZjbTFoZEYwZ0xTQlVhR1VnYldWemMyRm5aU0JtYjNKdFlYUWdkRzhnY21WeGRXVnpkRHNnWkdWbVlYVnNkSE1nZEc4Z1lGd2lablZzYkZ3aVlDNWNiaUFnSUNvZ1FISmxkSFZ5Ym5NZ2UxQnliMjFwYzJVOFVtVmpiM0prUEhOMGNtbHVaeXdnZFc1cmJtOTNiajQrZlNCVWFHVWdjbUYzSUVkdFlXbHNJRzFsYzNOaFoyVWdjR0Y1Ykc5aFpDQnBiaUIwYUdVZ2NtVnhkV1Z6ZEdWa0lHWnZjbTFoZEM1Y2JpQWdJQ29nUUhSb2NtOTNjeUI3U1c1MFpYSnVZV3hGY25KdmNuMGdWMmhsYmlCdWJ5QjBiMnRsYmlCcGN5QmpiMjVtYVdkMWNtVmtJRzl5SUhSb1pTQnRaWE56WVdkbElFbEVJR2x6SUdWdGNIUjVMbHh1SUNBZ0tpQkFkR2h5YjNkeklIdE9iM1JHYjNWdVpFVnljbTl5ZlNCWGFHVnVJSFJvWlNCdFpYTnpZV2RsSUdSdlpYTWdibTkwSUdWNGFYTjBJQ2hJVkZSUUlEUXdOQ2t1WEc0Z0lDQXFJRUIwYUhKdmQzTWdlME52Ym1ac2FXTjBSWEp5YjNKOUlGZG9aVzRnUjIxaGFXd2dZVzV6ZDJWeWN5QjNhWFJvSUVoVVZGQWdOREE1TGx4dUlDQWdLaUJBZEdoeWIzZHpJSHRDWVdSU1pYRjFaWE4wUlhKeWIzSjlJRmRvWlc0Z1IyMWhhV3dnWVc1emQyVnljeUIzYVhSb0lHRnVlU0J2ZEdobGNpQklWRlJRSUdWeWNtOXlJSE4wWVhSMWN5NWNiaUFnSUNvdlhHNGdJR0Z6ZVc1aklHZGxkRTFsYzNOaFoyVW9YRzRnSUNBZ2FXUTZJSE4wY21sdVp5eGNiaUFnSUNCbWIzSnRZWFE2SUZ3aVpuVnNiRndpSUh3Z1hDSnRaWFJoWkdGMFlWd2lJSHdnWENKdGFXNXBiV0ZzWENJZ2ZDQmNJbkpoZDF3aUlEMGdYQ0ptZFd4c1hDSmNiaUFnS1RvZ1VISnZiV2x6WlR4U1pXTnZjbVE4YzNSeWFXNW5MQ0IxYm10dWIzZHVQajRnZTF4dUlDQWdJSFJvYVhNdWNtVnhkV2x5WlZSdmEyVnVLQ2s3WEc0Z0lDQWdhV1lnS0NGcFpDa2dkR2h5YjNjZ2JtVjNJRWx1ZEdWeWJtRnNSWEp5YjNJb1hDSkhiV0ZwYkNCblpYUk5aWE56WVdkbElISmxjWFZwY21WeklHRWdiV1Z6YzJGblpTQkpSRndpS1R0Y2JpQWdJQ0IwY25rZ2UxeHVJQ0FnSUNBZ1kyOXVjM1FnY21WemNHOXVjMlVnUFNCaGQyRnBkQ0IwYUdsekxtTnNhV1Z1ZEM1blpYUThVbVZqYjNKa1BITjBjbWx1Wnl3Z2RXNXJibTkzYmo0K0tGeHVJQ0FnSUNBZ0lDQmdKSHQwYUdsekxuVnpaWEpRWVhSb0tDbDlMMjFsYzNOaFoyVnpMeVI3Wlc1amIyUmxWVkpKUTI5dGNHOXVaVzUwS0dsa0tYMWdMRnh1SUNBZ0lDQWdJQ0I3SUhCaGNtRnRjem9nZXlCbWIzSnRZWFFnZlNCOVhHNGdJQ0FnSUNBcE8xeHVJQ0FnSUNBZ2NtVjBkWEp1SUhKbGMzQnZibk5sTG1SaGRHRTdYRzRnSUNBZ2ZTQmpZWFJqYUNBb1pYSnliM0lwSUh0Y2JpQWdJQ0FnSUhSb2NtOTNJR2gwZEhCRmNuSnZjaWhjSWtkdFlXbHNYQ0lzSUZ3aVoyVjBJRzFsYzNOaFoyVmNJaXdnWlhKeWIzSXBPMXh1SUNBZ0lIMWNiaUFnZlZ4dVhHNGdJQzhxS2x4dUlDQWdLaUJBWkdWelkzSnBjSFJwYjI0Z1RHbHpkSE1nZEdobElHMWhhV3hpYjNnbmN5QkhiV0ZwYkNCc1lXSmxiSE5jYmlBZ0lDb2dRSE4xYlcxaGNua2dZRWRGVkdCeklHQjFjMlZ5Y3k1c1lXSmxiSE11YkdsemRHQWdZVzVrSUhKbGRIVnlibk1nZEdobElISmhkeUJzWVdKbGJDQndZWGxzYjJGa2MxeHVJQ0FnS2lBb2FXNWpiSFZrYVc1bklHQnBaR0FzSUdCdVlXMWxZQ3dnWVc1a0lHQjBlWEJsWUNrdVhHNGdJQ0FxSUVCeVpYUjFjbTV6SUh0UWNtOXRhWE5sUEVGeWNtRjVQRkpsWTI5eVpEeHpkSEpwYm1jc0lIVnVhMjV2ZDI0K1BqNTlJRlJvWlNCeVlYY2dSMjFoYVd3Z2JHRmlaV3dnY0dGNWJHOWhaSE11WEc0Z0lDQXFJRUIwYUhKdmQzTWdlMGx1ZEdWeWJtRnNSWEp5YjNKOUlGZG9aVzRnYm04Z2RHOXJaVzRnYVhNZ1kyOXVabWxuZFhKbFpDNWNiaUFnSUNvZ1FIUm9jbTkzY3lCN1RtOTBSbTkxYm1SRmNuSnZjbjBnVjJobGJpQjBhR1VnWlc1a2NHOXBiblFnWVc1emQyVnljeUIzYVhSb0lFaFVWRkFnTkRBMExseHVJQ0FnS2lCQWRHaHliM2R6SUh0RGIyNW1iR2xqZEVWeWNtOXlmU0JYYUdWdUlFZHRZV2xzSUdGdWMzZGxjbk1nZDJsMGFDQklWRlJRSURRd09TNWNiaUFnSUNvZ1FIUm9jbTkzY3lCN1FtRmtVbVZ4ZFdWemRFVnljbTl5ZlNCWGFHVnVJRWR0WVdsc0lHRnVjM2RsY25NZ2QybDBhQ0JoYm5rZ2IzUm9aWElnU0ZSVVVDQmxjbkp2Y2lCemRHRjBkWE11WEc0Z0lDQXFMMXh1SUNCaGMzbHVZeUJzYVhOMFRHRmlaV3h6S0NrNklGQnliMjFwYzJVOFFYSnlZWGs4VW1WamIzSmtQSE4wY21sdVp5d2dkVzVyYm05M2JqNCtQaUI3WEc0Z0lDQWdkR2hwY3k1eVpYRjFhWEpsVkc5clpXNG9LVHRjYmlBZ0lDQjBjbmtnZTF4dUlDQWdJQ0FnWTI5dWMzUWdjbVZ6Y0c5dWMyVWdQU0JoZDJGcGRDQjBhR2x6TG1Oc2FXVnVkQzVuWlhROGUxeHVJQ0FnSUNBZ0lDQnNZV0psYkhNL09pQkJjbkpoZVR4U1pXTnZjbVE4YzNSeWFXNW5MQ0IxYm10dWIzZHVQajQ3WEc0Z0lDQWdJQ0I5UGloZ0pIdDBhR2x6TG5WelpYSlFZWFJvS0NsOUwyeGhZbVZzYzJBcE8xeHVJQ0FnSUNBZ2NtVjBkWEp1SUhKbGMzQnZibk5sTG1SaGRHRXViR0ZpWld4eklEOC9JRnRkTzF4dUlDQWdJSDBnWTJGMFkyZ2dLR1Z5Y205eUtTQjdYRzRnSUNBZ0lDQjBhSEp2ZHlCb2RIUndSWEp5YjNJb1hDSkhiV0ZwYkZ3aUxDQmNJbXhwYzNRZ2JHRmlaV3h6WENJc0lHVnljbTl5S1R0Y2JpQWdJQ0I5WEc0Z0lIMWNibjFjYmlKZGZRPT0iXX0=
|
|
@@ -20,5 +20,5 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
20
20
|
* @description Re-exports the Gmail client-based service and its types.
|
|
21
21
|
*/
|
|
22
22
|
__exportStar(require("./GmailService.cjs"), exports);
|
|
23
|
-
//# sourceMappingURL=
|
|
24
|
-
//# sourceMappingURL=
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tbXMvZ21haWwvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUNILGtDQUErQiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQG1vZHVsZSBpbnRlZ3JhdGlvbnMvY29tbXMvZ21haWxcbiAqIEBzdW1tYXJ5IEdtYWlsIHNlcnZpY2UgKFJFU1QgdjEgbWVzc2FnZSBzZW5kL2xpc3QvZ2V0IGFuZCBsYWJlbCBsaXN0aW5nKS5cbiAqIEBkZXNjcmlwdGlvbiBSZS1leHBvcnRzIHRoZSBHbWFpbCBjbGllbnQtYmFzZWQgc2VydmljZSBhbmQgaXRzIHR5cGVzLlxuICovXG5leHBvcnQgKiBmcm9tIFwiLi9HbWFpbFNlcnZpY2VcIjtcbiJdfQ==
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7Ozs7R0FJRztBQUNILG9EQUFrQztBQUNsQyw4a0JBQThrQiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQG1vZHVsZSBpbnRlZ3JhdGlvbnMvY29tbXMvZ21haWxcbiAqIEBzdW1tYXJ5IEdtYWlsIHNlcnZpY2UgKFJFU1QgdjEgbWVzc2FnZSBzZW5kL2xpc3QvZ2V0IGFuZCBsYWJlbCBsaXN0aW5nKS5cbiAqIEBkZXNjcmlwdGlvbiBSZS1leHBvcnRzIHRoZSBHbWFpbCBjbGllbnQtYmFzZWQgc2VydmljZSBhbmQgaXRzIHR5cGVzLlxuICovXG5leHBvcnQgKiBmcm9tIFwiLi9HbWFpbFNlcnZpY2UuanNcIjtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtiYXNlNjQsZXlKMlpYSnphVzl1SWpvekxDSm1hV3hsSWpvaWFXNWtaWGd1YW5NaUxDSnpiM1Z5WTJWU2IyOTBJam9pSWl3aWMyOTFjbU5sY3lJNld5SXVMaTh1TGk4dUxpOHVMaTl6Y21NdlkyOXRiWE12WjIxaGFXd3ZhVzVrWlhndWRITWlYU3dpYm1GdFpYTWlPbHRkTENKdFlYQndhVzVuY3lJNklrRkJRVUU3T3pzN1IwRkpSenRCUVVOSUxHdERRVUVyUWlJc0luTnZkWEpqWlhORGIyNTBaVzUwSWpwYklpOHFLbHh1SUNvZ1FHMXZaSFZzWlNCcGJuUmxaM0poZEdsdmJuTXZZMjl0YlhNdloyMWhhV3hjYmlBcUlFQnpkVzF0WVhKNUlFZHRZV2xzSUhObGNuWnBZMlVnS0ZKRlUxUWdkakVnYldWemMyRm5aU0J6Wlc1a0wyeHBjM1F2WjJWMElHRnVaQ0JzWVdKbGJDQnNhWE4wYVc1bktTNWNiaUFxSUVCa1pYTmpjbWx3ZEdsdmJpQlNaUzFsZUhCdmNuUnpJSFJvWlNCSGJXRnBiQ0JqYkdsbGJuUXRZbUZ6WldRZ2MyVnlkbWxqWlNCaGJtUWdhWFJ6SUhSNWNHVnpMbHh1SUNvdlhHNWxlSEJ2Y25RZ0tpQm1jbTl0SUZ3aUxpOUhiV0ZwYkZObGNuWnBZMlZjSWp0Y2JpSmRmUT09Il19
|
package/lib/cjs/comms/index.cjs
CHANGED
|
@@ -30,5 +30,5 @@ __exportStar(require("./discord/index.cjs"), exports);
|
|
|
30
30
|
__exportStar(require("./whatsapp/index.cjs"), exports);
|
|
31
31
|
__exportStar(require("./outlook/index.cjs"), exports);
|
|
32
32
|
__exportStar(require("./environment.cjs"), exports);
|
|
33
|
-
//# sourceMappingURL=
|
|
34
|
-
//# sourceMappingURL=
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tbXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBQ0gsaUNBQXdCO0FBQ3hCLGlDQUF3QjtBQUN4QixpQ0FBd0I7QUFDeEIsaUNBQXdCO0FBQ3hCLG9DQUEyQjtBQUMzQixtQ0FBMEI7QUFDMUIsb0NBQTJCO0FBQzNCLG1DQUEwQjtBQUMxQixpQ0FBOEIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBtb2R1bGUgaW50ZWdyYXRpb25zL2NvbW1zXG4gKiBAc3VtbWFyeSBDb21tcyBpbnRlZ3JhdGlvbiBzZXJ2aWNlcyAoU2xhY2ssIFRlbGVncmFtLCBUZWFtcywgR21haWwsIEVtYWlsKS5cbiAqIEBkZXNjcmlwdGlvbiBSZS1leHBvcnRzIHRoZSBtZXNzYWdpbmcvZW1haWwgc2VydmljZXMsIHRoZWlyIHBlci1zZXJ2aWNlXG4gKiBtb2R1bGVzLCBhbmQgdGhlIHNoYXJlZCBgY29tbXNgIGVudmlyb25tZW50IHNsaWNlLiBFYWNoIHN1Yi1tb2R1bGUgaXMgYWxzb1xuICogYXZhaWxhYmxlIHRocm91Z2ggaXRzIG93biBwYWNrYWdlIHN1YnBhdGggZXhwb3J0LlxuICovXG5leHBvcnQgKiBmcm9tIFwiLi9lbWFpbFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vZ21haWxcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NsYWNrXCI7XG5leHBvcnQgKiBmcm9tIFwiLi90ZWFtc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vdGVsZWdyYW1cIjtcbmV4cG9ydCAqIGZyb20gXCIuL2Rpc2NvcmRcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3doYXRzYXBwXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9vdXRsb29rXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9lbnZpcm9ubWVudFwiO1xuIl19
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7Ozs7OztHQU1HO0FBQ0gsbURBQWlDO0FBQ2pDLG1EQUFpQztBQUNqQyxtREFBaUM7QUFDakMsbURBQWlDO0FBQ2pDLHNEQUFvQztBQUNwQyxxREFBbUM7QUFDbkMsc0RBQW9DO0FBQ3BDLHFEQUFtQztBQUNuQyxtREFBaUM7QUFDakMsa3JDQUFrckMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBtb2R1bGUgaW50ZWdyYXRpb25zL2NvbW1zXG4gKiBAc3VtbWFyeSBDb21tcyBpbnRlZ3JhdGlvbiBzZXJ2aWNlcyAoU2xhY2ssIFRlbGVncmFtLCBUZWFtcywgR21haWwsIEVtYWlsKS5cbiAqIEBkZXNjcmlwdGlvbiBSZS1leHBvcnRzIHRoZSBtZXNzYWdpbmcvZW1haWwgc2VydmljZXMsIHRoZWlyIHBlci1zZXJ2aWNlXG4gKiBtb2R1bGVzLCBhbmQgdGhlIHNoYXJlZCBgY29tbXNgIGVudmlyb25tZW50IHNsaWNlLiBFYWNoIHN1Yi1tb2R1bGUgaXMgYWxzb1xuICogYXZhaWxhYmxlIHRocm91Z2ggaXRzIG93biBwYWNrYWdlIHN1YnBhdGggZXhwb3J0LlxuICovXG5leHBvcnQgKiBmcm9tIFwiLi9lbWFpbC9pbmRleC5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vZ21haWwvaW5kZXguanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NsYWNrL2luZGV4LmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi90ZWFtcy9pbmRleC5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vdGVsZWdyYW0vaW5kZXguanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2Rpc2NvcmQvaW5kZXguanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3doYXRzYXBwL2luZGV4LmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9vdXRsb29rL2luZGV4LmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9lbnZpcm9ubWVudC5qc1wiO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvbi9qc29uO2Jhc2U2NCxleUoyWlhKemFXOXVJam96TENKbWFXeGxJam9pYVc1a1pYZ3Vhbk1pTENKemIzVnlZMlZTYjI5MElqb2lJaXdpYzI5MWNtTmxjeUk2V3lJdUxpOHVMaTh1TGk5emNtTXZZMjl0YlhNdmFXNWtaWGd1ZEhNaVhTd2libUZ0WlhNaU9sdGRMQ0p0WVhCd2FXNW5jeUk2SWtGQlFVRTdPenM3T3p0SFFVMUhPMEZCUTBnc2FVTkJRWGRDTzBGQlEzaENMR2xEUVVGM1FqdEJRVU40UWl4cFEwRkJkMEk3UVVGRGVFSXNhVU5CUVhkQ08wRkJRM2hDTEc5RFFVRXlRanRCUVVNelFpeHRRMEZCTUVJN1FVRkRNVUlzYjBOQlFUSkNPMEZCUXpOQ0xHMURRVUV3UWp0QlFVTXhRaXhwUTBGQk9FSWlMQ0p6YjNWeVkyVnpRMjl1ZEdWdWRDSTZXeUl2S2lwY2JpQXFJRUJ0YjJSMWJHVWdhVzUwWldkeVlYUnBiMjV6TDJOdmJXMXpYRzRnS2lCQWMzVnRiV0Z5ZVNCRGIyMXRjeUJwYm5SbFozSmhkR2x2YmlCelpYSjJhV05sY3lBb1UyeGhZMnNzSUZSbGJHVm5jbUZ0TENCVVpXRnRjeXdnUjIxaGFXd3NJRVZ0WVdsc0tTNWNiaUFxSUVCa1pYTmpjbWx3ZEdsdmJpQlNaUzFsZUhCdmNuUnpJSFJvWlNCdFpYTnpZV2RwYm1jdlpXMWhhV3dnYzJWeWRtbGpaWE1zSUhSb1pXbHlJSEJsY2kxelpYSjJhV05sWEc0Z0tpQnRiMlIxYkdWekxDQmhibVFnZEdobElITm9ZWEpsWkNCZ1kyOXRiWE5nSUdWdWRtbHliMjV0Wlc1MElITnNhV05sTGlCRllXTm9JSE4xWWkxdGIyUjFiR1VnYVhNZ1lXeHpiMXh1SUNvZ1lYWmhhV3hoWW14bElIUm9jbTkxWjJnZ2FYUnpJRzkzYmlCd1lXTnJZV2RsSUhOMVluQmhkR2dnWlhod2IzSjBMbHh1SUNvdlhHNWxlSEJ2Y25RZ0tpQm1jbTl0SUZ3aUxpOWxiV0ZwYkZ3aU8xeHVaWGh3YjNKMElDb2dabkp2YlNCY0lpNHZaMjFoYVd4Y0lqdGNibVY0Y0c5eWRDQXFJR1p5YjIwZ1hDSXVMM05zWVdOclhDSTdYRzVsZUhCdmNuUWdLaUJtY205dElGd2lMaTkwWldGdGMxd2lPMXh1Wlhod2IzSjBJQ29nWm5KdmJTQmNJaTR2ZEdWc1pXZHlZVzFjSWp0Y2JtVjRjRzl5ZENBcUlHWnliMjBnWENJdUwyUnBjMk52Y21SY0lqdGNibVY0Y0c5eWRDQXFJR1p5YjIwZ1hDSXVMM2RvWVhSellYQndYQ0k3WEc1bGVIQnZjblFnS2lCbWNtOXRJRndpTGk5dmRYUnNiMjlyWENJN1hHNWxlSEJ2Y25RZ0tpQm1jbTl0SUZ3aUxpOWxiblpwY205dWJXVnVkRndpTzF4dUlsMTkiXX0=
|