@decaf-ts/integrations 0.14.3 → 0.15.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/LICENSE.md +373 -21
- package/dist/integrations.cjs +2 -3317
- package/dist/integrations.cjs.map +1 -0
- package/dist/integrations.js +2 -3665
- package/dist/integrations.js.map +1 -0
- package/jest.config.cjs +0 -1
- package/lib/cjs/blob/azure/AzureBlobEnvironment.cjs +2 -2
- package/lib/cjs/blob/azure/AzureBlobEnvironment.cjs.map +1 -0
- package/lib/cjs/blob/azure/AzureBlobStoreService.cjs +2 -2
- package/lib/cjs/blob/azure/AzureBlobStoreService.cjs.map +1 -0
- package/lib/cjs/blob/azure/index.cjs +2 -2
- package/lib/cjs/blob/azure/index.cjs.map +1 -0
- package/lib/cjs/blob/core/BlobEnvironment.cjs +2 -2
- package/lib/cjs/blob/core/BlobEnvironment.cjs.map +1 -0
- package/lib/cjs/blob/core/BlobErrors.cjs +2 -2
- package/lib/cjs/blob/core/BlobErrors.cjs.map +1 -0
- package/lib/cjs/blob/core/BlobKey.cjs +2 -2
- package/lib/cjs/blob/core/BlobKey.cjs.map +1 -0
- package/lib/cjs/blob/core/BlobStoreFactory.cjs +2 -2
- package/lib/cjs/blob/core/BlobStoreFactory.cjs.map +1 -0
- package/lib/cjs/blob/core/BlobStoreService.cjs +2 -2
- package/lib/cjs/blob/core/BlobStoreService.cjs.map +1 -0
- package/lib/cjs/blob/core/BlobTypes.cjs +2 -2
- package/lib/cjs/blob/core/BlobTypes.cjs.map +1 -0
- package/lib/cjs/blob/core/BlobValue.cjs +2 -2
- package/lib/cjs/blob/core/BlobValue.cjs.map +1 -0
- package/lib/cjs/blob/core/index.cjs +2 -2
- package/lib/cjs/blob/core/index.cjs.map +1 -0
- package/lib/cjs/blob/gcp/GcsBlobEnvironment.cjs +2 -2
- package/lib/cjs/blob/gcp/GcsBlobEnvironment.cjs.map +1 -0
- package/lib/cjs/blob/gcp/GcsBlobStoreService.cjs +2 -2
- package/lib/cjs/blob/gcp/GcsBlobStoreService.cjs.map +1 -0
- package/lib/cjs/blob/gcp/index.cjs +2 -2
- package/lib/cjs/blob/gcp/index.cjs.map +1 -0
- package/lib/cjs/blob/index.cjs +2 -2
- package/lib/cjs/blob/index.cjs.map +1 -0
- package/lib/cjs/blob/local/LocalBlobEnvironment.cjs +2 -2
- package/lib/cjs/blob/local/LocalBlobEnvironment.cjs.map +1 -0
- package/lib/cjs/blob/local/LocalBlobStoreService.cjs +2 -2
- package/lib/cjs/blob/local/LocalBlobStoreService.cjs.map +1 -0
- package/lib/cjs/blob/local/index.cjs +2 -2
- package/lib/cjs/blob/local/index.cjs.map +1 -0
- package/lib/cjs/blob/memory/MemoryBlobEnvironment.cjs +2 -2
- package/lib/cjs/blob/memory/MemoryBlobEnvironment.cjs.map +1 -0
- package/lib/cjs/blob/memory/MemoryBlobStoreService.cjs +2 -2
- package/lib/cjs/blob/memory/MemoryBlobStoreService.cjs.map +1 -0
- package/lib/cjs/blob/memory/index.cjs +2 -2
- package/lib/cjs/blob/memory/index.cjs.map +1 -0
- package/lib/cjs/blob/s3/MinioBlobEnvironment.cjs +2 -2
- package/lib/cjs/blob/s3/MinioBlobEnvironment.cjs.map +1 -0
- package/lib/cjs/blob/s3/MinioBlobStoreService.cjs +2 -2
- package/lib/cjs/blob/s3/MinioBlobStoreService.cjs.map +1 -0
- package/lib/cjs/blob/s3/R2BlobEnvironment.cjs +2 -2
- package/lib/cjs/blob/s3/R2BlobEnvironment.cjs.map +1 -0
- package/lib/cjs/blob/s3/R2BlobStoreService.cjs +2 -2
- package/lib/cjs/blob/s3/R2BlobStoreService.cjs.map +1 -0
- package/lib/cjs/blob/s3/S3BlobEnvironment.cjs +2 -2
- package/lib/cjs/blob/s3/S3BlobEnvironment.cjs.map +1 -0
- package/lib/cjs/blob/s3/S3BlobStoreService.cjs +2 -2
- package/lib/cjs/blob/s3/S3BlobStoreService.cjs.map +1 -0
- package/lib/cjs/blob/s3/S3CompatibleBlobStoreService.cjs +2 -2
- package/lib/cjs/blob/s3/S3CompatibleBlobStoreService.cjs.map +1 -0
- package/lib/cjs/blob/s3/index.cjs +2 -2
- package/lib/cjs/blob/s3/index.cjs.map +1 -0
- package/lib/cjs/calendar/CalendarService.cjs +2 -2
- package/lib/cjs/calendar/CalendarService.cjs.map +1 -0
- package/lib/cjs/calendar/environment.cjs +2 -2
- package/lib/cjs/calendar/environment.cjs.map +1 -0
- package/lib/cjs/calendar/google-calendar/GoogleCalendarService.cjs +2 -2
- package/lib/cjs/calendar/google-calendar/GoogleCalendarService.cjs.map +1 -0
- package/lib/cjs/calendar/google-calendar/index.cjs +2 -2
- package/lib/cjs/calendar/google-calendar/index.cjs.map +1 -0
- package/lib/cjs/calendar/index.cjs +2 -2
- package/lib/cjs/calendar/index.cjs.map +1 -0
- package/lib/cjs/calendar/types.cjs +2 -2
- package/lib/cjs/calendar/types.cjs.map +1 -0
- package/lib/cjs/calendar/validators/cron.cjs +2 -2
- package/lib/cjs/calendar/validators/cron.cjs.map +1 -0
- package/lib/cjs/calendar/writers/CalendarFsWriter.cjs +2 -2
- package/lib/cjs/calendar/writers/CalendarFsWriter.cjs.map +1 -0
- package/lib/cjs/calendar/writers/CalenderDownloader.cjs +2 -2
- package/lib/cjs/calendar/writers/CalenderDownloader.cjs.map +1 -0
- package/lib/cjs/calendar/writers/ICalendarWriter.cjs +2 -2
- package/lib/cjs/calendar/writers/ICalendarWriter.cjs.map +1 -0
- package/lib/cjs/comms/discord/DiscordService.cjs +2 -2
- package/lib/cjs/comms/discord/DiscordService.cjs.map +1 -0
- package/lib/cjs/comms/discord/index.cjs +2 -2
- package/lib/cjs/comms/discord/index.cjs.map +1 -0
- package/lib/cjs/comms/email/EmailService.cjs +2 -2
- package/lib/cjs/comms/email/EmailService.cjs.map +1 -0
- package/lib/cjs/comms/email/index.cjs +2 -2
- package/lib/cjs/comms/email/index.cjs.map +1 -0
- package/lib/cjs/comms/email/mime.cjs +2 -2
- package/lib/cjs/comms/email/mime.cjs.map +1 -0
- package/lib/cjs/comms/email/smtp.cjs +2 -2
- package/lib/cjs/comms/email/smtp.cjs.map +1 -0
- package/lib/cjs/comms/environment.cjs +2 -2
- package/lib/cjs/comms/environment.cjs.map +1 -0
- package/lib/cjs/comms/gmail/GmailService.cjs +2 -2
- package/lib/cjs/comms/gmail/GmailService.cjs.map +1 -0
- package/lib/cjs/comms/gmail/index.cjs +2 -2
- package/lib/cjs/comms/gmail/index.cjs.map +1 -0
- package/lib/cjs/comms/index.cjs +2 -2
- package/lib/cjs/comms/index.cjs.map +1 -0
- package/lib/cjs/comms/outlook/MicrosoftOutlookService.cjs +2 -2
- package/lib/cjs/comms/outlook/MicrosoftOutlookService.cjs.map +1 -0
- package/lib/cjs/comms/outlook/index.cjs +2 -2
- package/lib/cjs/comms/outlook/index.cjs.map +1 -0
- package/lib/cjs/comms/slack/SlackService.cjs +2 -2
- package/lib/cjs/comms/slack/SlackService.cjs.map +1 -0
- package/lib/cjs/comms/slack/index.cjs +2 -2
- package/lib/cjs/comms/slack/index.cjs.map +1 -0
- package/lib/cjs/comms/teams/TeamsService.cjs +2 -2
- package/lib/cjs/comms/teams/TeamsService.cjs.map +1 -0
- package/lib/cjs/comms/teams/index.cjs +2 -2
- package/lib/cjs/comms/teams/index.cjs.map +1 -0
- package/lib/cjs/comms/telegram/TelegramService.cjs +2 -2
- package/lib/cjs/comms/telegram/TelegramService.cjs.map +1 -0
- package/lib/cjs/comms/telegram/index.cjs +2 -2
- package/lib/cjs/comms/telegram/index.cjs.map +1 -0
- package/lib/cjs/comms/whatsapp/WhatsAppService.cjs +2 -2
- package/lib/cjs/comms/whatsapp/WhatsAppService.cjs.map +1 -0
- package/lib/cjs/comms/whatsapp/index.cjs +2 -2
- package/lib/cjs/comms/whatsapp/index.cjs.map +1 -0
- package/lib/cjs/devops/environment.cjs +2 -2
- package/lib/cjs/devops/environment.cjs.map +1 -0
- package/lib/cjs/devops/github/GithubService.cjs +2 -2
- package/lib/cjs/devops/github/GithubService.cjs.map +1 -0
- package/lib/cjs/devops/github/index.cjs +2 -2
- package/lib/cjs/devops/github/index.cjs.map +1 -0
- package/lib/cjs/devops/gitlab/GitlabService.cjs +2 -2
- package/lib/cjs/devops/gitlab/GitlabService.cjs.map +1 -0
- package/lib/cjs/devops/gitlab/index.cjs +2 -2
- package/lib/cjs/devops/gitlab/index.cjs.map +1 -0
- package/lib/cjs/devops/index.cjs +2 -2
- package/lib/cjs/devops/index.cjs.map +1 -0
- package/lib/cjs/docker/DockerComposeService.cjs +2 -2
- package/lib/cjs/docker/DockerComposeService.cjs.map +1 -0
- package/lib/cjs/docker/index.cjs +2 -2
- package/lib/cjs/docker/index.cjs.map +1 -0
- package/lib/cjs/feature-flags/EngineCapabilityFeatureFlag.service.cjs +2 -2
- package/lib/cjs/feature-flags/EngineCapabilityFeatureFlag.service.cjs.map +1 -0
- package/lib/cjs/feature-flags/constants.cjs +2 -2
- package/lib/cjs/feature-flags/constants.cjs.map +1 -0
- package/lib/cjs/feature-flags/decorators.cjs +2 -2
- package/lib/cjs/feature-flags/decorators.cjs.map +1 -0
- package/lib/cjs/feature-flags/environment.cjs +2 -2
- package/lib/cjs/feature-flags/environment.cjs.map +1 -0
- package/lib/cjs/feature-flags/index.cjs +2 -2
- package/lib/cjs/feature-flags/index.cjs.map +1 -0
- package/lib/cjs/feature-flags/models/FeatureFlag.model.cjs +2 -2
- package/lib/cjs/feature-flags/models/FeatureFlag.model.cjs.map +1 -0
- package/lib/cjs/feature-flags/models/FeatureFlagAccess.model.cjs +2 -2
- package/lib/cjs/feature-flags/models/FeatureFlagAccess.model.cjs.map +1 -0
- package/lib/cjs/feature-flags/readers/FeatureFlagReader.cjs +2 -2
- package/lib/cjs/feature-flags/readers/FeatureFlagReader.cjs.map +1 -0
- package/lib/cjs/feature-flags/readers/index.cjs +2 -2
- package/lib/cjs/feature-flags/readers/index.cjs.map +1 -0
- package/lib/cjs/feature-flags/services/FeatureFlag.service.cjs +3 -2
- package/lib/cjs/feature-flags/services/FeatureFlag.service.cjs.map +1 -0
- package/lib/cjs/feature-flags/types.cjs +2 -2
- package/lib/cjs/feature-flags/types.cjs.map +1 -0
- package/lib/cjs/feature-flags/utils.cjs +2 -2
- package/lib/cjs/feature-flags/utils.cjs.map +1 -0
- package/lib/cjs/index.cjs +5 -5
- package/lib/cjs/index.cjs.map +1 -0
- package/lib/cjs/io/airtable/AirtableService.cjs +2 -2
- package/lib/cjs/io/airtable/AirtableService.cjs.map +1 -0
- package/lib/cjs/io/airtable/index.cjs +2 -2
- package/lib/cjs/io/airtable/index.cjs.map +1 -0
- package/lib/cjs/io/confluence/ConfluenceService.cjs +2 -2
- package/lib/cjs/io/confluence/ConfluenceService.cjs.map +1 -0
- package/lib/cjs/io/confluence/index.cjs +2 -2
- package/lib/cjs/io/confluence/index.cjs.map +1 -0
- package/lib/cjs/io/environment.cjs +2 -2
- package/lib/cjs/io/environment.cjs.map +1 -0
- package/lib/cjs/io/google-docs/GoogleDocsService.cjs +2 -2
- package/lib/cjs/io/google-docs/GoogleDocsService.cjs.map +1 -0
- package/lib/cjs/io/google-docs/index.cjs +2 -2
- package/lib/cjs/io/google-docs/index.cjs.map +1 -0
- package/lib/cjs/io/google-sheets/GoogleSheetsService.cjs +2 -2
- package/lib/cjs/io/google-sheets/GoogleSheetsService.cjs.map +1 -0
- package/lib/cjs/io/google-sheets/index.cjs +2 -2
- package/lib/cjs/io/google-sheets/index.cjs.map +1 -0
- package/lib/cjs/io/graphql/GraphqlService.cjs +2 -2
- package/lib/cjs/io/graphql/GraphqlService.cjs.map +1 -0
- package/lib/cjs/io/graphql/index.cjs +2 -2
- package/lib/cjs/io/graphql/index.cjs.map +1 -0
- package/lib/cjs/io/index.cjs +2 -2
- package/lib/cjs/io/index.cjs.map +1 -0
- package/lib/cjs/io/jira/JiraService.cjs +2 -2
- package/lib/cjs/io/jira/JiraService.cjs.map +1 -0
- package/lib/cjs/io/jira/index.cjs +2 -2
- package/lib/cjs/io/jira/index.cjs.map +1 -0
- package/lib/cjs/io/microsoft-excel/MicrosoftExcelService.cjs +2 -2
- package/lib/cjs/io/microsoft-excel/MicrosoftExcelService.cjs.map +1 -0
- package/lib/cjs/io/microsoft-excel/index.cjs +2 -2
- package/lib/cjs/io/microsoft-excel/index.cjs.map +1 -0
- package/lib/cjs/io/microsoft-sharepoint/MicrosoftSharePointService.cjs +2 -2
- package/lib/cjs/io/microsoft-sharepoint/MicrosoftSharePointService.cjs.map +1 -0
- package/lib/cjs/io/microsoft-sharepoint/index.cjs +2 -2
- package/lib/cjs/io/microsoft-sharepoint/index.cjs.map +1 -0
- package/lib/cjs/io/spreadsheet/SpreadsheetService.cjs +2 -2
- package/lib/cjs/io/spreadsheet/SpreadsheetService.cjs.map +1 -0
- package/lib/cjs/io/spreadsheet/index.cjs +2 -2
- package/lib/cjs/io/spreadsheet/index.cjs.map +1 -0
- package/lib/cjs/keycloak/broker.cjs +2 -2
- package/lib/cjs/keycloak/broker.cjs.map +1 -0
- package/lib/cjs/keycloak/index.cjs +2 -2
- package/lib/cjs/keycloak/index.cjs.map +1 -0
- package/lib/cjs/keycloak/services/KeycloakAuthService.cjs +2 -2
- package/lib/cjs/keycloak/services/KeycloakAuthService.cjs.map +1 -0
- package/lib/cjs/keycloak/services/KeycloakClientService.cjs +2 -2
- package/lib/cjs/keycloak/services/KeycloakClientService.cjs.map +1 -0
- package/lib/cjs/keycloak/services/KeycloakIdentityProviderService.cjs +2 -2
- package/lib/cjs/keycloak/services/KeycloakIdentityProviderService.cjs.map +1 -0
- package/lib/cjs/keycloak/services/KeycloakRealmService.cjs +2 -2
- package/lib/cjs/keycloak/services/KeycloakRealmService.cjs.map +1 -0
- package/lib/cjs/keycloak/services/KeycloakRoleService.cjs +2 -2
- package/lib/cjs/keycloak/services/KeycloakRoleService.cjs.map +1 -0
- package/lib/cjs/keycloak/services/KeycloakService.cjs +2 -2
- package/lib/cjs/keycloak/services/KeycloakService.cjs.map +1 -0
- package/lib/cjs/keycloak/services/KeycloakUserService.cjs +2 -2
- package/lib/cjs/keycloak/services/KeycloakUserService.cjs.map +1 -0
- package/lib/cjs/keycloak/services/index.cjs +2 -2
- package/lib/cjs/keycloak/services/index.cjs.map +1 -0
- package/lib/cjs/keycloak/services/runtime.cjs +2 -2
- package/lib/cjs/keycloak/services/runtime.cjs.map +1 -0
- package/lib/cjs/keycloak/types.cjs +2 -2
- package/lib/cjs/keycloak/types.cjs.map +1 -0
- package/lib/cjs/kibana/builders/KibanaIndexBuilder.cjs +2 -2
- package/lib/cjs/kibana/builders/KibanaIndexBuilder.cjs.map +1 -0
- package/lib/cjs/kibana/builders/KibanaIndexBuilderCollection.cjs +2 -2
- package/lib/cjs/kibana/builders/KibanaIndexBuilderCollection.cjs.map +1 -0
- package/lib/cjs/kibana/builders/index.cjs +2 -2
- package/lib/cjs/kibana/builders/index.cjs.map +1 -0
- package/lib/cjs/kibana/helpers.cjs +2 -2
- package/lib/cjs/kibana/helpers.cjs.map +1 -0
- package/lib/cjs/kibana/index.cjs +2 -2
- package/lib/cjs/kibana/index.cjs.map +1 -0
- package/lib/cjs/kibana/services/KibanaAuthService.cjs +2 -2
- package/lib/cjs/kibana/services/KibanaAuthService.cjs.map +1 -0
- package/lib/cjs/kibana/services/KibanaDashboardService.cjs +2 -2
- package/lib/cjs/kibana/services/KibanaDashboardService.cjs.map +1 -0
- package/lib/cjs/kibana/services/KibanaDataViewService.cjs +2 -2
- package/lib/cjs/kibana/services/KibanaDataViewService.cjs.map +1 -0
- package/lib/cjs/kibana/services/KibanaRoleService.cjs +2 -2
- package/lib/cjs/kibana/services/KibanaRoleService.cjs.map +1 -0
- package/lib/cjs/kibana/services/KibanaService.cjs +2 -2
- package/lib/cjs/kibana/services/KibanaService.cjs.map +1 -0
- package/lib/cjs/kibana/services/KibanaSpaceService.cjs +2 -2
- package/lib/cjs/kibana/services/KibanaSpaceService.cjs.map +1 -0
- package/lib/cjs/kibana/services/KibanaUserService.cjs +2 -2
- package/lib/cjs/kibana/services/KibanaUserService.cjs.map +1 -0
- package/lib/cjs/kibana/services/index.cjs +2 -2
- package/lib/cjs/kibana/services/index.cjs.map +1 -0
- package/lib/cjs/kibana/services/runtime.cjs +2 -2
- package/lib/cjs/kibana/services/runtime.cjs.map +1 -0
- package/lib/cjs/kibana/types.cjs +2 -2
- package/lib/cjs/kibana/types.cjs.map +1 -0
- package/lib/cjs/loader/ObjectLoader.cjs +2 -2
- package/lib/cjs/loader/ObjectLoader.cjs.map +1 -0
- package/lib/cjs/loader/assets.cjs +2 -2
- package/lib/cjs/loader/assets.cjs.map +1 -0
- package/lib/cjs/loader/config.cjs +2 -2
- package/lib/cjs/loader/config.cjs.map +1 -0
- package/lib/cjs/loader/families.cjs +2 -2
- package/lib/cjs/loader/families.cjs.map +1 -0
- package/lib/cjs/loader/index.cjs +2 -2
- package/lib/cjs/loader/index.cjs.map +1 -0
- package/lib/cjs/loader/nest.cjs +2 -2
- package/lib/cjs/loader/nest.cjs.map +1 -0
- package/lib/cjs/loader/types.cjs +2 -2
- package/lib/cjs/loader/types.cjs.map +1 -0
- package/lib/cjs/namespaces/index.cjs +2 -2
- package/lib/cjs/namespaces/index.cjs.map +1 -0
- package/lib/cjs/namespaces/models/authorization-model.cjs +2 -2
- package/lib/cjs/namespaces/models/authorization-model.cjs.map +1 -0
- package/lib/cjs/namespaces/models/credential.model.cjs +2 -2
- package/lib/cjs/namespaces/models/credential.model.cjs.map +1 -0
- package/lib/cjs/namespaces/models/effective-permission.model.cjs +2 -2
- package/lib/cjs/namespaces/models/effective-permission.model.cjs.map +1 -0
- package/lib/cjs/namespaces/models/group-membership.model.cjs +2 -2
- package/lib/cjs/namespaces/models/group-membership.model.cjs.map +1 -0
- package/lib/cjs/namespaces/models/group.model.cjs +2 -2
- package/lib/cjs/namespaces/models/group.model.cjs.map +1 -0
- package/lib/cjs/namespaces/models/index.cjs +2 -2
- package/lib/cjs/namespaces/models/index.cjs.map +1 -0
- package/lib/cjs/namespaces/models/inheritance-block.model.cjs +2 -2
- package/lib/cjs/namespaces/models/inheritance-block.model.cjs.map +1 -0
- package/lib/cjs/namespaces/models/org-unit-closure.model.cjs +2 -2
- package/lib/cjs/namespaces/models/org-unit-closure.model.cjs.map +1 -0
- package/lib/cjs/namespaces/models/org-unit-membership.model.cjs +2 -2
- package/lib/cjs/namespaces/models/org-unit-membership.model.cjs.map +1 -0
- package/lib/cjs/namespaces/models/org-unit-profile.model.cjs +2 -2
- package/lib/cjs/namespaces/models/org-unit-profile.model.cjs.map +1 -0
- package/lib/cjs/namespaces/models/org-unit.model.cjs +2 -2
- package/lib/cjs/namespaces/models/org-unit.model.cjs.map +1 -0
- package/lib/cjs/namespaces/models/permission.model.cjs +2 -2
- package/lib/cjs/namespaces/models/permission.model.cjs.map +1 -0
- package/lib/cjs/namespaces/models/principal.model.cjs +2 -2
- package/lib/cjs/namespaces/models/principal.model.cjs.map +1 -0
- package/lib/cjs/namespaces/models/protected-resource.model.cjs +2 -2
- package/lib/cjs/namespaces/models/protected-resource.model.cjs.map +1 -0
- package/lib/cjs/namespaces/models/resource-grant.model.cjs +2 -2
- package/lib/cjs/namespaces/models/resource-grant.model.cjs.map +1 -0
- package/lib/cjs/namespaces/models/role-assignment.model.cjs +2 -2
- package/lib/cjs/namespaces/models/role-assignment.model.cjs.map +1 -0
- package/lib/cjs/namespaces/models/role-permission.model.cjs +2 -2
- package/lib/cjs/namespaces/models/role-permission.model.cjs.map +1 -0
- package/lib/cjs/namespaces/models/role.model.cjs +2 -2
- package/lib/cjs/namespaces/models/role.model.cjs.map +1 -0
- package/lib/cjs/namespaces/models/storage-binding.model.cjs +2 -2
- package/lib/cjs/namespaces/models/storage-binding.model.cjs.map +1 -0
- package/lib/cjs/namespaces/models/tenant-membership.model.cjs +2 -2
- package/lib/cjs/namespaces/models/tenant-membership.model.cjs.map +1 -0
- package/lib/cjs/namespaces/models/tenant-profile.model.cjs +2 -2
- package/lib/cjs/namespaces/models/tenant-profile.model.cjs.map +1 -0
- package/lib/cjs/namespaces/models/tenant.model.cjs +2 -2
- package/lib/cjs/namespaces/models/tenant.model.cjs.map +1 -0
- package/lib/cjs/namespaces/models/user.model.cjs +2 -2
- package/lib/cjs/namespaces/models/user.model.cjs.map +1 -0
- package/lib/cjs/namespaces/org-based-authorization-system.cjs +2 -2
- package/lib/cjs/namespaces/org-based-authorization-system.cjs.map +1 -0
- package/lib/cjs/namespaces/org-based-authorization-system.models.cjs +2 -2
- package/lib/cjs/namespaces/org-based-authorization-system.models.cjs.map +1 -0
- package/lib/cjs/namespaces/org-based-authorization-system.services.cjs +2 -2
- package/lib/cjs/namespaces/org-based-authorization-system.services.cjs.map +1 -0
- package/lib/cjs/namespaces/rls/index.cjs +2 -2
- package/lib/cjs/namespaces/rls/index.cjs.map +1 -0
- package/lib/cjs/namespaces/rls/principal-resolver.cjs +2 -2
- package/lib/cjs/namespaces/rls/principal-resolver.cjs.map +1 -0
- package/lib/cjs/namespaces/rls/rls-bootstrap.service.cjs +2 -2
- package/lib/cjs/namespaces/rls/rls-bootstrap.service.cjs.map +1 -0
- package/lib/cjs/namespaces/rls/rls.constants.cjs +2 -2
- package/lib/cjs/namespaces/rls/rls.constants.cjs.map +1 -0
- package/lib/cjs/namespaces/rls/rls.template.cjs +2 -2
- package/lib/cjs/namespaces/rls/rls.template.cjs.map +1 -0
- package/lib/cjs/namespaces/rls/rls.types.cjs +2 -2
- package/lib/cjs/namespaces/rls/rls.types.cjs.map +1 -0
- package/lib/cjs/namespaces/rls/session-binding.cjs +2 -2
- package/lib/cjs/namespaces/rls/session-binding.cjs.map +1 -0
- package/lib/cjs/namespaces/services/authz.service.cjs +2 -2
- package/lib/cjs/namespaces/services/authz.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/bootstrap.service.cjs +2 -2
- package/lib/cjs/namespaces/services/bootstrap.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/credential.service.cjs +2 -2
- package/lib/cjs/namespaces/services/credential.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/effective-permission.service.cjs +2 -2
- package/lib/cjs/namespaces/services/effective-permission.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/group-membership.service.cjs +2 -2
- package/lib/cjs/namespaces/services/group-membership.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/group.service.cjs +2 -2
- package/lib/cjs/namespaces/services/group.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/index.cjs +2 -2
- package/lib/cjs/namespaces/services/index.cjs.map +1 -0
- package/lib/cjs/namespaces/services/inheritance-block.service.cjs +2 -2
- package/lib/cjs/namespaces/services/inheritance-block.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/org-unit-closure.service.cjs +2 -2
- package/lib/cjs/namespaces/services/org-unit-closure.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/org-unit-membership.service.cjs +2 -2
- package/lib/cjs/namespaces/services/org-unit-membership.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/org-unit-profile.service.cjs +2 -2
- package/lib/cjs/namespaces/services/org-unit-profile.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/org-unit.service.cjs +2 -2
- package/lib/cjs/namespaces/services/org-unit.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/permission.service.cjs +2 -2
- package/lib/cjs/namespaces/services/permission.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/principal.service.cjs +2 -2
- package/lib/cjs/namespaces/services/principal.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/protected-resource.service.cjs +2 -2
- package/lib/cjs/namespaces/services/protected-resource.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/resource-grant.service.cjs +2 -2
- package/lib/cjs/namespaces/services/resource-grant.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/resource-lifecycle.service.cjs +2 -2
- package/lib/cjs/namespaces/services/resource-lifecycle.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/role-assignment.service.cjs +2 -2
- package/lib/cjs/namespaces/services/role-assignment.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/role-permission.service.cjs +2 -2
- package/lib/cjs/namespaces/services/role-permission.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/role.service.cjs +2 -2
- package/lib/cjs/namespaces/services/role.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/storage-binding.service.cjs +2 -2
- package/lib/cjs/namespaces/services/storage-binding.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/system-management.service.cjs +2 -2
- package/lib/cjs/namespaces/services/system-management.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/tenant-membership.service.cjs +2 -2
- package/lib/cjs/namespaces/services/tenant-membership.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/tenant-profile.service.cjs +2 -2
- package/lib/cjs/namespaces/services/tenant-profile.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/tenant.service.cjs +2 -2
- package/lib/cjs/namespaces/services/tenant.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/user.service.cjs +2 -2
- package/lib/cjs/namespaces/services/user.service.cjs.map +1 -0
- package/lib/cjs/namespaces/types.cjs +2 -2
- package/lib/cjs/namespaces/types.cjs.map +1 -0
- package/lib/cjs/namespaces/utils.cjs +2 -2
- package/lib/cjs/namespaces/utils.cjs.map +1 -0
- package/lib/cjs/nest/decorators.cjs +2 -2
- package/lib/cjs/nest/decorators.cjs.map +1 -0
- package/lib/cjs/nest/index.cjs +2 -2
- package/lib/cjs/nest/index.cjs.map +1 -0
- package/lib/cjs/nest/keycloakAuthHandler.cjs +2 -2
- package/lib/cjs/nest/keycloakAuthHandler.cjs.map +1 -0
- package/lib/cjs/nest/keycloakModule.cjs +2 -2
- package/lib/cjs/nest/keycloakModule.cjs.map +1 -0
- package/lib/cjs/nest/logging.cjs +2 -2
- package/lib/cjs/nest/logging.cjs.map +1 -0
- package/lib/cjs/nest/types.cjs +2 -2
- package/lib/cjs/nest/types.cjs.map +1 -0
- package/lib/cjs/nest/utils.cjs +2 -2
- package/lib/cjs/nest/utils.cjs.map +1 -0
- package/lib/cjs/plugins/contract.cjs +2 -2
- package/lib/cjs/plugins/contract.cjs.map +1 -0
- package/lib/cjs/plugins/index.cjs +2 -2
- package/lib/cjs/plugins/index.cjs.map +1 -0
- package/lib/cjs/plugins/kibana/host.cjs +2 -2
- package/lib/cjs/plugins/kibana/host.cjs.map +1 -0
- package/lib/cjs/plugins/kibana/index.cjs +2 -2
- package/lib/cjs/plugins/kibana/index.cjs.map +1 -0
- package/lib/cjs/plugins/kibana/installer.cjs +2 -2
- package/lib/cjs/plugins/kibana/installer.cjs.map +1 -0
- package/lib/cjs/plugins/kibana/manifest.cjs +2 -2
- package/lib/cjs/plugins/kibana/manifest.cjs.map +1 -0
- package/lib/cjs/plugins/kibana/templates.cjs +2 -2
- package/lib/cjs/plugins/kibana/templates.cjs.map +1 -0
- package/lib/cjs/plugins/kibana/types.cjs +2 -2
- package/lib/cjs/plugins/kibana/types.cjs.map +1 -0
- package/lib/cjs/plugins/superset/host.cjs +2 -2
- package/lib/cjs/plugins/superset/host.cjs.map +1 -0
- package/lib/cjs/plugins/superset/index.cjs +2 -2
- package/lib/cjs/plugins/superset/index.cjs.map +1 -0
- package/lib/cjs/plugins/superset/installer.cjs +2 -2
- package/lib/cjs/plugins/superset/installer.cjs.map +1 -0
- package/lib/cjs/plugins/superset/manifest.cjs +2 -2
- package/lib/cjs/plugins/superset/manifest.cjs.map +1 -0
- package/lib/cjs/plugins/superset/templates.cjs +2 -2
- package/lib/cjs/plugins/superset/templates.cjs.map +1 -0
- package/lib/cjs/plugins/superset/types.cjs +2 -2
- package/lib/cjs/plugins/superset/types.cjs.map +1 -0
- package/lib/cjs/redis/RedisContextLock.cjs +2 -2
- package/lib/cjs/redis/RedisContextLock.cjs.map +1 -0
- package/lib/cjs/redis/RedisDispatch.cjs +2 -2
- package/lib/cjs/redis/RedisDispatch.cjs.map +1 -0
- package/lib/cjs/redis/RedisPaginator.cjs +2 -2
- package/lib/cjs/redis/RedisPaginator.cjs.map +1 -0
- package/lib/cjs/redis/RedisStatement.cjs +2 -2
- package/lib/cjs/redis/RedisStatement.cjs.map +1 -0
- package/lib/cjs/redis/adapter.cjs +2 -2
- package/lib/cjs/redis/adapter.cjs.map +1 -0
- package/lib/cjs/redis/constants.cjs +2 -2
- package/lib/cjs/redis/constants.cjs.map +1 -0
- package/lib/cjs/redis/handlers.cjs +2 -2
- package/lib/cjs/redis/handlers.cjs.map +1 -0
- package/lib/cjs/redis/index.cjs +2 -2
- package/lib/cjs/redis/index.cjs.map +1 -0
- package/lib/cjs/redis/serialization.cjs +2 -2
- package/lib/cjs/redis/serialization.cjs.map +1 -0
- package/lib/cjs/redis/types.cjs +2 -2
- package/lib/cjs/redis/types.cjs.map +1 -0
- package/lib/cjs/secrets/InfraCredentialBootstrap.cjs +2 -2
- package/lib/cjs/secrets/InfraCredentialBootstrap.cjs.map +1 -0
- package/lib/cjs/secrets/aws/AwsSecretEnvironment.cjs +2 -2
- package/lib/cjs/secrets/aws/AwsSecretEnvironment.cjs.map +1 -0
- package/lib/cjs/secrets/aws/AwsSecretService.cjs +2 -2
- package/lib/cjs/secrets/aws/AwsSecretService.cjs.map +1 -0
- package/lib/cjs/secrets/aws/AwsSecretServiceConfig.cjs +2 -2
- package/lib/cjs/secrets/aws/AwsSecretServiceConfig.cjs.map +1 -0
- package/lib/cjs/secrets/aws/index.cjs +2 -2
- package/lib/cjs/secrets/aws/index.cjs.map +1 -0
- package/lib/cjs/secrets/azure/AzureKeyVaultSecretService.cjs +2 -2
- package/lib/cjs/secrets/azure/AzureKeyVaultSecretService.cjs.map +1 -0
- package/lib/cjs/secrets/azure/AzureKeyVaultSecretServiceConfig.cjs +2 -2
- package/lib/cjs/secrets/azure/AzureKeyVaultSecretServiceConfig.cjs.map +1 -0
- package/lib/cjs/secrets/azure/AzureSecretEnvironment.cjs +2 -2
- package/lib/cjs/secrets/azure/AzureSecretEnvironment.cjs.map +1 -0
- package/lib/cjs/secrets/azure/index.cjs +2 -2
- package/lib/cjs/secrets/azure/index.cjs.map +1 -0
- package/lib/cjs/secrets/core/ClientBasedSecretService.cjs +2 -2
- package/lib/cjs/secrets/core/ClientBasedSecretService.cjs.map +1 -0
- package/lib/cjs/secrets/core/SecretEnvironment.cjs +2 -2
- package/lib/cjs/secrets/core/SecretEnvironment.cjs.map +1 -0
- package/lib/cjs/secrets/core/SecretErrors.cjs +2 -2
- package/lib/cjs/secrets/core/SecretErrors.cjs.map +1 -0
- package/lib/cjs/secrets/core/SecretName.cjs +2 -2
- package/lib/cjs/secrets/core/SecretName.cjs.map +1 -0
- package/lib/cjs/secrets/core/SecretReference.cjs +2 -2
- package/lib/cjs/secrets/core/SecretReference.cjs.map +1 -0
- package/lib/cjs/secrets/core/SecretSerialization.cjs +2 -2
- package/lib/cjs/secrets/core/SecretSerialization.cjs.map +1 -0
- package/lib/cjs/secrets/core/SecretService.cjs +2 -2
- package/lib/cjs/secrets/core/SecretService.cjs.map +1 -0
- package/lib/cjs/secrets/core/SecretTypes.cjs +2 -2
- package/lib/cjs/secrets/core/SecretTypes.cjs.map +1 -0
- package/lib/cjs/secrets/core/index.cjs +2 -2
- package/lib/cjs/secrets/core/index.cjs.map +1 -0
- package/lib/cjs/secrets/fs/FsSecretEnvironment.cjs +2 -2
- package/lib/cjs/secrets/fs/FsSecretEnvironment.cjs.map +1 -0
- package/lib/cjs/secrets/fs/FsSecretService.cjs +2 -2
- package/lib/cjs/secrets/fs/FsSecretService.cjs.map +1 -0
- package/lib/cjs/secrets/fs/FsSecretServiceConfig.cjs +2 -2
- package/lib/cjs/secrets/fs/FsSecretServiceConfig.cjs.map +1 -0
- package/lib/cjs/secrets/fs/index.cjs +2 -2
- package/lib/cjs/secrets/fs/index.cjs.map +1 -0
- package/lib/cjs/secrets/gcp/GcpSecretEnvironment.cjs +2 -2
- package/lib/cjs/secrets/gcp/GcpSecretEnvironment.cjs.map +1 -0
- package/lib/cjs/secrets/gcp/GcpSecretManagerService.cjs +2 -2
- package/lib/cjs/secrets/gcp/GcpSecretManagerService.cjs.map +1 -0
- package/lib/cjs/secrets/gcp/GcpSecretManagerServiceConfig.cjs +2 -2
- package/lib/cjs/secrets/gcp/GcpSecretManagerServiceConfig.cjs.map +1 -0
- package/lib/cjs/secrets/gcp/index.cjs +2 -2
- package/lib/cjs/secrets/gcp/index.cjs.map +1 -0
- package/lib/cjs/secrets/index.cjs +2 -2
- package/lib/cjs/secrets/index.cjs.map +1 -0
- package/lib/cjs/secrets/kubernetes/KubernetesSecretEnvironment.cjs +2 -2
- package/lib/cjs/secrets/kubernetes/KubernetesSecretEnvironment.cjs.map +1 -0
- package/lib/cjs/secrets/kubernetes/KubernetesSecretService.cjs +2 -2
- package/lib/cjs/secrets/kubernetes/KubernetesSecretService.cjs.map +1 -0
- package/lib/cjs/secrets/kubernetes/KubernetesSecretServiceConfig.cjs +2 -2
- package/lib/cjs/secrets/kubernetes/KubernetesSecretServiceConfig.cjs.map +1 -0
- package/lib/cjs/secrets/kubernetes/index.cjs +2 -2
- package/lib/cjs/secrets/kubernetes/index.cjs.map +1 -0
- package/lib/cjs/secrets/model/ModelSecretCrypto.cjs +2 -2
- package/lib/cjs/secrets/model/ModelSecretCrypto.cjs.map +1 -0
- package/lib/cjs/secrets/model/ModelSecretEnvironment.cjs +2 -2
- package/lib/cjs/secrets/model/ModelSecretEnvironment.cjs.map +1 -0
- package/lib/cjs/secrets/model/ModelSecretService.cjs +2 -2
- package/lib/cjs/secrets/model/ModelSecretService.cjs.map +1 -0
- package/lib/cjs/secrets/model/ModelSecretServiceConfig.cjs +2 -2
- package/lib/cjs/secrets/model/ModelSecretServiceConfig.cjs.map +1 -0
- package/lib/cjs/secrets/model/Secret.cjs +2 -2
- package/lib/cjs/secrets/model/Secret.cjs.map +1 -0
- package/lib/cjs/secrets/model/index.cjs +2 -2
- package/lib/cjs/secrets/model/index.cjs.map +1 -0
- package/lib/cjs/secrets/onepassword/OnePasswordSecretEnvironment.cjs +2 -2
- package/lib/cjs/secrets/onepassword/OnePasswordSecretEnvironment.cjs.map +1 -0
- package/lib/cjs/secrets/onepassword/OnePasswordSecretService.cjs +2 -2
- package/lib/cjs/secrets/onepassword/OnePasswordSecretService.cjs.map +1 -0
- package/lib/cjs/secrets/onepassword/OnePasswordSecretServiceConfig.cjs +2 -2
- package/lib/cjs/secrets/onepassword/OnePasswordSecretServiceConfig.cjs.map +1 -0
- package/lib/cjs/secrets/onepassword/index.cjs +2 -2
- package/lib/cjs/secrets/onepassword/index.cjs.map +1 -0
- package/lib/cjs/secrets/vault/VaultSecretEnvironment.cjs +2 -2
- package/lib/cjs/secrets/vault/VaultSecretEnvironment.cjs.map +1 -0
- package/lib/cjs/secrets/vault/VaultSecretService.cjs +2 -2
- package/lib/cjs/secrets/vault/VaultSecretService.cjs.map +1 -0
- package/lib/cjs/secrets/vault/VaultSecretServiceConfig.cjs +2 -2
- package/lib/cjs/secrets/vault/VaultSecretServiceConfig.cjs.map +1 -0
- package/lib/cjs/secrets/vault/index.cjs +2 -2
- package/lib/cjs/secrets/vault/index.cjs.map +1 -0
- package/lib/cjs/sftp/aws/AwsSftpEnvironment.cjs +2 -2
- package/lib/cjs/sftp/aws/AwsSftpEnvironment.cjs.map +1 -0
- package/lib/cjs/sftp/aws/AwsSftpService.cjs +2 -2
- package/lib/cjs/sftp/aws/AwsSftpService.cjs.map +1 -0
- package/lib/cjs/sftp/aws/index.cjs +2 -2
- package/lib/cjs/sftp/aws/index.cjs.map +1 -0
- package/lib/cjs/sftp/core/SftpEnvironment.cjs +2 -2
- package/lib/cjs/sftp/core/SftpEnvironment.cjs.map +1 -0
- package/lib/cjs/sftp/core/SftpSource.cjs +2 -2
- package/lib/cjs/sftp/core/SftpSource.cjs.map +1 -0
- package/lib/cjs/sftp/core/index.cjs +2 -2
- package/lib/cjs/sftp/core/index.cjs.map +1 -0
- package/lib/cjs/sftp/index.cjs +2 -2
- package/lib/cjs/sftp/index.cjs.map +1 -0
- package/lib/cjs/sftp/ssh2/Ssh2SftpEnvironment.cjs +2 -2
- package/lib/cjs/sftp/ssh2/Ssh2SftpEnvironment.cjs.map +1 -0
- package/lib/cjs/sftp/ssh2/Ssh2SftpService.cjs +2 -2
- package/lib/cjs/sftp/ssh2/Ssh2SftpService.cjs.map +1 -0
- package/lib/cjs/sftp/ssh2/index.cjs +2 -2
- package/lib/cjs/sftp/ssh2/index.cjs.map +1 -0
- package/lib/cjs/shared/environmentValue.cjs +2 -2
- package/lib/cjs/shared/environmentValue.cjs.map +1 -0
- package/lib/cjs/shared/http/HttpApiService.cjs +2 -2
- package/lib/cjs/shared/http/HttpApiService.cjs.map +1 -0
- package/lib/cjs/shared/http/hermeticBoot.cjs +2 -2
- package/lib/cjs/shared/http/hermeticBoot.cjs.map +1 -0
- package/lib/cjs/shared/http/index.cjs +2 -2
- package/lib/cjs/shared/http/index.cjs.map +1 -0
- package/lib/cjs/shared/runtime.cjs +2 -2
- package/lib/cjs/shared/runtime.cjs.map +1 -0
- package/lib/cjs/user-requests/index.cjs +2 -2
- package/lib/cjs/user-requests/index.cjs.map +1 -0
- package/lib/cjs/utils.cjs +2 -2
- package/lib/cjs/utils.cjs.map +1 -0
- package/lib/esm/blob/azure/AzureBlobEnvironment.js +1 -1
- package/lib/esm/blob/azure/AzureBlobEnvironment.js.map +1 -0
- package/lib/esm/blob/azure/AzureBlobStoreService.js +1 -1
- package/lib/esm/blob/azure/AzureBlobStoreService.js.map +1 -0
- package/lib/esm/blob/azure/index.js +1 -1
- package/lib/esm/blob/azure/index.js.map +1 -0
- package/lib/esm/blob/core/BlobEnvironment.js +1 -1
- package/lib/esm/blob/core/BlobEnvironment.js.map +1 -0
- package/lib/esm/blob/core/BlobErrors.js +1 -1
- package/lib/esm/blob/core/BlobErrors.js.map +1 -0
- package/lib/esm/blob/core/BlobKey.js +1 -1
- package/lib/esm/blob/core/BlobKey.js.map +1 -0
- package/lib/esm/blob/core/BlobStoreFactory.js +1 -1
- package/lib/esm/blob/core/BlobStoreFactory.js.map +1 -0
- package/lib/esm/blob/core/BlobStoreService.js +1 -1
- package/lib/esm/blob/core/BlobStoreService.js.map +1 -0
- package/lib/esm/blob/core/BlobTypes.js +1 -1
- package/lib/esm/blob/core/BlobTypes.js.map +1 -0
- package/lib/esm/blob/core/BlobValue.js +1 -1
- package/lib/esm/blob/core/BlobValue.js.map +1 -0
- package/lib/esm/blob/core/index.js +1 -1
- package/lib/esm/blob/core/index.js.map +1 -0
- package/lib/esm/blob/gcp/GcsBlobEnvironment.js +1 -1
- package/lib/esm/blob/gcp/GcsBlobEnvironment.js.map +1 -0
- package/lib/esm/blob/gcp/GcsBlobStoreService.js +1 -1
- package/lib/esm/blob/gcp/GcsBlobStoreService.js.map +1 -0
- package/lib/esm/blob/gcp/index.js +1 -1
- package/lib/esm/blob/gcp/index.js.map +1 -0
- package/lib/esm/blob/index.js +1 -1
- package/lib/esm/blob/index.js.map +1 -0
- package/lib/esm/blob/local/LocalBlobEnvironment.js +1 -1
- package/lib/esm/blob/local/LocalBlobEnvironment.js.map +1 -0
- package/lib/esm/blob/local/LocalBlobStoreService.js +1 -1
- package/lib/esm/blob/local/LocalBlobStoreService.js.map +1 -0
- package/lib/esm/blob/local/index.js +1 -1
- package/lib/esm/blob/local/index.js.map +1 -0
- package/lib/esm/blob/memory/MemoryBlobEnvironment.js +1 -1
- package/lib/esm/blob/memory/MemoryBlobEnvironment.js.map +1 -0
- package/lib/esm/blob/memory/MemoryBlobStoreService.js +1 -1
- package/lib/esm/blob/memory/MemoryBlobStoreService.js.map +1 -0
- package/lib/esm/blob/memory/index.js +1 -1
- package/lib/esm/blob/memory/index.js.map +1 -0
- package/lib/esm/blob/s3/MinioBlobEnvironment.js +1 -1
- package/lib/esm/blob/s3/MinioBlobEnvironment.js.map +1 -0
- package/lib/esm/blob/s3/MinioBlobStoreService.js +1 -1
- package/lib/esm/blob/s3/MinioBlobStoreService.js.map +1 -0
- package/lib/esm/blob/s3/R2BlobEnvironment.js +1 -1
- package/lib/esm/blob/s3/R2BlobEnvironment.js.map +1 -0
- package/lib/esm/blob/s3/R2BlobStoreService.js +1 -1
- package/lib/esm/blob/s3/R2BlobStoreService.js.map +1 -0
- package/lib/esm/blob/s3/S3BlobEnvironment.js +1 -1
- package/lib/esm/blob/s3/S3BlobEnvironment.js.map +1 -0
- package/lib/esm/blob/s3/S3BlobStoreService.js +1 -1
- package/lib/esm/blob/s3/S3BlobStoreService.js.map +1 -0
- package/lib/esm/blob/s3/S3CompatibleBlobStoreService.js +1 -1
- package/lib/esm/blob/s3/S3CompatibleBlobStoreService.js.map +1 -0
- package/lib/esm/blob/s3/index.js +1 -1
- package/lib/esm/blob/s3/index.js.map +1 -0
- package/lib/esm/calendar/CalendarService.js +1 -1
- package/lib/esm/calendar/CalendarService.js.map +1 -0
- package/lib/esm/calendar/environment.js +1 -1
- package/lib/esm/calendar/environment.js.map +1 -0
- package/lib/esm/calendar/google-calendar/GoogleCalendarService.js +1 -1
- package/lib/esm/calendar/google-calendar/GoogleCalendarService.js.map +1 -0
- package/lib/esm/calendar/google-calendar/index.js +1 -1
- package/lib/esm/calendar/google-calendar/index.js.map +1 -0
- package/lib/esm/calendar/index.js +1 -1
- package/lib/esm/calendar/index.js.map +1 -0
- package/lib/esm/calendar/types.js +1 -1
- package/lib/esm/calendar/types.js.map +1 -0
- package/lib/esm/calendar/validators/cron.js +1 -1
- package/lib/esm/calendar/validators/cron.js.map +1 -0
- package/lib/esm/calendar/writers/CalendarFsWriter.js +1 -1
- package/lib/esm/calendar/writers/CalendarFsWriter.js.map +1 -0
- package/lib/esm/calendar/writers/CalenderDownloader.js +1 -1
- package/lib/esm/calendar/writers/CalenderDownloader.js.map +1 -0
- package/lib/esm/calendar/writers/ICalendarWriter.js +1 -1
- package/lib/esm/calendar/writers/ICalendarWriter.js.map +1 -0
- package/lib/esm/comms/discord/DiscordService.js +1 -1
- package/lib/esm/comms/discord/DiscordService.js.map +1 -0
- package/lib/esm/comms/discord/index.js +1 -1
- package/lib/esm/comms/discord/index.js.map +1 -0
- package/lib/esm/comms/email/EmailService.js +1 -1
- package/lib/esm/comms/email/EmailService.js.map +1 -0
- package/lib/esm/comms/email/index.js +1 -1
- package/lib/esm/comms/email/index.js.map +1 -0
- package/lib/esm/comms/email/mime.js +1 -1
- package/lib/esm/comms/email/mime.js.map +1 -0
- package/lib/esm/comms/email/smtp.js +1 -1
- package/lib/esm/comms/email/smtp.js.map +1 -0
- package/lib/esm/comms/environment.js +1 -1
- package/lib/esm/comms/environment.js.map +1 -0
- package/lib/esm/comms/gmail/GmailService.js +1 -1
- package/lib/esm/comms/gmail/GmailService.js.map +1 -0
- package/lib/esm/comms/gmail/index.js +1 -1
- package/lib/esm/comms/gmail/index.js.map +1 -0
- package/lib/esm/comms/index.js +1 -1
- package/lib/esm/comms/index.js.map +1 -0
- package/lib/esm/comms/outlook/MicrosoftOutlookService.js +1 -1
- package/lib/esm/comms/outlook/MicrosoftOutlookService.js.map +1 -0
- package/lib/esm/comms/outlook/index.js +1 -1
- package/lib/esm/comms/outlook/index.js.map +1 -0
- package/lib/esm/comms/slack/SlackService.js +1 -1
- package/lib/esm/comms/slack/SlackService.js.map +1 -0
- package/lib/esm/comms/slack/index.js +1 -1
- package/lib/esm/comms/slack/index.js.map +1 -0
- package/lib/esm/comms/teams/TeamsService.js +1 -1
- package/lib/esm/comms/teams/TeamsService.js.map +1 -0
- package/lib/esm/comms/teams/index.js +1 -1
- package/lib/esm/comms/teams/index.js.map +1 -0
- package/lib/esm/comms/telegram/TelegramService.js +1 -1
- package/lib/esm/comms/telegram/TelegramService.js.map +1 -0
- package/lib/esm/comms/telegram/index.js +1 -1
- package/lib/esm/comms/telegram/index.js.map +1 -0
- package/lib/esm/comms/whatsapp/WhatsAppService.js +1 -1
- package/lib/esm/comms/whatsapp/WhatsAppService.js.map +1 -0
- package/lib/esm/comms/whatsapp/index.js +1 -1
- package/lib/esm/comms/whatsapp/index.js.map +1 -0
- package/lib/esm/devops/environment.js +1 -1
- package/lib/esm/devops/environment.js.map +1 -0
- package/lib/esm/devops/github/GithubService.js +1 -1
- package/lib/esm/devops/github/GithubService.js.map +1 -0
- package/lib/esm/devops/github/index.js +1 -1
- package/lib/esm/devops/github/index.js.map +1 -0
- package/lib/esm/devops/gitlab/GitlabService.js +1 -1
- package/lib/esm/devops/gitlab/GitlabService.js.map +1 -0
- package/lib/esm/devops/gitlab/index.js +1 -1
- package/lib/esm/devops/gitlab/index.js.map +1 -0
- package/lib/esm/devops/index.js +1 -1
- package/lib/esm/devops/index.js.map +1 -0
- package/lib/esm/docker/DockerComposeService.js +1 -1
- package/lib/esm/docker/DockerComposeService.js.map +1 -0
- package/lib/esm/docker/index.js +1 -1
- package/lib/esm/docker/index.js.map +1 -0
- package/lib/esm/feature-flags/EngineCapabilityFeatureFlag.service.js +1 -1
- package/lib/esm/feature-flags/EngineCapabilityFeatureFlag.service.js.map +1 -0
- package/lib/esm/feature-flags/constants.js +1 -1
- package/lib/esm/feature-flags/constants.js.map +1 -0
- package/lib/esm/feature-flags/decorators.js +1 -1
- package/lib/esm/feature-flags/decorators.js.map +1 -0
- package/lib/esm/feature-flags/environment.js +1 -1
- package/lib/esm/feature-flags/environment.js.map +1 -0
- package/lib/esm/feature-flags/index.js +1 -1
- package/lib/esm/feature-flags/index.js.map +1 -0
- package/lib/esm/feature-flags/models/FeatureFlag.model.js +1 -1
- package/lib/esm/feature-flags/models/FeatureFlag.model.js.map +1 -0
- package/lib/esm/feature-flags/models/FeatureFlagAccess.model.js +1 -1
- package/lib/esm/feature-flags/models/FeatureFlagAccess.model.js.map +1 -0
- package/lib/esm/feature-flags/readers/FeatureFlagReader.js +1 -1
- package/lib/esm/feature-flags/readers/FeatureFlagReader.js.map +1 -0
- package/lib/esm/feature-flags/readers/index.js +1 -1
- package/lib/esm/feature-flags/readers/index.js.map +1 -0
- package/lib/esm/feature-flags/services/FeatureFlag.service.js +2 -1
- package/lib/esm/feature-flags/services/FeatureFlag.service.js.map +1 -0
- package/lib/esm/feature-flags/types.js +1 -1
- package/lib/esm/feature-flags/types.js.map +1 -0
- package/lib/esm/feature-flags/utils.js +1 -1
- package/lib/esm/feature-flags/utils.js.map +1 -0
- package/lib/esm/index.js +4 -4
- package/lib/esm/index.js.map +1 -0
- package/lib/esm/io/airtable/AirtableService.js +1 -1
- package/lib/esm/io/airtable/AirtableService.js.map +1 -0
- package/lib/esm/io/airtable/index.js +1 -1
- package/lib/esm/io/airtable/index.js.map +1 -0
- package/lib/esm/io/confluence/ConfluenceService.js +1 -1
- package/lib/esm/io/confluence/ConfluenceService.js.map +1 -0
- package/lib/esm/io/confluence/index.js +1 -1
- package/lib/esm/io/confluence/index.js.map +1 -0
- package/lib/esm/io/environment.js +1 -1
- package/lib/esm/io/environment.js.map +1 -0
- package/lib/esm/io/google-docs/GoogleDocsService.js +1 -1
- package/lib/esm/io/google-docs/GoogleDocsService.js.map +1 -0
- package/lib/esm/io/google-docs/index.js +1 -1
- package/lib/esm/io/google-docs/index.js.map +1 -0
- package/lib/esm/io/google-sheets/GoogleSheetsService.js +1 -1
- package/lib/esm/io/google-sheets/GoogleSheetsService.js.map +1 -0
- package/lib/esm/io/google-sheets/index.js +1 -1
- package/lib/esm/io/google-sheets/index.js.map +1 -0
- package/lib/esm/io/graphql/GraphqlService.js +1 -1
- package/lib/esm/io/graphql/GraphqlService.js.map +1 -0
- package/lib/esm/io/graphql/index.js +1 -1
- package/lib/esm/io/graphql/index.js.map +1 -0
- package/lib/esm/io/index.js +1 -1
- package/lib/esm/io/index.js.map +1 -0
- package/lib/esm/io/jira/JiraService.js +1 -1
- package/lib/esm/io/jira/JiraService.js.map +1 -0
- package/lib/esm/io/jira/index.js +1 -1
- package/lib/esm/io/jira/index.js.map +1 -0
- package/lib/esm/io/microsoft-excel/MicrosoftExcelService.js +1 -1
- package/lib/esm/io/microsoft-excel/MicrosoftExcelService.js.map +1 -0
- package/lib/esm/io/microsoft-excel/index.js +1 -1
- package/lib/esm/io/microsoft-excel/index.js.map +1 -0
- package/lib/esm/io/microsoft-sharepoint/MicrosoftSharePointService.js +1 -1
- package/lib/esm/io/microsoft-sharepoint/MicrosoftSharePointService.js.map +1 -0
- package/lib/esm/io/microsoft-sharepoint/index.js +1 -1
- package/lib/esm/io/microsoft-sharepoint/index.js.map +1 -0
- package/lib/esm/io/spreadsheet/SpreadsheetService.js +1 -1
- package/lib/esm/io/spreadsheet/SpreadsheetService.js.map +1 -0
- package/lib/esm/io/spreadsheet/index.js +1 -1
- package/lib/esm/io/spreadsheet/index.js.map +1 -0
- package/lib/esm/keycloak/broker.js +1 -1
- package/lib/esm/keycloak/broker.js.map +1 -0
- package/lib/esm/keycloak/index.js +1 -1
- package/lib/esm/keycloak/index.js.map +1 -0
- package/lib/esm/keycloak/services/KeycloakAuthService.js +1 -1
- package/lib/esm/keycloak/services/KeycloakAuthService.js.map +1 -0
- package/lib/esm/keycloak/services/KeycloakClientService.js +1 -1
- package/lib/esm/keycloak/services/KeycloakClientService.js.map +1 -0
- package/lib/esm/keycloak/services/KeycloakIdentityProviderService.js +1 -1
- package/lib/esm/keycloak/services/KeycloakIdentityProviderService.js.map +1 -0
- package/lib/esm/keycloak/services/KeycloakRealmService.js +1 -1
- package/lib/esm/keycloak/services/KeycloakRealmService.js.map +1 -0
- package/lib/esm/keycloak/services/KeycloakRoleService.js +1 -1
- package/lib/esm/keycloak/services/KeycloakRoleService.js.map +1 -0
- package/lib/esm/keycloak/services/KeycloakService.js +1 -1
- package/lib/esm/keycloak/services/KeycloakService.js.map +1 -0
- package/lib/esm/keycloak/services/KeycloakUserService.js +1 -1
- package/lib/esm/keycloak/services/KeycloakUserService.js.map +1 -0
- package/lib/esm/keycloak/services/index.js +1 -1
- package/lib/esm/keycloak/services/index.js.map +1 -0
- package/lib/esm/keycloak/services/runtime.js +1 -1
- package/lib/esm/keycloak/services/runtime.js.map +1 -0
- package/lib/esm/keycloak/types.js +1 -1
- package/lib/esm/keycloak/types.js.map +1 -0
- package/lib/esm/kibana/builders/KibanaIndexBuilder.js +1 -1
- package/lib/esm/kibana/builders/KibanaIndexBuilder.js.map +1 -0
- package/lib/esm/kibana/builders/KibanaIndexBuilderCollection.js +1 -1
- package/lib/esm/kibana/builders/KibanaIndexBuilderCollection.js.map +1 -0
- package/lib/esm/kibana/builders/index.js +1 -1
- package/lib/esm/kibana/builders/index.js.map +1 -0
- package/lib/esm/kibana/helpers.js +1 -1
- package/lib/esm/kibana/helpers.js.map +1 -0
- package/lib/esm/kibana/index.js +1 -1
- package/lib/esm/kibana/index.js.map +1 -0
- package/lib/esm/kibana/services/KibanaAuthService.js +1 -1
- package/lib/esm/kibana/services/KibanaAuthService.js.map +1 -0
- package/lib/esm/kibana/services/KibanaDashboardService.js +1 -1
- package/lib/esm/kibana/services/KibanaDashboardService.js.map +1 -0
- package/lib/esm/kibana/services/KibanaDataViewService.js +1 -1
- package/lib/esm/kibana/services/KibanaDataViewService.js.map +1 -0
- package/lib/esm/kibana/services/KibanaRoleService.js +1 -1
- package/lib/esm/kibana/services/KibanaRoleService.js.map +1 -0
- package/lib/esm/kibana/services/KibanaService.js +1 -1
- package/lib/esm/kibana/services/KibanaService.js.map +1 -0
- package/lib/esm/kibana/services/KibanaSpaceService.js +1 -1
- package/lib/esm/kibana/services/KibanaSpaceService.js.map +1 -0
- package/lib/esm/kibana/services/KibanaUserService.js +1 -1
- package/lib/esm/kibana/services/KibanaUserService.js.map +1 -0
- package/lib/esm/kibana/services/index.js +1 -1
- package/lib/esm/kibana/services/index.js.map +1 -0
- package/lib/esm/kibana/services/runtime.js +1 -1
- package/lib/esm/kibana/services/runtime.js.map +1 -0
- package/lib/esm/kibana/types.js +1 -1
- package/lib/esm/kibana/types.js.map +1 -0
- package/lib/esm/loader/ObjectLoader.js +1 -1
- package/lib/esm/loader/ObjectLoader.js.map +1 -0
- package/lib/esm/loader/assets.js +1 -1
- package/lib/esm/loader/assets.js.map +1 -0
- package/lib/esm/loader/config.js +1 -1
- package/lib/esm/loader/config.js.map +1 -0
- package/lib/esm/loader/families.js +1 -1
- package/lib/esm/loader/families.js.map +1 -0
- package/lib/esm/loader/index.js +1 -1
- package/lib/esm/loader/index.js.map +1 -0
- package/lib/esm/loader/nest.js +1 -1
- package/lib/esm/loader/nest.js.map +1 -0
- package/lib/esm/loader/types.js +1 -1
- package/lib/esm/loader/types.js.map +1 -0
- package/lib/esm/namespaces/index.js +1 -1
- package/lib/esm/namespaces/index.js.map +1 -0
- package/lib/esm/namespaces/models/authorization-model.js +1 -1
- package/lib/esm/namespaces/models/authorization-model.js.map +1 -0
- package/lib/esm/namespaces/models/credential.model.js +1 -1
- package/lib/esm/namespaces/models/credential.model.js.map +1 -0
- package/lib/esm/namespaces/models/effective-permission.model.js +1 -1
- package/lib/esm/namespaces/models/effective-permission.model.js.map +1 -0
- package/lib/esm/namespaces/models/group-membership.model.js +1 -1
- package/lib/esm/namespaces/models/group-membership.model.js.map +1 -0
- package/lib/esm/namespaces/models/group.model.js +1 -1
- package/lib/esm/namespaces/models/group.model.js.map +1 -0
- package/lib/esm/namespaces/models/index.js +1 -1
- package/lib/esm/namespaces/models/index.js.map +1 -0
- package/lib/esm/namespaces/models/inheritance-block.model.js +1 -1
- package/lib/esm/namespaces/models/inheritance-block.model.js.map +1 -0
- package/lib/esm/namespaces/models/org-unit-closure.model.js +1 -1
- package/lib/esm/namespaces/models/org-unit-closure.model.js.map +1 -0
- package/lib/esm/namespaces/models/org-unit-membership.model.js +1 -1
- package/lib/esm/namespaces/models/org-unit-membership.model.js.map +1 -0
- package/lib/esm/namespaces/models/org-unit-profile.model.js +1 -1
- package/lib/esm/namespaces/models/org-unit-profile.model.js.map +1 -0
- package/lib/esm/namespaces/models/org-unit.model.js +1 -1
- package/lib/esm/namespaces/models/org-unit.model.js.map +1 -0
- package/lib/esm/namespaces/models/permission.model.js +1 -1
- package/lib/esm/namespaces/models/permission.model.js.map +1 -0
- package/lib/esm/namespaces/models/principal.model.js +1 -1
- package/lib/esm/namespaces/models/principal.model.js.map +1 -0
- package/lib/esm/namespaces/models/protected-resource.model.js +1 -1
- package/lib/esm/namespaces/models/protected-resource.model.js.map +1 -0
- package/lib/esm/namespaces/models/resource-grant.model.js +1 -1
- package/lib/esm/namespaces/models/resource-grant.model.js.map +1 -0
- package/lib/esm/namespaces/models/role-assignment.model.js +1 -1
- package/lib/esm/namespaces/models/role-assignment.model.js.map +1 -0
- package/lib/esm/namespaces/models/role-permission.model.js +1 -1
- package/lib/esm/namespaces/models/role-permission.model.js.map +1 -0
- package/lib/esm/namespaces/models/role.model.js +1 -1
- package/lib/esm/namespaces/models/role.model.js.map +1 -0
- package/lib/esm/namespaces/models/storage-binding.model.js +1 -1
- package/lib/esm/namespaces/models/storage-binding.model.js.map +1 -0
- package/lib/esm/namespaces/models/tenant-membership.model.js +1 -1
- package/lib/esm/namespaces/models/tenant-membership.model.js.map +1 -0
- package/lib/esm/namespaces/models/tenant-profile.model.js +1 -1
- package/lib/esm/namespaces/models/tenant-profile.model.js.map +1 -0
- package/lib/esm/namespaces/models/tenant.model.js +1 -1
- package/lib/esm/namespaces/models/tenant.model.js.map +1 -0
- package/lib/esm/namespaces/models/user.model.js +1 -1
- package/lib/esm/namespaces/models/user.model.js.map +1 -0
- package/lib/esm/namespaces/org-based-authorization-system.js +1 -1
- package/lib/esm/namespaces/org-based-authorization-system.js.map +1 -0
- package/lib/esm/namespaces/org-based-authorization-system.models.js +1 -1
- package/lib/esm/namespaces/org-based-authorization-system.models.js.map +1 -0
- package/lib/esm/namespaces/org-based-authorization-system.services.js +1 -1
- package/lib/esm/namespaces/org-based-authorization-system.services.js.map +1 -0
- package/lib/esm/namespaces/rls/index.js +1 -1
- package/lib/esm/namespaces/rls/index.js.map +1 -0
- package/lib/esm/namespaces/rls/principal-resolver.js +1 -1
- package/lib/esm/namespaces/rls/principal-resolver.js.map +1 -0
- package/lib/esm/namespaces/rls/rls-bootstrap.service.js +1 -1
- package/lib/esm/namespaces/rls/rls-bootstrap.service.js.map +1 -0
- package/lib/esm/namespaces/rls/rls.constants.js +1 -1
- package/lib/esm/namespaces/rls/rls.constants.js.map +1 -0
- package/lib/esm/namespaces/rls/rls.template.js +1 -1
- package/lib/esm/namespaces/rls/rls.template.js.map +1 -0
- package/lib/esm/namespaces/rls/rls.types.js +1 -1
- package/lib/esm/namespaces/rls/rls.types.js.map +1 -0
- package/lib/esm/namespaces/rls/session-binding.js +1 -1
- package/lib/esm/namespaces/rls/session-binding.js.map +1 -0
- package/lib/esm/namespaces/services/authz.service.js +1 -1
- package/lib/esm/namespaces/services/authz.service.js.map +1 -0
- package/lib/esm/namespaces/services/bootstrap.service.js +1 -1
- package/lib/esm/namespaces/services/bootstrap.service.js.map +1 -0
- package/lib/esm/namespaces/services/credential.service.js +1 -1
- package/lib/esm/namespaces/services/credential.service.js.map +1 -0
- package/lib/esm/namespaces/services/effective-permission.service.js +1 -1
- package/lib/esm/namespaces/services/effective-permission.service.js.map +1 -0
- package/lib/esm/namespaces/services/group-membership.service.js +1 -1
- package/lib/esm/namespaces/services/group-membership.service.js.map +1 -0
- package/lib/esm/namespaces/services/group.service.js +1 -1
- package/lib/esm/namespaces/services/group.service.js.map +1 -0
- package/lib/esm/namespaces/services/index.js +1 -1
- package/lib/esm/namespaces/services/index.js.map +1 -0
- package/lib/esm/namespaces/services/inheritance-block.service.js +1 -1
- package/lib/esm/namespaces/services/inheritance-block.service.js.map +1 -0
- package/lib/esm/namespaces/services/org-unit-closure.service.js +1 -1
- package/lib/esm/namespaces/services/org-unit-closure.service.js.map +1 -0
- package/lib/esm/namespaces/services/org-unit-membership.service.js +1 -1
- package/lib/esm/namespaces/services/org-unit-membership.service.js.map +1 -0
- package/lib/esm/namespaces/services/org-unit-profile.service.js +1 -1
- package/lib/esm/namespaces/services/org-unit-profile.service.js.map +1 -0
- package/lib/esm/namespaces/services/org-unit.service.js +1 -1
- package/lib/esm/namespaces/services/org-unit.service.js.map +1 -0
- package/lib/esm/namespaces/services/permission.service.js +1 -1
- package/lib/esm/namespaces/services/permission.service.js.map +1 -0
- package/lib/esm/namespaces/services/principal.service.js +1 -1
- package/lib/esm/namespaces/services/principal.service.js.map +1 -0
- package/lib/esm/namespaces/services/protected-resource.service.js +1 -1
- package/lib/esm/namespaces/services/protected-resource.service.js.map +1 -0
- package/lib/esm/namespaces/services/resource-grant.service.js +1 -1
- package/lib/esm/namespaces/services/resource-grant.service.js.map +1 -0
- package/lib/esm/namespaces/services/resource-lifecycle.service.js +1 -1
- package/lib/esm/namespaces/services/resource-lifecycle.service.js.map +1 -0
- package/lib/esm/namespaces/services/role-assignment.service.js +1 -1
- package/lib/esm/namespaces/services/role-assignment.service.js.map +1 -0
- package/lib/esm/namespaces/services/role-permission.service.js +1 -1
- package/lib/esm/namespaces/services/role-permission.service.js.map +1 -0
- package/lib/esm/namespaces/services/role.service.js +1 -1
- package/lib/esm/namespaces/services/role.service.js.map +1 -0
- package/lib/esm/namespaces/services/storage-binding.service.js +1 -1
- package/lib/esm/namespaces/services/storage-binding.service.js.map +1 -0
- package/lib/esm/namespaces/services/system-management.service.js +1 -1
- package/lib/esm/namespaces/services/system-management.service.js.map +1 -0
- package/lib/esm/namespaces/services/tenant-membership.service.js +1 -1
- package/lib/esm/namespaces/services/tenant-membership.service.js.map +1 -0
- package/lib/esm/namespaces/services/tenant-profile.service.js +1 -1
- package/lib/esm/namespaces/services/tenant-profile.service.js.map +1 -0
- package/lib/esm/namespaces/services/tenant.service.js +1 -1
- package/lib/esm/namespaces/services/tenant.service.js.map +1 -0
- package/lib/esm/namespaces/services/user.service.js +1 -1
- package/lib/esm/namespaces/services/user.service.js.map +1 -0
- package/lib/esm/namespaces/types.js +1 -1
- package/lib/esm/namespaces/types.js.map +1 -0
- package/lib/esm/namespaces/utils.js +1 -1
- package/lib/esm/namespaces/utils.js.map +1 -0
- package/lib/esm/nest/decorators.js +1 -1
- package/lib/esm/nest/decorators.js.map +1 -0
- package/lib/esm/nest/index.js +1 -1
- package/lib/esm/nest/index.js.map +1 -0
- package/lib/esm/nest/keycloakAuthHandler.js +1 -1
- package/lib/esm/nest/keycloakAuthHandler.js.map +1 -0
- package/lib/esm/nest/keycloakModule.js +1 -1
- package/lib/esm/nest/keycloakModule.js.map +1 -0
- package/lib/esm/nest/logging.js +1 -1
- package/lib/esm/nest/logging.js.map +1 -0
- package/lib/esm/nest/types.js +1 -1
- package/lib/esm/nest/types.js.map +1 -0
- package/lib/esm/nest/utils.js +1 -1
- package/lib/esm/nest/utils.js.map +1 -0
- package/lib/esm/plugins/contract.js +1 -1
- package/lib/esm/plugins/contract.js.map +1 -0
- package/lib/esm/plugins/index.js +1 -1
- package/lib/esm/plugins/index.js.map +1 -0
- package/lib/esm/plugins/kibana/host.js +1 -1
- package/lib/esm/plugins/kibana/host.js.map +1 -0
- package/lib/esm/plugins/kibana/index.js +1 -1
- package/lib/esm/plugins/kibana/index.js.map +1 -0
- package/lib/esm/plugins/kibana/installer.js +1 -1
- package/lib/esm/plugins/kibana/installer.js.map +1 -0
- package/lib/esm/plugins/kibana/manifest.js +1 -1
- package/lib/esm/plugins/kibana/manifest.js.map +1 -0
- package/lib/esm/plugins/kibana/templates.js +1 -1
- package/lib/esm/plugins/kibana/templates.js.map +1 -0
- package/lib/esm/plugins/kibana/types.js +1 -1
- package/lib/esm/plugins/kibana/types.js.map +1 -0
- package/lib/esm/plugins/superset/host.js +1 -1
- package/lib/esm/plugins/superset/host.js.map +1 -0
- package/lib/esm/plugins/superset/index.js +1 -1
- package/lib/esm/plugins/superset/index.js.map +1 -0
- package/lib/esm/plugins/superset/installer.js +1 -1
- package/lib/esm/plugins/superset/installer.js.map +1 -0
- package/lib/esm/plugins/superset/manifest.js +1 -1
- package/lib/esm/plugins/superset/manifest.js.map +1 -0
- package/lib/esm/plugins/superset/templates.js +1 -1
- package/lib/esm/plugins/superset/templates.js.map +1 -0
- package/lib/esm/plugins/superset/types.js +1 -1
- package/lib/esm/plugins/superset/types.js.map +1 -0
- package/lib/esm/redis/RedisContextLock.js +1 -1
- package/lib/esm/redis/RedisContextLock.js.map +1 -0
- package/lib/esm/redis/RedisDispatch.js +1 -1
- package/lib/esm/redis/RedisDispatch.js.map +1 -0
- package/lib/esm/redis/RedisPaginator.js +1 -1
- package/lib/esm/redis/RedisPaginator.js.map +1 -0
- package/lib/esm/redis/RedisStatement.js +1 -1
- package/lib/esm/redis/RedisStatement.js.map +1 -0
- package/lib/esm/redis/adapter.js +1 -1
- package/lib/esm/redis/adapter.js.map +1 -0
- package/lib/esm/redis/constants.js +1 -1
- package/lib/esm/redis/constants.js.map +1 -0
- package/lib/esm/redis/handlers.js +1 -1
- package/lib/esm/redis/handlers.js.map +1 -0
- package/lib/esm/redis/index.js +1 -1
- package/lib/esm/redis/index.js.map +1 -0
- package/lib/esm/redis/serialization.js +1 -1
- package/lib/esm/redis/serialization.js.map +1 -0
- package/lib/esm/redis/types.js +1 -1
- package/lib/esm/redis/types.js.map +1 -0
- package/lib/esm/secrets/InfraCredentialBootstrap.js +1 -1
- package/lib/esm/secrets/InfraCredentialBootstrap.js.map +1 -0
- package/lib/esm/secrets/aws/AwsSecretEnvironment.js +1 -1
- package/lib/esm/secrets/aws/AwsSecretEnvironment.js.map +1 -0
- package/lib/esm/secrets/aws/AwsSecretService.js +1 -1
- package/lib/esm/secrets/aws/AwsSecretService.js.map +1 -0
- package/lib/esm/secrets/aws/AwsSecretServiceConfig.js +1 -1
- package/lib/esm/secrets/aws/AwsSecretServiceConfig.js.map +1 -0
- package/lib/esm/secrets/aws/index.js +1 -1
- package/lib/esm/secrets/aws/index.js.map +1 -0
- package/lib/esm/secrets/azure/AzureKeyVaultSecretService.js +1 -1
- package/lib/esm/secrets/azure/AzureKeyVaultSecretService.js.map +1 -0
- package/lib/esm/secrets/azure/AzureKeyVaultSecretServiceConfig.js +1 -1
- package/lib/esm/secrets/azure/AzureKeyVaultSecretServiceConfig.js.map +1 -0
- package/lib/esm/secrets/azure/AzureSecretEnvironment.js +1 -1
- package/lib/esm/secrets/azure/AzureSecretEnvironment.js.map +1 -0
- package/lib/esm/secrets/azure/index.js +1 -1
- package/lib/esm/secrets/azure/index.js.map +1 -0
- package/lib/esm/secrets/core/ClientBasedSecretService.js +1 -1
- package/lib/esm/secrets/core/ClientBasedSecretService.js.map +1 -0
- package/lib/esm/secrets/core/SecretEnvironment.js +1 -1
- package/lib/esm/secrets/core/SecretEnvironment.js.map +1 -0
- package/lib/esm/secrets/core/SecretErrors.js +1 -1
- package/lib/esm/secrets/core/SecretErrors.js.map +1 -0
- package/lib/esm/secrets/core/SecretName.js +1 -1
- package/lib/esm/secrets/core/SecretName.js.map +1 -0
- package/lib/esm/secrets/core/SecretReference.js +1 -1
- package/lib/esm/secrets/core/SecretReference.js.map +1 -0
- package/lib/esm/secrets/core/SecretSerialization.js +1 -1
- package/lib/esm/secrets/core/SecretSerialization.js.map +1 -0
- package/lib/esm/secrets/core/SecretService.js +1 -1
- package/lib/esm/secrets/core/SecretService.js.map +1 -0
- package/lib/esm/secrets/core/SecretTypes.js +1 -1
- package/lib/esm/secrets/core/SecretTypes.js.map +1 -0
- package/lib/esm/secrets/core/index.js +1 -1
- package/lib/esm/secrets/core/index.js.map +1 -0
- package/lib/esm/secrets/fs/FsSecretEnvironment.js +1 -1
- package/lib/esm/secrets/fs/FsSecretEnvironment.js.map +1 -0
- package/lib/esm/secrets/fs/FsSecretService.js +1 -1
- package/lib/esm/secrets/fs/FsSecretService.js.map +1 -0
- package/lib/esm/secrets/fs/FsSecretServiceConfig.js +1 -1
- package/lib/esm/secrets/fs/FsSecretServiceConfig.js.map +1 -0
- package/lib/esm/secrets/fs/index.js +1 -1
- package/lib/esm/secrets/fs/index.js.map +1 -0
- package/lib/esm/secrets/gcp/GcpSecretEnvironment.js +1 -1
- package/lib/esm/secrets/gcp/GcpSecretEnvironment.js.map +1 -0
- package/lib/esm/secrets/gcp/GcpSecretManagerService.js +1 -1
- package/lib/esm/secrets/gcp/GcpSecretManagerService.js.map +1 -0
- package/lib/esm/secrets/gcp/GcpSecretManagerServiceConfig.js +1 -1
- package/lib/esm/secrets/gcp/GcpSecretManagerServiceConfig.js.map +1 -0
- package/lib/esm/secrets/gcp/index.js +1 -1
- package/lib/esm/secrets/gcp/index.js.map +1 -0
- package/lib/esm/secrets/index.js +1 -1
- package/lib/esm/secrets/index.js.map +1 -0
- package/lib/esm/secrets/kubernetes/KubernetesSecretEnvironment.js +1 -1
- package/lib/esm/secrets/kubernetes/KubernetesSecretEnvironment.js.map +1 -0
- package/lib/esm/secrets/kubernetes/KubernetesSecretService.js +1 -1
- package/lib/esm/secrets/kubernetes/KubernetesSecretService.js.map +1 -0
- package/lib/esm/secrets/kubernetes/KubernetesSecretServiceConfig.js +1 -1
- package/lib/esm/secrets/kubernetes/KubernetesSecretServiceConfig.js.map +1 -0
- package/lib/esm/secrets/kubernetes/index.js +1 -1
- package/lib/esm/secrets/kubernetes/index.js.map +1 -0
- package/lib/esm/secrets/model/ModelSecretCrypto.js +1 -1
- package/lib/esm/secrets/model/ModelSecretCrypto.js.map +1 -0
- package/lib/esm/secrets/model/ModelSecretEnvironment.js +1 -1
- package/lib/esm/secrets/model/ModelSecretEnvironment.js.map +1 -0
- package/lib/esm/secrets/model/ModelSecretService.js +1 -1
- package/lib/esm/secrets/model/ModelSecretService.js.map +1 -0
- package/lib/esm/secrets/model/ModelSecretServiceConfig.js +1 -1
- package/lib/esm/secrets/model/ModelSecretServiceConfig.js.map +1 -0
- package/lib/esm/secrets/model/Secret.js +1 -1
- package/lib/esm/secrets/model/Secret.js.map +1 -0
- package/lib/esm/secrets/model/index.js +1 -1
- package/lib/esm/secrets/model/index.js.map +1 -0
- package/lib/esm/secrets/onepassword/OnePasswordSecretEnvironment.js +1 -1
- package/lib/esm/secrets/onepassword/OnePasswordSecretEnvironment.js.map +1 -0
- package/lib/esm/secrets/onepassword/OnePasswordSecretService.js +1 -1
- package/lib/esm/secrets/onepassword/OnePasswordSecretService.js.map +1 -0
- package/lib/esm/secrets/onepassword/OnePasswordSecretServiceConfig.js +1 -1
- package/lib/esm/secrets/onepassword/OnePasswordSecretServiceConfig.js.map +1 -0
- package/lib/esm/secrets/onepassword/index.js +1 -1
- package/lib/esm/secrets/onepassword/index.js.map +1 -0
- package/lib/esm/secrets/vault/VaultSecretEnvironment.js +1 -1
- package/lib/esm/secrets/vault/VaultSecretEnvironment.js.map +1 -0
- package/lib/esm/secrets/vault/VaultSecretService.js +1 -1
- package/lib/esm/secrets/vault/VaultSecretService.js.map +1 -0
- package/lib/esm/secrets/vault/VaultSecretServiceConfig.js +1 -1
- package/lib/esm/secrets/vault/VaultSecretServiceConfig.js.map +1 -0
- package/lib/esm/secrets/vault/index.js +1 -1
- package/lib/esm/secrets/vault/index.js.map +1 -0
- package/lib/esm/sftp/aws/AwsSftpEnvironment.js +1 -1
- package/lib/esm/sftp/aws/AwsSftpEnvironment.js.map +1 -0
- package/lib/esm/sftp/aws/AwsSftpService.js +1 -1
- package/lib/esm/sftp/aws/AwsSftpService.js.map +1 -0
- package/lib/esm/sftp/aws/index.js +1 -1
- package/lib/esm/sftp/aws/index.js.map +1 -0
- package/lib/esm/sftp/core/SftpEnvironment.js +1 -1
- package/lib/esm/sftp/core/SftpEnvironment.js.map +1 -0
- package/lib/esm/sftp/core/SftpSource.js +1 -1
- package/lib/esm/sftp/core/SftpSource.js.map +1 -0
- package/lib/esm/sftp/core/index.js +1 -1
- package/lib/esm/sftp/core/index.js.map +1 -0
- package/lib/esm/sftp/index.js +1 -1
- package/lib/esm/sftp/index.js.map +1 -0
- package/lib/esm/sftp/ssh2/Ssh2SftpEnvironment.js +1 -1
- package/lib/esm/sftp/ssh2/Ssh2SftpEnvironment.js.map +1 -0
- package/lib/esm/sftp/ssh2/Ssh2SftpService.js +1 -1
- package/lib/esm/sftp/ssh2/Ssh2SftpService.js.map +1 -0
- package/lib/esm/sftp/ssh2/index.js +1 -1
- package/lib/esm/sftp/ssh2/index.js.map +1 -0
- package/lib/esm/shared/environmentValue.js +1 -1
- package/lib/esm/shared/environmentValue.js.map +1 -0
- package/lib/esm/shared/http/HttpApiService.js +1 -1
- package/lib/esm/shared/http/HttpApiService.js.map +1 -0
- package/lib/esm/shared/http/hermeticBoot.js +1 -1
- package/lib/esm/shared/http/hermeticBoot.js.map +1 -0
- package/lib/esm/shared/http/index.js +1 -1
- package/lib/esm/shared/http/index.js.map +1 -0
- package/lib/esm/shared/runtime.js +1 -1
- package/lib/esm/shared/runtime.js.map +1 -0
- package/lib/esm/user-requests/index.js +1 -1
- package/lib/esm/user-requests/index.js.map +1 -0
- package/lib/esm/utils.js +1 -1
- package/lib/esm/utils.js.map +1 -0
- package/lib/types/index.d.cts +2 -2
- package/lib/types/index.d.mts +2 -2
- package/package.json +74 -50
|
@@ -262,5 +262,5 @@ class AirtableService extends index_js_1.HttpApiService {
|
|
|
262
262
|
}
|
|
263
263
|
}
|
|
264
264
|
exports.AirtableService = AirtableService;
|
|
265
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQWlydGFibGVTZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2lvL2FpcnRhYmxlL0FpcnRhYmxlU2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7O0dBU0c7QUFDSCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGFBQWEsRUFBRSw0QkFBdUI7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsMkNBQXNDO0FBQ3JFLE9BQU8sRUFDTCxjQUFjLEVBRWQsU0FBUyxHQUNWLHFDQUEwQjtBQTJHM0I7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBMEJHO0FBQ0gsTUFBTSxPQUFPLGVBQWdCLFNBQVEsY0FBcUM7SUFBMUU7O1FBQ0U7O1dBRUc7UUFDZ0IsZ0JBQVcsR0FBRyxVQUFVLENBQUM7SUF5UDlDLENBQUM7SUF2UEM7Ozs7T0FJRztJQUNPLGNBQWM7UUFDdEIsT0FBTyw2QkFBNkIsQ0FBQztJQUN2QyxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ08sV0FBVyxDQUFDLE1BQTZCO1FBQ2pELE9BQU8sTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxhQUFhLEVBQUUsVUFBVSxNQUFNLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQ3pFLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDTyxxQkFBcUI7UUFDN0IsTUFBTSxHQUFHLEdBQUcsYUFBYSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUM7UUFDdEMsTUFBTSxLQUFLLEdBQUcsU0FBUyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNwQyxJQUFJLENBQUMsS0FBSztZQUFFLE9BQU8sU0FBUyxDQUFDO1FBQzdCLE9BQU87WUFDTCxLQUFLO1lBQ0wsTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsTUFBTSxD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Q0FBQyxDQUFDO1FBQ3RELENBQUM7SUFDSCxDQUFDO0lBRUQ7Ozs7Ozs7Ozs7OztPQVlHO0lBQ0gsS0FBSyxDQUFDLFlBQVksQ0FDaEIsS0FBYSxFQUNiLFFBQWdCLEVBQ2hCLE1BQWU7UUFFZixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDcEIsSUFBSSxDQUFDO1lBQ0gsTUFBTSxRQUFRLEdBQUcsTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FJdkMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsSUFBSSxrQkFBa0IsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUNuRSxDQUFDO1lBQ0YsT0FBTyxRQUFRLENBQUMsSUFBSSxDQUFDO1FBQ3ZCLENBQUM7UUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1lBQ2YsTUFBTSxTQUFTLENBQUMsVUFBVSxFQUFFLGVBQWUsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUN0RCxDQUFDO0lBQ0gsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbW9kdWxlIGludGVncmF0aW9ucy9pby9haXJ0YWJsZS9zZXJ2aWNlXG4gKiBAc3VtbWFyeSBBaXJ0YWJsZSBXZWIgQVBJIGludGVncmF0aW9uIHNlcnZpY2UgZm9yIENSVUQgb3BlcmF0aW9ucyBvbiBiYXNlIHJlY29yZHMuXG4gKiBAZGVzY3JpcHRpb24gRXhwb3NlcyB0aGUgQWlydGFibGUgdjAgcmVjb3JkcyBBUEkgKGxpc3QsIGdldCwgY3JlYXRlLCB1cGRhdGUsXG4gKiBkZWxldGUpIGFzIGFuIHVuZGVjb3JhdGVkIGNsaWVudC1iYXNlZCBzZXJ2aWNlIGJ1aWx0IG9uXG4gKiB7QGxpbmsgSHR0cEFwaVNlcnZpY2V9LiBDb25maWd1cmF0aW9uIGNvbWVzIGZyb20gYW4gZXhwbGljaXRcbiAqIGBBaXJ0YWJsZVNlcnZpY2VDb25maWdgIG9yIHRoZSBgaW8uYWlydGFibGVgIGVudmlyb25tZW50IHNsaWNlOyBiYXNlXG4gKiB0YXJnZXRzIGRlZmF1bHQgdG8gdGhlIGNvbmZpZ3VyZWQgYGJhc2VJZGAgYW5kIGNhbiBiZSBvdmVycmlkZGVuIHBlciBjYWxsLlxuICogRmFpbHVyZXMgYXJlIG1hcHBlZCB0byBkZWNhZiBlcnJvcnMgdmlhIHtAbGluayBodHRwRXJyb3J9LlxuICovXG5pbXBvcnQgeyBJbnRlcm5hbEVycm9yIH0gZnJvbSBcIkBkZWNhZi10cy9kYi1kZWNvcmF0b3JzXCI7XG5pbXBvcnQgeyBJb0Vudmlyb25tZW50IH0gZnJvbSBcIi4uL2Vudmlyb25tZW50XCI7XG5pbXBvcnQgeyBlbnZOdW1iZXIsIGVudlN0cmluZyB9IGZyb20gXCIuLi8uLi9zaGFyZWQvZW52aXJvbm1lbnRWYWx1ZVwiO1xuaW1wb3J0IHtcbiAgSHR0cEFwaVNlcnZpY2UsXG4gIHR5cGUgSHR0cEFwaVNlcnZpY2VDb25maWcsXG4gIGh0dHBFcnJvcixcbn0gZnJvbSBcIi4uLy4uL3NoYXJlZC9odHRwXCI7XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uIENvbmZpZ3VyYXRpb24gZm9yIHRoZSBBaXJ0YWJsZSBzZXJ2aWNlXG4gKiBAc3VtbWFyeSBFeHRlbmRzIHtAbGluayBIdHRwQXBpU2VydmljZUNvbmZpZ30gd2l0aCB0aGUgQWlydGFibGUgcGVyc29uYWxcbiAqIGFjY2VzcyB0b2tlbiAoc2VudCBhcyBhIGJlYXJlciB0b2tlbikgYW5kIHRoZSBkZWZhdWx0IGBiYXNlSWRgIHVzZWQgd2hlbiBhXG4gKiBjYWxsIGRvZXMgbm90IG92ZXJyaWRlIGl0LiBXaGVuIG9taXR0ZWQsIHRoZSBgaW8uYWlydGFibGVgIGVudmlyb25tZW50XG4gKiBzbGljZSBzdXBwbGllcyB0aGUgdG9rZW4gKGFuZCBvcHRpb25hbCBgYmFzZUlkYCwgYGJhc2VVcmxgLCBgdGltZW91dGApLlxuICogQGNhdGVnb3J5IElPXG4gKiBAbWVtYmVyT2YgbW9kdWxlOmludGVncmF0aW9ucy9pby9haXJ0YWJsZS9zZXJ2aWNlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQWlydGFibGVTZXJ2aWNlQ29uZmlnIGV4dGVuZHMgSHR0cEFwaVNlcnZpY2VDb25maWcge1xuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIEFpcnRhYmxlIHBlcnNvbmFsIGFjY2VzcyB0b2tlblxuICAgKiBAc3VtbWFyeSBTZW50IGFzIGBBdXRob3JpemF0aW9uOiBCZWFyZXIgPHRva2VuPmAgd2l0aCBldmVyeSBBUEkgY2FsbC5cbiAgICovXG4gIHRva2VuPzogc3RyaW5nO1xuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIERlZmF1bHQgYmFzZSBJRCB1c2VkIHdoZW4gYSBjYWxsIGRvZXMgbm90IG92ZXJyaWRlIGl0XG4gICAqL1xuICBiYXNlSWQ/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uIE5vcm1hbGl6ZWQgQWlydGFibGUgcmVjb3JkIGRlc2NyaXB0b3JcbiAqIEBzdW1tYXJ5IFRoZSBBaXJ0YWJsZSByZWNvcmQgZW52ZWxvcGU6IHRoZSByZWNvcmQgYGlkYCwgdGhlIGBmaWVsZHNgIG1hcFxuICogKGNvbHVtbiBuYW1lIHRvIHZhbHVlKSwgYW5kIHRoZSBvcHRpb25hbCBgY3JlYXRlZFRpbWVgIHRpbWVzdGFtcC5cbiAqIEBjYXRlZ29yeSBJT1xuICogQG1lbWJlck9mIG1vZHVsZTppbnRlZ3JhdGlvbnMvaW8vYWlydGFibGUvc2VydmljZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIEFpcnRhYmxlUmVjb3JkIHtcbiAgaWQ6IHN0cmluZztcbiAgZmllbGRzOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcbiAgY3JlYXRlZFRpbWU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uIE9wdGlvbnMgZm9yIGxpc3RpbmcgQWlydGFibGUgcmVjb3Jkc1xuICogQHN1bW1hcnkgQ2FycmllcyB0aGUgcmVxdWlyZWQgYHRhYmxlYCBuYW1lIHBsdXMgdGhlIHZpZXcsIGZvcm11bGEgZmlsdGVyLFxuICogcmVjb3JkIGNhcHMgYW5kIHBhZ2luZyBvZmZzZXQsIGZpZWxkIHByb2plY3Rpb24sIGFuZCBmaXJzdC1zb3J0IGNvbmZpZ3VyYXRpb25cbiAqIEFpcnRhYmxlIHN1cHBvcnRzLiBPbmx5IHRoZSBmaXJzdCBzb3J0IGVudHJ5IGlzIHNlbnQgKEFpcnRhYmxlJ3NcbiAqIGBzb3J0WzBdW2ZpZWxkXWAvYHNvcnRbMF1bZGlyZWN0aW9uXWAgcXVlcnkgcGFyYW1ldGVycyk7IHBhZ2luZyB3b3JrcyBieVxuICogcGFzc2luZyB0aGUgcHJldmlvdXMgcGFnZSdzIGBvZmZzZXRgIGJhY2sgYXMgYG9mZnNldGAuXG4gKiBAY2F0ZWdvcnkgSU9cbiAqIEBtZW1iZXJPZiBtb2R1bGU6aW50ZWdyYXRpb25zL2lvL2FpcnRhYmxlL3NlcnZpY2VcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBaXJ0YWJsZUxpc3RPcHRpb25zIHtcbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBUYWJsZSBuYW1lIG9yIElEIHRvIGxpc3QgcmVjb3JkcyBmcm9tIChyZXF1aXJlZClcbiAgICovXG4gIHRhYmxlOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gVmlldyBuYW1lIG9yIElEIHRvIHJlc3RyaWN0IHRoZSBsaXN0aW5nIHRvXG4gICAqL1xuICB2aWV3Pzogc3RyaW5nO1xuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIEFpcnRhYmxlIGZvcm11bGEgcmVzdHJpY3RpbmcgdGhlIHJldHVybmVkIHJlY29yZHMgKGUuZy4gYFwie1N0YXR1c30gPSAnQWN0aXZlJ1wiYClcbiAgICovXG4gIGZpbHRlckJ5Rm9ybXVsYT86IHN0cmluZztcbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBNYXhpbXVtIG51bWJlciBvZiByZWNvcmRzIHRvIHJldHVybiBpbiB0b3RhbFxuICAgKi9cbiAgbWF4UmVjb3Jkcz86IG51bWJlcjtcbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBOdW1iZXIgb2YgcmVjb3JkcyBwZXIgcGFnZVxuICAgKi9cbiAgcGFnZVNpemU/OiBudW1iZXI7XG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gVGhlIGBvZmZzZXRgIGZyb20gdGhlIHByZXZpb3VzIHBhZ2UncyByZXN1bHRcbiAgICovXG4gIG9mZnNldD86IHN0cmluZztcbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBDb2x1bW4gbmFtZXMgdG8gcHJvamVjdFxuICAgKi9cbiAgZmllbGRzPzogc3RyaW5nW107XG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gRmlyc3Qgc29ydCBlbnRyeSBhcHBsaWVkIHRvIHRoZSBsaXN0aW5nXG4gICAqL1xuICBzb3J0PzogQXJyYXk8eyBmaWVsZDogc3RyaW5nOyBkaXJlY3Rpb24/OiBcImFzY1wiIHwgXCJkZXNjXCIgfT47XG59XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uIFJlc3VsdCBvZiBhbiBBaXJ0YWJsZSByZWNvcmQgbGlzdGluZ1xuICogQHN1bW1hcnkgQ2FycmllcyB0aGUgcGFnZSBvZiBgcmVjb3Jkc2AgYW5kIHRoZSBgb2Zmc2V0YCBjdXJzb3IgdG8gcGFzcyBiYWNrXG4gKiBhcyBgQWlydGFibGVMaXN0T3B0aW9ucy5vZmZzZXRgIHdoZW4gbW9yZSBwYWdlcyBleGlzdC5cbiAqIEBjYXRlZ29yeSBJT1xuICogQG1lbWJlck9mIG1vZHVsZTppbnRlZ3JhdGlvbnMvaW8vYWlydGFibGUvc2VydmljZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIEFpcnRhYmxlTGlzdFJlc3VsdCB7XG4gIHJlY29yZHM6IEFpcnRhYmxlUmVjb3JkW107XG4gIG9mZnNldD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBAZGVzY3JpcHRpb24gSW5wdXQgZm9yIGNyZWF0aW5nIG9yIHVwZGF0aW5nIGFuIEFpcnRhYmxlIHJlY29yZFxuICogQHN1bW1hcnkgQ2FycmllcyB0aGUgcmVxdWlyZWQgYHRhYmxlYCBuYW1lLCB0aGUgYGZpZWxkc2AgbWFwIHRvIHdyaXRlLCBhbmRcbiAqIHRoZSBgdHlwZWNhc3RgIGZsYWcgbGV0dGluZyBBaXJ0YWJsZSBjb252ZXJ0IHZhbHVlcyB0byB0aGUgY29sdW1uIHR5cGVzLlxuICogYHVwZGF0ZVJlY29yZGAgYWRkaXRpb25hbGx5IGNhcnJpZXMgdGhlIGByZWNvcmRJZGAuXG4gKiBAY2F0ZWdvcnkgSU9cbiAqIEBtZW1iZXJPZiBtb2R1bGU6aW50ZWdyYXRpb25zL2lvL2FpcnRhYmxlL3NlcnZpY2VcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBaXJ0YWJsZVdyaXRlSW5wdXQge1xuICB0YWJsZTogc3RyaW5nO1xuICBmaWVsZHM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuICB0eXBlY2FzdD86IGJvb2xlYW47XG59XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uIEFpcnRhYmxlIFdlYiBBUEkgaW50ZWdyYXRpb24gc2VydmljZVxuICogQHN1bW1hcnkgQW4gdW5kZWNvcmF0ZWQgSFRUUCBzZXJ2aWNlIGZvciBsaXN0aW5nIHJlY29yZHNcbiAqIHdpdGggZmlsdGVyaW5nLCBzb3J0aW5nLCBhbmQgY3Vyc29yIHBhZ2luZzsgZmV0Y2hpbmcsIGNyZWF0aW5nLCB1cGRhdGluZyxcbiAqIGFuZCBkZWxldGluZyBpbmRpdmlkdWFsIHJlY29yZHMuIEJhc2UgdGFyZ2V0cyByZXNvbHZlIHBlciBjYWxsIGZyb20gdGhlXG4gKiBgYmFzZUlkYCBhcmd1bWVudCwgZmFsbGluZyBiYWNrIHRvIHRoZSBjb25maWd1cmVkIHZhbHVlLCBhbmQgdGhyb3dcbiAqIGBJbnRlcm5hbEVycm9yYCB3aGVuIHVucmVzb2x2ZWQuIEV2ZXJ5IG9wZXJhdGlvbiByZXF1aXJlcyBhIHRva2VuXG4gKiAoYHJlcXVpcmVUb2tlbigpYCksIGFuZCB0cmFuc3BvcnQgZmFpbHVyZXMgYXJlIG1hcHBlZCB0byBkZWNhZiBlcnJvcnMgdmlhXG4gKiB7QGxpbmsgaHR0cEVycm9yfS5cbiAqIEBjbGFzcyBBaXJ0YWJsZVNlcnZpY2VcbiAqIEBjYXRlZ29yeSBJT1xuICogQGV4YW1wbGVcbiAqIGBgYHRzXG4gKiBpbXBvcnQgeyBBaXJ0YWJsZVNlcnZpY2UgfSBmcm9tIFwiQGRlY2FmLXRzL2ludGVncmF0aW9ucy9pby9haXJ0YWJsZVwiO1xuICpcbiAqIGNvbnN0IGFpcnRhYmxlID0gbmV3IEFpcnRhYmxlU2VydmljZSgpO1xuICogYXdhaXQgYWlydGFibGUuaW5pdGlhbGl6ZSh7XG4gKiAgIHRva2VuOiBwcm9jZXNzLmVudi5HUkFQSF9DUkVERU5USUFMX0FJUlRBQkxFX1RPS0VOLFxuICogICBiYXNlSWQ6IFwiYXBwRXhhbXBsZUJhc2VcIixcbiAqIH0pO1xuICogY29uc3QgY3JlYXRlZCA9IGF3YWl0IGFpcnRhYmxlLmNyZWF0ZVJlY29yZCh7XG4gKiAgIHRhYmxlOiBcIlRhc2tzXCIsXG4gKiAgIGZpZWxkczogeyBOYW1lOiBcIlNoaXAgcmVsZWFzZVwiLCBTdGF0dXM6IFwiVG9kb1wiIH0sXG4gKiB9KTtcbiAqIGBgYFxuICogQG1lbWJlck9mIG1vZHVsZTppbnRlZ3JhdGlvbnMvaW8vYWlydGFibGUvc2VydmljZVxuICovXG5leHBvcnQgY2xhc3MgQWlydGFibGVTZXJ2aWNlIGV4dGVuZHMgSHR0cEFwaVNlcnZpY2U8QWlydGFibGVTZXJ2aWNlQ29uZmlnPiB7XG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gVGhlIHByb3ZpZGVyIG5hbWUgdXNlZCBpbiBlcnJvciBtZXNzYWdlc1xuICAgKi9cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHNlcnZpY2VOYW1lID0gXCJBaXJ0YWJsZVwiO1xuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gVGhlIEFpcnRhYmxlIFdlYiBBUEkgdjAgYmFzZSBVUkxcbiAgICogQHN1bW1hcnkgVXNlZCB3aGVuIHRoZSByZXNvbHZlZCBjb25maWcgY2FycmllcyBubyBgYmFzZVVybGAuXG4gICAqIEByZXR1cm5zIHtzdHJpbmd9IGBcImh0dHBzOi8vYXBpLmFpcnRhYmxlLmNvbS92MFwiYC5cbiAgICovXG4gIHByb3RlY3RlZCBkZWZhdWx0QmFzZVVybCgpOiBzdHJpbmcge1xuICAgIHJldHVybiBcImh0dHBzOi8vYXBpLmFpcnRhYmxlLmNvbS92MFwiO1xuICB9XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBCdWlsZHMgdGhlIEFpcnRhYmxlIGJlYXJlciBhdXRob3JpemF0aW9uIGhlYWRlcnNcbiAgICogQHN1bW1hcnkgUmV0dXJucyB0aGUgYEF1dGhvcml6YXRpb246IEJlYXJlciA8dG9rZW4+YCBoZWFkZXIgd2hlbiB0aGVcbiAgICogY29uZmlnIGNhcnJpZXMgYSB0b2tlbiwgYW5kIG5vIGhlYWRlcnMgb3RoZXJ3aXNlLlxuICAgKiBAcGFyYW0ge0FpcnRhYmxlU2VydmljZUNvbmZpZ30gY29uZmlnIC0gVGhlIHJlc29sdmVkIHNlcnZpY2UgY29uZmlndXJhdGlvbi5cbiAgICogQHJldHVybnMge1JlY29yZDxzdHJpbmcsIHN0cmluZz59IFRoZSBhdXRob3JpemF0aW9uIGhlYWRlcnMgKGVtcHR5IHdpdGhvdXQgYSB0b2tlbikuXG4gICAqL1xuICBwcm90ZWN0ZWQgYXV0aEhlYWRlcnMoY29uZmlnOiBBaXJ0YWJsZVNlcnZpY2VDb25maWcpOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+IHtcbiAgICByZXR1cm4gY29uZmlnLnRva2VuID8geyBBdXRob3JpemF0aW9uOiBgQmVhcmVyICR7Y29uZmlnLnRva2VufWAgfSA6IHt9O1xuICB9XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBSZWFkcyB0aGUgQWlydGFibGUgY3JlZGVudGlhbHMgYW5kIGRlZmF1bHRzIGZyb20gdGhlIGVudmlyb25tZW50XG4gICAqIEBzdW1tYXJ5IFJlYWRzIHRoZSBgaW8uYWlydGFibGVgIGVudmlyb25tZW50IHNsaWNlIGFuZCByZXR1cm5zIGEgcGFydGlhbFxuICAgKiBjb25maWcgd2hlbiBhIHRva2VuIGlzIGNvbmZpZ3VyZWQsIGB1bmRlZmluZWRgIG90aGVyd2lzZS4gVmFsdWVzIHBhc3NcbiAgICogdGhyb3VnaCBgZW52U3RyaW5nYC9gZW52TnVtYmVyYCB0byByZWplY3QgdW5zZXQtbGVhZiBwcm94aWVzLlxuICAgKiBAcmV0dXJucyB7UGFydGlhbDxBaXJ0YWJsZVNlcnZpY2VDb25maWc+IHwgdW5kZWZpbmVkfSBBIHBhcnRpYWwgY29uZmlnLCBvciBgdW5kZWZpbmVkYCB3aGVuIG5vIEFpcnRhYmxlIHRva2VuIGlzIGNvbmZpZ3VyZWQuXG4gICAqL1xuICBwcm90ZWN0ZWQgY29uZmlnRnJvbUVudmlyb25tZW50KCk6IFBhcnRpYWw8QWlydGFibGVTZXJ2aWNlQ29uZmlnPiB8IHVuZGVmaW5lZCB7XG4gICAgY29uc3QgZW52ID0gSW9FbnZpcm9ubWVudC5pby5haXJ0YWJsZTtcbiAgICBjb25zdCB0b2tlbiA9IGVudlN0cmluZyhlbnY/LnRva2VuKTtcbiAgICBpZiAoIXRva2VuKSByZXR1cm4gdW5kZWZpbmVkO1xuICAgIHJldHVybiB7XG4gICAgICB0b2tlbixcbiAgICAgIGJhc2VJZDogZW52U3RyaW5nKGVudi5iYXNlSWQpLFxuICAgICAgYmFzZVVybDogZW52U3RyaW5nKGVudi5iYXNlVXJsKSxcbiAgICAgIHRpbWVvdXQ6IGVudk51bWJlcihlbnYudGltZW91dCksXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gUmVzb2x2ZXMgdGhlIFVSTC1lbmNvZGVkIGJhc2UgcGF0aCBmb3IgYSBjYWxsXG4gICAqIEBzdW1tYXJ5IEJ1aWxkcyBgLzxiYXNlSWQ+YCBmcm9tIHRoZSBnaXZlbiBiYXNlIElELCBmYWxsaW5nIGJhY2sgdG8gdGhlXG4gICAqIGNvbmZpZ3VyZWQgdmFsdWUsIGFuZCB0aHJvd3Mgd2hlbiBuZWl0aGVyIGlzIGF2YWlsYWJsZS5cbiAgICogQHBhcmFtIHtzdHJpbmd9IFtiYXNlSWRdIC0gVGhlIHBlci1jYWxsIGJhc2Ugb3ZlcnJpZGUuXG4gICAqIEByZXR1cm5zIHtzdHJpbmd9IFRoZSBVUkwtZW5jb2RlZCBiYXNlIEFQSSBwYXRoLlxuICAgKiBAdGhyb3dzIHtJbnRlcm5hbEVycm9yfSBXaGVuIG5laXRoZXIgdGhlIGlucHV0IG5vciB0aGUgY29uZmlnIHlpZWxkcyBhIGJhc2UgSUQuXG4gICAqL1xuICBwcm90ZWN0ZWQgYmFzZVBhdGgoYmFzZUlkPzogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBjb25zdCByZXNvbHZlZCA9IGJhc2VJZCA/PyB0aGlzLmNvbmZpZy5iYXNlSWQ7XG4gICAgaWYgKCFyZXNvbHZlZCkge1xuICAgICAgdGhyb3cgbmV3IEludGVybmFsRXJyb3IoXCJBaXJ0YWJsZSByZXF1aXJlcyBhIGJhc2UgSURcIik7XG4gICAgfVxuICAgIHJldHVybiBgLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHJlc29sdmVkKX1gO1xuICB9XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBSZXNvbHZlcyB0aGUgVVJMLWVuY29kZWQgdGFibGUgcGF0aCBmb3IgYSBjYWxsXG4gICAqIEBzdW1tYXJ5IEJ1aWxkcyBgPGJhc2VQYXRoPi88dGFibGU+YCB3aXRoIGJvdGggc2VnbWVudHMgVVJMLWVuY29kZWQsIGFuZFxuICAgKiB0aHJvd3Mgd2hlbiB0aGUgdGFibGUgbmFtZSBpcyBlbXB0eSAob3IgdGhlIGJhc2UgY2Fubm90IGJlIHJlc29sdmVkKS5cbiAgICogQHBhcmFtIHtzdHJpbmd9IHRhYmxlIC0gVGhlIHRhYmxlIG5hbWUgb3IgSUQuXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBbYmFzZUlkXSAtIFRoZSBwZXItY2FsbCBiYXNlIG92ZXJyaWRlLlxuICAgKiBAcmV0dXJucyB7c3RyaW5nfSBUaGUgVVJMLWVuY29kZWQgdGFibGUgQVBJIHBhdGguXG4gICAqIEB0aHJvd3Mge0ludGVybmFsRXJyb3J9IFdoZW4gdGhlIHRhYmxlIG5hbWUgaXMgZW1wdHkgb3IgdGhlIGJhc2UgSUQgY2Fubm90IGJlIHJlc29sdmVkLlxuICAgKi9cbiAgcHJvdGVjdGVkIHRhYmxlUGF0aCh0YWJsZTogc3RyaW5nLCBiYXNlSWQ/OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGlmICghdGFibGUpIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKFwiQWlydGFibGUgcmVxdWlyZXMgYSB0YWJsZSBuYW1lXCIpO1xuICAgIHJldHVybiBgJHt0aGlzLmJhc2VQYXRoKGJhc2VJZCl9LyR7ZW5jb2RlVVJJQ29tcG9uZW50KHRhYmxlKX1gO1xuICB9XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBMaXN0cyByZWNvcmRzIGluIGFuIEFpcnRhYmxlIHRhYmxlIHdpdGggY3Vyc29yIHBhZ2luZ1xuICAgKiBAc3VtbWFyeSBgR0VUYHMgdGhlIHRhYmxlIGVuZHBvaW50IHdpdGggdGhlIGNvbmZpZ3VyZWQgdmlldywgZm9ybXVsYVxuICAgKiBmaWx0ZXIsIHJlY29yZCBjYXBzLCBwYWdlIHNpemUsIHBhZ2Ugb2Zmc2V0LCBmaWVsZCBwcm9qZWN0aW9uLCBhbmQgZmlyc3RcbiAgICogc29ydCBlbnRyeS4gUmV0dXJuIHRoZSBgb2Zmc2V0YCBjdXJzb3IgYXMgdGhlIG5leHQgY2FsbCdzXG4gICAqIGBBaXJ0YWJsZUxpc3RPcHRpb25zLm9mZnNldGAgdG8gZmV0Y2ggZnVydGhlciBwYWdlcy5cbiAgICogQHBhcmFtIHtBaXJ0YWJsZUxpc3RPcHRpb25zfSBvcHRpb25zIC0gVGhlIHRhYmxlIGFuZCBmaWx0ZXIvc29ydC9wYWdpbmcgb3B0aW9ucy5cbiAgICogQHBhcmFtIHtzdHJpbmd9IFtiYXNlSWRdIC0gVGhlIGJhc2Ugb3ZlcnJpZGU7IGZhbGxzIGJhY2sgdG8gdGhlIGNvbmZpZ3VyZWQgYGJhc2VJZGAuXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPEFpcnRhYmxlTGlzdFJlc3VsdD59IFRoZSBwYWdlIG9mIHJlY29yZHMgYW5kIHRoZSBuZXh0IG9mZnNldCBjdXJzb3Igd2hlbiBtb3JlIHBhZ2VzIGV4aXN0LlxuICAgKiBAdGhyb3dzIHtJbnRlcm5hbEVycm9yfSBXaGVuIG5vIHRva2VuIGlzIGNvbmZpZ3VyZWQgb3IgdGhlIHRhYmxlL2Jhc2UgY2Fubm90IGJlIHJlc29sdmVkLlxuICAgKiBAdGhyb3dzIHtOb3RGb3VuZEVycm9yfSBXaGVuIHRoZSBiYXNlIG9yIHRhYmxlIGRvZXMgbm90IGV4aXN0IChIVFRQIDQwNCkuXG4gICAqIEB0aHJvd3Mge0NvbmZsaWN0RXJyb3J9IFdoZW4gQWlydGFibGUgYW5zd2VycyB3aXRoIEhUVFAgNDA5LlxuICAgKiBAdGhyb3dzIHtCYWRSZXF1ZXN0RXJyb3J9IFdoZW4gQWlydGFibGUgYW5zd2VycyB3aXRoIGFueSBvdGhlciBIVFRQIGVycm9yIHN0YXR1cyAoZS5nLiBpbnZhbGlkIGZvcm11bGEpLlxuICAgKiBAZXhhbXBsZVxuICAgKiBgYGB0c1xuICAgKiBsZXQgb2Zmc2V0OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAqIGRvIHtcbiAgICogICBjb25zdCBwYWdlID0gYXdhaXQgYWlydGFibGUubGlzdFJlY29yZHMoe1xuICAgKiAgICAgdGFibGU6IFwiVGFza3NcIixcbiAgICogICAgIGZpbHRlckJ5Rm9ybXVsYTogXCJ7U3RhdHVzfSA9ICdBY3RpdmUnXCIsXG4gICAqICAgICBwYWdlU2l6ZTogMTAwLFxuICAgKiAgICAgb2Zmc2V0LFxuICAgKiAgICAgc29ydDogW3sgZmllbGQ6IFwiTmFtZVwiLCBkaXJlY3Rpb246IFwiYXNjXCIgfV0sXG4gICAqICAgfSk7XG4gICAqICAgY29uc29sZS5sb2cocGFnZS5yZWNvcmRzKTtcbiAgICogICBvZmZzZXQgPSBwYWdlLm9mZnNldDtcbiAgICogfSB3aGlsZSAob2Zmc2V0KTtcbiAgICogYGBgXG4gICAqL1xuICBhc3luYyBsaXN0UmVjb3JkcyhcbiAgICBvcHRpb25zOiBBaXJ0YWJsZUxpc3RPcHRpb25zLFxuICAgIGJhc2VJZD86IHN0cmluZ1xuICApOiBQcm9taXNlPEFpcnRhYmxlTGlzdFJlc3VsdD4ge1xuICAgIHRoaXMucmVxdWlyZVRva2VuKCk7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5jbGllbnQuZ2V0PEFpcnRhYmxlTGlzdFJlc3VsdD4oXG4gICAgICAgIHRoaXMudGFibGVQYXRoKG9wdGlvbnMudGFibGUsIGJhc2VJZCksXG4gICAgICAgIHtcbiAgICAgICAgICBwYXJhbXM6IHtcbiAgICAgICAgICAgIHZpZXc6IG9wdGlvbnMudmlldyxcbiAgICAgICAgICAgIGZpbHRlckJ5Rm9ybXVsYTogb3B0aW9ucy5maWx0ZXJCeUZvcm11bGEsXG4gICAgICAgICAgICBtYXhSZWNvcmRzOiBvcHRpb25zLm1heFJlY29yZHMsXG4gICAgICAgICAgICBwYWdlU2l6ZTogb3B0aW9ucy5wYWdlU2l6ZSxcbiAgICAgICAgICAgIG9mZnNldDogb3B0aW9ucy5vZmZzZXQsXG4gICAgICAgICAgICBcImZpZWxkc1tdXCI6IG9wdGlvbnMuZmllbGRzLFxuICAgICAgICAgICAgXCJzb3J0WzBdW2ZpZWxkXVwiOiBvcHRpb25zLnNvcnQ/LlswXT8uZmllbGQsXG4gICAgICAgICAgICBcInNvcnRbMF1bZGlyZWN0aW9uXVwiOiBvcHRpb25zLnNvcnQ/LlswXT8uZGlyZWN0aW9uLFxuICAgICAgICAgIH0sXG4gICAgICAgIH1cbiAgICAgICk7XG4gICAgICByZXR1cm4ge1xuICAgICAgICByZWNvcmRzOiByZXNwb25zZS5kYXRhLnJlY29yZHMgPz8gW10sXG4gICAgICAgIG9mZnNldDogcmVzcG9uc2UuZGF0YS5vZmZzZXQsXG4gICAgICB9O1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICB0aHJvdyBodHRwRXJyb3IoXCJBaXJ0YWJsZVwiLCBcImxpc3QgcmVjb3Jkc1wiLCBlcnJvcik7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBGZXRjaGVzIGEgc2luZ2xlIEFpcnRhYmxlIHJlY29yZFxuICAgKiBAc3VtbWFyeSBgR0VUYHMgdGhlIHRhYmxlIGVuZHBvaW50IHdpdGggdGhlIHJlY29yZCBJRCBhcHBlbmRlZCBhbmRcbiAgICogcmV0dXJucyB0aGUgcmVjb3JkIGVudmVsb3BlLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gdGFibGUgLSBUaGUgdGFibGUgbmFtZSBvciBJRC5cbiAgICogQHBhcmFtIHtzdHJpbmd9IHJlY29yZElkIC0gVGhlIHJlY29yZCBJRCB0byBmZXRjaCAoZS5nLiBgXCJyZWMxMjM0NTY3ODkwXCJgKS5cbiAgICogQHBhcmFtIHtzdHJpbmd9IFtiYXNlSWRdIC0gVGhlIGJhc2Ugb3ZlcnJpZGU7IGZhbGxzIGJhY2sgdG8gdGhlIGNvbmZpZ3VyZWQgYGJhc2VJZGAuXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPEFpcnRhYmxlUmVjb3JkPn0gVGhlIHJlY29yZCBlbnZlbG9wZS5cbiAgICogQHRocm93cyB7SW50ZXJuYWxFcnJvcn0gV2hlbiBubyB0b2tlbiBpcyBjb25maWd1cmVkIG9yIHRoZSB0YWJsZS9iYXNlIGNhbm5vdCBiZSByZXNvbHZlZC5cbiAgICogQHRocm93cyB7Tm90Rm91bmRFcnJvcn0gV2hlbiB0aGUgcmVjb3JkIGRvZXMgbm90IGV4aXN0IChIVFRQIDQwNCkuXG4gICAqIEB0aHJvd3Mge0NvbmZsaWN0RXJyb3J9IFdoZW4gQWlydGFibGUgYW5zd2VycyB3aXRoIEhUVFAgNDA5LlxuICAgKiBAdGhyb3dzIHtCYWRSZXF1ZXN0RXJyb3J9IFdoZW4gQWlydGFibGUgYW5zd2VycyB3aXRoIGFueSBvdGhlciBIVFRQIGVycm9yIHN0YXR1cy5cbiAgICovXG4gIGFzeW5jIGdldFJlY29yZChcbiAgICB0YWJsZTogc3RyaW5nLFxuICAgIHJlY29yZElkOiBzdHJpbmcsXG4gICAgYmFzZUlkPzogc3RyaW5nXG4gICk6IFByb21pc2U8QWlydGFibGVSZWNvcmQ+IHtcbiAgICB0aGlzLnJlcXVpcmVUb2tlbigpO1xuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHRoaXMuY2xpZW50LmdldDxBaXJ0YWJsZVJlY29yZD4oXG4gICAgICAgIGAke3RoaXMudGFibGVQYXRoKHRhYmxlLCBiYXNlSWQpfS8ke2VuY29kZVVSSUNvbXBvbmVudChyZWNvcmRJZCl9YFxuICAgICAgKTtcbiAgICAgIHJldHVybiByZXNwb25zZS5kYXRhO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICB0aHJvdyBodHRwRXJyb3IoXCJBaXJ0YWJsZVwiLCBcImdldCByZWNvcmRcIiwgZXJyb3IpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gQ3JlYXRlcyBhbiBBaXJ0YWJsZSByZWNvcmRcbiAgICogQHN1bW1hcnkgYFBPU1RgcyB0aGUgZmllbGRzIG1hcCB0byB0aGUgdGFibGUgZW5kcG9pbnQ7IGB0eXBlY2FzdGAgbGV0c1xuICAgKiBBaXJ0YWJsZSBjb2VyY2UgdmFsdWVzIGludG8gdGhlIGNvbHVtbiB0eXBlcyAoZGlzYWJsZWQgYnkgZGVmYXVsdCkuXG4gICAqIEBwYXJhbSB7QWlydGFibGVXcml0ZUlucHV0fSBpbnB1dCAtIFRoZSB0YWJsZSwgZmllbGRzLCBhbmQgdHlwZWNhc3Qgb3B0aW9uLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gW2Jhc2VJZF0gLSBUaGUgYmFzZSBvdmVycmlkZTsgZmFsbHMgYmFjayB0byB0aGUgY29uZmlndXJlZCBgYmFzZUlkYC5cbiAgICogQHJldHVybnMge1Byb21pc2U8QWlydGFibGVSZWNvcmQ+fSBUaGUgY3JlYXRlZCByZWNvcmQgZW52ZWxvcGUuXG4gICAqIEB0aHJvd3Mge0ludGVybmFsRXJyb3J9IFdoZW4gbm8gdG9rZW4gaXMgY29uZmlndXJlZCBvciB0aGUgdGFibGUvYmFzZSBjYW5ub3QgYmUgcmVzb2x2ZWQuXG4gICAqIEB0aHJvd3Mge05vdEZvdW5kRXJyb3J9IFdoZW4gdGhlIGJhc2Ugb3IgdGFibGUgZG9lcyBub3QgZXhpc3QgKEhUVFAgNDA0KS5cbiAgICogQHRocm93cyB7Q29uZmxpY3RFcnJvcn0gV2hlbiBBaXJ0YWJsZSBhbnN3ZXJzIHdpdGggSFRUUCA0MDkuXG4gICAqIEB0aHJvd3Mge0JhZFJlcXVlc3RFcnJvcn0gV2hlbiBBaXJ0YWJsZSBhbnN3ZXJzIHdpdGggYW55IG90aGVyIEhUVFAgZXJyb3Igc3RhdHVzIChlLmcuIGludmFsaWQgZmllbGQgdmFsdWVzKS5cbiAgICovXG4gIGFzeW5jIGNyZWF0ZVJlY29yZChcbiAgICBpbnB1dDogQWlydGFibGVXcml0ZUlucHV0LFxuICAgIGJhc2VJZD86IHN0cmluZ1xuICApOiBQcm9taXNlPEFpcnRhYmxlUmVjb3JkPiB7XG4gICAgdGhpcy5yZXF1aXJlVG9rZW4oKTtcbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLmNsaWVudC5wb3N0PEFpcnRhYmxlUmVjb3JkPihcbiAgICAgICAgdGhpcy50YWJsZVBhdGgoaW5wdXQudGFibGUsIGJhc2VJZCksXG4gICAgICAgIHsgZmllbGRzOiBpbnB1dC5maWVsZHMsIHR5cGVjYXN0OiBpbnB1dC50eXBlY2FzdCA/PyBmYWxzZSB9XG4gICAgICApO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHRocm93IGh0dHBFcnJvcihcIkFpcnRhYmxlXCIsIFwiY3JlYXRlIHJlY29yZFwiLCBlcnJvcik7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBVcGRhdGVzIGFuIEFpcnRhYmxlIHJlY29yZFxuICAgKiBAc3VtbWFyeSBgUEFUQ0hgZXMgdGhlIGZpZWxkcyBtYXAgb250byB0aGUgcmVjb3JkIGlkZW50aWZpZWQgYnlcbiAgICogYHJlY29yZElkYDsgb25seSB0aGUgcHJvdmlkZWQgZmllbGRzIGNoYW5nZS4gYHR5cGVjYXN0YCBsZXRzIEFpcnRhYmxlXG4gICAqIGNvZXJjZSB2YWx1ZXMgaW50byB0aGUgY29sdW1uIHR5cGVzIChkaXNhYmxlZCBieSBkZWZhdWx0KS5cbiAgICogQHBhcmFtIHtBaXJ0YWJsZVdyaXRlSW5wdXQgJiB7cmVjb3JkSWQ6IHN0cmluZ319IGlucHV0IC0gVGhlIHRhYmxlLCBmaWVsZHMsIHR5cGVjYXN0IG9wdGlvbiwgYW5kIHRhcmdldCByZWNvcmQgSUQuXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBbYmFzZUlkXSAtIFRoZSBiYXNlIG92ZXJyaWRlOyBmYWxscyBiYWNrIHRvIHRoZSBjb25maWd1cmVkIGBiYXNlSWRgLlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxBaXJ0YWJsZVJlY29yZD59IFRoZSB1cGRhdGVkIHJlY29yZCBlbnZlbG9wZS5cbiAgICogQHRocm93cyB7SW50ZXJuYWxFcnJvcn0gV2hlbiBubyB0b2tlbiBpcyBjb25maWd1cmVkIG9yIHRoZSB0YWJsZS9iYXNlIGNhbm5vdCBiZSByZXNvbHZlZC5cbiAgICogQHRocm93cyB7Tm90Rm91bmRFcnJvcn0gV2hlbiB0aGUgcmVjb3JkIGRvZXMgbm90IGV4aXN0IChIVFRQIDQwNCkuXG4gICAqIEB0aHJvd3Mge0NvbmZsaWN0RXJyb3J9IFdoZW4gQWlydGFibGUgYW5zd2VycyB3aXRoIEhUVFAgNDA5LlxuICAgKiBAdGhyb3dzIHtCYWRSZXF1ZXN0RXJyb3J9IFdoZW4gQWlydGFibGUgYW5zd2VycyB3aXRoIGFueSBvdGhlciBIVFRQIGVycm9yIHN0YXR1cyAoZS5nLiBpbnZhbGlkIGZpZWxkIHZhbHVlcykuXG4gICAqL1xuICBhc3luYyB1cGRhdGVSZWNvcmQoXG4gICAgaW5wdXQ6IEFpcnRhYmxlV3JpdGVJbnB1dCAmIHsgcmVjb3JkSWQ6IHN0cmluZyB9LFxuICAgIGJhc2VJZD86IHN0cmluZ1xuICApOiBQcm9taXNlPEFpcnRhYmxlUmVjb3JkPiB7XG4gICAgdGhpcy5yZXF1aXJlVG9rZW4oKTtcbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLmNsaWVudC5wYXRjaDxBaXJ0YWJsZVJlY29yZD4oXG4gICAgICAgIGAke3RoaXMudGFibGVQYXRoKGlucHV0LnRhYmxlLCBiYXNlSWQpfS8ke2VuY29kZVVSSUNvbXBvbmVudChcbiAgICAgICAgICBpbnB1dC5yZWNvcmRJZFxuICAgICAgICApfWAsXG4gICAgICAgIHsgZmllbGRzOiBpbnB1dC5maWVsZHMsIHR5cGVjYXN0OiBpbnB1dC50eXBlY2FzdCA/PyBmYWxzZSB9XG4gICAgICApO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHRocm93IGh0dHBFcnJvcihcIkFpcnRhYmxlXCIsIFwidXBkYXRlIHJlY29yZFwiLCBlcnJvcik7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBEZWxldGVzIGFuIEFpcnRhYmxlIHJlY29yZFxuICAgKiBAc3VtbWFyeSBgREVMRVRFYHMgdGhlIHJlY29yZCBpZGVudGlmaWVkIGJ5IGByZWNvcmRJZGAgYW5kIHJldHVybnMgdGhlXG4gICAqIEFpcnRhYmxlIGRlbGV0aW9uIGNvbmZpcm1hdGlvbi5cbiAgICogQHBhcmFtIHtzdHJpbmd9IHRhYmxlIC0gVGhlIHRhYmxlIG5hbWUgb3IgSUQuXG4gICAqIEBwYXJhbSB7c3RyaW5nfSByZWNvcmRJZCAtIFRoZSByZWNvcmQgSUQgdG8gZGVsZXRlLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gW2Jhc2VJZF0gLSBUaGUgYmFzZSBvdmVycmlkZTsgZmFsbHMgYmFjayB0byB0aGUgY29uZmlndXJlZCBgYmFzZUlkYC5cbiAgICogQHJldHVybnMge1Byb21pc2U8e2lkOiBzdHJpbmcsIGRlbGV0ZWQ6IGJvb2xlYW59Pn0gVGhlIGRlbGV0ZWQgcmVjb3JkJ3MgSUQgYW5kIEFpcnRhYmxlJ3MgYGRlbGV0ZWRgIGNvbmZpcm1hdGlvbi5cbiAgICogQHRocm93cyB7SW50ZXJuYWxFcnJvcn0gV2hlbiBubyB0b2tlbiBpcyBjb25maWd1cmVkIG9yIHRoZSB0YWJsZS9iYXNlIGNhbm5vdCBiZSByZXNvbHZlZC5cbiAgICogQHRocm93cyB7Tm90Rm91bmRFcnJvcn0gV2hlbiB0aGUgcmVjb3JkIGRvZXMgbm90IGV4aXN0IChIVFRQIDQwNCkuXG4gICAqIEB0aHJvd3Mge0NvbmZsaWN0RXJyb3J9IFdoZW4gQWlydGFibGUgYW5zd2VycyB3aXRoIEhUVFAgNDA5LlxuICAgKiBAdGhyb3dzIHtCYWRSZXF1ZXN0RXJyb3J9IFdoZW4gQWlydGFibGUgYW5zd2VycyB3aXRoIGFueSBvdGhlciBIVFRQIGVycm9yIHN0YXR1cy5cbiAgICovXG4gIGFzeW5jIGRlbGV0ZVJlY29yZChcbiAgICB0YWJsZTogc3RyaW5nLFxuICAgIHJlY29yZElkOiBzdHJpbmcsXG4gICAgYmFzZUlkPzogc3RyaW5nXG4gICk6IFByb21pc2U8eyBpZDogc3RyaW5nOyBkZWxldGVkOiBib29sZWFuIH0+IHtcbiAgICB0aGlzLnJlcXVpcmVUb2tlbigpO1xuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHRoaXMuY2xpZW50LmRlbGV0ZTx7XG4gICAgICAgIGlkOiBzdHJpbmc7XG4gICAgICAgIGRlbGV0ZWQ6IGJvb2xlYW47XG4gICAgICB9PihcbiAgICAgICAgYCR7dGhpcy50YWJsZVBhdGgodGFibGUsIGJhc2VJZCl9LyR7ZW5jb2RlVVJJQ29tcG9uZW50KHJlY29yZElkKX1gXG4gICAgICApO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHRocm93IGh0dHBFcnJvcihcIkFpcnRhYmxlXCIsIFwiZGVsZXRlIHJlY29yZFwiLCBlcnJvcik7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
266
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQWlydGFibGVTZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiQWlydGFibGVTZXJ2aWNlLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBOzs7Ozs7Ozs7R0FTRztBQUNILDJEQUF3RDtBQUN4RCx3REFBb0Q7QUFDcEQsNEVBQTBFO0FBQzFFLDJEQUEwRTtBQUMxRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0EwQkc7QUFDSCxNQUFhLGVBQWdCLFNBQVEseUJBQWM7SUFDL0M7UUFDSSxLQUFLLENBQUMsR0FBRyxTQUFTLENBQUMsQ0FBQztRQUNwQjs7V0FFRztRQUNILElBQUksQ0FBQyxXQUFXLEdBQUcsVUFBVSxDQUFDO0lBQ2xDLENBQUM7SUFDRDs7OztPQUlHO0lBQ0gsY0FBYztRQUNWLE9BQU8sNkJBQTZCLENBQUM7SUFDekMsQ0FBQztJQUNEOzs7Ozs7T0FNRztJQUNILFdBQVcsQ0FBQyxNQUFNO1FBQ2QsT0FBTyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLGFBQWEsRUFBRSxVQUFVLE1BQU0sQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFDM0UsQ0FBQztJQUNEOzs7Ozs7T0FNRztJQUNILHFCQUFxQjtRQUNqQixNQUFNLEdBQUcsR0FBRyw4QkFBYSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUM7UUFDdEMsTUFBTSxLQUFLLEdBQUcsSUFBQSwrQkFBUyxFQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNwQyxJQUFJLENBQUMsS0FBSztZQUNOLE9BQU8sU0FBUyxDQUFDO1FBQ3JCLE9BQU87WUFDSCxLQUFLO1lBQ0wsTUFBTSxFQUFFLElBQUEsK0JBQVMsRUFBQyxHQUFHLENBQUMsTUFBTSxDQUFDO1lBQzdCLE9BQU8sRUFBRSxJQUFBLCtCQUFTLEVBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQztZQUMvQixPQUFPLEVBQUUsSUFBQSwrQkFBUyxFQUFDLEdB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QyxZQUFZLENBQUMsS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNO1FBQ3RDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUM7WUFDRCxNQUFNLFFBQVEsR0FBRyxNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLElBQUksa0JBQWtCLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQzlHLE9BQU8sUUFBUSxDQUFDLElBQUksQ0FBQztRQUN6QixDQUFDO1FBQ0QsT0FBTyxLQUFLLEVBQUUsQ0FBQztZQUNYLE1BQU0sSUFBQSxvQkFBUyxFQUFDLFVBQVUsRUFBRSxlQUFlLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDeEQsQ0FBQztJQUNMLENBQUM7Q0FDSjtBQTFORCwwQ0EwTkM7QUFDRCxzNzBCQUFzNzBCIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbW9kdWxlIGludGVncmF0aW9ucy9pby9haXJ0YWJsZS9zZXJ2aWNlXG4gKiBAc3VtbWFyeSBBaXJ0YWJsZSBXZWIgQVBJIGludGVncmF0aW9uIHNlcnZpY2UgZm9yIENSVUQgb3BlcmF0aW9ucyBvbiBiYXNlIHJlY29yZHMuXG4gKiBAZGVzY3JpcHRpb24gRXhwb3NlcyB0aGUgQWlydGFibGUgdjAgcmVjb3JkcyBBUEkgKGxpc3QsIGdldCwgY3JlYXRlLCB1cGRhdGUsXG4gKiBkZWxldGUpIGFzIGFuIHVuZGVjb3JhdGVkIGNsaWVudC1iYXNlZCBzZXJ2aWNlIGJ1aWx0IG9uXG4gKiB7QGxpbmsgSHR0cEFwaVNlcnZpY2V9LiBDb25maWd1cmF0aW9uIGNvbWVzIGZyb20gYW4gZXhwbGljaXRcbiAqIGBBaXJ0YWJsZVNlcnZpY2VDb25maWdgIG9yIHRoZSBgaW8uYWlydGFibGVgIGVudmlyb25tZW50IHNsaWNlOyBiYXNlXG4gKiB0YXJnZXRzIGRlZmF1bHQgdG8gdGhlIGNvbmZpZ3VyZWQgYGJhc2VJZGAgYW5kIGNhbiBiZSBvdmVycmlkZGVuIHBlciBjYWxsLlxuICogRmFpbHVyZXMgYXJlIG1hcHBlZCB0byBkZWNhZiBlcnJvcnMgdmlhIHtAbGluayBodHRwRXJyb3J9LlxuICovXG5pbXBvcnQgeyBJbnRlcm5hbEVycm9yIH0gZnJvbSBcIkBkZWNhZi10cy9kYi1kZWNvcmF0b3JzXCI7XG5pbXBvcnQgeyBJb0Vudmlyb25tZW50IH0gZnJvbSBcIi4vLi4vZW52aXJvbm1lbnQuanNcIjtcbmltcG9ydCB7IGVudk51bWJlciwgZW52U3RyaW5nIH0gZnJvbSBcIi4vLi4vLi4vc2hhcmVkL2Vudmlyb25tZW50VmFsdWUuanNcIjtcbmltcG9ydCB7IEh0dHBBcGlTZXJ2aWNlLCBodHRwRXJyb3IsIH0gZnJvbSBcIi4vLi4vLi4vc2hhcmVkL2h0dHAvaW5kZXguanNcIjtcbi8qKlxuICogQGRlc2NyaXB0aW9uIEFpcnRhYmxlIFdlYiBBUEkgaW50ZWdyYXRpb24gc2VydmljZVxuICogQHN1bW1hcnkgQW4gdW5kZWNvcmF0ZWQgSFRUUCBzZXJ2aWNlIGZvciBsaXN0aW5nIHJlY29yZHNcbiAqIHdpdGggZmlsdGVyaW5nLCBzb3J0aW5nLCBhbmQgY3Vyc29yIHBhZ2luZzsgZmV0Y2hpbmcsIGNyZWF0aW5nLCB1cGRhdGluZyxcbiAqIGFuZCBkZWxldGluZyBpbmRpdmlkdWFsIHJlY29yZHMuIEJhc2UgdGFyZ2V0cyByZXNvbHZlIHBlciBjYWxsIGZyb20gdGhlXG4gKiBgYmFzZUlkYCBhcmd1bWVudCwgZmFsbGluZyBiYWNrIHRvIHRoZSBjb25maWd1cmVkIHZhbHVlLCBhbmQgdGhyb3dcbiAqIGBJbnRlcm5hbEVycm9yYCB3aGVuIHVucmVzb2x2ZWQuIEV2ZXJ5IG9wZXJhdGlvbiByZXF1aXJlcyBhIHRva2VuXG4gKiAoYHJlcXVpcmVUb2tlbigpYCksIGFuZCB0cmFuc3BvcnQgZmFpbHVyZXMgYXJlIG1hcHBlZCB0byBkZWNhZiBlcnJvcnMgdmlhXG4gKiB7QGxpbmsgaHR0cEVycm9yfS5cbiAqIEBjbGFzcyBBaXJ0YWJsZVNlcnZpY2VcbiAqIEBjYXRlZ29yeSBJT1xuICogQGV4YW1wbGVcbiAqIGBgYHRzXG4gKiBpbXBvcnQgeyBBaXJ0YWJsZVNlcnZpY2UgfSBmcm9tIFwiQGRlY2FmLXRzL2ludGVncmF0aW9ucy9pby9haXJ0YWJsZVwiO1xuICpcbiAqIGNvbnN0IGFpcnRhYmxlID0gbmV3IEFpcnRhYmxlU2VydmljZSgpO1xuICogYXdhaXQgYWlydGFibGUuaW5pdGlhbGl6ZSh7XG4gKiAgIHRva2VuOiBwcm9jZXNzLmVudi5HUkFQSF9DUkVERU5USUFMX0FJUlRBQkxFX1RPS0VOLFxuICogICBiYXNlSWQ6IFwiYXBwRXhhbXBsZUJhc2VcIixcbiAqIH0pO1xuICogY29uc3QgY3JlYXRlZCA9IGF3YWl0IGFpcnRhYmxlLmNyZWF0ZVJlY29yZCh7XG4gKiAgIHRhYmxlOiBcIlRhc2tzXCIsXG4gKiAgIGZpZWxkczogeyBOYW1lOiBcIlNoaXAgcmVsZWFzZVwiLCBTdGF0dXM6IFwiVG9kb1wiIH0sXG4gKiB9KTtcbiAqIGBgYFxuICogQG1lbWJlck9mIG1vZHVsZTppbnRlZ3JhdGlvbnMvaW8vYWlydGFibGUvc2VydmljZVxuICovXG5leHBvcnQgY2xhc3MgQWlydGFibGVTZXJ2aWNlIGV4dGVuZHMgSHR0cEFwaVNlcnZpY2Uge1xuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICBzdXBlciguLi5hcmd1bWVudHMpO1xuICAgICAgICAvKipcbiAgICAgICAgICogQGRlc2NyaXB0aW9uIFRoZSBwcm92aWRlciBuYW1lIHVzZWQgaW4gZXJyb3IgbWVzc2FnZXNcbiAgICAgICAgICovXG4gICAgICAgIHRoaXMuc2VydmljZU5hbWUgPSBcIkFpcnRhYmxlXCI7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvbiBUaGUgQWlydGFibGUgV2ViIEFQSSB2MCBiYXNlIFVSTFxuICAgICAqIEBzdW1tYXJ5IFVzZWQgd2hlbiB0aGUgcmVzb2x2ZWQgY29uZmlnIGNhcnJpZXMgbm8gYGJhc2VVcmxgLlxuICAgICAqIEByZXR1cm5zIHtzdHJpbmd9IGBcImh0dHBzOi8vYXBpLmFpcnRhYmxlLmNvbS92MFwiYC5cbiAgICAgKi9cbiAgICBkZWZhdWx0QmFzZVVybCgpIHtcbiAgICAgICAgcmV0dXJuIFwiaHR0cHM6Ly9hcGkuYWlydGFibGUuY29tL3YwXCI7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvbiBCdWlsZHMgdGhlIEFpcnRhYmxlIGJlYXJlciBhdXRob3JpemF0aW9uIGhlYWRlcnNcbiAgICAgKiBAc3VtbWFyeSBSZXR1cm5zIHRoZSBgQXV0aG9yaXphdGlvbjogQmVhcmVyIDx0b2tlbj5gIGhlYWRlciB3aGVuIHRoZVxuICAgICAqIGNvbmZpZyBjYXJyaWVzIGEgdG9rZW4sIGFuZCBubyBoZWFkZXJzIG90aGVyd2lzZS5cbiAgICAgKiBAcGFyYW0ge0FpcnRhYmxlU2VydmljZUNvbmZpZ30gY29uZmlnIC0gVGhlIHJlc29sdmVkIHNlcnZpY2UgY29uZmlndXJhdGlvbi5cbiAgICAgKiBAcmV0dXJucyB7UmVjb3JkPHN0cmluZywgc3RyaW5nPn0gVGhlIGF1dGhvcml6YXRpb24gaGVhZGVycyAoZW1wdHkgd2l0aG91dCBhIHRva2VuKS5cbiAgICAgKi9cbiAgICBhdXRoSGVhZGVycyhjb25maWcpIHtcbiAgICAgICAgcmV0dXJuIGNvbmZpZy50b2tlbiA/IHsgQXV0aG9yaXphdGlvbjogYEJlYXJlciAke2NvbmZpZy50b2tlbn1gIH0gOiB7fTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIFJlYWRzIHRoZSBBaXJ0YWJsZSBjcmVkZW50aWFscyBhbmQgZGVmYXVsdHMgZnJvbSB0aGUgZW52aXJvbm1lbnRcbiAgICAgKiBAc3VtbWFyeSBSZWFkcyB0aGUgYGlvLmFpcnRhYmxlYCBlbnZpcm9ubWVudCBzbGljZSBhbmQgcmV0dXJucyBhIHBhcnRpYWxcbiAgICAgKiBjb25maWcgd2hlbiBhIHRva2VuIGlzIGNvbmZpZ3VyZWQsIGB1bmRlZmluZWRgIG90aGVyd2lzZS4gVmFsdWVzIHBhc3NcbiAgICAgKiB0aHJvdWdoIGBlbnZTdHJpbmdgL2BlbnZOdW1iZXJgIHRvIHJlamVjdCB1bnNldC1sZWFmIHByb3hpZXMuXG4gICAgICogQHJldHVybnMge1BhcnRpYWw8QWlydGFibGVTZXJ2aWNlQ29uZmlnPiB8IHVuZGVmaW5lZH0gQSBwYXJ0aWFsIGNvbmZpZywgb3IgYHVuZGVmaW5lZGAgd2hlbiBubyBBaXJ0YWJsZSB0b2tlbiBpcyBjb25maWd1cmVkLlxuICAgICAqL1xuICAgIGNvbmZpZ0Zyb21FbnZpcm9ubWVudCgpIHtcbiAgICAgICAgY29uc3QgZW52ID0gSW9FbnZpcm9ubWVudC5pby5haXJ0YWJsZTtcbiAgICAgICAgY29uc3QgdG9rZW4gPSBlbnZTdHJpbmcoZW52Py50b2tlbik7XG4gICAgICAgIGlmICghdG9rZW4pXG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgdG9rZW4sXG4gICAgICAgICAgICBiYXNlSWQ6IGVudlN0cmluZyhlbnYuYmFzZUlkKSxcbiAgICAgICAgICAgIGJhc2VVcmw6IGVudlN0cmluZyhlbnYuYmFzZVVybCksXG4gICAgICAgICAgICB0aW1lb3V0OiBlbnZOdW1iZXIoZW52LnRpbWVvdXQpLFxuICAgICAgICB9O1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb24gUmVzb2x2ZXMgdGhlIFVSTC1lbmNvZGVkIGJhc2UgcGF0aCBmb3IgYSBjYWxsXG4gICAgICogQHN1bW1hcnkgQnVpbGRzIGAvPGJhc2VJZD5gIGZyb20gdGhlIGdpdmVuIGJhc2UgSUQsIGZhbGxpbmcgYmFjayB0byB0aGVcbiAgICAgKiBjb25maWd1cmVkIHZhbHVlLCBhbmQgdGhyb3dzIHdoZW4gbmVpdGhlciBpcyBhdmFpbGFibGUuXG4gICAgICogQHBhcmFtIHtzdHJpbmd9IFtiYXNlSWRdIC0gVGhlIHBlci1jYWxsIGJhc2Ugb3ZlcnJpZGUuXG4gICAgICogQHJldHVybnMge3N0cmluZ30gVGhlIFVSTC1lbmNvZGVkIGJhc2UgQVBJIHBhdGguXG4gICAgICogQHRocm93cyB7SW50ZXJuYWxFcnJvcn0gV2hlbiBuZWl0aGVyIHRoZSBpbnB1dCBub3IgdGhlIGNvbmZpZyB5aWVsZHMgYSBiYXNlIElELlxuICAgICAqL1xuICAgIGJhc2VQYXRoKGJhc2VJZCkge1xuICAgICAgICBjb25zdCByZXNvbHZlZCA9IGJhc2VJZCA/PyB0aGlzLmNvbmZpZy5iYXNlSWQ7XG4gICAgICAgIGlmICghcmVzb2x2ZWQpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKFwiQWlydGFibGUgcmVxdWlyZXMgYSBiYXNlIElEXCIpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBgLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHJlc29sdmVkKX1gO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb24gUmVzb2x2ZXMgdGhlIFVSTC1lbmNvZGVkIHRhYmxlIHBhdGggZm9yIGEgY2FsbFxuICAgICAqIEBzdW1tYXJ5IEJ1aWxkcyBgPGJhc2VQYXRoPi88dGFibGU+YCB3aXRoIGJvdGggc2VnbWVudHMgVVJMLWVuY29kZWQsIGFuZFxuICAgICAqIHRocm93cyB3aGVuIHRoZSB0YWJsZSBuYW1lIGlzIGVtcHR5IChvciB0aGUgYmFzZSBjYW5ub3QgYmUgcmVzb2x2ZWQpLlxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSB0YWJsZSAtIFRoZSB0YWJsZSBuYW1lIG9yIElELlxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBbYmFzZUlkXSAtIFRoZSBwZXItY2FsbCBiYXNlIG92ZXJyaWRlLlxuICAgICAqIEByZXR1cm5zIHtzdHJpbmd9IFRoZSBVUkwtZW5jb2RlZCB0YWJsZSBBUEkgcGF0aC5cbiAgICAgKiBAdGhyb3dzIHtJbnRlcm5hbEVycm9yfSBXaGVuIHRoZSB0YWJsZSBuYW1lIGlzIGVtcHR5IG9yIHRoZSBiYXNlIElEIGNhbm5vdCBiZSByZXNvbHZlZC5cbiAgICAgKi9cbiAgICB0YWJsZVBhdGgodGFibGUsIGJhc2VJZCkge1xuICAgICAgICBpZiAoIXRhYmxlKVxuICAgICAgICAgICAgdGhyb3cgbmV3IEludGVybmFsRXJyb3IoXCJBaXJ0YWJsZSByZXF1aXJlcyBhIHRhYmxlIG5hbWVcIik7XG4gICAgICAgIHJldHVybiBgJHt0aGlzLmJhc2VQYXRoKGJhc2VJZCl9LyR7ZW5jb2RlVVJJQ29tcG9uZW50KHRhYmxlKX1gO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb24gTGlzdHMgcmVjb3JkcyBpbiBhbiBBaXJ0YWJsZSB0YWJsZSB3aXRoIGN1cnNvciBwYWdpbmdcbiAgICAgKiBAc3VtbWFyeSBgR0VUYHMgdGhlIHRhYmxlIGVuZHBvaW50IHdpdGggdGhlIGNvbmZpZ3VyZWQgdmlldywgZm9ybXVsYVxuICAgICAqIGZpbHRlciwgcmVjb3JkIGNhcHMsIHBhZ2Ugc2l6ZSwgcGFnZSBvZmZzZXQsIGZpZWxkIHByb2plY3Rpb24sIGFuZCBmaXJzdFxuICAgICAqIHNvcnQgZW50cnkuIFJldHVybiB0aGUgYG9mZnNldGAgY3Vyc29yIGFzIHRoZSBuZXh0IGNhbGwnc1xuICAgICAqIGBBaXJ0YWJsZUxpc3RPcHRpb25zLm9mZnNldGAgdG8gZmV0Y2ggZnVydGhlciBwYWdlcy5cbiAgICAgKiBAcGFyYW0ge0FpcnRhYmxlTGlzdE9wdGlvbnN9IG9wdGlvbnMgLSBUaGUgdGFibGUgYW5kIGZpbHRlci9zb3J0L3BhZ2luZyBvcHRpb25zLlxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBbYmFzZUlkXSAtIFRoZSBiYXNlIG92ZXJyaWRlOyBmYWxscyBiYWNrIHRvIHRoZSBjb25maWd1cmVkIGBiYXNlSWRgLlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlPEFpcnRhYmxlTGlzdFJlc3VsdD59IFRoZSBwYWdlIG9mIHJlY29yZHMgYW5kIHRoZSBuZXh0IG9mZnNldCBjdXJzb3Igd2hlbiBtb3JlIHBhZ2VzIGV4aXN0LlxuICAgICAqIEB0aHJvd3Mge0ludGVybmFsRXJyb3J9IFdoZW4gbm8gdG9rZW4gaXMgY29uZmlndXJlZCBvciB0aGUgdGFibGUvYmFzZSBjYW5ub3QgYmUgcmVzb2x2ZWQuXG4gICAgICogQHRocm93cyB7Tm90Rm91bmRFcnJvcn0gV2hlbiB0aGUgYmFzZSBvciB0YWJsZSBkb2VzIG5vdCBleGlzdCAoSFRUUCA0MDQpLlxuICAgICAqIEB0aHJvd3Mge0NvbmZsaWN0RXJyb3J9IFdoZW4gQWlydGFibGUgYW5zd2VycyB3aXRoIEhUVFAgNDA5LlxuICAgICAqIEB0aHJvd3Mge0JhZFJlcXVlc3RFcnJvcn0gV2hlbiBBaXJ0YWJsZSBhbnN3ZXJzIHdpdGggYW55IG90aGVyIEhUVFAgZXJyb3Igc3RhdHVzIChlLmcuIGludmFsaWQgZm9ybXVsYSkuXG4gICAgICogQGV4YW1wbGVcbiAgICAgKiBgYGB0c1xuICAgICAqIGxldCBvZmZzZXQ6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICAgKiBkbyB7XG4gICAgICogICBjb25zdCBwYWdlID0gYXdhaXQgYWlydGFibGUubGlzdFJlY29yZHMoe1xuICAgICAqICAgICB0YWJsZTogXCJUYXNrc1wiLFxuICAgICAqICAgICBmaWx0ZXJCeUZvcm11bGE6IFwie1N0YXR1c30gPSAnQWN0aXZlJ1wiLFxuICAgICAqICAgICBwYWdlU2l6ZTogMTAwLFxuICAgICAqICAgICBvZmZzZXQsXG4gICAgICogICAgIHNvcnQ6IFt7IGZpZWxkOiBcIk5hbWVcIiwgZGlyZWN0aW9uOiBcImFzY1wiIH1dLFxuICAgICAqICAgfSk7XG4gICAgICogICBjb25zb2xlLmxvZyhwYWdlLnJlY29yZHMpO1xuICAgICAqICAgb2Zmc2V0ID0gcGFnZS5vZmZzZXQ7XG4gICAgICogfSB3aGlsZSAob2Zmc2V0KTtcbiAgICAgKiBgYGBcbiAgICAgKi9cbiAgICBhc3luYyBsaXN0UmVjb3JkcyhvcHRpb25zLCBiYXNlSWQpIHtcbiAgICAgICAgdGhpcy5yZXF1aXJlVG9rZW4oKTtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5jbGllbnQuZ2V0KHRoaXMudGFibGVQYXRoKG9wdGlvbnMudGFibGUsIGJhc2VJZCksIHtcbiAgICAgICAgICAgICAgICBwYXJhbXM6IHtcbiAgICAgICAgICAgICAgICAgICAgdmlldzogb3B0aW9ucy52aWV3LFxuICAgICAgICAgICAgICAgICAgICBmaWx0ZXJCeUZvcm11bGE6IG9wdGlvbnMuZmlsdGVyQnlGb3JtdWxhLFxuICAgICAgICAgICAgICAgICAgICBtYXhSZWNvcmRzOiBvcHRpb25zLm1heFJlY29yZHMsXG4gICAgICAgICAgICAgICAgICAgIHBhZ2VTaXplOiBvcHRpb25zLnBhZ2VTaXplLFxuICAgICAgICAgICAgICAgICAgICBvZmZzZXQ6IG9wdGlvbnMub2Zmc2V0LFxuICAgICAgICAgICAgICAgICAgICBcImZpZWxkc1tdXCI6IG9wdGlvbnMuZmllbGRzLFxuICAgICAgICAgICAgICAgICAgICBcInNvcnRbMF1bZmllbGRdXCI6IG9wdGlvbnMuc29ydD8uWzBdPy5maWVsZCxcbiAgICAgICAgICAgICAgICAgICAgXCJzb3J0WzBdW2RpcmVjdGlvbl1cIjogb3B0aW9ucy5zb3J0Py5bMF0/LmRpcmVjdGlvbixcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIHJlY29yZHM6IHJlc3BvbnNlLmRhdGEucmVjb3JkcyA/PyBbXSxcbiAgICAgICAgICAgICAgICBvZmZzZXQ6IHJlc3BvbnNlLmRhdGEub2Zmc2V0LFxuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgICBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgICAgIHRocm93IGh0dHBFcnJvcihcIkFpcnRhYmxlXCIsIFwibGlzdCByZWNvcmRzXCIsIGVycm9yKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb24gRmV0Y2hlcyBhIHNpbmdsZSBBaXJ0YWJsZSByZWNvcmRcbiAgICAgKiBAc3VtbWFyeSBgR0VUYHMgdGhlIHRhYmxlIGVuZHBvaW50IHdpdGggdGhlIHJlY29yZCBJRCBhcHBlbmRlZCBhbmRcbiAgICAgKiByZXR1cm5zIHRoZSByZWNvcmQgZW52ZWxvcGUuXG4gICAgICogQHBhcmFtIHtzdHJpbmd9IHRhYmxlIC0gVGhlIHRhYmxlIG5hbWUgb3IgSUQuXG4gICAgICogQHBhcmFtIHtzdHJpbmd9IHJlY29yZElkIC0gVGhlIHJlY29yZCBJRCB0byBmZXRjaCAoZS5nLiBgXCJyZWMxMjM0NTY3ODkwXCJgKS5cbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gW2Jhc2VJZF0gLSBUaGUgYmFzZSBvdmVycmlkZTsgZmFsbHMgYmFjayB0byB0aGUgY29uZmlndXJlZCBgYmFzZUlkYC5cbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZTxBaXJ0YWJsZVJlY29yZD59IFRoZSByZWNvcmQgZW52ZWxvcGUuXG4gICAgICogQHRocm93cyB7SW50ZXJuYWxFcnJvcn0gV2hlbiBubyB0b2tlbiBpcyBjb25maWd1cmVkIG9yIHRoZSB0YWJsZS9iYXNlIGNhbm5vdCBiZSByZXNvbHZlZC5cbiAgICAgKiBAdGhyb3dzIHtOb3RGb3VuZEVycm9yfSBXaGVuIHRoZSByZWNvcmQgZG9lcyBub3QgZXhpc3QgKEhUVFAgNDA0KS5cbiAgICAgKiBAdGhyb3dzIHtDb25mbGljdEVycm9yfSBXaGVuIEFpcnRhYmxlIGFuc3dlcnMgd2l0aCBIVFRQIDQwOS5cbiAgICAgKiBAdGhyb3dzIHtCYWRSZXF1ZXN0RXJyb3J9IFdoZW4gQWlydGFibGUgYW5zd2VycyB3aXRoIGFueSBvdGhlciBIVFRQIGVycm9yIHN0YXR1cy5cbiAgICAgKi9cbiAgICBhc3luYyBnZXRSZWNvcmQodGFibGUsIHJlY29yZElkLCBiYXNlSWQpIHtcbiAgICAgICAgdGhpcy5yZXF1aXJlVG9rZW4oKTtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5jbGllbnQuZ2V0KGAke3RoaXMudGFibGVQYXRoKHRhYmxlLCBiYXNlSWQpfS8ke2VuY29kZVVSSUNvbXBvbmVudChyZWNvcmRJZCl9YCk7XG4gICAgICAgICAgICByZXR1cm4gcmVzcG9uc2UuZGF0YTtcbiAgICAgICAgfVxuICAgICAgICBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgICAgIHRocm93IGh0dHBFcnJvcihcIkFpcnRhYmxlXCIsIFwiZ2V0IHJlY29yZFwiLCBlcnJvcik7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIENyZWF0ZXMgYW4gQWlydGFibGUgcmVjb3JkXG4gICAgICogQHN1bW1hcnkgYFBPU1RgcyB0aGUgZmllbGRzIG1hcCB0byB0aGUgdGFibGUgZW5kcG9pbnQ7IGB0eXBlY2FzdGAgbGV0c1xuICAgICAqIEFpcnRhYmxlIGNvZXJjZSB2YWx1ZXMgaW50byB0aGUgY29sdW1uIHR5cGVzIChkaXNhYmxlZCBieSBkZWZhdWx0KS5cbiAgICAgKiBAcGFyYW0ge0FpcnRhYmxlV3JpdGVJbnB1dH0gaW5wdXQgLSBUaGUgdGFibGUsIGZpZWxkcywgYW5kIHR5cGVjYXN0IG9wdGlvbi5cbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gW2Jhc2VJZF0gLSBUaGUgYmFzZSBvdmVycmlkZTsgZmFsbHMgYmFjayB0byB0aGUgY29uZmlndXJlZCBgYmFzZUlkYC5cbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZTxBaXJ0YWJsZVJlY29yZD59IFRoZSBjcmVhdGVkIHJlY29yZCBlbnZlbG9wZS5cbiAgICAgKiBAdGhyb3dzIHtJbnRlcm5hbEVycm9yfSBXaGVuIG5vIHRva2VuIGlzIGNvbmZpZ3VyZWQgb3IgdGhlIHRhYmxlL2Jhc2UgY2Fubm90IGJlIHJlc29sdmVkLlxuICAgICAqIEB0aHJvd3Mge05vdEZvdW5kRXJyb3J9IFdoZW4gdGhlIGJhc2Ugb3IgdGFibGUgZG9lcyBub3QgZXhpc3QgKEhUVFAgNDA0KS5cbiAgICAgKiBAdGhyb3dzIHtDb25mbGljdEVycm9yfSBXaGVuIEFpcnRhYmxlIGFuc3dlcnMgd2l0aCBIVFRQIDQwOS5cbiAgICAgKiBAdGhyb3dzIHtCYWRSZXF1ZXN0RXJyb3J9IFdoZW4gQWlydGFibGUgYW5zd2VycyB3aXRoIGFueSBvdGhlciBIVFRQIGVycm9yIHN0YXR1cyAoZS5nLiBpbnZhbGlkIGZpZWxkIHZhbHVlcykuXG4gICAgICovXG4gICAgYXN5bmMgY3JlYXRlUmVjb3JkKGlucHV0LCBiYXNlSWQpIHtcbiAgICAgICAgdGhpcy5yZXF1aXJlVG9rZW4oKTtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5jbGllbnQucG9zdCh0aGlzLnRhYmxlUGF0aChpbnB1dC50YWJsZSwgYmFzZUlkKSwgeyBmaWVsZHM6IGlucHV0LmZpZWxkcywgdHlwZWNhc3Q6IGlucHV0LnR5cGVjYXN0ID8/IGZhbHNlIH0pO1xuICAgICAgICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICB0aHJvdyBodHRwRXJyb3IoXCJBaXJ0YWJsZVwiLCBcImNyZWF0ZSByZWNvcmRcIiwgZXJyb3IpO1xuICAgICAgICB9XG4gICAgfVxuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvbiBVcGRhdGVzIGFuIEFpcnRhYmxlIHJlY29yZFxuICAgICAqIEBzdW1tYXJ5IGBQQVRDSGBlcyB0aGUgZmllbGRzIG1hcCBvbnRvIHRoZSByZWNvcmQgaWRlbnRpZmllZCBieVxuICAgICAqIGByZWNvcmRJZGA7IG9ubHkgdGhlIHByb3ZpZGVkIGZpZWxkcyBjaGFuZ2UuIGB0eXBlY2FzdGAgbGV0cyBBaXJ0YWJsZVxuICAgICAqIGNvZXJjZSB2YWx1ZXMgaW50byB0aGUgY29sdW1uIHR5cGVzIChkaXNhYmxlZCBieSBkZWZhdWx0KS5cbiAgICAgKiBAcGFyYW0ge0FpcnRhYmxlV3JpdGVJbnB1dCAmIHtyZWNvcmRJZDogc3RyaW5nfX0gaW5wdXQgLSBUaGUgdGFibGUsIGZpZWxkcywgdHlwZWNhc3Qgb3B0aW9uLCBhbmQgdGFyZ2V0IHJlY29yZCBJRC5cbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gW2Jhc2VJZF0gLSBUaGUgYmFzZSBvdmVycmlkZTsgZmFsbHMgYmFjayB0byB0aGUgY29uZmlndXJlZCBgYmFzZUlkYC5cbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZTxBaXJ0YWJsZVJlY29yZD59IFRoZSB1cGRhdGVkIHJlY29yZCBlbnZlbG9wZS5cbiAgICAgKiBAdGhyb3dzIHtJbnRlcm5hbEVycm9yfSBXaGVuIG5vIHRva2VuIGlzIGNvbmZpZ3VyZWQgb3IgdGhlIHRhYmxlL2Jhc2UgY2Fubm90IGJlIHJlc29sdmVkLlxuICAgICAqIEB0aHJvd3Mge05vdEZvdW5kRXJyb3J9IFdoZW4gdGhlIHJlY29yZCBkb2VzIG5vdCBleGlzdCAoSFRUUCA0MDQpLlxuICAgICAqIEB0aHJvd3Mge0NvbmZsaWN0RXJyb3J9IFdoZW4gQWlydGFibGUgYW5zd2VycyB3aXRoIEhUVFAgNDA5LlxuICAgICAqIEB0aHJvd3Mge0JhZFJlcXVlc3RFcnJvcn0gV2hlbiBBaXJ0YWJsZSBhbnN3ZXJzIHdpdGggYW55IG90aGVyIEhUVFAgZXJyb3Igc3RhdHVzIChlLmcuIGludmFsaWQgZmllbGQgdmFsdWVzKS5cbiAgICAgKi9cbiAgICBhc3luYyB1cGRhdGVSZWNvcmQoaW5wdXQsIGJhc2VJZCkge1xuICAgICAgICB0aGlzLnJlcXVpcmVUb2tlbigpO1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLmNsaWVudC5wYXRjaChgJHt0aGlzLnRhYmxlUGF0aChpbnB1dC50YWJsZSwgYmFzZUlkKX0vJHtlbmNvZGVVUklDb21wb25lbnQoaW5wdXQucmVjb3JkSWQpfWAsIHsgZmllbGRzOiBpbnB1dC5maWVsZHMsIHR5cGVjYXN0OiBpbnB1dC50eXBlY2FzdCA/PyBmYWxzZSB9KTtcbiAgICAgICAgICAgIHJldHVybiByZXNwb25zZS5kYXRhO1xuICAgICAgICB9XG4gICAgICAgIGNhdGNoIChlcnJvcikge1xuICAgICAgICAgICAgdGhyb3cgaHR0cEVycm9yKFwiQWlydGFibGVcIiwgXCJ1cGRhdGUgcmVjb3JkXCIsIGVycm9yKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb24gRGVsZXRlcyBhbiBBaXJ0YWJsZSByZWNvcmRcbiAgICAgKiBAc3VtbWFyeSBgREVMRVRFYHMgdGhlIHJlY29yZCBpZGVudGlmaWVkIGJ5IGByZWNvcmRJZGAgYW5kIHJldHVybnMgdGhlXG4gICAgICogQWlydGFibGUgZGVsZXRpb24gY29uZmlybWF0aW9uLlxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSB0YWJsZSAtIFRoZSB0YWJsZSBuYW1lIG9yIElELlxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSByZWNvcmRJZCAtIFRoZSByZWNvcmQgSUQgdG8gZGVsZXRlLlxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBbYmFzZUlkXSAtIFRoZSBiYXNlIG92ZXJyaWRlOyBmYWxscyBiYWNrIHRvIHRoZSBjb25maWd1cmVkIGBiYXNlSWRgLlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlPHtpZDogc3RyaW5nLCBkZWxldGVkOiBib29sZWFufT59IFRoZSBkZWxldGVkIHJlY29yZCdzIElEIGFuZCBBaXJ0YWJsZSdzIGBkZWxldGVkYCBjb25maXJtYXRpb24uXG4gICAgICogQHRocm93cyB7SW50ZXJuYWxFcnJvcn0gV2hlbiBubyB0b2tlbiBpcyBjb25maWd1cmVkIG9yIHRoZSB0YWJsZS9iYXNlIGNhbm5vdCBiZSByZXNvbHZlZC5cbiAgICAgKiBAdGhyb3dzIHtOb3RGb3VuZEVycm9yfSBXaGVuIHRoZSByZWNvcmQgZG9lcyBub3QgZXhpc3QgKEhUVFAgNDA0KS5cbiAgICAgKiBAdGhyb3dzIHtDb25mbGljdEVycm9yfSBXaGVuIEFpcnRhYmxlIGFuc3dlcnMgd2l0aCBIVFRQIDQwOS5cbiAgICAgKiBAdGhyb3dzIHtCYWRSZXF1ZXN0RXJyb3J9IFdoZW4gQWlydGFibGUgYW5zd2VycyB3aXRoIGFueSBvdGhlciBIVFRQIGVycm9yIHN0YXR1cy5cbiAgICAgKi9cbiAgICBhc3luYyBkZWxldGVSZWNvcmQodGFibGUsIHJlY29yZElkLCBiYXNlSWQpIHtcbiAgICAgICAgdGhpcy5yZXF1aXJlVG9rZW4oKTtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5jbGllbnQuZGVsZXRlKGAke3RoaXMudGFibGVQYXRoKHRhYmxlLCBiYXNlSWQpfS8ke2VuY29kZVVSSUNvbXBvbmVudChyZWNvcmRJZCl9YCk7XG4gICAgICAgICAgICByZXR1cm4gcmVzcG9uc2UuZGF0YTtcbiAgICAgICAgfVxuICAgICAgICBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgICAgIHRocm93IGh0dHBFcnJvcihcIkFpcnRhYmxlXCIsIFwiZGVsZXRlIHJlY29yZFwiLCBlcnJvcik7XG4gICAgICAgIH1cbiAgICB9XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247YmFzZTY0LGV5SjJaWEp6YVc5dUlqb3pMQ0ptYVd4bElqb2lRV2x5ZEdGaWJHVlRaWEoyYVdObExtcHpJaXdpYzI5MWNtTmxVbTl2ZENJNklpSXNJbk52ZFhKalpYTWlPbHNpTGk0dkxpNHZMaTR2TGk0dmMzSmpMMmx2TDJGcGNuUmhZbXhsTDBGcGNuUmhZbXhsVTJWeWRtbGpaUzUwY3lKZExDSnVZVzFsY3lJNlcxMHNJbTFoY0hCcGJtZHpJam9pUVVGQlFUczdPenM3T3pzN08wZEJVMGM3UVVGRFNDeFBRVUZQTEVWQlFVVXNZVUZCWVN4RlFVRkZMRTFCUVUwc2VVSkJRWGxDTEVOQlFVTTdRVUZEZUVRc1QwRkJUeXhGUVVGRkxHRkJRV0VzUlVGQlJTdzBRa0ZCZFVJN1FVRkRMME1zVDBGQlR5eEZRVUZGTEZOQlFWTXNSVUZCUlN4VFFVRlRMRVZCUVVVc01rTkJRWE5ETzBGQlEzSkZMRTlCUVU4c1JVRkRUQ3hqUVVGakxFVkJSV1FzVTBGQlV5eEhRVU5XTEhGRFFVRXdRanRCUVRKSE0wSTdPenM3T3pzN096czdPenM3T3pzN096czdPenM3T3pzN08wZEJNRUpITzBGQlEwZ3NUVUZCVFN4UFFVRlBMR1ZCUVdkQ0xGTkJRVkVzWTBGQmNVTTdTVUZCTVVVN08xRkJRMFU3TzFkQlJVYzdVVUZEWjBJc1owSkJRVmNzUjBGQlJ5eFZRVUZWTEVOQlFVTTdTVUY1VURsRExFTkJRVU03U1VGMlVFTTdPenM3VDBGSlJ6dEpRVU5QTEdOQlFXTTdVVUZEZEVJc1QwRkJUeXcyUWtGQk5rSXNRMEZCUXp0SlFVTjJReXhEUVVGRE8wbEJSVVE3T3pzN096dFBRVTFITzBsQlEwOHNWMEZCVnl4RFFVRkRMRTFCUVRaQ08xRkJRMnBFTEU5QlFVOHNUVUZCVFN4RFFVRkRMRXRCUVVzc1EwRkJReXhEUVVGRExFTkJRVU1zUlVGQlJTeGhRVUZoTEVWQlFVVXNWVUZCVlN4TlFVRk5MRU5CUVVNc1MwRkJTeXhGUVVGRkxFVkJRVVVzUTBGQlF5eERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRPMGxCUTNwRkxFTkJRVU03U1VGRlJEczdPenM3TzA5QlRVYzdTVUZEVHl4eFFrRkJjVUk3VVVGRE4wSXNUVUZCVFN4SFFVRkhMRWRCUVVjc1lVRkJZU3hEUVVGRExFVkJRVVVzUTBGQlF5eFJRVUZSTEVOQlFVTTdVVUZEZEVNc1RVRkJUU3hMUVVGTExFZEJRVWNzVTBGQlV5eERRVUZETEVkQlFVY3NSVUZCUlN4TFFVRkxMRU5CUVVNc1EwRkJRenRSUVVOd1F5eEpRVUZKTEVOQlFVTXNTMEZCU3p0WlFVRkZMRTlCUVU4c1UwRkJVeXhEUVVGRE8xRkJRemRDTEU5QlFVODdXVUZEVEN4TFFVRkxPMWxCUTB3c1RVRkJUU3hGUVVGRkxGTkJRVk1zUTBGQlF5eEhRVUZITEVOQlFVTXNUVUZCVFN4RFFVRkRPMWxCUXpkQ0xFOUJRVThzUlVGQlJTeFRRVUZUTEVOQlFVTXNSMEZCUnl4RFFVRkRMRTlCUVU4c1EwRkJRenRaUVVNdlFpeFBRVUZQTEVWQlFVVXNVMEZCVXl4RFFVRkRMRWRCUVVjc1EwRkJReXhQUVVGUExFTkJRVU03VTBGRGFFTXNRMEZCUXp0SlFVTktMRU5CUVVNN1NVRkZSRHM3T3pzN096dFBRVTlITzBsQlEwOHNVVUZCVVN4RFFVRkRMRTFCUVdVN1VVRkRhRU1zVFVGQlRTeFJRVUZSTEVkQlFVY3NUVUZCVFN4SlFVRkpMRWxCUVVrc1EwRkJReXhOUVVGTkxFTkJRVU1zVFVGQlRTeERRVUZETzFGQlF6bERMRWxCUVVrc1EwRkJReXhSUVVGUkxFVkJRVVVzUTBGQlF6dFpRVU5rTEUxQlFVMHNTVUZCU1N4aFFVRmhMRU5CUVVNc05rSkJRVFpDTEVOQlFVTXNRMEZCUXp0UlFVTjZSQ3hEUVVGRE8xRkJRMFFzVDBGQlR5eEpRVUZKTEd0Q1FVRnJRaXhEUVVGRExGRkJRVkVzUTBGQlF5eEZRVUZGTEVOQlFVTTdTVUZETlVNc1EwRkJRenRKUVVWRU96czdPenM3T3p0UFFWRkhPMGxCUTA4c1UwRkJVeXhEUVVGRExFdEJRV0VzUlVGQlJTeE5RVUZsTzFGQlEyaEVMRWxCUVVrc1EwRkJReXhMUVVGTE8xbEJRVVVzVFVGQlRTeEpRVUZKTEdGQlFXRXNRMEZCUXl4blEwRkJaME1zUTBGQlF5eERRVUZETzFGQlEzUkZMRTlCUVU4c1IwRkJSeXhKUVVGSkxFTkJRVU1zVVVGQlVTeERRVUZETEUxQlFVMHNRMEZCUXl4SlFVRkpMR3RDUVVGclFpeERRVUZETEV0QlFVc3NRMEZCUXl4RlFVRkZMRU5CUVVNN1NVRkRha1VzUTBGQlF6dEpRVVZFT3pzN096czdPenM3T3pzN096czdPenM3T3pzN096czdPenM3TzA5Qk5FSkhPMGxCUTBnc1MwRkJTeXhEUVVGRExGZEJRVmNzUTBGRFppeFBRVUUwUWl4RlFVTTFRaXhOUVVGbE8xRkJSV1lzU1VGQlNTeERRVUZETEZsQlFWa3NSVUZCUlN4RFFVRkRPMUZCUTNCQ0xFbEJRVWtzUTBGQlF6dFpRVU5JTEUxQlFVMHNVVUZCVVN4SFFVRkhMRTFCUVUwc1NVRkJTU3hEUVVGRExFMUJRVTBzUTBGQlF5eEhRVUZITEVOQlEzQkRMRWxCUVVrc1EwRkJReXhUUVVGVExFTkJRVU1zVDBGQlR5eERRVUZETEV0QlFVc3NSVUZCUlN4TlFVRk5MRU5CUVVNc1JVRkRja003WjBKQlEwVXNUVUZCVFN4RlFVRkZPMjlDUVVOT0xFbEJRVWtzUlVGQlJTeFBRVUZQTEVOQlFVTXNTVUZCU1R0dlFrRkRiRUlzWlVGQlpTeEZRVUZGTEU5QlFVOHNRMEZCUXl4bFFVRmxPMjlDUVVONFF5eFZRVUZWTEVWQlFVVXNUMEZCVHl4RFFVRkRMRlZCUVZVN2IwSkJRemxDTEZGQlFWRXNSVUZCUlN4UFFVRlBMRU5CUVVNc1VVRkJVVHR2UWtGRE1VSXNUVUZCVFN4RlFVRkZMRTlCUVU4c1EwRkJReXhOUVVGTk8yOUNRVU4wUWl4VlFVRlZMRVZCUVVVc1QwRkJUeXhEUVVGRExFMUJRVTA3YjBKQlF6RkNMR2RDUVVGblFpeEZRVUZGTEU5QlFVOHNRMEZCUXl4SlFVRkpMRVZCUVVVc1EwRkJReXhEUVVGRExFTkJRVU1zUlVGQlJTeExRVUZMTzI5Q1FVTXhReXh2UWtGQmIwSXNSVUZCUlN4UFFVRlBMRU5CUVVNc1NVRkJTU3hGUVVGRkxFTkJRVU1zUTBGQlF5eERRVUZETEVWQlFVVXNVMEZCVXp0cFFrRkRia1E3WVVGRFJpeERRVU5HTEVOQlFVTTdXVUZEUml4UFFVRlBPMmRDUVVOTUxFOUJRVThzUlVGQlJTeFJRVUZSTEVOQlFVTXNTVUZCU1N4RFFVRkRMRTlCUVU4c1NVRkJTU3hGUVVGRk8yZENRVU53UXl4TlFVRk5MRVZCUVVVc1VVRkJVU3hEUVVGRExFbEJRVWtzUTBGQlF5eE5RVUZOTzJGQlF6ZENMRU5CUVVNN1VVRkRTaXhEUVVGRE8xRkJRVU1zVDBGQlR5eExRVUZMTEVWQlFVVXNRMEZCUXp0WlFVTm1MRTFCUVUwc1UwRkJVeXhEUVVGRExGVkJRVlVzUlVGQlJTeGpRVUZqTEVWQlFVVXNTMEZCU3l4RFFVRkRMRU5CUVVNN1VVRkRja1FzUTBGQlF6dEpRVU5JTEVOQlFVTTdTVUZGUkRzN096czdPenM3T3pzN08wOUJXVWM3U1VGRFNDeExRVUZMTEVOQlFVTXNVMEZCVXl4RFFVTmlMRXRCUVdFc1JVRkRZaXhSUVVGblFpeEZRVU5vUWl4TlFVRmxPMUZCUldZc1NVRkJTU3hEUVVGRExGbEJRVmtzUlVGQlJTeERRVUZETzFGQlEzQkNMRWxCUVVrc1EwRkJRenRaUVVOSUxFMUJRVTBzVVVGQlVTeEhRVUZITEUxQlFVMHNTVUZCU1N4RFFVRkRMRTFCUVUwc1EwRkJReXhIUVVGSExFTkJRM0JETEVkQlFVY3NTVUZCU1N4RFFVRkRMRk5CUVZNc1EwRkJReXhMUVVGTExFVkJRVVVzVFVGQlRTeERRVUZETEVsQlFVa3NhMEpCUVd0Q0xFTkJRVU1zVVVGQlVTeERRVUZETEVWQlFVVXNRMEZEYmtVc1EwRkJRenRaUVVOR0xFOUJRVThzVVVGQlVTeERRVUZETEVsQlFVa3NRMEZCUXp0UlFVTjJRaXhEUVVGRE8xRkJRVU1zVDBGQlR5eExRVUZMTEVWQlFVVXNRMEZCUXp0WlFVTm1MRTFCUVUwc1UwRkJVeXhEUVVGRExGVkJRVlVzUlVGQlJTeFpRVUZaTEVWQlFVVXNTMEZCU3l4RFFVRkRMRU5CUVVNN1VVRkRia1FzUTBGQlF6dEpRVU5JTEVOQlFVTTdTVUZGUkRzN096czdPenM3T3pzN1QwRlhSenRKUVVOSUxFdEJRVXNzUTBGQlF5eFpRVUZaTEVOQlEyaENMRXRCUVhsQ0xFVkJRM3BDTEUxQlFXVTdVVUZGWml4SlFVRkpMRU5CUVVNc1dVRkJXU3hGUVVGRkxFTkJRVU03VVVGRGNFSXNTVUZCU1N4RFFVRkRPMWxCUTBnc1RVRkJUU3hSUVVGUkxFZEJRVWNzVFVGQlRTeEpRVUZKTEVOQlFVTXNUVUZCVFN4RFFVRkRMRWxCUVVrc1EwRkRja01zU1VGQlNTeERRVUZETEZOQlFWTXNRMEZCUXl4TFFVRkxMRU5CUVVNc1MwRkJTeXhGUVVGRkxFMUJRVTBzUTBGQlF5eEZRVU51UXl4RlFVRkZMRTFCUVUwc1JVRkJSU3hMUVVGTExFTkJRVU1zVFVGQlRTeEZRVUZGTEZGQlFWRXNSVUZCUlN4TFFVRkxMRU5CUVVNc1VVRkJVU3hKUVVGSkxFdEJRVXNzUlVGQlJTeERRVU0xUkN4RFFVRkRPMWxCUTBZc1QwRkJUeXhSUVVGUkxFTkJRVU1zU1VGQlNTeERRVUZETzFGQlEzWkNMRU5CUVVNN1VVRkJReXhQUVVGUExFdEJRVXNzUlVGQlJTeERRVUZETzFsQlEyWXNUVUZCVFN4VFFVRlRMRU5CUVVNc1ZVRkJWU3hGUVVGRkxHVkJRV1VzUlVGQlJTeExRVUZMTEVOQlFVTXNRMEZCUXp0UlFVTjBSQ3hEUVVGRE8wbEJRMGdzUTBGQlF6dEpRVVZFT3pzN096czdPenM3T3pzN1QwRlpSenRKUVVOSUxFdEJRVXNzUTBGQlF5eFpRVUZaTEVOQlEyaENMRXRCUVdkRUxFVkJRMmhFTEUxQlFXVTdVVUZGWml4SlFVRkpMRU5CUVVNc1dVRkJXU3hGUVVGRkxFTkJRVU03VVVGRGNFSXNTVUZCU1N4RFFVRkRPMWxCUTBnc1RVRkJUU3hSUVVGUkxFZEJRVWNzVFVGQlRTeEpRVUZKTEVOQlFVTXNUVUZCVFN4RFFVRkRMRXRCUVVzc1EwRkRkRU1zUjBGQlJ5eEpRVUZKTEVOQlFVTXNVMEZCVXl4RFFVRkRMRXRCUVVzc1EwRkJReXhMUVVGTExFVkJRVVVzVFVGQlRTeERRVUZETEVsQlFVa3NhMEpCUVd0Q0xFTkJRekZFTEV0QlFVc3NRMEZCUXl4UlFVRlJMRU5CUTJZc1JVRkJSU3hGUVVOSUxFVkJRVVVzVFVGQlRTeEZRVUZGTEV0QlFVc3NRMEZCUXl4TlFVRk5MRVZCUVVVc1VVRkJVU3hGUVVGRkxFdEJRVXNzUTBGQlF5eFJRVUZSTEVsQlFVa3NTMEZCU3l4RlFVRkZMRU5CUXpWRUxFTkJRVU03V1VGRFJpeFBRVUZQTEZGQlFWRXNRMEZCUXl4SlFVRkpMRU5CUVVNN1VVRkRka0lzUTBGQlF6dFJRVUZETEU5QlFVOHNTMEZCU3l4RlFVRkZMRU5CUVVNN1dVRkRaaXhOUVVGTkxGTkJRVk1zUTBGQlF5eFZRVUZWTEVWQlFVVXNaVUZCWlN4RlFVRkZMRXRCUVVzc1EwRkJReXhEUVVGRE8xRkJRM1JFTEVOQlFVTTdTVUZEU0N4RFFVRkRPMGxCUlVRN096czdPenM3T3pzN096dFBRVmxITzBsQlEwZ3NTMEZCU3l4RFFVRkRMRmxCUVZrc1EwRkRhRUlzUzBGQllTeEZRVU5pTEZGQlFXZENMRVZCUTJoQ0xFMUJRV1U3VVVGRlppeEpRVUZKTEVOQlFVTXNXVUZCV1N4RlFVRkZMRU5CUVVNN1VVRkRjRUlzU1VGQlNTeERRVUZETzFsQlEwZ3NUVUZCVFN4UlFVRlJMRWRCUVVjc1RVRkJUU3hKUVVGSkxFTkJRVU1zVFVGQlRTeERRVUZETEUxQlFVMHNRMEZKZGtNc1IwRkJSeXhKUVVGSkxFTkJRVU1zVTBGQlV5eERRVUZETEV0QlFVc3NSVUZCUlN4TlFVRk5MRU5CUVVNc1NVRkJTU3hyUWtGQmEwSXNRMEZCUXl4UlFVRlJMRU5CUVVNc1JVRkJSU3hEUVVOdVJTeERRVUZETzFsQlEwWXNUMEZCVHl4UlFVRlJMRU5CUVVNc1NVRkJTU3hEUVVGRE8xRkJRM1pDTEVOQlFVTTdVVUZCUXl4UFFVRlBMRXRCUVVzc1JVRkJSU3hEUVVGRE8xbEJRMllzVFVGQlRTeFRRVUZUTEVOQlFVTXNWVUZCVlN4RlFVRkZMR1ZCUVdVc1JVRkJSU3hMUVVGTExFTkJRVU1zUTBGQlF6dFJRVU4wUkN4RFFVRkRPMGxCUTBnc1EwRkJRenREUVVOR0lpd2ljMjkxY21ObGMwTnZiblJsYm5RaU9sc2lMeW9xWEc0Z0tpQkFiVzlrZFd4bElHbHVkR1ZuY21GMGFXOXVjeTlwYnk5aGFYSjBZV0pzWlM5elpYSjJhV05sWEc0Z0tpQkFjM1Z0YldGeWVTQkJhWEowWVdKc1pTQlhaV0lnUVZCSklHbHVkR1ZuY21GMGFXOXVJSE5sY25acFkyVWdabTl5SUVOU1ZVUWdiM0JsY21GMGFXOXVjeUJ2YmlCaVlYTmxJSEpsWTI5eVpITXVYRzRnS2lCQVpHVnpZM0pwY0hScGIyNGdSWGh3YjNObGN5QjBhR1VnUVdseWRHRmliR1VnZGpBZ2NtVmpiM0prY3lCQlVFa2dLR3hwYzNRc0lHZGxkQ3dnWTNKbFlYUmxMQ0IxY0dSaGRHVXNYRzRnS2lCa1pXeGxkR1VwSUdGeklHRnVJSFZ1WkdWamIzSmhkR1ZrSUdOc2FXVnVkQzFpWVhObFpDQnpaWEoyYVdObElHSjFhV3gwSUc5dVhHNGdLaUI3UUd4cGJtc2dTSFIwY0VGd2FWTmxjblpwWTJWOUxpQkRiMjVtYVdkMWNtRjBhVzl1SUdOdmJXVnpJR1p5YjIwZ1lXNGdaWGh3YkdsamFYUmNiaUFxSUdCQmFYSjBZV0pzWlZObGNuWnBZMlZEYjI1bWFXZGdJRzl5SUhSb1pTQmdhVzh1WVdseWRHRmliR1ZnSUdWdWRtbHliMjV0Wlc1MElITnNhV05sT3lCaVlYTmxYRzRnS2lCMFlYSm5aWFJ6SUdSbFptRjFiSFFnZEc4Z2RHaGxJR052Ym1acFozVnlaV1FnWUdKaGMyVkpaR0FnWVc1a0lHTmhiaUJpWlNCdmRtVnljbWxrWkdWdUlIQmxjaUJqWVd4c0xseHVJQ29nUm1GcGJIVnlaWE1nWVhKbElHMWhjSEJsWkNCMGJ5QmtaV05oWmlCbGNuSnZjbk1nZG1saElIdEFiR2x1YXlCb2RIUndSWEp5YjNKOUxseHVJQ292WEc1cGJYQnZjblFnZXlCSmJuUmxjbTVoYkVWeWNtOXlJSDBnWm5KdmJTQmNJa0JrWldOaFppMTBjeTlrWWkxa1pXTnZjbUYwYjNKelhDSTdYRzVwYlhCdmNuUWdleUJKYjBWdWRtbHliMjV0Wlc1MElIMGdabkp2YlNCY0lpNHVMMlZ1ZG1seWIyNXRaVzUwWENJN1hHNXBiWEJ2Y25RZ2V5QmxiblpPZFcxaVpYSXNJR1Z1ZGxOMGNtbHVaeUI5SUdaeWIyMGdYQ0l1TGk4dUxpOXphR0Z5WldRdlpXNTJhWEp2Ym0xbGJuUldZV3gxWlZ3aU8xeHVhVzF3YjNKMElIdGNiaUFnU0hSMGNFRndhVk5sY25acFkyVXNYRzRnSUhSNWNHVWdTSFIwY0VGd2FWTmxjblpwWTJWRGIyNW1hV2NzWEc0Z0lHaDBkSEJGY25KdmNpeGNibjBnWm5KdmJTQmNJaTR1THk0dUwzTm9ZWEpsWkM5b2RIUndYQ0k3WEc1Y2JpOHFLbHh1SUNvZ1FHUmxjMk55YVhCMGFXOXVJRU52Ym1acFozVnlZWFJwYjI0Z1ptOXlJSFJvWlNCQmFYSjBZV0pzWlNCelpYSjJhV05sWEc0Z0tpQkFjM1Z0YldGeWVTQkZlSFJsYm1SeklIdEFiR2x1YXlCSWRIUndRWEJwVTJWeWRtbGpaVU52Ym1acFozMGdkMmwwYUNCMGFHVWdRV2x5ZEdGaWJHVWdjR1Z5YzI5dVlXeGNiaUFxSUdGalkyVnpjeUIwYjJ0bGJpQW9jMlZ1ZENCaGN5QmhJR0psWVhKbGNpQjBiMnRsYmlrZ1lXNWtJSFJvWlNCa1pXWmhkV3gwSUdCaVlYTmxTV1JnSUhWelpXUWdkMmhsYmlCaFhHNGdLaUJqWVd4c0lHUnZaWE1nYm05MElHOTJaWEp5YVdSbElHbDBMaUJYYUdWdUlHOXRhWFIwWldRc0lIUm9aU0JnYVc4dVlXbHlkR0ZpYkdWZ0lHVnVkbWx5YjI1dFpXNTBYRzRnS2lCemJHbGpaU0J6ZFhCd2JHbGxjeUIwYUdVZ2RHOXJaVzRnS0dGdVpDQnZjSFJwYjI1aGJDQmdZbUZ6WlVsa1lDd2dZR0poYzJWVmNteGdMQ0JnZEdsdFpXOTFkR0FwTGx4dUlDb2dRR05oZEdWbmIzSjVJRWxQWEc0Z0tpQkFiV1Z0WW1WeVQyWWdiVzlrZFd4bE9tbHVkR1ZuY21GMGFXOXVjeTlwYnk5aGFYSjBZV0pzWlM5elpYSjJhV05sWEc0Z0tpOWNibVY0Y0c5eWRDQnBiblJsY21aaFkyVWdRV2x5ZEdGaWJHVlRaWEoyYVdObFEyOXVabWxuSUdWNGRHVnVaSE1nU0hSMGNFRndhVk5sY25acFkyVkRiMjVtYVdjZ2UxeHVJQ0F2S2lwY2JpQWdJQ29nUUdSbGMyTnlhWEIwYVc5dUlFRnBjblJoWW14bElIQmxjbk52Ym1Gc0lHRmpZMlZ6Y3lCMGIydGxibHh1SUNBZ0tpQkFjM1Z0YldGeWVTQlRaVzUwSUdGeklHQkJkWFJvYjNKcGVtRjBhVzl1T2lCQ1pXRnlaWElnUEhSdmEyVnVQbUFnZDJsMGFDQmxkbVZ5ZVNCQlVFa2dZMkZzYkM1Y2JpQWdJQ292WEc0Z0lIUnZhMlZ1UHpvZ2MzUnlhVzVuTzF4dUlDQXZLaXBjYmlBZ0lDb2dRR1JsYzJOeWFYQjBhVzl1SUVSbFptRjFiSFFnWW1GelpTQkpSQ0IxYzJWa0lIZG9aVzRnWVNCallXeHNJR1J2WlhNZ2JtOTBJRzkyWlhKeWFXUmxJR2wwWEc0Z0lDQXFMMXh1SUNCaVlYTmxTV1EvT2lCemRISnBibWM3WEc1OVhHNWNiaThxS2x4dUlDb2dRR1JsYzJOeWFYQjBhVzl1SUU1dmNtMWhiR2w2WldRZ1FXbHlkR0ZpYkdVZ2NtVmpiM0prSUdSbGMyTnlhWEIwYjNKY2JpQXFJRUJ6ZFcxdFlYSjVJRlJvWlNCQmFYSjBZV0pzWlNCeVpXTnZjbVFnWlc1MlpXeHZjR1U2SUhSb1pTQnlaV052Y21RZ1lHbGtZQ3dnZEdobElHQm1hV1ZzWkhOZ0lHMWhjRnh1SUNvZ0tHTnZiSFZ0YmlCdVlXMWxJSFJ2SUhaaGJIVmxLU3dnWVc1a0lIUm9aU0J2Y0hScGIyNWhiQ0JnWTNKbFlYUmxaRlJwYldWZ0lIUnBiV1Z6ZEdGdGNDNWNiaUFxSUVCallYUmxaMjl5ZVNCSlQxeHVJQ29nUUcxbGJXSmxjazltSUcxdlpIVnNaVHBwYm5SbFozSmhkR2x2Ym5NdmFXOHZZV2x5ZEdGaWJHVXZjMlZ5ZG1salpWeHVJQ292WEc1bGVIQnZjblFnYVc1MFpYSm1ZV05sSUVGcGNuUmhZbXhsVW1WamIzSmtJSHRjYmlBZ2FXUTZJSE4wY21sdVp6dGNiaUFnWm1sbGJHUnpPaUJTWldOdmNtUThjM1J5YVc1bkxDQjFibXR1YjNkdVBqdGNiaUFnWTNKbFlYUmxaRlJwYldVL09pQnpkSEpwYm1jN1hHNTlYRzVjYmk4cUtseHVJQ29nUUdSbGMyTnlhWEIwYVc5dUlFOXdkR2x2Ym5NZ1ptOXlJR3hwYzNScGJtY2dRV2x5ZEdGaWJHVWdjbVZqYjNKa2MxeHVJQ29nUUhOMWJXMWhjbmtnUTJGeWNtbGxjeUIwYUdVZ2NtVnhkV2x5WldRZ1lIUmhZbXhsWUNCdVlXMWxJSEJzZFhNZ2RHaGxJSFpwWlhjc0lHWnZjbTExYkdFZ1ptbHNkR1Z5TEZ4dUlDb2djbVZqYjNKa0lHTmhjSE1nWVc1a0lIQmhaMmx1WnlCdlptWnpaWFFzSUdacFpXeGtJSEJ5YjJwbFkzUnBiMjRzSUdGdVpDQm1hWEp6ZEMxemIzSjBJR052Ym1acFozVnlZWFJwYjI1Y2JpQXFJRUZwY25SaFlteGxJSE4xY0hCdmNuUnpMaUJQYm14NUlIUm9aU0JtYVhKemRDQnpiM0owSUdWdWRISjVJR2x6SUhObGJuUWdLRUZwY25SaFlteGxKM05jYmlBcUlHQnpiM0owV3pCZFcyWnBaV3hrWFdBdllITnZjblJiTUYxYlpHbHlaV04wYVc5dVhXQWdjWFZsY25rZ2NHRnlZVzFsZEdWeWN5azdJSEJoWjJsdVp5QjNiM0pyY3lCaWVWeHVJQ29nY0dGemMybHVaeUIwYUdVZ2NISmxkbWx2ZFhNZ2NHRm5aU2R6SUdCdlptWnpaWFJnSUdKaFkyc2dZWE1nWUc5bVpuTmxkR0F1WEc0Z0tpQkFZMkYwWldkdmNua2dTVTljYmlBcUlFQnRaVzFpWlhKUFppQnRiMlIxYkdVNmFXNTBaV2R5WVhScGIyNXpMMmx2TDJGcGNuUmhZbXhsTDNObGNuWnBZMlZjYmlBcUwxeHVaWGh3YjNKMElHbHVkR1Z5Wm1GalpTQkJhWEowWVdKc1pVeHBjM1JQY0hScGIyNXpJSHRjYmlBZ0x5b3FYRzRnSUNBcUlFQmtaWE5qY21sd2RHbHZiaUJVWVdKc1pTQnVZVzFsSUc5eUlFbEVJSFJ2SUd4cGMzUWdjbVZqYjNKa2N5Qm1jbTl0SUNoeVpYRjFhWEpsWkNsY2JpQWdJQ292WEc0Z0lIUmhZbXhsT2lCemRISnBibWM3WEc0Z0lDOHFLbHh1SUNBZ0tpQkFaR1Z6WTNKcGNIUnBiMjRnVm1sbGR5QnVZVzFsSUc5eUlFbEVJSFJ2SUhKbGMzUnlhV04wSUhSb1pTQnNhWE4wYVc1bklIUnZYRzRnSUNBcUwxeHVJQ0IyYVdWM1B6b2djM1J5YVc1bk8xeHVJQ0F2S2lwY2JpQWdJQ29nUUdSbGMyTnlhWEIwYVc5dUlFRnBjblJoWW14bElHWnZjbTExYkdFZ2NtVnpkSEpwWTNScGJtY2dkR2hsSUhKbGRIVnlibVZrSUhKbFkyOXlaSE1nS0dVdVp5NGdZRndpZTFOMFlYUjFjMzBnUFNBblFXTjBhWFpsSjF3aVlDbGNiaUFnSUNvdlhHNGdJR1pwYkhSbGNrSjVSbTl5YlhWc1lUODZJSE4wY21sdVp6dGNiaUFnTHlvcVhHNGdJQ0FxSUVCa1pYTmpjbWx3ZEdsdmJpQk5ZWGhwYlhWdElHNTFiV0psY2lCdlppQnlaV052Y21SeklIUnZJSEpsZEhWeWJpQnBiaUIwYjNSaGJGeHVJQ0FnS2k5Y2JpQWdiV0Y0VW1WamIzSmtjejg2SUc1MWJXSmxjanRjYmlBZ0x5b3FYRzRnSUNBcUlFQmtaWE5qY21sd2RHbHZiaUJPZFcxaVpYSWdiMllnY21WamIzSmtjeUJ3WlhJZ2NHRm5aVnh1SUNBZ0tpOWNiaUFnY0dGblpWTnBlbVUvT2lCdWRXMWlaWEk3WEc0Z0lDOHFLbHh1SUNBZ0tpQkFaR1Z6WTNKcGNIUnBiMjRnVkdobElHQnZabVp6WlhSZ0lHWnliMjBnZEdobElIQnlaWFpwYjNWeklIQmhaMlVuY3lCeVpYTjFiSFJjYmlBZ0lDb3ZYRzRnSUc5bVpuTmxkRDg2SUhOMGNtbHVaenRjYmlBZ0x5b3FYRzRnSUNBcUlFQmtaWE5qY21sd2RHbHZiaUJEYjJ4MWJXNGdibUZ0WlhNZ2RHOGdjSEp2YW1WamRGeHVJQ0FnS2k5Y2JpQWdabWxsYkdSelB6b2djM1J5YVc1blcxMDdYRzRnSUM4cUtseHVJQ0FnS2lCQVpHVnpZM0pwY0hScGIyNGdSbWx5YzNRZ2MyOXlkQ0JsYm5SeWVTQmhjSEJzYVdWa0lIUnZJSFJvWlNCc2FYTjBhVzVuWEc0Z0lDQXFMMXh1SUNCemIzSjBQem9nUVhKeVlYazhleUJtYVdWc1pEb2djM1J5YVc1bk95QmthWEpsWTNScGIyNC9PaUJjSW1Gelkxd2lJSHdnWENKa1pYTmpYQ0lnZlQ0N1hHNTlYRzVjYmk4cUtseHVJQ29nUUdSbGMyTnlhWEIwYVc5dUlGSmxjM1ZzZENCdlppQmhiaUJCYVhKMFlXSnNaU0J5WldOdmNtUWdiR2x6ZEdsdVoxeHVJQ29nUUhOMWJXMWhjbmtnUTJGeWNtbGxjeUIwYUdVZ2NHRm5aU0J2WmlCZ2NtVmpiM0prYzJBZ1lXNWtJSFJvWlNCZ2IyWm1jMlYwWUNCamRYSnpiM0lnZEc4Z2NHRnpjeUJpWVdOclhHNGdLaUJoY3lCZ1FXbHlkR0ZpYkdWTWFYTjBUM0IwYVc5dWN5NXZabVp6WlhSZ0lIZG9aVzRnYlc5eVpTQndZV2RsY3lCbGVHbHpkQzVjYmlBcUlFQmpZWFJsWjI5eWVTQkpUMXh1SUNvZ1FHMWxiV0psY2s5bUlHMXZaSFZzWlRwcGJuUmxaM0poZEdsdmJuTXZhVzh2WVdseWRHRmliR1V2YzJWeWRtbGpaVnh1SUNvdlhHNWxlSEJ2Y25RZ2FXNTBaWEptWVdObElFRnBjblJoWW14bFRHbHpkRkpsYzNWc2RDQjdYRzRnSUhKbFkyOXlaSE02SUVGcGNuUmhZbXhsVW1WamIzSmtXMTA3WEc0Z0lHOW1abk5sZEQ4NklITjBjbWx1Wnp0Y2JuMWNibHh1THlvcVhHNGdLaUJBWkdWelkzSnBjSFJwYjI0Z1NXNXdkWFFnWm05eUlHTnlaV0YwYVc1bklHOXlJSFZ3WkdGMGFXNW5JR0Z1SUVGcGNuUmhZbXhsSUhKbFkyOXlaRnh1SUNvZ1FITjFiVzFoY25rZ1EyRnljbWxsY3lCMGFHVWdjbVZ4ZFdseVpXUWdZSFJoWW14bFlDQnVZVzFsTENCMGFHVWdZR1pwWld4a2MyQWdiV0Z3SUhSdklIZHlhWFJsTENCaGJtUmNiaUFxSUhSb1pTQmdkSGx3WldOaGMzUmdJR1pzWVdjZ2JHVjBkR2x1WnlCQmFYSjBZV0pzWlNCamIyNTJaWEowSUhaaGJIVmxjeUIwYnlCMGFHVWdZMjlzZFcxdUlIUjVjR1Z6TGx4dUlDb2dZSFZ3WkdGMFpWSmxZMjl5WkdBZ1lXUmthWFJwYjI1aGJHeDVJR05oY25KcFpYTWdkR2hsSUdCeVpXTnZjbVJKWkdBdVhHNGdLaUJBWTJGMFpXZHZjbmtnU1U5Y2JpQXFJRUJ0WlcxaVpYSlBaaUJ0YjJSMWJHVTZhVzUwWldkeVlYUnBiMjV6TDJsdkwyRnBjblJoWW14bEwzTmxjblpwWTJWY2JpQXFMMXh1Wlhod2IzSjBJR2x1ZEdWeVptRmpaU0JCYVhKMFlXSnNaVmR5YVhSbFNXNXdkWFFnZTF4dUlDQjBZV0pzWlRvZ2MzUnlhVzVuTzF4dUlDQm1hV1ZzWkhNNklGSmxZMjl5WkR4emRISnBibWNzSUhWdWEyNXZkMjQrTzF4dUlDQjBlWEJsWTJGemREODZJR0p2YjJ4bFlXNDdYRzU5WEc1Y2JpOHFLbHh1SUNvZ1FHUmxjMk55YVhCMGFXOXVJRUZwY25SaFlteGxJRmRsWWlCQlVFa2dhVzUwWldkeVlYUnBiMjRnYzJWeWRtbGpaVnh1SUNvZ1FITjFiVzFoY25rZ1FXNGdkVzVrWldOdmNtRjBaV1FnU0ZSVVVDQnpaWEoyYVdObElHWnZjaUJzYVhOMGFXNW5JSEpsWTI5eVpITmNiaUFxSUhkcGRHZ2dabWxzZEdWeWFXNW5MQ0J6YjNKMGFXNW5MQ0JoYm1RZ1kzVnljMjl5SUhCaFoybHVaenNnWm1WMFkyaHBibWNzSUdOeVpXRjBhVzVuTENCMWNHUmhkR2x1Wnl4Y2JpQXFJR0Z1WkNCa1pXeGxkR2x1WnlCcGJtUnBkbWxrZFdGc0lISmxZMjl5WkhNdUlFSmhjMlVnZEdGeVoyVjBjeUJ5WlhOdmJIWmxJSEJsY2lCallXeHNJR1p5YjIwZ2RHaGxYRzRnS2lCZ1ltRnpaVWxrWUNCaGNtZDFiV1Z1ZEN3Z1ptRnNiR2x1WnlCaVlXTnJJSFJ2SUhSb1pTQmpiMjVtYVdkMWNtVmtJSFpoYkhWbExDQmhibVFnZEdoeWIzZGNiaUFxSUdCSmJuUmxjbTVoYkVWeWNtOXlZQ0IzYUdWdUlIVnVjbVZ6YjJ4MlpXUXVJRVYyWlhKNUlHOXdaWEpoZEdsdmJpQnlaWEYxYVhKbGN5QmhJSFJ2YTJWdVhHNGdLaUFvWUhKbGNYVnBjbVZVYjJ0bGJpZ3BZQ2tzSUdGdVpDQjBjbUZ1YzNCdmNuUWdabUZwYkhWeVpYTWdZWEpsSUcxaGNIQmxaQ0IwYnlCa1pXTmhaaUJsY25KdmNuTWdkbWxoWEc0Z0tpQjdRR3hwYm1zZ2FIUjBjRVZ5Y205eWZTNWNiaUFxSUVCamJHRnpjeUJCYVhKMFlXSnNaVk5sY25acFkyVmNiaUFxSUVCallYUmxaMjl5ZVNCSlQxeHVJQ29nUUdWNFlXMXdiR1ZjYmlBcUlHQmdZSFJ6WEc0Z0tpQnBiWEJ2Y25RZ2V5QkJhWEowWVdKc1pWTmxjblpwWTJVZ2ZTQm1jbTl0SUZ3aVFHUmxZMkZtTFhSekwybHVkR1ZuY21GMGFXOXVjeTlwYnk5aGFYSjBZV0pzWlZ3aU8xeHVJQ3BjYmlBcUlHTnZibk4wSUdGcGNuUmhZbXhsSUQwZ2JtVjNJRUZwY25SaFlteGxVMlZ5ZG1salpTZ3BPMXh1SUNvZ1lYZGhhWFFnWVdseWRHRmliR1V1YVc1cGRHbGhiR2w2WlNoN1hHNGdLaUFnSUhSdmEyVnVPaUJ3Y205alpYTnpMbVZ1ZGk1SFVrRlFTRjlEVWtWRVJVNVVTVUZNWDBGSlVsUkJRa3hGWDFSUFMwVk9MRnh1SUNvZ0lDQmlZWE5sU1dRNklGd2lZWEJ3UlhoaGJYQnNaVUpoYzJWY0lpeGNiaUFxSUgwcE8xeHVJQ29nWTI5dWMzUWdZM0psWVhSbFpDQTlJR0YzWVdsMElHRnBjblJoWW14bExtTnlaV0YwWlZKbFkyOXlaQ2g3WEc0Z0tpQWdJSFJoWW14bE9pQmNJbFJoYzJ0elhDSXNYRzRnS2lBZ0lHWnBaV3hrY3pvZ2V5Qk9ZVzFsT2lCY0lsTm9hWEFnY21Wc1pXRnpaVndpTENCVGRHRjBkWE02SUZ3aVZHOWtiMXdpSUgwc1hHNGdLaUI5S1R0Y2JpQXFJR0JnWUZ4dUlDb2dRRzFsYldKbGNrOW1JRzF2WkhWc1pUcHBiblJsWjNKaGRHbHZibk12YVc4dllXbHlkR0ZpYkdVdmMyVnlkbWxqWlZ4dUlDb3ZYRzVsZUhCdmNuUWdZMnhoYzNNZ1FXbHlkR0ZpYkdWVFpYSjJhV05sSUdWNGRHVnVaSE1nU0hSMGNFRndhVk5sY25acFkyVThRV2x5ZEdGaWJHVlRaWEoyYVdObFEyOXVabWxuUGlCN1hHNGdJQzhxS2x4dUlDQWdLaUJBWkdWelkzSnBjSFJwYjI0Z1ZHaGxJSEJ5YjNacFpHVnlJRzVoYldVZ2RYTmxaQ0JwYmlCbGNuSnZjaUJ0WlhOellXZGxjMXh1SUNBZ0tpOWNiaUFnY0hKdmRHVmpkR1ZrSUhKbFlXUnZibXg1SUhObGNuWnBZMlZPWVcxbElEMGdYQ0pCYVhKMFlXSnNaVndpTzF4dVhHNGdJQzhxS2x4dUlDQWdLaUJBWkdWelkzSnBjSFJwYjI0Z1ZHaGxJRUZwY25SaFlteGxJRmRsWWlCQlVFa2dkakFnWW1GelpTQlZVa3hjYmlBZ0lDb2dRSE4xYlcxaGNua2dWWE5sWkNCM2FHVnVJSFJvWlNCeVpYTnZiSFpsWkNCamIyNW1hV2NnWTJGeWNtbGxjeUJ1YnlCZ1ltRnpaVlZ5YkdBdVhHNGdJQ0FxSUVCeVpYUjFjbTV6SUh0emRISnBibWQ5SUdCY0ltaDBkSEJ6T2k4dllYQnBMbUZwY25SaFlteGxMbU52YlM5Mk1Gd2lZQzVjYmlBZ0lDb3ZYRzRnSUhCeWIzUmxZM1JsWkNCa1pXWmhkV3gwUW1GelpWVnliQ2dwT2lCemRISnBibWNnZTF4dUlDQWdJSEpsZEhWeWJpQmNJbWgwZEhCek9pOHZZWEJwTG1GcGNuUmhZbXhsTG1OdmJTOTJNRndpTzF4dUlDQjlYRzVjYmlBZ0x5b3FYRzRnSUNBcUlFQmtaWE5qY21sd2RHbHZiaUJDZFdsc1pITWdkR2hsSUVGcGNuUmhZbXhsSUdKbFlYSmxjaUJoZFhSb2IzSnBlbUYwYVc5dUlHaGxZV1JsY25OY2JpQWdJQ29nUUhOMWJXMWhjbmtnVW1WMGRYSnVjeUIwYUdVZ1lFRjFkR2h2Y21sNllYUnBiMjQ2SUVKbFlYSmxjaUE4ZEc5clpXNCtZQ0JvWldGa1pYSWdkMmhsYmlCMGFHVmNiaUFnSUNvZ1kyOXVabWxuSUdOaGNuSnBaWE1nWVNCMGIydGxiaXdnWVc1a0lHNXZJR2hsWVdSbGNuTWdiM1JvWlhKM2FYTmxMbHh1SUNBZ0tpQkFjR0Z5WVcwZ2UwRnBjblJoWW14bFUyVnlkbWxqWlVOdmJtWnBaMzBnWTI5dVptbG5JQzBnVkdobElISmxjMjlzZG1Wa0lITmxjblpwWTJVZ1kyOXVabWxuZFhKaGRHbHZiaTVjYmlBZ0lDb2dRSEpsZEhWeWJuTWdlMUpsWTI5eVpEeHpkSEpwYm1jc0lITjBjbWx1Wno1OUlGUm9aU0JoZFhSb2IzSnBlbUYwYVc5dUlHaGxZV1JsY25NZ0tHVnRjSFI1SUhkcGRHaHZkWFFnWVNCMGIydGxiaWt1WEc0Z0lDQXFMMXh1SUNCd2NtOTBaV04wWldRZ1lYVjBhRWhsWVdSbGNuTW9ZMjl1Wm1sbk9pQkJhWEowWVdKc1pWTmxjblpwWTJWRGIyNW1hV2NwT2lCU1pXTnZjbVE4YzNSeWFXNW5MQ0J6ZEhKcGJtYytJSHRjYmlBZ0lDQnlaWFIxY200Z1kyOXVabWxuTG5SdmEyVnVJRDhnZXlCQmRYUm9iM0pwZW1GMGFXOXVPaUJnUW1WaGNtVnlJQ1I3WTI5dVptbG5MblJ2YTJWdWZXQWdmU0E2SUh0OU8xeHVJQ0I5WEc1Y2JpQWdMeW9xWEc0Z0lDQXFJRUJrWlhOamNtbHdkR2x2YmlCU1pXRmtjeUIwYUdVZ1FXbHlkR0ZpYkdVZ1kzSmxaR1Z1ZEdsaGJITWdZVzVrSUdSbFptRjFiSFJ6SUdaeWIyMGdkR2hsSUdWdWRtbHliMjV0Wlc1MFhHNGdJQ0FxSUVCemRXMXRZWEo1SUZKbFlXUnpJSFJvWlNCZ2FXOHVZV2x5ZEdGaWJHVmdJR1Z1ZG1seWIyNXRaVzUwSUhOc2FXTmxJR0Z1WkNCeVpYUjFjbTV6SUdFZ2NHRnlkR2xoYkZ4dUlDQWdLaUJqYjI1bWFXY2dkMmhsYmlCaElIUnZhMlZ1SUdseklHTnZibVpwWjNWeVpXUXNJR0IxYm1SbFptbHVaV1JnSUc5MGFHVnlkMmx6WlM0Z1ZtRnNkV1Z6SUhCaGMzTmNiaUFnSUNvZ2RHaHliM1ZuYUNCZ1pXNTJVM1J5YVc1bllDOWdaVzUyVG5WdFltVnlZQ0IwYnlCeVpXcGxZM1FnZFc1elpYUXRiR1ZoWmlCd2NtOTRhV1Z6TGx4dUlDQWdLaUJBY21WMGRYSnVjeUI3VUdGeWRHbGhiRHhCYVhKMFlXSnNaVk5sY25acFkyVkRiMjVtYVdjK0lId2dkVzVrWldacGJtVmtmU0JCSUhCaGNuUnBZV3dnWTI5dVptbG5MQ0J2Y2lCZ2RXNWtaV1pwYm1Wa1lDQjNhR1Z1SUc1dklFRnBjblJoWW14bElIUnZhMlZ1SUdseklHTnZibVpwWjNWeVpXUXVYRzRnSUNBcUwxeHVJQ0J3Y205MFpXTjBaV1FnWTI5dVptbG5Sbkp2YlVWdWRtbHliMjV0Wlc1MEtDazZJRkJoY25ScFlXdzhRV2x5ZEdGaWJHVlRaWEoyYVdObFEyOXVabWxuUGlCOElIVnVaR1ZtYVc1bFpDQjdYRzRnSUNBZ1kyOXVjM1FnWlc1MklEMGdTVzlGYm5acGNtOXViV1Z1ZEM1cGJ5NWhhWEowWVdKc1pUdGNiaUFnSUNCamIyNXpkQ0IwYjJ0bGJpQTlJR1Z1ZGxOMGNtbHVaeWhsYm5ZL0xuUnZhMlZ1S1R0Y2JpQWdJQ0JwWmlBb0lYUnZhMlZ1S1NCeVpYUjFjbTRnZFc1a1pXWnBibVZrTzF4dUlDQWdJSEpsZEhWeWJpQjdYRzRnSUNBZ0lDQjBiMnRsYml4Y2JpQWdJQ0FnSUdKaGMyVkpaRG9nWlc1MlUzUnlhVzVuS0dWdWRpNWlZWE5sU1dRcExGeHVJQ0FnSUNBZ1ltRnpaVlZ5YkRvZ1pXNTJVM1J5YVc1bktHVnVkaTVpWVhObFZYSnNLU3hjYmlBZ0lDQWdJSFJwYldWdmRYUTZJR1Z1ZGs1MWJXSmxjaWhsYm5ZdWRHbHRaVzkxZENrc1hHNGdJQ0FnZlR0Y2JpQWdmVnh1WEc0Z0lDOHFLbHh1SUNBZ0tpQkFaR1Z6WTNKcGNIUnBiMjRnVW1WemIyeDJaWE1nZEdobElGVlNUQzFsYm1OdlpHVmtJR0poYzJVZ2NHRjBhQ0JtYjNJZ1lTQmpZV3hzWEc0Z0lDQXFJRUJ6ZFcxdFlYSjVJRUoxYVd4a2N5QmdMenhpWVhObFNXUStZQ0JtY205dElIUm9aU0JuYVhabGJpQmlZWE5sSUVsRUxDQm1ZV3hzYVc1bklHSmhZMnNnZEc4Z2RHaGxYRzRnSUNBcUlHTnZibVpwWjNWeVpXUWdkbUZzZFdVc0lHRnVaQ0IwYUhKdmQzTWdkMmhsYmlCdVpXbDBhR1Z5SUdseklHRjJZV2xzWVdKc1pTNWNiaUFnSUNvZ1FIQmhjbUZ0SUh0emRISnBibWQ5SUZ0aVlYTmxTV1JkSUMwZ1ZHaGxJSEJsY2kxallXeHNJR0poYzJVZ2IzWmxjbkpwWkdVdVhHNGdJQ0FxSUVCeVpYUjFjbTV6SUh0emRISnBibWQ5SUZSb1pTQlZVa3d0Wlc1amIyUmxaQ0JpWVhObElFRlFTU0J3WVhSb0xseHVJQ0FnS2lCQWRHaHliM2R6SUh0SmJuUmxjbTVoYkVWeWNtOXlmU0JYYUdWdUlHNWxhWFJvWlhJZ2RHaGxJR2x1Y0hWMElHNXZjaUIwYUdVZ1kyOXVabWxuSUhscFpXeGtjeUJoSUdKaGMyVWdTVVF1WEc0Z0lDQXFMMXh1SUNCd2NtOTBaV04wWldRZ1ltRnpaVkJoZEdnb1ltRnpaVWxrUHpvZ2MzUnlhVzVuS1RvZ2MzUnlhVzVuSUh0Y2JpQWdJQ0JqYjI1emRDQnlaWE52YkhabFpDQTlJR0poYzJWSlpDQS9QeUIwYUdsekxtTnZibVpwWnk1aVlYTmxTV1E3WEc0Z0lDQWdhV1lnS0NGeVpYTnZiSFpsWkNrZ2UxeHVJQ0FnSUNBZ2RHaHliM2NnYm1WM0lFbHVkR1Z5Ym1Gc1JYSnliM0lvWENKQmFYSjBZV0pzWlNCeVpYRjFhWEpsY3lCaElHSmhjMlVnU1VSY0lpazdYRzRnSUNBZ2ZWeHVJQ0FnSUhKbGRIVnliaUJnTHlSN1pXNWpiMlJsVlZKSlEyOXRjRzl1Wlc1MEtISmxjMjlzZG1Wa0tYMWdPMXh1SUNCOVhHNWNiaUFnTHlvcVhHNGdJQ0FxSUVCa1pYTmpjbWx3ZEdsdmJpQlNaWE52YkhabGN5QjBhR1VnVlZKTUxXVnVZMjlrWldRZ2RHRmliR1VnY0dGMGFDQm1iM0lnWVNCallXeHNYRzRnSUNBcUlFQnpkVzF0WVhKNUlFSjFhV3hrY3lCZ1BHSmhjMlZRWVhSb1BpODhkR0ZpYkdVK1lDQjNhWFJvSUdKdmRHZ2djMlZuYldWdWRITWdWVkpNTFdWdVkyOWtaV1FzSUdGdVpGeHVJQ0FnS2lCMGFISnZkM01nZDJobGJpQjBhR1VnZEdGaWJHVWdibUZ0WlNCcGN5QmxiWEIwZVNBb2IzSWdkR2hsSUdKaGMyVWdZMkZ1Ym05MElHSmxJSEpsYzI5c2RtVmtLUzVjYmlBZ0lDb2dRSEJoY21GdElIdHpkSEpwYm1kOUlIUmhZbXhsSUMwZ1ZHaGxJSFJoWW14bElHNWhiV1VnYjNJZ1NVUXVYRzRnSUNBcUlFQndZWEpoYlNCN2MzUnlhVzVuZlNCYlltRnpaVWxrWFNBdElGUm9aU0J3WlhJdFkyRnNiQ0JpWVhObElHOTJaWEp5YVdSbExseHVJQ0FnS2lCQWNtVjBkWEp1Y3lCN2MzUnlhVzVuZlNCVWFHVWdWVkpNTFdWdVkyOWtaV1FnZEdGaWJHVWdRVkJKSUhCaGRHZ3VYRzRnSUNBcUlFQjBhSEp2ZDNNZ2UwbHVkR1Z5Ym1Gc1JYSnliM0o5SUZkb1pXNGdkR2hsSUhSaFlteGxJRzVoYldVZ2FYTWdaVzF3ZEhrZ2IzSWdkR2hsSUdKaGMyVWdTVVFnWTJGdWJtOTBJR0psSUhKbGMyOXNkbVZrTGx4dUlDQWdLaTljYmlBZ2NISnZkR1ZqZEdWa0lIUmhZbXhsVUdGMGFDaDBZV0pzWlRvZ2MzUnlhVzVuTENCaVlYTmxTV1EvT2lCemRISnBibWNwT2lCemRISnBibWNnZTF4dUlDQWdJR2xtSUNnaGRHRmliR1VwSUhSb2NtOTNJRzVsZHlCSmJuUmxjbTVoYkVWeWNtOXlLRndpUVdseWRHRmliR1VnY21WeGRXbHlaWE1nWVNCMFlXSnNaU0J1WVcxbFhDSXBPMXh1SUNBZ0lISmxkSFZ5YmlCZ0pIdDBhR2x6TG1KaGMyVlFZWFJvS0dKaGMyVkpaQ2w5THlSN1pXNWpiMlJsVlZKSlEyOXRjRzl1Wlc1MEtIUmhZbXhsS1gxZ08xeHVJQ0I5WEc1Y2JpQWdMeW9xWEc0Z0lDQXFJRUJrWlhOamNtbHdkR2x2YmlCTWFYTjBjeUJ5WldOdmNtUnpJR2x1SUdGdUlFRnBjblJoWW14bElIUmhZbXhsSUhkcGRHZ2dZM1Z5YzI5eUlIQmhaMmx1WjF4dUlDQWdLaUJBYzNWdGJXRnllU0JnUjBWVVlITWdkR2hsSUhSaFlteGxJR1Z1WkhCdmFXNTBJSGRwZEdnZ2RHaGxJR052Ym1acFozVnlaV1FnZG1sbGR5d2dabTl5YlhWc1lWeHVJQ0FnS2lCbWFXeDBaWElzSUhKbFkyOXlaQ0JqWVhCekxDQndZV2RsSUhOcGVtVXNJSEJoWjJVZ2IyWm1jMlYwTENCbWFXVnNaQ0J3Y205cVpXTjBhVzl1TENCaGJtUWdabWx5YzNSY2JpQWdJQ29nYzI5eWRDQmxiblJ5ZVM0Z1VtVjBkWEp1SUhSb1pTQmdiMlptYzJWMFlDQmpkWEp6YjNJZ1lYTWdkR2hsSUc1bGVIUWdZMkZzYkNkelhHNGdJQ0FxSUdCQmFYSjBZV0pzWlV4cGMzUlBjSFJwYjI1ekxtOW1abk5sZEdBZ2RHOGdabVYwWTJnZ1puVnlkR2hsY2lCd1lXZGxjeTVjYmlBZ0lDb2dRSEJoY21GdElIdEJhWEowWVdKc1pVeHBjM1JQY0hScGIyNXpmU0J2Y0hScGIyNXpJQzBnVkdobElIUmhZbXhsSUdGdVpDQm1hV3gwWlhJdmMyOXlkQzl3WVdkcGJtY2diM0IwYVc5dWN5NWNiaUFnSUNvZ1FIQmhjbUZ0SUh0emRISnBibWQ5SUZ0aVlYTmxTV1JkSUMwZ1ZHaGxJR0poYzJVZ2IzWmxjbkpwWkdVN0lHWmhiR3h6SUdKaFkyc2dkRzhnZEdobElHTnZibVpwWjNWeVpXUWdZR0poYzJWSlpHQXVYRzRnSUNBcUlFQnlaWFIxY201eklIdFFjbTl0YVhObFBFRnBjblJoWW14bFRHbHpkRkpsYzNWc2RENTlJRlJvWlNCd1lXZGxJRzltSUhKbFkyOXlaSE1nWVc1a0lIUm9aU0J1WlhoMElHOW1abk5sZENCamRYSnpiM0lnZDJobGJpQnRiM0psSUhCaFoyVnpJR1Y0YVhOMExseHVJQ0FnS2lCQWRHaHliM2R6SUh0SmJuUmxjbTVoYkVWeWNtOXlmU0JYYUdWdUlHNXZJSFJ2YTJWdUlHbHpJR052Ym1acFozVnlaV1FnYjNJZ2RHaGxJSFJoWW14bEwySmhjMlVnWTJGdWJtOTBJR0psSUhKbGMyOXNkbVZrTGx4dUlDQWdLaUJBZEdoeWIzZHpJSHRPYjNSR2IzVnVaRVZ5Y205eWZTQlhhR1Z1SUhSb1pTQmlZWE5sSUc5eUlIUmhZbXhsSUdSdlpYTWdibTkwSUdWNGFYTjBJQ2hJVkZSUUlEUXdOQ2t1WEc0Z0lDQXFJRUIwYUhKdmQzTWdlME52Ym1ac2FXTjBSWEp5YjNKOUlGZG9aVzRnUVdseWRHRmliR1VnWVc1emQyVnljeUIzYVhSb0lFaFVWRkFnTkRBNUxseHVJQ0FnS2lCQWRHaHliM2R6SUh0Q1lXUlNaWEYxWlhOMFJYSnliM0o5SUZkb1pXNGdRV2x5ZEdGaWJHVWdZVzV6ZDJWeWN5QjNhWFJvSUdGdWVTQnZkR2hsY2lCSVZGUlFJR1Z5Y205eUlITjBZWFIxY3lBb1pTNW5MaUJwYm5aaGJHbGtJR1p2Y20xMWJHRXBMbHh1SUNBZ0tpQkFaWGhoYlhCc1pWeHVJQ0FnS2lCZ1lHQjBjMXh1SUNBZ0tpQnNaWFFnYjJabWMyVjBPaUJ6ZEhKcGJtY2dmQ0IxYm1SbFptbHVaV1E3WEc0Z0lDQXFJR1J2SUh0Y2JpQWdJQ29nSUNCamIyNXpkQ0J3WVdkbElEMGdZWGRoYVhRZ1lXbHlkR0ZpYkdVdWJHbHpkRkpsWTI5eVpITW9lMXh1SUNBZ0tpQWdJQ0FnZEdGaWJHVTZJRndpVkdGemEzTmNJaXhjYmlBZ0lDb2dJQ0FnSUdacGJIUmxja0o1Um05eWJYVnNZVG9nWENKN1UzUmhkSFZ6ZlNBOUlDZEJZM1JwZG1VblhDSXNYRzRnSUNBcUlDQWdJQ0J3WVdkbFUybDZaVG9nTVRBd0xGeHVJQ0FnS2lBZ0lDQWdiMlptYzJWMExGeHVJQ0FnS2lBZ0lDQWdjMjl5ZERvZ1czc2dabWxsYkdRNklGd2lUbUZ0WlZ3aUxDQmthWEpsWTNScGIyNDZJRndpWVhOalhDSWdmVjBzWEc0Z0lDQXFJQ0FnZlNrN1hHNGdJQ0FxSUNBZ1kyOXVjMjlzWlM1c2IyY29jR0ZuWlM1eVpXTnZjbVJ6S1R0Y2JpQWdJQ29nSUNCdlptWnpaWFFnUFNCd1lXZGxMbTltWm5ObGREdGNiaUFnSUNvZ2ZTQjNhR2xzWlNBb2IyWm1jMlYwS1R0Y2JpQWdJQ29nWUdCZ1hHNGdJQ0FxTDF4dUlDQmhjM2x1WXlCc2FYTjBVbVZqYjNKa2N5aGNiaUFnSUNCdmNIUnBiMjV6T2lCQmFYSjBZV0pzWlV4cGMzUlBjSFJwYjI1ekxGeHVJQ0FnSUdKaGMyVkpaRDg2SUhOMGNtbHVaMXh1SUNBcE9pQlFjbTl0YVhObFBFRnBjblJoWW14bFRHbHpkRkpsYzNWc2RENGdlMXh1SUNBZ0lIUm9hWE11Y21WeGRXbHlaVlJ2YTJWdUtDazdYRzRnSUNBZ2RISjVJSHRjYmlBZ0lDQWdJR052Ym5OMElISmxjM0J2Ym5ObElEMGdZWGRoYVhRZ2RHaHBjeTVqYkdsbGJuUXVaMlYwUEVGcGNuUmhZbXhsVEdsemRGSmxjM1ZzZEQ0b1hHNGdJQ0FnSUNBZ0lIUm9hWE11ZEdGaWJHVlFZWFJvS0c5d2RHbHZibk11ZEdGaWJHVXNJR0poYzJWSlpDa3NYRzRnSUNBZ0lDQWdJSHRjYmlBZ0lDQWdJQ0FnSUNCd1lYSmhiWE02SUh0Y2JpQWdJQ0FnSUNBZ0lDQWdJSFpwWlhjNklHOXdkR2x2Ym5NdWRtbGxkeXhjYmlBZ0lDQWdJQ0FnSUNBZ0lHWnBiSFJsY2tKNVJtOXliWFZzWVRvZ2IzQjBhVzl1Y3k1bWFXeDBaWEpDZVVadmNtMTFiR0VzWEc0Z0lDQWdJQ0FnSUNBZ0lDQnRZWGhTWldOdmNtUnpPaUJ2Y0hScGIyNXpMbTFoZUZKbFkyOXlaSE1zWEc0Z0lDQWdJQ0FnSUNBZ0lDQndZV2RsVTJsNlpUb2diM0IwYVc5dWN5NXdZV2RsVTJsNlpTeGNiaUFnSUNBZ0lDQWdJQ0FnSUc5bVpuTmxkRG9nYjNCMGFXOXVjeTV2Wm1aelpYUXNYRzRnSUNBZ0lDQWdJQ0FnSUNCY0ltWnBaV3hrYzF0ZFhDSTZJRzl3ZEdsdmJuTXVabWxsYkdSekxGeHVJQ0FnSUNBZ0lDQWdJQ0FnWENKemIzSjBXekJkVzJacFpXeGtYVndpT2lCdmNIUnBiMjV6TG5OdmNuUS9MbHN3WFQ4dVptbGxiR1FzWEc0Z0lDQWdJQ0FnSUNBZ0lDQmNJbk52Y25SYk1GMWJaR2x5WldOMGFXOXVYVndpT2lCdmNIUnBiMjV6TG5OdmNuUS9MbHN3WFQ4dVpHbHlaV04wYVc5dUxGeHVJQ0FnSUNBZ0lDQWdJSDBzWEc0Z0lDQWdJQ0FnSUgxY2JpQWdJQ0FnSUNrN1hHNGdJQ0FnSUNCeVpYUjFjbTRnZTF4dUlDQWdJQ0FnSUNCeVpXTnZjbVJ6T2lCeVpYTndiMjV6WlM1a1lYUmhMbkpsWTI5eVpITWdQejhnVzEwc1hHNGdJQ0FnSUNBZ0lHOW1abk5sZERvZ2NtVnpjRzl1YzJVdVpHRjBZUzV2Wm1aelpYUXNYRzRnSUNBZ0lDQjlPMXh1SUNBZ0lIMGdZMkYwWTJnZ0tHVnljbTl5S1NCN1hHNGdJQ0FnSUNCMGFISnZkeUJvZEhSd1JYSnliM0lvWENKQmFYSjBZV0pzWlZ3aUxDQmNJbXhwYzNRZ2NtVmpiM0prYzF3aUxDQmxjbkp2Y2lrN1hHNGdJQ0FnZlZ4dUlDQjlYRzVjYmlBZ0x5b3FYRzRnSUNBcUlFQmtaWE5qY21sd2RHbHZiaUJHWlhSamFHVnpJR0VnYzJsdVoyeGxJRUZwY25SaFlteGxJSEpsWTI5eVpGeHVJQ0FnS2lCQWMzVnRiV0Z5ZVNCZ1IwVlVZSE1nZEdobElIUmhZbXhsSUdWdVpIQnZhVzUwSUhkcGRHZ2dkR2hsSUhKbFkyOXlaQ0JKUkNCaGNIQmxibVJsWkNCaGJtUmNiaUFnSUNvZ2NtVjBkWEp1Y3lCMGFHVWdjbVZqYjNKa0lHVnVkbVZzYjNCbExseHVJQ0FnS2lCQWNHRnlZVzBnZTNOMGNtbHVaMzBnZEdGaWJHVWdMU0JVYUdVZ2RHRmliR1VnYm1GdFpTQnZjaUJKUkM1Y2JpQWdJQ29nUUhCaGNtRnRJSHR6ZEhKcGJtZDlJSEpsWTI5eVpFbGtJQzBnVkdobElISmxZMjl5WkNCSlJDQjBieUJtWlhSamFDQW9aUzVuTGlCZ1hDSnlaV014TWpNME5UWTNPRGt3WENKZ0tTNWNiaUFnSUNvZ1FIQmhjbUZ0SUh0emRISnBibWQ5SUZ0aVlYTmxTV1JkSUMwZ1ZHaGxJR0poYzJVZ2IzWmxjbkpwWkdVN0lHWmhiR3h6SUdKaFkyc2dkRzhnZEdobElHTnZibVpwWjNWeVpXUWdZR0poYzJWSlpHQXVYRzRnSUNBcUlFQnlaWFIxY201eklIdFFjbTl0YVhObFBFRnBjblJoWW14bFVtVmpiM0prUG4wZ1ZHaGxJSEpsWTI5eVpDQmxiblpsYkc5d1pTNWNiaUFnSUNvZ1FIUm9jbTkzY3lCN1NXNTBaWEp1WVd4RmNuSnZjbjBnVjJobGJpQnVieUIwYjJ0bGJpQnBjeUJqYjI1bWFXZDFjbVZrSUc5eUlIUm9aU0IwWVdKc1pTOWlZWE5sSUdOaGJtNXZkQ0JpWlNCeVpYTnZiSFpsWkM1Y2JpQWdJQ29nUUhSb2NtOTNjeUI3VG05MFJtOTFibVJGY25KdmNuMGdWMmhsYmlCMGFHVWdjbVZqYjNKa0lHUnZaWE1nYm05MElHVjRhWE4wSUNoSVZGUlFJRFF3TkNrdVhHNGdJQ0FxSUVCMGFISnZkM01nZTBOdmJtWnNhV04wUlhKeWIzSjlJRmRvWlc0Z1FXbHlkR0ZpYkdVZ1lXNXpkMlZ5Y3lCM2FYUm9JRWhVVkZBZ05EQTVMbHh1SUNBZ0tpQkFkR2h5YjNkeklIdENZV1JTWlhGMVpYTjBSWEp5YjNKOUlGZG9aVzRnUVdseWRHRmliR1VnWVc1emQyVnljeUIzYVhSb0lHRnVlU0J2ZEdobGNpQklWRlJRSUdWeWNtOXlJSE4wWVhSMWN5NWNiaUFnSUNvdlhHNGdJR0Z6ZVc1aklHZGxkRkpsWTI5eVpDaGNiaUFnSUNCMFlXSnNaVG9nYzNSeWFXNW5MRnh1SUNBZ0lISmxZMjl5WkVsa09pQnpkSEpwYm1jc1hHNGdJQ0FnWW1GelpVbGtQem9nYzNSeWFXNW5YRzRnSUNrNklGQnliMjFwYzJVOFFXbHlkR0ZpYkdWU1pXTnZjbVErSUh0Y2JpQWdJQ0IwYUdsekxuSmxjWFZwY21WVWIydGxiaWdwTzF4dUlDQWdJSFJ5ZVNCN1hHNGdJQ0FnSUNCamIyNXpkQ0J5WlhOd2IyNXpaU0E5SUdGM1lXbDBJSFJvYVhNdVkyeHBaVzUwTG1kbGREeEJhWEowWVdKc1pWSmxZMjl5WkQ0b1hHNGdJQ0FnSUNBZ0lHQWtlM1JvYVhNdWRHRmliR1ZRWVhSb0tIUmhZbXhsTENCaVlYTmxTV1FwZlM4a2UyVnVZMjlrWlZWU1NVTnZiWEJ2Ym1WdWRDaHlaV052Y21SSlpDbDlZRnh1SUNBZ0lDQWdLVHRjYmlBZ0lDQWdJSEpsZEhWeWJpQnlaWE53YjI1elpTNWtZWFJoTzF4dUlDQWdJSDBnWTJGMFkyZ2dLR1Z5Y205eUtTQjdYRzRnSUNBZ0lDQjBhSEp2ZHlCb2RIUndSWEp5YjNJb1hDSkJhWEowWVdKc1pWd2lMQ0JjSW1kbGRDQnlaV052Y21SY0lpd2daWEp5YjNJcE8xeHVJQ0FnSUgxY2JpQWdmVnh1WEc0Z0lDOHFLbHh1SUNBZ0tpQkFaR1Z6WTNKcGNIUnBiMjRnUTNKbFlYUmxjeUJoYmlCQmFYSjBZV0pzWlNCeVpXTnZjbVJjYmlBZ0lDb2dRSE4xYlcxaGNua2dZRkJQVTFSZ2N5QjBhR1VnWm1sbGJHUnpJRzFoY0NCMGJ5QjBhR1VnZEdGaWJHVWdaVzVrY0c5cGJuUTdJR0IwZVhCbFkyRnpkR0FnYkdWMGMxeHVJQ0FnS2lCQmFYSjBZV0pzWlNCamIyVnlZMlVnZG1Gc2RXVnpJR2x1ZEc4Z2RHaGxJR052YkhWdGJpQjBlWEJsY3lBb1pHbHpZV0pzWldRZ1lua2daR1ZtWVhWc2RDa3VYRzRnSUNBcUlFQndZWEpoYlNCN1FXbHlkR0ZpYkdWWGNtbDBaVWx1Y0hWMGZTQnBibkIxZENBdElGUm9aU0IwWVdKc1pTd2dabWxsYkdSekxDQmhibVFnZEhsd1pXTmhjM1FnYjNCMGFXOXVMbHh1SUNBZ0tpQkFjR0Z5WVcwZ2UzTjBjbWx1WjMwZ1cySmhjMlZKWkYwZ0xTQlVhR1VnWW1GelpTQnZkbVZ5Y21sa1pUc2dabUZzYkhNZ1ltRmpheUIwYnlCMGFHVWdZMjl1Wm1sbmRYSmxaQ0JnWW1GelpVbGtZQzVjYmlBZ0lDb2dRSEpsZEhWeWJuTWdlMUJ5YjIxcGMyVThRV2x5ZEdGaWJHVlNaV052Y21RK2ZTQlVhR1VnWTNKbFlYUmxaQ0J5WldOdmNtUWdaVzUyWld4dmNHVXVYRzRnSUNBcUlFQjBhSEp2ZDNNZ2UwbHVkR1Z5Ym1Gc1JYSnliM0o5SUZkb1pXNGdibThnZEc5clpXNGdhWE1nWTI5dVptbG5kWEpsWkNCdmNpQjBhR1VnZEdGaWJHVXZZbUZ6WlNCallXNXViM1FnWW1VZ2NtVnpiMngyWldRdVhHNGdJQ0FxSUVCMGFISnZkM01nZTA1dmRFWnZkVzVrUlhKeWIzSjlJRmRvWlc0Z2RHaGxJR0poYzJVZ2IzSWdkR0ZpYkdVZ1pHOWxjeUJ1YjNRZ1pYaHBjM1FnS0VoVVZGQWdOREEwS1M1Y2JpQWdJQ29nUUhSb2NtOTNjeUI3UTI5dVpteHBZM1JGY25KdmNuMGdWMmhsYmlCQmFYSjBZV0pzWlNCaGJuTjNaWEp6SUhkcGRHZ2dTRlJVVUNBME1Ea3VYRzRnSUNBcUlFQjBhSEp2ZDNNZ2UwSmhaRkpsY1hWbGMzUkZjbkp2Y24wZ1YyaGxiaUJCYVhKMFlXSnNaU0JoYm5OM1pYSnpJSGRwZEdnZ1lXNTVJRzkwYUdWeUlFaFVWRkFnWlhKeWIzSWdjM1JoZEhWeklDaGxMbWN1SUdsdWRtRnNhV1FnWm1sbGJHUWdkbUZzZFdWektTNWNiaUFnSUNvdlhHNGdJR0Z6ZVc1aklHTnlaV0YwWlZKbFkyOXlaQ2hjYmlBZ0lDQnBibkIxZERvZ1FXbHlkR0ZpYkdWWGNtbDBaVWx1Y0hWMExGeHVJQ0FnSUdKaGMyVkpaRDg2SUhOMGNtbHVaMXh1SUNBcE9pQlFjbTl0YVhObFBFRnBjblJoWW14bFVtVmpiM0prUGlCN1hHNGdJQ0FnZEdocGN5NXlaWEYxYVhKbFZHOXJaVzRvS1R0Y2JpQWdJQ0IwY25rZ2UxeHVJQ0FnSUNBZ1kyOXVjM1FnY21WemNHOXVjMlVnUFNCaGQyRnBkQ0IwYUdsekxtTnNhV1Z1ZEM1d2IzTjBQRUZwY25SaFlteGxVbVZqYjNKa1BpaGNiaUFnSUNBZ0lDQWdkR2hwY3k1MFlXSnNaVkJoZEdnb2FXNXdkWFF1ZEdGaWJHVXNJR0poYzJWSlpDa3NYRzRnSUNBZ0lDQWdJSHNnWm1sbGJHUnpPaUJwYm5CMWRDNW1hV1ZzWkhNc0lIUjVjR1ZqWVhOME9pQnBibkIxZEM1MGVYQmxZMkZ6ZENBL1B5Qm1ZV3h6WlNCOVhHNGdJQ0FnSUNBcE8xeHVJQ0FnSUNBZ2NtVjBkWEp1SUhKbGMzQnZibk5sTG1SaGRHRTdYRzRnSUNBZ2ZTQmpZWFJqYUNBb1pYSnliM0lwSUh0Y2JpQWdJQ0FnSUhSb2NtOTNJR2gwZEhCRmNuSnZjaWhjSWtGcGNuUmhZbXhsWENJc0lGd2lZM0psWVhSbElISmxZMjl5WkZ3aUxDQmxjbkp2Y2lrN1hHNGdJQ0FnZlZ4dUlDQjlYRzVjYmlBZ0x5b3FYRzRnSUNBcUlFQmtaWE5qY21sd2RHbHZiaUJWY0dSaGRHVnpJR0Z1SUVGcGNuUmhZbXhsSUhKbFkyOXlaRnh1SUNBZ0tpQkFjM1Z0YldGeWVTQmdVRUZVUTBoZ1pYTWdkR2hsSUdacFpXeGtjeUJ0WVhBZ2IyNTBieUIwYUdVZ2NtVmpiM0prSUdsa1pXNTBhV1pwWldRZ1lubGNiaUFnSUNvZ1lISmxZMjl5WkVsa1lEc2diMjVzZVNCMGFHVWdjSEp2ZG1sa1pXUWdabWxsYkdSeklHTm9ZVzVuWlM0Z1lIUjVjR1ZqWVhOMFlDQnNaWFJ6SUVGcGNuUmhZbXhsWEc0Z0lDQXFJR052WlhKalpTQjJZV3gxWlhNZ2FXNTBieUIwYUdVZ1kyOXNkVzF1SUhSNWNHVnpJQ2hrYVhOaFlteGxaQ0JpZVNCa1pXWmhkV3gwS1M1Y2JpQWdJQ29nUUhCaGNtRnRJSHRCYVhKMFlXSnNaVmR5YVhSbFNXNXdkWFFnSmlCN2NtVmpiM0prU1dRNklITjBjbWx1WjMxOUlHbHVjSFYwSUMwZ1ZHaGxJSFJoWW14bExDQm1hV1ZzWkhNc0lIUjVjR1ZqWVhOMElHOXdkR2x2Yml3Z1lXNWtJSFJoY21kbGRDQnlaV052Y21RZ1NVUXVYRzRnSUNBcUlFQndZWEpoYlNCN2MzUnlhVzVuZlNCYlltRnpaVWxrWFNBdElGUm9aU0JpWVhObElHOTJaWEp5YVdSbE95Qm1ZV3hzY3lCaVlXTnJJSFJ2SUhSb1pTQmpiMjVtYVdkMWNtVmtJR0JpWVhObFNXUmdMbHh1SUNBZ0tpQkFjbVYwZFhKdWN5QjdVSEp2YldselpUeEJhWEowWVdKc1pWSmxZMjl5WkQ1OUlGUm9aU0IxY0dSaGRHVmtJSEpsWTI5eVpDQmxiblpsYkc5d1pTNWNiaUFnSUNvZ1FIUm9jbTkzY3lCN1NXNTBaWEp1WVd4RmNuSnZjbjBnVjJobGJpQnVieUIwYjJ0bGJpQnBjeUJqYjI1bWFXZDFjbVZrSUc5eUlIUm9aU0IwWVdKc1pTOWlZWE5sSUdOaGJtNXZkQ0JpWlNCeVpYTnZiSFpsWkM1Y2JpQWdJQ29nUUhSb2NtOTNjeUI3VG05MFJtOTFibVJGY25KdmNuMGdWMmhsYmlCMGFHVWdjbVZqYjNKa0lHUnZaWE1nYm05MElHVjRhWE4wSUNoSVZGUlFJRFF3TkNrdVhHNGdJQ0FxSUVCMGFISnZkM01nZTBOdmJtWnNhV04wUlhKeWIzSjlJRmRvWlc0Z1FXbHlkR0ZpYkdVZ1lXNXpkMlZ5Y3lCM2FYUm9JRWhVVkZBZ05EQTVMbHh1SUNBZ0tpQkFkR2h5YjNkeklIdENZV1JTWlhGMVpYTjBSWEp5YjNKOUlGZG9aVzRnUVdseWRHRmliR1VnWVc1emQyVnljeUIzYVhSb0lHRnVlU0J2ZEdobGNpQklWRlJRSUdWeWNtOXlJSE4wWVhSMWN5QW9aUzVuTGlCcGJuWmhiR2xrSUdacFpXeGtJSFpoYkhWbGN5a3VYRzRnSUNBcUwxeHVJQ0JoYzNsdVl5QjFjR1JoZEdWU1pXTnZjbVFvWEc0Z0lDQWdhVzV3ZFhRNklFRnBjblJoWW14bFYzSnBkR1ZKYm5CMWRDQW1JSHNnY21WamIzSmtTV1E2SUhOMGNtbHVaeUI5TEZ4dUlDQWdJR0poYzJWSlpEODZJSE4wY21sdVoxeHVJQ0FwT2lCUWNtOXRhWE5sUEVGcGNuUmhZbXhsVW1WamIzSmtQaUI3WEc0Z0lDQWdkR2hwY3k1eVpYRjFhWEpsVkc5clpXNG9LVHRjYmlBZ0lDQjBjbmtnZTF4dUlDQWdJQ0FnWTI5dWMzUWdjbVZ6Y0c5dWMyVWdQU0JoZDJGcGRDQjBhR2x6TG1Oc2FXVnVkQzV3WVhSamFEeEJhWEowWVdKc1pWSmxZMjl5WkQ0b1hHNGdJQ0FnSUNBZ0lHQWtlM1JvYVhNdWRHRmliR1ZRWVhSb0tHbHVjSFYwTG5SaFlteGxMQ0JpWVhObFNXUXBmUzhrZTJWdVkyOWtaVlZTU1VOdmJYQnZibVZ1ZENoY2JpQWdJQ0FnSUNBZ0lDQnBibkIxZEM1eVpXTnZjbVJKWkZ4dUlDQWdJQ0FnSUNBcGZXQXNYRzRnSUNBZ0lDQWdJSHNnWm1sbGJHUnpPaUJwYm5CMWRDNW1hV1ZzWkhNc0lIUjVjR1ZqWVhOME9pQnBibkIxZEM1MGVYQmxZMkZ6ZENBL1B5Qm1ZV3h6WlNCOVhHNGdJQ0FnSUNBcE8xeHVJQ0FnSUNBZ2NtVjBkWEp1SUhKbGMzQnZibk5sTG1SaGRHRTdYRzRnSUNBZ2ZTQmpZWFJqYUNBb1pYSnliM0lwSUh0Y2JpQWdJQ0FnSUhSb2NtOTNJR2gwZEhCRmNuSnZjaWhjSWtGcGNuUmhZbXhsWENJc0lGd2lkWEJrWVhSbElISmxZMjl5WkZ3aUxDQmxjbkp2Y2lrN1hHNGdJQ0FnZlZ4dUlDQjlYRzVjYmlBZ0x5b3FYRzRnSUNBcUlFQmtaWE5qY21sd2RHbHZiaUJFWld4bGRHVnpJR0Z1SUVGcGNuUmhZbXhsSUhKbFkyOXlaRnh1SUNBZ0tpQkFjM1Z0YldGeWVTQmdSRVZNUlZSRllITWdkR2hsSUhKbFkyOXlaQ0JwWkdWdWRHbG1hV1ZrSUdKNUlHQnlaV052Y21SSlpHQWdZVzVrSUhKbGRIVnlibk1nZEdobFhHNGdJQ0FxSUVGcGNuUmhZbXhsSUdSbGJHVjBhVzl1SUdOdmJtWnBjbTFoZEdsdmJpNWNiaUFnSUNvZ1FIQmhjbUZ0SUh0emRISnBibWQ5SUhSaFlteGxJQzBnVkdobElIUmhZbXhsSUc1aGJXVWdiM0lnU1VRdVhHNGdJQ0FxSUVCd1lYSmhiU0I3YzNSeWFXNW5mU0J5WldOdmNtUkpaQ0F0SUZSb1pTQnlaV052Y21RZ1NVUWdkRzhnWkdWc1pYUmxMbHh1SUNBZ0tpQkFjR0Z5WVcwZ2UzTjBjbWx1WjMwZ1cySmhjMlZKWkYwZ0xTQlVhR1VnWW1GelpTQnZkbVZ5Y21sa1pUc2dabUZzYkhNZ1ltRmpheUIwYnlCMGFHVWdZMjl1Wm1sbmRYSmxaQ0JnWW1GelpVbGtZQzVjYmlBZ0lDb2dRSEpsZEhWeWJuTWdlMUJ5YjIxcGMyVThlMmxrT2lCemRISnBibWNzSUdSbGJHVjBaV1E2SUdKdmIyeGxZVzU5UG4wZ1ZHaGxJR1JsYkdWMFpXUWdjbVZqYjNKa0ozTWdTVVFnWVc1a0lFRnBjblJoWW14bEozTWdZR1JsYkdWMFpXUmdJR052Ym1acGNtMWhkR2x2Ymk1Y2JpQWdJQ29nUUhSb2NtOTNjeUI3U1c1MFpYSnVZV3hGY25KdmNuMGdWMmhsYmlCdWJ5QjBiMnRsYmlCcGN5QmpiMjVtYVdkMWNtVmtJRzl5SUhSb1pTQjBZV0pzWlM5aVlYTmxJR05oYm01dmRDQmlaU0J5WlhOdmJIWmxaQzVjYmlBZ0lDb2dRSFJvY205M2N5QjdUbTkwUm05MWJtUkZjbkp2Y24wZ1YyaGxiaUIwYUdVZ2NtVmpiM0prSUdSdlpYTWdibTkwSUdWNGFYTjBJQ2hJVkZSUUlEUXdOQ2t1WEc0Z0lDQXFJRUIwYUhKdmQzTWdlME52Ym1ac2FXTjBSWEp5YjNKOUlGZG9aVzRnUVdseWRHRmliR1VnWVc1emQyVnljeUIzYVhSb0lFaFVWRkFnTkRBNUxseHVJQ0FnS2lCQWRHaHliM2R6SUh0Q1lXUlNaWEYxWlhOMFJYSnliM0o5SUZkb1pXNGdRV2x5ZEdGaWJHVWdZVzV6ZDJWeWN5QjNhWFJvSUdGdWVTQnZkR2hsY2lCSVZGUlFJR1Z5Y205eUlITjBZWFIxY3k1Y2JpQWdJQ292WEc0Z0lHRnplVzVqSUdSbGJHVjBaVkpsWTI5eVpDaGNiaUFnSUNCMFlXSnNaVG9nYzNSeWFXNW5MRnh1SUNBZ0lISmxZMjl5WkVsa09pQnpkSEpwYm1jc1hHNGdJQ0FnWW1GelpVbGtQem9nYzNSeWFXNW5YRzRnSUNrNklGQnliMjFwYzJVOGV5QnBaRG9nYzNSeWFXNW5PeUJrWld4bGRHVmtPaUJpYjI5c1pXRnVJSDArSUh0Y2JpQWdJQ0IwYUdsekxuSmxjWFZwY21WVWIydGxiaWdwTzF4dUlDQWdJSFJ5ZVNCN1hHNGdJQ0FnSUNCamIyNXpkQ0J5WlhOd2IyNXpaU0E5SUdGM1lXbDBJSFJvYVhNdVkyeHBaVzUwTG1SbGJHVjBaVHg3WEc0Z0lDQWdJQ0FnSUdsa09pQnpkSEpwYm1jN1hHNGdJQ0FnSUNBZ0lHUmxiR1YwWldRNklHSnZiMnhsWVc0N1hHNGdJQ0FnSUNCOVBpaGNiaUFnSUNBZ0lDQWdZQ1I3ZEdocGN5NTBZV0pzWlZCaGRHZ29kR0ZpYkdVc0lHSmhjMlZKWkNsOUx5UjdaVzVqYjJSbFZWSkpRMjl0Y0c5dVpXNTBLSEpsWTI5eVpFbGtLWDFnWEc0Z0lDQWdJQ0FwTzF4dUlDQWdJQ0FnY21WMGRYSnVJSEpsYzNCdmJuTmxMbVJoZEdFN1hHNGdJQ0FnZlNCallYUmphQ0FvWlhKeWIzSXBJSHRjYmlBZ0lDQWdJSFJvY205M0lHaDBkSEJGY25KdmNpaGNJa0ZwY25SaFlteGxYQ0lzSUZ3aVpHVnNaWFJsSUhKbFkyOXlaRndpTENCbGNuSnZjaWs3WEc0Z0lDQWdmVnh1SUNCOVhHNTlYRzRpWFgwPSJdfQ==
|
|
265
|
+
//# sourceMappingURL=AirtableService.js.map
|
|
266
|
+
//# sourceMappingURL=AirtableService.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"io/airtable/AirtableService.cjs","sourceRoot":"","sources":["io/airtable/AirtableService.js"],"names":[],"mappings":"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"}
|
|
@@ -20,5 +20,5 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
20
20
|
* @description Re-exports the Airtable client-based service and its types.
|
|
21
21
|
*/
|
|
22
22
|
__exportStar(require("./AirtableService.cjs"), exports);
|
|
23
|
-
//# sourceMappingURL=
|
|
24
|
-
//# sourceMappingURL=
|
|
23
|
+
//# sourceMappingURL=index.js.map
|
|
24
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"io/airtable/index.cjs","sourceRoot":"","sources":["io/airtable/index.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA;;;;GAIG;AACH,uDAAqC;AACrC,iCAAiC"}
|
|
@@ -313,5 +313,5 @@ class ConfluenceService extends index_js_1.HttpApiService {
|
|
|
313
313
|
}
|
|
314
314
|
}
|
|
315
315
|
exports.ConfluenceService = ConfluenceService;
|
|
316
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29uZmx1ZW5jZVNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvaW8vY29uZmx1ZW5jZS9Db25mbHVlbmNlU2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7OztHQWFHO0FBQ0gsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3hELE9BQU8sRUFBRSxhQUFhLEVBQUUsNEJBQXVCO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLDJDQUFzQztBQUNyRSxPQUFPLEVBQ0wsY0FBYyxFQUVkLFNBQVMsR0FDVixxQ0FBMEI7QUF1RzNCLHlFQUF5RTtBQUN6RSxNQUFNLGlCQUFpQixHQUFHLE1BQU0sQ0FBQztBQUVqQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E0Q0c7QUFDSCxNQUFNLE9BQU8saUJBQWtCLFNBQVEsY0FBdUM7SUFBOUU7O1FBQ0U7O1dBRUc7UUFDZ0IsZ0JBQVcsR0FBRyxZQUFZLENBQUM7SUF3UWhELENBQUM7SUF0UUM7Ozs7O09BS0c7SUFDTyxjQUFjO1FBQ3RCLE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUVEOzs7Ozs7O09BT0c7SUFDTyxXQUFXLENBQ25CLE1BQStCO1FBRS9CLElBQUksTUFBTSxDQUFDLFFBQVEsSUFBSSxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDcEMsTUFBTSxPQUFPLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FDekIsR0FBRyxNQUFNLENBQUMsUUFBUSxJQUFJLE1BQU0sQ0FBQyxLQUFLLEVBQUUsRUFDcEMsTUFBTSxDQUNQLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ3JCLE9BQU8sRUFBRSxhQUFhLEVBQUUsU0FBUyxPQUFPLEVBQUUsRUFBRSxDQUFDO1FBQy9DLENBQUM7UUFDRCxPQUFPLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FB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aW50ZWdyYXRpb25zL2lvL2NvbmZsdWVuY2Uvc2VydmljZVxuICogQHN1bW1hcnkgQ29uZmx1ZW5jZSBSRVNUIEFQSSBpbnRlZ3JhdGlvbiBzZXJ2aWNlIGZvciBzcGFjZXMgYW5kIHBhZ2VzLlxuICogQGRlc2NyaXB0aW9uIEV4cG9zZXMgQ29uZmx1ZW5jZSBjb250ZW50IG9wZXJhdGlvbnMgKHNwYWNlcywgcGFnZXMsIGFuZCBDUUxcbiAqIHNlYXJjaCkgYXMgYW4gdW5kZWNvcmF0ZWQgY2xpZW50LWJhc2VkIHNlcnZpY2UgYnVpbHQgb25cbiAqIHtAbGluayBIdHRwQXBpU2VydmljZX0uIENvbmZpZ3VyYXRpb24gY29tZXMgZnJvbSBhbiBleHBsaWNpdFxuICogYENvbmZsdWVuY2VTZXJ2aWNlQ29uZmlnYCBvciB0aGUgYGlvLmNvbmZsdWVuY2VgIGVudmlyb25tZW50IHNsaWNlLiBXaGVuIGJvdGhcbiAqIGB1c2VybmFtZWAgYW5kIGB0b2tlbmAgYXJlIGNvbmZpZ3VyZWQgdGhlIHNlcnZpY2Ugc2VuZHMgSFRUUCBCYXNpY1xuICogYXV0aGVudGljYXRpb24gKEFQSSB0b2tlbiBhcyB0aGUgcGFzc3dvcmQpOyBvdGhlcndpc2UgdGhlIHRva2VuIGlzIHNlbnQgYXMgYVxuICogYmVhcmVyIHRva2VuLiBUaGUgc2l0ZSBgYmFzZVVybGAgaXMgcmVxdWlyZWQuIENyZWRlbnRpYWxzIGFyZSByZWZlcmVuY2VkIGZyb21cbiAqIGNvbmZpZ3VyYXRpb24gKGFuZCwgZnJvbSBhcy1ncmFwaCBub2RlcywgZnJvbSB0aGUgcmVzb2x2ZWQgYGNvbmZsdWVuY2VgXG4gKiBjcmVkZW50aWFsIHNlY3JldCkgYW5kIGFyZSBuZXZlciBlbWJlZGRlZCBpbiBzb3VyY2UuIEZhaWx1cmVzIGFyZSBtYXBwZWQgdG9cbiAqIGRlY2FmIGVycm9ycyB2aWEge0BsaW5rIGh0dHBFcnJvcn0uXG4gKi9cbmltcG9ydCB7IEludGVybmFsRXJyb3IgfSBmcm9tIFwiQGRlY2FmLXRzL2RiLWRlY29yYXRvcnNcIjtcbmltcG9ydCB7IElvRW52aXJvbm1lbnQgfSBmcm9tIFwiLi4vZW52aXJvbm1lbnRcIjtcbmltcG9ydCB7IGVudk51bWJlciwgZW52U3RyaW5nIH0gZnJvbSBcIi4uLy4uL3NoYXJlZC9lbnZpcm9ubWVudFZhbHVlXCI7XG5pbXBvcnQge1xuICBIdHRwQXBpU2VydmljZSxcbiAgdHlwZSBIdHRwQXBpU2VydmljZUNvbmZpZyxcbiAgaHR0cEVycm9yLFxufSBmcm9tIFwiLi4vLi4vc2hhcmVkL2h0dHBcIjtcblxuLyoqXG4gKiBAZGVzY3JpcHRpb24gQ29uZmlndXJhdGlvbiBmb3IgdGhlIENvbmZsdWVuY2Ugc2VydmljZVxuICogQHN1bW1hcnkgRXh0ZW5kcyB7QGxpbmsgSHR0cEFwaVNlcnZpY2VDb25maWd9IHdpdGggdGhlIEFQSSBgdG9rZW5gLCB0aGVcbiAqIG9wdGlvbmFsIGB1c2VybmFtZWAgdGhhdCBlbmFibGVzIEJhc2ljIGF1dGhlbnRpY2F0aW9uLCBhbmQgdGhlIHJlcXVpcmVkXG4gKiBzaXRlIGBiYXNlVXJsYC4gV2hlbiBvbWl0dGVkLCB0aGUgYGlvLmNvbmZsdWVuY2VgIGVudmlyb25tZW50IHNsaWNlIHN1cHBsaWVzXG4gKiB0aGUgc2FtZSB2YWx1ZXMgKHBsdXMgb3B0aW9uYWwgYHRpbWVvdXRgKS5cbiAqIEBjYXRlZ29yeSBJT1xuICogQG1lbWJlck9mIG1vZHVsZTppbnRlZ3JhdGlvbnMvaW8vY29uZmx1ZW5jZS9zZXJ2aWNlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmx1ZW5jZVNlcnZpY2VDb25maWcgZXh0ZW5kcyBIdHRwQXBpU2VydmljZUNvbmZpZyB7XG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gQ29uZmx1ZW5jZSBBUEkgdG9rZW5cbiAgICogQHN1bW1hcnkgVXNlZCBhcyB0aGUgQmFzaWMtYXV0aCBwYXNzd29yZCB3aGVuIGB1c2VybmFtZWAgaXMgc2V0LCBvdGhlcndpc2UgYXMgYSBiZWFyZXIgdG9rZW4uXG4gICAqL1xuICB0b2tlbj86IHN0cmluZztcbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBDb25mbHVlbmNlIGFjY291bnQgdXNlcm5hbWUgZm9yIEJhc2ljIGF1dGhlbnRpY2F0aW9uXG4gICAqL1xuICB1c2VybmFtZT86IHN0cmluZztcbn1cblxuLyoqXG4gKiBAZGVzY3JpcHRpb24gSW5wdXQgZm9yIGNyZWF0aW5nIGEgQ29uZmx1ZW5jZSBwYWdlXG4gKiBAc3VtbWFyeSBDYXJyaWVzIHRoZSB0YXJnZXQgYHNwYWNlS2V5YCwgcGFnZSBgdGl0bGVgLCBzdG9yYWdlLWZvcm1hdCBib2R5LFxuICogYW5kIG9wdGlvbmFsIGBwYXJlbnRJZGAgb2YgdGhlIGFuY2VzdG9yIHBhZ2UuXG4gKiBAY2F0ZWdvcnkgSU9cbiAqIEBtZW1iZXJPZiBtb2R1bGU6aW50ZWdyYXRpb25zL2lvL2NvbmZsdWVuY2Uvc2VydmljZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIENvbmZsdWVuY2VQYWdlSW5wdXQge1xuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIFNwYWNlIGtleSB0aGF0IG93bnMgdGhlIG5ldyBwYWdlXG4gICAqL1xuICBzcGFjZUtleTogc3RyaW5nO1xuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIFBhZ2UgdGl0bGUgKHVuaXF1ZSB3aXRoaW4gdGhlIHNwYWNlKVxuICAgKi9cbiAgdGl0bGU6IHN0cmluZztcbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBQYWdlIGJvZHkgaW4gQ29uZmx1ZW5jZSBzdG9yYWdlIGZvcm1hdFxuICAgKi9cbiAgYm9keTogc3RyaW5nO1xuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIE9wdGlvbmFsIHBhcmVudCBwYWdlIElEXG4gICAqL1xuICBwYXJlbnRJZD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBAZGVzY3JpcHRpb24gSW5wdXQgZm9yIHVwZGF0aW5nIGEgQ29uZmx1ZW5jZSBwYWdlXG4gKiBAc3VtbWFyeSBDYXJyaWVzIHRoZSBgcGFnZUlkYCwgbmV3IGB0aXRsZWAgYW5kIHN0b3JhZ2UtZm9ybWF0IGJvZHksIGFuZCBhblxuICogb3B0aW9uYWwgYHZlcnNpb25gLiBXaGVuIGB2ZXJzaW9uYCBpcyBvbWl0dGVkIHRoZSBzZXJ2aWNlIGZldGNoZXMgdGhlXG4gKiBjdXJyZW50IHZlcnNpb24gYW5kIHN1Ym1pdHMgdGhlIG5leHQgb25lLlxuICogQGNhdGVnb3J5IElPXG4gKiBAbWVtYmVyT2YgbW9kdWxlOmludGVncmF0aW9ucy9pby9jb25mbHVlbmNlL3NlcnZpY2VcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDb25mbHVlbmNlUGFnZVVwZGF0ZSB7XG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gSUQgb2YgdGhlIHBhZ2UgdG8gdXBkYXRlXG4gICAqL1xuICBwYWdlSWQ6IHN0cmluZztcbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBOZXcgcGFnZSB0aXRsZVxuICAgKi9cbiAgdGl0bGU6IHN0cmluZztcbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBOZXcgcGFnZSBib2R5IGluIENvbmZsdWVuY2Ugc3RvcmFnZSBmb3JtYXRcbiAgICovXG4gIGJvZHk6IHN0cmluZztcbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBFeHBsaWNpdCBuZXcgdmVyc2lvbiBudW1iZXIgKGF1dG8taW5jcmVtZW50ZWQgd2hlbiBvbWl0dGVkKVxuICAgKi9cbiAgdmVyc2lvbj86IG51bWJlcjtcbn1cblxuLyoqXG4gKiBAZGVzY3JpcHRpb24gSW5wdXQgZm9yIGEgQ29uZmx1ZW5jZSBDUUwgc2VhcmNoXG4gKiBAc3VtbWFyeSBDYXJyaWVzIHRoZSBgY3FsYCBxdWVyeSBhbmQgYW4gb3B0aW9uYWwgcmVzdWx0IGBsaW1pdGAuXG4gKiBAY2F0ZWdvcnkgSU9cbiAqIEBtZW1iZXJPZiBtb2R1bGU6aW50ZWdyYXRpb25zL2lvL2NvbmZsdWVuY2Uvc2VydmljZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIENvbmZsdWVuY2VTZWFyY2hJbnB1dCB7XG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gQ29uZmx1ZW5jZSBRdWVyeSBMYW5ndWFnZSBleHByZXNzaW9uXG4gICAqL1xuICBjcWw6IHN0cmluZztcbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBNYXhpbXVtIG51bWJlciBvZiByZXN1bHRzXG4gICAqL1xuICBsaW1pdD86IG51bWJlcjtcbn1cblxuLyoqXG4gKiBAZGVzY3JpcHRpb24gTWluaW1hbCBDb25mbHVlbmNlIGNvbnRlbnQgZGVzY3JpcHRvciB1c2VkIGZvciB2ZXJzaW9uIGxvb2t1cFxuICogQHN1bW1hcnkgQ2FwdHVyZXMgdGhlIGlkZW50aXR5IGFuZCB2ZXJzaW9uIG51bWJlciByZWFkIGJlZm9yZSBhbiB1cGRhdGUuXG4gKi9cbmludGVyZmFjZSBDb25mbHVlbmNlUGFnZSB7XG4gIGlkPzogc3RyaW5nO1xuICB0aXRsZT86IHN0cmluZztcbiAgdmVyc2lvbj86IHsgbnVtYmVyPzogbnVtYmVyIH07XG59XG5cbi8qKiBEZWZhdWx0IENvbmZsdWVuY2UgY29udGVudCB0eXBlIHdyaXR0ZW4gYnkgdGhlIHNlcnZpY2UgKGBcInBhZ2VcImApLiAqL1xuY29uc3QgREVGQVVMVF9QQUdFX1RZUEUgPSBcInBhZ2VcIjtcblxuLyoqXG4gKiBAZGVzY3JpcHRpb24gQ29uZmx1ZW5jZSBSRVNUIEFQSSBpbnRlZ3JhdGlvbiBzZXJ2aWNlXG4gKiBAc3VtbWFyeSBBbiB1bmRlY29yYXRlZCBIVFRQIHNlcnZpY2UgZm9yIHJlYWRpbmcsIGNyZWF0aW5nLCB1cGRhdGluZywgYW5kXG4gKiBkZWxldGluZyBwYWdlcywgbGlzdGluZyBzcGFjZXMsIGFuZCBydW5uaW5nIENRTCBzZWFyY2hlcy4gVGhlIHNpdGUgYmFzZSBVUkxcbiAqIGFuZCBBUEkgdG9rZW4gYXJlIHJlcXVpcmVkOyBzdXBwbHlpbmcgYSBgdXNlcm5hbWVgIHN3aXRjaGVzIGF1dGhlbnRpY2F0aW9uIHRvXG4gKiBCYXNpYywgYW5kIHRyYW5zcG9ydCBmYWlsdXJlcyBhcmUgbWFwcGVkIHRvIGRlY2FmIGVycm9ycyB2aWFcbiAqIHtAbGluayBodHRwRXJyb3J9LlxuICogQGNsYXNzIENvbmZsdWVuY2VTZXJ2aWNlXG4gKiBAZXh0ZW5kcyBIdHRwQXBpU2VydmljZVxuICogQGNhdGVnb3J5IElPXG4gKiBAZXhhbXBsZVxuICogYGBgdHNcbiAqIGltcG9ydCB7IENvbmZsdWVuY2VTZXJ2aWNlIH0gZnJvbSBcIkBkZWNhZi10cy9pbnRlZ3JhdGlvbnMvaW8vY29uZmx1ZW5jZVwiO1xuICpcbiAqIGNvbnN0IGNvbmZsdWVuY2UgPSBuZXcgQ29uZmx1ZW5jZVNlcnZpY2UoKTtcbiAqIGF3YWl0IGNvbmZsdWVuY2UuaW5pdGlhbGl6ZSh7XG4gKiAgIGJhc2VVcmw6IFwiaHR0cHM6Ly9leGFtcGxlLmF0bGFzc2lhbi5uZXQvd2lraVwiLFxuICogICB1c2VybmFtZTogcHJvY2Vzcy5lbnYuQ09ORkxVRU5DRV9VU0VSTkFNRSxcbiAqICAgdG9rZW46IHByb2Nlc3MuZW52LkdSQVBIX0NSRURFTlRJQUxfQ09ORkxVRU5DRV9UT0tFTixcbiAqIH0pO1xuICogY29uc3QgcGFnZSA9IGF3YWl0IGNvbmZsdWVuY2UuZ2V0UGFnZShcIjEyMzQ1NlwiKTtcbiAqIGBgYFxuICogQG1lcm1haWRcbiAqIHNlcXVlbmNlRGlhZ3JhbVxuICogICBhdXRvbnVtYmVyXG4gKiAgIHBhcnRpY2lwYW50IENhbGxlclxuICogICBwYXJ0aWNpcGFudCBTZXJ2aWNlIGFzIENvbmZsdWVuY2VTZXJ2aWNlXG4gKiAgIHBhcnRpY2lwYW50IEFQSSBhcyBDb25mbHVlbmNlIFJFU1QgQVBJXG4gKiAgIENhbGxlci0+PlNlcnZpY2U6IHVwZGF0ZVBhZ2UoaW5wdXQpXG4gKiAgIGFjdGl2YXRlIFNlcnZpY2VcbiAqICAgU2VydmljZS0+PlNlcnZpY2U6IHJlcXVpcmVDcmVkZW50aWFscygpXG4gKiAgIG9wdCB2ZXJzaW9uIG9taXR0ZWRcbiAqICAgICBTZXJ2aWNlLT4+QVBJOiBHRVQgL3Jlc3QvYXBpL2NvbnRlbnQve2lkfT9leHBhbmQ9dmVyc2lvblxuICogICAgIGFjdGl2YXRlIEFQSVxuICogICAgIEFQSS0tPj5TZXJ2aWNlOiBjdXJyZW50IHZlcnNpb25cbiAqICAgICBkZWFjdGl2YXRlIEFQSVxuICogICBlbmRcbiAqICAgU2VydmljZS0+PkFQSTogUFVUIC9yZXN0L2FwaS9jb250ZW50L3tpZH1cbiAqICAgYWN0aXZhdGUgQVBJXG4gKiAgIEFQSS0tPj5TZXJ2aWNlOiB1cGRhdGVkIHBhZ2VcbiAqICAgZGVhY3RpdmF0ZSBBUElcbiAqICAgU2VydmljZS0tPj5DYWxsZXI6IHVwZGF0ZWQgcGFnZVxuICogICBkZWFjdGl2YXRlIFNlcnZpY2VcbiAqIEBtZW1iZXJPZiBtb2R1bGU6aW50ZWdyYXRpb25zL2lvL2NvbmZsdWVuY2Uvc2VydmljZVxuICovXG5leHBvcnQgY2xhc3MgQ29uZmx1ZW5jZVNlcnZpY2UgZXh0ZW5kcyBIdHRwQXBpU2VydmljZTxDb25mbHVlbmNlU2VydmljZUNvbmZpZz4ge1xuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIFRoZSBwcm92aWRlciBuYW1lIHVzZWQgaW4gZXJyb3IgbWVzc2FnZXNcbiAgICovXG4gIHByb3RlY3RlZCByZWFkb25seSBzZXJ2aWNlTmFtZSA9IFwiQ29uZmx1ZW5jZVwiO1xuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gVGhlIGRlZmF1bHQgYmFzZSBVUkwgZm9yIENvbmZsdWVuY2VcbiAgICogQHN1bW1hcnkgUmV0dXJucyBhbiBlbXB0eSBzdHJpbmc7IENvbmZsdWVuY2UgaXMgc2l0ZS1ob3N0ZWQsIHNvIHRoZVxuICAgKiByZXNvbHZlZCBgYmFzZVVybGAgKGZyb20gY29uZmlnIG9yIGBpby5jb25mbHVlbmNlLmJhc2VVcmxgKSBpcyByZXF1aXJlZC5cbiAgICogQHJldHVybnMge3N0cmluZ30gQW4gZW1wdHkgc3RyaW5nLlxuICAgKi9cbiAgcHJvdGVjdGVkIGRlZmF1bHRCYXNlVXJsKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIFwiXCI7XG4gIH1cblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIEJ1aWxkcyB0aGUgQ29uZmx1ZW5jZSBhdXRoZW50aWNhdGlvbiBoZWFkZXJzXG4gICAqIEBzdW1tYXJ5IFVzZXMgSFRUUCBCYXNpYyAoYHVzZXJuYW1lOnRva2VuYCkgd2hlbiBib3RoIHZhbHVlcyBhcmUgcHJlc2VudCxcbiAgICogb3RoZXJ3aXNlIGEgYmVhcmVyIHRva2VuIHdoZW4gb25seSBgdG9rZW5gIGlzIHByZXNlbnQsIG90aGVyd2lzZSBub1xuICAgKiBoZWFkZXJzLlxuICAgKiBAcGFyYW0ge0NvbmZsdWVuY2VTZXJ2aWNlQ29uZmlnfSBjb25maWcgLSBUaGUgcmVzb2x2ZWQgc2VydmljZSBjb25maWd1cmF0aW9uLlxuICAgKiBAcmV0dXJucyB7UmVjb3JkPHN0cmluZywgc3RyaW5nPn0gVGhlIGF1dGhvcml6YXRpb24gaGVhZGVycy5cbiAgICovXG4gIHByb3RlY3RlZCBhdXRoSGVhZGVycyhcbiAgICBjb25maWc6IENvbmZsdWVuY2VTZXJ2aWNlQ29uZmlnXG4gICk6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4ge1xuICAgIGlmIChjb25maWcudXNlcm5hbWUgJiYgY29uZmlnLnRva2VuKSB7XG4gICAgICBjb25zdCBlbmNvZGVkID0gQnVmZmVyLmZyb20oXG4gICAgICAgIGAke2NvbmZpZy51c2VybmFtZX06JHtjb25maWcudG9rZW59YCxcbiAgICAgICAgXCJ1dGY4XCJcbiAgICAgICkudG9TdHJpbmcoXCJiYXNlNjRcIik7XG4gICAgICByZXR1cm4geyBBdXRob3JpemF0aW9uOiBgQmFzaWMgJHtlbmNvZGVkfWAgfTtcbiAgICB9XG4gICAgcmV0dXJuIGNvbmZpZy50b2tlbiA/IHsgQXV0aG9yaXphdGlvbjogYEJlYXJlciAke2NvbmZpZy50b2tlbn1gIH0gOiB7fTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gUmVhZHMgdGhlIENvbmZsdWVuY2UgY3JlZGVudGlhbHMgYW5kIGRlZmF1bHRzIGZyb20gdGhlIGVudmlyb25tZW50XG4gICAqIEBzdW1tYXJ5IFJlYWRzIHRoZSBgaW8uY29uZmx1ZW5jZWAgc2xpY2UgYW5kIHJldHVybnMgYSBwYXJ0aWFsIGNvbmZpZyB3aGVuXG4gICAqIGFuIEFQSSB0b2tlbiBpcyBjb25maWd1cmVkLCBgdW5kZWZpbmVkYCBvdGhlcndpc2UuIFZhbHVlcyBwYXNzIHRocm91Z2hcbiAgICogYGVudlN0cmluZ2AvYGVudk51bWJlcmAgdG8gcmVqZWN0IHVuc2V0LWxlYWYgcHJveGllcy5cbiAgICogQHJldHVybnMge1BhcnRpYWw8Q29uZmx1ZW5jZVNlcnZpY2VDb25maWc+IHwgdW5kZWZpbmVkfSBBIHBhcnRpYWwgY29uZmlnLCBvciBgdW5kZWZpbmVkYCB3aGVuIG5vIENvbmZsdWVuY2UgdG9rZW4gaXMgY29uZmlndXJlZC5cbiAgICovXG4gIHByb3RlY3RlZCBjb25maWdGcm9tRW52aXJvbm1lbnQoKTpcbiAgICB8IFBhcnRpYWw8Q29uZmx1ZW5jZVNlcnZpY2VDb25maWc+XG4gICAgfCB1bmRlZmluZWQge1xuICAgIGNvbnN0IGVudiA9IElvRW52aXJvbm1lbnQuaW8uY29uZmx1ZW5jZTtcbiAgICBjb25zdCB0b2tlbiA9IGVudlN0cmluZyhlbnY/LnRva2VuKTtcbiAgICBpZiAoIXRva2VuKSByZXR1cm4gdW5kZWZpbmVkO1xuICAgIHJldHVybiB7XG4gICAgICB0b2tlbixcbiAgICAgIHVzZXJuYW1lOiBlbnZTdHJpbmcoZW52LnVzZXJuYW1lKSxcbiAgICAgIGJhc2VVcmw6IGVudlN0cmluZyhlbnYuYmFzZVVybCksXG4gICAgICB0aW1lb3V0OiBlbnZOdW1iZXIoZW52LnRpbWVvdXQpLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIEFzc2VydHMgdGhhdCB0aGUgQ29uZmx1ZW5jZSB0b2tlbiBhbmQgc2l0ZSBiYXNlIFVSTCBhcmUgY29uZmlndXJlZFxuICAgKiBAc3VtbWFyeSBDYWxsZWQgYnkgZXZlcnkgb3BlcmF0aW9uIGJlZm9yZSBpdCB0b3VjaGVzIHRoZSBuZXR3b3JrLlxuICAgKiBAcmV0dXJucyB7dm9pZH1cbiAgICogQHRocm93cyB7SW50ZXJuYWxFcnJvcn0gV2hlbiBubyBBUEkgdG9rZW4gb3IgYmFzZSBVUkwgaXMgY29uZmlndXJlZC5cbiAgICovXG4gIHByb3RlY3RlZCByZXF1aXJlQ3JlZGVudGlhbHMoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmNvbmZpZy50b2tlbikge1xuICAgICAgdGhyb3cgbmV3IEludGVybmFsRXJyb3IoXCJDb25mbHVlbmNlIHJlcXVpcmVzIGFuIEFQSSB0b2tlblwiKTtcbiAgICB9XG4gICAgaWYgKCF0aGlzLmNvbmZpZy5iYXNlVXJsKSB7XG4gICAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihcIkNvbmZsdWVuY2UgcmVxdWlyZXMgYSBiYXNlIFVSTFwiKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIFdyYXBzIGEgYm9keSBpbiB0aGUgQ29uZmx1ZW5jZSBzdG9yYWdlIHJlcHJlc2VudGF0aW9uXG4gICAqIEBzdW1tYXJ5IFByb2R1Y2VzIHRoZSBgeyBzdG9yYWdlOiB7IHZhbHVlLCByZXByZXNlbnRhdGlvbiB9IH1gIGVudmVsb3BlXG4gICAqIHRoZSBjb250ZW50IEFQSSBleHBlY3RzLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gYm9keSAtIFRoZSBDb25mbHVlbmNlIHN0b3JhZ2UtZm9ybWF0IGJvZHkuXG4gICAqIEByZXR1cm5zIHtSZWNvcmQ8c3RyaW5nLCB1bmtub3duPn0gVGhlIHN0b3JhZ2UgYm9keSBlbnZlbG9wZS5cbiAgICovXG4gIHByaXZhdGUgc3RvcmFnZUJvZHkoYm9keTogc3RyaW5nKTogUmVjb3JkPHN0cmluZywgdW5rbm93bj4ge1xuICAgIHJldHVybiB7XG4gICAgICBzdG9yYWdlOiB7XG4gICAgICAgIHZhbHVlOiBib2R5LFxuICAgICAgICByZXByZXNlbnRhdGlvbjogXCJzdG9yYWdlXCIsXG4gICAgICB9LFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIEZldGNoZXMgYSBDb25mbHVlbmNlIHBhZ2VcbiAgICogQHN1bW1hcnkgYEdFVGBzIGAvcmVzdC9hcGkvY29udGVudC88aWQ+YCB3aXRoIHRoZSByZXF1ZXN0ZWQgYGV4cGFuZGBcbiAgICogZmllbGRzIChkZWZhdWx0IGBib2R5LnN0b3JhZ2UsdmVyc2lvbmApLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gcGFnZUlkIC0gVGhlIHBhZ2UgSUQuXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBbZXhwYW5kXSAtIENvbW1hLXNlcGFyYXRlZCBmaWVsZHMgdG8gZXhwYW5kOyBkZWZhdWx0cyB0byBgXCJib2R5LnN0b3JhZ2UsdmVyc2lvblwiYC5cbiAgICogQHJldHVybnMge1Byb21pc2U8dW5rbm93bj59IFRoZSBwYWdlIHBheWxvYWQuXG4gICAqIEB0aHJvd3Mge0ludGVybmFsRXJyb3J9IFdoZW4gY3JlZGVudGlhbHMgYXJlIG1pc3Npbmcgb3IgdGhlIHBhZ2UgSUQgaXMgZW1wdHkuXG4gICAqIEB0aHJvd3Mge05vdEZvdW5kRXJyb3J9IFdoZW4gdGhlIHBhZ2UgZG9lcyBub3QgZXhpc3QgKEhUVFAgNDA0KS5cbiAgICogQHRocm93cyB7QmFkUmVxdWVzdEVycm9yfSBXaGVuIHRoZSBBUEkgcmVqZWN0cyB0aGUgcmVxdWVzdC5cbiAgICovXG4gIGFzeW5jIGdldFBhZ2UocGFnZUlkOiBzdHJpbmcsIGV4cGFuZCA9IFwiYm9keS5zdG9yYWdlLHZlcnNpb25cIik6IFByb21pc2U8dW5rbm93bj4ge1xuICAgIHRoaXMucmVxdWlyZUNyZWRlbnRpYWxzKCk7XG4gICAgaWYgKCFwYWdlSWQpIHtcbiAgICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKFwiQ29uZmx1ZW5jZSByZXF1aXJlcyBhIHBhZ2UgaWRcIik7XG4gICAgfVxuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHRoaXMuY2xpZW50LmdldChcbiAgICAgICAgYC9yZXN0L2FwaS9jb250ZW50LyR7ZW5jb2RlVVJJQ29tcG9uZW50KHBhZ2VJZCl9YCxcbiAgICAgICAgeyBwYXJhbXM6IHsgZXhwYW5kIH0gfVxuICAgICAgKTtcbiAgICAgIHJldHVybiByZXNwb25zZS5kYXRhO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICB0aHJvdyBodHRwRXJyb3IoXCJDb25mbHVlbmNlXCIsIFwiZ2V0IHBhZ2VcIiwgZXJyb3IpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gTGlzdHMgQ29uZmx1ZW5jZSBzcGFjZXNcbiAgICogQHN1bW1hcnkgYEdFVGBzIGAvcmVzdC9hcGkvc3BhY2VgIHdpdGggYSByZXN1bHQgYGxpbWl0YCAoZGVmYXVsdCBgMjVgKS5cbiAgICogQHBhcmFtIHtudW1iZXJ9IFtsaW1pdF0gLSBNYXhpbXVtIG51bWJlciBvZiBzcGFjZXMgdG8gcmV0dXJuOyBkZWZhdWx0cyB0byBgMjVgLlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTx1bmtub3duPn0gVGhlIHNwYWNlIGNvbGxlY3Rpb24gcGF5bG9hZC5cbiAgICogQHRocm93cyB7SW50ZXJuYWxFcnJvcn0gV2hlbiBjcmVkZW50aWFscyBhcmUgbWlzc2luZy5cbiAgICogQHRocm93cyB7QmFkUmVxdWVzdEVycm9yfSBXaGVuIHRoZSBBUEkgcmVqZWN0cyB0aGUgcmVxdWVzdC5cbiAgICovXG4gIGFzeW5jIGxpc3RTcGFjZXMobGltaXQgPSAyNSk6IFByb21pc2U8dW5rbm93bj4ge1xuICAgIHRoaXMucmVxdWlyZUNyZWRlbnRpYWxzKCk7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5jbGllbnQuZ2V0KFwiL3Jlc3QvYXBpL3NwYWNlXCIsIHtcbiAgICAgICAgcGFyYW1zOiB7IGxpbWl0IH0sXG4gICAgICB9KTtcbiAgICAgIHJldHVybiByZXNwb25zZS5kYXRhO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICB0aHJvdyBodHRwRXJyb3IoXCJDb25mbHVlbmNlXCIsIFwibGlzdCBzcGFjZXNcIiwgZXJyb3IpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gQ3JlYXRlcyBhIENvbmZsdWVuY2UgcGFnZVxuICAgKiBAc3VtbWFyeSBgUE9TVGBzIGEgYHBhZ2VgIGNvbnRlbnQgZW50cnkgaW4gdGhlIHRhcmdldCBzcGFjZSwgb3B0aW9uYWxseVxuICAgKiB1bmRlciBhIHBhcmVudCwgd2l0aCB0aGUgYm9keSBpbiBzdG9yYWdlIGZvcm1hdC5cbiAgICogQHBhcmFtIHtDb25mbHVlbmNlUGFnZUlucHV0fSBpbnB1dCAtIFRoZSBzcGFjZSwgdGl0bGUsIGJvZHksIGFuZCBvcHRpb25hbCBwYXJlbnQuXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPHVua25vd24+fSBUaGUgY3JlYXRlZCBwYWdlIHBheWxvYWQuXG4gICAqIEB0aHJvd3Mge0ludGVybmFsRXJyb3J9IFdoZW4gY3JlZGVudGlhbHMgYXJlIG1pc3NpbmcsIG9yIHRoZSBzcGFjZSBrZXkgb3IgdGl0bGUgaXMgZW1wdHkuXG4gICAqIEB0aHJvd3Mge0JhZFJlcXVlc3RFcnJvcn0gV2hlbiB0aGUgQVBJIHJlamVjdHMgdGhlIHBhZ2UuXG4gICAqIEBleGFtcGxlXG4gICAqIGBgYHRzXG4gICAqIGF3YWl0IGNvbmZsdWVuY2UuY3JlYXRlUGFnZSh7XG4gICAqICAgc3BhY2VLZXk6IFwiT1BTXCIsXG4gICAqICAgdGl0bGU6IFwiUmVsZWFzZSAxLjIuMFwiLFxuICAgKiAgIGJvZHk6IFwiPHA+RGV0YWlsc+KApjwvcD5cIixcbiAgICogfSk7XG4gICAqIGBgYFxuICAgKi9cbiAgYXN5bmMgY3JlYXRlUGFnZShpbnB1dDogQ29uZmx1ZW5jZVBhZ2VJbnB1dCk6IFByb21pc2U8dW5rbm93bj4ge1xuICAgIHRoaXMucmVxdWlyZUNyZWRlbnRpYWxzKCk7XG4gICAgaWYgKCFpbnB1dC5zcGFjZUtleSB8fCAhaW5wdXQudGl0bGUpIHtcbiAgICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKFxuICAgICAgICBcIkNvbmZsdWVuY2UgY3JlYXRlUGFnZSByZXF1aXJlcyBhIHNwYWNlIGtleSBhbmQgdGl0bGVcIlxuICAgICAgKTtcbiAgICB9XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5jbGllbnQucG9zdChcIi9yZXN0L2FwaS9jb250ZW50XCIsIHtcbiAgICAgICAgdHlwZTogREVGQVVMVF9QQUdFX1RZUEUsXG4gICAgICAgIHRpdGxlOiBpbnB1dC50aXRsZSxcbiAgICAgICAgc3BhY2U6IHsga2V5OiBpbnB1dC5zcGFjZUtleSB9LFxuICAgICAgICAuLi4oaW5wdXQucGFyZW50SWQgPyB7IGFuY2VzdG9yczogW3sgaWQ6IGlucHV0LnBhcmVudElkIH1dIH0gOiB7fSksXG4gICAgICAgIGJvZHk6IHRoaXMuc3RvcmFnZUJvZHkoaW5wdXQuYm9keSA/PyBcIlwiKSxcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHRocm93IGh0dHBFcnJvcihcIkNvbmZsdWVuY2VcIiwgXCJjcmVhdGUgcGFnZVwiLCBlcnJvcik7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBVcGRhdGVzIGEgQ29uZmx1ZW5jZSBwYWdlXG4gICAqIEBzdW1tYXJ5IGBQVVRgcyB0aGUgbmV3IHRpdGxlIGFuZCBzdG9yYWdlIGJvZHkuIFdoZW4gYHZlcnNpb25gIGlzIG9taXR0ZWRcbiAgICogdGhlIGN1cnJlbnQgdmVyc2lvbiBpcyByZWFkIGZpcnN0IGFuZCB0aGUgbmV4dCBudW1iZXIgaXMgc3VibWl0dGVkLCBhc1xuICAgKiBDb25mbHVlbmNlIHJlcXVpcmVzIG9wdGltaXN0aWMgdmVyc2lvbmluZy5cbiAgICogQHBhcmFtIHtDb25mbHVlbmNlUGFnZVVwZGF0ZX0gaW5wdXQgLSBUaGUgcGFnZSwgbmV3IHRpdGxlL2JvZHksIGFuZCBvcHRpb25hbCB2ZXJzaW9uLlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTx1bmtub3duPn0gVGhlIHVwZGF0ZWQgcGFnZSBwYXlsb2FkLlxuICAgKiBAdGhyb3dzIHtJbnRlcm5hbEVycm9yfSBXaGVuIGNyZWRlbnRpYWxzIGFyZSBtaXNzaW5nLCBvciB0aGUgcGFnZSBJRCBvciB0aXRsZSBpcyBlbXB0eS5cbiAgICogQHRocm93cyB7Tm90Rm91bmRFcnJvcn0gV2hlbiB0aGUgcGFnZSBkb2VzIG5vdCBleGlzdCAoSFRUUCA0MDQpLlxuICAgKiBAdGhyb3dzIHtDb25mbGljdEVycm9yfSBXaGVuIHRoZSBzdWJtaXR0ZWQgdmVyc2lvbiBpcyBzdGFsZSAoSFRUUCA0MDkpLlxuICAgKiBAdGhyb3dzIHtCYWRSZXF1ZXN0RXJyb3J9IFdoZW4gdGhlIEFQSSByZWplY3RzIHRoZSB1cGRhdGUuXG4gICAqL1xuICBhc3luYyB1cGRhdGVQYWdlKGlucHV0OiBDb25mbHVlbmNlUGFnZVVwZGF0ZSk6IFByb21pc2U8dW5rbm93bj4ge1xuICAgIHRoaXMucmVxdWlyZUNyZWRlbnRpYWxzKCk7XG4gICAgaWYgKCFpbnB1dC5wYWdlSWQgfHwgIWlucHV0LnRpdGxlKSB7XG4gICAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihcbiAgICAgICAgXCJDb25mbHVlbmNlIHVwZGF0ZVBhZ2UgcmVxdWlyZXMgYSBwYWdlIGlkIGFuZCB0aXRsZVwiXG4gICAgICApO1xuICAgIH1cbiAgICB0cnkge1xuICAgICAgbGV0IHZlcnNpb24gPSBpbnB1dC52ZXJzaW9uO1xuICAgICAgaWYgKHZlcnNpb24gPT09IHVuZGVmaW5lZCkge1xuICAgICAgICBjb25zdCBjdXJyZW50ID0gYXdhaXQgdGhpcy5jbGllbnQuZ2V0PENvbmZsdWVuY2VQYWdlPihcbiAgICAgICAgICBgL3Jlc3QvYXBpL2NvbnRlbnQvJHtlbmNvZGVVUklDb21wb25lbnQoaW5wdXQucGFnZUlkKX1gLFxuICAgICAgICAgIHsgcGFyYW1zOiB7IGV4cGFuZDogXCJ2ZXJzaW9uXCIgfSB9XG4gICAgICAgICk7XG4gICAgICAgIHZlcnNpb24gPSAoY3VycmVudC5kYXRhLnZlcnNpb24/Lm51bWJlciA/PyAwKSArIDE7XG4gICAgICB9XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHRoaXMuY2xpZW50LnB1dChcbiAgICAgICAgYC9yZXN0L2FwaS9jb250ZW50LyR7ZW5jb2RlVVJJQ29tcG9uZW50KGlucHV0LnBhZ2VJZCl9YCxcbiAgICAgICAge1xuICAgICAgICAgIGlkOiBpbnB1dC5wYWdlSWQsXG4gICAgICAgICAgdHlwZTogREVGQVVMVF9QQUdFX1RZUEUsXG4gICAgICAgICAgdGl0bGU6IGlucHV0LnRpdGxlLFxuICAgICAgICAgIHZlcnNpb246IHsgbnVtYmVyOiB2ZXJzaW9uIH0sXG4gICAgICAgICAgYm9keTogdGhpcy5zdG9yYWdlQm9keShpbnB1dC5ib2R5ID8/IFwiXCIpLFxuICAgICAgICB9XG4gICAgICApO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHRocm93IGh0dHBFcnJvcihcIkNvbmZsdWVuY2VcIiwgXCJ1cGRhdGUgcGFnZVwiLCBlcnJvcik7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBEZWxldGVzIGEgQ29uZmx1ZW5jZSBwYWdlXG4gICAqIEBzdW1tYXJ5IGBERUxFVEVgcyB0aGUgY29udGVudCBlbnRyeSBhbmQgcmV0dXJucyBgeyBkZWxldGVkOiB0cnVlLCBwYWdlSWQgfWAuXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBwYWdlSWQgLSBUaGUgcGFnZSBJRCB0byBkZWxldGUuXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPHVua25vd24+fSBgeyBkZWxldGVkOiB0cnVlLCBwYWdlSWQgfWAgb24gc3VjY2Vzcy5cbiAgICogQHRocm93cyB7SW50ZXJuYWxFcnJvcn0gV2hlbiBjcmVkZW50aWFscyBhcmUgbWlzc2luZyBvciB0aGUgcGFnZSBJRCBpcyBlbXB0eS5cbiAgICogQHRocm93cyB7Tm90Rm91bmRFcnJvcn0gV2hlbiB0aGUgcGFnZSBkb2VzIG5vdCBleGlzdCAoSFRUUCA0MDQpLlxuICAgKiBAdGhyb3dzIHtCYWRSZXF1ZXN0RXJyb3J9IFdoZW4gdGhlIEFQSSByZWplY3RzIHRoZSBkZWxldGlvbi5cbiAgICovXG4gIGFzeW5jIGRlbGV0ZVBhZ2UocGFnZUlkOiBzdHJpbmcpOiBQcm9taXNlPHVua25vd24+IHtcbiAgICB0aGlzLnJlcXVpcmVDcmVkZW50aWFscygpO1xuICAgIGlmICghcGFnZUlkKSB7XG4gICAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihcIkNvbmZsdWVuY2UgcmVxdWlyZXMgYSBwYWdlIGlkXCIpO1xuICAgIH1cbiAgICB0cnkge1xuICAgICAgYXdhaXQgdGhpcy5jbGllbnQuZGVsZXRlKFxuICAgICAgICBgL3Jlc3QvYXBpL2NvbnRlbnQvJHtlbmNvZGVVUklDb21wb25lbnQocGFnZUlkKX1gXG4gICAgICApO1xuICAgICAgcmV0dXJuIHsgZGVsZXRlZDogdHJ1ZSwgcGFnZUlkIH07XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHRocm93IGh0dHBFcnJvcihcIkNvbmZsdWVuY2VcIiwgXCJkZWxldGUgcGFnZVwiLCBlcnJvcik7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBTZWFyY2hlcyBDb25mbHVlbmNlIGNvbnRlbnQgd2l0aCBDUUxcbiAgICogQHN1bW1hcnkgYEdFVGBzIGAvcmVzdC9hcGkvY29udGVudC9zZWFyY2hgIHdpdGggdGhlIENRTCBleHByZXNzaW9uIGFuZCBhblxuICAgKiBvcHRpb25hbCBgbGltaXRgLlxuICAgKiBAcGFyYW0ge0NvbmZsdWVuY2VTZWFyY2hJbnB1dH0gaW5wdXQgLSBUaGUgQ1FMIHF1ZXJ5IGFuZCByZXN1bHQgbGltaXQuXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPHVua25vd24+fSBUaGUgc2VhcmNoIHJlc3VsdCBwYXlsb2FkLlxuICAgKiBAdGhyb3dzIHtJbnRlcm5hbEVycm9yfSBXaGVuIGNyZWRlbnRpYWxzIGFyZSBtaXNzaW5nIG9yIHRoZSBDUUwgcXVlcnkgaXMgZW1wdHkuXG4gICAqIEB0aHJvd3Mge0JhZFJlcXVlc3RFcnJvcn0gV2hlbiB0aGUgQ1FMIHF1ZXJ5IGlzIGludmFsaWQuXG4gICAqL1xuICBhc3luYyBzZWFyY2goaW5wdXQ6IENvbmZsdWVuY2VTZWFyY2hJbnB1dCk6IFByb21pc2U8dW5rbm93bj4ge1xuICAgIHRoaXMucmVxdWlyZUNyZWRlbnRpYWxzKCk7XG4gICAgaWYgKCFpbnB1dC5jcWwpIHtcbiAgICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKFwiQ29uZmx1ZW5jZSBzZWFyY2ggcmVxdWlyZXMgYSBDUUwgcXVlcnlcIik7XG4gICAgfVxuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHRoaXMuY2xpZW50LmdldChcIi9yZXN0L2FwaS9jb250ZW50L3NlYXJjaFwiLCB7XG4gICAgICAgIHBhcmFtczoge1xuICAgICAgICAgIGNxbDogaW5wdXQuY3FsLFxuICAgICAgICAgIC4uLihpbnB1dC5saW1pdCAhPT0gdW5kZWZpbmVkID8geyBsaW1pdDogaW5wdXQubGltaXQgfSA6IHt9KSxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHRocm93IGh0dHBFcnJvcihcIkNvbmZsdWVuY2VcIiwgXCJzZWFyY2ggY29udGVudFwiLCBlcnJvcik7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
317
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29uZmx1ZW5jZVNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJDb25mbHVlbmNlU2VydmljZS5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQTs7Ozs7Ozs7Ozs7OztHQWFHO0FBQ0gsMkRBQXdEO0FBQ3hELHdEQUFvRDtBQUNwRCw0RUFBMEU7QUFDMUUsMkRBQTBFO0FBQzFFLHlFQUF5RTtBQUN6RSxNQUFNLGlCQUFpQixHQUFHLE1BQU0sQ0FBQztBQUNqQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E0Q0c7QUFDSCxNQUFhLGlCQUFrQixTQUFRLHlCQUFjO0lBQ2pEO1FBQ0ksS0FBSyxDQUFDLEdBQUcsU0FBUyxDQUFDLENBQUM7UUFDcEI7O1dBRUc7UUFDSCxJQUFJLENBQUMsV0FBVyxHQUFHLFlBQVksQ0FBQztJQUNwQyxDQUFDO0lBQ0Q7Ozs7O09BS0c7SUFDSCxjQUFjO1FBQ1YsT0FBTyxFQUFFLENBQUM7SUFDZCxDQUFDO0lBQ0Q7Ozs7Ozs7T0FPRztJQUNILFdBQVcsQ0FBQyxNQUFNO1FBQ2QsSUFBSSxNQUFNLENBQUMsUUFBUSxJQUFJLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNsQyxNQUFNLE9BQU8sR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsTUFBTSxDQUFDLFFBQVEsSUFBSSxNQUFNLENBQUMsS0FBSyxFQUFFLEVBQUUsTUFBTSxDQUFDLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQzdGLE9BQU8sRUFBRSxhQUFhLEVBQUUsU0FBUyxPQUFPLEVBQUUsRUFBRSxDQUFDO1FBQ2pELENBQUM7UUFDRCxPQUFPLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsYUFBYSxFQUFFLFVBQVUsTUFBTSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUMzRSxDQUFDO0lBQ0Q7Ozs7OztPQU1HO0lBQ0gs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ZS9zZXJ2aWNlXG4gKiBAc3VtbWFyeSBDb25mbHVlbmNlIFJFU1QgQVBJIGludGVncmF0aW9uIHNlcnZpY2UgZm9yIHNwYWNlcyBhbmQgcGFnZXMuXG4gKiBAZGVzY3JpcHRpb24gRXhwb3NlcyBDb25mbHVlbmNlIGNvbnRlbnQgb3BlcmF0aW9ucyAoc3BhY2VzLCBwYWdlcywgYW5kIENRTFxuICogc2VhcmNoKSBhcyBhbiB1bmRlY29yYXRlZCBjbGllbnQtYmFzZWQgc2VydmljZSBidWlsdCBvblxuICoge0BsaW5rIEh0dHBBcGlTZXJ2aWNlfS4gQ29uZmlndXJhdGlvbiBjb21lcyBmcm9tIGFuIGV4cGxpY2l0XG4gKiBgQ29uZmx1ZW5jZVNlcnZpY2VDb25maWdgIG9yIHRoZSBgaW8uY29uZmx1ZW5jZWAgZW52aXJvbm1lbnQgc2xpY2UuIFdoZW4gYm90aFxuICogYHVzZXJuYW1lYCBhbmQgYHRva2VuYCBhcmUgY29uZmlndXJlZCB0aGUgc2VydmljZSBzZW5kcyBIVFRQIEJhc2ljXG4gKiBhdXRoZW50aWNhdGlvbiAoQVBJIHRva2VuIGFzIHRoZSBwYXNzd29yZCk7IG90aGVyd2lzZSB0aGUgdG9rZW4gaXMgc2VudCBhcyBhXG4gKiBiZWFyZXIgdG9rZW4uIFRoZSBzaXRlIGBiYXNlVXJsYCBpcyByZXF1aXJlZC4gQ3JlZGVudGlhbHMgYXJlIHJlZmVyZW5jZWQgZnJvbVxuICogY29uZmlndXJhdGlvbiAoYW5kLCBmcm9tIGFzLWdyYXBoIG5vZGVzLCBmcm9tIHRoZSByZXNvbHZlZCBgY29uZmx1ZW5jZWBcbiAqIGNyZWRlbnRpYWwgc2VjcmV0KSBhbmQgYXJlIG5ldmVyIGVtYmVkZGVkIGluIHNvdXJjZS4gRmFpbHVyZXMgYXJlIG1hcHBlZCB0b1xuICogZGVjYWYgZXJyb3JzIHZpYSB7QGxpbmsgaHR0cEVycm9yfS5cbiAqL1xuaW1wb3J0IHsgSW50ZXJuYWxFcnJvciB9IGZyb20gXCJAZGVjYWYtdHMvZGItZGVjb3JhdG9yc1wiO1xuaW1wb3J0IHsgSW9FbnZpcm9ubWVudCB9IGZyb20gXCIuLy4uL2Vudmlyb25tZW50LmpzXCI7XG5pbXBvcnQgeyBlbnZOdW1iZXIsIGVudlN0cmluZyB9IGZyb20gXCIuLy4uLy4uL3NoYXJlZC9lbnZpcm9ubWVudFZhbHVlLmpzXCI7XG5pbXBvcnQgeyBIdHRwQXBpU2VydmljZSwgaHR0cEVycm9yLCB9IGZyb20gXCIuLy4uLy4uL3NoYXJlZC9odHRwL2luZGV4LmpzXCI7XG4vKiogRGVmYXVsdCBDb25mbHVlbmNlIGNvbnRlbnQgdHlwZSB3cml0dGVuIGJ5IHRoZSBzZXJ2aWNlIChgXCJwYWdlXCJgKS4gKi9cbmNvbnN0IERFRkFVTFRfUEFHRV9UWVBFID0gXCJwYWdlXCI7XG4vKipcbiAqIEBkZXNjcmlwdGlvbiBDb25mbHVlbmNlIFJFU1QgQVBJIGludGVncmF0aW9uIHNlcnZpY2VcbiAqIEBzdW1tYXJ5IEFuIHVuZGVjb3JhdGVkIEhUVFAgc2VydmljZSBmb3IgcmVhZGluZywgY3JlYXRpbmcsIHVwZGF0aW5nLCBhbmRcbiAqIGRlbGV0aW5nIHBhZ2VzLCBsaXN0aW5nIHNwYWNlcywgYW5kIHJ1bm5pbmcgQ1FMIHNlYXJjaGVzLiBUaGUgc2l0ZSBiYXNlIFVSTFxuICogYW5kIEFQSSB0b2tlbiBhcmUgcmVxdWlyZWQ7IHN1cHBseWluZyBhIGB1c2VybmFtZWAgc3dpdGNoZXMgYXV0aGVudGljYXRpb24gdG9cbiAqIEJhc2ljLCBhbmQgdHJhbnNwb3J0IGZhaWx1cmVzIGFyZSBtYXBwZWQgdG8gZGVjYWYgZXJyb3JzIHZpYVxuICoge0BsaW5rIGh0dHBFcnJvcn0uXG4gKiBAY2xhc3MgQ29uZmx1ZW5jZVNlcnZpY2VcbiAqIEBleHRlbmRzIEh0dHBBcGlTZXJ2aWNlXG4gKiBAY2F0ZWdvcnkgSU9cbiAqIEBleGFtcGxlXG4gKiBgYGB0c1xuICogaW1wb3J0IHsgQ29uZmx1ZW5jZVNlcnZpY2UgfSBmcm9tIFwiQGRlY2FmLXRzL2ludGVncmF0aW9ucy9pby9jb25mbHVlbmNlXCI7XG4gKlxuICogY29uc3QgY29uZmx1ZW5jZSA9IG5ldyBDb25mbHVlbmNlU2VydmljZSgpO1xuICogYXdhaXQgY29uZmx1ZW5jZS5pbml0aWFsaXplKHtcbiAqICAgYmFzZVVybDogXCJodHRwczovL2V4YW1wbGUuYXRsYXNzaWFuLm5ldC93aWtpXCIsXG4gKiAgIHVzZXJuYW1lOiBwcm9jZXNzLmVudi5DT05GTFVFTkNFX1VTRVJOQU1FLFxuICogICB0b2tlbjogcHJvY2Vzcy5lbnYuR1JBUEhfQ1JFREVOVElBTF9DT05GTFVFTkNFX1RPS0VOLFxuICogfSk7XG4gKiBjb25zdCBwYWdlID0gYXdhaXQgY29uZmx1ZW5jZS5nZXRQYWdlKFwiMTIzNDU2XCIpO1xuICogYGBgXG4gKiBAbWVybWFpZFxuICogc2VxdWVuY2VEaWFncmFtXG4gKiAgIGF1dG9udW1iZXJcbiAqICAgcGFydGljaXBhbnQgQ2FsbGVyXG4gKiAgIHBhcnRpY2lwYW50IFNlcnZpY2UgYXMgQ29uZmx1ZW5jZVNlcnZpY2VcbiAqICAgcGFydGljaXBhbnQgQVBJIGFzIENvbmZsdWVuY2UgUkVTVCBBUElcbiAqICAgQ2FsbGVyLT4+U2VydmljZTogdXBkYXRlUGFnZShpbnB1dClcbiAqICAgYWN0aXZhdGUgU2VydmljZVxuICogICBTZXJ2aWNlLT4+U2VydmljZTogcmVxdWlyZUNyZWRlbnRpYWxzKClcbiAqICAgb3B0IHZlcnNpb24gb21pdHRlZFxuICogICAgIFNlcnZpY2UtPj5BUEk6IEdFVCAvcmVzdC9hcGkvY29udGVudC97aWR9P2V4cGFuZD12ZXJzaW9uXG4gKiAgICAgYWN0aXZhdGUgQVBJXG4gKiAgICAgQVBJLS0+PlNlcnZpY2U6IGN1cnJlbnQgdmVyc2lvblxuICogICAgIGRlYWN0aXZhdGUgQVBJXG4gKiAgIGVuZFxuICogICBTZXJ2aWNlLT4+QVBJOiBQVVQgL3Jlc3QvYXBpL2NvbnRlbnQve2lkfVxuICogICBhY3RpdmF0ZSBBUElcbiAqICAgQVBJLS0+PlNlcnZpY2U6IHVwZGF0ZWQgcGFnZVxuICogICBkZWFjdGl2YXRlIEFQSVxuICogICBTZXJ2aWNlLS0+PkNhbGxlcjogdXBkYXRlZCBwYWdlXG4gKiAgIGRlYWN0aXZhdGUgU2VydmljZVxuICogQG1lbWJlck9mIG1vZHVsZTppbnRlZ3JhdGlvbnMvaW8vY29uZmx1ZW5jZS9zZXJ2aWNlXG4gKi9cbmV4cG9ydCBjbGFzcyBDb25mbHVlbmNlU2VydmljZSBleHRlbmRzIEh0dHBBcGlTZXJ2aWNlIHtcbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgc3VwZXIoLi4uYXJndW1lbnRzKTtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIEBkZXNjcmlwdGlvbiBUaGUgcHJvdmlkZXIgbmFtZSB1c2VkIGluIGVycm9yIG1lc3NhZ2VzXG4gICAgICAgICAqL1xuICAgICAgICB0aGlzLnNlcnZpY2VOYW1lID0gXCJDb25mbHVlbmNlXCI7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvbiBUaGUgZGVmYXVsdCBiYXNlIFVSTCBmb3IgQ29uZmx1ZW5jZVxuICAgICAqIEBzdW1tYXJ5IFJldHVybnMgYW4gZW1wdHkgc3RyaW5nOyBDb25mbHVlbmNlIGlzIHNpdGUtaG9zdGVkLCBzbyB0aGVcbiAgICAgKiByZXNvbHZlZCBgYmFzZVVybGAgKGZyb20gY29uZmlnIG9yIGBpby5jb25mbHVlbmNlLmJhc2VVcmxgKSBpcyByZXF1aXJlZC5cbiAgICAgKiBAcmV0dXJucyB7c3RyaW5nfSBBbiBlbXB0eSBzdHJpbmcuXG4gICAgICovXG4gICAgZGVmYXVsdEJhc2VVcmwoKSB7XG4gICAgICAgIHJldHVybiBcIlwiO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb24gQnVpbGRzIHRoZSBDb25mbHVlbmNlIGF1dGhlbnRpY2F0aW9uIGhlYWRlcnNcbiAgICAgKiBAc3VtbWFyeSBVc2VzIEhUVFAgQmFzaWMgKGB1c2VybmFtZTp0b2tlbmApIHdoZW4gYm90aCB2YWx1ZXMgYXJlIHByZXNlbnQsXG4gICAgICogb3RoZXJ3aXNlIGEgYmVhcmVyIHRva2VuIHdoZW4gb25seSBgdG9rZW5gIGlzIHByZXNlbnQsIG90aGVyd2lzZSBub1xuICAgICAqIGhlYWRlcnMuXG4gICAgICogQHBhcmFtIHtDb25mbHVlbmNlU2VydmljZUNvbmZpZ30gY29uZmlnIC0gVGhlIHJlc29sdmVkIHNlcnZpY2UgY29uZmlndXJhdGlvbi5cbiAgICAgKiBAcmV0dXJucyB7UmVjb3JkPHN0cmluZywgc3RyaW5nPn0gVGhlIGF1dGhvcml6YXRpb24gaGVhZGVycy5cbiAgICAgKi9cbiAgICBhdXRoSGVhZGVycyhjb25maWcpIHtcbiAgICAgICAgaWYgKGNvbmZpZy51c2VybmFtZSAmJiBjb25maWcudG9rZW4pIHtcbiAgICAgICAgICAgIGNvbnN0IGVuY29kZWQgPSBCdWZmZXIuZnJvbShgJHtjb25maWcudXNlcm5hbWV9OiR7Y29uZmlnLnRva2VufWAsIFwidXRmOFwiKS50b1N0cmluZyhcImJhc2U2NFwiKTtcbiAgICAgICAgICAgIHJldHVybiB7IEF1dGhvcml6YXRpb246IGBCYXNpYyAke2VuY29kZWR9YCB9O1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBjb25maWcudG9rZW4gPyB7IEF1dGhvcml6YXRpb246IGBCZWFyZXIgJHtjb25maWcudG9rZW59YCB9IDoge307XG4gICAgfVxuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvbiBSZWFkcyB0aGUgQ29uZmx1ZW5jZSBjcmVkZW50aWFscyBhbmQgZGVmYXVsdHMgZnJvbSB0aGUgZW52aXJvbm1lbnRcbiAgICAgKiBAc3VtbWFyeSBSZWFkcyB0aGUgYGlvLmNvbmZsdWVuY2VgIHNsaWNlIGFuZCByZXR1cm5zIGEgcGFydGlhbCBjb25maWcgd2hlblxuICAgICAqIGFuIEFQSSB0b2tlbiBpcyBjb25maWd1cmVkLCBgdW5kZWZpbmVkYCBvdGhlcndpc2UuIFZhbHVlcyBwYXNzIHRocm91Z2hcbiAgICAgKiBgZW52U3RyaW5nYC9gZW52TnVtYmVyYCB0byByZWplY3QgdW5zZXQtbGVhZiBwcm94aWVzLlxuICAgICAqIEByZXR1cm5zIHtQYXJ0aWFsPENvbmZsdWVuY2VTZXJ2aWNlQ29uZmlnPiB8IHVuZGVmaW5lZH0gQSBwYXJ0aWFsIGNvbmZpZywgb3IgYHVuZGVmaW5lZGAgd2hlbiBubyBDb25mbHVlbmNlIHRva2VuIGlzIGNvbmZpZ3VyZWQuXG4gICAgICovXG4gICAgY29uZmlnRnJvbUVudmlyb25tZW50KCkge1xuICAgICAgICBjb25zdCBlbnYgPSBJb0Vudmlyb25tZW50LmlvLmNvbmZsdWVuY2U7XG4gICAgICAgIGNvbnN0IHRva2VuID0gZW52U3RyaW5nKGVudj8udG9rZW4pO1xuICAgICAgICBpZiAoIXRva2VuKVxuICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIHRva2VuLFxuICAgICAgICAgICAgdXNlcm5hbWU6IGVudlN0cmluZyhlbnYudXNlcm5hbWUpLFxuICAgICAgICAgICAgYmFzZVVybDogZW52U3RyaW5nKGVudi5iYXNlVXJsKSxcbiAgICAgICAgICAgIHRpbWVvdXQ6IGVudk51bWJlcihlbnYudGltZW91dCksXG4gICAgICAgIH07XG4gICAgfVxuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvbiBBc3NlcnRzIHRoYXQgdGhlIENvbmZsdWVuY2UgdG9rZW4gYW5kIHNpdGUgYmFzZSBVUkwgYXJlIGNvbmZpZ3VyZWRcbiAgICAgKiBAc3VtbWFyeSBDYWxsZWQgYnkgZXZlcnkgb3BlcmF0aW9uIGJlZm9yZSBpdCB0b3VjaGVzIHRoZSBuZXR3b3JrLlxuICAgICAqIEByZXR1cm5zIHt2b2lkfVxuICAgICAqIEB0aHJvd3Mge0ludGVybmFsRXJyb3J9IFdoZW4gbm8gQVBJIHRva2VuIG9yIGJhc2UgVVJMIGlzIGNvbmZpZ3VyZWQuXG4gICAgICovXG4gICAgcmVxdWlyZUNyZWRlbnRpYWxzKCkge1xuICAgICAgICBpZiAoIXRoaXMuY29uZmlnLnRva2VuKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihcIkNvbmZsdWVuY2UgcmVxdWlyZXMgYW4gQVBJIHRva2VuXCIpO1xuICAgICAgICB9XG4gICAgICAgIGlmICghdGhpcy5jb25maWcuYmFzZVVybCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEludGVybmFsRXJyb3IoXCJDb25mbHVlbmNlIHJlcXVpcmVzIGEgYmFzZSBVUkxcIik7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIFdyYXBzIGEgYm9keSBpbiB0aGUgQ29uZmx1ZW5jZSBzdG9yYWdlIHJlcHJlc2VudGF0aW9uXG4gICAgICogQHN1bW1hcnkgUHJvZHVjZXMgdGhlIGB7IHN0b3JhZ2U6IHsgdmFsdWUsIHJlcHJlc2VudGF0aW9uIH0gfWAgZW52ZWxvcGVcbiAgICAgKiB0aGUgY29udGVudCBBUEkgZXhwZWN0cy5cbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gYm9keSAtIFRoZSBDb25mbHVlbmNlIHN0b3JhZ2UtZm9ybWF0IGJvZHkuXG4gICAgICogQHJldHVybnMge1JlY29yZDxzdHJpbmcsIHVua25vd24+fSBUaGUgc3RvcmFnZSBib2R5IGVudmVsb3BlLlxuICAgICAqL1xuICAgIHN0b3JhZ2VCb2R5KGJvZHkpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIHN0b3JhZ2U6IHtcbiAgICAgICAgICAgICAgICB2YWx1ZTogYm9keSxcbiAgICAgICAgICAgICAgICByZXByZXNlbnRhdGlvbjogXCJzdG9yYWdlXCIsXG4gICAgICAgICAgICB9LFxuICAgICAgICB9O1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb24gRmV0Y2hlcyBhIENvbmZsdWVuY2UgcGFnZVxuICAgICAqIEBzdW1tYXJ5IGBHRVRgcyBgL3Jlc3QvYXBpL2NvbnRlbnQvPGlkPmAgd2l0aCB0aGUgcmVxdWVzdGVkIGBleHBhbmRgXG4gICAgICogZmllbGRzIChkZWZhdWx0IGBib2R5LnN0b3JhZ2UsdmVyc2lvbmApLlxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBwYWdlSWQgLSBUaGUgcGFnZSBJRC5cbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gW2V4cGFuZF0gLSBDb21tYS1zZXBhcmF0ZWQgZmllbGRzIHRvIGV4cGFuZDsgZGVmYXVsdHMgdG8gYFwiYm9keS5zdG9yYWdlLHZlcnNpb25cImAuXG4gICAgICogQHJldHVybnMge1Byb21pc2U8dW5rbm93bj59IFRoZSBwYWdlIHBheWxvYWQuXG4gICAgICogQHRocm93cyB7SW50ZXJuYWxFcnJvcn0gV2hlbiBjcmVkZW50aWFscyBhcmUgbWlzc2luZyBvciB0aGUgcGFnZSBJRCBpcyBlbXB0eS5cbiAgICAgKiBAdGhyb3dzIHtOb3RGb3VuZEVycm9yfSBXaGVuIHRoZSBwYWdlIGRvZXMgbm90IGV4aXN0IChIVFRQIDQwNCkuXG4gICAgICogQHRocm93cyB7QmFkUmVxdWVzdEVycm9yfSBXaGVuIHRoZSBBUEkgcmVqZWN0cyB0aGUgcmVxdWVzdC5cbiAgICAgKi9cbiAgICBhc3luYyBnZXRQYWdlKHBhZ2VJZCwgZXhwYW5kID0gXCJib2R5LnN0b3JhZ2UsdmVyc2lvblwiKSB7XG4gICAgICAgIHRoaXMucmVxdWlyZUNyZWRlbnRpYWxzKCk7XG4gICAgICAgIGlmICghcGFnZUlkKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihcIkNvbmZsdWVuY2UgcmVxdWlyZXMgYSBwYWdlIGlkXCIpO1xuICAgICAgICB9XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHRoaXMuY2xpZW50LmdldChgL3Jlc3QvYXBpL2NvbnRlbnQvJHtlbmNvZGVVUklDb21wb25lbnQocGFnZUlkKX1gLCB7IHBhcmFtczogeyBleHBhbmQgfSB9KTtcbiAgICAgICAgICAgIHJldHVybiByZXNwb25zZS5kYXRhO1xuICAgICAgICB9XG4gICAgICAgIGNhdGNoIChlcnJvcikge1xuICAgICAgICAgICAgdGhyb3cgaHR0cEVycm9yKFwiQ29uZmx1ZW5jZVwiLCBcImdldCBwYWdlXCIsIGVycm9yKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb24gTGlzdHMgQ29uZmx1ZW5jZSBzcGFjZXNcbiAgICAgKiBAc3VtbWFyeSBgR0VUYHMgYC9yZXN0L2FwaS9zcGFjZWAgd2l0aCBhIHJlc3VsdCBgbGltaXRgIChkZWZhdWx0IGAyNWApLlxuICAgICAqIEBwYXJhbSB7bnVtYmVyfSBbbGltaXRdIC0gTWF4aW11bSBudW1iZXIgb2Ygc3BhY2VzIHRvIHJldHVybjsgZGVmYXVsdHMgdG8gYDI1YC5cbiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZTx1bmtub3duPn0gVGhlIHNwYWNlIGNvbGxlY3Rpb24gcGF5bG9hZC5cbiAgICAgKiBAdGhyb3dzIHtJbnRlcm5hbEVycm9yfSBXaGVuIGNyZWRlbnRpYWxzIGFyZSBtaXNzaW5nLlxuICAgICAqIEB0aHJvd3Mge0JhZFJlcXVlc3RFcnJvcn0gV2hlbiB0aGUgQVBJIHJlamVjdHMgdGhlIHJlcXVlc3QuXG4gICAgICovXG4gICAgYXN5bmMgbGlzdFNwYWNlcyhsaW1pdCA9IDI1KSB7XG4gICAgICAgIHRoaXMucmVxdWlyZUNyZWRlbnRpYWxzKCk7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHRoaXMuY2xpZW50LmdldChcIi9yZXN0L2FwaS9zcGFjZVwiLCB7XG4gICAgICAgICAgICAgICAgcGFyYW1zOiB7IGxpbWl0IH0sXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHJldHVybiByZXNwb25zZS5kYXRhO1xuICAgICAgICB9XG4gICAgICAgIGNhdGNoIChlcnJvcikge1xuICAgICAgICAgICAgdGhyb3cgaHR0cEVycm9yKFwiQ29uZmx1ZW5jZVwiLCBcImxpc3Qgc3BhY2VzXCIsIGVycm9yKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb24gQ3JlYXRlcyBhIENvbmZsdWVuY2UgcGFnZVxuICAgICAqIEBzdW1tYXJ5IGBQT1NUYHMgYSBgcGFnZWAgY29udGVudCBlbnRyeSBpbiB0aGUgdGFyZ2V0IHNwYWNlLCBvcHRpb25hbGx5XG4gICAgICogdW5kZXIgYSBwYXJlbnQsIHdpdGggdGhlIGJvZHkgaW4gc3RvcmFnZSBmb3JtYXQuXG4gICAgICogQHBhcmFtIHtDb25mbHVlbmNlUGFnZUlucHV0fSBpbnB1dCAtIFRoZSBzcGFjZSwgdGl0bGUsIGJvZHksIGFuZCBvcHRpb25hbCBwYXJlbnQuXG4gICAgICogQHJldHVybnMge1Byb21pc2U8dW5rbm93bj59IFRoZSBjcmVhdGVkIHBhZ2UgcGF5bG9hZC5cbiAgICAgKiBAdGhyb3dzIHtJbnRlcm5hbEVycm9yfSBXaGVuIGNyZWRlbnRpYWxzIGFyZSBtaXNzaW5nLCBvciB0aGUgc3BhY2Uga2V5IG9yIHRpdGxlIGlzIGVtcHR5LlxuICAgICAqIEB0aHJvd3Mge0JhZFJlcXVlc3RFcnJvcn0gV2hlbiB0aGUgQVBJIHJlamVjdHMgdGhlIHBhZ2UuXG4gICAgICogQGV4YW1wbGVcbiAgICAgKiBgYGB0c1xuICAgICAqIGF3YWl0IGNvbmZsdWVuY2UuY3JlYXRlUGFnZSh7XG4gICAgICogICBzcGFjZUtleTogXCJPUFNcIixcbiAgICAgKiAgIHRpdGxlOiBcIlJlbGVhc2UgMS4yLjBcIixcbiAgICAgKiAgIGJvZHk6IFwiPHA+RGV0YWlsc+KApjwvcD5cIixcbiAgICAgKiB9KTtcbiAgICAgKiBgYGBcbiAgICAgKi9cbiAgICBhc3luYyBjcmVhdGVQYWdlKGlucHV0KSB7XG4gICAgICAgIHRoaXMucmVxdWlyZUNyZWRlbnRpYWxzKCk7XG4gICAgICAgIGlmICghaW5wdXQuc3BhY2VLZXkgfHwgIWlucHV0LnRpdGxlKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihcIkNvbmZsdWVuY2UgY3JlYXRlUGFnZSByZXF1aXJlcyBhIHNwYWNlIGtleSBhbmQgdGl0bGVcIik7XG4gICAgICAgIH1cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5jbGllbnQucG9zdChcIi9yZXN0L2FwaS9jb250ZW50XCIsIHtcbiAgICAgICAgICAgICAgICB0eXBlOiBERUZBVUxUX1BBR0VfVFlQRSxcbiAgICAgICAgICAgICAgICB0aXRsZTogaW5wdXQudGl0bGUsXG4gICAgICAgICAgICAgICAgc3BhY2U6IHsga2V5OiBpbnB1dC5zcGFjZUtleSB9LFxuICAgICAgICAgICAgICAgIC4uLihpbnB1dC5wYXJlbnRJZCA/IHsgYW5jZXN0b3JzOiBbeyBpZDogaW5wdXQucGFyZW50SWQgfV0gfSA6IHt9KSxcbiAgICAgICAgICAgICAgICBib2R5OiB0aGlzLnN0b3JhZ2VCb2R5KGlucHV0LmJvZHkgPz8gXCJcIiksXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHJldHVybiByZXNwb25zZS5kYXRhO1xuICAgICAgICB9XG4gICAgICAgIGNhdGNoIChlcnJvcikge1xuICAgICAgICAgICAgdGhyb3cgaHR0cEVycm9yKFwiQ29uZmx1ZW5jZVwiLCBcImNyZWF0ZSBwYWdlXCIsIGVycm9yKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb24gVXBkYXRlcyBhIENvbmZsdWVuY2UgcGFnZVxuICAgICAqIEBzdW1tYXJ5IGBQVVRgcyB0aGUgbmV3IHRpdGxlIGFuZCBzdG9yYWdlIGJvZHkuIFdoZW4gYHZlcnNpb25gIGlzIG9taXR0ZWRcbiAgICAgKiB0aGUgY3VycmVudCB2ZXJzaW9uIGlzIHJlYWQgZmlyc3QgYW5kIHRoZSBuZXh0IG51bWJlciBpcyBzdWJtaXR0ZWQsIGFzXG4gICAgICogQ29uZmx1ZW5jZSByZXF1aXJlcyBvcHRpbWlzdGljIHZlcnNpb25pbmcuXG4gICAgICogQHBhcmFtIHtDb25mbHVlbmNlUGFnZVVwZGF0ZX0gaW5wdXQgLSBUaGUgcGFnZSwgbmV3IHRpdGxlL2JvZHksIGFuZCBvcHRpb25hbCB2ZXJzaW9uLlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlPHVua25vd24+fSBUaGUgdXBkYXRlZCBwYWdlIHBheWxvYWQuXG4gICAgICogQHRocm93cyB7SW50ZXJuYWxFcnJvcn0gV2hlbiBjcmVkZW50aWFscyBhcmUgbWlzc2luZywgb3IgdGhlIHBhZ2UgSUQgb3IgdGl0bGUgaXMgZW1wdHkuXG4gICAgICogQHRocm93cyB7Tm90Rm91bmRFcnJvcn0gV2hlbiB0aGUgcGFnZSBkb2VzIG5vdCBleGlzdCAoSFRUUCA0MDQpLlxuICAgICAqIEB0aHJvd3Mge0NvbmZsaWN0RXJyb3J9IFdoZW4gdGhlIHN1Ym1pdHRlZCB2ZXJzaW9uIGlzIHN0YWxlIChIVFRQIDQwOSkuXG4gICAgICogQHRocm93cyB7QmFkUmVxdWVzdEVycm9yfSBXaGVuIHRoZSBBUEkgcmVqZWN0cyB0aGUgdXBkYXRlLlxuICAgICAqL1xuICAgIGFzeW5jIHVwZGF0ZVBhZ2UoaW5wdXQpIHtcbiAgICAgICAgdGhpcy5yZXF1aXJlQ3JlZGVudGlhbHMoKTtcbiAgICAgICAgaWYgKCFpbnB1dC5wYWdlSWQgfHwgIWlucHV0LnRpdGxlKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihcIkNvbmZsdWVuY2UgdXBkYXRlUGFnZSByZXF1aXJlcyBhIHBhZ2UgaWQgYW5kIHRpdGxlXCIpO1xuICAgICAgICB9XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBsZXQgdmVyc2lvbiA9IGlucHV0LnZlcnNpb247XG4gICAgICAgICAgICBpZiAodmVyc2lvbiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgY3VycmVudCA9IGF3YWl0IHRoaXMuY2xpZW50LmdldChgL3Jlc3QvYXBpL2NvbnRlbnQvJHtlbmNvZGVVUklDb21wb25lbnQoaW5wdXQucGFnZUlkKX1gLCB7IHBhcmFtczogeyBleHBhbmQ6IFwidmVyc2lvblwiIH0gfSk7XG4gICAgICAgICAgICAgICAgdmVyc2lvbiA9IChjdXJyZW50LmRhdGEudmVyc2lvbj8ubnVtYmVyID8/IDApICsgMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5jbGllbnQucHV0KGAvcmVzdC9hcGkvY29udGVudC8ke2VuY29kZVVSSUNvbXBvbmVudChpbnB1dC5wYWdlSWQpfWAsIHtcbiAgICAgICAgICAgICAgICBpZDogaW5wdXQucGFnZUlkLFxuICAgICAgICAgICAgICAgIHR5cGU6IERFRkFVTFRfUEFHRV9UWVBFLFxuICAgICAgICAgICAgICAgIHRpdGxlOiBpbnB1dC50aXRsZSxcbiAgICAgICAgICAgICAgICB2ZXJzaW9uOiB7IG51bWJlcjogdmVyc2lvbiB9LFxuICAgICAgICAgICAgICAgIGJvZHk6IHRoaXMuc3RvcmFnZUJvZHkoaW5wdXQuYm9keSA/PyBcIlwiKSxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICB0aHJvdyBodHRwRXJyb3IoXCJDb25mbHVlbmNlXCIsIFwidXBkYXRlIHBhZ2VcIiwgZXJyb3IpO1xuICAgICAgICB9XG4gICAgfVxuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvbiBEZWxldGVzIGEgQ29uZmx1ZW5jZSBwYWdlXG4gICAgICogQHN1bW1hcnkgYERFTEVURWBzIHRoZSBjb250ZW50IGVudHJ5IGFuZCByZXR1cm5zIGB7IGRlbGV0ZWQ6IHRydWUsIHBhZ2VJZCB9YC5cbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gcGFnZUlkIC0gVGhlIHBhZ2UgSUQgdG8gZGVsZXRlLlxuICAgICAqIEByZXR1cm5zIHtQcm9taXNlPHVua25vd24+fSBgeyBkZWxldGVkOiB0cnVlLCBwYWdlSWQgfWAgb24gc3VjY2Vzcy5cbiAgICAgKiBAdGhyb3dzIHtJbnRlcm5hbEVycm9yfSBXaGVuIGNyZWRlbnRpYWxzIGFyZSBtaXNzaW5nIG9yIHRoZSBwYWdlIElEIGlzIGVtcHR5LlxuICAgICAqIEB0aHJvd3Mge05vdEZvdW5kRXJyb3J9IFdoZW4gdGhlIHBhZ2UgZG9lcyBub3QgZXhpc3QgKEhUVFAgNDA0KS5cbiAgICAgKiBAdGhyb3dzIHtCYWRSZXF1ZXN0RXJyb3J9IFdoZW4gdGhlIEFQSSByZWplY3RzIHRoZSBkZWxldGlvbi5cbiAgICAgKi9cbiAgICBhc3luYyBkZWxldGVQYWdlKHBhZ2VJZCkge1xuICAgICAgICB0aGlzLnJlcXVpcmVDcmVkZW50aWFscygpO1xuICAgICAgICBpZiAoIXBhZ2VJZCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEludGVybmFsRXJyb3IoXCJDb25mbHVlbmNlIHJlcXVpcmVzIGEgcGFnZSBpZFwiKTtcbiAgICAgICAgfVxuICAgICAgICB0cnkge1xuICAgICAgICAgICAgYXdhaXQgdGhpcy5jbGllbnQuZGVsZXRlKGAvcmVzdC9hcGkvY29udGVudC8ke2VuY29kZVVSSUNvbXBvbmVudChwYWdlSWQpfWApO1xuICAgICAgICAgICAgcmV0dXJuIHsgZGVsZXRlZDogdHJ1ZSwgcGFnZUlkIH07XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICB0aHJvdyBodHRwRXJyb3IoXCJDb25mbHVlbmNlXCIsIFwiZGVsZXRlIHBhZ2VcIiwgZXJyb3IpO1xuICAgICAgICB9XG4gICAgfVxuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvbiBTZWFyY2hlcyBDb25mbHVlbmNlIGNvbnRlbnQgd2l0aCBDUUxcbiAgICAgKiBAc3VtbWFyeSBgR0VUYHMgYC9yZXN0L2FwaS9jb250ZW50L3NlYXJjaGAgd2l0aCB0aGUgQ1FMIGV4cHJlc3Npb24gYW5kIGFuXG4gICAgICogb3B0aW9uYWwgYGxpbWl0YC5cbiAgICAgKiBAcGFyYW0ge0NvbmZsdWVuY2VTZWFyY2hJbnB1dH0gaW5wdXQgLSBUaGUgQ1FMIHF1ZXJ5IGFuZCByZXN1bHQgbGltaXQuXG4gICAgICogQHJldHVybnMge1Byb21pc2U8dW5rbm93bj59IFRoZSBzZWFyY2ggcmVzdWx0IHBheWxvYWQuXG4gICAgICogQHRocm93cyB7SW50ZXJuYWxFcnJvcn0gV2hlbiBjcmVkZW50aWFscyBhcmUgbWlzc2luZyBvciB0aGUgQ1FMIHF1ZXJ5IGlzIGVtcHR5LlxuICAgICAqIEB0aHJvd3Mge0JhZFJlcXVlc3RFcnJvcn0gV2hlbiB0aGUgQ1FMIHF1ZXJ5IGlzIGludmFsaWQuXG4gICAgICovXG4gICAgYXN5bmMgc2VhcmNoKGlucHV0KSB7XG4gICAgICAgIHRoaXMucmVxdWlyZUNyZWRlbnRpYWxzKCk7XG4gICAgICAgIGlmICghaW5wdXQuY3FsKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihcIkNvbmZsdWVuY2Ugc2VhcmNoIHJlcXVpcmVzIGEgQ1FMIHF1ZXJ5XCIpO1xuICAgICAgICB9XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHRoaXMuY2xpZW50LmdldChcIi9yZXN0L2FwaS9jb250ZW50L3NlYXJjaFwiLCB7XG4gICAgICAgICAgICAgICAgcGFyYW1zOiB7XG4gICAgICAgICAgICAgICAgICAgIGNxbDogaW5wdXQuY3FsLFxuICAgICAgICAgICAgICAgICAgICAuLi4oaW5wdXQubGltaXQgIT09IHVuZGVmaW5lZCA/IHsgbGltaXQ6IGlucHV0LmxpbWl0IH0gOiB7fSksXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICB0aHJvdyBodHRwRXJyb3IoXCJDb25mbHVlbmNlXCIsIFwic2VhcmNoIGNvbnRlbnRcIiwgZXJyb3IpO1xuICAgICAgICB9XG4gICAgfVxufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvbi9qc29uO2Jhc2U2NCxleUoyWlhKemFXOXVJam96TENKbWFXeGxJam9pUTI5dVpteDFaVzVqWlZObGNuWnBZMlV1YW5NaUxDSnpiM1Z5WTJWU2IyOTBJam9pSWl3aWMyOTFjbU5sY3lJNld5SXVMaTh1TGk4dUxpOHVMaTl6Y21NdmFXOHZZMjl1Wm14MVpXNWpaUzlEYjI1bWJIVmxibU5sVTJWeWRtbGpaUzUwY3lKZExDSnVZVzFsY3lJNlcxMHNJbTFoY0hCcGJtZHpJam9pUVVGQlFUczdPenM3T3pzN096czdPenRIUVdGSE8wRkJRMGdzVDBGQlR5eEZRVUZGTEdGQlFXRXNSVUZCUlN4TlFVRk5MSGxDUVVGNVFpeERRVUZETzBGQlEzaEVMRTlCUVU4c1JVRkJSU3hoUVVGaExFVkJRVVVzTkVKQlFYVkNPMEZCUXk5RExFOUJRVThzUlVGQlJTeFRRVUZUTEVWQlFVVXNVMEZCVXl4RlFVRkZMREpEUVVGelF6dEJRVU55UlN4UFFVRlBMRVZCUTB3c1kwRkJZeXhGUVVWa0xGTkJRVk1zUjBGRFZpeHhRMEZCTUVJN1FVRjFSek5DTEhsRlFVRjVSVHRCUVVONlJTeE5RVUZOTEdsQ1FVRnBRaXhIUVVGSExFMUJRVTBzUTBGQlF6dEJRVVZxUXpzN096czdPenM3T3pzN096czdPenM3T3pzN096czdPenM3T3pzN096czdPenM3T3pzN096czdPenM3UjBFMFEwYzdRVUZEU0N4TlFVRk5MRTlCUVU4c2FVSkJRV3RDTEZOQlFWRXNZMEZCZFVNN1NVRkJPVVU3TzFGQlEwVTdPMWRCUlVjN1VVRkRaMElzWjBKQlFWY3NSMEZCUnl4WlFVRlpMRU5CUVVNN1NVRjNVV2hFTEVOQlFVTTdTVUYwVVVNN096czdPMDlCUzBjN1NVRkRUeXhqUVVGak8xRkJRM1JDTEU5QlFVOHNSVUZCUlN4RFFVRkRPMGxCUTFvc1EwRkJRenRKUVVWRU96czdPenM3TzA5QlQwYzdTVUZEVHl4WFFVRlhMRU5CUTI1Q0xFMUJRU3RDTzFGQlJTOUNMRWxCUVVrc1RVRkJUU3hEUVVGRExGRkJRVkVzU1VGQlNTeE5RVUZOTEVOQlFVTXNTMEZCU3l4RlFVRkZMRU5CUVVNN1dVRkRjRU1zVFVGQlRTeFBRVUZQTEVkQlFVY3NUVUZCVFN4RFFVRkRMRWxCUVVrc1EwRkRla0lzUjBGQlJ5eE5RVUZOTEVOQlFVTXNVVUZCVVN4SlFVRkpMRTFCUVUwc1EwRkJReXhMUVVGTExFVkJRVVVzUlVGRGNFTXNUVUZCVFN4RFFVTlFMRU5CUVVNc1VVRkJVU3hEUVVGRExGRkJRVkVzUTBGQlF5eERRVUZETzFsQlEzSkNMRTlCUVU4c1JVRkJSU3hoUVVGaExFVkJRVVVzVTBGQlV5eFBRVUZQTEVWQlFVVXNSVUZCUlN4RFFVRkRPMUZCUXk5RExFTkJRVU03VVVGRFJDeFBRVUZQTEUxQlFVMHNRMEZCUXl4TFFVRkxMRU5CUVVNc1EwRkJReXhEUVVGRExFVkJRVVVzWVVGQllTeEZRVUZGTEZWQlFWVXNUVUZCVFN4RFFVRkRMRXRCUVVzc1JVRkJSU3hGUVVGRkxFTkJRVU1zUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXp0SlFVTjZSU3hEUVVGRE8wbEJSVVE3T3pzN096dFBRVTFITzBsQlEwOHNjVUpCUVhGQ08xRkJSemRDTEUxQlFVMHNSMEZCUnl4SFFVRkhMR0ZCUVdFc1EwRkJReXhGUVVGRkxFTkJRVU1zVlVGQlZTeERRVUZETzFGQlEzaERMRTFCUVUwc1MwRkJTeXhIUVVGSExGTkJRVk1zUTBGQlF5eEhRVUZITEVWQlFVVXNTMEZCU3l4RFFVRkRMRU5CUVVNN1VVRkRjRU1zU1VGQlNTeERRVUZETEV0QlFVczdXVUZCUlN4UFFVRlBMRk5CUVZNc1EwRkJRenRSUVVNM1FpeFBRVUZQTzFsQlEwd3NTMEZCU3p0WlFVTk1MRkZCUVZFc1JVRkJSU3hUUVVGVExFTkJRVU1zUjBGQlJ5eERRVUZETEZGQlFWRXNRMEZCUXp0WlFVTnFReXhQUVVGUExFVkJRVVVzVTBGQlV5eERRVUZETEVkQlFVY3NRMEZCUXl4UFFVRlBMRU5CUVVNN1dVRkRMMElzVDBGQlR5eEZRVUZGTEZOQlFWTXNRMEZCUXl4SFFVRkhMRU5CUVVNc1QwRkJUeXhEUVVGRE8xTkJRMmhETEVOQlFVTTdTVUZEU2l4RFFVRkRPMGxCUlVRN096czdPMDlCUzBjN1NVRkRUeXhyUWtGQmEwSTdVVUZETVVJc1NVRkJTU3hEUVVGRExFbEJRVWtzUTBGQlF5eE5RVUZOTEVOQlFVTXNTMEZCU3l4RlFVRkZMRU5CUVVNN1dVRkRka0lzVFVGQlRTeEpRVUZKTEdGQlFXRXNRMEZCUXl4clEwRkJhME1zUTBGQlF5eERRVUZETzFGQlF6bEVMRU5CUVVNN1VVRkRSQ3hKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEUxQlFVMHNRMEZCUXl4UFFVRlBMRVZCUVVVc1EwRkJRenRaUVVONlFpeE5RVUZOTEVsQlFVa3NZVUZCWVN4RFFVRkRMR2REUVVGblF5eERRVUZETEVOQlFVTTdVVUZETlVRc1EwRkJRenRKUVVOSUxFTkJRVU03U1VGRlJEczdPenM3TzA5QlRVYzdTVUZEU3l4WFFVRlhMRU5CUVVNc1NVRkJXVHRSUVVNNVFpeFBRVUZQTzFsQlEwd3NUMEZCVHl4RlFVRkZPMmRDUVVOUUxFdEJRVXNzUlVGQlJTeEpRVUZKTzJkQ1FVTllMR05CUVdNc1JVRkJSU3hUUVVGVE8yRkJRekZDTzFOQlEwWXNRMEZCUXp0SlFVTktMRU5CUVVNN1NVRkZSRHM3T3pzN096czdPenRQUVZWSE8wbEJRMGdzUzBGQlN5eERRVUZETEU5QlFVOHNRMEZCUXl4TlFVRmpMRVZCUVVVc1RVRkJUU3hIUVVGSExITkNRVUZ6UWp0UlFVTXpSQ3hKUVVGSkxFTkJRVU1zYTBKQlFXdENMRVZCUVVVc1EwRkJRenRSUVVNeFFpeEpRVUZKTEVOQlFVTXNUVUZCVFN4RlFVRkZMRU5CUVVNN1dVRkRXaXhOUVVGTkxFbEJRVWtzWVVGQllTeERRVUZETEN0Q1FVRXJRaXhEUVVGRExFTkJRVU03VVVGRE0wUXNRMEZCUXp0UlFVTkVMRWxCUVVrc1EwRkJRenRaUVVOSUxFMUJRVTBzVVVGQlVTeEhRVUZITEUxQlFVMHNTVUZCU1N4RFFVRkRMRTFCUVUwc1EwRkJReXhIUVVGSExFTkJRM0JETEhGQ1FVRnhRaXhyUWtGQmEwSXNRMEZCUXl4TlFVRk5MRU5CUVVNc1JVRkJSU3hGUVVOcVJDeEZRVUZGTEUxQlFVMHNSVUZCUlN4RlFVRkZMRTFCUVUwc1JVRkJSU3hGUVVGRkxFTkJRM1pDTEVOQlFVTTdXVUZEUml4UFFVRlBMRkZCUVZFc1EwRkJReXhKUVVGSkxFTkJRVU03VVVGRGRrSXNRMEZCUXp0UlFVRkRMRTlCUVU4c1MwRkJTeXhGUVVGRkxFTkJRVU03V1VGRFppeE5RVUZOTEZOQlFWTXNRMEZCUXl4WlFVRlpMRVZCUVVVc1ZVRkJWU3hGUVVGRkxFdEJRVXNzUTBGQlF5eERRVUZETzFGQlEyNUVMRU5CUVVNN1NVRkRTQ3hEUVVGRE8wbEJSVVE3T3pzN096czdUMEZQUnp0SlFVTklMRXRCUVVzc1EwRkJReXhWUVVGVkxFTkJRVU1zUzBGQlN5eEhRVUZITEVWQlFVVTdVVUZEZWtJc1NVRkJTU3hEUVVGRExHdENRVUZyUWl4RlFVRkZMRU5CUVVNN1VVRkRNVUlzU1VGQlNTeERRVUZETzFsQlEwZ3NUVUZCVFN4UlFVRlJMRWRCUVVjc1RVRkJUU3hKUVVGSkxFTkJRVU1zVFVGQlRTeERRVUZETEVkQlFVY3NRMEZCUXl4cFFrRkJhVUlzUlVGQlJUdG5Ra0ZEZUVRc1RVRkJUU3hGUVVGRkxFVkJRVVVzUzBGQlN5eEZRVUZGTzJGQlEyeENMRU5CUVVNc1EwRkJRenRaUVVOSUxFOUJRVThzVVVGQlVTeERRVUZETEVsQlFVa3NRMEZCUXp0UlFVTjJRaXhEUVVGRE8xRkJRVU1zVDBGQlR5eExRVUZMTEVWQlFVVXNRMEZCUXp0WlFVTm1MRTFCUVUwc1UwRkJVeXhEUVVGRExGbEJRVmtzUlVGQlJTeGhRVUZoTEVWQlFVVXNTMEZCU3l4RFFVRkRMRU5CUVVNN1VVRkRkRVFzUTBGQlF6dEpRVU5JTEVOQlFVTTdTVUZGUkRzN096czdPenM3T3pzN096czdPenRQUVdkQ1J6dEpRVU5JTEV0QlFVc3NRMEZCUXl4VlFVRlZMRU5CUVVNc1MwRkJNRUk3VVVGRGVrTXNTVUZCU1N4RFFVRkRMR3RDUVVGclFpeEZRVUZGTEVOQlFVTTdVVUZETVVJc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eFJRVUZSTEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1MwRkJTeXhGUVVGRkxFTkJRVU03V1VGRGNFTXNUVUZCVFN4SlFVRkpMR0ZCUVdFc1EwRkRja0lzYzBSQlFYTkVMRU5CUTNaRUxFTkJRVU03VVVGRFNpeERRVUZETzFGQlEwUXNTVUZCU1N4RFFVRkRPMWxCUTBnc1RVRkJUU3hSUVVGUkxFZEJRVWNzVFVGQlRTeEpRVUZKTEVOQlFVTXNUVUZCVFN4RFFVRkRMRWxCUVVrc1EwRkJReXh0UWtGQmJVSXNSVUZCUlR0blFrRkRNMFFzU1VGQlNTeEZRVUZGTEdsQ1FVRnBRanRuUWtGRGRrSXNTMEZCU3l4RlFVRkZMRXRCUVVzc1EwRkJReXhMUVVGTE8yZENRVU5zUWl4TFFVRkxMRVZCUVVVc1JVRkJSU3hIUVVGSExFVkJRVVVzUzBGQlN5eERRVUZETEZGQlFWRXNSVUZCUlR0blFrRkRPVUlzUjBGQlJ5eERRVUZETEV0QlFVc3NRMEZCUXl4UlFVRlJMRU5CUVVNc1EwRkJReXhEUVVGRExFVkJRVVVzVTBGQlV5eEZRVUZGTEVOQlFVTXNSVUZCUlN4RlFVRkZMRVZCUVVVc1MwRkJTeXhEUVVGRExGRkJRVkVzUlVGQlJTeERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRE8yZENRVU5zUlN4SlFVRkpMRVZCUVVVc1NVRkJTU3hEUVVGRExGZEJRVmNzUTBGQlF5eExRVUZMTEVOQlFVTXNTVUZCU1N4SlFVRkpMRVZCUVVVc1EwRkJRenRoUVVONlF5eERRVUZETEVOQlFVTTdXVUZEU0N4UFFVRlBMRkZCUVZFc1EwRkJReXhKUVVGSkxFTkJRVU03VVVGRGRrSXNRMEZCUXp0UlFVRkRMRTlCUVU4c1MwRkJTeXhGUVVGRkxFTkJRVU03V1VGRFppeE5RVUZOTEZOQlFWTXNRMEZCUXl4WlFVRlpMRVZCUVVVc1lVRkJZU3hGUVVGRkxFdEJRVXNzUTBGQlF5eERRVUZETzFGQlEzUkVMRU5CUVVNN1NVRkRTQ3hEUVVGRE8wbEJSVVE3T3pzN096czdPenM3TzA5QlYwYzdTVUZEU0N4TFFVRkxMRU5CUVVNc1ZVRkJWU3hEUVVGRExFdEJRVEpDTzFGQlF6RkRMRWxCUVVrc1EwRkJReXhyUWtGQmEwSXNSVUZCUlN4RFFVRkRPMUZCUXpGQ0xFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNUVUZCVFN4SlFVRkpMRU5CUVVNc1MwRkJTeXhEUVVGRExFdEJRVXNzUlVGQlJTeERRVUZETzFsQlEyeERMRTFCUVUwc1NVRkJTU3hoUVVGaExFTkJRM0pDTEc5RVFVRnZSQ3hEUVVOeVJDeERRVUZETzFGQlEwb3NRMEZCUXp0UlFVTkVMRWxCUVVrc1EwRkJRenRaUVVOSUxFbEJRVWtzVDBGQlR5eEhRVUZITEV0QlFVc3NRMEZCUXl4UFFVRlBMRU5CUVVNN1dVRkROVUlzU1VGQlNTeFBRVUZQTEV0QlFVc3NVMEZCVXl4RlFVRkZMRU5CUVVNN1owSkJRekZDTEUxQlFVMHNUMEZCVHl4SFFVRkhMRTFCUVUwc1NVRkJTU3hEUVVGRExFMUJRVTBzUTBGQlF5eEhRVUZITEVOQlEyNURMSEZDUVVGeFFpeHJRa0ZCYTBJc1EwRkJReXhMUVVGTExFTkJRVU1zVFVGQlRTeERRVUZETEVWQlFVVXNSVUZEZGtRc1JVRkJSU3hOUVVGTkxFVkJRVVVzUlVGQlJTeE5RVUZOTEVWQlFVVXNVMEZCVXl4RlFVRkZMRVZCUVVVc1EwRkRiRU1zUTBGQlF6dG5Ra0ZEUml4UFFVRlBMRWRCUVVjc1EwRkJReXhQUVVGUExFTkJRVU1zU1VGQlNTeERRVUZETEU5QlFVOHNSVUZCUlN4TlFVRk5MRWxCUVVrc1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETzFsQlEzQkVMRU5CUVVNN1dVRkRSQ3hOUVVGTkxGRkJRVkVzUjBGQlJ5eE5RVUZOTEVsQlFVa3NRMEZCUXl4TlFVRk5MRU5CUVVNc1IwRkJSeXhEUVVOd1F5eHhRa0ZCY1VJc2EwSkJRV3RDTEVOQlFVTXNTMEZCU3l4RFFVRkRMRTFCUVUwc1EwRkJReXhGUVVGRkxFVkJRM1pFTzJkQ1FVTkZMRVZCUVVVc1JVRkJSU3hMUVVGTExFTkJRVU1zVFVGQlRUdG5Ra0ZEYUVJc1NVRkJTU3hGUVVGRkxHbENRVUZwUWp0blFrRkRka0lzUzBGQlN5eEZRVUZGTEV0QlFVc3NRMEZCUXl4TFFVRkxPMmRDUVVOc1FpeFBRVUZQTEVWQlFVVXNSVUZCUlN4TlFVRk5MRVZCUVVVc1QwRkJUeXhGUVVGRk8yZENRVU0xUWl4SlFVRkpMRVZCUVVVc1NVRkJTU3hEUVVGRExGZEJRVmNzUTBGQlF5eExRVUZMTEVOQlFVTXNTVUZCU1N4SlFVRkpMRVZCUVVVc1EwRkJRenRoUVVONlF5eERRVU5HTEVOQlFVTTdXVUZEUml4UFFVRlBMRkZCUVZFc1EwRkJReXhKUVVGSkxFTkJRVU03VVVGRGRrSXNRMEZCUXp0UlFVRkRMRTlCUVU4c1MwRkJTeXhGUVVGRkxFTkJRVU03V1VGRFppeE5RVUZOTEZOQlFWTXNRMEZCUXl4WlFVRlpMRVZCUVVVc1lVRkJZU3hGUVVGRkxFdEJRVXNzUTBGQlF5eERRVUZETzFGQlEzUkVMRU5CUVVNN1NVRkRTQ3hEUVVGRE8wbEJSVVE3T3pzN096czdPMDlCVVVjN1NVRkRTQ3hMUVVGTExFTkJRVU1zVlVGQlZTeERRVUZETEUxQlFXTTdVVUZETjBJc1NVRkJTU3hEUVVGRExHdENRVUZyUWl4RlFVRkZMRU5CUVVNN1VVRkRNVUlzU1VGQlNTeERRVUZETEUxQlFVMHNSVUZCUlN4RFFVRkRPMWxCUTFvc1RVRkJUU3hKUVVGSkxHRkJRV0VzUTBGQlF5d3JRa0ZCSzBJc1EwRkJReXhEUVVGRE8xRkJRek5FTEVOQlFVTTdVVUZEUkN4SlFVRkpMRU5CUVVNN1dVRkRTQ3hOUVVGTkxFbEJRVWtzUTBGQlF5eE5RVUZOTEVOQlFVTXNUVUZCVFN4RFFVTjBRaXh4UWtGQmNVSXNhMEpCUVd0Q0xFTkJRVU1zVFVGQlRTeERRVUZETEVWQlFVVXNRMEZEYkVRc1EwRkJRenRaUVVOR0xFOUJRVThzUlVGQlJTeFBRVUZQTEVWQlFVVXNTVUZCU1N4RlFVRkZMRTFCUVUwc1JVRkJSU3hEUVVGRE8xRkJRMjVETEVOQlFVTTdVVUZCUXl4UFFVRlBMRXRCUVVzc1JVRkJSU3hEUVVGRE8xbEJRMllzVFVGQlRTeFRRVUZUTEVOQlFVTXNXVUZCV1N4RlFVRkZMR0ZCUVdFc1JVRkJSU3hMUVVGTExFTkJRVU1zUTBGQlF6dFJRVU4wUkN4RFFVRkRPMGxCUTBnc1EwRkJRenRKUVVWRU96czdPenM3T3p0UFFWRkhPMGxCUTBnc1MwRkJTeXhEUVVGRExFMUJRVTBzUTBGQlF5eExRVUUwUWp0UlFVTjJReXhKUVVGSkxFTkJRVU1zYTBKQlFXdENMRVZCUVVVc1EwRkJRenRSUVVNeFFpeEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMRWRCUVVjc1JVRkJSU3hEUVVGRE8xbEJRMllzVFVGQlRTeEpRVUZKTEdGQlFXRXNRMEZCUXl4M1EwRkJkME1zUTBGQlF5eERRVUZETzFGQlEzQkZMRU5CUVVNN1VVRkRSQ3hKUVVGSkxFTkJRVU03V1VGRFNDeE5RVUZOTEZGQlFWRXNSMEZCUnl4TlFVRk5MRWxCUVVrc1EwRkJReXhOUVVGTkxFTkJRVU1zUjBGQlJ5eERRVUZETERCQ1FVRXdRaXhGUVVGRk8yZENRVU5xUlN4TlFVRk5MRVZCUVVVN2IwSkJRMDRzUjBGQlJ5eEZRVUZGTEV0QlFVc3NRMEZCUXl4SFFVRkhPMjlDUVVOa0xFZEJRVWNzUTBGQlF5eExRVUZMTEVOQlFVTXNTMEZCU3l4TFFVRkxMRk5CUVZNc1EwRkJReXhEUVVGRExFTkJRVU1zUlVGQlJTeExRVUZMTEVWQlFVVXNTMEZCU3l4RFFVRkRMRXRCUVVzc1JVRkJSU3hEUVVGRExFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTTdhVUpCUXpkRU8yRkJRMFlzUTBGQlF5eERRVUZETzFsQlEwZ3NUMEZCVHl4UlFVRlJMRU5CUVVNc1NVRkJTU3hEUVVGRE8xRkJRM1pDTEVOQlFVTTdVVUZCUXl4UFFVRlBMRXRCUVVzc1JVRkJSU3hEUVVGRE8xbEJRMllzVFVGQlRTeFRRVUZUTEVOQlFVTXNXVUZCV1N4RlFVRkZMR2RDUVVGblFpeEZRVUZGTEV0QlFVc3NRMEZCUXl4RFFVRkRPMUZCUTNwRUxFTkJRVU03U1VGRFNDeERRVUZETzBOQlEwWWlMQ0p6YjNWeVkyVnpRMjl1ZEdWdWRDSTZXeUl2S2lwY2JpQXFJRUJ0YjJSMWJHVWdhVzUwWldkeVlYUnBiMjV6TDJsdkwyTnZibVpzZFdWdVkyVXZjMlZ5ZG1salpWeHVJQ29nUUhOMWJXMWhjbmtnUTI5dVpteDFaVzVqWlNCU1JWTlVJRUZRU1NCcGJuUmxaM0poZEdsdmJpQnpaWEoyYVdObElHWnZjaUJ6Y0dGalpYTWdZVzVrSUhCaFoyVnpMbHh1SUNvZ1FHUmxjMk55YVhCMGFXOXVJRVY0Y0c5elpYTWdRMjl1Wm14MVpXNWpaU0JqYjI1MFpXNTBJRzl3WlhKaGRHbHZibk1nS0hOd1lXTmxjeXdnY0dGblpYTXNJR0Z1WkNCRFVVeGNiaUFxSUhObFlYSmphQ2tnWVhNZ1lXNGdkVzVrWldOdmNtRjBaV1FnWTJ4cFpXNTBMV0poYzJWa0lITmxjblpwWTJVZ1luVnBiSFFnYjI1Y2JpQXFJSHRBYkdsdWF5QklkSFJ3UVhCcFUyVnlkbWxqWlgwdUlFTnZibVpwWjNWeVlYUnBiMjRnWTI5dFpYTWdabkp2YlNCaGJpQmxlSEJzYVdOcGRGeHVJQ29nWUVOdmJtWnNkV1Z1WTJWVFpYSjJhV05sUTI5dVptbG5ZQ0J2Y2lCMGFHVWdZR2x2TG1OdmJtWnNkV1Z1WTJWZ0lHVnVkbWx5YjI1dFpXNTBJSE5zYVdObExpQlhhR1Z1SUdKdmRHaGNiaUFxSUdCMWMyVnlibUZ0WldBZ1lXNWtJR0IwYjJ0bGJtQWdZWEpsSUdOdmJtWnBaM1Z5WldRZ2RHaGxJSE5sY25acFkyVWdjMlZ1WkhNZ1NGUlVVQ0JDWVhOcFkxeHVJQ29nWVhWMGFHVnVkR2xqWVhScGIyNGdLRUZRU1NCMGIydGxiaUJoY3lCMGFHVWdjR0Z6YzNkdmNtUXBPeUJ2ZEdobGNuZHBjMlVnZEdobElIUnZhMlZ1SUdseklITmxiblFnWVhNZ1lWeHVJQ29nWW1WaGNtVnlJSFJ2YTJWdUxpQlVhR1VnYzJsMFpTQmdZbUZ6WlZWeWJHQWdhWE1nY21WeGRXbHlaV1F1SUVOeVpXUmxiblJwWVd4eklHRnlaU0J5WldabGNtVnVZMlZrSUdaeWIyMWNiaUFxSUdOdmJtWnBaM1Z5WVhScGIyNGdLR0Z1WkN3Z1puSnZiU0JoY3kxbmNtRndhQ0J1YjJSbGN5d2dabkp2YlNCMGFHVWdjbVZ6YjJ4MlpXUWdZR052Ym1ac2RXVnVZMlZnWEc0Z0tpQmpjbVZrWlc1MGFXRnNJSE5sWTNKbGRDa2dZVzVrSUdGeVpTQnVaWFpsY2lCbGJXSmxaR1JsWkNCcGJpQnpiM1Z5WTJVdUlFWmhhV3gxY21WeklHRnlaU0J0WVhCd1pXUWdkRzljYmlBcUlHUmxZMkZtSUdWeWNtOXljeUIyYVdFZ2UwQnNhVzVySUdoMGRIQkZjbkp2Y24wdVhHNGdLaTljYm1sdGNHOXlkQ0I3SUVsdWRHVnlibUZzUlhKeWIzSWdmU0JtY205dElGd2lRR1JsWTJGbUxYUnpMMlJpTFdSbFkyOXlZWFJ2Y25OY0lqdGNibWx0Y0c5eWRDQjdJRWx2Ulc1MmFYSnZibTFsYm5RZ2ZTQm1jbTl0SUZ3aUxpNHZaVzUyYVhKdmJtMWxiblJjSWp0Y2JtbHRjRzl5ZENCN0lHVnVkazUxYldKbGNpd2daVzUyVTNSeWFXNW5JSDBnWm5KdmJTQmNJaTR1THk0dUwzTm9ZWEpsWkM5bGJuWnBjbTl1YldWdWRGWmhiSFZsWENJN1hHNXBiWEJ2Y25RZ2UxeHVJQ0JJZEhSd1FYQnBVMlZ5ZG1salpTeGNiaUFnZEhsd1pTQklkSFJ3UVhCcFUyVnlkbWxqWlVOdmJtWnBaeXhjYmlBZ2FIUjBjRVZ5Y205eUxGeHVmU0JtY205dElGd2lMaTR2TGk0dmMyaGhjbVZrTDJoMGRIQmNJanRjYmx4dUx5b3FYRzRnS2lCQVpHVnpZM0pwY0hScGIyNGdRMjl1Wm1sbmRYSmhkR2x2YmlCbWIzSWdkR2hsSUVOdmJtWnNkV1Z1WTJVZ2MyVnlkbWxqWlZ4dUlDb2dRSE4xYlcxaGNua2dSWGgwWlc1a2N5QjdRR3hwYm1zZ1NIUjBjRUZ3YVZObGNuWnBZMlZEYjI1bWFXZDlJSGRwZEdnZ2RHaGxJRUZRU1NCZ2RHOXJaVzVnTENCMGFHVmNiaUFxSUc5d2RHbHZibUZzSUdCMWMyVnlibUZ0WldBZ2RHaGhkQ0JsYm1GaWJHVnpJRUpoYzJsaklHRjFkR2hsYm5ScFkyRjBhVzl1TENCaGJtUWdkR2hsSUhKbGNYVnBjbVZrWEc0Z0tpQnphWFJsSUdCaVlYTmxWWEpzWUM0Z1YyaGxiaUJ2YldsMGRHVmtMQ0IwYUdVZ1lHbHZMbU52Ym1ac2RXVnVZMlZnSUdWdWRtbHliMjV0Wlc1MElITnNhV05sSUhOMWNIQnNhV1Z6WEc0Z0tpQjBhR1VnYzJGdFpTQjJZV3gxWlhNZ0tIQnNkWE1nYjNCMGFXOXVZV3dnWUhScGJXVnZkWFJnS1M1Y2JpQXFJRUJqWVhSbFoyOXllU0JKVDF4dUlDb2dRRzFsYldKbGNrOW1JRzF2WkhWc1pUcHBiblJsWjNKaGRHbHZibk12YVc4dlkyOXVabXgxWlc1alpTOXpaWEoyYVdObFhHNGdLaTljYm1WNGNHOXlkQ0JwYm5SbGNtWmhZMlVnUTI5dVpteDFaVzVqWlZObGNuWnBZMlZEYjI1bWFXY2daWGgwWlc1a2N5QklkSFJ3UVhCcFUyVnlkbWxqWlVOdmJtWnBaeUI3WEc0Z0lDOHFLbHh1SUNBZ0tpQkFaR1Z6WTNKcGNIUnBiMjRnUTI5dVpteDFaVzVqWlNCQlVFa2dkRzlyWlc1Y2JpQWdJQ29nUUhOMWJXMWhjbmtnVlhObFpDQmhjeUIwYUdVZ1FtRnphV010WVhWMGFDQndZWE56ZDI5eVpDQjNhR1Z1SUdCMWMyVnlibUZ0WldBZ2FYTWdjMlYwTENCdmRHaGxjbmRwYzJVZ1lYTWdZU0JpWldGeVpYSWdkRzlyWlc0dVhHNGdJQ0FxTDF4dUlDQjBiMnRsYmo4NklITjBjbWx1Wnp0Y2JpQWdMeW9xWEc0Z0lDQXFJRUJrWlhOamNtbHdkR2x2YmlCRGIyNW1iSFZsYm1ObElHRmpZMjkxYm5RZ2RYTmxjbTVoYldVZ1ptOXlJRUpoYzJsaklHRjFkR2hsYm5ScFkyRjBhVzl1WEc0Z0lDQXFMMXh1SUNCMWMyVnlibUZ0WlQ4NklITjBjbWx1Wnp0Y2JuMWNibHh1THlvcVhHNGdLaUJBWkdWelkzSnBjSFJwYjI0Z1NXNXdkWFFnWm05eUlHTnlaV0YwYVc1bklHRWdRMjl1Wm14MVpXNWpaU0J3WVdkbFhHNGdLaUJBYzNWdGJXRnllU0JEWVhKeWFXVnpJSFJvWlNCMFlYSm5aWFFnWUhOd1lXTmxTMlY1WUN3Z2NHRm5aU0JnZEdsMGJHVmdMQ0J6ZEc5eVlXZGxMV1p2Y20xaGRDQmliMlI1TEZ4dUlDb2dZVzVrSUc5d2RHbHZibUZzSUdCd1lYSmxiblJKWkdBZ2IyWWdkR2hsSUdGdVkyVnpkRzl5SUhCaFoyVXVYRzRnS2lCQVkyRjBaV2R2Y25rZ1NVOWNiaUFxSUVCdFpXMWlaWEpQWmlCdGIyUjFiR1U2YVc1MFpXZHlZWFJwYjI1ekwybHZMMk52Ym1ac2RXVnVZMlV2YzJWeWRtbGpaVnh1SUNvdlhHNWxlSEJ2Y25RZ2FXNTBaWEptWVdObElFTnZibVpzZFdWdVkyVlFZV2RsU1c1d2RYUWdlMXh1SUNBdktpcGNiaUFnSUNvZ1FHUmxjMk55YVhCMGFXOXVJRk53WVdObElHdGxlU0IwYUdGMElHOTNibk1nZEdobElHNWxkeUJ3WVdkbFhHNGdJQ0FxTDF4dUlDQnpjR0ZqWlV0bGVUb2djM1J5YVc1bk8xeHVJQ0F2S2lwY2JpQWdJQ29nUUdSbGMyTnlhWEIwYVc5dUlGQmhaMlVnZEdsMGJHVWdLSFZ1YVhGMVpTQjNhWFJvYVc0Z2RHaGxJSE53WVdObEtWeHVJQ0FnS2k5Y2JpQWdkR2wwYkdVNklITjBjbWx1Wnp0Y2JpQWdMeW9xWEc0Z0lDQXFJRUJrWlhOamNtbHdkR2x2YmlCUVlXZGxJR0p2WkhrZ2FXNGdRMjl1Wm14MVpXNWpaU0J6ZEc5eVlXZGxJR1p2Y20xaGRGeHVJQ0FnS2k5Y2JpQWdZbTlrZVRvZ2MzUnlhVzVuTzF4dUlDQXZLaXBjYmlBZ0lDb2dRR1JsYzJOeWFYQjBhVzl1SUU5d2RHbHZibUZzSUhCaGNtVnVkQ0J3WVdkbElFbEVYRzRnSUNBcUwxeHVJQ0J3WVhKbGJuUkpaRDg2SUhOMGNtbHVaenRjYm4xY2JseHVMeW9xWEc0Z0tpQkFaR1Z6WTNKcGNIUnBiMjRnU1c1d2RYUWdabTl5SUhWd1pHRjBhVzVuSUdFZ1EyOXVabXgxWlc1alpTQndZV2RsWEc0Z0tpQkFjM1Z0YldGeWVTQkRZWEp5YVdWeklIUm9aU0JnY0dGblpVbGtZQ3dnYm1WM0lHQjBhWFJzWldBZ1lXNWtJSE4wYjNKaFoyVXRabTl5YldGMElHSnZaSGtzSUdGdVpDQmhibHh1SUNvZ2IzQjBhVzl1WVd3Z1lIWmxjbk5wYjI1Z0xpQlhhR1Z1SUdCMlpYSnphVzl1WUNCcGN5QnZiV2wwZEdWa0lIUm9aU0J6WlhKMmFXTmxJR1psZEdOb1pYTWdkR2hsWEc0Z0tpQmpkWEp5Wlc1MElIWmxjbk5wYjI0Z1lXNWtJSE4xWW0xcGRITWdkR2hsSUc1bGVIUWdiMjVsTGx4dUlDb2dRR05oZEdWbmIzSjVJRWxQWEc0Z0tpQkFiV1Z0WW1WeVQyWWdiVzlrZFd4bE9tbHVkR1ZuY21GMGFXOXVjeTlwYnk5amIyNW1iSFZsYm1ObEwzTmxjblpwWTJWY2JpQXFMMXh1Wlhod2IzSjBJR2x1ZEdWeVptRmpaU0JEYjI1bWJIVmxibU5sVUdGblpWVndaR0YwWlNCN1hHNGdJQzhxS2x4dUlDQWdLaUJBWkdWelkzSnBjSFJwYjI0Z1NVUWdiMllnZEdobElIQmhaMlVnZEc4Z2RYQmtZWFJsWEc0Z0lDQXFMMXh1SUNCd1lXZGxTV1E2SUhOMGNtbHVaenRjYmlBZ0x5b3FYRzRnSUNBcUlFQmtaWE5qY21sd2RHbHZiaUJPWlhjZ2NHRm5aU0IwYVhSc1pWeHVJQ0FnS2k5Y2JpQWdkR2wwYkdVNklITjBjbWx1Wnp0Y2JpQWdMeW9xWEc0Z0lDQXFJRUJrWlhOamNtbHdkR2x2YmlCT1pYY2djR0ZuWlNCaWIyUjVJR2x1SUVOdmJtWnNkV1Z1WTJVZ2MzUnZjbUZuWlNCbWIzSnRZWFJjYmlBZ0lDb3ZYRzRnSUdKdlpIazZJSE4wY21sdVp6dGNiaUFnTHlvcVhHNGdJQ0FxSUVCa1pYTmpjbWx3ZEdsdmJpQkZlSEJzYVdOcGRDQnVaWGNnZG1WeWMybHZiaUJ1ZFcxaVpYSWdLR0YxZEc4dGFXNWpjbVZ0Wlc1MFpXUWdkMmhsYmlCdmJXbDBkR1ZrS1Z4dUlDQWdLaTljYmlBZ2RtVnljMmx2Ymo4NklHNTFiV0psY2p0Y2JuMWNibHh1THlvcVhHNGdLaUJBWkdWelkzSnBjSFJwYjI0Z1NXNXdkWFFnWm05eUlHRWdRMjl1Wm14MVpXNWpaU0JEVVV3Z2MyVmhjbU5vWEc0Z0tpQkFjM1Z0YldGeWVTQkRZWEp5YVdWeklIUm9aU0JnWTNGc1lDQnhkV1Z5ZVNCaGJtUWdZVzRnYjNCMGFXOXVZV3dnY21WemRXeDBJR0JzYVcxcGRHQXVYRzRnS2lCQVkyRjBaV2R2Y25rZ1NVOWNiaUFxSUVCdFpXMWlaWEpQWmlCdGIyUjFiR1U2YVc1MFpXZHlZWFJwYjI1ekwybHZMMk52Ym1ac2RXVnVZMlV2YzJWeWRtbGpaVnh1SUNvdlhHNWxlSEJ2Y25RZ2FXNTBaWEptWVdObElFTnZibVpzZFdWdVkyVlRaV0Z5WTJoSmJuQjFkQ0I3WEc0Z0lDOHFLbHh1SUNBZ0tpQkFaR1Z6WTNKcGNIUnBiMjRnUTI5dVpteDFaVzVqWlNCUmRXVnllU0JNWVc1bmRXRm5aU0JsZUhCeVpYTnphVzl1WEc0Z0lDQXFMMXh1SUNCamNXdzZJSE4wY21sdVp6dGNiaUFnTHlvcVhHNGdJQ0FxSUVCa1pYTmpjbWx3ZEdsdmJpQk5ZWGhwYlhWdElHNTFiV0psY2lCdlppQnlaWE4xYkhSelhHNGdJQ0FxTDF4dUlDQnNhVzFwZEQ4NklHNTFiV0psY2p0Y2JuMWNibHh1THlvcVhHNGdLaUJBWkdWelkzSnBjSFJwYjI0Z1RXbHVhVzFoYkNCRGIyNW1iSFZsYm1ObElHTnZiblJsYm5RZ1pHVnpZM0pwY0hSdmNpQjFjMlZrSUdadmNpQjJaWEp6YVc5dUlHeHZiMnQxY0Z4dUlDb2dRSE4xYlcxaGNua2dRMkZ3ZEhWeVpYTWdkR2hsSUdsa1pXNTBhWFI1SUdGdVpDQjJaWEp6YVc5dUlHNTFiV0psY2lCeVpXRmtJR0psWm05eVpTQmhiaUIxY0dSaGRHVXVYRzRnS2k5Y2JtbHVkR1Z5Wm1GalpTQkRiMjVtYkhWbGJtTmxVR0ZuWlNCN1hHNGdJR2xrUHpvZ2MzUnlhVzVuTzF4dUlDQjBhWFJzWlQ4NklITjBjbWx1Wnp0Y2JpQWdkbVZ5YzJsdmJqODZJSHNnYm5WdFltVnlQem9nYm5WdFltVnlJSDA3WEc1OVhHNWNiaThxS2lCRVpXWmhkV3gwSUVOdmJtWnNkV1Z1WTJVZ1kyOXVkR1Z1ZENCMGVYQmxJSGR5YVhSMFpXNGdZbmtnZEdobElITmxjblpwWTJVZ0tHQmNJbkJoWjJWY0ltQXBMaUFxTDF4dVkyOXVjM1FnUkVWR1FWVk1WRjlRUVVkRlgxUlpVRVVnUFNCY0luQmhaMlZjSWp0Y2JseHVMeW9xWEc0Z0tpQkFaR1Z6WTNKcGNIUnBiMjRnUTI5dVpteDFaVzVqWlNCU1JWTlVJRUZRU1NCcGJuUmxaM0poZEdsdmJpQnpaWEoyYVdObFhHNGdLaUJBYzNWdGJXRnllU0JCYmlCMWJtUmxZMjl5WVhSbFpDQklWRlJRSUhObGNuWnBZMlVnWm05eUlISmxZV1JwYm1jc0lHTnlaV0YwYVc1bkxDQjFjR1JoZEdsdVp5d2dZVzVrWEc0Z0tpQmtaV3hsZEdsdVp5QndZV2RsY3l3Z2JHbHpkR2x1WnlCemNHRmpaWE1zSUdGdVpDQnlkVzV1YVc1bklFTlJUQ0J6WldGeVkyaGxjeTRnVkdobElITnBkR1VnWW1GelpTQlZVa3hjYmlBcUlHRnVaQ0JCVUVrZ2RHOXJaVzRnWVhKbElISmxjWFZwY21Wa095QnpkWEJ3YkhscGJtY2dZU0JnZFhObGNtNWhiV1ZnSUhOM2FYUmphR1Z6SUdGMWRHaGxiblJwWTJGMGFXOXVJSFJ2WEc0Z0tpQkNZWE5wWXl3Z1lXNWtJSFJ5WVc1emNHOXlkQ0JtWVdsc2RYSmxjeUJoY21VZ2JXRndjR1ZrSUhSdklHUmxZMkZtSUdWeWNtOXljeUIyYVdGY2JpQXFJSHRBYkdsdWF5Qm9kSFJ3UlhKeWIzSjlMbHh1SUNvZ1FHTnNZWE56SUVOdmJtWnNkV1Z1WTJWVFpYSjJhV05sWEc0Z0tpQkFaWGgwWlc1a2N5QklkSFJ3UVhCcFUyVnlkbWxqWlZ4dUlDb2dRR05oZEdWbmIzSjVJRWxQWEc0Z0tpQkFaWGhoYlhCc1pWeHVJQ29nWUdCZ2RITmNiaUFxSUdsdGNHOXlkQ0I3SUVOdmJtWnNkV1Z1WTJWVFpYSjJhV05sSUgwZ1puSnZiU0JjSWtCa1pXTmhaaTEwY3k5cGJuUmxaM0poZEdsdmJuTXZhVzh2WTI5dVpteDFaVzVqWlZ3aU8xeHVJQ3BjYmlBcUlHTnZibk4wSUdOdmJtWnNkV1Z1WTJVZ1BTQnVaWGNnUTI5dVpteDFaVzVqWlZObGNuWnBZMlVvS1R0Y2JpQXFJR0YzWVdsMElHTnZibVpzZFdWdVkyVXVhVzVwZEdsaGJHbDZaU2g3WEc0Z0tpQWdJR0poYzJWVmNtdzZJRndpYUhSMGNITTZMeTlsZUdGdGNHeGxMbUYwYkdGemMybGhiaTV1WlhRdmQybHJhVndpTEZ4dUlDb2dJQ0IxYzJWeWJtRnRaVG9nY0hKdlkyVnpjeTVsYm5ZdVEwOU9Sa3hWUlU1RFJWOVZVMFZTVGtGTlJTeGNiaUFxSUNBZ2RHOXJaVzQ2SUhCeWIyTmxjM011Wlc1MkxrZFNRVkJJWDBOU1JVUkZUbFJKUVV4ZlEwOU9Sa3hWUlU1RFJWOVVUMHRGVGl4Y2JpQXFJSDBwTzF4dUlDb2dZMjl1YzNRZ2NHRm5aU0E5SUdGM1lXbDBJR052Ym1ac2RXVnVZMlV1WjJWMFVHRm5aU2hjSWpFeU16UTFObHdpS1R0Y2JpQXFJR0JnWUZ4dUlDb2dRRzFsY20xaGFXUmNiaUFxSUhObGNYVmxibU5sUkdsaFozSmhiVnh1SUNvZ0lDQmhkWFJ2Ym5WdFltVnlYRzRnS2lBZ0lIQmhjblJwWTJsd1lXNTBJRU5oYkd4bGNseHVJQ29nSUNCd1lYSjBhV05wY0dGdWRDQlRaWEoyYVdObElHRnpJRU52Ym1ac2RXVnVZMlZUWlhKMmFXTmxYRzRnS2lBZ0lIQmhjblJwWTJsd1lXNTBJRUZRU1NCaGN5QkRiMjVtYkhWbGJtTmxJRkpGVTFRZ1FWQkpYRzRnS2lBZ0lFTmhiR3hsY2kwK1BsTmxjblpwWTJVNklIVndaR0YwWlZCaFoyVW9hVzV3ZFhRcFhHNGdLaUFnSUdGamRHbDJZWFJsSUZObGNuWnBZMlZjYmlBcUlDQWdVMlZ5ZG1salpTMCtQbE5sY25acFkyVTZJSEpsY1hWcGNtVkRjbVZrWlc1MGFXRnNjeWdwWEc0Z0tpQWdJRzl3ZENCMlpYSnphVzl1SUc5dGFYUjBaV1JjYmlBcUlDQWdJQ0JUWlhKMmFXTmxMVDQrUVZCSk9pQkhSVlFnTDNKbGMzUXZZWEJwTDJOdmJuUmxiblF2ZTJsa2ZUOWxlSEJoYm1ROWRtVnljMmx2Ymx4dUlDb2dJQ0FnSUdGamRHbDJZWFJsSUVGUVNWeHVJQ29nSUNBZ0lFRlFTUzB0UGo1VFpYSjJhV05sT2lCamRYSnlaVzUwSUhabGNuTnBiMjVjYmlBcUlDQWdJQ0JrWldGamRHbDJZWFJsSUVGUVNWeHVJQ29nSUNCbGJtUmNiaUFxSUNBZ1UyVnlkbWxqWlMwK1BrRlFTVG9nVUZWVUlDOXlaWE4wTDJGd2FTOWpiMjUwWlc1MEwzdHBaSDFjYmlBcUlDQWdZV04wYVhaaGRHVWdRVkJKWEc0Z0tpQWdJRUZRU1MwdFBqNVRaWEoyYVdObE9pQjFjR1JoZEdWa0lIQmhaMlZjYmlBcUlDQWdaR1ZoWTNScGRtRjBaU0JCVUVsY2JpQXFJQ0FnVTJWeWRtbGpaUzB0UGo1RFlXeHNaWEk2SUhWd1pHRjBaV1FnY0dGblpWeHVJQ29nSUNCa1pXRmpkR2wyWVhSbElGTmxjblpwWTJWY2JpQXFJRUJ0WlcxaVpYSlBaaUJ0YjJSMWJHVTZhVzUwWldkeVlYUnBiMjV6TDJsdkwyTnZibVpzZFdWdVkyVXZjMlZ5ZG1salpWeHVJQ292WEc1bGVIQnZjblFnWTJ4aGMzTWdRMjl1Wm14MVpXNWpaVk5sY25acFkyVWdaWGgwWlc1a2N5QklkSFJ3UVhCcFUyVnlkbWxqWlR4RGIyNW1iSFZsYm1ObFUyVnlkbWxqWlVOdmJtWnBaejRnZTF4dUlDQXZLaXBjYmlBZ0lDb2dRR1JsYzJOeWFYQjBhVzl1SUZSb1pTQndjbTkyYVdSbGNpQnVZVzFsSUhWelpXUWdhVzRnWlhKeWIzSWdiV1Z6YzJGblpYTmNiaUFnSUNvdlhHNGdJSEJ5YjNSbFkzUmxaQ0J5WldGa2IyNXNlU0J6WlhKMmFXTmxUbUZ0WlNBOUlGd2lRMjl1Wm14MVpXNWpaVndpTzF4dVhHNGdJQzhxS2x4dUlDQWdLaUJBWkdWelkzSnBjSFJwYjI0Z1ZHaGxJR1JsWm1GMWJIUWdZbUZ6WlNCVlVrd2dabTl5SUVOdmJtWnNkV1Z1WTJWY2JpQWdJQ29nUUhOMWJXMWhjbmtnVW1WMGRYSnVjeUJoYmlCbGJYQjBlU0J6ZEhKcGJtYzdJRU52Ym1ac2RXVnVZMlVnYVhNZ2MybDBaUzFvYjNOMFpXUXNJSE52SUhSb1pWeHVJQ0FnS2lCeVpYTnZiSFpsWkNCZ1ltRnpaVlZ5YkdBZ0tHWnliMjBnWTI5dVptbG5JRzl5SUdCcGJ5NWpiMjVtYkhWbGJtTmxMbUpoYzJWVmNteGdLU0JwY3lCeVpYRjFhWEpsWkM1Y2JpQWdJQ29nUUhKbGRIVnlibk1nZTNOMGNtbHVaMzBnUVc0Z1pXMXdkSGtnYzNSeWFXNW5MbHh1SUNBZ0tpOWNiaUFnY0hKdmRHVmpkR1ZrSUdSbFptRjFiSFJDWVhObFZYSnNLQ2s2SUhOMGNtbHVaeUI3WEc0Z0lDQWdjbVYwZFhKdUlGd2lYQ0k3WEc0Z0lIMWNibHh1SUNBdktpcGNiaUFnSUNvZ1FHUmxjMk55YVhCMGFXOXVJRUoxYVd4a2N5QjBhR1VnUTI5dVpteDFaVzVqWlNCaGRYUm9aVzUwYVdOaGRHbHZiaUJvWldGa1pYSnpYRzRnSUNBcUlFQnpkVzF0WVhKNUlGVnpaWE1nU0ZSVVVDQkNZWE5wWXlBb1lIVnpaWEp1WVcxbE9uUnZhMlZ1WUNrZ2QyaGxiaUJpYjNSb0lIWmhiSFZsY3lCaGNtVWdjSEpsYzJWdWRDeGNiaUFnSUNvZ2IzUm9aWEozYVhObElHRWdZbVZoY21WeUlIUnZhMlZ1SUhkb1pXNGdiMjVzZVNCZ2RHOXJaVzVnSUdseklIQnlaWE5sYm5Rc0lHOTBhR1Z5ZDJselpTQnViMXh1SUNBZ0tpQm9aV0ZrWlhKekxseHVJQ0FnS2lCQWNHRnlZVzBnZTBOdmJtWnNkV1Z1WTJWVFpYSjJhV05sUTI5dVptbG5mU0JqYjI1bWFXY2dMU0JVYUdVZ2NtVnpiMngyWldRZ2MyVnlkbWxqWlNCamIyNW1hV2QxY21GMGFXOXVMbHh1SUNBZ0tpQkFjbVYwZFhKdWN5QjdVbVZqYjNKa1BITjBjbWx1Wnl3Z2MzUnlhVzVuUG4wZ1ZHaGxJR0YxZEdodmNtbDZZWFJwYjI0Z2FHVmhaR1Z5Y3k1Y2JpQWdJQ292WEc0Z0lIQnliM1JsWTNSbFpDQmhkWFJvU0dWaFpHVnljeWhjYmlBZ0lDQmpiMjVtYVdjNklFTnZibVpzZFdWdVkyVlRaWEoyYVdObFEyOXVabWxuWEc0Z0lDazZJRkpsWTI5eVpEeHpkSEpwYm1jc0lITjBjbWx1Wno0Z2UxeHVJQ0FnSUdsbUlDaGpiMjVtYVdjdWRYTmxjbTVoYldVZ0ppWWdZMjl1Wm1sbkxuUnZhMlZ1S1NCN1hHNGdJQ0FnSUNCamIyNXpkQ0JsYm1OdlpHVmtJRDBnUW5WbVptVnlMbVp5YjIwb1hHNGdJQ0FnSUNBZ0lHQWtlMk52Ym1acFp5NTFjMlZ5Ym1GdFpYMDZKSHRqYjI1bWFXY3VkRzlyWlc1OVlDeGNiaUFnSUNBZ0lDQWdYQ0oxZEdZNFhDSmNiaUFnSUNBZ0lDa3VkRzlUZEhKcGJtY29YQ0ppWVhObE5qUmNJaWs3WEc0Z0lDQWdJQ0J5WlhSMWNtNGdleUJCZFhSb2IzSnBlbUYwYVc5dU9pQmdRbUZ6YVdNZ0pIdGxibU52WkdWa2ZXQWdmVHRjYmlBZ0lDQjlYRzRnSUNBZ2NtVjBkWEp1SUdOdmJtWnBaeTUwYjJ0bGJpQS9JSHNnUVhWMGFHOXlhWHBoZEdsdmJqb2dZRUpsWVhKbGNpQWtlMk52Ym1acFp5NTBiMnRsYm4xZ0lIMGdPaUI3ZlR0Y2JpQWdmVnh1WEc0Z0lDOHFLbHh1SUNBZ0tpQkFaR1Z6WTNKcGNIUnBiMjRnVW1WaFpITWdkR2hsSUVOdmJtWnNkV1Z1WTJVZ1kzSmxaR1Z1ZEdsaGJITWdZVzVrSUdSbFptRjFiSFJ6SUdaeWIyMGdkR2hsSUdWdWRtbHliMjV0Wlc1MFhHNGdJQ0FxSUVCemRXMXRZWEo1SUZKbFlXUnpJSFJvWlNCZ2FXOHVZMjl1Wm14MVpXNWpaV0FnYzJ4cFkyVWdZVzVrSUhKbGRIVnlibk1nWVNCd1lYSjBhV0ZzSUdOdmJtWnBaeUIzYUdWdVhHNGdJQ0FxSUdGdUlFRlFTU0IwYjJ0bGJpQnBjeUJqYjI1bWFXZDFjbVZrTENCZ2RXNWtaV1pwYm1Wa1lDQnZkR2hsY25kcGMyVXVJRlpoYkhWbGN5QndZWE56SUhSb2NtOTFaMmhjYmlBZ0lDb2dZR1Z1ZGxOMGNtbHVaMkF2WUdWdWRrNTFiV0psY21BZ2RHOGdjbVZxWldOMElIVnVjMlYwTFd4bFlXWWdjSEp2ZUdsbGN5NWNiaUFnSUNvZ1FISmxkSFZ5Ym5NZ2UxQmhjblJwWVd3OFEyOXVabXgxWlc1alpWTmxjblpwWTJWRGIyNW1hV2MrSUh3Z2RXNWtaV1pwYm1Wa2ZTQkJJSEJoY25ScFlXd2dZMjl1Wm1sbkxDQnZjaUJnZFc1a1pXWnBibVZrWUNCM2FHVnVJRzV2SUVOdmJtWnNkV1Z1WTJVZ2RHOXJaVzRnYVhNZ1kyOXVabWxuZFhKbFpDNWNiaUFnSUNvdlhHNGdJSEJ5YjNSbFkzUmxaQ0JqYjI1bWFXZEdjbTl0Ulc1MmFYSnZibTFsYm5Rb0tUcGNiaUFnSUNCOElGQmhjblJwWVd3OFEyOXVabXgxWlc1alpWTmxjblpwWTJWRGIyNW1hV2MrWEc0Z0lDQWdmQ0IxYm1SbFptbHVaV1FnZTF4dUlDQWdJR052Ym5OMElHVnVkaUE5SUVsdlJXNTJhWEp2Ym0xbGJuUXVhVzh1WTI5dVpteDFaVzVqWlR0Y2JpQWdJQ0JqYjI1emRDQjBiMnRsYmlBOUlHVnVkbE4wY21sdVp5aGxiblkvTG5SdmEyVnVLVHRjYmlBZ0lDQnBaaUFvSVhSdmEyVnVLU0J5WlhSMWNtNGdkVzVrWldacGJtVmtPMXh1SUNBZ0lISmxkSFZ5YmlCN1hHNGdJQ0FnSUNCMGIydGxiaXhjYmlBZ0lDQWdJSFZ6WlhKdVlXMWxPaUJsYm5aVGRISnBibWNvWlc1MkxuVnpaWEp1WVcxbEtTeGNiaUFnSUNBZ0lHSmhjMlZWY213NklHVnVkbE4wY21sdVp5aGxibll1WW1GelpWVnliQ2tzWEc0Z0lDQWdJQ0IwYVcxbGIzVjBPaUJsYm5aT2RXMWlaWElvWlc1MkxuUnBiV1Z2ZFhRcExGeHVJQ0FnSUgwN1hHNGdJSDFjYmx4dUlDQXZLaXBjYmlBZ0lDb2dRR1JsYzJOeWFYQjBhVzl1SUVGemMyVnlkSE1nZEdoaGRDQjBhR1VnUTI5dVpteDFaVzVqWlNCMGIydGxiaUJoYm1RZ2MybDBaU0JpWVhObElGVlNUQ0JoY21VZ1kyOXVabWxuZFhKbFpGeHVJQ0FnS2lCQWMzVnRiV0Z5ZVNCRFlXeHNaV1FnWW5rZ1pYWmxjbmtnYjNCbGNtRjBhVzl1SUdKbFptOXlaU0JwZENCMGIzVmphR1Z6SUhSb1pTQnVaWFIzYjNKckxseHVJQ0FnS2lCQWNtVjBkWEp1Y3lCN2RtOXBaSDFjYmlBZ0lDb2dRSFJvY205M2N5QjdTVzUwWlhKdVlXeEZjbkp2Y24wZ1YyaGxiaUJ1YnlCQlVFa2dkRzlyWlc0Z2IzSWdZbUZ6WlNCVlVrd2dhWE1nWTI5dVptbG5kWEpsWkM1Y2JpQWdJQ292WEc0Z0lIQnliM1JsWTNSbFpDQnlaWEYxYVhKbFEzSmxaR1Z1ZEdsaGJITW9LVG9nZG05cFpDQjdYRzRnSUNBZ2FXWWdLQ0YwYUdsekxtTnZibVpwWnk1MGIydGxiaWtnZTF4dUlDQWdJQ0FnZEdoeWIzY2dibVYzSUVsdWRHVnlibUZzUlhKeWIzSW9YQ0pEYjI1bWJIVmxibU5sSUhKbGNYVnBjbVZ6SUdGdUlFRlFTU0IwYjJ0bGJsd2lLVHRjYmlBZ0lDQjlYRzRnSUNBZ2FXWWdLQ0YwYUdsekxtTnZibVpwWnk1aVlYTmxWWEpzS1NCN1hHNGdJQ0FnSUNCMGFISnZkeUJ1WlhjZ1NXNTBaWEp1WVd4RmNuSnZjaWhjSWtOdmJtWnNkV1Z1WTJVZ2NtVnhkV2x5WlhNZ1lTQmlZWE5sSUZWU1RGd2lLVHRjYmlBZ0lDQjlYRzRnSUgxY2JseHVJQ0F2S2lwY2JpQWdJQ29nUUdSbGMyTnlhWEIwYVc5dUlGZHlZWEJ6SUdFZ1ltOWtlU0JwYmlCMGFHVWdRMjl1Wm14MVpXNWpaU0J6ZEc5eVlXZGxJSEpsY0hKbGMyVnVkR0YwYVc5dVhHNGdJQ0FxSUVCemRXMXRZWEo1SUZCeWIyUjFZMlZ6SUhSb1pTQmdleUJ6ZEc5eVlXZGxPaUI3SUhaaGJIVmxMQ0J5WlhCeVpYTmxiblJoZEdsdmJpQjlJSDFnSUdWdWRtVnNiM0JsWEc0Z0lDQXFJSFJvWlNCamIyNTBaVzUwSUVGUVNTQmxlSEJsWTNSekxseHVJQ0FnS2lCQWNHRnlZVzBnZTNOMGNtbHVaMzBnWW05a2VTQXRJRlJvWlNCRGIyNW1iSFZsYm1ObElITjBiM0poWjJVdFptOXliV0YwSUdKdlpIa3VYRzRnSUNBcUlFQnlaWFIxY201eklIdFNaV052Y21ROGMzUnlhVzVuTENCMWJtdHViM2R1UG4wZ1ZHaGxJSE4wYjNKaFoyVWdZbTlrZVNCbGJuWmxiRzl3WlM1Y2JpQWdJQ292WEc0Z0lIQnlhWFpoZEdVZ2MzUnZjbUZuWlVKdlpIa29ZbTlrZVRvZ2MzUnlhVzVuS1RvZ1VtVmpiM0prUEhOMGNtbHVaeXdnZFc1cmJtOTNiajRnZTF4dUlDQWdJSEpsZEhWeWJpQjdYRzRnSUNBZ0lDQnpkRzl5WVdkbE9pQjdYRzRnSUNBZ0lDQWdJSFpoYkhWbE9pQmliMlI1TEZ4dUlDQWdJQ0FnSUNCeVpYQnlaWE5sYm5SaGRHbHZiam9nWENKemRHOXlZV2RsWENJc1hHNGdJQ0FnSUNCOUxGeHVJQ0FnSUgwN1hHNGdJSDFjYmx4dUlDQXZLaXBjYmlBZ0lDb2dRR1JsYzJOeWFYQjBhVzl1SUVabGRHTm9aWE1nWVNCRGIyNW1iSFZsYm1ObElIQmhaMlZjYmlBZ0lDb2dRSE4xYlcxaGNua2dZRWRGVkdCeklHQXZjbVZ6ZEM5aGNHa3ZZMjl1ZEdWdWRDODhhV1ErWUNCM2FYUm9JSFJvWlNCeVpYRjFaWE4wWldRZ1lHVjRjR0Z1WkdCY2JpQWdJQ29nWm1sbGJHUnpJQ2hrWldaaGRXeDBJR0JpYjJSNUxuTjBiM0poWjJVc2RtVnljMmx2Ym1BcExseHVJQ0FnS2lCQWNHRnlZVzBnZTNOMGNtbHVaMzBnY0dGblpVbGtJQzBnVkdobElIQmhaMlVnU1VRdVhHNGdJQ0FxSUVCd1lYSmhiU0I3YzNSeWFXNW5mU0JiWlhod1lXNWtYU0F0SUVOdmJXMWhMWE5sY0dGeVlYUmxaQ0JtYVdWc1pITWdkRzhnWlhod1lXNWtPeUJrWldaaGRXeDBjeUIwYnlCZ1hDSmliMlI1TG5OMGIzSmhaMlVzZG1WeWMybHZibHdpWUM1Y2JpQWdJQ29nUUhKbGRIVnlibk1nZTFCeWIyMXBjMlU4ZFc1cmJtOTNiajU5SUZSb1pTQndZV2RsSUhCaGVXeHZZV1F1WEc0Z0lDQXFJRUIwYUhKdmQzTWdlMGx1ZEdWeWJtRnNSWEp5YjNKOUlGZG9aVzRnWTNKbFpHVnVkR2xoYkhNZ1lYSmxJRzFwYzNOcGJtY2diM0lnZEdobElIQmhaMlVnU1VRZ2FYTWdaVzF3ZEhrdVhHNGdJQ0FxSUVCMGFISnZkM01nZTA1dmRFWnZkVzVrUlhKeWIzSjlJRmRvWlc0Z2RHaGxJSEJoWjJVZ1pHOWxjeUJ1YjNRZ1pYaHBjM1FnS0VoVVZGQWdOREEwS1M1Y2JpQWdJQ29nUUhSb2NtOTNjeUI3UW1Ga1VtVnhkV1Z6ZEVWeWNtOXlmU0JYYUdWdUlIUm9aU0JCVUVrZ2NtVnFaV04wY3lCMGFHVWdjbVZ4ZFdWemRDNWNiaUFnSUNvdlhHNGdJR0Z6ZVc1aklHZGxkRkJoWjJVb2NHRm5aVWxrT2lCemRISnBibWNzSUdWNGNHRnVaQ0E5SUZ3aVltOWtlUzV6ZEc5eVlXZGxMSFpsY25OcGIyNWNJaWs2SUZCeWIyMXBjMlU4ZFc1cmJtOTNiajRnZTF4dUlDQWdJSFJvYVhNdWNtVnhkV2x5WlVOeVpXUmxiblJwWVd4ektDazdYRzRnSUNBZ2FXWWdLQ0Z3WVdkbFNXUXBJSHRjYmlBZ0lDQWdJSFJvY205M0lHNWxkeUJKYm5SbGNtNWhiRVZ5Y205eUtGd2lRMjl1Wm14MVpXNWpaU0J5WlhGMWFYSmxjeUJoSUhCaFoyVWdhV1JjSWlrN1hHNGdJQ0FnZlZ4dUlDQWdJSFJ5ZVNCN1hHNGdJQ0FnSUNCamIyNXpkQ0J5WlhOd2IyNXpaU0E5SUdGM1lXbDBJSFJvYVhNdVkyeHBaVzUwTG1kbGRDaGNiaUFnSUNBZ0lDQWdZQzl5WlhOMEwyRndhUzlqYjI1MFpXNTBMeVI3Wlc1amIyUmxWVkpKUTI5dGNHOXVaVzUwS0hCaFoyVkpaQ2w5WUN4Y2JpQWdJQ0FnSUNBZ2V5QndZWEpoYlhNNklIc2daWGh3WVc1a0lIMGdmVnh1SUNBZ0lDQWdLVHRjYmlBZ0lDQWdJSEpsZEhWeWJpQnlaWE53YjI1elpTNWtZWFJoTzF4dUlDQWdJSDBnWTJGMFkyZ2dLR1Z5Y205eUtTQjdYRzRnSUNBZ0lDQjBhSEp2ZHlCb2RIUndSWEp5YjNJb1hDSkRiMjVtYkhWbGJtTmxYQ0lzSUZ3aVoyVjBJSEJoWjJWY0lpd2daWEp5YjNJcE8xeHVJQ0FnSUgxY2JpQWdmVnh1WEc0Z0lDOHFLbHh1SUNBZ0tpQkFaR1Z6WTNKcGNIUnBiMjRnVEdsemRITWdRMjl1Wm14MVpXNWpaU0J6Y0dGalpYTmNiaUFnSUNvZ1FITjFiVzFoY25rZ1lFZEZWR0J6SUdBdmNtVnpkQzloY0drdmMzQmhZMlZnSUhkcGRHZ2dZU0J5WlhOMWJIUWdZR3hwYldsMFlDQW9aR1ZtWVhWc2RDQmdNalZnS1M1Y2JpQWdJQ29nUUhCaGNtRnRJSHR1ZFcxaVpYSjlJRnRzYVcxcGRGMGdMU0JOWVhocGJYVnRJRzUxYldKbGNpQnZaaUJ6Y0dGalpYTWdkRzhnY21WMGRYSnVPeUJrWldaaGRXeDBjeUIwYnlCZ01qVmdMbHh1SUNBZ0tpQkFjbVYwZFhKdWN5QjdVSEp2YldselpUeDFibXR1YjNkdVBuMGdWR2hsSUhOd1lXTmxJR052Ykd4bFkzUnBiMjRnY0dGNWJHOWhaQzVjYmlBZ0lDb2dRSFJvY205M2N5QjdTVzUwWlhKdVlXeEZjbkp2Y24wZ1YyaGxiaUJqY21Wa1pXNTBhV0ZzY3lCaGNtVWdiV2x6YzJsdVp5NWNiaUFnSUNvZ1FIUm9jbTkzY3lCN1FtRmtVbVZ4ZFdWemRFVnljbTl5ZlNCWGFHVnVJSFJvWlNCQlVFa2djbVZxWldOMGN5QjBhR1VnY21WeGRXVnpkQzVjYmlBZ0lDb3ZYRzRnSUdGemVXNWpJR3hwYzNSVGNHRmpaWE1vYkdsdGFYUWdQU0F5TlNrNklGQnliMjFwYzJVOGRXNXJibTkzYmo0Z2UxeHVJQ0FnSUhSb2FYTXVjbVZ4ZFdseVpVTnlaV1JsYm5ScFlXeHpLQ2s3WEc0Z0lDQWdkSEo1SUh0Y2JpQWdJQ0FnSUdOdmJuTjBJSEpsYzNCdmJuTmxJRDBnWVhkaGFYUWdkR2hwY3k1amJHbGxiblF1WjJWMEtGd2lMM0psYzNRdllYQnBMM053WVdObFhDSXNJSHRjYmlBZ0lDQWdJQ0FnY0dGeVlXMXpPaUI3SUd4cGJXbDBJSDBzWEc0Z0lDQWdJQ0I5S1R0Y2JpQWdJQ0FnSUhKbGRIVnliaUJ5WlhOd2IyNXpaUzVrWVhSaE8xeHVJQ0FnSUgwZ1kyRjBZMmdnS0dWeWNtOXlLU0I3WEc0Z0lDQWdJQ0IwYUhKdmR5Qm9kSFJ3UlhKeWIzSW9YQ0pEYjI1bWJIVmxibU5sWENJc0lGd2liR2x6ZENCemNHRmpaWE5jSWl3Z1pYSnliM0lwTzF4dUlDQWdJSDFjYmlBZ2ZWeHVYRzRnSUM4cUtseHVJQ0FnS2lCQVpHVnpZM0pwY0hScGIyNGdRM0psWVhSbGN5QmhJRU52Ym1ac2RXVnVZMlVnY0dGblpWeHVJQ0FnS2lCQWMzVnRiV0Z5ZVNCZ1VFOVRWR0J6SUdFZ1lIQmhaMlZnSUdOdmJuUmxiblFnWlc1MGNua2dhVzRnZEdobElIUmhjbWRsZENCemNHRmpaU3dnYjNCMGFXOXVZV3hzZVZ4dUlDQWdLaUIxYm1SbGNpQmhJSEJoY21WdWRDd2dkMmwwYUNCMGFHVWdZbTlrZVNCcGJpQnpkRzl5WVdkbElHWnZjbTFoZEM1Y2JpQWdJQ29nUUhCaGNtRnRJSHREYjI1bWJIVmxibU5sVUdGblpVbHVjSFYwZlNCcGJuQjFkQ0F0SUZSb1pTQnpjR0ZqWlN3Z2RHbDBiR1VzSUdKdlpIa3NJR0Z1WkNCdmNIUnBiMjVoYkNCd1lYSmxiblF1WEc0Z0lDQXFJRUJ5WlhSMWNtNXpJSHRRY205dGFYTmxQSFZ1YTI1dmQyNCtmU0JVYUdVZ1kzSmxZWFJsWkNCd1lXZGxJSEJoZVd4dllXUXVYRzRnSUNBcUlFQjBhSEp2ZDNNZ2UwbHVkR1Z5Ym1Gc1JYSnliM0o5SUZkb1pXNGdZM0psWkdWdWRHbGhiSE1nWVhKbElHMXBjM05wYm1jc0lHOXlJSFJvWlNCemNHRmpaU0JyWlhrZ2IzSWdkR2wwYkdVZ2FYTWdaVzF3ZEhrdVhHNGdJQ0FxSUVCMGFISnZkM01nZTBKaFpGSmxjWFZsYzNSRmNuSnZjbjBnVjJobGJpQjBhR1VnUVZCSklISmxhbVZqZEhNZ2RHaGxJSEJoWjJVdVhHNGdJQ0FxSUVCbGVHRnRjR3hsWEc0Z0lDQXFJR0JnWUhSelhHNGdJQ0FxSUdGM1lXbDBJR052Ym1ac2RXVnVZMlV1WTNKbFlYUmxVR0ZuWlNoN1hHNGdJQ0FxSUNBZ2MzQmhZMlZMWlhrNklGd2lUMUJUWENJc1hHNGdJQ0FxSUNBZ2RHbDBiR1U2SUZ3aVVtVnNaV0Z6WlNBeExqSXVNRndpTEZ4dUlDQWdLaUFnSUdKdlpIazZJRndpUEhBK1JHVjBZV2xzYytLQXBqd3ZjRDVjSWl4Y2JpQWdJQ29nZlNrN1hHNGdJQ0FxSUdCZ1lGeHVJQ0FnS2k5Y2JpQWdZWE41Ym1NZ1kzSmxZWFJsVUdGblpTaHBibkIxZERvZ1EyOXVabXgxWlc1alpWQmhaMlZKYm5CMWRDazZJRkJ5YjIxcGMyVThkVzVyYm05M2JqNGdlMXh1SUNBZ0lIUm9hWE11Y21WeGRXbHlaVU55WldSbGJuUnBZV3h6S0NrN1hHNGdJQ0FnYVdZZ0tDRnBibkIxZEM1emNHRmpaVXRsZVNCOGZDQWhhVzV3ZFhRdWRHbDBiR1VwSUh0Y2JpQWdJQ0FnSUhSb2NtOTNJRzVsZHlCSmJuUmxjbTVoYkVWeWNtOXlLRnh1SUNBZ0lDQWdJQ0JjSWtOdmJtWnNkV1Z1WTJVZ1kzSmxZWFJsVUdGblpTQnlaWEYxYVhKbGN5QmhJSE53WVdObElHdGxlU0JoYm1RZ2RHbDBiR1ZjSWx4dUlDQWdJQ0FnS1R0Y2JpQWdJQ0I5WEc0Z0lDQWdkSEo1SUh0Y2JpQWdJQ0FnSUdOdmJuTjBJSEpsYzNCdmJuTmxJRDBnWVhkaGFYUWdkR2hwY3k1amJHbGxiblF1Y0c5emRDaGNJaTl5WlhOMEwyRndhUzlqYjI1MFpXNTBYQ0lzSUh0Y2JpQWdJQ0FnSUNBZ2RIbHdaVG9nUkVWR1FWVk1WRjlRUVVkRlgxUlpVRVVzWEc0Z0lDQWdJQ0FnSUhScGRHeGxPaUJwYm5CMWRDNTBhWFJzWlN4Y2JpQWdJQ0FnSUNBZ2MzQmhZMlU2SUhzZ2EyVjVPaUJwYm5CMWRDNXpjR0ZqWlV0bGVTQjlMRnh1SUNBZ0lDQWdJQ0F1TGk0b2FXNXdkWFF1Y0dGeVpXNTBTV1FnUHlCN0lHRnVZMlZ6ZEc5eWN6b2dXM3NnYVdRNklHbHVjSFYwTG5CaGNtVnVkRWxrSUgxZElIMGdPaUI3ZlNrc1hHNGdJQ0FnSUNBZ0lHSnZaSGs2SUhSb2FYTXVjM1J2Y21GblpVSnZaSGtvYVc1d2RYUXVZbTlrZVNBL1B5QmNJbHdpS1N4Y2JpQWdJQ0FnSUgwcE8xeHVJQ0FnSUNBZ2NtVjBkWEp1SUhKbGMzQnZibk5sTG1SaGRHRTdYRzRnSUNBZ2ZTQmpZWFJqYUNBb1pYSnliM0lwSUh0Y2JpQWdJQ0FnSUhSb2NtOTNJR2gwZEhCRmNuSnZjaWhjSWtOdmJtWnNkV1Z1WTJWY0lpd2dYQ0pqY21WaGRHVWdjR0ZuWlZ3aUxDQmxjbkp2Y2lrN1hHNGdJQ0FnZlZ4dUlDQjlYRzVjYmlBZ0x5b3FYRzRnSUNBcUlFQmtaWE5qY21sd2RHbHZiaUJWY0dSaGRHVnpJR0VnUTI5dVpteDFaVzVqWlNCd1lXZGxYRzRnSUNBcUlFQnpkVzF0WVhKNUlHQlFWVlJnY3lCMGFHVWdibVYzSUhScGRHeGxJR0Z1WkNCemRHOXlZV2RsSUdKdlpIa3VJRmRvWlc0Z1lIWmxjbk5wYjI1Z0lHbHpJRzl0YVhSMFpXUmNiaUFnSUNvZ2RHaGxJR04xY25KbGJuUWdkbVZ5YzJsdmJpQnBjeUJ5WldGa0lHWnBjbk4wSUdGdVpDQjBhR1VnYm1WNGRDQnVkVzFpWlhJZ2FYTWdjM1ZpYldsMGRHVmtMQ0JoYzF4dUlDQWdLaUJEYjI1bWJIVmxibU5sSUhKbGNYVnBjbVZ6SUc5d2RHbHRhWE4wYVdNZ2RtVnljMmx2Ym1sdVp5NWNiaUFnSUNvZ1FIQmhjbUZ0SUh0RGIyNW1iSFZsYm1ObFVHRm5aVlZ3WkdGMFpYMGdhVzV3ZFhRZ0xTQlVhR1VnY0dGblpTd2dibVYzSUhScGRHeGxMMkp2Wkhrc0lHRnVaQ0J2Y0hScGIyNWhiQ0IyWlhKemFXOXVMbHh1SUNBZ0tpQkFjbVYwZFhKdWN5QjdVSEp2YldselpUeDFibXR1YjNkdVBuMGdWR2hsSUhWd1pHRjBaV1FnY0dGblpTQndZWGxzYjJGa0xseHVJQ0FnS2lCQWRHaHliM2R6SUh0SmJuUmxjbTVoYkVWeWNtOXlmU0JYYUdWdUlHTnlaV1JsYm5ScFlXeHpJR0Z5WlNCdGFYTnphVzVuTENCdmNpQjBhR1VnY0dGblpTQkpSQ0J2Y2lCMGFYUnNaU0JwY3lCbGJYQjBlUzVjYmlBZ0lDb2dRSFJvY205M2N5QjdUbTkwUm05MWJtUkZjbkp2Y24wZ1YyaGxiaUIwYUdVZ2NHRm5aU0JrYjJWeklHNXZkQ0JsZUdsemRDQW9TRlJVVUNBME1EUXBMbHh1SUNBZ0tpQkFkR2h5YjNkeklIdERiMjVtYkdsamRFVnljbTl5ZlNCWGFHVnVJSFJvWlNCemRXSnRhWFIwWldRZ2RtVnljMmx2YmlCcGN5QnpkR0ZzWlNBb1NGUlVVQ0EwTURrcExseHVJQ0FnS2lCQWRHaHliM2R6SUh0Q1lXUlNaWEYxWlhOMFJYSnliM0o5SUZkb1pXNGdkR2hsSUVGUVNTQnlaV3BsWTNSeklIUm9aU0IxY0dSaGRHVXVYRzRnSUNBcUwxeHVJQ0JoYzNsdVl5QjFjR1JoZEdWUVlXZGxLR2x1Y0hWME9pQkRiMjVtYkhWbGJtTmxVR0ZuWlZWd1pHRjBaU2s2SUZCeWIyMXBjMlU4ZFc1cmJtOTNiajRnZTF4dUlDQWdJSFJvYVhNdWNtVnhkV2x5WlVOeVpXUmxiblJwWVd4ektDazdYRzRnSUNBZ2FXWWdLQ0ZwYm5CMWRDNXdZV2RsU1dRZ2ZId2dJV2x1Y0hWMExuUnBkR3hsS1NCN1hHNGdJQ0FnSUNCMGFISnZkeUJ1WlhjZ1NXNTBaWEp1WVd4RmNuSnZjaWhjYmlBZ0lDQWdJQ0FnWENKRGIyNW1iSFZsYm1ObElIVndaR0YwWlZCaFoyVWdjbVZ4ZFdseVpYTWdZU0J3WVdkbElHbGtJR0Z1WkNCMGFYUnNaVndpWEc0Z0lDQWdJQ0FwTzF4dUlDQWdJSDFjYmlBZ0lDQjBjbmtnZTF4dUlDQWdJQ0FnYkdWMElIWmxjbk5wYjI0Z1BTQnBibkIxZEM1MlpYSnphVzl1TzF4dUlDQWdJQ0FnYVdZZ0tIWmxjbk5wYjI0Z1BUMDlJSFZ1WkdWbWFXNWxaQ2tnZTF4dUlDQWdJQ0FnSUNCamIyNXpkQ0JqZFhKeVpXNTBJRDBnWVhkaGFYUWdkR2hwY3k1amJHbGxiblF1WjJWMFBFTnZibVpzZFdWdVkyVlFZV2RsUGloY2JpQWdJQ0FnSUNBZ0lDQmdMM0psYzNRdllYQnBMMk52Ym5SbGJuUXZKSHRsYm1OdlpHVlZVa2xEYjIxd2IyNWxiblFvYVc1d2RYUXVjR0ZuWlVsa0tYMWdMRnh1SUNBZ0lDQWdJQ0FnSUhzZ2NHRnlZVzF6T2lCN0lHVjRjR0Z1WkRvZ1hDSjJaWEp6YVc5dVhDSWdmU0I5WEc0Z0lDQWdJQ0FnSUNrN1hHNGdJQ0FnSUNBZ0lIWmxjbk5wYjI0Z1BTQW9ZM1Z5Y21WdWRDNWtZWFJoTG5abGNuTnBiMjQvTG01MWJXSmxjaUEvUHlBd0tTQXJJREU3WEc0Z0lDQWdJQ0I5WEc0Z0lDQWdJQ0JqYjI1emRDQnlaWE53YjI1elpTQTlJR0YzWVdsMElIUm9hWE11WTJ4cFpXNTBMbkIxZENoY2JpQWdJQ0FnSUNBZ1lDOXlaWE4wTDJGd2FTOWpiMjUwWlc1MEx5UjdaVzVqYjJSbFZWSkpRMjl0Y0c5dVpXNTBLR2x1Y0hWMExuQmhaMlZKWkNsOVlDeGNiaUFnSUNBZ0lDQWdlMXh1SUNBZ0lDQWdJQ0FnSUdsa09pQnBibkIxZEM1d1lXZGxTV1FzWEc0Z0lDQWdJQ0FnSUNBZ2RIbHdaVG9nUkVWR1FWVk1WRjlRUVVkRlgxUlpVRVVzWEc0Z0lDQWdJQ0FnSUNBZ2RHbDBiR1U2SUdsdWNIVjBMblJwZEd4bExGeHVJQ0FnSUNBZ0lDQWdJSFpsY25OcGIyNDZJSHNnYm5WdFltVnlPaUIyWlhKemFXOXVJSDBzWEc0Z0lDQWdJQ0FnSUNBZ1ltOWtlVG9nZEdocGN5NXpkRzl5WVdkbFFtOWtlU2hwYm5CMWRDNWliMlI1SUQ4L0lGd2lYQ0lwTEZ4dUlDQWdJQ0FnSUNCOVhHNGdJQ0FnSUNBcE8xeHVJQ0FnSUNBZ2NtVjBkWEp1SUhKbGMzQnZibk5sTG1SaGRHRTdYRzRnSUNBZ2ZTQmpZWFJqYUNBb1pYSnliM0lwSUh0Y2JpQWdJQ0FnSUhSb2NtOTNJR2gwZEhCRmNuSnZjaWhjSWtOdmJtWnNkV1Z1WTJWY0lpd2dYQ0oxY0dSaGRHVWdjR0ZuWlZ3aUxDQmxjbkp2Y2lrN1hHNGdJQ0FnZlZ4dUlDQjlYRzVjYmlBZ0x5b3FYRzRnSUNBcUlFQmtaWE5qY21sd2RHbHZiaUJFWld4bGRHVnpJR0VnUTI5dVpteDFaVzVqWlNCd1lXZGxYRzRnSUNBcUlFQnpkVzF0WVhKNUlHQkVSVXhGVkVWZ2N5QjBhR1VnWTI5dWRHVnVkQ0JsYm5SeWVTQmhibVFnY21WMGRYSnVjeUJnZXlCa1pXeGxkR1ZrT2lCMGNuVmxMQ0J3WVdkbFNXUWdmV0F1WEc0Z0lDQXFJRUJ3WVhKaGJTQjdjM1J5YVc1bmZTQndZV2RsU1dRZ0xTQlVhR1VnY0dGblpTQkpSQ0IwYnlCa1pXeGxkR1V1WEc0Z0lDQXFJRUJ5WlhSMWNtNXpJSHRRY205dGFYTmxQSFZ1YTI1dmQyNCtmU0JnZXlCa1pXeGxkR1ZrT2lCMGNuVmxMQ0J3WVdkbFNXUWdmV0FnYjI0Z2MzVmpZMlZ6Y3k1Y2JpQWdJQ29nUUhSb2NtOTNjeUI3U1c1MFpYSnVZV3hGY25KdmNuMGdWMmhsYmlCamNtVmtaVzUwYVdGc2N5QmhjbVVnYldsemMybHVaeUJ2Y2lCMGFHVWdjR0ZuWlNCSlJDQnBjeUJsYlhCMGVTNWNiaUFnSUNvZ1FIUm9jbTkzY3lCN1RtOTBSbTkxYm1SRmNuSnZjbjBnVjJobGJpQjBhR1VnY0dGblpTQmtiMlZ6SUc1dmRDQmxlR2x6ZENBb1NGUlVVQ0EwTURRcExseHVJQ0FnS2lCQWRHaHliM2R6SUh0Q1lXUlNaWEYxWlhOMFJYSnliM0o5SUZkb1pXNGdkR2hsSUVGUVNTQnlaV3BsWTNSeklIUm9aU0JrWld4bGRHbHZiaTVjYmlBZ0lDb3ZYRzRnSUdGemVXNWpJR1JsYkdWMFpWQmhaMlVvY0dGblpVbGtPaUJ6ZEhKcGJtY3BPaUJRY205dGFYTmxQSFZ1YTI1dmQyNCtJSHRjYmlBZ0lDQjBhR2x6TG5KbGNYVnBjbVZEY21Wa1pXNTBhV0ZzY3lncE8xeHVJQ0FnSUdsbUlDZ2hjR0ZuWlVsa0tTQjdYRzRnSUNBZ0lDQjBhSEp2ZHlCdVpYY2dTVzUwWlhKdVlXeEZjbkp2Y2loY0lrTnZibVpzZFdWdVkyVWdjbVZ4ZFdseVpYTWdZU0J3WVdkbElHbGtYQ0lwTzF4dUlDQWdJSDFjYmlBZ0lDQjBjbmtnZTF4dUlDQWdJQ0FnWVhkaGFYUWdkR2hwY3k1amJHbGxiblF1WkdWc1pYUmxLRnh1SUNBZ0lDQWdJQ0JnTDNKbGMzUXZZWEJwTDJOdmJuUmxiblF2Skh0bGJtTnZaR1ZWVWtsRGIyMXdiMjVsYm5Rb2NHRm5aVWxrS1gxZ1hHNGdJQ0FnSUNBcE8xeHVJQ0FnSUNBZ2NtVjBkWEp1SUhzZ1pHVnNaWFJsWkRvZ2RISjFaU3dnY0dGblpVbGtJSDA3WEc0Z0lDQWdmU0JqWVhSamFDQW9aWEp5YjNJcElIdGNiaUFnSUNBZ0lIUm9jbTkzSUdoMGRIQkZjbkp2Y2loY0lrTnZibVpzZFdWdVkyVmNJaXdnWENKa1pXeGxkR1VnY0dGblpWd2lMQ0JsY25KdmNpazdYRzRnSUNBZ2ZWeHVJQ0I5WEc1Y2JpQWdMeW9xWEc0Z0lDQXFJRUJrWlhOamNtbHdkR2x2YmlCVFpXRnlZMmhsY3lCRGIyNW1iSFZsYm1ObElHTnZiblJsYm5RZ2QybDBhQ0JEVVV4Y2JpQWdJQ29nUUhOMWJXMWhjbmtnWUVkRlZHQnpJR0F2Y21WemRDOWhjR2t2WTI5dWRHVnVkQzl6WldGeVkyaGdJSGRwZEdnZ2RHaGxJRU5SVENCbGVIQnlaWE56YVc5dUlHRnVaQ0JoYmx4dUlDQWdLaUJ2Y0hScGIyNWhiQ0JnYkdsdGFYUmdMbHh1SUNBZ0tpQkFjR0Z5WVcwZ2UwTnZibVpzZFdWdVkyVlRaV0Z5WTJoSmJuQjFkSDBnYVc1d2RYUWdMU0JVYUdVZ1ExRk1JSEYxWlhKNUlHRnVaQ0J5WlhOMWJIUWdiR2x0YVhRdVhHNGdJQ0FxSUVCeVpYUjFjbTV6SUh0UWNtOXRhWE5sUEhWdWEyNXZkMjQrZlNCVWFHVWdjMlZoY21Ob0lISmxjM1ZzZENCd1lYbHNiMkZrTGx4dUlDQWdLaUJBZEdoeWIzZHpJSHRKYm5SbGNtNWhiRVZ5Y205eWZTQlhhR1Z1SUdOeVpXUmxiblJwWVd4eklHRnlaU0J0YVhOemFXNW5JRzl5SUhSb1pTQkRVVXdnY1hWbGNua2dhWE1nWlcxd2RIa3VYRzRnSUNBcUlFQjBhSEp2ZDNNZ2UwSmhaRkpsY1hWbGMzUkZjbkp2Y24wZ1YyaGxiaUIwYUdVZ1ExRk1JSEYxWlhKNUlHbHpJR2x1ZG1Gc2FXUXVYRzRnSUNBcUwxeHVJQ0JoYzNsdVl5QnpaV0Z5WTJnb2FXNXdkWFE2SUVOdmJtWnNkV1Z1WTJWVFpXRnlZMmhKYm5CMWRDazZJRkJ5YjIxcGMyVThkVzVyYm05M2JqNGdlMXh1SUNBZ0lIUm9hWE11Y21WeGRXbHlaVU55WldSbGJuUnBZV3h6S0NrN1hHNGdJQ0FnYVdZZ0tDRnBibkIxZEM1amNXd3BJSHRjYmlBZ0lDQWdJSFJvY205M0lHNWxkeUJKYm5SbGNtNWhiRVZ5Y205eUtGd2lRMjl1Wm14MVpXNWpaU0J6WldGeVkyZ2djbVZ4ZFdseVpYTWdZU0JEVVV3Z2NYVmxjbmxjSWlrN1hHNGdJQ0FnZlZ4dUlDQWdJSFJ5ZVNCN1hHNGdJQ0FnSUNCamIyNXpkQ0J5WlhOd2IyNXpaU0E5SUdGM1lXbDBJSFJvYVhNdVkyeHBaVzUwTG1kbGRDaGNJaTl5WlhOMEwyRndhUzlqYjI1MFpXNTBMM05sWVhKamFGd2lMQ0I3WEc0Z0lDQWdJQ0FnSUhCaGNtRnRjem9nZTF4dUlDQWdJQ0FnSUNBZ0lHTnhiRG9nYVc1d2RYUXVZM0ZzTEZ4dUlDQWdJQ0FnSUNBZ0lDNHVMaWhwYm5CMWRDNXNhVzFwZENBaFBUMGdkVzVrWldacGJtVmtJRDhnZXlCc2FXMXBkRG9nYVc1d2RYUXViR2x0YVhRZ2ZTQTZJSHQ5S1N4Y2JpQWdJQ0FnSUNBZ2ZTeGNiaUFnSUNBZ0lIMHBPMXh1SUNBZ0lDQWdjbVYwZFhKdUlISmxjM0J2Ym5ObExtUmhkR0U3WEc0Z0lDQWdmU0JqWVhSamFDQW9aWEp5YjNJcElIdGNiaUFnSUNBZ0lIUm9jbTkzSUdoMGRIQkZjbkp2Y2loY0lrTnZibVpzZFdWdVkyVmNJaXdnWENKelpXRnlZMmdnWTI5dWRHVnVkRndpTENCbGNuSnZjaWs3WEc0Z0lDQWdmVnh1SUNCOVhHNTlYRzRpWFgwPSJdfQ==
|
|
316
|
+
//# sourceMappingURL=ConfluenceService.js.map
|
|
317
|
+
//# sourceMappingURL=ConfluenceService.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"io/confluence/ConfluenceService.cjs","sourceRoot":"","sources":["io/confluence/ConfluenceService.js"],"names":[],"mappings":"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"}
|
|
@@ -15,5 +15,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./ConfluenceService.cjs"), exports);
|
|
18
|
-
//# sourceMappingURL=
|
|
19
|
-
//# sourceMappingURL=
|
|
18
|
+
//# sourceMappingURL=index.js.map
|
|
19
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"io/confluence/index.cjs","sourceRoot":"","sources":["io/confluence/index.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yDAAuC;AACvC,iCAAiC"}
|
|
@@ -70,5 +70,5 @@ exports.IoEnvironment = logging_1.LoggedEnvironment.accumulate({
|
|
|
70
70
|
},
|
|
71
71
|
},
|
|
72
72
|
});
|
|
73
|
-
//# sourceMappingURL=
|
|
74
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52aXJvbm1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJlbnZpcm9ubWVudC5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwrQ0FBc0Q7QUFDdEQ7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWtCRztBQUNVLFFBQUEsYUFBYSxHQUFHLDJCQUFpQixDQUFDLFVBQVUsQ0FBQztJQUN0RCxFQUFFLEVBQUU7UUFDQSxRQUFRLEVBQUU7WUFDTixLQUFLLEVBQUUsRUFBRTtZQUNULE9BQU8sRUFBRSxFQUFFO1lBQ1gsTUFBTSxFQUFFLEVBQUU7WUFDVixPQUFPLEVBQUUsU0FBUztTQUNyQjtRQUNELFlBQVksRUFBRTtZQUNWLEtBQUssRUFBRSxFQUFFO1lBQ1QsTUFBTSxFQUFFLEVBQUU7WUFDVixPQUFPLEVBQUUsRUFBRTtZQUNYLE9BQU8sRUFBRSxTQUFTO1NBQ3JCO1FBQ0QsT0FBTyxFQUFFO1lBQ0wsUUFBUSxFQUFFLEVBQUU7WUFDWixLQUFLLEVBQUUsRUFBRTtZQUNULE9BQU8sRUFBRSxTQUFTO1NBQ3JCO1FBQ0QsY0FBYyxFQUFFO1lBQ1osS0FBSyxFQUFFLEVBQUU7WUFDVCxPQUFPLEVBQUUsRUFBRTtZQUNYLE9BQU8sRUFBRSxTQUFTO1NBQ3JCO1FBQ0QsVUFBVSxFQUFFO1lBQ1IsUUFBUSxFQUFFLEVBQUU7WUFDWixLQUFLLEVBQUUsRUFBRTtZQUNULE9BQU8sRUFBRSxFQUFFO1lBQ1gsT0FBTyxFQUFFLFNBQVM7U0FDckI7UUFDRCxJQUFJLEVBQUU7WUFDRixRQUFRLEVBQUUsRUFBRTtZQUNaLEtBQUssRUFBRSxFQUFFO1lBQ1QsT0FBTyxFQUFFLEVBQUU7WUFDWCxPQUFPLEVBQUUsU0FBUztTQUNyQjtRQUNELFVBQVUsRUFBRTtZQUNSLEtBQUssRUFBRSxFQUFFO1lBQ1QsTUFBTSxFQUFFLEVBQUU7WUFDVixPQUFPLEVBQUUsRUFBRTtZQUNYLE9BQU8sRUFBRSxTQUFTO1NBQ3JCO1FBQ0QsbUJBQW1CLEVBQUU7WUFDakIsS0FBSyxFQUFFLEVBQUU7WUFDVCxPQUFPLEVBQUUsRUFBRTtZQUNYLE9BQU8sRUFBRSxTQUFTO1NBQ3JCO0tBQ0o7Q0FDSixDQUFDLENBQUM7QUFDSCwwdlFBQTB2USIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IExvZ2dlZEVudmlyb25tZW50IH0gZnJvbSBcIkBkZWNhZi10cy9sb2dnaW5nXCI7XG4vKipcbiAqIEBkZXNjcmlwdGlvbiBBY2N1bXVsYXRlZCBpbyBlbnZpcm9ubWVudCBzaW5nbGV0b25cbiAqIEBzdW1tYXJ5IFRoZSBgTG9nZ2VkRW52aXJvbm1lbnQuYWNjdW11bGF0ZWAtcmVnaXN0ZXJlZCBpbnN0YW5jZSBiYWNraW5nIHRoZVxuICogYElvRW52aXJvbm1lbnRTaGFwZWAgY29udHJhY3QuIElPIHNlcnZpY2VzIHJlYWQgdGhlaXIgcHJvdmlkZXIgc2xpY2VcbiAqIChlLmcuIGBJb0Vudmlyb25tZW50LmlvLmFpcnRhYmxlYCkgaW5zaWRlIGBjb25maWdGcm9tRW52aXJvbm1lbnQoKWAgYW5kXG4gKiB0cmFuc2xhdGUgaXQgaW50byBhbiBgSHR0cEFwaVNlcnZpY2VDb25maWdgLWRlcml2ZWQgY29uZmlnLiBDcmVkZW50aWFsc1xuICogY29tZSBmcm9tIGVudmlyb25tZW50IHZhcmlhYmxlczsgZm9yIGFzLWdyYXBoIG5vZGUgdXNhZ2UgdGhvc2UgYXJlIHByb3ZpZGVkXG4gKiBhcyBgR1JBUEhfQ1JFREVOVElBTF8qYCB2YWx1ZXMgKHBsYWNlaG9sZGVycyBpbiB0aGlzIGV4YW1wbGUpLlxuICogQGV4YW1wbGVcbiAqIGBgYHRzXG4gKiBpbXBvcnQgeyBBaXJ0YWJsZVNlcnZpY2UgfSBmcm9tIFwiQGRlY2FmLXRzL2ludGVncmF0aW9ucy9pby9haXJ0YWJsZVwiO1xuICpcbiAqIC8vIHdpdGggaW8uYWlydGFibGUudG9rZW4gLyBpby5haXJ0YWJsZS5iYXNlSWQgY29uZmlndXJlZCBpbiB0aGUgZW52aXJvbm1lbnRcbiAqIGNvbnN0IGFpcnRhYmxlID0gbmV3IEFpcnRhYmxlU2VydmljZSgpO1xuICogYXdhaXQgYWlydGFibGUuaW5pdGlhbGl6ZSgpO1xuICogYGBgXG4gKiBAY29uc3RhbnQge0xvZ2dlZEVudmlyb25tZW50fSBJb0Vudmlyb25tZW50XG4gKiBAbWVtYmVyT2YgbW9kdWxlOmludGVncmF0aW9ucy9pby9lbnZpcm9ubWVudFxuICovXG5leHBvcnQgY29uc3QgSW9FbnZpcm9ubWVudCA9IExvZ2dlZEVudmlyb25tZW50LmFjY3VtdWxhdGUoe1xuICAgIGlvOiB7XG4gICAgICAgIGFpcnRhYmxlOiB7XG4gICAgICAgICAgICB0b2tlbjogXCJcIixcbiAgICAgICAgICAgIGJhc2VVcmw6IFwiXCIsXG4gICAgICAgICAgICBiYXNlSWQ6IFwiXCIsXG4gICAgICAgICAgICB0aW1lb3V0OiB1bmRlZmluZWQsXG4gICAgICAgIH0sXG4gICAgICAgIGdvb2dsZVNoZWV0czoge1xuICAgICAgICAgICAgdG9rZW46IFwiXCIsXG4gICAgICAgICAgICBhcGlLZXk6IFwiXCIsXG4gICAgICAgICAgICBiYXNlVXJsOiBcIlwiLFxuICAgICAgICAgICAgdGltZW91dDogdW5kZWZpbmVkLFxuICAgICAgICB9LFxuICAgICAgICBncmFwaHFsOiB7XG4gICAgICAgICAgICBlbmRwb2ludDogXCJcIixcbiAgICAgICAgICAgIHRva2VuOiBcIlwiLFxuICAgICAgICAgICAgdGltZW91dDogdW5kZWZpbmVkLFxuICAgICAgICB9LFxuICAgICAgICBtaWNyb3NvZnRFeGNlbDoge1xuICAgICAgICAgICAgdG9rZW46IFwiXCIsXG4gICAgICAgICAgICBiYXNlVXJsOiBcIlwiLFxuICAgICAgICAgICAgdGltZW91dDogdW5kZWZpbmVkLFxuICAgICAgICB9LFxuICAgICAgICBjb25mbHVlbmNlOiB7XG4gICAgICAgICAgICB1c2VybmFtZTogXCJcIixcbiAgICAgICAgICAgIHRva2VuOiBcIlwiLFxuICAgICAgICAgICAgYmFzZVVybDogXCJcIixcbiAgICAgICAgICAgIHRpbWVvdXQ6IHVuZGVmaW5lZCxcbiAgICAgICAgfSxcbiAgICAgICAgamlyYToge1xuICAgICAgICAgICAgdXNlcm5hbWU6IFwiXCIsXG4gICAgICAgICAgICB0b2tlbjogXCJcIixcbiAgICAgICAgICAgIGJhc2VVcmw6IFwiXCIsXG4gICAgICAgICAgICB0aW1lb3V0OiB1bmRlZmluZWQsXG4gICAgICAgIH0sXG4gICAgICAgIGdvb2dsZURvY3M6IHtcbiAgICAgICAgICAgIHRva2VuOiBcIlwiLFxuICAgICAgICAgICAgYXBpS2V5OiBcIlwiLFxuICAgICAgICAgICAgYmFzZVVybDogXCJcIixcbiAgICAgICAgICAgIHRpbWVvdXQ6IHVuZGVmaW5lZCxcbiAgICAgICAgfSxcbiAgICAgICAgbWljcm9zb2Z0U2hhcmVQb2ludDoge1xuICAgICAgICAgICAgdG9rZW46IFwiXCIsXG4gICAgICAgICAgICBiYXNlVXJsOiBcIlwiLFxuICAgICAgICAgICAgdGltZW91dDogdW5kZWZpbmVkLFxuICAgICAgICB9LFxuICAgIH0sXG59KTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtiYXNlNjQsZXlKMlpYSnphVzl1SWpvekxDSm1hV3hsSWpvaVpXNTJhWEp2Ym0xbGJuUXVhbk1pTENKemIzVnlZMlZTYjI5MElqb2lJaXdpYzI5MWNtTmxjeUk2V3lJdUxpOHVMaTh1TGk5emNtTXZhVzh2Wlc1MmFYSnZibTFsYm5RdWRITWlYU3dpYm1GdFpYTWlPbHRkTENKdFlYQndhVzVuY3lJNklrRkJRVUVzVDBGQlR5eEZRVUZGTEdsQ1FVRnBRaXhGUVVGRkxFMUJRVTBzYlVKQlFXMUNMRU5CUVVNN1FVRnpSblJFT3pzN096czdPenM3T3pzN096czdPenM3UjBGclFrYzdRVUZEU0N4TlFVRk5MRU5CUVVNc1RVRkJUU3hoUVVGaExFZEJRVWNzYVVKQlFXbENMRU5CUVVNc1ZVRkJWU3hEUVVGRE8wbEJRM2hFTEVWQlFVVXNSVUZCUlR0UlFVTkdMRkZCUVZFc1JVRkJSVHRaUVVOU0xFdEJRVXNzUlVGQlJTeEZRVUZGTzFsQlExUXNUMEZCVHl4RlFVRkZMRVZCUVVVN1dVRkRXQ3hOUVVGTkxFVkJRVVVzUlVGQlJUdFpRVU5XTEU5QlFVOHNSVUZCUlN4VFFVRTRRanRUUVVONFF6dFJRVU5FTEZsQlFWa3NSVUZCUlR0WlFVTmFMRXRCUVVzc1JVRkJSU3hGUVVGRk8xbEJRMVFzVFVGQlRTeEZRVUZGTEVWQlFVVTdXVUZEVml4UFFVRlBMRVZCUVVVc1JVRkJSVHRaUVVOWUxFOUJRVThzUlVGQlJTeFRRVUU0UWp0VFFVTjRRenRSUVVORUxFOUJRVThzUlVGQlJUdFpRVU5RTEZGQlFWRXNSVUZCUlN4RlFVRkZPMWxCUTFvc1MwRkJTeXhGUVVGRkxFVkJRVVU3V1VGRFZDeFBRVUZQTEVWQlFVVXNVMEZCT0VJN1UwRkRlRU03VVVGRFJDeGpRVUZqTEVWQlFVVTdXVUZEWkN4TFFVRkxMRVZCUVVVc1JVRkJSVHRaUVVOVUxFOUJRVThzUlVGQlJTeEZRVUZGTzFsQlExZ3NUMEZCVHl4RlFVRkZMRk5CUVRoQ08xTkJRM2hETzFGQlEwUXNWVUZCVlN4RlFVRkZPMWxCUTFZc1VVRkJVU3hGUVVGRkxFVkJRVVU3V1VGRFdpeExRVUZMTEVWQlFVVXNSVUZCUlR0WlFVTlVMRTlCUVU4c1JVRkJSU3hGUVVGRk8xbEJRMWdzVDBGQlR5eEZRVUZGTEZOQlFUaENPMU5CUTNoRE8xRkJRMFFzU1VGQlNTeEZRVUZGTzFsQlEwb3NVVUZCVVN4RlFVRkZMRVZCUVVVN1dVRkRXaXhMUVVGTExFVkJRVVVzUlVGQlJUdFpRVU5VTEU5QlFVOHNSVUZCUlN4RlFVRkZPMWxCUTFnc1QwRkJUeXhGUVVGRkxGTkJRVGhDTzFOQlEzaERPMUZCUTBRc1ZVRkJWU3hGUVVGRk8xbEJRMVlzUzBGQlN5eEZRVUZGTEVWQlFVVTdXVUZEVkN4TlFVRk5MRVZCUVVVc1JVRkJSVHRaUVVOV0xFOUJRVThzUlVGQlJTeEZRVUZGTzFsQlExZ3NUMEZCVHl4RlFVRkZMRk5CUVRoQ08xTkJRM2hETzFGQlEwUXNiVUpCUVcxQ0xFVkJRVVU3V1VGRGJrSXNTMEZCU3l4RlFVRkZMRVZCUVVVN1dVRkRWQ3hQUVVGUExFVkJRVVVzUlVGQlJUdFpRVU5ZTEU5QlFVOHNSVUZCUlN4VFFVRTRRanRUUVVONFF6dExRVU5HTzBOQlEyOUNMRU5CUVVNc1EwRkJReUlzSW5OdmRYSmpaWE5EYjI1MFpXNTBJanBiSW1sdGNHOXlkQ0I3SUV4dloyZGxaRVZ1ZG1seWIyNXRaVzUwSUgwZ1puSnZiU0JjSWtCa1pXTmhaaTEwY3k5c2IyZG5hVzVuWENJN1hHNWNiaThxS2x4dUlDb2dRRzF2WkhWc1pTQnBiblJsWjNKaGRHbHZibk12YVc4dlpXNTJhWEp2Ym0xbGJuUmNiaUFxSUVCemRXMXRZWEo1SUVWdWRtbHliMjV0Wlc1MElHTnZiblJ5WVdOMElHRnVaQ0JoWTJOMWJYVnNZWFJsWkNCbGJuWnBjbTl1YldWdWRDQm1iM0lnZEdobElHbHZJR2x1ZEdWbmNtRjBhVzl1SUhObGNuWnBZMlZ6TGx4dUlDb2dRR1JsYzJOeWFYQjBhVzl1SUVSbFkyeGhjbVZ6SUhSb1pTQmdTVzlGYm5acGNtOXViV1Z1ZEZOb1lYQmxZQ0JqYjI1emRXMWxaQ0JpZVNCMGFHVWdRV2x5ZEdGaWJHVXNYRzRnS2lCSGIyOW5iR1VnVTJobFpYUnpMQ0JIY21Gd2FGRk1MQ0JOYVdOeWIzTnZablFnUlhoalpXd3NJRU52Ym1ac2RXVnVZMlVzSUVwcGNtRXNJRWR2YjJkc1pTQkViMk56TENCaGJtUmNiaUFxSUUxcFkzSnZjMjltZENCVGFHRnlaVkJ2YVc1MElITmxjblpwWTJWekp5QmdZMjl1Wm1sblJuSnZiVVZ1ZG1seWIyNXRaVzUwS0NsZ0lHbHRjR3hsYldWdWRHRjBhVzl1Y3lCaGJtUmNiaUFxSUhSb1pTQmdTVzlGYm5acGNtOXViV1Z1ZEdBZ2MybHVaMnhsZEc5dUlHTnlaV0YwWldRZ2RtbGhJR0JNYjJkblpXUkZiblpwY205dWJXVnVkQzVoWTJOMWJYVnNZWFJsWUM1Y2JpQXFJRk5sY25acFkyVnpJSEpsWVdRZ2RHaGxhWElnWTNKbFpHVnVkR2xoYkhNZ1lXNWtJR1JsWm1GMWJIUnpJR1p5YjIwZ2RHaGxJRzFoZEdOb2FXNW5YRzRnS2lCZ2FXOHVQSEJ5YjNacFpHVnlQbUFnYzJ4cFkyVXNJSFZ6YVc1bklIUm9aU0JnWlc1MlUzUnlhVzVuWUM5Z1pXNTJUblZ0WW1WeVlDQm9aV3h3WlhKeklHWnliMjFjYmlBcUlHQnphR0Z5WldRdlpXNTJhWEp2Ym0xbGJuUldZV3gxWldBZ2RHOGdjbVZxWldOMElIVnVjMlYwTFd4bFlXWWdjSEp2ZUdsbGN5NGdWR2hsSUcxaGRHTm9hVzVuSUhCMVlteHBZMXh1SUNvZ2MzVmljR0YwYUNCbGVIQnZjblJ6SUdGeVpTQmdRR1JsWTJGbUxYUnpMMmx1ZEdWbmNtRjBhVzl1Y3k5cGJ5OXRhV055YjNOdlpuUXRaWGhqWld4Z0xGeHVJQ29nWUVCa1pXTmhaaTEwY3k5cGJuUmxaM0poZEdsdmJuTXZhVzh2WTI5dVpteDFaVzVqWldBc1hHNGdLaUJnUUdSbFkyRm1MWFJ6TDJsdWRHVm5jbUYwYVc5dWN5OXBieTlxYVhKaFlDeGNiaUFxSUdCQVpHVmpZV1l0ZEhNdmFXNTBaV2R5WVhScGIyNXpMMmx2TDJkdmIyZHNaUzFrYjJOellDd2dZVzVrWEc0Z0tpQmdRR1JsWTJGbUxYUnpMMmx1ZEdWbmNtRjBhVzl1Y3k5cGJ5OXRhV055YjNOdlpuUXRjMmhoY21Wd2IybHVkR0F1WEc0Z0tpOWNiaThxS2x4dUlDb2dRR1JsYzJOeWFYQjBhVzl1SUVWdWRtbHliMjV0Wlc1MElITm9ZWEJsSUdadmNpQjBhR1VnYVc4Z2FXNTBaV2R5WVhScGIyNGdjMlZ5ZG1salpYTmNiaUFxSUVCemRXMXRZWEo1SUVSbFptbHVaWE1nZEdobElHQnBiMkFnY205dmRDQjNhWFJvSUc5dVpTQnpiR2xqWlNCd1pYSWdjSEp2ZG1sa1pYSWdLR0JoYVhKMFlXSnNaV0FzWEc0Z0tpQmdaMjl2WjJ4bFUyaGxaWFJ6WUN3Z1lHZHlZWEJvY1d4Z0xDQmdiV2xqY205emIyWjBSWGhqWld4Z0xDQmdZMjl1Wm14MVpXNWpaV0FzSUdCcWFYSmhZQ3hjYmlBcUlHQm5iMjluYkdWRWIyTnpZQ3dnWUcxcFkzSnZjMjltZEZOb1lYSmxVRzlwYm5SZ0tTNGdSV0ZqYUNCemJHbGpaU0JqWVhKeWFXVnpJSFJvWlNCd2NtOTJhV1JsY2lkelhHNGdLaUJ5WlhGMWFYSmxaQ0JqY21Wa1pXNTBhV0ZzY3lBb1lIUnZhMlZ1WUN3Z2NHeDFjeUJnWW1GelpVbGtZQzlnWVhCcFMyVjVZQzlnWlc1a2NHOXBiblJnTDJCMWMyVnlibUZ0WldCY2JpQXFJSGRvWlhKbElHRndjR3hwWTJGaWJHVXBJSEJzZFhNZ1lXNGdiM0IwYVc5dVlXd2dZR0poYzJWVmNteGdJRzkyWlhKeWFXUmxJR0Z1WkNCZ2RHbHRaVzkxZEdBdUlFWnBaV3hrYzF4dUlDb2dZWEpsSUhSNWNHVmtJR0Z6SUhKbGNYVnBjbVZrSUdobGNtVWdjMjhnWUV4dloyZGxaRVZ1ZG1seWIyNXRaVzUwTG1GalkzVnRkV3hoZEdWZ0lISmxaMmx6ZEdWeWN5QjBhR1Z0TzF4dUlDb2dZV0p6Wlc1MElIWmhiSFZsY3lCeVpYTnZiSFpsSUhSdklIQnliM2g1SUhCc1lXTmxhRzlzWkdWeWN5QmhkQ0J5ZFc1MGFXMWxJR0Z1WkNCdGRYTjBJSEJoYzNNZ2RHaHliM1ZuYUZ4dUlDb2dZR1Z1ZGxOMGNtbHVaMkF2WUdWdWRrNTFiV0psY21BdUlGWmhiSFZsY3lCaGNtVWdZM0psWkdWdWRHbGhiQ0J5WldabGNtVnVZMlZ6SUhOMWNIQnNhV1ZrSUdKNUlIUm9aVnh1SUNvZ1pXNTJhWEp2Ym0xbGJuUXNJRzVsZG1WeUlHeHBkR1Z5WVd4eklHVnRZbVZrWkdWa0lHbHVJSE52ZFhKalpTNWNiaUFxSUVCdFpXMWlaWEpQWmlCdGIyUjFiR1U2YVc1MFpXZHlZWFJwYjI1ekwybHZMMlZ1ZG1seWIyNXRaVzUwWEc0Z0tpOWNibVY0Y0c5eWRDQnBiblJsY21aaFkyVWdTVzlGYm5acGNtOXViV1Z1ZEZOb1lYQmxJSHRjYmlBZ2FXODZJSHRjYmlBZ0lDQmhhWEowWVdKc1pUb2dlMXh1SUNBZ0lDQWdkRzlyWlc0NklITjBjbWx1Wnp0Y2JpQWdJQ0FnSUdKaGMyVlZjbXc2SUhOMGNtbHVaenRjYmlBZ0lDQWdJR0poYzJWSlpEb2djM1J5YVc1bk8xeHVJQ0FnSUNBZ2RHbHRaVzkxZEQ4NklHNTFiV0psY2p0Y2JpQWdJQ0I5TzF4dUlDQWdJR2R2YjJkc1pWTm9aV1YwY3pvZ2UxeHVJQ0FnSUNBZ2RHOXJaVzQ2SUhOMGNtbHVaenRjYmlBZ0lDQWdJR0Z3YVV0bGVUb2djM1J5YVc1bk8xeHVJQ0FnSUNBZ1ltRnpaVlZ5YkRvZ2MzUnlhVzVuTzF4dUlDQWdJQ0FnZEdsdFpXOTFkRDg2SUc1MWJXSmxjanRjYmlBZ0lDQjlPMXh1SUNBZ0lHZHlZWEJvY1d3NklIdGNiaUFnSUNBZ0lHVnVaSEJ2YVc1ME9pQnpkSEpwYm1jN1hHNGdJQ0FnSUNCMGIydGxiam9nYzNSeWFXNW5PMXh1SUNBZ0lDQWdkR2x0Wlc5MWREODZJRzUxYldKbGNqdGNiaUFnSUNCOU8xeHVJQ0FnSUM4cUtpQk5hV055YjNOdlpuUWdSM0poY0dnZ1lXTmpaWE56SUhSdmEyVnVJR1p2Y2lCRmVHTmxiQ0IzYjNKclltOXZhM01nS0dCcGJ5OXRhV055YjNOdlpuUXRaWGhqWld4Z0tTNGdLaTljYmlBZ0lDQnRhV055YjNOdlpuUkZlR05sYkRvZ2UxeHVJQ0FnSUNBZ2RHOXJaVzQ2SUhOMGNtbHVaenRjYmlBZ0lDQWdJR0poYzJWVmNtdzZJSE4wY21sdVp6dGNiaUFnSUNBZ0lIUnBiV1Z2ZFhRL09pQnVkVzFpWlhJN1hHNGdJQ0FnZlR0Y2JpQWdJQ0F2S2lvZ1EyOXVabXgxWlc1alpTQkJVRWtnZEc5clpXNHNJRzl3ZEdsdmJtRnNJRUpoYzJsakxXRjFkR2dnZFhObGNtNWhiV1VzSUdGdVpDQnphWFJsSUdKaGMyVWdWVkpNSUNoZ2FXOHZZMjl1Wm14MVpXNWpaV0FwTGlBcUwxeHVJQ0FnSUdOdmJtWnNkV1Z1WTJVNklIdGNiaUFnSUNBZ0lIVnpaWEp1WVcxbE9pQnpkSEpwYm1jN1hHNGdJQ0FnSUNCMGIydGxiam9nYzNSeWFXNW5PMXh1SUNBZ0lDQWdZbUZ6WlZWeWJEb2djM1J5YVc1bk8xeHVJQ0FnSUNBZ2RHbHRaVzkxZEQ4NklHNTFiV0psY2p0Y2JpQWdJQ0I5TzF4dUlDQWdJQzhxS2lCS2FYSmhJRUZRU1NCMGIydGxiaXdnYjNCMGFXOXVZV3dnUW1GemFXTXRZWFYwYUNCMWMyVnlibUZ0WlN3Z1lXNWtJSE5wZEdVZ1ltRnpaU0JWVWt3Z0tHQnBieTlxYVhKaFlDa3VJQ292WEc0Z0lDQWdhbWx5WVRvZ2UxeHVJQ0FnSUNBZ2RYTmxjbTVoYldVNklITjBjbWx1Wnp0Y2JpQWdJQ0FnSUhSdmEyVnVPaUJ6ZEhKcGJtYzdYRzRnSUNBZ0lDQmlZWE5sVlhKc09pQnpkSEpwYm1jN1hHNGdJQ0FnSUNCMGFXMWxiM1YwUHpvZ2JuVnRZbVZ5TzF4dUlDQWdJSDA3WEc0Z0lDQWdMeW9xSUVkdmIyZHNaU0JFYjJOeklFOUJkWFJvSUhSdmEyVnVJRzl5SUVGUVNTQnJaWGtnS0dCcGJ5OW5iMjluYkdVdFpHOWpjMkFwTGlBcUwxeHVJQ0FnSUdkdmIyZHNaVVJ2WTNNNklIdGNiaUFnSUNBZ0lIUnZhMlZ1T2lCemRISnBibWM3WEc0Z0lDQWdJQ0JoY0dsTFpYazZJSE4wY21sdVp6dGNiaUFnSUNBZ0lHSmhjMlZWY213NklITjBjbWx1Wnp0Y2JpQWdJQ0FnSUhScGJXVnZkWFEvT2lCdWRXMWlaWEk3WEc0Z0lDQWdmVHRjYmlBZ0lDQXZLaW9nVFdsamNtOXpiMlowSUVkeVlYQm9JR0ZqWTJWemN5QjBiMnRsYmlCbWIzSWdVMmhoY21WUWIybHVkQ0FvWUdsdkwyMXBZM0p2YzI5bWRDMXphR0Z5WlhCdmFXNTBZQ2t1SUNvdlhHNGdJQ0FnYldsamNtOXpiMlowVTJoaGNtVlFiMmx1ZERvZ2UxeHVJQ0FnSUNBZ2RHOXJaVzQ2SUhOMGNtbHVaenRjYmlBZ0lDQWdJR0poYzJWVmNtdzZJSE4wY21sdVp6dGNiaUFnSUNBZ0lIUnBiV1Z2ZFhRL09pQnVkVzFpWlhJN1hHNGdJQ0FnZlR0Y2JpQWdmVHRjYm4xY2JseHVMeW9xWEc0Z0tpQkFaR1Z6WTNKcGNIUnBiMjRnUVdOamRXMTFiR0YwWldRZ2FXOGdaVzUyYVhKdmJtMWxiblFnYzJsdVoyeGxkRzl1WEc0Z0tpQkFjM1Z0YldGeWVTQlVhR1VnWUV4dloyZGxaRVZ1ZG1seWIyNXRaVzUwTG1GalkzVnRkV3hoZEdWZ0xYSmxaMmx6ZEdWeVpXUWdhVzV6ZEdGdVkyVWdZbUZqYTJsdVp5QjBhR1ZjYmlBcUlHQkpiMFZ1ZG1seWIyNXRaVzUwVTJoaGNHVmdJR052Ym5SeVlXTjBMaUJKVHlCelpYSjJhV05sY3lCeVpXRmtJSFJvWldseUlIQnliM1pwWkdWeUlITnNhV05sWEc0Z0tpQW9aUzVuTGlCZ1NXOUZiblpwY205dWJXVnVkQzVwYnk1aGFYSjBZV0pzWldBcElHbHVjMmxrWlNCZ1kyOXVabWxuUm5KdmJVVnVkbWx5YjI1dFpXNTBLQ2xnSUdGdVpGeHVJQ29nZEhKaGJuTnNZWFJsSUdsMElHbHVkRzhnWVc0Z1lFaDBkSEJCY0dsVFpYSjJhV05sUTI5dVptbG5ZQzFrWlhKcGRtVmtJR052Ym1acFp5NGdRM0psWkdWdWRHbGhiSE5jYmlBcUlHTnZiV1VnWm5KdmJTQmxiblpwY205dWJXVnVkQ0IyWVhKcFlXSnNaWE03SUdadmNpQmhjeTFuY21Gd2FDQnViMlJsSUhWellXZGxJSFJvYjNObElHRnlaU0J3Y205MmFXUmxaRnh1SUNvZ1lYTWdZRWRTUVZCSVgwTlNSVVJGVGxSSlFVeGZLbUFnZG1Gc2RXVnpJQ2h3YkdGalpXaHZiR1JsY25NZ2FXNGdkR2hwY3lCbGVHRnRjR3hsS1M1Y2JpQXFJRUJsZUdGdGNHeGxYRzRnS2lCZ1lHQjBjMXh1SUNvZ2FXMXdiM0owSUhzZ1FXbHlkR0ZpYkdWVFpYSjJhV05sSUgwZ1puSnZiU0JjSWtCa1pXTmhaaTEwY3k5cGJuUmxaM0poZEdsdmJuTXZhVzh2WVdseWRHRmliR1ZjSWp0Y2JpQXFYRzRnS2lBdkx5QjNhWFJvSUdsdkxtRnBjblJoWW14bExuUnZhMlZ1SUM4Z2FXOHVZV2x5ZEdGaWJHVXVZbUZ6WlVsa0lHTnZibVpwWjNWeVpXUWdhVzRnZEdobElHVnVkbWx5YjI1dFpXNTBYRzRnS2lCamIyNXpkQ0JoYVhKMFlXSnNaU0E5SUc1bGR5QkJhWEowWVdKc1pWTmxjblpwWTJVb0tUdGNiaUFxSUdGM1lXbDBJR0ZwY25SaFlteGxMbWx1YVhScFlXeHBlbVVvS1R0Y2JpQXFJR0JnWUZ4dUlDb2dRR052Ym5OMFlXNTBJSHRNYjJkblpXUkZiblpwY205dWJXVnVkSDBnU1c5RmJuWnBjbTl1YldWdWRGeHVJQ29nUUcxbGJXSmxjazltSUcxdlpIVnNaVHBwYm5SbFozSmhkR2x2Ym5NdmFXOHZaVzUyYVhKdmJtMWxiblJjYmlBcUwxeHVaWGh3YjNKMElHTnZibk4wSUVsdlJXNTJhWEp2Ym0xbGJuUWdQU0JNYjJkblpXUkZiblpwY205dWJXVnVkQzVoWTJOMWJYVnNZWFJsS0h0Y2JpQWdhVzg2SUh0Y2JpQWdJQ0JoYVhKMFlXSnNaVG9nZTF4dUlDQWdJQ0FnZEc5clpXNDZJRndpWENJc1hHNGdJQ0FnSUNCaVlYTmxWWEpzT2lCY0lsd2lMRnh1SUNBZ0lDQWdZbUZ6WlVsa09pQmNJbHdpTEZ4dUlDQWdJQ0FnZEdsdFpXOTFkRG9nZFc1a1pXWnBibVZrSUdGeklIVnVhMjV2ZDI0Z1lYTWdiblZ0WW1WeUxGeHVJQ0FnSUgwc1hHNGdJQ0FnWjI5dloyeGxVMmhsWlhSek9pQjdYRzRnSUNBZ0lDQjBiMnRsYmpvZ1hDSmNJaXhjYmlBZ0lDQWdJR0Z3YVV0bGVUb2dYQ0pjSWl4Y2JpQWdJQ0FnSUdKaGMyVlZjbXc2SUZ3aVhDSXNYRzRnSUNBZ0lDQjBhVzFsYjNWME9pQjFibVJsWm1sdVpXUWdZWE1nZFc1cmJtOTNiaUJoY3lCdWRXMWlaWElzWEc0Z0lDQWdmU3hjYmlBZ0lDQm5jbUZ3YUhGc09pQjdYRzRnSUNBZ0lDQmxibVJ3YjJsdWREb2dYQ0pjSWl4Y2JpQWdJQ0FnSUhSdmEyVnVPaUJjSWx3aUxGeHVJQ0FnSUNBZ2RHbHRaVzkxZERvZ2RXNWtaV1pwYm1Wa0lHRnpJSFZ1YTI1dmQyNGdZWE1nYm5WdFltVnlMRnh1SUNBZ0lIMHNYRzRnSUNBZ2JXbGpjbTl6YjJaMFJYaGpaV3c2SUh0Y2JpQWdJQ0FnSUhSdmEyVnVPaUJjSWx3aUxGeHVJQ0FnSUNBZ1ltRnpaVlZ5YkRvZ1hDSmNJaXhjYmlBZ0lDQWdJSFJwYldWdmRYUTZJSFZ1WkdWbWFXNWxaQ0JoY3lCMWJtdHViM2R1SUdGeklHNTFiV0psY2l4Y2JpQWdJQ0I5TEZ4dUlDQWdJR052Ym1ac2RXVnVZMlU2SUh0Y2JpQWdJQ0FnSUhWelpYSnVZVzFsT2lCY0lsd2lMRnh1SUNBZ0lDQWdkRzlyWlc0NklGd2lYQ0lzWEc0Z0lDQWdJQ0JpWVhObFZYSnNPaUJjSWx3aUxGeHVJQ0FnSUNBZ2RHbHRaVzkxZERvZ2RXNWtaV1pwYm1Wa0lHRnpJSFZ1YTI1dmQyNGdZWE1nYm5WdFltVnlMRnh1SUNBZ0lIMHNYRzRnSUNBZ2FtbHlZVG9nZTF4dUlDQWdJQ0FnZFhObGNtNWhiV1U2SUZ3aVhDSXNYRzRnSUNBZ0lDQjBiMnRsYmpvZ1hDSmNJaXhjYmlBZ0lDQWdJR0poYzJWVmNtdzZJRndpWENJc1hHNGdJQ0FnSUNCMGFXMWxiM1YwT2lCMWJtUmxabWx1WldRZ1lYTWdkVzVyYm05M2JpQmhjeUJ1ZFcxaVpYSXNYRzRnSUNBZ2ZTeGNiaUFnSUNCbmIyOW5iR1ZFYjJOek9pQjdYRzRnSUNBZ0lDQjBiMnRsYmpvZ1hDSmNJaXhjYmlBZ0lDQWdJR0Z3YVV0bGVUb2dYQ0pjSWl4Y2JpQWdJQ0FnSUdKaGMyVlZjbXc2SUZ3aVhDSXNYRzRnSUNBZ0lDQjBhVzFsYjNWME9pQjFibVJsWm1sdVpXUWdZWE1nZFc1cmJtOTNiaUJoY3lCdWRXMWlaWElzWEc0Z0lDQWdmU3hjYmlBZ0lDQnRhV055YjNOdlpuUlRhR0Z5WlZCdmFXNTBPaUI3WEc0Z0lDQWdJQ0IwYjJ0bGJqb2dYQ0pjSWl4Y2JpQWdJQ0FnSUdKaGMyVlZjbXc2SUZ3aVhDSXNYRzRnSUNBZ0lDQjBhVzFsYjNWME9pQjFibVJsWm1sdVpXUWdZWE1nZFc1cmJtOTNiaUJoY3lCdWRXMWlaWElzWEc0Z0lDQWdmU3hjYmlBZ2ZTeGNibjBnWVhNZ1NXOUZiblpwY205dWJXVnVkRk5vWVhCbEtUdGNiaUpkZlE9PSJdfQ==
|
|
73
|
+
//# sourceMappingURL=environment.js.map
|
|
74
|
+
//# sourceMappingURL=environment.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"io/environment.cjs","sourceRoot":"","sources":["io/environment.js"],"names":[],"mappings":";;;AAAA,+CAAsD;AACtD;;;;;;;;;;;;;;;;;;GAkBG;AACU,QAAA,aAAa,GAAG,2BAAiB,CAAC,UAAU,CAAC;IACtD,EAAE,EAAE;QACA,QAAQ,EAAE;YACN,KAAK,EAAE,EAAE;YACT,OAAO,EAAE,EAAE;YACX,MAAM,EAAE,EAAE;YACV,OAAO,EAAE,SAAS;SACrB;QACD,YAAY,EAAE;YACV,KAAK,EAAE,EAAE;YACT,MAAM,EAAE,EAAE;YACV,OAAO,EAAE,EAAE;YACX,OAAO,EAAE,SAAS;SACrB;QACD,OAAO,EAAE;YACL,QAAQ,EAAE,EAAE;YACZ,KAAK,EAAE,EAAE;YACT,OAAO,EAAE,SAAS;SACrB;QACD,cAAc,EAAE;YACZ,KAAK,EAAE,EAAE;YACT,OAAO,EAAE,EAAE;YACX,OAAO,EAAE,SAAS;SACrB;QACD,UAAU,EAAE;YACR,QAAQ,EAAE,EAAE;YACZ,KAAK,EAAE,EAAE;YACT,OAAO,EAAE,EAAE;YACX,OAAO,EAAE,SAAS;SACrB;QACD,IAAI,EAAE;YACF,QAAQ,EAAE,EAAE;YACZ,KAAK,EAAE,EAAE;YACT,OAAO,EAAE,EAAE;YACX,OAAO,EAAE,SAAS;SACrB;QACD,UAAU,EAAE;YACR,KAAK,EAAE,EAAE;YACT,MAAM,EAAE,EAAE;YACV,OAAO,EAAE,EAAE;YACX,OAAO,EAAE,SAAS;SACrB;QACD,mBAAmB,EAAE;YACjB,KAAK,EAAE,EAAE;YACT,OAAO,EAAE,EAAE;YACX,OAAO,EAAE,SAAS;SACrB;KACJ;CACJ,CAAC,CAAC;AACH,uCAAuC"}
|